这是我在android中用java编写的用于加密的代码--我使用的是AES加密,使用的是256的私钥长度和PKCS5填充。
请告诉我怎样才能在flutter中使用相同的加密方法。我也使用过PointyCastle,但它对我不起作用。
public AES() {
cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
_key = new byte[32]; //256 bit key space
_iv = new byte[16]; //128 bit IV
}我想在flutter中使用相同的加密方法来实现加密。请帮助我在flutter中实现这一点。
发布于 2021-10-15 18:49:30
这就是我如何在flutter中实现它来加密字符串。
创建dart文件crypto.dart并复制/粘贴以下内容。
import 'package:encrypt/encrypt.dart';
final aesKey = '<your key';
String encryptData(final String data)
{
final key = Key.fromUtf8(aesKey);
final iv = IV.fromUtf8(aesKey);
final aesEncrypter = Encrypter(AES(key, mode: AESMode.cbc));
final encrypted = aesEncrypter.encrypt(data, iv: iv);
return encrypted.base64;
}
// Decrypt data
String decryptData(final String encrypted)
{
final key = Key.fromUtf8(aesKey);
final iv = IV.fromUtf8(aesKey);
final aesEncrypter = Encrypter(AES(key, mode: AESMode.cbc));
final data = aesEncrypter.decrypt64(encrypted, iv: iv);
return data;
}然后,您可以导入crypt.dart文件并调用加密/解密所需的适当方法。
https://stackoverflow.com/questions/65246392
复制相似问题