jcc_wallet 2.0.0 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/package.json +29 -25
  2. package/lib/constant/index.d.ts +0 -8
  3. package/lib/constant/index.js +0 -18
  4. package/lib/constant/index.js.map +0 -1
  5. package/lib/eth/index.d.ts +0 -36
  6. package/lib/eth/index.js +0 -98
  7. package/lib/eth/index.js.map +0 -1
  8. package/lib/hd/constant.d.ts +0 -26
  9. package/lib/hd/constant.js +0 -56
  10. package/lib/hd/constant.js.map +0 -1
  11. package/lib/hd/ethereum.plugin.d.ts +0 -4
  12. package/lib/hd/ethereum.plugin.js +0 -101
  13. package/lib/hd/ethereum.plugin.js.map +0 -1
  14. package/lib/hd/index.d.ts +0 -227
  15. package/lib/hd/index.js +0 -394
  16. package/lib/hd/index.js.map +0 -1
  17. package/lib/hd/plugins.d.ts +0 -1
  18. package/lib/hd/plugins.js +0 -33
  19. package/lib/hd/plugins.js.map +0 -1
  20. package/lib/hd/swtc.plugin.d.ts +0 -5
  21. package/lib/hd/swtc.plugin.js +0 -72
  22. package/lib/hd/swtc.plugin.js.map +0 -1
  23. package/lib/hd/tron.plugin.d.ts +0 -4
  24. package/lib/hd/tron.plugin.js +0 -67
  25. package/lib/hd/tron.plugin.js.map +0 -1
  26. package/lib/index.d.ts +0 -26
  27. package/lib/index.js +0 -62
  28. package/lib/index.js.map +0 -1
  29. package/lib/jingchangWallet/index.d.ts +0 -272
  30. package/lib/jingchangWallet/index.js +0 -758
  31. package/lib/jingchangWallet/index.js.map +0 -1
  32. package/lib/moac/index.d.ts +0 -28
  33. package/lib/moac/index.js +0 -58
  34. package/lib/moac/index.js.map +0 -1
  35. package/lib/types/index.d.ts +0 -90
  36. package/lib/types/index.js +0 -1
  37. package/lib/types/index.js.map +0 -1
  38. package/lib/util/index.d.ts +0 -21
  39. package/lib/util/index.js +0 -90
  40. package/lib/util/index.js.map +0 -1
  41. package/lib/x-wallet/index.d.ts +0 -21
  42. package/lib/x-wallet/index.js +0 -84
  43. package/lib/x-wallet/index.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jcc_wallet",
3
- "version": "2.0.0",
3
+ "version": "3.0.1",
4
4
  "description": "Toolkit of wallet to manage multiple chains & support multiple keystores for each chain",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -15,13 +15,11 @@
15
15
  "coveralls": "cat ./coverage/lcov.info | coveralls",
16
16
  "build": "tsc --skipLibCheck",
17
17
  "test": "npm run test:node && npm run test:browser",
