如何在 flutter sharedprefrence 中存储加密类型
How to store an Encrypted type in flutter sharedprefrence
我正在用 flutter 设计一个应用程序,我已经使用 encrypt 成功地加密了一个字符串。现在我想将这个加密数据存储在 sharedpreference 中,这样我可以稍后检索它并在使用前解密它。我已经尝试过 setString() 它不起作用,因为它似乎 'Encrypted' 本身就是一种类型,因此不适用于字符串。有什么解决办法吗?
这是我的代码
Encrypted runEncrypt( String caption) {
final key = Key.fromUtf8('u^Hrf64hFrM08HuytDeMK7654DgJlP');
final iv = IV.fromLength(16);
final encryptPro = Encrypter(AES(key));
final encrypted = encryptPro.encrypt(caption, iv: iv);
return encrypted;
}
/////
Encrypted keyz=runEncrypt('this is the key');
pref.setString("key",keyz);
您可以使用加密对象的 base64
属性 it returns a String
。
在 source code of the package 它说它 returns Encrypted
作为 Base64 字符串表示。
pref.setString("key", keyz.base64);
解密时使用相同的编码
Encrypter.decrypt64(valueFromSharedPref)
我正在用 flutter 设计一个应用程序,我已经使用 encrypt 成功地加密了一个字符串。现在我想将这个加密数据存储在 sharedpreference 中,这样我可以稍后检索它并在使用前解密它。我已经尝试过 setString() 它不起作用,因为它似乎 'Encrypted' 本身就是一种类型,因此不适用于字符串。有什么解决办法吗?
这是我的代码
Encrypted runEncrypt( String caption) {
final key = Key.fromUtf8('u^Hrf64hFrM08HuytDeMK7654DgJlP');
final iv = IV.fromLength(16);
final encryptPro = Encrypter(AES(key));
final encrypted = encryptPro.encrypt(caption, iv: iv);
return encrypted;
}
/////
Encrypted keyz=runEncrypt('this is the key');
pref.setString("key",keyz);
您可以使用加密对象的 base64
属性 it returns a String
。
在 source code of the package 它说它 returns Encrypted
作为 Base64 字符串表示。
pref.setString("key", keyz.base64);
解密时使用相同的编码
Encrypter.decrypt64(valueFromSharedPref)