APP端Flutter加密,适配flutter sdk2.0后
1、导入依赖
#RSA加密
encrypt: ^5.0.0
2、将后端提供的公钥存放在项目当中
assets文件夹中新建rsa/public.pem:
-----BEGIN PUBLIC KEY-----
公钥信息
-----END PUBLIC KEY-----
在pubspec中引用- assets/rsa/public.pem
3、代码实现
///使用rsa加密数据
static FutureencodeString(String text)async{
String publicKeyString =await rootBundle.loadString('assets/rsa/public.pem');
RSAAsymmetricKey publicKey =RSAKeyParser().parse(publicKeyString);
RSAPublicKey? key = publicKeyas RSAPublicKey?;
//创建加密器
final encrypter =Encrypter(RSA(publicKey: key));
return encrypter.encrypt(text).base64;
}
RSAPublicKey? key = publicKeyas RSAPublicKey?; 这里需要把publicKeyas 强转一下,否则编译不通过。