Ionic - 在本地存储中存储加密值
Ionic - Store encrypted values in Local Storage
用例:在线时,用户启动提示输入 username/password 的 Ionic 应用程序。针对服务器检查凭据并允许用户登录。此外,加密的密码存储在本地 (ipad)。
离线时,不是检查服务器,而是根据本地存储的加密密码验证凭据。
什么有效
能够使用Ionic中的crypto-js库来加密密码。
var encryptedMessage = CryptoJS.AES.encrypt(password, secretkey);
什么不起作用
现在,我正在尝试使用 angular-local-storage 库将其保存在本地存储中。
localStorageService.set('pwdkey', encryptedMessage );
它给我以下错误
TypeError: Converting circular structure to JSON
at Object.stringify (native)
at toJson (http://localhost:8100/lib/ionic/js/ionic.bundle.js:14637:15)
at Object.addToLocalStorage (http://localhost:8100/lib/angular-local-storage/dist/angular-local-storage.js:158:19)
at encryptAndStore (http://localhost:8100/js/controllers.js:550:27)
如果我传递未加密的字符串而不是加密的密码,则相同的代码可以正常工作。所以,跟加密数据有关系。
如何在本地存储中存储加密数据?
已使用 .toString() 方法解决问题
CryptoJS.AES.encrypt(password, secretkey).toString()
这样我就可以保存字符串,然后将其取回并解密。
用例:在线时,用户启动提示输入 username/password 的 Ionic 应用程序。针对服务器检查凭据并允许用户登录。此外,加密的密码存储在本地 (ipad)。 离线时,不是检查服务器,而是根据本地存储的加密密码验证凭据。
什么有效 能够使用Ionic中的crypto-js库来加密密码。
var encryptedMessage = CryptoJS.AES.encrypt(password, secretkey);
什么不起作用 现在,我正在尝试使用 angular-local-storage 库将其保存在本地存储中。
localStorageService.set('pwdkey', encryptedMessage );
它给我以下错误
TypeError: Converting circular structure to JSON
at Object.stringify (native)
at toJson (http://localhost:8100/lib/ionic/js/ionic.bundle.js:14637:15)
at Object.addToLocalStorage (http://localhost:8100/lib/angular-local-storage/dist/angular-local-storage.js:158:19)
at encryptAndStore (http://localhost:8100/js/controllers.js:550:27)
如果我传递未加密的字符串而不是加密的密码,则相同的代码可以正常工作。所以,跟加密数据有关系。
如何在本地存储中存储加密数据?
已使用 .toString() 方法解决问题
CryptoJS.AES.encrypt(password, secretkey).toString()
这样我就可以保存字符串,然后将其取回并解密。