18
- "test:node": "npm run build && nyc --extension=.ts --reporter=lcov --reporter=html --reporter=text mocha --timeout=3000 test/*.spec.js",
19
- "test:browser": "npm run babel && npm run babel-ethereum-wallet && npm run build && karma start karma.conf.js",
20
- "tslint": "tslint --project tsconfig.json --config tslint.json",
21
- "compile": "npm run babel && npm run babel-ethereum-wallet && ./compile.sh",
22
- "pretty": "pretty-quick --staged",
23
- "babel": "babel --plugins @babel/plugin-transform-optional-chaining node_modules/@noble/curves/abstract/weierstrass.js -o node_modules/@noble/curves/abstract/weierstrass.js && babel --plugins @babel/plugin-transform-optional-chaining node_modules/@ethereumjs/wallet/dist/esm/thirdparty.js -o node_modules/@ethereumjs/wallet/dist/esm/thirdparty.js && babel --plugins @babel/plugin-transform-optional-chaining node_modules/@ethereumjs/util/dist/esm/asyncEventEmitter.js -o node_modules/@ethereumjs/util/dist/esm/asyncEventEmitter.js",
24
- "babel-ethereum-wallet": "babel --plugins @babel/plugin-transform-modules-commonjs node_modules/@ethereumjs/wallet/dist/esm/index.js -o node_modules/@ethereumjs/wallet/dist/esm/index.js && babel --plugins @babel/plugin-transform-modules-commonjs node_modules/@ethereumjs/util/dist/esm/asyncEventEmitter.js -o node_modules/@ethereumjs/wallet/util/esm/asyncEventEmitter.js && babel --plugins @babel/plugin-transform-modules-commonjs node_modules/@ethereumjs/util/dist/esm/mapDB.js -o node_modules/@ethereumjs/util/dist/esm/mapDB.js"
18
+ "test:node": "npm run build && nyc --extension=.ts --reporter=lcov --reporter=html --reporter=text mocha --timeout=6000 test/*.spec.js",
19
+ "test:browser": "npm run build && karma start karma.conf.js",
20
+ "eslint": "./node_modules/.bin/eslint src",
21
+ "compile": "/compile.sh",
22
+ "pretty": "pretty-quick --staged"
25
23
  },
