crypto-js是一個(gè)前端Javascript標(biāo)準(zhǔn)加密算法庫,CryptoJS (crypto.js) 為 JavaScript 提供了各種各樣的加密算法。有時(shí)候項(xiàng)目涉及到的敏感數(shù)據(jù)比較多,為了信息安全,我們常常需要對(duì)一些數(shù)據(jù)進(jìn)行接口加密處理,如編碼、將明文轉(zhuǎn)化為暗文、加密比對(duì),目前已支持的算法包括:MD5、 SHA-1、SHA-256、AES、Rabbit、MARC4、HMAC、HMAC-MD5、HMAC-SHA1、HMAC-SHA256、PBKDF2等
https://github.com/brix/crypto-js
使用npm進(jìn)行安裝
npm install crypto-js
支持nodejs和瀏覽器
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>
var CryptoJS = require('crypto-js');// Encryptvar ciphertext = CryptoJS.AES.encrypt('my message', 'secret key 123').toString();// Decryptvar 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}]
有這樣一個(gè)齊全的加密算法庫,就很方便很多了,小伙伴們火速收藏吧!
聯(lián)系客服