crypto.js 797 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. // const CryptoJS = require('resourse/crypto-js.js');
  2. import CryptoJS from './resourse/crypto-js.js'
  3. /**
  4. *加密处理
  5. */
  6. const encryption = (params) => {
  7. let {
  8. data,
  9. type,
  10. param,
  11. key
  12. } = params
  13. const result = JSON.parse(JSON.stringify(data))
  14. if (type === 'Base64') {
  15. param.forEach(ele => {
  16. result[ele] = btoa(result[ele])
  17. })
  18. } else {
  19. param.forEach(ele => {
  20. var data = result[ele]
  21. key = CryptoJS.enc.Latin1.parse(key)
  22. var iv = key
  23. // 加密
  24. var encrypted = CryptoJS.AES.encrypt(
  25. data,
  26. key, {
  27. iv: iv,
  28. mode: CryptoJS.mode.CBC,
  29. padding: CryptoJS.pad.ZeroPadding
  30. })
  31. result[ele] = encrypted.toString()
  32. })
  33. }
  34. return result
  35. }
  36. module.exports = {
  37. encryption
  38. }