utils.js 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. 'use strict'
  2. var config = require('../config/config.js');
  3. var CryptoJS = require("crypto-js");
  4. require('dotenv').config()
  5. function toJson(code_, obj_, errMsg_) {
  6. var code = code_
  7. var data = obj_
  8. var errMsg = errMsg_
  9. let jopt = { code, data, errMsg };
  10. return JSON.stringify(jopt)
  11. }
  12. /**
  13. *
  14. * @param {*} crypt_key 密文
  15. * @param {*} message 待解密的内容 U2FsdGVkX18zHfDE3lO2yVxk2lMCEiwjrzYo1ZbHqfriFapZWXqLhczs9J0cN9EnvQR64GLRzYDgzMuAr9U1C0LZjA5mV4cSAZeBOrY8KNY09+BhTDetb2/43bIwiFR6
  16. */
  17. function decryptPrivityKey(message) {
  18. console.log('message=', message);
  19. console.log("NENET_CRYPT_KEY", process.env.NENET_CRYPT_KEY);
  20. console.log("NENET_CRYPT_IV", process.env.NENET_CRYPT_IV);
  21. // var encrypted = 'Zc4v3uJgPY+BVg/IrDLA4aIk9ko/UrgjAtBTLqymdMAvmqdp1GttRjkBgNNNTyxA+3ThbIGlM0INeeHGicYVbLea4ymkty8gd30rZXQ4yYQ='; //python is base64 ECB
  22. // var key = '0IPmaec1o9FQCqGN'//key used in Python
  23. // var iv = 'Zh4A7bOY2ksp9oIn'
  24. var encrypted = message; //python is base64 ECB
  25. var key = process.env.DENET_CRYPT_KEY//key used in Python
  26. var iv = process.env.DENET_CRYPT_IV
  27. console.log('decryptPrivityKey key= iv=', key, iv);
  28. key = CryptoJS.enc.Utf8.parse(key);
  29. // var decrypted = CryptoJS.AES.decrypt(encrypted, key, {mode:CryptoJS.mode.ECB});
  30. iv = CryptoJS.enc.Utf8.parse(iv)
  31. var decrypted = CryptoJS.AES.decrypt(encrypted, key, { iv: iv, mode: CryptoJS.mode.CBC });
  32. console.log('decrypted==', decrypted.toString(CryptoJS.enc.Utf8));
  33. return decrypted.toString(CryptoJS.enc.Utf8)
  34. }
  35. const CHAIN_NAME = {
  36. eth: 'eth',
  37. bsc_testnet: 'bsc testnet',
  38. bsc_mainnet: 'bsc'
  39. }
  40. const CHAIN_ID = {
  41. eth: '0x1',
  42. bsc_testnet: '0x61',
  43. bsc_mainnet: '0x38'
  44. }
  45. function getChainName(key) {
  46. return CHAIN_NAME[key];
  47. }
  48. function getChainId(key) {
  49. return CHAIN_ID[key];
  50. }
  51. module.exports = {
  52. toJson,
  53. decryptPrivityKey,
  54. getChainName,
  55. getChainId,
  56. }