低成本,高颜值建站 - 万家云网      热门搜索: 响应式 简洁 大气 商城 科技 自适应 时尚 精品 炫酷

各种各样加密算法的js库,安全加密不再愁——crypto-js

crypto-js是一个前端Javascript标准加密算法库,CryptoJS (crypto.js) 为 JavaScript 提供了各种各样的加密算法。有时候项目涉及到的敏感数据比较多,为了信息安全,我们常常需要对一些数据进行接口加密处理,如编码、将明文转化为暗文、加密比对,目前已支持的算法包括:MD5、 SHA-1、SHA-256、AES、Rabbit、MARC4、HMAC、HMAC-MD5、HMAC-SHA1、HMAC-SHA256、PBKDF2等
最美分享Coder 2020-06-17 14:11:54 js 加密 crypto
0

crypto-js是一个前端Javascript标准加密算法库,CryptoJS (crypto.js) 为 JavaScript 提供了各种各样的加密算法。有时候项目涉及到的敏感数据比较多,为了信息安全,我们常常需要对一些数据进行接口加密处理,如编码、将明文转化为暗文、加密比对,目前已支持的算法包括:MD5、 SHA-1、SHA-256、AES、Rabbit、MARC4、HMAC、HMAC-MD5、HMAC-SHA1、HMAC-SHA256、PBKDF2等


各种各样加密算法的js库,安全加密不再愁——crypto-js

Github

https://github.com/brix/crypto-js


安装

使用npm进行安装

npm install crypto-js

使用

支持nodejs和浏览器

  • ES6
import sha256 from 'crypto-js/sha256'; import hmacSHA512 from 'crypto-js/hmac-sha512'; import Base64 from 'crypto-js/enc-base64'; const message, nonce, path, privateKey; // ... const hashDigest = sha256(nonce + message); const hmacDigest = Base64.stringify(hmacSHA512(path + hashDigest, privateKey));
  • 模块化
var AES = require("crypto-js/aes"); var SHA256 = require("crypto-js/sha256");
...
console.log(SHA256("Message"));
  • 直接引用
<script type="text/javascript" src="path-to/bower_components/crypto-js/crypto-js.js">script> <script type="text/javascript">  var encrypted = CryptoJS.AES(...);  var encrypted = CryptoJS.SHA256(...); script>

AES加密

  • 明文加密
var CryptoJS = require("crypto-js"); // Encrypt
var ciphertext = CryptoJS.AES.encrypt('my message', 'secret key 123').toString(); // Decrypt
var bytes  = CryptoJS.AES.decrypt(ciphertext, 'secret key 123');
var originalText = bytes.toString(CryptoJS.enc.Utf8);

console.log(originalText); // 'my message'
  • 对象加密
var CryptoJS = require("crypto-js");

var data = [{id: 1}, {id: 2}] // 加密
var ciphertext = CryptoJS.AES.encrypt(JSON.stringify(data), 'secret key 123').toString(); // 解密
var bytes  = CryptoJS.AES.decrypt(ciphertext, 'secret key 123');
var decryptedData = JSON.parse(bytes.toString(CryptoJS.enc.Utf8)); console.log(decryptedData); // [{id: 1}, {id: 2}]

模块集合


  • crypto-js/core
  • crypto-js/x64-core
  • crypto-js/lib-typedarrays

  • crypto-js/md5
  • crypto-js/sha1
  • crypto-js/sha256
  • crypto-js/sha224
  • crypto-js/sha512
  • crypto-js/sha384
  • crypto-js/sha3
  • crypto-js/ripemd160

  • crypto-js/hmac-md5
  • crypto-js/hmac-sha1
  • crypto-js/hmac-sha256
  • crypto-js/hmac-sha224
  • crypto-js/hmac-sha512
  • crypto-js/hmac-sha384
  • crypto-js/hmac-sha3
  • crypto-js/hmac-ripemd160

  • crypto-js/pbkdf2

  • crypto-js/aes
  • crypto-js/tripledes
  • crypto-js/rc4
  • crypto-js/rabbit
  • crypto-js/rabbit-legacy
  • crypto-js/evpkdf

  • crypto-js/format-openssl
  • crypto-js/format-hex

  • crypto-js/enc-latin1
  • crypto-js/enc-utf8
  • crypto-js/enc-hex
  • crypto-js/enc-utf16
  • crypto-js/enc-base64

  • crypto-js/mode-cfb
  • crypto-js/mode-ctr
  • crypto-js/mode-ctr-gladman
  • crypto-js/mode-ofb
  • crypto-js/mode-ecb

  • crypto-js/pad-pkcs7
  • crypto-js/pad-ansix923
  • crypto-js/pad-iso10126
  • crypto-js/pad-iso97971
  • crypto-js/pad-zeropadding
  • crypto-js/pad-nopadding

总结

有这样一个齐全的加密算法库,就很方便很多了,小伙伴们火速收藏吧!

评论
暂时还没有任何用户评论

发表评论

用户名: 匿名用户
E-mail:
评价等级:
评论内容:
验证码: captcha
 

资讯分类

热文资讯

热门文章标签

点击这里给我发消息
嘿!有什么能帮到您的吗?