星火管控前端
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

secret.js 948B

9 månader sedan
12345678910111213141516171819202122232425262728293031323334
  1. let keystr = "XINGHUOLIAOYUAN7"; //密钥
  2. // 字符串转hex
  3. let string_to_hex = function (str) {
  4. let tempstr = "";
  5. for (let i = 0; i < str.length; i++) {
  6. if (tempstr === "") tempstr = str.charCodeAt(i).toString(16);
  7. else tempstr += str.charCodeAt(i).toString(16);
  8. }
  9. return tempstr;
  10. };
  11. let key = string_to_hex(keystr);
  12. key = CryptoJS.enc.Hex.parse(key);
  13. // 加密
  14. const getEncryptedString = (src) => {
  15. const enc = CryptoJS.AES.encrypt(src, key, {
  16. mode: CryptoJS.mode.ECB,
  17. padding: CryptoJS.pad.Pkcs7
  18. });
  19. const enced = enc.ciphertext.toString();
  20. return enced;
  21. };
  22. // 解密
  23. const getDecryptString = (enced) => {
  24. const dec = CryptoJS.AES.decrypt(CryptoJS.format.Hex.parse(enced), key, {
  25. mode: CryptoJS.mode.ECB,
  26. padding: CryptoJS.pad.Pkcs7
  27. });
  28. let decstr = CryptoJS.enc.Utf8.stringify(dec);
  29. return decstr;
  30. };
  31. window.getEncryptedString = getEncryptedString;
  32. window.getDecryptString = getDecryptString;