前端使用jsencrypt.js。
后端需要一个RSA工具类,包含生成密钥对、加解密等功能。
流程:
1.后端生成密钥对,并把公钥传递给前端,后端保存私钥
2.前端用公钥加密数据后,传递给后端
3.后端用私钥解密,获取数据
注意:
1.后端把公钥用base64编码为字符串传输。
import org.apache.commons.codec.binary.Base64; private static String encryptBASE64(byte[] bytes) { return Base64.encodeBase64String(bytes); }
2.前端加密后的数据也是以base64编码传输的,后端需要base64解码。