@ceramicnetwork/blockchain-utils-validation 1.6.0 → 1.6.2-rc.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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,41 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [1.6.2-rc.1](https://github.com/ceramicnetwork/js-ceramic/compare/@ceramicnetwork/blockchain-utils-validation@1.6.2-rc.0...@ceramicnetwork/blockchain-utils-validation@1.6.2-rc.1) (2021-12-01)
7
+
8
+ **Note:** Version bump only for package @ceramicnetwork/blockchain-utils-validation
9
+
10
+
11
+
12
+
13
+
14
+ ## [1.6.2-rc.0](https://github.com/ceramicnetwork/js-ceramic/compare/@ceramicnetwork/blockchain-utils-validation@1.6.1...@ceramicnetwork/blockchain-utils-validation@1.6.2-rc.0) (2021-11-17)
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * resolve merge conflicts during merge from `main` ([#1848](https://github.com/ceramicnetwork/js-ceramic/issues/1848)) ([6772fc6](https://github.com/ceramicnetwork/js-ceramic/commit/6772fc6c61bc9daadfd3f6d6ecf3de2bb100450d))
20
+
21
+
22
+
23
+
24
+
25
+ ## [1.6.1](https://github.com/ceramicnetwork/js-ceramic/compare/@ceramicnetwork/blockchain-utils-validation@1.6.1-rc.0...@ceramicnetwork/blockchain-utils-validation@1.6.1) (2021-11-17)
26
+
27
+ **Note:** Version bump only for package @ceramicnetwork/blockchain-utils-validation
28
+
29
+
30
+
31
+
32
+
33
+ ## [1.6.1-rc.0](https://github.com/ceramicnetwork/js-ceramic/compare/@ceramicnetwork/blockchain-utils-validation@1.6.0...@ceramicnetwork/blockchain-utils-validation@1.6.1-rc.0) (2021-11-12)
34
+
35
+ **Note:** Version bump only for package @ceramicnetwork/blockchain-utils-validation
36
+
37
+
38
+
39
+
40
+
6
41
  # [1.6.0](https://github.com/ceramicnetwork/js-ceramic/compare/@ceramicnetwork/blockchain-utils-validation@1.6.0-rc.0...@ceramicnetwork/blockchain-utils-validation@1.6.0) (2021-11-12)
7
42
 
8
43
  **Note:** Version bump only for package @ceramicnetwork/blockchain-utils-validation
@@ -1 +1 @@
1
- {"version":3,"file":"cosmos.d.ts","sourceRoot":"","sources":["../../src/blockchains/cosmos.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,SAAS,EAAU,MAAM,0CAA0C,CAAA;AAU5E,wBAAsB,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAQ9E;AAED,QAAA,MAAM,OAAO,EAAE,iBAGd,CAAA;AAED,eAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"cosmos.d.ts","sourceRoot":"","sources":["../../src/blockchains/cosmos.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,SAAS,EAAU,MAAM,0CAA0C,CAAA;AAW5E,wBAAsB,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAS9E;AAED,QAAA,MAAM,OAAO,EAAE,iBAGd,CAAA;AAED,eAAe,OAAO,CAAA"}
@@ -20,15 +20,15 @@ var __importStar = (this && this.__importStar) || function (mod) {
20
20
  };
21
21
  Object.defineProperty(exports, "__esModule", { value: true });
22
22
  exports.validateLink = void 0;
23
- const caip_1 = require("caip");
24
23
  const sig_1 = require("@tendermint/sig");
25
24
  const blockchain_utils_linking_1 = require("@ceramicnetwork/blockchain-utils-linking");
26
25
  const uint8arrays = __importStar(require("uint8arrays"));
26
+ const common_1 = require("@ceramicnetwork/common");
27
27
  const namespace = 'cosmos';
28
28
  const stringEncode = (str) => uint8arrays.toString(uint8arrays.fromString(str), 'base64pad');
29
29
  const stringDecode = (str) => uint8arrays.toString(uint8arrays.fromString(str, 'base64pad'));
30
30
  async function validateLink(proof) {
31
- const account = new caip_1.AccountID(proof.account);
31
+ const account = common_1.normalizeAccountId(proof.account);
32
32
  const encodedMsg = stringEncode(proof.message);
33
33
  const payload = blockchain_utils_linking_1.cosmos.asTransaction(account.address, encodedMsg);
34
34
  const sigObj = JSON.parse(stringDecode(proof.signature));
@@ -1 +1 @@
1
- {"version":3,"file":"cosmos.js","sourceRoot":"","sources":["../../src/blockchains/cosmos.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,+BAAgC;AAChC,yCAA0C;AAE1C,uFAA4E;AAC5E,yDAA0C;AAE1C,MAAM,SAAS,GAAG,QAAQ,CAAA;AAE1B,MAAM,YAAY,GAAG,CAAC,GAAW,EAAU,EAAE,CAC3C,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC,CAAA;AAChE,MAAM,YAAY,GAAG,CAAC,GAAW,EAAU,EAAE,CAC3C,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAA;AAEzD,KAAK,UAAU,YAAY,CAAC,KAAgB;IACjD,MAAM,OAAO,GAAG,IAAI,gBAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC5C,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC9C,MAAM,OAAO,GAAG,iCAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;IACjE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA;IACxD,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,EAAE,GAAG,iCAAM,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,CAAC,MAAM,CAAC,EAAE,CAAA;IACxE,MAAM,YAAY,GAAG,cAAQ,CAAC,EAAE,EAAE,iCAAM,CAAC,WAAW,EAAE,CAAC,CAAA;IACvD,OAAO,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;AACpC,CAAC;AARD,oCAQC;AAED,MAAM,OAAO,GAAsB;IACjC,SAAS;IACT,YAAY;CACb,CAAA;AAED,kBAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"cosmos.js","sourceRoot":"","sources":["../../src/blockchains/cosmos.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,yCAA0C;AAE1C,uFAA4E;AAC5E,yDAA0C;AAC1C,mDAA2D;AAE3D,MAAM,SAAS,GAAG,QAAQ,CAAA;AAE1B,MAAM,YAAY,GAAG,CAAC,GAAW,EAAU,EAAE,CAC3C,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC,CAAA;AAChE,MAAM,YAAY,GAAG,CAAC,GAAW,EAAU,EAAE,CAC3C,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAA;AAEzD,KAAK,UAAU,YAAY,CAAC,KAAgB;IAEjD,MAAM,OAAO,GAAG,2BAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACjD,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC9C,MAAM,OAAO,GAAG,iCAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;IACjE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA;IACxD,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,EAAE,GAAG,iCAAM,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,CAAC,MAAM,CAAC,EAAE,CAAA;IACxE,MAAM,YAAY,GAAG,cAAQ,CAAC,EAAE,EAAE,iCAAM,CAAC,WAAW,EAAE,CAAC,CAAA;IACvD,OAAO,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;AACpC,CAAC;AATD,oCASC;AAED,MAAM,OAAO,GAAsB;IACjC,SAAS;IACT,YAAY;CACb,CAAA;AAED,kBAAe,OAAO,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"eosio.d.ts","sourceRoot":"","sources":["../../src/blockchains/eosio.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,KAAK,OAAO,MAAM,0CAA0C,CAAA;AAInE,wBAAsB,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAW9F;AAED,QAAA,MAAM,OAAO,EAAE,iBAGd,CAAA;AAED,eAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"eosio.d.ts","sourceRoot":"","sources":["../../src/blockchains/eosio.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,KAAK,OAAO,MAAM,0CAA0C,CAAA;AAKnE,wBAAsB,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAW9F;AAED,QAAA,MAAM,OAAO,EAAE,iBAGd,CAAA;AAED,eAAe,OAAO,CAAA"}
@@ -20,13 +20,13 @@ var __importStar = (this && this.__importStar) || function (mod) {
20
20
  };
21
21
  Object.defineProperty(exports, "__esModule", { value: true });
22
22
  exports.validateLink = void 0;
23
- const caip_1 = require("caip");
24
23
  const eosio_signing_tools_1 = require("@smontero/eosio-signing-tools");
25
24
  const linking = __importStar(require("@ceramicnetwork/blockchain-utils-linking"));
25
+ const common_1 = require("@ceramicnetwork/common");
26
26
  const namespace = 'eosio';
27
27
  async function validateLink(proof) {
28
28
  const { message, signature, account } = proof;
29
- const accountID = new caip_1.AccountID(account);
29
+ const accountID = common_1.normalizeAccountId(account);
30
30
  const { address, chainId } = accountID;
31
31
  const success = await eosio_signing_tools_1.SigningTools.verifySignature({
32
32
  chainId: chainId.reference,
@@ -1 +1 @@
1
- {"version":3,"file":"eosio.js","sourceRoot":"","sources":["../../src/blockchains/eosio.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,+BAAgC;AAChC,uEAA4D;AAE5D,kFAAmE;AAEnE,MAAM,SAAS,GAAG,OAAO,CAAA;AAElB,KAAK,UAAU,YAAY,CAAC,KAAwB;IACzD,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,KAAK,CAAA;IAC7C,MAAM,SAAS,GAAG,IAAI,gBAAS,CAAC,OAAO,CAAC,CAAA;IACxC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,SAAS,CAAA;IACtC,MAAM,OAAO,GAAG,MAAM,kCAAY,CAAC,eAAe,CAAC;QACjD,OAAO,EAAE,OAAO,CAAC,SAAS;QAC1B,OAAO,EAAE,OAAO;QAChB,SAAS;QACT,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC;KAClD,CAAC,CAAA;IACF,OAAO,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;AAC/B,CAAC;AAXD,oCAWC;AAED,MAAM,OAAO,GAAsB;IACjC,SAAS;IACT,YAAY;CACb,CAAA;AAED,kBAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"eosio.js","sourceRoot":"","sources":["../../src/blockchains/eosio.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,uEAA4D;AAE5D,kFAAmE;AACnE,mDAA2D;AAE3D,MAAM,SAAS,GAAG,OAAO,CAAA;AAElB,KAAK,UAAU,YAAY,CAAC,KAAwB;IACzD,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,KAAK,CAAA;IAC7C,MAAM,SAAS,GAAG,2BAAkB,CAAC,OAAO,CAAC,CAAA;IAC7C,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,SAAS,CAAA;IACtC,MAAM,OAAO,GAAG,MAAM,kCAAY,CAAC,eAAe,CAAC;QACjD,OAAO,EAAE,OAAO,CAAC,SAAS;QAC1B,OAAO,EAAE,OAAO;QAChB,SAAS;QACT,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC;KAClD,CAAC,CAAA;IACF,OAAO,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;AAC/B,CAAC;AAXD,oCAWC;AAED,MAAM,OAAO,GAAsB;IACjC,SAAS;IACT,YAAY;CACb,CAAA;AAED,kBAAe,OAAO,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"ethereum.d.ts","sourceRoot":"","sources":["../../src/blockchains/ethereum.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAmEzD,QAAA,MAAM,OAAO,EAAE,iBAGd,CAAA;AAED,eAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"ethereum.d.ts","sourceRoot":"","sources":["../../src/blockchains/ethereum.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AA0EzD,QAAA,MAAM,OAAO,EAAE,iBAGd,CAAA;AAED,eAAe,OAAO,CAAA"}
@@ -24,6 +24,7 @@ const contracts_1 = require("@ethersproject/contracts");
24
24
  const providers = __importStar(require("@ethersproject/providers"));
25
25
  const caip_1 = require("caip");
26
26
  const uint8arrays = __importStar(require("uint8arrays"));
27
+ const common_1 = require("@ceramicnetwork/common");
27
28
  const ADDRESS_TYPES = {
28
29
  ethereumEOA: 'ethereum-eoa',
29
30
  erc1271: 'erc1271',
@@ -45,7 +46,7 @@ function getEthersProvider(chainId) {
45
46
  return network._defaultProvider(providers);
46
47
  }
47
48
  function toV2Proof(proof, address) {
48
- proof.account = new caip_1.AccountID({
49
+ proof.account = new caip_1.AccountId({
49
50
  address: (proof.version === 1 ? proof.address : address) || '',
50
51
  chainId: {
51
52
  namespace,
@@ -61,7 +62,7 @@ async function validateEoaLink(proof) {
61
62
  const recoveredAddr = wallet_1.verifyMessage(proof.message, proof.signature).toLowerCase();
62
63
  if (proof.version !== 2)
63
64
  proof = toV2Proof(proof, recoveredAddr);
64
- const account = new caip_1.AccountID(proof.account);
65
+ const account = new caip_1.AccountId(proof.account);
65
66
  if (account.address !== recoveredAddr) {
66
67
  return null;
67
68
  }
@@ -70,7 +71,7 @@ async function validateEoaLink(proof) {
70
71
  async function validateErc1271Link(proof) {
71
72
  if (proof.version === 1)
72
73
  proof = toV2Proof(proof);
73
- const account = new caip_1.AccountID(proof.account);
74
+ const account = new caip_1.AccountId(proof.account);
74
75
  const provider = getEthersProvider(account.chainId.reference);
75
76
  const contract = new contracts_1.Contract(account.address, ERC1271_ABI, provider);
76
77
  const message = utf8toHex(proof.message);
@@ -78,11 +79,15 @@ async function validateErc1271Link(proof) {
78
79
  return returnValue === MAGIC_ERC1271_VALUE ? proof : null;
79
80
  }
80
81
  async function validateLink(proof) {
81
- if (proof.type === ADDRESS_TYPES.erc1271) {
82
- return await validateErc1271Link(proof);
82
+ const proofCopy = { ...proof };
83
+ if (proofCopy.account) {
84
+ proofCopy.account = common_1.normalizeAccountId(proofCopy.account).toString();
85
+ }
86
+ if (proofCopy.type === ADDRESS_TYPES.erc1271) {
87
+ return await validateErc1271Link(proofCopy);
83
88
  }
84
89
  else {
85
- return await validateEoaLink(proof);
90
+ return await validateEoaLink(proofCopy);
86
91
  }
87
92
  }
88
93
  const handler = {
@@ -1 +1 @@
1
- {"version":3,"file":"ethereum.js","sourceRoot":"","sources":["../../src/blockchains/ethereum.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ethereum.js","sourceRoot":"","sources":["../../src/blockchains/ethereum.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"filecoin.d.ts","sourceRoot":"","sources":["../../src/blockchains/filecoin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAEzD,OAAO,KAAK,OAAO,MAAM,0CAA0C,CAAA;AAKnE,wBAAsB,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAU9F;AAED,QAAA,MAAM,OAAO,EAAE,iBAGd,CAAA;AAED,eAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"filecoin.d.ts","sourceRoot":"","sources":["../../src/blockchains/filecoin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,KAAK,OAAO,MAAM,0CAA0C,CAAA;AAMnE,wBAAsB,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAW9F;AAED,QAAA,MAAM,OAAO,EAAE,iBAGd,CAAA;AAED,eAAe,OAAO,CAAA"}
@@ -20,12 +20,12 @@ var __importStar = (this && this.__importStar) || function (mod) {
20
20
  };
21
21
  Object.defineProperty(exports, "__esModule", { value: true });
22
22
  exports.validateLink = void 0;
23
- const caip_1 = require("caip");
24
23
  const linking = __importStar(require("@ceramicnetwork/blockchain-utils-linking"));
25
24
  const signingTools = __importStar(require("@zondax/filecoin-signing-tools"));
25
+ const common_1 = require("@ceramicnetwork/common");
26
26
  const namespace = 'fil';
27
27
  async function validateLink(proof) {
28
- const account = new caip_1.AccountID(proof.account);
28
+ const account = common_1.normalizeAccountId(proof.account);
29
29
  const payload = linking.filecoin.asTransaction(account.address, proof.message);
30
30
  const transaction = signingTools.transactionSerialize(payload);
31
31
  const recover = signingTools.verifySignature(proof.signature, transaction);
@@ -1 +1 @@
1
- {"version":3,"file":"filecoin.js","sourceRoot":"","sources":["../../src/blockchains/filecoin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AACA,+BAAgC;AAChC,kFAAmE;AACnE,6EAA8D;AAE9D,MAAM,SAAS,GAAG,KAAK,CAAA;AAEhB,KAAK,UAAU,YAAY,CAAC,KAAwB;IACzD,MAAM,OAAO,GAAG,IAAI,gBAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC5C,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;IAC9E,MAAM,WAAW,GAAG,YAAY,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAA;IAC9D,MAAM,OAAO,GAAG,YAAY,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;IAC1E,IAAI,OAAO,EAAE;QACX,OAAO,KAAK,CAAA;KACb;SAAM;QACL,OAAO,IAAI,CAAA;KACZ;AACH,CAAC;AAVD,oCAUC;AAED,MAAM,OAAO,GAAsB;IACjC,SAAS;IACT,YAAY;CACb,CAAA;AAED,kBAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"filecoin.js","sourceRoot":"","sources":["../../src/blockchains/filecoin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AACA,kFAAmE;AACnE,6EAA8D;AAC9D,mDAA2D;AAE3D,MAAM,SAAS,GAAG,KAAK,CAAA;AAEhB,KAAK,UAAU,YAAY,CAAC,KAAwB;IAEzD,MAAM,OAAO,GAAG,2BAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACjD,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;IAC9E,MAAM,WAAW,GAAG,YAAY,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAA;IAC9D,MAAM,OAAO,GAAG,YAAY,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;IAC1E,IAAI,OAAO,EAAE;QACX,OAAO,KAAK,CAAA;KACb;SAAM;QACL,OAAO,IAAI,CAAA;KACZ;AACH,CAAC;AAXD,oCAWC;AAED,MAAM,OAAO,GAAsB;IACjC,SAAS;IACT,YAAY;CACb,CAAA;AAED,kBAAe,OAAO,CAAA"}
@@ -26,7 +26,7 @@ exports.validateLink = void 0;
26
26
  const uint8arrays = __importStar(require("uint8arrays"));
27
27
  const crypto_1 = __importDefault(require("crypto"));
28
28
  const tweetnacl_1 = __importDefault(require("tweetnacl"));
29
- const caip_1 = require("caip");
29
+ const common_1 = require("@ceramicnetwork/common");
30
30
  const verifySignature = async (pubKey, message, signature) => {
31
31
  const hash = crypto_1.default.createHash('sha256').update(message).digest();
32
32
  const hashString = uint8arrays.toString(hash, 'base64');
@@ -35,7 +35,7 @@ const verifySignature = async (pubKey, message, signature) => {
35
35
  };
36
36
  const namespace = 'near';
37
37
  async function validateLink(proof) {
38
- const pubKey = uint8arrays.fromString(new caip_1.AccountID(proof.account).address, 'base58btc');
38
+ const pubKey = uint8arrays.fromString(common_1.normalizeAccountId(proof.account).address, 'base58btc');
39
39
  const msg = proof.message;
40
40
  const sig = uint8arrays.fromString(proof.signature, 'base64');
41
41
  const is_sig_valid = await verifySignature(pubKey, msg, sig);
@@ -1 +1 @@
1
- {"version":3,"file":"near.js","sourceRoot":"","sources":["../../src/blockchains/near.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAEA,yDAA0C;AAC1C,oDAA2B;AAC3B,0DAA4B;AAC5B,+BAAgC;AAEhC,MAAM,eAAe,GAAG,KAAK,EAC3B,MAAkB,EAClB,OAAe,EACf,SAAqB,EACH,EAAE;IACpB,MAAM,IAAI,GAAG,gBAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAA;IACjE,MAAM,UAAU,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IACvD,MAAM,QAAQ,GAAG,mBAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CACxC,WAAW,CAAC,UAAU,CAAC,UAAU,EAAE,QAAQ,CAAC,EAC5C,SAAS,EACT,MAAM,CACP,CAAA;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA;AAED,MAAM,SAAS,GAAG,MAAM,CAAA;AAEjB,KAAK,UAAU,YAAY,CAAC,KAAgB;IACjD,MAAM,MAAM,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,gBAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;IACxF,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAA;IACzB,MAAM,GAAG,GAAG,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;IAC7D,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;IAC5D,OAAO,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;AACpC,CAAC;AAND,oCAMC;AAED,MAAM,OAAO,GAAsB;IACjC,SAAS;IACT,YAAY;CACb,CAAA;AAED,kBAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"near.js","sourceRoot":"","sources":["../../src/blockchains/near.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAEA,yDAA0C;AAC1C,oDAA2B;AAC3B,0DAA4B;AAC5B,mDAA2D;AAE3D,MAAM,eAAe,GAAG,KAAK,EAC3B,MAAkB,EAClB,OAAe,EACf,SAAqB,EACH,EAAE;IACpB,MAAM,IAAI,GAAG,gBAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAA;IACjE,MAAM,UAAU,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IACvD,MAAM,QAAQ,GAAG,mBAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CACxC,WAAW,CAAC,UAAU,CAAC,UAAU,EAAE,QAAQ,CAAC,EAC5C,SAAS,EACT,MAAM,CACP,CAAA;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA;AAED,MAAM,SAAS,GAAG,MAAM,CAAA;AAEjB,KAAK,UAAU,YAAY,CAAC,KAAgB;IACjD,MAAM,MAAM,GAAG,WAAW,CAAC,UAAU,CAAC,2BAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;IAC7F,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAA;IACzB,MAAM,GAAG,GAAG,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;IAC7D,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;IAC5D,OAAO,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;AACpC,CAAC;AAND,oCAMC;AAED,MAAM,OAAO,GAAsB;IACjC,SAAS;IACT,YAAY;CACb,CAAA;AAED,kBAAe,OAAO,CAAA"}
@@ -3,13 +3,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const caip_1 = require("caip");
7
6
  const util_crypto_1 = require("@polkadot/util-crypto");
8
7
  const uint8arrays_1 = __importDefault(require("uint8arrays"));
8
+ const common_1 = require("@ceramicnetwork/common");
9
9
  const namespace = 'polkadot';
10
10
  const stringHex = (str) => `0x${uint8arrays_1.default.toString(uint8arrays_1.default.fromString(str), 'base16')}`;
11
11
  async function validateLink(proof) {
12
- const address = new caip_1.AccountID(proof.account).address;
12
+ const address = common_1.normalizeAccountId(proof.account).address;
13
13
  const message = stringHex(proof.message);
14
14
  const res = await util_crypto_1.signatureVerify(message, proof.signature, address);
15
15
  return res.isValid ? proof : null;
@@ -1 +1 @@
1
- {"version":3,"file":"polkadot.js","sourceRoot":"","sources":["../../src/blockchains/polkadot.ts"],"names":[],"mappings":";;;;;AACA,+BAAgC;AAChC,uDAAuD;AAEvD,8DAAsC;AAEtC,MAAM,SAAS,GAAG,UAAU,CAAA;AAE5B,MAAM,SAAS,GAAG,CAAC,GAAW,EAAU,EAAE,CACxC,KAAK,qBAAW,CAAC,QAAQ,CAAC,qBAAW,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAA;AAEpE,KAAK,UAAU,YAAY,CAAC,KAAgB;IAC1C,MAAM,OAAO,GAAG,IAAI,gBAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAA;IACpD,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACxC,MAAM,GAAG,GAAG,MAAM,6BAAe,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IACpE,OAAO,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;AACnC,CAAC;AAED,MAAM,OAAO,GAAsB;IACjC,SAAS;IACT,YAAY;CACb,CAAA;AAED,kBAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"polkadot.js","sourceRoot":"","sources":["../../src/blockchains/polkadot.ts"],"names":[],"mappings":";;;;;AACA,uDAAuD;AAEvD,8DAAqC;AACrC,mDAA2D;AAE3D,MAAM,SAAS,GAAG,UAAU,CAAA;AAE5B,MAAM,SAAS,GAAG,CAAC,GAAW,EAAU,EAAE,CACxC,KAAK,qBAAW,CAAC,QAAQ,CAAC,qBAAW,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAA;AAEpE,KAAK,UAAU,YAAY,CAAC,KAAgB;IAC1C,MAAM,OAAO,GAAG,2BAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAA;IACzD,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACxC,MAAM,GAAG,GAAG,MAAM,6BAAe,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IACpE,OAAO,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;AACnC,CAAC;AAED,MAAM,OAAO,GAAsB;IACjC,SAAS;IACT,YAAY;CACb,CAAA;AAED,kBAAe,OAAO,CAAA"}
@@ -0,0 +1,6 @@
1
+ import { BlockchainHandler } from '../blockchain-handler';
2
+ import { LinkProof } from '@ceramicnetwork/blockchain-utils-linking';
3
+ export declare function validateLink(proof: LinkProof): Promise<LinkProof | null>;
4
+ declare const Handler: BlockchainHandler;
5
+ export default Handler;
6
+ //# sourceMappingURL=solana.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solana.d.ts","sourceRoot":"","sources":["../../src/blockchains/solana.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAA;AAoBpE,wBAAsB,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAM9E;AAED,QAAA,MAAM,OAAO,EAAE,iBAGd,CAAA;AAED,eAAe,OAAO,CAAA"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.validateLink = void 0;
23
+ const caip_1 = require("caip");
24
+ const uint8arrays = __importStar(require("uint8arrays"));
25
+ const ed25519_1 = require("@stablelib/ed25519");
26
+ const verifySignature = async (pubKey, message, signature) => {
27
+ const verified = ed25519_1.verify(pubKey, uint8arrays.fromString(message), signature);
28
+ return verified;
29
+ };
30
+ const namespace = 'solana';
31
+ async function validateLink(proof) {
32
+ const pubKey = uint8arrays.fromString(new caip_1.AccountId(proof.account).address, "base58btc");
33
+ const msg = proof.message;
34
+ const sig = uint8arrays.fromString(proof.signature, 'base64');
35
+ const is_sig_valid = await verifySignature(pubKey, msg, sig);
36
+ return is_sig_valid ? proof : null;
37
+ }
38
+ exports.validateLink = validateLink;
39
+ const Handler = {
40
+ namespace,
41
+ validateLink,
42
+ };
43
+ exports.default = Handler;
44
+ //# sourceMappingURL=solana.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solana.js","sourceRoot":"","sources":["../../src/blockchains/solana.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAEA,+BAAgC;AAChC,yDAA0C;AAC1C,gDAA2C;AAE3C,MAAM,eAAe,GAAG,KAAK,EAC3B,MAAkB,EAClB,OAAe,EACf,SAAqB,EACH,EAAE;IACpB,MAAM,QAAQ,GAAG,gBAAM,CACrB,MAAM,EACN,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,EAC/B,SAAS,CACV,CAAA;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA;AAED,MAAM,SAAS,GAAG,QAAQ,CAAA;AAEnB,KAAK,UAAU,YAAY,CAAC,KAAgB;IACjD,MAAM,MAAM,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,gBAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;IACxF,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAA;IACzB,MAAM,GAAG,GAAG,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;IAC7D,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;IAC5D,OAAO,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;AACpC,CAAC;AAND,oCAMC;AAED,MAAM,OAAO,GAAsB;IACjC,SAAS;IACT,YAAY;CACb,CAAA;AAED,kBAAe,OAAO,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"tezos.d.ts","sourceRoot":"","sources":["../../src/blockchains/tezos.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,SAAS,EAAS,MAAM,0CAA0C,CAAA;AAI3E,eAAO,MAAM,uBAAuB,OAAyD,CAAA;AAC7F,eAAO,MAAM,8BAA8B,OAE1C,CAAA;AAuDD,wBAAsB,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAoB9E;AAED,QAAA,MAAM,OAAO,EAAE,iBAGd,CAAA;AAED,eAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"tezos.d.ts","sourceRoot":"","sources":["../../src/blockchains/tezos.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,SAAS,EAAS,MAAM,0CAA0C,CAAA;AAK3E,eAAO,MAAM,uBAAuB,OAAyD,CAAA;AAC7F,eAAO,MAAM,8BAA8B,OAE1C,CAAA;AAuDD,wBAAsB,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAoB9E;AAED,QAAA,MAAM,OAAO,EAAE,iBAGd,CAAA;AAED,eAAe,OAAO,CAAA"}
@@ -28,6 +28,7 @@ const remote_signer_1 = require("@taquito/remote-signer");
28
28
  const blockchain_utils_linking_1 = require("@ceramicnetwork/blockchain-utils-linking");
29
29
  const cross_fetch_1 = __importDefault(require("cross-fetch"));
30
30
  const uint8arrays = __importStar(require("uint8arrays"));
31
+ const common_1 = require("@ceramicnetwork/common");
31
32
  exports.ADDRESS_NOT_FOUND_ERROR = new Error(`Address not found on the Tezos blockchain`);
32
33
  exports.PUBLIC_KEY_NOT_PUBLISHED_ERROR = new Error(`Public key not published to the Tezos blockchain`);
33
34
  const { TEZOS_NAMESPACE, TEZOS_CHAIN_REF } = blockchain_utils_linking_1.tezos;
@@ -56,8 +57,8 @@ function publicKeyFinder(address) {
56
57
  };
57
58
  }
58
59
  async function validateLink(proof) {
59
- const account = caip_1.AccountID.parse(proof.account);
60
- const chainId = new caip_1.ChainID(account.chainId);
60
+ const account = common_1.normalizeAccountId(proof.account);
61
+ const chainId = new caip_1.ChainId(account.chainId);
61
62
  if (chainId.reference !== TEZOS_CHAIN_REF) {
62
63
  return null;
63
64
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tezos.js","sourceRoot":"","sources":["../../src/blockchains/tezos.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAAyC;AACzC,0DAAqD;AAErD,uFAA2E;AAC3E,8DAA+B;AAC/B,yDAA0C;AAE7B,QAAA,uBAAuB,GAAG,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;AAChF,QAAA,8BAA8B,GAAG,IAAI,KAAK,CACrD,kDAAkD,CACnD,CAAA;AAID,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,GAAG,gCAAK,CAAA;AAElD,MAAM,iBAAiB,GAAG,8BAA8B,CAAA;AAYxD,SAAS,aAAa,CAAC,IAAY;IACjC,MAAM,eAAe,GAAG,IAAI,CAAA;IAC5B,MAAM,YAAY,GAAG,IAAI,CAAA;IACzB,MAAM,GAAG,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAE5D,IAAI,GAAG,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,CAAA;IACzE,OAAO,eAAe,GAAG,YAAY,GAAG,GAAG,GAAG,IAAI,CAAA;AACpD,CAAC;AAUD,SAAS,eAAe,CAAC,OAAe;IAEtC,MAAM,OAAO,GAAG,qBAAK,CAAC,4CAA4C,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAM,EAAE,EAAE;QAC5F,MAAM,+BAAuB,CAAA;IAC/B,CAAC,CAAC,CAAA;IACF,OAAO,KAAK,IAAqB,EAAE;QACjC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAA;QAC9B,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QAClC,MAAM,MAAM,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAA;QAC3B,IAAI,MAAM,EAAE;YACV,OAAO,MAAM,CAAA;SACd;aAAM;YACL,MAAM,sCAA8B,CAAA;SACrC;IACH,CAAC,CAAA;AACH,CAAC;AAKM,KAAK,UAAU,YAAY,CAAC,KAAgB;IACjD,MAAM,OAAO,GAAG,gBAAS,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC9C,MAAM,OAAO,GAAG,IAAI,cAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAG5C,IAAI,OAAO,CAAC,SAAS,KAAK,eAAe,EAAE;QACzC,OAAO,IAAI,CAAA;KACZ;IACD,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAExC,MAAM,QAAQ,GAAG,IAAI,4BAAY,CAAC,OAAO,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAA;IACrE,QAAQ,CAAC,SAAS,GAAG,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAErD,IAAI;QACF,MAAM,YAAY,GAAY,MAAM,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;QAEzE,OAAO,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;KACnC;IAAC,OAAO,OAAO,EAAE;QAChB,OAAO,IAAI,CAAA;KACZ;AACH,CAAC;AApBD,oCAoBC;AAED,MAAM,OAAO,GAAsB;IACjC,SAAS,EAAE,eAAe;IAC1B,YAAY;CACb,CAAA;AAED,kBAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"tezos.js","sourceRoot":"","sources":["../../src/blockchains/tezos.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAA8B;AAC9B,0DAAqD;AAErD,uFAA2E;AAC3E,8DAA+B;AAC/B,yDAA0C;AAC1C,mDAA2D;AAE9C,QAAA,uBAAuB,GAAG,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;AAChF,QAAA,8BAA8B,GAAG,IAAI,KAAK,CACrD,kDAAkD,CACnD,CAAA;AAID,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,GAAG,gCAAK,CAAA;AAElD,MAAM,iBAAiB,GAAG,8BAA8B,CAAA;AAYxD,SAAS,aAAa,CAAC,IAAY;IACjC,MAAM,eAAe,GAAG,IAAI,CAAA;IAC5B,MAAM,YAAY,GAAG,IAAI,CAAA;IACzB,MAAM,GAAG,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAE5D,IAAI,GAAG,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,CAAA;IACzE,OAAO,eAAe,GAAG,YAAY,GAAG,GAAG,GAAG,IAAI,CAAA;AACpD,CAAC;AAUD,SAAS,eAAe,CAAC,OAAe;IAEtC,MAAM,OAAO,GAAG,qBAAK,CAAC,4CAA4C,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAM,EAAE,EAAE;QAC5F,MAAM,+BAAuB,CAAA;IAC/B,CAAC,CAAC,CAAA;IACF,OAAO,KAAK,IAAqB,EAAE;QACjC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAA;QAC9B,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QAClC,MAAM,MAAM,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAA;QAC3B,IAAI,MAAM,EAAE;YACV,OAAO,MAAM,CAAA;SACd;aAAM;YACL,MAAM,sCAA8B,CAAA;SACrC;IACH,CAAC,CAAA;AACH,CAAC;AAKM,KAAK,UAAU,YAAY,CAAC,KAAgB;IACjD,MAAM,OAAO,GAAG,2BAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACjD,MAAM,OAAO,GAAG,IAAI,cAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAG5C,IAAI,OAAO,CAAC,SAAS,KAAK,eAAe,EAAE;QACzC,OAAO,IAAI,CAAA;KACZ;IACD,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAExC,MAAM,QAAQ,GAAG,IAAI,4BAAY,CAAC,OAAO,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAA;IACrE,QAAQ,CAAC,SAAS,GAAG,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAErD,IAAI;QACF,MAAM,YAAY,GAAY,MAAM,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;QAEzE,OAAO,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;KACnC;IAAC,OAAO,OAAO,EAAE;QAChB,OAAO,IAAI,CAAA;KACZ;AACH,CAAC;AApBD,oCAoBC;AAED,MAAM,OAAO,GAAsB;IACjC,SAAS,EAAE,eAAe;IAC1B,YAAY;CACb,CAAA;AAED,kBAAe,OAAO,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAA;AAsBpE,wBAAsB,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAe9E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAA;AAuBpE,wBAAsB,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAsB9E"}
package/lib/index.js CHANGED
@@ -12,6 +12,7 @@ const cosmos_1 = __importDefault(require("./blockchains/cosmos"));
12
12
  const near_1 = __importDefault(require("./blockchains/near"));
13
13
  const tezos_1 = __importDefault(require("./blockchains/tezos"));
14
14
  const caip_1 = require("caip");
15
+ const common_1 = require("@ceramicnetwork/common");
15
16
  const handlers = {
16
17
  [ethereum_1.default.namespace]: ethereum_1.default,
17
18
  [filecoin_1.default.namespace]: filecoin_1.default,
@@ -24,13 +25,15 @@ const handlers = {
24
25
  const findDID = (did) => { var _a; return (_a = did.match(/(did:\S+:\S+)/)) === null || _a === void 0 ? void 0 : _a[0]; };
25
26
  async function validateLink(proof) {
26
27
  let namespace = ethereum_1.default.namespace;
27
- if (proof.version >= 2) {
28
- namespace = new caip_1.AccountID(proof.account).chainId.namespace;
28
+ const proofCopy = { ...proof };
29
+ proofCopy.account = common_1.normalizeAccountId(proofCopy.account).toString();
30
+ if (proofCopy.version >= 2) {
31
+ namespace = new caip_1.AccountId(proofCopy.account).chainId.namespace;
29
32
  }
30
33
  const handler = handlers[namespace];
31
34
  if (!handler)
32
35
  throw new Error(`proof with namespace '${namespace}' not supported`);
33
- const validProof = await handler.validateLink(proof);
36
+ const validProof = await handler.validateLink(proofCopy);
34
37
  if (validProof) {
35
38
  validProof.did = findDID(validProof.message);
36
39
  return validProof;
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AACA,sEAA6C;AAC7C,sEAA6C;AAC7C,sEAA6C;AAC7C,gEAAuC;AACvC,kEAAyC;AACzC,8DAAqC;AACrC,gEAAuC;AACvC,+BAAgC;AAEhC,MAAM,QAAQ,GAAG;IACf,CAAC,kBAAQ,CAAC,SAAS,CAAC,EAAE,kBAAQ;IAC9B,CAAC,kBAAQ,CAAC,SAAS,CAAC,EAAE,kBAAQ;IAC9B,CAAC,kBAAQ,CAAC,SAAS,CAAC,EAAE,kBAAQ;IAC9B,CAAC,eAAK,CAAC,SAAS,CAAC,EAAE,eAAK;IACxB,CAAC,gBAAM,CAAC,SAAS,CAAC,EAAE,gBAAM;IAC1B,CAAC,cAAI,CAAC,SAAS,CAAC,EAAE,cAAI;IACtB,CAAC,eAAK,CAAC,SAAS,CAAC,EAAE,eAAK;CACzB,CAAA;AAED,MAAM,OAAO,GAAG,CAAC,GAAW,EAAsB,EAAE,WAAC,OAAA,MAAA,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,0CAAG,CAAC,CAAC,CAAA,EAAA,CAAA;AAE7E,KAAK,UAAU,YAAY,CAAC,KAAgB;IAEjD,IAAI,SAAS,GAAG,kBAAQ,CAAC,SAAS,CAAA;IAClC,IAAI,KAAK,CAAC,OAAO,IAAI,CAAC,EAAE;QACtB,SAAS,GAAG,IAAI,gBAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,SAAS,CAAA;KAC3D;IACD,MAAM,OAAO,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAA;IACnC,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,SAAS,iBAAiB,CAAC,CAAA;IAClF,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;IACpD,IAAI,UAAU,EAAE;QACd,UAAU,CAAC,GAAG,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAC5C,OAAO,UAAU,CAAA;KAClB;SAAM;QACL,OAAO,IAAI,CAAA;KACZ;AACH,CAAC;AAfD,oCAeC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AACA,sEAA6C;AAC7C,sEAA6C;AAC7C,sEAA6C;AAC7C,gEAAuC;AACvC,kEAAyC;AACzC,8DAAqC;AACrC,gEAAuC;AACvC,+BAAgC;AAChC,mDAA2D;AAE3D,MAAM,QAAQ,GAAG;IACf,CAAC,kBAAQ,CAAC,SAAS,CAAC,EAAE,kBAAQ;IAC9B,CAAC,kBAAQ,CAAC,SAAS,CAAC,EAAE,kBAAQ;IAC9B,CAAC,kBAAQ,CAAC,SAAS,CAAC,EAAE,kBAAQ;IAC9B,CAAC,eAAK,CAAC,SAAS,CAAC,EAAE,eAAK;IACxB,CAAC,gBAAM,CAAC,SAAS,CAAC,EAAE,gBAAM;IAC1B,CAAC,cAAI,CAAC,SAAS,CAAC,EAAE,cAAI;IACtB,CAAC,eAAK,CAAC,SAAS,CAAC,EAAE,eAAK;CACzB,CAAA;AAED,MAAM,OAAO,GAAG,CAAC,GAAW,EAAsB,EAAE,WAAC,OAAA,MAAA,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,0CAAG,CAAC,CAAC,CAAA,EAAA,CAAA;AAE7E,KAAK,UAAU,YAAY,CAAC,KAAgB;IAEjD,IAAI,SAAS,GAAG,kBAAQ,CAAC,SAAS,CAAA;IAElC,MAAM,SAAS,GAAG,EAAE,GAAG,KAAK,EAAE,CAAA;IAG9B,SAAS,CAAC,OAAO,GAAG,2BAAkB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAA;IAEpE,IAAI,SAAS,CAAC,OAAO,IAAI,CAAC,EAAE;QAC1B,SAAS,GAAG,IAAI,gBAAS,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,SAAS,CAAA;KAC/D;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAA;IACnC,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,SAAS,iBAAiB,CAAC,CAAA;IAClF,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;IACxD,IAAI,UAAU,EAAE;QACd,UAAU,CAAC,GAAG,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAC5C,OAAO,UAAU,CAAA;KAClB;SAAM;QACL,OAAO,IAAI,CAAA;KACZ;AACH,CAAC;AAtBD,oCAsBC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ceramicnetwork/blockchain-utils-validation",
3
- "version": "1.6.0",
3
+ "version": "1.6.2-rc.1",
4
4
  "description": "Blockchain utils for validation of linked blockchain accounts",
5
5
  "keywords": [
6
6
  "ceramic",
@@ -24,7 +24,8 @@
24
24
  "clean": "rm -rf ./lib"
25
25
  },
26
26
  "dependencies": {
27
- "@ceramicnetwork/blockchain-utils-linking": "^1.4.0",
27
+ "@ceramicnetwork/blockchain-utils-linking": "^1.5.1-rc.1",
28
+ "@ceramicnetwork/common": "^1.9.0-rc.1",
28
29
  "@ethersproject/contracts": "^5.4.1",
29
30
  "@ethersproject/providers": "^5.4.5",
30
31
  "@ethersproject/wallet": "^5.4.0",
@@ -34,7 +35,7 @@
34
35
  "@taquito/remote-signer": "^9.2.0-stablelib.0",
35
36
  "@tendermint/sig": "^0.6.0",
36
37
  "@zondax/filecoin-signing-tools": "^0.15.0",
37
- "caip": "~0.9.2",
38
+ "caip": "~1.0.0",
38
39
  "cross-fetch": "^3.1.4",
39
40
  "uint8arrays": "^2.0.5"
40
41
  },
@@ -47,10 +48,11 @@
47
48
  "@polkadot/util": "^7.1.1",
48
49
  "@polkadot/util-crypto": "^7.0.2",
49
50
  "@smontero/eosio-local-provider": "^0.0.3",
51
+ "@solana/wallet-adapter-base": "^0.6.0",
50
52
  "@taquito/signer": "^9.2.0",
51
53
  "eth-sig-util": "^3.0.0",
52
54
  "ganache-core": "^2.13.1",
53
55
  "near-api-js": "^0.42.0"
54
56
  },
55
- "gitHead": "684ff4b9966d60de21e6ec4b67a4dc08431833e2"
57
+ "gitHead": "057e8e75572cf6e1041ecd752d460a0c86d46b4f"
56
58
  }