@lemmaoracle/seal 0.3.5 → 0.3.8
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/bits.d.ts.map +1 -1
- package/dist/bits.js +9 -6
- package/dist/bits.js.map +1 -1
- package/dist/proof.d.ts +2 -2
- package/dist/proof.d.ts.map +1 -1
- package/dist/proof.js +7 -2
- package/dist/proof.js.map +1 -1
- package/dist/vkey.d.ts +2 -2
- package/dist/vkey.d.ts.map +1 -1
- package/dist/vkey.js +3 -3
- package/dist/vkey.js.map +1 -1
- package/dist/vkeys/seal-identity-v2.2.json +99 -0
- package/package.json +3 -3
package/dist/bits.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bits.d.ts","sourceRoot":"","sources":["../src/bits.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAEtC,yEAAyE;AACzE,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAEpC,qDAAqD;AACrD,eAAO,MAAM,gBAAgB,QAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"bits.d.ts","sourceRoot":"","sources":["../src/bits.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAEtC,yEAAyE;AACzE,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAEpC,qDAAqD;AACrD,eAAO,MAAM,gBAAgB,QAAwB,CAAC;AAiBtD;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,GAAI,QAAQ,MAAM,KAAG,aAAa,CAAC,GAAG,CAO9D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,GACxB,MAAM,aAAa,CAAC,MAAM,GAAG,MAAM,CAAC,KACnC,MAGsE,CAAC"}
|
package/dist/bits.js
CHANGED
|
@@ -11,6 +11,13 @@ export const SEAL_SECRET_BITS = SEAL_SECRET_BYTES * 8;
|
|
|
11
11
|
* order circomlib's SHA-256 gadget expects.
|
|
12
12
|
*/
|
|
13
13
|
const byteToBits = (byte) => Array.from({ length: 8 }, (_, i) => ((byte >> (7 - i)) & 1));
|
|
14
|
+
/** Raise a validation error at the API boundary. */
|
|
15
|
+
// imperative: pre-condition validation — no functional alternative for call-site abort
|
|
16
|
+
/* eslint-disable functional/no-throw-statements */
|
|
17
|
+
const raise = (message) => {
|
|
18
|
+
throw new Error(message);
|
|
19
|
+
};
|
|
20
|
+
/* eslint-enable functional/no-throw-statements */
|
|
14
21
|
/**
|
|
15
22
|
* Convert a raw secret string into the `keyBits` witness signal — the
|
|
16
23
|
* UTF-8 bytes of the secret, MSB-first per byte.
|
|
@@ -22,9 +29,7 @@ export const secretToBits = (secret) => {
|
|
|
22
29
|
const bytes = new TextEncoder().encode(secret);
|
|
23
30
|
return bytes.length === SEAL_SECRET_BYTES
|
|
24
31
|
? [...bytes].flatMap(byteToBits)
|
|
25
|
-
: (()
|
|
26
|
-
throw new Error(`seal: secret must be ${SEAL_SECRET_BYTES} bytes, got ${bytes.length}`);
|
|
27
|
-
})();
|
|
32
|
+
: raise(`seal: secret must be ${String(SEAL_SECRET_BYTES)} bytes, got ${String(bytes.length)}`);
|
|
28
33
|
};
|
|
29
34
|
/**
|
|
30
35
|
* Reassemble the circuit's 256-bit `keyHash` public output into the
|
|
@@ -32,7 +37,5 @@ export const secretToBits = (secret) => {
|
|
|
32
37
|
*/
|
|
33
38
|
export const hashBitsToHex = (bits) => bits.length === 256
|
|
34
39
|
? BigInt(`0b${bits.map(String).join("")}`).toString(16).padStart(64, "0")
|
|
35
|
-
: (
|
|
36
|
-
throw new Error(`seal: keyHash must be 256 bits, got ${bits.length}`);
|
|
37
|
-
})();
|
|
40
|
+
: raise(`seal: keyHash must be 256 bits, got ${String(bits.length)}`);
|
|
38
41
|
//# sourceMappingURL=bits.js.map
|
package/dist/bits.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bits.js","sourceRoot":"","sources":["../src/bits.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,yEAAyE;AACzE,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAEpC,qDAAqD;AACrD,MAAM,CAAC,MAAM,gBAAgB,GAAG,iBAAiB,GAAG,CAAC,CAAC;AAEtD;;;GAGG;AACH,MAAM,UAAU,GAAG,CAAC,IAAY,EAAsB,EAAE,CACtD,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAO,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAQ,CAAC,CAAC;AAE3E;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAc,EAAsB,EAAE;IACjE,MAAM,KAAK,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC/C,OAAO,KAAK,CAAC,MAAM,KAAK,iBAAiB;QACvC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;QAChC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"bits.js","sourceRoot":"","sources":["../src/bits.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,yEAAyE;AACzE,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAEpC,qDAAqD;AACrD,MAAM,CAAC,MAAM,gBAAgB,GAAG,iBAAiB,GAAG,CAAC,CAAC;AAEtD;;;GAGG;AACH,MAAM,UAAU,GAAG,CAAC,IAAY,EAAsB,EAAE,CACtD,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAO,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAQ,CAAC,CAAC;AAE3E,oDAAoD;AACpD,uFAAuF;AACvF,mDAAmD;AACnD,MAAM,KAAK,GAAG,CAAC,OAAe,EAAS,EAAE;IACvC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;AAC3B,CAAC,CAAC;AACF,kDAAkD;AAElD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAc,EAAsB,EAAE;IACjE,MAAM,KAAK,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC/C,OAAO,KAAK,CAAC,MAAM,KAAK,iBAAiB;QACvC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;QAChC,CAAC,CAAC,KAAK,CACH,wBAAwB,MAAM,CAAC,iBAAiB,CAAC,eAAe,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CACvF,CAAC;AACR,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,IAAoC,EAC5B,EAAE,CACV,IAAI,CAAC,MAAM,KAAK,GAAG;IACjB,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC;IACzE,CAAC,CAAC,KAAK,CAAC,uCAAuC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC"}
|
package/dist/proof.d.ts
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
*/
|
|
14
14
|
import type { SealProof, SealProofInput } from "./types.js";
|
|
15
15
|
/** The circuit id under which seal v2 is registered with the Lemma API. */
|
|
16
|
-
export declare const SEAL_CIRCUIT_ID = "seal-identity-
|
|
16
|
+
export declare const SEAL_CIRCUIT_ID = "seal-identity-v2.2";
|
|
17
17
|
type VerifyResult = Readonly<{
|
|
18
18
|
nullifier: string;
|
|
19
19
|
nonce: string;
|
|
@@ -28,7 +28,7 @@ type VerifyResult = Readonly<{
|
|
|
28
28
|
* expected nullifier until a match is found.
|
|
29
29
|
*
|
|
30
30
|
* Circuit artifacts (wasm, zkey) are resolved automatically via the
|
|
31
|
-
* Lemma SDK from `circuitId: "seal-identity-
|
|
31
|
+
* Lemma SDK from `circuitId: "seal-identity-v2.2"`. No local artifact
|
|
32
32
|
* paths are required.
|
|
33
33
|
*/
|
|
34
34
|
export declare const prove: (input: SealProofInput) => Promise<SealProof>;
|
package/dist/proof.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proof.d.ts","sourceRoot":"","sources":["../src/proof.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5D,2EAA2E;AAC3E,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"proof.d.ts","sourceRoot":"","sources":["../src/proof.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5D,2EAA2E;AAC3E,eAAO,MAAM,eAAe,uBAAuB,CAAC;AAEpD,KAAK,YAAY,GAAG,QAAQ,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAQnE;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,KAAK,GAAU,OAAO,cAAc,KAAG,OAAO,CAAC,SAAS,CAmBpE,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,MAAM,GACjB,OAAO,SAAS,KACf,OAAO,CAAC,YAAY,GAAG,IAAI,CAgB7B,CAAC"}
|
package/dist/proof.js
CHANGED
|
@@ -15,7 +15,7 @@ import { create, prover, verifier } from "@lemmaoracle/sdk";
|
|
|
15
15
|
import { secretToBits } from "./bits.js";
|
|
16
16
|
import vkey from "./vkey.js";
|
|
17
17
|
/** The circuit id under which seal v2 is registered with the Lemma API. */
|
|
18
|
-
export const SEAL_CIRCUIT_ID = "seal-identity-
|
|
18
|
+
export const SEAL_CIRCUIT_ID = "seal-identity-v2.2";
|
|
19
19
|
/**
|
|
20
20
|
* Generate a groth16 proof that the caller holds the secret behind a
|
|
21
21
|
* registered `key_hash`, bound to the given challenge `nonce`.
|
|
@@ -26,21 +26,25 @@ export const SEAL_CIRCUIT_ID = "seal-identity-v1";
|
|
|
26
26
|
* expected nullifier until a match is found.
|
|
27
27
|
*
|
|
28
28
|
* Circuit artifacts (wasm, zkey) are resolved automatically via the
|
|
29
|
-
* Lemma SDK from `circuitId: "seal-identity-
|
|
29
|
+
* Lemma SDK from `circuitId: "seal-identity-v2.2"`. No local artifact
|
|
30
30
|
* paths are required.
|
|
31
31
|
*/
|
|
32
32
|
export const prove = async (input) => {
|
|
33
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-call
|
|
33
34
|
const client = create({});
|
|
34
35
|
const witness = {
|
|
35
36
|
keyBits: secretToBits(input.secret).map(Number),
|
|
36
37
|
nonce: input.nonce,
|
|
37
38
|
};
|
|
39
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access
|
|
38
40
|
const { proof, inputs } = await prover.prove(client, {
|
|
39
41
|
circuitId: SEAL_CIRCUIT_ID,
|
|
40
42
|
witness,
|
|
41
43
|
});
|
|
42
44
|
return {
|
|
45
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
|
43
46
|
proof: JSON.parse(atob(proof)),
|
|
47
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
|
44
48
|
publicSignals: inputs,
|
|
45
49
|
nullifier: inputs[0] ?? "",
|
|
46
50
|
};
|
|
@@ -52,6 +56,7 @@ export const prove = async (input) => {
|
|
|
52
56
|
* `null` if invalid. Delegates to `@lemmaoracle/sdk` verifier.
|
|
53
57
|
*/
|
|
54
58
|
export const verify = async (proof) => {
|
|
59
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access
|
|
55
60
|
const { ok } = await verifier.verify({
|
|
56
61
|
alg: "groth16-bn254-snarkjs",
|
|
57
62
|
inputs: {
|
package/dist/proof.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proof.js","sourceRoot":"","sources":["../src/proof.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,2EAA2E;AAC3E,MAAM,CAAC,MAAM,eAAe,GAAG,
|
|
1
|
+
{"version":3,"file":"proof.js","sourceRoot":"","sources":["../src/proof.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,2EAA2E;AAC3E,MAAM,CAAC,MAAM,eAAe,GAAG,oBAAoB,CAAC;AAUpD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,KAAK,EAAE,KAAqB,EAAsB,EAAE;IACvE,sGAAsG;IACtG,MAAM,MAAM,GAAc,MAAM,CAAC,EAAE,CAAC,CAAC;IACrC,MAAM,OAAO,GAAG;QACd,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;QAC/C,KAAK,EAAE,KAAK,CAAC,KAAK;KACnB,CAAC;IACF,kJAAkJ;IAClJ,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAmB,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE;QACnE,SAAS,EAAE,eAAe;QAC1B,OAAO;KACR,CAAC,CAAC;IACH,OAAO;QACL,mEAAmE;QACnE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAe,CAAC,CAAC;QACxC,mEAAmE;QACnE,aAAa,EAAE,MAAM;QACrB,SAAS,EAAG,MAAwB,CAAC,CAAC,CAAC,IAAI,EAAE;KAC9C,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,KAAK,EACzB,KAAgB,EACc,EAAE;IAChC,kJAAkJ;IAClJ,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;QACnC,GAAG,EAAE,uBAAuB;QAC5B,MAAM,EAAE;YACN,IAAI;YACJ,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,aAAa,EAAE,KAAK,CAAC,aAAa;SACnC;KACF,CAAC,CAAC;IACH,OAAO,EAAE;QACP,CAAC,CAAC;YACE,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE;YACvC,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE;SACpC;QACH,CAAC,CAAC,IAAI,CAAC;AACX,CAAC,CAAC"}
|
package/dist/vkey.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The groth16 verification key for seal-identity-
|
|
2
|
+
* The groth16 verification key for seal-identity-v2.2.
|
|
3
3
|
*
|
|
4
4
|
* This is public information — it can only verify proofs, not generate them.
|
|
5
5
|
* Imported as a static JSON module — Vite / Astro will inline it at build
|
|
@@ -7,6 +7,6 @@
|
|
|
7
7
|
*/
|
|
8
8
|
declare const _default: Readonly<Record<string, unknown>>;
|
|
9
9
|
export default _default;
|
|
10
|
-
/** The bundled verification key for seal-identity-
|
|
10
|
+
/** The bundled verification key for seal-identity-v2.2. */
|
|
11
11
|
export declare const sealVkey: Readonly<Record<string, unknown>>;
|
|
12
12
|
//# sourceMappingURL=vkey.d.ts.map
|
package/dist/vkey.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vkey.d.ts","sourceRoot":"","sources":["../src/vkey.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;wBAIoB,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAAxD,wBAAyD;AAEzD,
|
|
1
|
+
{"version":3,"file":"vkey.d.ts","sourceRoot":"","sources":["../src/vkey.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;wBAIoB,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAAxD,wBAAyD;AAEzD,2DAA2D;AAC3D,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAQ,CAAC"}
|
package/dist/vkey.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The groth16 verification key for seal-identity-
|
|
2
|
+
* The groth16 verification key for seal-identity-v2.2.
|
|
3
3
|
*
|
|
4
4
|
* This is public information — it can only verify proofs, not generate them.
|
|
5
5
|
* Imported as a static JSON module — Vite / Astro will inline it at build
|
|
6
6
|
* time, so no filesystem access is needed at runtime (Cloudflare Workers).
|
|
7
7
|
*/
|
|
8
|
-
import vkey from "./vkeys/seal-identity-
|
|
8
|
+
import vkey from "./vkeys/seal-identity-v2.2.json" with { type: "json" };
|
|
9
9
|
export default vkey;
|
|
10
|
-
/** The bundled verification key for seal-identity-
|
|
10
|
+
/** The bundled verification key for seal-identity-v2.2. */
|
|
11
11
|
export const sealVkey = vkey;
|
|
12
12
|
//# sourceMappingURL=vkey.js.map
|
package/dist/vkey.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vkey.js","sourceRoot":"","sources":["../src/vkey.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,IAAI,MAAM
|
|
1
|
+
{"version":3,"file":"vkey.js","sourceRoot":"","sources":["../src/vkey.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,IAAI,MAAM,iCAAiC,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAEzE,eAAe,IAAyC,CAAC;AAEzD,2DAA2D;AAC3D,MAAM,CAAC,MAAM,QAAQ,GAAsC,IAAI,CAAC"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
{
|
|
2
|
+
"protocol": "groth16",
|
|
3
|
+
"curve": "bn128",
|
|
4
|
+
"nPublic": 2,
|
|
5
|
+
"vk_alpha_1": [
|
|
6
|
+
"20491192805390485299153009773594534940189261866228447918068658471970481763042",
|
|
7
|
+
"9383485363053290200918347156157836566562967994039712273449902621266178545958",
|
|
8
|
+
"1"
|
|
9
|
+
],
|
|
10
|
+
"vk_beta_2": [
|
|
11
|
+
[
|
|
12
|
+
"6375614351688725206403948262868962793625744043794305715222011528459656738731",
|
|
13
|
+
"4252822878758300859123897981450591353533073413197771768651442665752259397132"
|
|
14
|
+
],
|
|
15
|
+
[
|
|
16
|
+
"10505242626370262277552901082094356697409835680220590971873171140371331206856",
|
|
17
|
+
"21847035105528745403288232691147584728191162732299865338377159692350059136679"
|
|
18
|
+
],
|
|
19
|
+
[
|
|
20
|
+
"1",
|
|
21
|
+
"0"
|
|
22
|
+
]
|
|
23
|
+
],
|
|
24
|
+
"vk_gamma_2": [
|
|
25
|
+
[
|
|
26
|
+
"10857046999023057135944570762232829481370756359578518086990519993285655852781",
|
|
27
|
+
"11559732032986387107991004021392285783925812861821192530917403151452391805634"
|
|
28
|
+
],
|
|
29
|
+
[
|
|
30
|
+
"8495653923123431417604973247489272438418190587263600148770280649306958101930",
|
|
31
|
+
"4082367875863433681332203403145435568316851327593401208105741076214120093531"
|
|
32
|
+
],
|
|
33
|
+
[
|
|
34
|
+
"1",
|
|
35
|
+
"0"
|
|
36
|
+
]
|
|
37
|
+
],
|
|
38
|
+
"vk_delta_2": [
|
|
39
|
+
[
|
|
40
|
+
"5057118701741576440752833000736289333551210464682435570147385412037629834123",
|
|
41
|
+
"20720496292872509405567304799783115839050442547417999732980950214168161010963"
|
|
42
|
+
],
|
|
43
|
+
[
|
|
44
|
+
"15421140593784135507351099493528851783235034390865846873869807154841156496366",
|
|
45
|
+
"20977197090890527313669471157778918344576752093159387563507504785416542548922"
|
|
46
|
+
],
|
|
47
|
+
[
|
|
48
|
+
"1",
|
|
49
|
+
"0"
|
|
50
|
+
]
|
|
51
|
+
],
|
|
52
|
+
"vk_alphabeta_12": [
|
|
53
|
+
[
|
|
54
|
+
[
|
|
55
|
+
"2029413683389138792403550203267699914886160938906632433982220835551125967885",
|
|
56
|
+
"21072700047562757817161031222997517981543347628379360635925549008442030252106"
|
|
57
|
+
],
|
|
58
|
+
[
|
|
59
|
+
"5940354580057074848093997050200682056184807770593307860589430076672439820312",
|
|
60
|
+
"12156638873931618554171829126792193045421052652279363021382169897324752428276"
|
|
61
|
+
],
|
|
62
|
+
[
|
|
63
|
+
"7898200236362823042373859371574133993780991612861777490112507062703164551277",
|
|
64
|
+
"7074218545237549455313236346927434013100842096812539264420499035217050630853"
|
|
65
|
+
]
|
|
66
|
+
],
|
|
67
|
+
[
|
|
68
|
+
[
|
|
69
|
+
"7077479683546002997211712695946002074877511277312570035766170199895071832130",
|
|
70
|
+
"10093483419865920389913245021038182291233451549023025229112148274109565435465"
|
|
71
|
+
],
|
|
72
|
+
[
|
|
73
|
+
"4595479056700221319381530156280926371456704509942304414423590385166031118820",
|
|
74
|
+
"19831328484489333784475432780421641293929726139240675179672856274388269393268"
|
|
75
|
+
],
|
|
76
|
+
[
|
|
77
|
+
"11934129596455521040620786944827826205713621633706285934057045369193958244500",
|
|
78
|
+
"8037395052364110730298837004334506829870972346962140206007064471173334027475"
|
|
79
|
+
]
|
|
80
|
+
]
|
|
81
|
+
],
|
|
82
|
+
"IC": [
|
|
83
|
+
[
|
|
84
|
+
"10353239493068004798069323618922547996506619344083019841544484651077001389169",
|
|
85
|
+
"11726071080376853014152624466937568207225298750458833225247929640606885484427",
|
|
86
|
+
"1"
|
|
87
|
+
],
|
|
88
|
+
[
|
|
89
|
+
"12536740412891259148157446308242108514136764325310208732660481427038299505256",
|
|
90
|
+
"14491829003871598979773914208036957880896698884713691968979352561053060712748",
|
|
91
|
+
"1"
|
|
92
|
+
],
|
|
93
|
+
[
|
|
94
|
+
"13343189208302481929958890267548837787223455484652321097167269265156442506042",
|
|
95
|
+
"1906120202526259161968695777975695158926455732845601578358758005023264801592",
|
|
96
|
+
"1"
|
|
97
|
+
]
|
|
98
|
+
]
|
|
99
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lemmaoracle/seal",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.8",
|
|
4
4
|
"description": "Seal — ZK auth circuit for Lemma dashboard Proof-based sign-in. Proves knowledge of a secret pre-image without revealing the secret or its hash (v2: Poseidon nullifier).",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -38,8 +38,8 @@
|
|
|
38
38
|
"sign-in"
|
|
39
39
|
],
|
|
40
40
|
"dependencies": {
|
|
41
|
-
"@lemmaoracle/sdk": "^0.0.
|
|
42
|
-
"@lemmaoracle/spec": "^0.0.
|
|
41
|
+
"@lemmaoracle/sdk": "^0.0.39",
|
|
42
|
+
"@lemmaoracle/spec": "^0.0.37"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|
|
45
45
|
"@types/snarkjs": "^0.7.9",
|