123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190 |
- /**
- * 加解密类
- */
- const CryptoJS = require("../utils/crypto-js-4.1.1.min.js")
- export class EncryptManager {
- constructor() {}
- /**
- * md5加密
- * @param str 加密字符串
- */
- md5 = (str) => {
- // return md5(str);
- return CryptoJS.MD5(str).toString()
- }
- /**
- * AES加密
- * @param str 要加密的字符串
- * @param key 秘钥
- */
- aesEncode = (str, key) => {
- let encrypt = CryptoJS.AES.encrypt(str, CryptoJS.enc.Utf8.parse(key), {
- mode: CryptoJS.mode.ECB,
- padding: CryptoJS.pad.Pkcs7
- }).toString();
- return encrypt;
- }
- /**
- * AES解密
- */
- aesDecode = (str, key) => {
- let decrypt = CryptoJS.AES.decrypt(str, CryptoJS.enc.Utf8.parse(key), {
- mode: CryptoJS.mode.ECB,
- padding: CryptoJS.pad.Pkcs7
- }).toString(CryptoJS.enc.Utf8);
- return decrypt;
- }
- /**
- * base64加密
- */
- base64Encode = (str) => {
- let wordArray = CryptoJS.enc.Utf8.parse(str);
- let encrypt = CryptoJS.enc.Base64.stringify(wordArray);
- return encrypt;
- }
- /**
- * base64解密
- */
- base64Decode = (str) => {
- return CryptoJS.enc.Base64.parse(str).toString(CryptoJS.enc.Utf8);
- }
- /**
- * DES加密
- */
- desEncode = (str, key) => {
- let keyHex = CryptoJS.enc.Utf8.parse(key)
- let option = {
- mode: CryptoJS.mode.ECB,
- padding: CryptoJS.pad.Pkcs7
- }
- let encrypted = CryptoJS.DES.encrypt(str, keyHex, option)
- return encrypted.toString()
- }
- /**
- * DES解密
- */
- desDecode = (str, key) => {
- let keyHex = CryptoJS.enc.Utf8.parse(key);
- let options = {
- ciphertext: CryptoJS.enc.Base64.parse(str)
- };
- let mode = {
- mode: CryptoJS.mode.ECB,
- padding: CryptoJS.pad.Pkcs7
- };
- let decrypted = CryptoJS.DES.decrypt(options, keyHex, mode)
- return decrypted.toString(CryptoJS.enc.Utf8)
- }
- /**
- * RC4加密
- */
- rc4Encode = (str, key) => {
- return CryptoJS.RC4.encrypt(str, key).toString();
- }
- /**
- * RC4解密
- */
- rc4Decode = (str, key) => {
- return CryptoJS.RC4.decrypt(str, key).toString(CryptoJS.enc.Utf8);
- }
- /**
- * rabbit加密
- */
- rabbitEncode = (str, key) => {
- return CryptoJS.Rabbit.encrypt(str, key).toString();
- }
- /**
- * rabbit解密
- */
- rabbitDecode = (str, key) => {
- return CryptoJS.Rabbit.decrypt(str, key).toString(CryptoJS.enc.Utf8);
- }
- /**
- * tripleDES加密
- */
- tripleDESEncode = (str, key) => {
- return CryptoJS.TripleDES.encrypt(str, key).toString();
- }
- /**
- * tripleDES解密
- */
- tripleDESDecode = (str, key) => {
- return CryptoJS.TripleDES.decrypt(str, key).toString(CryptoJS.enc.Utf8);
- }
- /**
- * sha1
- */
- sha1 = (str) => {
- return CryptoJS.SHA1(str).toString();
- }
- /**
- * sha224
- */
- sha224 = (str) => {
- return CryptoJS.SHA224(str).toString()
- }
- /**
- * sha256
- */
- sha256 = (str) => {
- return CryptoJS.SHA256(str).toString()
- }
- /**
- * sha384
- */
- sha384 = (str) => {
- return CryptoJS.SHA384(str).toString()
- }
- /**
- * sha512
- */
- sha512 = (str) => {
- return CryptoJS.SHA512(str).toString()
- }
- /**
- * hmacSha1
- */
- hmacSha1 = (str, key) => {
- return CryptoJS.HmacSHA1(str, key).toString()
- }
- /**
- * hmacSha256
- */
- hmacSha256 = (str, key) => {
- return CryptoJS.HmacSHA256(str, key).toString()
- }
- /**
- * hmacSha512
- */
- hmacSha512 = (str, key) => {
- return CryptoJS.HmacSHA512(str, key).toString()
- }
- /**
- * hmacMd5
- */
- hmacMd5 = (str, key) => {
- return CryptoJS.HmacMD5(str, key).toString()
- }
- }
|