@prosopo/procaptcha 0.2.13 → 0.2.14
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/dist/api/ExtensionWeb2.d.ts.map +1 -1
- package/dist/api/ExtensionWeb2.js +9 -8
- package/dist/api/ExtensionWeb2.js.map +1 -1
- package/dist/api/sign.js +2 -2
- package/dist/api/sign.js.map +1 -1
- package/dist/cjs/api/ExtensionWeb2.cjs +17 -16
- package/dist/cjs/modules/Manager.cjs +213 -212
- package/dist/cjs/modules/ProsopoCaptchaApi.cjs +10 -12
- package/dist/modules/Manager.d.ts.map +1 -1
- package/dist/modules/Manager.js +252 -267
- package/dist/modules/Manager.js.map +1 -1
- package/dist/modules/ProsopoCaptchaApi.d.ts +1 -1
- package/dist/modules/ProsopoCaptchaApi.d.ts.map +1 -1
- package/dist/modules/ProsopoCaptchaApi.js +1 -1
- package/dist/modules/ProsopoCaptchaApi.js.map +1 -1
- package/package.json +7 -7
- package/dist/cjs/contracts/captcha/dist/build-extrinsic/captcha.cjs +0 -339
- package/dist/cjs/contracts/captcha/dist/contract-info/captcha.cjs +0 -6
- package/dist/cjs/contracts/captcha/dist/contracts/captcha.cjs +0 -79
- package/dist/cjs/contracts/captcha/dist/data/captcha.json.cjs +0 -3374
- package/dist/cjs/contracts/captcha/dist/event-data/captcha.json.cjs +0 -3
- package/dist/cjs/contracts/captcha/dist/events/captcha.cjs +0 -23
- package/dist/cjs/contracts/captcha/dist/index.cjs +0 -44
- package/dist/cjs/contracts/captcha/dist/mixed-methods/captcha.cjs +0 -470
- package/dist/cjs/contracts/captcha/dist/query/captcha.cjs +0 -468
- package/dist/cjs/contracts/captcha/dist/shared/utils.cjs +0 -31
- package/dist/cjs/contracts/captcha/dist/tx-sign-and-send/captcha.cjs +0 -426
- package/dist/cjs/contracts/captcha/dist/types-arguments/captcha.cjs +0 -62
- package/dist/cjs/packages/datasets/dist/captcha/captcha.cjs +0 -143
- package/dist/cjs/packages/datasets/dist/captcha/dataset.cjs +0 -87
- package/dist/cjs/packages/datasets/dist/captcha/index.cjs +0 -27
- package/dist/cjs/packages/datasets/dist/captcha/merkle.cjs +0 -106
- package/dist/cjs/packages/datasets/dist/captcha/util.cjs +0 -16
- package/dist/cjs/packages/datasets/dist/index.cjs +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExtensionWeb2.d.ts","sourceRoot":"","sources":["../../src/api/ExtensionWeb2.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"ExtensionWeb2.d.ts","sourceRoot":"","sources":["../../src/api/ExtensionWeb2.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAO3C,OAAO,EAAE,4BAA4B,EAAE,MAAM,gBAAgB,CAAA;AAU7D,OAAO,SAAS,MAAM,gBAAgB,CAAA;AAKtC;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,SAAS;IAC7B,UAAU,CAAC,MAAM,EAAE,4BAA4B,GAAG,OAAO,CAAC,OAAO,CAAC;YAajE,eAAe;YAiCf,aAAa;YAgCb,cAAc;CAU/B"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
|
-
import { ApiPromise
|
|
1
|
+
import { ApiPromise } from '@polkadot/api/promise/Api';
|
|
2
|
+
import { Keyring } from '@polkadot/keyring';
|
|
2
3
|
import { WsProvider } from '@polkadot/rpc-provider/ws';
|
|
3
|
-
import {
|
|
4
|
+
import { decodeAddress, encodeAddress } from '@polkadot/util-crypto/address';
|
|
4
5
|
import { entropyToMnemonic } from '@polkadot/util-crypto/mnemonic/bip39';
|
|
5
6
|
import { getNetwork } from '../modules/Manager.js';
|
|
7
|
+
import { hashComponents, load } from '@fingerprintjs/fingerprintjs';
|
|
6
8
|
import { hexHash } from '@prosopo/common';
|
|
7
9
|
import { picassoCanvas } from '../modules/canvas.js';
|
|
8
|
-
import { stringToU8a
|
|
10
|
+
import { stringToU8a } from '@polkadot/util/string';
|
|
11
|
+
import { u8aToHex } from '@polkadot/util/u8a';
|
|
9
12
|
import Extension from './Extension.js';
|
|
10
|
-
import FingerprintJS, { hashComponents } from '@fingerprintjs/fingerprintjs';
|
|
11
13
|
import Signer from '@polkadot/extension-base/page/Signer';
|
|
12
14
|
/**
|
|
13
15
|
* Class for interfacing with web3 accounts.
|
|
@@ -68,10 +70,9 @@ export default class ExtWeb2 extends Extension {
|
|
|
68
70
|
const entropy = hexHash([canvasEntropy, browserEntropy].join(''), 128).slice(2);
|
|
69
71
|
const u8Entropy = stringToU8a(entropy);
|
|
70
72
|
const mnemonic = entropyToMnemonic(u8Entropy);
|
|
71
|
-
const api = await ApiPromise.create({ provider: wsProvider });
|
|
72
|
-
const type = '
|
|
73
|
+
const api = await ApiPromise.create({ provider: wsProvider, initWasm: false });
|
|
74
|
+
const type = 'ed25519';
|
|
73
75
|
const keyring = new Keyring({ type, ss58Format: api.registry.chainSS58 });
|
|
74
|
-
await cryptoWaitReady();
|
|
75
76
|
const keypair = keyring.addFromMnemonic(mnemonic);
|
|
76
77
|
const address = keypair.address.length === 42
|
|
77
78
|
? keypair.address
|
|
@@ -85,7 +86,7 @@ export default class ExtWeb2 extends Extension {
|
|
|
85
86
|
}
|
|
86
87
|
async getFingerprint() {
|
|
87
88
|
// Initialize an agent at application startup.
|
|
88
|
-
const fpPromise =
|
|
89
|
+
const fpPromise = load();
|
|
89
90
|
// Get the visitor identifier when you need it.
|
|
90
91
|
const fp = await fpPromise;
|
|
91
92
|
const result = await fp.get();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExtensionWeb2.js","sourceRoot":"","sources":["../../src/api/ExtensionWeb2.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"ExtensionWeb2.js","sourceRoot":"","sources":["../../src/api/ExtensionWeb2.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAItD,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAG3C,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,SAAS,MAAM,gBAAgB,CAAA;AACtC,OAAO,MAAM,MAAM,sCAAsC,CAAA;AAIzD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,SAAS;IACnC,KAAK,CAAC,UAAU,CAAC,MAAoC;QACxD,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAA;QAClC,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QAEnD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;QACpD,MAAM,SAAS,GAAsB,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QAExE,OAAO;YACH,OAAO;YACP,SAAS;SACZ,CAAA;IACL,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,OAA2B;QACrD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,KAAK,IAAI,EAAE;YACjC,OAAM;QACV,CAAC,CAAC,CAAA;QAEF,0QAA0Q;QAC1Q,MAAM,CAAC,OAAO,GAAG,KAAK,EAAE,OAAO,EAAE,EAAE;YAC/B,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YACpD,OAAO;gBACH,EAAE,EAAE,CAAC;gBACL,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC;aACjC,CAAA;QACL,CAAC,CAAA;QAED,OAAO;YACH,QAAQ,EAAE;gBACN,GAAG,EAAE,KAAK,IAAI,EAAE;oBACZ,+BAA+B;oBAC/B,OAAO,CAAC,OAAO,CAAC,CAAA;gBACpB,CAAC;gBACD,SAAS,EAAE,GAAG,EAAE;oBACZ,kDAAkD;oBAClD,OAAO,GAAG,EAAE;wBACR,OAAM;oBACV,CAAC,CAAA;gBACL,CAAC;aACJ;YACD,IAAI,EAAE,iBAAiB;YACvB,OAAO,EAAE,QAAQ;YACjB,MAAM;SACT,CAAA;IACL,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,UAAsB;QAC9C,MAAM,MAAM,GAAG;YACX,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YACjC,eAAe,EAAE,UAAU;YAC3B,UAAU,EAAE,KAAK;YACjB,cAAc,EAAE,GAAG;YACnB,aAAa,EAAE,EAAE;YACjB,cAAc,EAAE,CAAC;YACjB,IAAI,EAAE,EAAE;SACX,CAAA;QAED,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;QAClD,MAAM,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAC/E,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC/E,MAAM,SAAS,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;QACtC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAA;QAC7C,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAA;QAC9E,MAAM,IAAI,GAAgB,SAAS,CAAA;QACnC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAA;QACzE,MAAM,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAA;QACjD,MAAM,OAAO,GACT,OAAO,CAAC,OAAO,CAAC,MAAM,KAAK,EAAE;YACzB,CAAC,CAAC,OAAO,CAAC,OAAO;YACjB,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;QAC/E,OAAO;YACH,OAAO;YACP,IAAI;YACJ,IAAI,EAAE,OAAO;YACb,OAAO;SACV,CAAA;IACL,CAAC;IAEO,KAAK,CAAC,cAAc;QACxB,8CAA8C;QAC9C,MAAM,SAAS,GAAG,IAAI,EAAE,CAAA;QACxB,+CAA+C;QAC/C,MAAM,EAAE,GAAG,MAAM,SAAS,CAAA;QAC1B,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,EAAE,CAAA;QAC7B,yDAAyD;QACzD,MAAM,EAAE,WAAW,EAAE,GAAG,iBAAiB,EAAE,GAAG,MAAM,CAAC,UAAU,CAAA;QAC/D,OAAO,cAAc,CAAC,iBAAiB,CAAC,CAAA;IAC5C,CAAC;CACJ"}
|
package/dist/api/sign.js
CHANGED
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
// See the License for the specific language governing permissions and
|
|
13
13
|
// limitations under the License.
|
|
14
14
|
import { Keyring } from '@polkadot/keyring';
|
|
15
|
-
import { blake2AsHex } from '@polkadot/util-crypto';
|
|
16
|
-
import { u8aToHex } from '@polkadot/util';
|
|
15
|
+
import { blake2AsHex } from '@polkadot/util-crypto/blake2';
|
|
16
|
+
import { u8aToHex } from '@polkadot/util/u8a';
|
|
17
17
|
export function sign(message) {
|
|
18
18
|
const keyring = new Keyring({ type: 'ecdsa' });
|
|
19
19
|
const pair = keyring.addFromUri('//Alice');
|
package/dist/api/sign.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sign.js","sourceRoot":"","sources":["../../src/api/sign.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"sign.js","sourceRoot":"","sources":["../../src/api/sign.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAE7C,MAAM,UAAU,IAAI,CAAC,OAAe;IAChC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAA;IAC9C,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;IAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC9B,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAA;IAC/B,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;IACxC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,CAAA;AACrC,CAAC"}
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
const
|
|
2
|
+
const Api = require("@polkadot/api/promise/Api");
|
|
3
|
+
const keyring = require("@polkadot/keyring");
|
|
3
4
|
const ws = require("@polkadot/rpc-provider/ws");
|
|
4
|
-
const
|
|
5
|
+
const address = require("@polkadot/util-crypto/address");
|
|
5
6
|
const bip39 = require("@polkadot/util-crypto/mnemonic/bip39");
|
|
6
7
|
const Manager = require("../modules/Manager.cjs");
|
|
8
|
+
const fingerprintjs = require("@fingerprintjs/fingerprintjs");
|
|
7
9
|
const common = require("@prosopo/common");
|
|
8
10
|
const canvas = require("../modules/canvas.cjs");
|
|
9
|
-
const
|
|
11
|
+
const string = require("@polkadot/util/string");
|
|
12
|
+
const u8a = require("@polkadot/util/u8a");
|
|
10
13
|
const Extension = require("./Extension.cjs");
|
|
11
|
-
const FingerprintJS = require("@fingerprintjs/fingerprintjs");
|
|
12
14
|
const Signer = require("@polkadot/extension-base/page/Signer");
|
|
13
15
|
class ExtWeb2 extends Extension {
|
|
14
16
|
async getAccount(config) {
|
|
@@ -30,7 +32,7 @@ class ExtWeb2 extends Extension {
|
|
|
30
32
|
return {
|
|
31
33
|
id: 1,
|
|
32
34
|
// the id of the request to sign. This should be incremented each time and adjust the signature, but we're hacking around this. Hence the signature will always be the same given the same payload.
|
|
33
|
-
signature:
|
|
35
|
+
signature: u8a.u8aToHex(signature)
|
|
34
36
|
};
|
|
35
37
|
};
|
|
36
38
|
return {
|
|
@@ -62,27 +64,26 @@ class ExtWeb2 extends Extension {
|
|
|
62
64
|
const browserEntropy = await this.getFingerprint();
|
|
63
65
|
const canvasEntropy = canvas.picassoCanvas(params.numberOfRounds, params.seed, params);
|
|
64
66
|
const entropy = common.hexHash([canvasEntropy, browserEntropy].join(""), 128).slice(2);
|
|
65
|
-
const u8Entropy =
|
|
67
|
+
const u8Entropy = string.stringToU8a(entropy);
|
|
66
68
|
const mnemonic = bip39.entropyToMnemonic(u8Entropy);
|
|
67
|
-
const api
|
|
68
|
-
const type = "
|
|
69
|
-
const keyring = new
|
|
70
|
-
|
|
71
|
-
const
|
|
72
|
-
const address = keypair.address.length === 42 ? keypair.address : utilCrypto.encodeAddress(utilCrypto.decodeAddress(keypair.address), api$1.registry.chainSS58);
|
|
69
|
+
const api = await Api.ApiPromise.create({ provider: wsProvider, initWasm: false });
|
|
70
|
+
const type = "ed25519";
|
|
71
|
+
const keyring$1 = new keyring.Keyring({ type, ss58Format: api.registry.chainSS58 });
|
|
72
|
+
const keypair = keyring$1.addFromMnemonic(mnemonic);
|
|
73
|
+
const address$1 = keypair.address.length === 42 ? keypair.address : address.encodeAddress(address.decodeAddress(keypair.address), api.registry.chainSS58);
|
|
73
74
|
return {
|
|
74
|
-
address,
|
|
75
|
+
address: address$1,
|
|
75
76
|
type,
|
|
76
|
-
name: address,
|
|
77
|
+
name: address$1,
|
|
77
78
|
keypair
|
|
78
79
|
};
|
|
79
80
|
}
|
|
80
81
|
async getFingerprint() {
|
|
81
|
-
const fpPromise =
|
|
82
|
+
const fpPromise = fingerprintjs.load();
|
|
82
83
|
const fp = await fpPromise;
|
|
83
84
|
const result = await fp.get();
|
|
84
85
|
const { screenFrame, ...componentsReduced } = result.components;
|
|
85
|
-
return
|
|
86
|
+
return fingerprintjs.hashComponents(componentsReduced);
|
|
86
87
|
}
|
|
87
88
|
}
|
|
88
89
|
module.exports = ExtWeb2;
|