注意打包的dll打包路径和
Cacipher路径一致
package org.ezca.sm2crypt;
import com.sun.org.apache.xml.internal.security.exceptions.Base64DecodingException;
import com.sun.org.apache.xml.internal.security.utils.Base64;
public class Cacipher {
public native String Sm2Decrypt(byte[] inData);
public native byte[] Sm2Encrypt(String inData);
static{
System.loadLibrary("Sm2Crypt");
}
//加密
public byte[] encode(byte[] data) {
return Sm2Encrypt(Base64.encode(data));
}
//解密
public byte[] decode(byte[] encData) {
try {
return Base64.decode(Sm2Decrypt(encData));
} catch (Base64DecodingException e) {
e.printStackTrace();
}
return null;
}
public static void main(String[] args) {
Cacipher t=new Cacipher();
String aa="MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCfOt1u1Z656VqwR0TiP9UFmxkjMjCCK33rc1CXzxTNQ+Ahm/FeN8VwCORi0CyT+Z30EJUoGCj3Kz186Q3NZn1Ay8f/4yUyv6LFYhu/RyWM2/LrVnUn/ar9sTzi7QzRHbXixRMnGXQ3Tf9yqjmmTlO50yhqNLZZE/s/ITxXX/tw30vitggANZEB0xRk9wpnwYmqGp/Zrr8+CyjqhMef7TsF20eCBYzQ+nOwpl2TDDVm7Wzgx9YAqxLgxQDjpBdqTXkSfqv/HRogRDSyQyrEDp7nTzV4NiDWK3nmM2WM8X2+zFuhJ/xBB+lBLWqXkwlZwQIrVil+q8dE0k0AAM6n1EmRAgMBAAECggEAFDvet57dtLI6m/vyfO2vnC7BWv+dumzca3cT3rap5guiB6NRYK+lnz8CBqx9fbBSqhkRWy72xbHw9laHMnq7n+hFWfb7Wx+PB5YYAI6B7wxkKhOqf5J0kBhdrFiDMG+eFVsFvAo4Am8e7utCuCdr7Ekw8Y4RPfCUFMmcaV4BDa6fHd21XoofR6vNNlgbJFaXxyhidOu7ECJmQa3WeT273RtcQSRMaIioNRNI9rPKNOPqZ4xp8YPjl/SxQSRRgOwylKH/F9S9UXF/fG+/5qY4Y3waoe0ztCDfohjVYVxYl3N+MzT/ICCkRV8tT0RsUkjEl5oNcnXfFfnE4yMfkQJKAQKBgQDK6wzs9182nDQSreMOXGHknVxGwoewHrsWni1ZgqhVD3DDImxFbqTzlVe2zbW0JxmgHMtlEur4qj2+6Vqg4vykK4nXwDkie70fB5Kamg6E+14HpZOiK3shFlVXaWg/zo0nHW5BhzvWLM3xQgxHHZ9MPSn7H8glYacr04kbEeKbmQKBgQDI4h4QFWUNXqQFVoPUzpQk/veY3anjOu77y1reR+3uum+jtmP9ddoG8GkGXyLVk/0iuuxpH34KHDTWlA9YXZSY33AqQrUVs1GxJmjeK0mo/j9wR/FC3jDYmQNzY6rfY7PXmQWla1tPJP1FP1cvtTZm+sGLME8M/TWds/e9yYeYuQKBgF9InFsxlZ4ZH0KeMH5v1u/5DHmVow2KgKOQRw8/EThP9c1LfrfjysUunW+TjP05VwkePEwL5BY8Kp5ZCVt++s9EOof7FVkh7Z6Cec7rBGJhfrfsgjSmYj0ZNZ3EO1Wq8hEp+rn+fJSHmXTuZMGIIWM1XV80f1E+V7d2r2zsqxIRAoGBAJ0iQuHR2nnazfJe+kA8VyWZS5QH0BwuvUG4kBvPqA5VR36H7S8WQLWs2HpjcJwgZqIEFWkleTHvXmV664XzrYjnPpXQGFYhLoWjxeQDeFr4hicOH2pu40aKamiYTdDv7H149TGwCHygMn04TrrCxQtImpyF7U/7wTTa0a9jNO4BAoGBAIV4VLBS1JcoIio1Z3Oxx8B7il0FJ2hqVOhHeIyHxyMv1skJGj6Qn8C89+I8iaqwwhABzbtVb/NYVqTwHaVR7c75gtenD3zydSf138aWCySns0/+SYLSo3wXRPIGOEaF+rRz1nxZnVed0YZkaONQnLxy3xwlL7xL1LklZSid6qSj";
byte[] bb=t.Sm2Encrypt(aa);
System.out.println("ccccccccc"+Base64.encode(bb));
// System.out.println("aaaaaaaaa"+Base64.encode(bb));
System.out.println("asaa"+t.Sm2Decrypt(bb));
}
}