使用Angularjs加密客户端本地存储数据

前端之家收集整理的这篇文章主要介绍了使用Angularjs加密客户端本地存储数据前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个客户端数据存储在localStorage中.出于安全原因,我想加密数据.有没有办法使用Angularjs加密/解密客户端数据(而不是服务器数据)?
  1. $scope.accountObj = {
  2. isErrorMsg:false,isReadonly:false,createAccountErr:false
  3. };
您可以使用cryptojs库来加密/解密数据.首先,您应该生成一些在加密过程中使用的密钥:
  1. var secretKey = 'your-secret-key';

然后,您需要存储和声明数据的方法

  1. store : function (key,value) {
  2. var encryptedData = CryptoJS.AES.encrypt(angular.toJson(value),secretKey).toString();
  3. window.localStorage.setItem(key,encryptedData);
  4. },get : function (key) {
  5. var encryptedData = window.localStorage.getItem(key);
  6.  
  7. if (!_.isNull(encryptedData))
  8. return angular.fromJson(CryptoJS.AES.decrypt(encryptedValue,secretKey).toString(CryptoJS.enc.Utf8));
  9.  
  10. return null;
  11. }

这里唯一的问题是密钥存储在客户端,这是这种加密的破坏逻辑.

猜你在找的Angularjs相关文章