26
24
  "repository": {
27
25
  "type": "git",
@@ -49,39 +47,40 @@
49
47
  "devDependencies": {
50
48
  "@babel/cli": "^7.23.0",
51
49
  "@babel/core": "^7.23.2",
52
- "@babel/plugin-transform-modules-commonjs": "^7.23.3",
53
- "@babel/plugin-transform-optional-chaining": "^7.23.0",
54
- "@babel/plugin-transform-typescript": "^7.22.15",
55
50
  "@babel/preset-env": "^7.23.2",
56
51
  "@babel/preset-typescript": "^7.22.15",
52
+ "@types/eslint": "^8",
53
+ "@typescript-eslint/eslint-plugin": "^6.11.0",
54
+ "@typescript-eslint/parser": "^6.11.0",
57
55
  "babel-loader": "^8.3.0",
58
56
  "browserify": "^16.5.0",
59
57
  "chai": "^4.2.0",
60
- "coveralls": "^3.0.9",
58
+ "coveralls": "^3.1.1",
61
59
  "cross-env": "^7.0.0",
62
60
  "duplicate-package-checker-webpack-plugin": "^3.0.0",
61
+ "eslint": "^8.54.0",
62
+ "eslint-plugin-jsdoc": "^46.9.0",
63
+ "eslint-plugin-prefer-arrow": "^1.2.3",
63
64
  "husky": "^7.0.4",
64
- "jsdom": "^15.2.1",
65
- "karma": "^6.3.4",
65
+ "jsdom": "^22.1.0",
66
+ "karma": "^6.4.2",
66
67
  "karma-browserify": "^8.1.0",
67
- "karma-chrome-launcher": "^3.1.0",
68
+ "karma-chrome-launcher": "^3.2.0",
68
69
  "karma-detect-browsers": "^2.3.3",
69
70
  "karma-env-preprocessor": "^0.1.1",
70
- "karma-firefox-launcher": "^1.3.0",
71
+ "karma-firefox-launcher": "^2.1.2",
71
72
  "karma-mocha": "^2.0.1",
72
- "karma-webpack": "^4.0.2",
73
- "mocha": "^7.1.0",
73
+ "karma-webpack": "^5.0.0",
74
+ "mocha": "^10.2.0",
74
75
  "nyc": "^15.0.0",
75
76
  "prettier": "^1.19.1",
76
77
  "pretty-quick": "^2.0.1",
77
- "sinon": "^9.0.0",
78
+ "sinon": "^17.0.1",
78
79
  "ts-loader": "^6.2.1",
79
- "tslint": "^6.0.0",
80
80
  "typescript": "^5.2.2",
81
- "uglifyjs-webpack-plugin": "^1.1.2",
82
- "webpack": "^4.42.0",
83
- "webpack-bundle-analyzer": "^3.6.0",
84
- "webpack-cli": "^3.3.11"
81
+ "webpack": "^5.89.0",
82
+ "webpack-bundle-analyzer": "^4.10.1",
83
+ "webpack-cli": "^5.1.4"
85
84
  },
86
85
  "dependencies": {
87
86
  "@ethereumjs/util": "^9.0.0",
@@ -95,12 +94,17 @@
95
94
  "clone-deep": "^4.0.1",
96
95
  "eccrypto": "^1.1.6",
97
96
  "elliptic": "^6.5.4",
97
+ "eosjs": "^22.1.0",
98
+ "eosjs-ecc": "^4.0.1",
98
99
  "jcc_common": "^0.1.0",
99
100
  "keccak": "^3.0.3",
100
101
  "lockr": "^0.8.5",
102
+ "node-polyfill-webpack-plugin": "^2.0.1",
101
103
  "scryptsy": "^2.1.0",
104
+ "secp256k1": "^5.0.0",
102
105
  "tiny-secp256k1": "^1.1.6",
103
- "tronweb": "^5.3.1"
106
+ "tronweb": "^5.3.1",
107
+ "wif": "^4.0.0"
104
108
  },
105
109
  "nyc": {
106
110
  "check-coverage": true,
@@ -1,8 +0,0 @@
1
- declare const PASSWORD_IS_REQUIRED = "password is required";
2
- declare const WALLET_IS_EMPTY = "wallet is empty";
3
- declare const PASSWORD_IS_WRONG = "password is wrong";
4
- declare const KEYSTORE_IS_INVALID = "keystore is invalid";
5
- declare const ETH_PASSWORD_IS_WRONG = "ethereum password is wrong";
6
- declare const SECRET_IS_INVALID = "secret is invalid";
7
- declare const ADDRESS_IS_EXISTENT = "address is existent";
8
- export { ADDRESS_IS_EXISTENT, ETH_PASSWORD_IS_WRONG, KEYSTORE_IS_INVALID, PASSWORD_IS_REQUIRED, PASSWORD_IS_WRONG, SECRET_IS_INVALID, WALLET_IS_EMPTY };
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WALLET_IS_EMPTY = exports.SECRET_IS_INVALID = exports.PASSWORD_IS_WRONG = exports.PASSWORD_IS_REQUIRED = exports.KEYSTORE_IS_INVALID = exports.ETH_PASSWORD_IS_WRONG = exports.ADDRESS_IS_EXISTENT = void 0;
4
- var PASSWORD_IS_REQUIRED = "password is required";
5
- exports.PASSWORD_IS_REQUIRED = PASSWORD_IS_REQUIRED;
6
- var WALLET_IS_EMPTY = "wallet is empty";
7
- exports.WALLET_IS_EMPTY = WALLET_IS_EMPTY;
8
- var PASSWORD_IS_WRONG = "password is wrong";
9
- exports.PASSWORD_IS_WRONG = PASSWORD_IS_WRONG;
10
- var KEYSTORE_IS_INVALID = "keystore is invalid";
11
- exports.KEYSTORE_IS_INVALID = KEYSTORE_IS_INVALID;
12
- var ETH_PASSWORD_IS_WRONG = "ethereum ".concat(PASSWORD_IS_WRONG);
13
- exports.ETH_PASSWORD_IS_WRONG = ETH_PASSWORD_IS_WRONG;
14
- var SECRET_IS_INVALID = "secret is invalid";
15
- exports.SECRET_IS_INVALID = SECRET_IS_INVALID;
16
- var ADDRESS_IS_EXISTENT = "address is existent";
17
- exports.ADDRESS_IS_EXISTENT = ADDRESS_IS_EXISTENT;
18
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constant/index.ts"],"names":[],"mappings":";;;AAAA,IAAM,oBAAoB,GAAG,sBAAsB,CAAC;AAYlD,oDAAoB;AAXtB,IAAM,eAAe,GAAG,iBAAiB,CAAC;AAcxC,0CAAe;AAbjB,IAAM,iBAAiB,GAAG,mBAAmB,CAAC;AAW5C,8CAAiB;AAVnB,IAAM,mBAAmB,GAAG,qBAAqB,CAAC;AAQhD,kDAAmB;AAPrB,IAAM,qBAAqB,GAAG,mBAAY,iBAAiB,CAAE,CAAC;AAM5D,sDAAqB;AALvB,IAAM,iBAAiB,GAAG,mBAAmB,CAAC;AAS5C,8CAAiB;AARnB,IAAM,mBAAmB,GAAG,qBAAqB,CAAC;AAGhD,kDAAmB"}
@@ -1,36 +0,0 @@
1
- /**
2
- * check eth secret is valid or not
3
- *
4
- * @param {string} secret
5
- * @returns {boolean} return true if valid
6
- */
7
- declare const isValidSecret: (secret: string) => boolean;
8
- /**
9
- * check eth address is valid or not
10
- *
11
- * @param {string} address
12
- * @returns {boolean} return true if valid
13
- */
14
- declare const isValidAddress: (address: string) => boolean;
15
- /**
16
- * get eth address with secret
17
- * @param {string} secret
18
- * @returns {string | null} return address if valid, otherwise return null
19
- */
20
- declare const getAddress: (secret: string) => string | null;
21
- /**
22
- * decrypt ethereum keystore file with ethereum password
23
- *
24
- * @param {string} password
25
- * @param {*} encryptData
26
- * @returns {string} return secret if success, otherwise throws `keystore is invalid` if the keystore is invalid or
27
- * throws `ethereum password is wrong` if the password is wrong
28
- */
29
- declare const decryptKeystore: (password: string, encryptData: any) => string;
30
- /**
31
- * create eth wallet
32
- *
33
- * @returns {IWalletModel}
34
- */
35
- declare const createWallet: () => IWalletModel;
36
- export { isValidSecret, isValidAddress, getAddress, decryptKeystore, createWallet };
package/lib/eth/index.js DELETED
@@ -1,98 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.createWallet = exports.decryptKeystore = exports.getAddress = exports.isValidAddress = exports.isValidSecret = void 0;
7
- var crypto_1 = __importDefault(require("crypto"));
8
- var util_1 = require("@ethereumjs/util");
9
- var wallet_1 = require("@ethereumjs/wallet");
10
- var jcc_common_1 = require("jcc_common");
11
- var keccak_1 = __importDefault(require("keccak"));
12
- var scryptsy_1 = __importDefault(require("scryptsy"));
13
- var constant_1 = require("../constant");
14
- var isObject = function (obj) {
15
- return Object.prototype.toString.call(obj) === "[object Object]";
16
- };
17
- /**
18
- * check eth secret is valid or not
19
- *
20
- * @param {string} secret
21
- * @returns {boolean} return true if valid
22
- */
23
- var isValidSecret = function (secret) {
24
- secret = (0, jcc_common_1.filterOx)(secret);
25
- try {
26
- return (0, util_1.isValidPrivate)(Buffer.from(secret, "hex"));
27
- }
28
- catch (error) {
29
- return false;
30
- }
31
- };
32
- exports.isValidSecret = isValidSecret;
33
- /**
34
- * check eth address is valid or not
35
- *
36
- * @param {string} address
37
- * @returns {boolean} return true if valid
38
- */
39
- var isValidAddress = function (address) {
40
- return (0, util_1.isValidAddress)(address);
41
- };
42
- exports.isValidAddress = isValidAddress;
43
- /**
44
- * get eth address with secret
45
- * @param {string} secret
46
- * @returns {string | null} return address if valid, otherwise return null
47
- */
48
- var getAddress = function (secret) {
49
- secret = (0, jcc_common_1.filterOx)(secret);
50
- if (!isValidSecret(secret)) {
51
- return null;
52
- }
53
- var wallet = wallet_1.Wallet.fromPrivateKey(Buffer.from(secret, "hex"));
54
- return wallet.getAddressString();
55
- };
56
- exports.getAddress = getAddress;
57
- /**
58
- * decrypt ethereum keystore file with ethereum password
59
- *
60
- * @param {string} password
61
- * @param {*} encryptData
62
- * @returns {string} return secret if success, otherwise throws `keystore is invalid` if the keystore is invalid or
63
- * throws `ethereum password is wrong` if the password is wrong
64
- */
65
- var decryptKeystore = function (password, encryptData) {
66
- if (!isObject(encryptData)) {
67
- throw new Error(constant_1.KEYSTORE_IS_INVALID);
68
- }
69
- var cryptoData = encryptData.Crypto || encryptData.crypto;
70
- if ((0, jcc_common_1.isEmptyObject)(cryptoData) || (0, jcc_common_1.isEmptyObject)(cryptoData.cipherparams) || (0, jcc_common_1.isEmptyObject)(cryptoData.kdfparams)) {
71
- throw new Error(constant_1.KEYSTORE_IS_INVALID);
72
- }
73
- var iv = Buffer.from(cryptoData.cipherparams.iv, "hex");
74
- var kdfparams = cryptoData.kdfparams;
75
- var derivedKey = (0, scryptsy_1.default)(Buffer.from(password), Buffer.from(kdfparams.salt, "hex"), kdfparams.n, kdfparams.r, kdfparams.p, kdfparams.dklen);
76
- var ciphertext = Buffer.from(cryptoData.ciphertext, "hex");
77
- var mac = (0, keccak_1.default)("keccak256")
78
- .update(Buffer.concat([derivedKey.slice(16, 32), ciphertext]))
79
- .digest();
80
- if (mac.toString("hex") !== cryptoData.mac) {
81
- throw new Error(constant_1.ETH_PASSWORD_IS_WRONG);
82
- }
83
- var decipher = crypto_1.default.createDecipheriv("aes-128-ctr", derivedKey.slice(0, 16), iv);
84
- var seed = Buffer.concat([decipher.update(ciphertext), decipher.final()]);
85
- return seed.toString("hex");
86
- };
87
- exports.decryptKeystore = decryptKeystore;
88
- /**
89
- * create eth wallet
90
- *
91
- * @returns {IWalletModel}
92
- */
93
- var createWallet = function () {
94
- var _w = wallet_1.Wallet.generate();
95
- return { address: _w.getAddressString(), secret: _w.getPrivateKeyString() };
96
- };
97
- exports.createWallet = createWallet;
98
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/eth/index.ts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- declare enum BIP44Chain {
2
- BITCOIN = 2147483648,
3
- BSC = 2147492654,
4
- EOS = 2147483842,
5
- TRON = 2147483843,
6
- ETC = 2147483709,
7
- ETH = 2147483708,
8
- HECO = 2147484658,
9
- MOAC = 2147483962,
10
- POLYGON = 2147484614,
11
- RIPPLE = 2147483792,
12
- SWTC = 2147483963,
13
- CALL = 2147484281,
14
- BVCADT = 2399141888,
15
- STREAM = 2399141889,
16
- BIZAIN = 2399141890
17
- }
18
- /**
19
- * get bip44 chain constant
20
- *
21
- * @param {number} chain chain index number
22
- * @returns {number} bip44 chain constant
23
- */
24
- declare const getBIP44Chain: (chain: number) => any;
25
- declare const BIP44ChainMap: Map<BIP44Chain, string>;
26
- export { BIP44Chain, BIP44ChainMap, getBIP44Chain };
@@ -1,56 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getBIP44Chain = exports.BIP44ChainMap = exports.BIP44Chain = void 0;
7
- var bip44_constants_1 = __importDefault(require("bip44-constants"));
8
- // BIP44 链常量定义
9
- var BIP44Chain;
10
- (function (BIP44Chain) {
11
- BIP44Chain[BIP44Chain["BITCOIN"] = 2147483648] = "BITCOIN";
12
- BIP44Chain[BIP44Chain["BSC"] = 2147492654] = "BSC";
13
- BIP44Chain[BIP44Chain["EOS"] = 2147483842] = "EOS";
14
- BIP44Chain[BIP44Chain["TRON"] = 2147483843] = "TRON";
15
- BIP44Chain[BIP44Chain["ETC"] = 2147483709] = "ETC";
16
- BIP44Chain[BIP44Chain["ETH"] = 2147483708] = "ETH";
17
- BIP44Chain[BIP44Chain["HECO"] = 2147484658] = "HECO";
18
- BIP44Chain[BIP44Chain["MOAC"] = 2147483962] = "MOAC";
19
- BIP44Chain[BIP44Chain["POLYGON"] = 2147484614] = "POLYGON";
20
- BIP44Chain[BIP44Chain["RIPPLE"] = 2147483792] = "RIPPLE";
21
- BIP44Chain[BIP44Chain["SWTC"] = 2147483963] = "SWTC";
22
- BIP44Chain[BIP44Chain["CALL"] = 2147484281] = "CALL";
23
- // not register in bip44, customize setting range: 0x8f000000-0x8fffffff
24
- BIP44Chain[BIP44Chain["BVCADT"] = 2399141888] = "BVCADT";
25
- BIP44Chain[BIP44Chain["STREAM"] = 2399141889] = "STREAM";
26
- BIP44Chain[BIP44Chain["BIZAIN"] = 2399141890] = "BIZAIN";
27
- })(BIP44Chain || (exports.BIP44Chain = BIP44Chain = {}));
28
- /**
29
- * get bip44 chain constant
30
- *
31
- * @param {number} chain chain index number
32
- * @returns {number} bip44 chain constant
33
- */
34
- var getBIP44Chain = function (chain) {
35
- return bip44_constants_1.default.filter(function (e) { return e[0] === chain; });
36
- };
37
- exports.getBIP44Chain = getBIP44Chain;
38
- var BIP44ChainMap = new Map([
39
- [BIP44Chain.BITCOIN, "bitcoin"],
40
- [BIP44Chain.BSC, "bsc"],
41
- [BIP44Chain.EOS, "eos"],
42
- [BIP44Chain.TRON, "tron"],
43
- [BIP44Chain.ETC, "etc"],
44
- [BIP44Chain.ETH, "ethereum"],
45
- [BIP44Chain.HECO, "heco"],
46
- [BIP44Chain.MOAC, "moac"],
47
- [BIP44Chain.POLYGON, "polygon"],
48
- [BIP44Chain.RIPPLE, "ripple"],
49
- [BIP44Chain.SWTC, "jingtum"],
50
- [BIP44Chain.CALL, "call"],
51
- [BIP44Chain.BVCADT, "bvcadt"],
52
- [BIP44Chain.STREAM, "stream"],
53
- [BIP44Chain.BIZAIN, "bizain"]
54
- ]);
55
- exports.BIP44ChainMap = BIP44ChainMap;
56
- //# sourceMappingURL=constant.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constant.js","sourceRoot":"","sources":["../../src/hd/constant.ts"],"names":[],"mappings":";;;;;;AAAA,oEAAwC;AAExC,cAAc;AACd,IAAK,UAkBJ;AAlBD,WAAK,UAAU;IACb,0DAAoB,CAAA;IACpB,kDAAgB,CAAA;IAChB,kDAAgB,CAAA;IAChB,oDAAiB,CAAA;IACjB,kDAAgB,CAAA;IAChB,kDAAgB,CAAA;IAChB,oDAAiB,CAAA;IACjB,oDAAiB,CAAA;IACjB,0DAAoB,CAAA;IACpB,wDAAmB,CAAA;IACnB,oDAAiB,CAAA;IACjB,oDAAiB,CAAA;IAEjB,wEAAwE;IACxE,wDAAmB,CAAA;IACnB,wDAAmB,CAAA;IACnB,wDAAmB,CAAA;AACrB,CAAC,EAlBI,UAAU,0BAAV,UAAU,QAkBd;AAED;;;;;GAKG;AACH,IAAM,aAAa,GAAG,UAAC,KAAa;IAClC,OAAO,yBAAS,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,EAAd,CAAc,CAAC,CAAC;AACjD,CAAC,CAAC;AAoBkC,sCAAa;AAlBjD,IAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IAC5B,CAAC,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC;IAC/B,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC;IACvB,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC;IACvB,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC;IACzB,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC;IACvB,CAAC,UAAU,CAAC,GAAG,EAAE,UAAU,CAAC;IAC5B,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC;IACzB,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC;IACzB,CAAC,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC;IAC/B,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC7B,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC;IAC5B,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC;IACzB,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC7B,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC7B,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC;CAC9B,CAAC,CAAC;AAEkB,sCAAa"}
@@ -1,4 +0,0 @@
1
- export interface IEthereumPlugin extends IHDPlugin {
2
- checkPrivateKey(privateKey: string): string;
3
- }
4
- export declare const plugin: IEthereumPlugin;
@@ -1,101 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.plugin = void 0;
27
- var wallet_1 = require("@ethereumjs/wallet");
28
- var ethUtil = __importStar(require("@ethereumjs/util"));
29
- var keccak_js_1 = require("ethereum-cryptography/keccak.js");
30
- var jcc_common_1 = require("jcc_common");
31
- exports.plugin = {
32
- checkPrivateKey: function (privateKey) {
33
- // check and cut swtc keypair lib add prefix 00
34
- return privateKey.length === 66 ? privateKey.substring(2) : privateKey;
35
- },
36
- address: function (key) {
37
- if (key.privateKey) {
38
- var privateKey = this.checkPrivateKey(key.privateKey);
39
- var buffer = Buffer.from(privateKey, "hex");
40
- var wallet = wallet_1.Wallet.fromPrivateKey(buffer);
41
- // console.log("get public key:", wallet.getPublicKeyString());
42
- return wallet.getAddressString();
43
- }
44
- if (key.publicKey) {
45
- // TODO: length of ethereum publick key of keypaire is 128, but swtc lib keypair is 64
46
- // so, if you want get address from public key, get it from private first
47
- var wallet = wallet_1.Wallet.fromPublicKey(Buffer.from(key.publicKey, "hex"));
48
- return wallet.getAddressString();
49
- }
50
- return null;
51
- },
52
- isValidAddress: function (address) {
53
- return ethUtil.isValidAddress(address);
54
- },
55
- isValidSecret: function (secret) {
56
- try {
57
- return ethUtil.isValidPrivate(Buffer.from((0, jcc_common_1.filterOx)(secret), "hex"));
58
- }
59
- catch (error) {
60
- return false;
61
- }
62
- },
63
- hash: function (message) {
64
- var hash = ethUtil.bytesToHex((0, keccak_js_1.keccak256)(Buffer.from(message, "utf-8")));
65
- return ethUtil.stripHexPrefix(hash);
66
- },
67
- /**
68
- *
69
- * @param message message content, let message is "\x19Ethereum Signed Message:\n" + message.length + message, match web3.accounts.sign function
70
- * @param privateKey private key
71
- * @returns signature string
72
- */
73
- sign: function (message, privateKey) {
74
- var key = this.checkPrivateKey(privateKey).toLowerCase();
75
- var hash = (0, keccak_js_1.keccak256)(Buffer.from(message, "utf-8"));
76
- var signed = ethUtil.ecsign(hash, Buffer.from(key, "hex"));
77
- return (ethUtil.stripHexPrefix(ethUtil.bytesToHex(signed.r)) +
78
- ethUtil.stripHexPrefix(ethUtil.bytesToHex(signed.s)) +
79
- signed.v.toString(16));
80
- },
81
- verify: function (message, signature, address) {
82
- return this.recover(message, signature) === address;
83
- },
84
- recover: function (message, signature) {
85
- var hash = (0, keccak_js_1.keccak256)(Buffer.from(message, "utf-8"));
86
- var r = Buffer.from(Buffer.from(signature.substring(0, 64), "hex"));
87
- var s = Buffer.from(Buffer.from(signature.substring(64, 128), "hex"));
88
- var bytes = ethUtil.hexToBytes("0x" + signature.substring(128, 130));
89
- var pk = ethUtil.ecrecover(hash, ethUtil.bytesToBigInt(bytes), r, s);
90
- var wallet = wallet_1.Wallet.fromPublicKey(pk);
91
- return wallet.getAddressString();
92
- },
93
- proxy: function (functionName) {
94
- var args = [];
95
- for (var _i = 1; _i < arguments.length; _i++) {
96
- args[_i - 1] = arguments[_i];
97
- }
98
- return ethUtil[functionName].apply(ethUtil, args);
99
- }
100
- };
101
- //# sourceMappingURL=ethereum.plugin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ethereum.plugin.js","sourceRoot":"","sources":["../../src/hd/ethereum.plugin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA4C;AAC5C,wDAA4C;AAC5C,6DAA4D;AAC5D,yCAAsC;AAMzB,QAAA,MAAM,GAAoB;IACrC,eAAe,YAAC,UAAkB;QAChC,+CAA+C;QAC/C,OAAO,UAAU,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;IACzE,CAAC;IACD,OAAO,YAAC,GAAa;QACnB,IAAI,GAAG,CAAC,UAAU,EAAE;YAClB,IAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACxD,IAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAC9C,IAAM,MAAM,GAAG,eAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAC7C,+DAA+D;YAC/D,OAAO,MAAM,CAAC,gBAAgB,EAAE,CAAC;SAClC;QACD,IAAI,GAAG,CAAC,SAAS,EAAE;YACjB,sFAAsF;YACtF,yEAAyE;YACzE,IAAM,MAAM,GAAG,eAAM,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;YACvE,OAAO,MAAM,CAAC,gBAAgB,EAAE,CAAC;SAClC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,cAAc,YAAC,OAAe;QAC5B,OAAO,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAED,aAAa,YAAC,MAAc;QAC1B,IAAI;YACF,OAAO,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,IAAA,qBAAQ,EAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;SACrE;QAAC,OAAO,KAAK,EAAE;YACd,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IACD,IAAI,YAAC,OAAe;QAClB,IAAM,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,IAAA,qBAAS,EAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1E,OAAO,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IACD;;;;;OAKG;IACH,IAAI,YAAC,OAAe,EAAE,UAAkB;QACtC,IAAM,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;QAE3D,IAAM,IAAI,GAAG,IAAA,qBAAS,EAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QACtD,IAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;QAE7D,OAAO,CACL,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACpD,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACpD,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CACtB,CAAC;IACJ,CAAC;IACD,MAAM,YAAC,OAAe,EAAE,SAAiB,EAAE,OAAe;QACxD,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,KAAK,OAAO,CAAC;IACtD,CAAC;IACD,OAAO,YAAC,OAAe,EAAE,SAAiB;QACxC,IAAM,IAAI,GAAG,IAAA,qBAAS,EAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QACtD,IAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QACtE,IAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QACxE,IAAM,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;QACvE,IAAM,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACvE,IAAM,MAAM,GAAG,eAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QACxC,OAAO,MAAM,CAAC,gBAAgB,EAAE,CAAC;IACnC,CAAC;IACD,KAAK,YAAC,YAAY;QAAE,cAAO;aAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;YAAP,6BAAO;;QACzB,OAAO,OAAO,CAAC,YAAY,CAAC,OAArB,OAAO,EAAkB,IAAI,EAAE;IACxC,CAAC;CACF,CAAC"}