crypto.js 921 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. import CryptoJS from "crypto-js";
  2. const key = 'ab7c603643a9e1223250ba1802bfa09b'
  3. const iv = 'ef87dbc437335809'
  4. /**
  5. * 加密
  6. * @param text
  7. * @returns {string}
  8. */
  9. export const encrypt = (text) => {
  10. const keyHex = CryptoJS.enc.Hex.parse(key)
  11. const ivHex = CryptoJS.enc.Hex.parse(iv)
  12. const encrypted = CryptoJS.AES.encrypt(
  13. text,
  14. keyHex,
  15. {
  16. iv: ivHex,
  17. mode: CryptoJS.mode.CBC,
  18. padding: CryptoJS.pad.Pkcs7
  19. }
  20. )
  21. return encrypted.toString()
  22. }
  23. /**
  24. * 解密
  25. * @param text
  26. * @returns {string}
  27. */
  28. export const decrypt = (text) => {
  29. const keyHex = CryptoJS.enc.Hex.parse(key)
  30. const ivHex = CryptoJS.enc.Hex.parse(iv)
  31. const decrypted = CryptoJS.AES.decrypt(
  32. text,
  33. keyHex,
  34. {
  35. iv: ivHex,
  36. mode: CryptoJS.mode.CBC,
  37. padding: CryptoJS.pad.Pkcs7
  38. }
  39. )
  40. return decrypted.toString(CryptoJS.enc.Utf8)
  41. }