@prosopo/keyring 2.9.61 → 2.9.63
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/.turbo/turbo-build$colon$cjs.log +2 -2
- package/.turbo/turbo-build$colon$tsc.log +11 -11
- package/.turbo/turbo-build.log +3 -3
- package/CHANGELOG.md +14 -0
- package/dist/accounts/getPair.test.d.ts +2 -0
- package/dist/accounts/getPair.test.d.ts.map +1 -0
- package/dist/accounts/getPair.test.js +86 -0
- package/dist/accounts/getPair.test.js.map +1 -0
- package/dist/accounts/mnemonic.test.d.ts +2 -0
- package/dist/accounts/mnemonic.test.d.ts.map +1 -0
- package/dist/accounts/mnemonic.test.js +64 -0
- package/dist/accounts/mnemonic.test.js.map +1 -0
- package/dist/accounts/testAccounts.test.d.ts +2 -0
- package/dist/accounts/testAccounts.test.d.ts.map +1 -0
- package/dist/accounts/testAccounts.test.js +66 -0
- package/dist/accounts/testAccounts.test.js.map +1 -0
- package/dist/keyring/keyring.test.d.ts +2 -0
- package/dist/keyring/keyring.test.d.ts.map +1 -0
- package/dist/keyring/keyring.test.js +239 -0
- package/dist/keyring/keyring.test.js.map +1 -0
- package/dist/keyring/pairs.test.d.ts +2 -0
- package/dist/keyring/pairs.test.d.ts.map +1 -0
- package/dist/keyring/pairs.test.js +84 -0
- package/dist/keyring/pairs.test.js.map +1 -0
- package/dist/keyring/testing.test.d.ts +2 -0
- package/dist/keyring/testing.test.d.ts.map +1 -0
- package/dist/keyring/testing.test.js +97 -0
- package/dist/keyring/testing.test.js.map +1 -0
- package/dist/keyring.test-d.d.ts +2 -0
- package/dist/keyring.test-d.d.ts.map +1 -0
- package/dist/keyring.test-d.js +66 -0
- package/dist/keyring.test-d.js.map +1 -0
- package/dist/pair/decode.spec.js +1 -1
- package/dist/pair/decode.spec.js.map +1 -1
- package/dist/pair/encode.spec.js +1 -1
- package/dist/pair/encode.spec.js.map +1 -1
- package/dist/pair/nobody.test.d.ts +2 -0
- package/dist/pair/nobody.test.d.ts.map +1 -0
- package/dist/pair/nobody.test.js +77 -0
- package/dist/pair/nobody.test.js.map +1 -0
- package/dist/pair/toJson.spec.js +1 -1
- package/dist/pair/toJson.spec.js.map +1 -1
- package/package.json +3 -3
- package/src/accounts/getPair.test.ts +142 -0
- package/src/accounts/mnemonic.test.ts +103 -0
- package/src/accounts/testAccounts.test.ts +100 -0
- package/src/keyring/keyring.test.ts +373 -0
- package/src/keyring/pairs.test.ts +133 -0
- package/src/keyring/testing.test.ts +146 -0
- package/src/keyring.test-d.ts +134 -0
- package/src/pair/decode.spec.ts +3 -1
- package/src/pair/encode.spec.ts +9 -3
- package/src/pair/nobody.test.ts +127 -0
- package/src/pair/toJson.spec.ts +18 -12
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyring.test.js","sourceRoot":"","sources":["../../src/keyring/keyring.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pairs.test.d.ts","sourceRoot":"","sources":["../../src/keyring/pairs.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { decodeAddress, encodeAddress } from "@prosopo/util-crypto";
|
|
2
|
+
import { describe, expect, it } from "vitest";
|
|
3
|
+
import { nobody } from "../pair/nobody.js";
|
|
4
|
+
import { Pairs } from "./pairs.js";
|
|
5
|
+
const stubPair = (publicKey) => ({
|
|
6
|
+
...nobody(),
|
|
7
|
+
address: encodeAddress(publicKey, 42),
|
|
8
|
+
addressRaw: publicKey,
|
|
9
|
+
publicKey,
|
|
10
|
+
});
|
|
11
|
+
const keyOf = (byte) => new Uint8Array(32).fill(byte);
|
|
12
|
+
describe("Pairs", () => {
|
|
13
|
+
it("returns the pair it was given, so callers can chain off add", () => {
|
|
14
|
+
const pairs = new Pairs();
|
|
15
|
+
const pair = stubPair(keyOf(1));
|
|
16
|
+
expect(pairs.add(pair)).toBe(pair);
|
|
17
|
+
});
|
|
18
|
+
it("starts empty", () => {
|
|
19
|
+
expect(new Pairs().all()).toEqual([]);
|
|
20
|
+
});
|
|
21
|
+
it("retrieves a pair by SS58 address, public key or raw bytes", () => {
|
|
22
|
+
const pairs = new Pairs();
|
|
23
|
+
const publicKey = keyOf(2);
|
|
24
|
+
const pair = pairs.add(stubPair(publicKey));
|
|
25
|
+
expect(pairs.get(pair.address)).toBe(pair);
|
|
26
|
+
expect(pairs.get(publicKey)).toBe(pair);
|
|
27
|
+
expect(pairs.get(encodeAddress(publicKey, 2))).toBe(pair);
|
|
28
|
+
});
|
|
29
|
+
it("keeps only the latest pair for a public key", () => {
|
|
30
|
+
const pairs = new Pairs();
|
|
31
|
+
const publicKey = keyOf(3);
|
|
32
|
+
pairs.add(stubPair(publicKey));
|
|
33
|
+
const second = stubPair(publicKey);
|
|
34
|
+
pairs.add(second);
|
|
35
|
+
expect(pairs.all()).toHaveLength(1);
|
|
36
|
+
expect(pairs.get(publicKey)).toBe(second);
|
|
37
|
+
});
|
|
38
|
+
it("keeps distinct public keys apart", () => {
|
|
39
|
+
const pairs = new Pairs();
|
|
40
|
+
const first = pairs.add(stubPair(keyOf(4)));
|
|
41
|
+
const second = pairs.add(stubPair(keyOf(5)));
|
|
42
|
+
expect(pairs.all()).toEqual([first, second]);
|
|
43
|
+
expect(pairs.get(first.address)).toBe(first);
|
|
44
|
+
expect(pairs.get(second.address)).toBe(second);
|
|
45
|
+
});
|
|
46
|
+
it("names the address it could not find, formatting bytes as hex", () => {
|
|
47
|
+
const pairs = new Pairs();
|
|
48
|
+
expect(() => pairs.get(keyOf(6))).toThrow(`Unable to retrieve keypair '0x${"06".repeat(32)}'`);
|
|
49
|
+
});
|
|
50
|
+
it("names the address verbatim when it was given as SS58", () => {
|
|
51
|
+
const address = encodeAddress(keyOf(7), 42);
|
|
52
|
+
expect(() => new Pairs().get(address)).toThrow(`Unable to retrieve keypair '${address}'`);
|
|
53
|
+
});
|
|
54
|
+
it("rejects an address that is not decodable at all", () => {
|
|
55
|
+
expect(() => new Pairs().get("not-an-address")).toThrow();
|
|
56
|
+
});
|
|
57
|
+
it("removes a pair, after which lookup throws again", () => {
|
|
58
|
+
const pairs = new Pairs();
|
|
59
|
+
const publicKey = keyOf(8);
|
|
60
|
+
pairs.add(stubPair(publicKey));
|
|
61
|
+
pairs.remove(publicKey);
|
|
62
|
+
expect(pairs.all()).toEqual([]);
|
|
63
|
+
expect(() => pairs.get(publicKey)).toThrow("Unable to retrieve keypair");
|
|
64
|
+
});
|
|
65
|
+
it("removes by any encoding of the same key", () => {
|
|
66
|
+
const pairs = new Pairs();
|
|
67
|
+
const publicKey = keyOf(9);
|
|
68
|
+
const pair = pairs.add(stubPair(publicKey));
|
|
69
|
+
pairs.remove(encodeAddress(publicKey, 2));
|
|
70
|
+
expect(pairs.all()).toEqual([]);
|
|
71
|
+
expect(pair.address).toBe(encodeAddress(publicKey, 42));
|
|
72
|
+
});
|
|
73
|
+
it("ignores removal of a key that was never added", () => {
|
|
74
|
+
const pairs = new Pairs();
|
|
75
|
+
const kept = pairs.add(stubPair(keyOf(10)));
|
|
76
|
+
expect(() => pairs.remove(keyOf(11))).not.toThrow();
|
|
77
|
+
expect(pairs.all()).toEqual([kept]);
|
|
78
|
+
});
|
|
79
|
+
it("decodes the address for the map key rather than trusting the string", () => {
|
|
80
|
+
const publicKey = keyOf(12);
|
|
81
|
+
expect(decodeAddress(encodeAddress(publicKey, 42)).toString()).toBe(decodeAddress(encodeAddress(publicKey, 2)).toString());
|
|
82
|
+
});
|
|
83
|
+
});
|
|
84
|
+
//# sourceMappingURL=pairs.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pairs.test.js","sourceRoot":"","sources":["../../src/keyring/pairs.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"testing.test.d.ts","sourceRoot":"","sources":["../../src/keyring/testing.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { u8aToHex } from "@polkadot/util";
|
|
2
|
+
import { describe, expect, it } from "vitest";
|
|
3
|
+
import { PAIRSSR25519, createTestKeyring } from "./testing.js";
|
|
4
|
+
import { createTestPairs } from "./testingPairs.js";
|
|
5
|
+
const SLOW = { timeout: 60000 };
|
|
6
|
+
describe("createTestKeyring", SLOW, () => {
|
|
7
|
+
it("adds a pair for every well-known dev account", () => {
|
|
8
|
+
expect(createTestKeyring().getPairs()).toHaveLength(PAIRSSR25519.length);
|
|
9
|
+
});
|
|
10
|
+
it("names each pair after its seed, lowercased with the path flattened", () => {
|
|
11
|
+
const names = createTestKeyring()
|
|
12
|
+
.getPairs()
|
|
13
|
+
.map((pair) => pair.meta.name);
|
|
14
|
+
expect(names).toEqual([
|
|
15
|
+
"alice",
|
|
16
|
+
"alice_stash",
|
|
17
|
+
"bob",
|
|
18
|
+
"bob_stash",
|
|
19
|
+
"charlie",
|
|
20
|
+
"dave",
|
|
21
|
+
"eve",
|
|
22
|
+
"ferdie",
|
|
23
|
+
]);
|
|
24
|
+
});
|
|
25
|
+
it("marks every pair as a testing pair", () => {
|
|
26
|
+
for (const pair of createTestKeyring().getPairs()) {
|
|
27
|
+
expect(pair.meta.isTesting).toBe(true);
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
it("uses the hard-coded public keys, not derivation, by default", () => {
|
|
31
|
+
const keyring = createTestKeyring();
|
|
32
|
+
for (const { p } of PAIRSSR25519) {
|
|
33
|
+
expect(u8aToHex(keyring.getPair(p).publicKey)).toBe(p);
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
it("replaces lock with a no-op so the fixtures stay usable", () => {
|
|
37
|
+
const pair = createTestKeyring().getPairs()[0];
|
|
38
|
+
expect(pair).toBeDefined();
|
|
39
|
+
if (!pair)
|
|
40
|
+
return;
|
|
41
|
+
expect(() => pair.lock()).not.toThrow();
|
|
42
|
+
expect(pair.isLocked).toBe(false);
|
|
43
|
+
});
|
|
44
|
+
it("produces signable pairs", () => {
|
|
45
|
+
const pair = createTestKeyring().getPair(PAIRSSR25519[0]?.p ?? "0x");
|
|
46
|
+
const message = new TextEncoder().encode("hello");
|
|
47
|
+
expect(pair.verify(message, pair.sign(message), pair.publicKey)).toBe(true);
|
|
48
|
+
});
|
|
49
|
+
it("honours a requested ss58 format", () => {
|
|
50
|
+
const alice = PAIRSSR25519[0]?.p ?? "0x";
|
|
51
|
+
expect(createTestKeyring({ ss58Format: 42 }).getPair(alice).address).not.toBe(createTestKeyring({ ss58Format: 2 }).getPair(alice).address);
|
|
52
|
+
});
|
|
53
|
+
it("derives different keys when asked to, because the seeds are bare names", () => {
|
|
54
|
+
const derived = createTestKeyring({}, false);
|
|
55
|
+
expect(derived.getPairs()).toHaveLength(PAIRSSR25519.length);
|
|
56
|
+
for (const { p } of PAIRSSR25519) {
|
|
57
|
+
expect(() => derived.getPair(p)).toThrow("Unable to retrieve keypair");
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
it("rejects a keyring type it cannot support", () => {
|
|
61
|
+
expect(() => createTestKeyring({ type: "ed25519" })).toThrow("Expected a keyring type of either 'sr25519'");
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
describe("createTestPairs", SLOW, () => {
|
|
65
|
+
it("exposes every named pair plus nobody", () => {
|
|
66
|
+
const pairs = createTestPairs();
|
|
67
|
+
for (const name of [
|
|
68
|
+
"nobody",
|
|
69
|
+
"alice",
|
|
70
|
+
"alice_stash",
|
|
71
|
+
"bob",
|
|
72
|
+
"bob_stash",
|
|
73
|
+
"charlie",
|
|
74
|
+
"dave",
|
|
75
|
+
"eve",
|
|
76
|
+
"ferdie",
|
|
77
|
+
]) {
|
|
78
|
+
expect(pairs[name], name).toBeDefined();
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
it("maps alice to the well-known Alice public key", () => {
|
|
82
|
+
expect(u8aToHex(createTestPairs().alice?.publicKey ?? new Uint8Array())).toBe(PAIRSSR25519[0]?.p);
|
|
83
|
+
});
|
|
84
|
+
it("includes nobody, which cannot verify anything", () => {
|
|
85
|
+
const nobodyPair = createTestPairs().nobody;
|
|
86
|
+
expect(nobodyPair).toBeDefined();
|
|
87
|
+
expect(nobodyPair?.isLocked).toBe(true);
|
|
88
|
+
expect(nobodyPair?.verify(new Uint8Array(1), new Uint8Array(64), nobodyPair.publicKey)).toBe(false);
|
|
89
|
+
});
|
|
90
|
+
it("returns independent maps so one test cannot poison another", () => {
|
|
91
|
+
const first = createTestPairs();
|
|
92
|
+
const second = createTestPairs();
|
|
93
|
+
expect(first).not.toBe(second);
|
|
94
|
+
expect(first.alice).not.toBe(second.alice);
|
|
95
|
+
});
|
|
96
|
+
});
|
|
97
|
+
//# sourceMappingURL=testing.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"testing.test.js","sourceRoot":"","sources":["../../src/keyring/testing.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyring.test-d.d.ts","sourceRoot":"","sources":["../src/keyring.test-d.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { assertType, describe, expectTypeOf, it } from "vitest";
|
|
2
|
+
import { Keyring, generateMiniSecret, generateMnemonic, getDefaultProviders, getDefaultSiteKeys, getPair, } from "./index.js";
|
|
3
|
+
import { nobody } from "./pair/nobody.js";
|
|
4
|
+
describe("Keyring types", () => {
|
|
5
|
+
it("implements the shared KeyringInstance contract", () => {
|
|
6
|
+
expectTypeOf().toExtend();
|
|
7
|
+
});
|
|
8
|
+
it("returns KeyringPair from every add and create method", () => {
|
|
9
|
+
const keyring = new Keyring();
|
|
10
|
+
expectTypeOf(keyring.addFromUri("//Alice")).toEqualTypeOf();
|
|
11
|
+
expectTypeOf(keyring.addFromMnemonic("x")).toEqualTypeOf();
|
|
12
|
+
expectTypeOf(keyring.addFromSeed(new Uint8Array())).toEqualTypeOf();
|
|
13
|
+
expectTypeOf(keyring.addFromAddress("x")).toEqualTypeOf();
|
|
14
|
+
expectTypeOf(keyring.getPair("x")).toEqualTypeOf();
|
|
15
|
+
expectTypeOf(keyring.getPairs()).toEqualTypeOf();
|
|
16
|
+
expectTypeOf(keyring.publicKeys).toEqualTypeOf();
|
|
17
|
+
expectTypeOf(keyring.toJson("x")).toEqualTypeOf();
|
|
18
|
+
});
|
|
19
|
+
it("accepts an address as either a string or raw bytes", () => {
|
|
20
|
+
const keyring = new Keyring();
|
|
21
|
+
assertType(keyring.getPair("5abc"));
|
|
22
|
+
assertType(keyring.getPair(new Uint8Array(32)));
|
|
23
|
+
assertType(keyring.getPair(1));
|
|
24
|
+
});
|
|
25
|
+
it("rejects a keyring option object with an unknown key", () => {
|
|
26
|
+
new Keyring({ curve: "sr25519" });
|
|
27
|
+
});
|
|
28
|
+
it("has a readonly type", () => {
|
|
29
|
+
expectTypeOf().toEqualTypeOf();
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
describe("account helper types", () => {
|
|
33
|
+
it("returns a pair from getPair with every argument optional", () => {
|
|
34
|
+
expectTypeOf(getPair).returns.toEqualTypeOf();
|
|
35
|
+
assertType(getPair());
|
|
36
|
+
assertType(getPair("secret", "account", "sr25519", 42));
|
|
37
|
+
});
|
|
38
|
+
it("returns the mnemonic and address as a tuple", () => {
|
|
39
|
+
expectTypeOf(generateMnemonic).returns.resolves.toEqualTypeOf();
|
|
40
|
+
});
|
|
41
|
+
it("returns the mini secret as bytes paired with an address", () => {
|
|
42
|
+
expectTypeOf(generateMiniSecret).returns.resolves.toEqualTypeOf();
|
|
43
|
+
});
|
|
44
|
+
it("describes the dev fixtures with the shared account types", () => {
|
|
45
|
+
expectTypeOf(getDefaultSiteKeys()).toEqualTypeOf();
|
|
46
|
+
expectTypeOf(getDefaultProviders()).toEqualTypeOf();
|
|
47
|
+
});
|
|
48
|
+
it("returns a real KeyringPair for nobody", () => {
|
|
49
|
+
expectTypeOf(nobody()).toEqualTypeOf();
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
describe("test keyring map inference", () => {
|
|
53
|
+
it("defaults to the substrate map when no options are given", () => {
|
|
54
|
+
expectTypeOf().toEqualTypeOf();
|
|
55
|
+
expectTypeOf().toEqualTypeOf();
|
|
56
|
+
});
|
|
57
|
+
it("selects the ethereum map only for an ethereum keyring", () => {
|
|
58
|
+
expectTypeOf().toEqualTypeOf();
|
|
59
|
+
expectTypeOf().toEqualTypeOf();
|
|
60
|
+
});
|
|
61
|
+
it("indexes the map by arbitrary names, always yielding a pair", () => {
|
|
62
|
+
expectTypeOf().toEqualTypeOf();
|
|
63
|
+
expectTypeOf().toEqualTypeOf();
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
//# sourceMappingURL=keyring.test-d.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyring.test-d.js","sourceRoot":"","sources":["../src/keyring.test-d.ts"],"names":[],"mappings":"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"}
|
package/dist/pair/decode.spec.js
CHANGED
|
@@ -5,7 +5,7 @@ describe("decode", () => {
|
|
|
5
5
|
it("fails when no data provided", () => {
|
|
6
6
|
expect(() => keyring.alice.decodePkcs8()).toThrow(/(No encrypted data available|Password required)/);
|
|
7
7
|
});
|
|
8
|
-
it("returns correct publicKey from encoded", () => {
|
|
8
|
+
it("returns correct publicKey from encoded", { timeout: 60000 }, () => {
|
|
9
9
|
const PASS = "testing";
|
|
10
10
|
expect(() => keyring.alice.decodePkcs8(PASS, keyring.alice.encodePkcs8(PASS))).not.toThrow();
|
|
11
11
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decode.spec.js","sourceRoot":"","sources":["../../src/pair/decode.spec.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D,MAAM,OAAO,GAAG,eAAe,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,KAAK,CAAC,CAAC;AAE5D,QAAQ,CAAC,QAAQ,EAAE,GAAS,EAAE;IAC7B,EAAE,CAAC,6BAA6B,EAAE,GAAS,EAAE;QAC5C,MAAM,CAAC,GAAS,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CACtD,iDAAiD,CACjD,CAAC;IACH,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"decode.spec.js","sourceRoot":"","sources":["../../src/pair/decode.spec.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D,MAAM,OAAO,GAAG,eAAe,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,KAAK,CAAC,CAAC;AAE5D,QAAQ,CAAC,QAAQ,EAAE,GAAS,EAAE;IAC7B,EAAE,CAAC,6BAA6B,EAAE,GAAS,EAAE;QAC5C,MAAM,CAAC,GAAS,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CACtD,iDAAiD,CACjD,CAAC;IACH,CAAC,CAAC,CAAC;IAIH,EAAE,CAAC,wCAAwC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,GAAS,EAAE;QAC3E,MAAM,IAAI,GAAG,SAAS,CAAC;QAEvB,MAAM,CAAC,GAAS,EAAE,CACjB,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAChE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
package/dist/pair/encode.spec.js
CHANGED
|
@@ -9,7 +9,7 @@ describe("encode", () => {
|
|
|
9
9
|
it("returns PKCS8 when no passphrase supplied", () => {
|
|
10
10
|
expect(keyring.alice.encodePkcs8()).toHaveLength(DECODED_LENGTH);
|
|
11
11
|
});
|
|
12
|
-
it("returns encoded PKCS8 when passphrase supplied", () => {
|
|
12
|
+
it("returns encoded PKCS8 when passphrase supplied", { timeout: 60000 }, () => {
|
|
13
13
|
expect(keyring.alice.encodePkcs8("testing")).toHaveLength(ENCODED_LENGTH);
|
|
14
14
|
});
|
|
15
15
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encode.spec.js","sourceRoot":"","sources":["../../src/pair/encode.spec.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3E,MAAM,cAAc,GACnB,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,GAAG,UAAU,GAAG,UAAU,CAAC;AAC7D,MAAM,cAAc,GAAG,EAAE,GAAG,cAAc,GAAG,YAAY,GAAG,aAAa,CAAC;AAE1E,MAAM,OAAO,GAAG,eAAe,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,KAAK,CAAC,CAAC;AAE5D,QAAQ,CAAC,QAAQ,EAAE,GAAS,EAAE;IAC7B,EAAE,CAAC,2CAA2C,EAAE,GAAS,EAAE;QAC1D,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"encode.spec.js","sourceRoot":"","sources":["../../src/pair/encode.spec.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3E,MAAM,cAAc,GACnB,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,GAAG,UAAU,GAAG,UAAU,CAAC;AAC7D,MAAM,cAAc,GAAG,EAAE,GAAG,cAAc,GAAG,YAAY,GAAG,aAAa,CAAC;AAE1E,MAAM,OAAO,GAAG,eAAe,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,KAAK,CAAC,CAAC;AAE5D,QAAQ,CAAC,QAAQ,EAAE,GAAS,EAAE;IAC7B,EAAE,CAAC,2CAA2C,EAAE,GAAS,EAAE;QAC1D,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;IAIH,EAAE,CACD,gDAAgD,EAChD,EAAE,OAAO,EAAE,KAAK,EAAE,EAClB,GAAS,EAAE;QACV,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;IAC3E,CAAC,CACD,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nobody.test.d.ts","sourceRoot":"","sources":["../../src/pair/nobody.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { encodeAddress } from "@prosopo/util-crypto";
|
|
2
|
+
import { describe, expect, it } from "vitest";
|
|
3
|
+
import { PAIR_DIV, PAIR_HDR, PUB_LENGTH, SALT_LENGTH, SEC_LENGTH, SEED_LENGTH, } from "./defaults.js";
|
|
4
|
+
import { nobody } from "./nobody.js";
|
|
5
|
+
describe("nobody", () => {
|
|
6
|
+
it("is the all-zero public key, encoded as the well-known address", () => {
|
|
7
|
+
const pair = nobody();
|
|
8
|
+
expect(pair.publicKey).toEqual(new Uint8Array(32));
|
|
9
|
+
expect(pair.address).toBe("5C4hrfjw9DjXZTzV3MwzrrAr9P1MJhSrvWGWqi1eSuyUpnhM");
|
|
10
|
+
expect(pair.address).toBe(encodeAddress(pair.publicKey, 42));
|
|
11
|
+
});
|
|
12
|
+
it("is permanently locked", () => {
|
|
13
|
+
const pair = nobody();
|
|
14
|
+
expect(pair.isLocked).toBe(true);
|
|
15
|
+
pair.unlock("anything");
|
|
16
|
+
expect(pair.isLocked).toBe(true);
|
|
17
|
+
pair.lock();
|
|
18
|
+
expect(pair.isLocked).toBe(true);
|
|
19
|
+
});
|
|
20
|
+
it("never verifies a signature, whatever it is given", () => {
|
|
21
|
+
const pair = nobody();
|
|
22
|
+
expect(pair.verify(new Uint8Array(1), new Uint8Array(64), pair.publicKey)).toBe(false);
|
|
23
|
+
expect(pair.verify(new Uint8Array(0), pair.sign(new Uint8Array(1)), pair.publicKey)).toBe(false);
|
|
24
|
+
expect(pair.vrfVerify(new Uint8Array(1), new Uint8Array(96), pair.publicKey)).toBe(false);
|
|
25
|
+
});
|
|
26
|
+
it("never reports a JWT as valid", () => {
|
|
27
|
+
const result = nobody().jwtVerify(nobody().jwtIssue());
|
|
28
|
+
expect(result.isValid).toBe(false);
|
|
29
|
+
expect(result.error).toBe("JWT verification failed");
|
|
30
|
+
expect(result.publicKey).toEqual(new Uint8Array(32));
|
|
31
|
+
});
|
|
32
|
+
it("returns correctly sized but empty signatures", () => {
|
|
33
|
+
const pair = nobody();
|
|
34
|
+
expect(pair.sign(new Uint8Array(1))).toEqual(new Uint8Array(64));
|
|
35
|
+
expect(pair.vrfSign(new Uint8Array(1))).toEqual(new Uint8Array(96));
|
|
36
|
+
expect(pair.encodePkcs8()).toEqual(new Uint8Array(0));
|
|
37
|
+
});
|
|
38
|
+
it("derives to itself, so no chain of derivation can escape it", () => {
|
|
39
|
+
const pair = nobody();
|
|
40
|
+
expect(pair.derive("//anything")).toBe(pair);
|
|
41
|
+
expect(pair.derive("//a").derive("//b")).toBe(pair);
|
|
42
|
+
});
|
|
43
|
+
it("ignores attempts to change its meta", () => {
|
|
44
|
+
const pair = nobody();
|
|
45
|
+
pair.setMeta({ name: "somebody" });
|
|
46
|
+
expect(pair.meta.name).toBe("nobody");
|
|
47
|
+
expect(pair.meta.isTesting).toBe(true);
|
|
48
|
+
});
|
|
49
|
+
it("serialises to an unencrypted v0 json blob", () => {
|
|
50
|
+
const json = nobody().toJson();
|
|
51
|
+
expect(json.address).toBe(nobody().address);
|
|
52
|
+
expect(json.encoded).toBe("");
|
|
53
|
+
expect(json.encoding.version).toBe("0");
|
|
54
|
+
expect(json.encoding.type).toBe("none");
|
|
55
|
+
});
|
|
56
|
+
it("returns the same shared instance each call", () => {
|
|
57
|
+
expect(nobody()).toBe(nobody());
|
|
58
|
+
});
|
|
59
|
+
it("accepts pkcs8 decoding without throwing", () => {
|
|
60
|
+
expect(() => nobody().decodePkcs8("pass", new Uint8Array(1))).not.toThrow();
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
describe("pair defaults", () => {
|
|
64
|
+
it("declares the sr25519 key and seed lengths", () => {
|
|
65
|
+
expect(PUB_LENGTH).toBe(32);
|
|
66
|
+
expect(SEED_LENGTH).toBe(32);
|
|
67
|
+
expect(SALT_LENGTH).toBe(32);
|
|
68
|
+
expect(SEC_LENGTH).toBe(64);
|
|
69
|
+
});
|
|
70
|
+
it("declares the pkcs8 header and divider used by the encoder", () => {
|
|
71
|
+
expect(Array.from(PAIR_DIV)).toEqual([161, 35, 3, 33, 0]);
|
|
72
|
+
expect(Array.from(PAIR_HDR)).toEqual([
|
|
73
|
+
48, 83, 2, 1, 1, 48, 5, 6, 3, 43, 101, 112, 4, 34, 4, 32,
|
|
74
|
+
]);
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
//# sourceMappingURL=nobody.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nobody.test.js","sourceRoot":"","sources":["../../src/pair/nobody.test.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACN,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,WAAW,EACX,UAAU,EACV,WAAW,GACX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;IACvB,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;QACxE,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC;QACtB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CACxB,kDAAkD,CAClD,CAAC;QAGF,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;QAChC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC;QACtB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACxB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAG3D,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC;QACtB,MAAM,CACL,IAAI,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,UAAU,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAClE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACd,MAAM,CACL,IAAI,CAAC,MAAM,CACV,IAAI,UAAU,CAAC,CAAC,CAAC,EACjB,IAAI,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,EAC5B,IAAI,CAAC,SAAS,CACd,CACD,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACd,MAAM,CACL,IAAI,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,UAAU,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CACrE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACvC,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;QACvD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACrD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACvD,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC;QACtB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;QACjE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;QACpE,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACrE,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC;QACtB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC9C,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC;QACtB,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;QACnC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACpD,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC;QAC/B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC;QAC5C,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACrD,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QAClD,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;IAC7E,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC9B,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACpD,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5B,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7B,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7B,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QAGpE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1D,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC;YACpC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE;SACxD,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
package/dist/pair/toJson.spec.js
CHANGED
|
@@ -17,7 +17,7 @@ describe("toJson", () => {
|
|
|
17
17
|
},
|
|
18
18
|
});
|
|
19
19
|
});
|
|
20
|
-
it("creates an encoded output with passphrase", () => {
|
|
20
|
+
it("creates an encoded output with passphrase", { timeout: 60000 }, () => {
|
|
21
21
|
const json = keyring.alice.toJson("testing");
|
|
22
22
|
expect(json.encoded).toHaveLength(268);
|
|
23
23
|
expect(json).toMatchObject({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toJson.spec.js","sourceRoot":"","sources":["../../src/pair/toJson.spec.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D,MAAM,OAAO,GAAG,eAAe,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,KAAK,CAAC,CAAC;AAE5D,QAAQ,CAAC,QAAQ,EAAE,GAAS,EAAE;IAC7B,EAAE,CAAC,gDAAgD,EAAE,GAAS,EAAE;QAC/D,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,aAAa,CAAC;YAC5C,OAAO,EAAE,kDAAkD;YAC3D,OAAO,EACN,8JAA8J;YAC/J,QAAQ,EAAE;gBACT,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC;gBAC7B,IAAI,EAAE,CAAC,MAAM,CAAC;gBACd,OAAO,EAAE,GAAG;aACZ;YACD,IAAI,EAAE;gBACL,SAAS,EAAE,IAAI;gBACf,IAAI,EAAE,OAAO;aACb;SACD,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"toJson.spec.js","sourceRoot":"","sources":["../../src/pair/toJson.spec.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D,MAAM,OAAO,GAAG,eAAe,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,KAAK,CAAC,CAAC;AAE5D,QAAQ,CAAC,QAAQ,EAAE,GAAS,EAAE;IAC7B,EAAE,CAAC,gDAAgD,EAAE,GAAS,EAAE;QAC/D,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,aAAa,CAAC;YAC5C,OAAO,EAAE,kDAAkD;YAC3D,OAAO,EACN,8JAA8J;YAC/J,QAAQ,EAAE;gBACT,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC;gBAC7B,IAAI,EAAE,CAAC,MAAM,CAAC;gBACd,OAAO,EAAE,GAAG;aACZ;YACD,IAAI,EAAE;gBACL,SAAS,EAAE,IAAI;gBACf,IAAI,EAAE,OAAO;aACb;SACD,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAIH,EAAE,CACD,2CAA2C,EAC3C,EAAE,OAAO,EAAE,KAAK,EAAE,EAClB,GAAS,EAAE;QACV,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAE7C,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QACvC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC;YAC1B,OAAO,EAAE,kDAAkD;YAC3D,QAAQ,EAAE;gBACT,OAAO,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC;gBAC7B,IAAI,EAAE,CAAC,QAAQ,EAAE,mBAAmB,CAAC;gBACrC,OAAO,EAAE,GAAG;aACZ;SACD,CAAC,CAAC;IACJ,CAAC,CACD,CAAC;AACH,CAAC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@prosopo/keyring",
|
|
3
|
-
"version": "2.9.
|
|
3
|
+
"version": "2.9.63",
|
|
4
4
|
"description": "Keypair generator for Prosopo",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -40,13 +40,13 @@
|
|
|
40
40
|
"@polkadot/util": "13.5.7",
|
|
41
41
|
"@polkadot/util-crypto": "13.5.7",
|
|
42
42
|
"@prosopo/common": "3.1.48",
|
|
43
|
-
"@prosopo/types": "
|
|
43
|
+
"@prosopo/types": "5.0.0",
|
|
44
44
|
"@prosopo/util": "3.3.5",
|
|
45
45
|
"@prosopo/util-crypto": "13.5.30",
|
|
46
46
|
"dotenv": "16.4.5"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
|
-
"@prosopo/config": "3.3.
|
|
49
|
+
"@prosopo/config": "3.3.6",
|
|
50
50
|
"@types/node": "22.10.2",
|
|
51
51
|
"@vitest/coverage-v8": "4.1.10",
|
|
52
52
|
"concurrently": "9.0.1",
|