1. MD5、blueimp-md5、sha1\2\3(不可逆)
MD5
- 安装
npm install --save js-md5
- 使用
blueimp-md5
- 安装
npm install blueimp-md5
- 使用
import md5 from'blueimp-md5'
cryptojs(可逆)
官方资料:cryptojs.gitbook.io/docs/
- 安装
npm install crypto-js --save-dev
- Key密钥
import CryptoJS from 'crypto-js';
/*** CryptoJS加密*/
export function getAES(data){ //加密
const key = CryptoJS.enc.Utf8.parse("12345678900000001234567890000000");
const iv = CryptoJS.enc.Utf8.parse("1234567890000000");
let encrypted = '';
const srcs = CryptoJS.enc.Utf8.parse(data);
encrypted = CryptoJS.AES.encrypt(srcs, key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
});
return encrypted.ciphertext.toString();
}
- CryptoJS解密
export function getDAes(data){//解密
const key = CryptoJS.enc.Utf8.parse("12345678900000001234567890000000");
const iv = CryptoJS.enc.Utf8.parse("1234567890000000");
const encryptedHexStr = CryptoJS.enc.Hex.parse(data);
const srcs = CryptoJS.enc.Base64.stringify(encryptedHexStr);
const decrypt = CryptoJS.AES.decrypt(srcs, key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
});
var decryptedStr = decrypt.toString(CryptoJS.enc.Utf8);
return decryptedStr.toString();
}
jsencrypt进行rsa加密
- 安装 npm不知道为何总是安装失败,所以用cnpm安装
cnpm install jsencrypt -s
- 使用
import { JSEncrypt } from'jsencrypt'
// jsencrypt进行rsa加密
letencrypt = newJSEncrypt()
// 后台给的公钥
encrypt.setPublicKey('MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCQkga28ZAFn7hrfgYGI6+WT66YjdBvaktFy31AujDNxUSNEPY5M8ftoVrE9qu8iAde/14hCJXGYdnZcZEw3kZzp8HGPrQJaVwrdRizOrZyrXQngoA3VPdUpNLE1QK+SnO/pn0BefCfkSApdTbNHABh2qnh6DYmLKAJhEEsNk8D6QIDAQAB')
// 用户名密码加密
username = encrypt.encrypt(username.toString())
password = encrypt.encrypt(password.toString())