@orbinum/circuits 0.4.3 → 0.5.0
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/README.md +24 -16
- package/disclosure.r1cs +0 -0
- package/disclosure_pk.ark +0 -0
- package/disclosure_pk.zkey +0 -0
- package/index.d.ts +5 -2
- package/index.js +3 -2
- package/manifest.json +48 -24
- package/package.json +2 -1
- package/private_link.r1cs +0 -0
- package/private_link_pk.ark +0 -0
- package/private_link_pk.zkey +0 -0
- package/transfer.r1cs +0 -0
- package/transfer.wasm +0 -0
- package/transfer_pk.ark +0 -0
- package/transfer_pk.zkey +0 -0
- package/unshield.r1cs +0 -0
- package/unshield.wasm +0 -0
- package/unshield_pk.ark +0 -0
- package/unshield_pk.zkey +0 -0
- package/verification_key_disclosure.json +4 -4
- package/verification_key_private_link.json +4 -4
- package/verification_key_transfer.json +27 -17
- package/verification_key_unshield.json +22 -17
package/README.md
CHANGED
|
@@ -13,14 +13,15 @@ npm install @orbinum/circuits
|
|
|
13
13
|
|
|
14
14
|
## 📦 Package Contents
|
|
15
15
|
|
|
16
|
-
This package includes **
|
|
16
|
+
This package includes **20 files** for 4 circuits (disclosure, transfer, unshield, private_link):
|
|
17
17
|
|
|
18
|
-
### For Each Circuit (disclosure, transfer, unshield):
|
|
18
|
+
### For Each Circuit (disclosure, transfer, unshield, private_link):
|
|
19
19
|
|
|
20
|
-
1. **`{circuit}.wasm`** - Witness calculator (
|
|
21
|
-
2. **`{circuit}
|
|
22
|
-
3. **`{circuit}_pk.
|
|
23
|
-
4. **`
|
|
20
|
+
1. **`{circuit}.wasm`** - Witness calculator (4 files)
|
|
21
|
+
2. **`{circuit}.r1cs`** - R1CS constraint system — for custom provers / verification (4 files)
|
|
22
|
+
3. **`{circuit}_pk.zkey`** - Proving key for snarkjs (4 files)
|
|
23
|
+
4. **`{circuit}_pk.ark`** - Proving key for arkworks/Rust (4 files)
|
|
24
|
+
5. **`verification_key_{circuit}.json`** - Verification key for on-chain verification (4 files)
|
|
24
25
|
|
|
25
26
|
## 🔧 Usage
|
|
26
27
|
|
|
@@ -29,17 +30,19 @@ This package includes **12 files** for 3 circuits (disclosure, transfer, unshiel
|
|
|
29
30
|
```typescript
|
|
30
31
|
import { join } from "path";
|
|
31
32
|
import { readFileSync } from "fs";
|
|
33
|
+
import { getCircuitPaths } from "@orbinum/circuits";
|
|
32
34
|
|
|
33
|
-
// Get circuit
|
|
34
|
-
const
|
|
35
|
+
// Get all paths for a circuit
|
|
36
|
+
const paths = getCircuitPaths("transfer"); // 'disclosure' | 'transfer' | 'unshield' | 'private_link'
|
|
35
37
|
|
|
36
38
|
// Load WASM witness calculator
|
|
37
|
-
const
|
|
38
|
-
const wasmBuffer = readFileSync(wasmPath);
|
|
39
|
+
const wasmBuffer = readFileSync(paths.wasm);
|
|
39
40
|
|
|
40
41
|
// Load proving key (.zkey)
|
|
41
|
-
const
|
|
42
|
-
|
|
42
|
+
const zkeyBuffer = readFileSync(paths.zkey);
|
|
43
|
+
|
|
44
|
+
// Load R1CS (e.g. for custom prover or constraint inspection)
|
|
45
|
+
const r1csBuffer = readFileSync(paths.r1cs);
|
|
43
46
|
|
|
44
47
|
// Use with snarkjs for proof generation
|
|
45
48
|
// ... snarkjs proof generation code ...
|
|
@@ -82,6 +85,10 @@ Private token transfer circuit with 2 inputs and 2 outputs.
|
|
|
82
85
|
|
|
83
86
|
Withdrawal circuit from private pool to public account.
|
|
84
87
|
|
|
88
|
+
### 4. **Private Link** (`private_link_*`)
|
|
89
|
+
|
|
90
|
+
Proves linkage between two commitments without revealing their values.
|
|
91
|
+
|
|
85
92
|
## 🔗 Related Packages
|
|
86
93
|
|
|
87
94
|
- [@orbinum/proof-generator](https://www.npmjs.com/package/@orbinum/proof-generator) - High-level proof orchestrator
|
|
@@ -101,12 +108,13 @@ console.log("Public signals:", result.publicSignals);
|
|
|
101
108
|
|
|
102
109
|
## 📄 File Sizes
|
|
103
110
|
|
|
104
|
-
- **WASM files**: ~1-
|
|
105
|
-
-
|
|
106
|
-
- **`.
|
|
111
|
+
- **WASM files**: ~1-3 MB each (witness calculators)
|
|
112
|
+
- **R1CS files**: ~1-5 MB each (constraint systems)
|
|
113
|
+
- **`.zkey` files**: ~0.5-20 MB each (snarkjs proving keys)
|
|
114
|
+
- **`.ark` files**: ~0.2-9 MB each (arkworks proving keys)
|
|
107
115
|
- **Verification keys**: ~3-4 KB each (JSON)
|
|
108
116
|
|
|
109
|
-
**Total package size**: ~
|
|
117
|
+
**Total package size**: ~80-90 MB
|
|
110
118
|
|
|
111
119
|
## 🔒 Security Notice
|
|
112
120
|
|
package/disclosure.r1cs
ADDED
|
Binary file
|
package/disclosure_pk.ark
CHANGED
|
Binary file
|
package/disclosure_pk.zkey
CHANGED
|
Binary file
|
package/index.d.ts
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
export interface CircuitPaths {
|
|
8
8
|
wasm: string;
|
|
9
|
+
r1cs: string;
|
|
9
10
|
zkey: string;
|
|
10
11
|
ark: string;
|
|
11
12
|
verificationKey: string;
|
|
@@ -14,11 +15,13 @@ export interface CircuitPaths {
|
|
|
14
15
|
/**
|
|
15
16
|
* Get paths to all files for a specific circuit
|
|
16
17
|
*/
|
|
17
|
-
export function getCircuitPaths(
|
|
18
|
+
export function getCircuitPaths(
|
|
19
|
+
circuit: "disclosure" | "transfer" | "unshield" | "private_link"
|
|
20
|
+
): CircuitPaths;
|
|
18
21
|
|
|
19
22
|
/**
|
|
20
23
|
* Available circuits
|
|
21
24
|
*/
|
|
22
|
-
export type CircuitType = "disclosure" | "transfer" | "unshield";
|
|
25
|
+
export type CircuitType = "disclosure" | "transfer" | "unshield" | "private_link";
|
|
23
26
|
|
|
24
27
|
export const CIRCUITS: CircuitType[];
|
package/index.js
CHANGED
|
@@ -6,11 +6,11 @@
|
|
|
6
6
|
|
|
7
7
|
const { join } = require("path");
|
|
8
8
|
|
|
9
|
-
const CIRCUITS = ["disclosure", "transfer", "unshield"];
|
|
9
|
+
const CIRCUITS = ["disclosure", "transfer", "unshield", "private_link"];
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* Get paths to all files for a specific circuit
|
|
13
|
-
* @param {string} circuit - Circuit name: 'disclosure', 'transfer', or '
|
|
13
|
+
* @param {string} circuit - Circuit name: 'disclosure', 'transfer', 'unshield', or 'private_link'
|
|
14
14
|
* @returns {Object} Paths to circuit files
|
|
15
15
|
*/
|
|
16
16
|
function getCircuitPaths(circuit) {
|
|
@@ -22,6 +22,7 @@ function getCircuitPaths(circuit) {
|
|
|
22
22
|
|
|
23
23
|
return {
|
|
24
24
|
wasm: join(basePath, `${circuit}.wasm`),
|
|
25
|
+
r1cs: join(basePath, `${circuit}.r1cs`),
|
|
25
26
|
zkey: join(basePath, `${circuit}_pk.zkey`),
|
|
26
27
|
ark: join(basePath, `${circuit}_pk.ark`),
|
|
27
28
|
verificationKey: join(basePath, `verification_key_${circuit}.json`),
|
package/manifest.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schema_version": "1.0.0",
|
|
3
3
|
"package_name": "orbinum-circuits",
|
|
4
|
-
"package_version": "0.
|
|
5
|
-
"generated_at": "2026-
|
|
4
|
+
"package_version": "0.5.0",
|
|
5
|
+
"generated_at": "2026-04-12T23:47:00.760Z",
|
|
6
6
|
"circuits": {
|
|
7
7
|
"disclosure": {
|
|
8
8
|
"active_version": 1,
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"versions": {
|
|
13
13
|
"1": {
|
|
14
14
|
"version": 1,
|
|
15
|
-
"vk_hash": "
|
|
15
|
+
"vk_hash": "0xdafb885f37582e907005e7fd74250c754f15d929b2ce662563686c3a5868e1a6",
|
|
16
16
|
"artifacts": {
|
|
17
17
|
"wasm": {
|
|
18
18
|
"file": "disclosure.wasm",
|
|
@@ -24,13 +24,19 @@
|
|
|
24
24
|
"file": "disclosure_pk.zkey",
|
|
25
25
|
"localPath": "keys/disclosure_pk.zkey",
|
|
26
26
|
"bytes": 554204,
|
|
27
|
-
"sha256": "
|
|
27
|
+
"sha256": "f4836096039f2f720020364578e16d47ab401d7451ff84dc33a88001313dd9ce"
|
|
28
28
|
},
|
|
29
29
|
"vk_json": {
|
|
30
30
|
"file": "verification_key_disclosure.json",
|
|
31
31
|
"localPath": "build/verification_key_disclosure.json",
|
|
32
|
-
"bytes":
|
|
33
|
-
"sha256": "
|
|
32
|
+
"bytes": 3471,
|
|
33
|
+
"sha256": "dafb885f37582e907005e7fd74250c754f15d929b2ce662563686c3a5868e1a6"
|
|
34
|
+
},
|
|
35
|
+
"r1cs": {
|
|
36
|
+
"file": "disclosure.r1cs",
|
|
37
|
+
"localPath": "build/disclosure.r1cs",
|
|
38
|
+
"bytes": 159840,
|
|
39
|
+
"sha256": "c8dc1ba76e133ebd39db020ce52b1d8587103209d83dbf02d7eb7545557042f0"
|
|
34
40
|
}
|
|
35
41
|
}
|
|
36
42
|
}
|
|
@@ -44,25 +50,31 @@
|
|
|
44
50
|
"versions": {
|
|
45
51
|
"1": {
|
|
46
52
|
"version": 1,
|
|
47
|
-
"vk_hash": "
|
|
53
|
+
"vk_hash": "0xcb629c918f2f1b0bd7c855a993762cc32fd6845c9899d5ab02eb66610b497742",
|
|
48
54
|
"artifacts": {
|
|
49
55
|
"wasm": {
|
|
50
56
|
"file": "transfer.wasm",
|
|
51
57
|
"localPath": "build/transfer_js/transfer.wasm",
|
|
52
|
-
"bytes":
|
|
53
|
-
"sha256": "
|
|
58
|
+
"bytes": 3360765,
|
|
59
|
+
"sha256": "5523070bc3f0eb828447a71460f16e32ec950f2d73c9166701a5876d4fbbde87"
|
|
54
60
|
},
|
|
55
61
|
"zkey": {
|
|
56
62
|
"file": "transfer_pk.zkey",
|
|
57
63
|
"localPath": "keys/transfer_pk.zkey",
|
|
58
|
-
"bytes":
|
|
59
|
-
"sha256": "
|
|
64
|
+
"bytes": 20544096,
|
|
65
|
+
"sha256": "f4c11bea8297201cdbec32e95fdd534d804e7bd468b907de0e25f3e1eb789dd0"
|
|
60
66
|
},
|
|
61
67
|
"vk_json": {
|
|
62
68
|
"file": "verification_key_transfer.json",
|
|
63
69
|
"localPath": "build/verification_key_transfer.json",
|
|
64
|
-
"bytes":
|
|
65
|
-
"sha256": "
|
|
70
|
+
"bytes": 4025,
|
|
71
|
+
"sha256": "cb629c918f2f1b0bd7c855a993762cc32fd6845c9899d5ab02eb66610b497742"
|
|
72
|
+
},
|
|
73
|
+
"r1cs": {
|
|
74
|
+
"file": "transfer.r1cs",
|
|
75
|
+
"localPath": "build/transfer.r1cs",
|
|
76
|
+
"bytes": 6651056,
|
|
77
|
+
"sha256": "05f3f983ae3bbb8255c4ee5fbd4e02b9228177ff8323b4b04d0dc9ab5a5dddc8"
|
|
66
78
|
}
|
|
67
79
|
}
|
|
68
80
|
}
|
|
@@ -76,25 +88,31 @@
|
|
|
76
88
|
"versions": {
|
|
77
89
|
"1": {
|
|
78
90
|
"version": 1,
|
|
79
|
-
"vk_hash": "
|
|
91
|
+
"vk_hash": "0x3f3cc59f0cb3f7f7b7e7003757d2e4b7f8bebbbfd8a3b3be14350dac712f1200",
|
|
80
92
|
"artifacts": {
|
|
81
93
|
"wasm": {
|
|
82
94
|
"file": "unshield.wasm",
|
|
83
95
|
"localPath": "build/unshield_js/unshield.wasm",
|
|
84
|
-
"bytes":
|
|
85
|
-
"sha256": "
|
|
96
|
+
"bytes": 2397657,
|
|
97
|
+
"sha256": "5a47445fac226c1e38e50f7576b3545adebc795c3f393ad046508cc4785f0134"
|
|
86
98
|
},
|
|
87
99
|
"zkey": {
|
|
88
100
|
"file": "unshield_pk.zkey",
|
|
89
101
|
"localPath": "keys/unshield_pk.zkey",
|
|
90
|
-
"bytes":
|
|
91
|
-
"sha256": "
|
|
102
|
+
"bytes": 5385308,
|
|
103
|
+
"sha256": "1b1f5fb0ef182789a19ceebab9c166fda496e2a86715407e3eb19bf5291d341e"
|
|
92
104
|
},
|
|
93
105
|
"vk_json": {
|
|
94
106
|
"file": "verification_key_unshield.json",
|
|
95
107
|
"localPath": "build/verification_key_unshield.json",
|
|
96
|
-
"bytes":
|
|
97
|
-
"sha256": "
|
|
108
|
+
"bytes": 3840,
|
|
109
|
+
"sha256": "3f3cc59f0cb3f7f7b7e7003757d2e4b7f8bebbbfd8a3b3be14350dac712f1200"
|
|
110
|
+
},
|
|
111
|
+
"r1cs": {
|
|
112
|
+
"file": "unshield.r1cs",
|
|
113
|
+
"localPath": "build/unshield.r1cs",
|
|
114
|
+
"bytes": 1605588,
|
|
115
|
+
"sha256": "981dad31ca0477d641c18c0fbfb2bce66925d3ec34661e1ebb75c91abbf80941"
|
|
98
116
|
}
|
|
99
117
|
}
|
|
100
118
|
}
|
|
@@ -108,7 +126,7 @@
|
|
|
108
126
|
"versions": {
|
|
109
127
|
"1": {
|
|
110
128
|
"version": 1,
|
|
111
|
-
"vk_hash": "
|
|
129
|
+
"vk_hash": "0xf2984f40f68aaa98e9a009410e5e3c2397f120e9055520615b27b0c771e8f82d",
|
|
112
130
|
"artifacts": {
|
|
113
131
|
"wasm": {
|
|
114
132
|
"file": "private_link.wasm",
|
|
@@ -120,13 +138,19 @@
|
|
|
120
138
|
"file": "private_link_pk.zkey",
|
|
121
139
|
"localPath": "keys/private_link_pk.zkey",
|
|
122
140
|
"bytes": 508588,
|
|
123
|
-
"sha256": "
|
|
141
|
+
"sha256": "fe4020bbaaeb0620fad444934becc26d0cc5a59258310d84f5f07665a7c6b4c7"
|
|
124
142
|
},
|
|
125
143
|
"vk_json": {
|
|
126
144
|
"file": "verification_key_private_link.json",
|
|
127
145
|
"localPath": "build/verification_key_private_link.json",
|
|
128
|
-
"bytes":
|
|
129
|
-
"sha256": "
|
|
146
|
+
"bytes": 3110,
|
|
147
|
+
"sha256": "f2984f40f68aaa98e9a009410e5e3c2397f120e9055520615b27b0c771e8f82d"
|
|
148
|
+
},
|
|
149
|
+
"r1cs": {
|
|
150
|
+
"file": "private_link.r1cs",
|
|
151
|
+
"localPath": "build/private_link.r1cs",
|
|
152
|
+
"bytes": 138248,
|
|
153
|
+
"sha256": "62b38b485b501d0423580c5f217f5cc088d46ead3956097cd893358df7b3fa8c"
|
|
130
154
|
}
|
|
131
155
|
}
|
|
132
156
|
}
|
package/package.json
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@orbinum/circuits",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"description": "Zero-Knowledge circuits for Orbinum privacy blockchain",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "index.d.ts",
|
|
7
7
|
"files": [
|
|
8
8
|
"*.wasm",
|
|
9
|
+
"*.r1cs",
|
|
9
10
|
"*.zkey",
|
|
10
11
|
"*.ark",
|
|
11
12
|
"*.json",
|
|
Binary file
|
package/private_link_pk.ark
CHANGED
|
Binary file
|
package/private_link_pk.zkey
CHANGED
|
Binary file
|
package/transfer.r1cs
ADDED
|
Binary file
|
package/transfer.wasm
CHANGED
|
Binary file
|
package/transfer_pk.ark
CHANGED
|
Binary file
|
package/transfer_pk.zkey
CHANGED
|
Binary file
|
package/unshield.r1cs
ADDED
|
Binary file
|
package/unshield.wasm
CHANGED
|
Binary file
|
package/unshield_pk.ark
CHANGED
|
Binary file
|
package/unshield_pk.zkey
CHANGED
|
Binary file
|
|
@@ -37,12 +37,12 @@
|
|
|
37
37
|
],
|
|
38
38
|
"vk_delta_2": [
|
|
39
39
|
[
|
|
40
|
-
"
|
|
41
|
-
"
|
|
40
|
+
"11993434680230805927722786325993282281923105767651836196791652746641637571269",
|
|
41
|
+
"6525480687424030368065502335087012208117969428852564375538459081830900980561"
|
|
42
42
|
],
|
|
43
43
|
[
|
|
44
|
-
"
|
|
45
|
-
"
|
|
44
|
+
"20502806777170369013223435966128438261670084763876814289934598085746088924484",
|
|
45
|
+
"21408889466292326203555760741784039705344994774984803445852664623336658748736"
|
|
46
46
|
],
|
|
47
47
|
[
|
|
48
48
|
"1",
|
|
@@ -37,12 +37,12 @@
|
|
|
37
37
|
],
|
|
38
38
|
"vk_delta_2": [
|
|
39
39
|
[
|
|
40
|
-
"
|
|
41
|
-
"
|
|
40
|
+
"4313919229801991653934894322372030340969598307333109883327024092744785239799",
|
|
41
|
+
"21737517222146897512836907360976383535128833822141342177206320877864719399707"
|
|
42
42
|
],
|
|
43
43
|
[
|
|
44
|
-
"
|
|
45
|
-
"
|
|
44
|
+
"18982554926822255992087599875864644043842669245180285320435898961284028724707",
|
|
45
|
+
"17168544745213844284159333087503426733152659905275935750049513651030519221031"
|
|
46
46
|
],
|
|
47
47
|
[
|
|
48
48
|
"1",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"protocol": "groth16",
|
|
3
3
|
"curve": "bn128",
|
|
4
|
-
"nPublic":
|
|
4
|
+
"nPublic": 7,
|
|
5
5
|
"vk_alpha_1": [
|
|
6
6
|
"20491192805390485299153009773594534940189261866228447918068658471970481763042",
|
|
7
7
|
"9383485363053290200918347156157836566562967994039712273449902621266178545958",
|
|
@@ -37,12 +37,12 @@
|
|
|
37
37
|
],
|
|
38
38
|
"vk_delta_2": [
|
|
39
39
|
[
|
|
40
|
-
"
|
|
41
|
-
"
|
|
40
|
+
"21343756600091506481002440288012097699481865595659540855907151998936386030592",
|
|
41
|
+
"14356893836585114937196939102349805994136772862175491210406565308285601522519"
|
|
42
42
|
],
|
|
43
43
|
[
|
|
44
|
-
"
|
|
45
|
-
"
|
|
44
|
+
"16327959164442841086246614058813530061491772033932305702541477921810932046089",
|
|
45
|
+
"15659987912218975957384796232876352173970820047126277099607617319372495286885"
|
|
46
46
|
],
|
|
47
47
|
[
|
|
48
48
|
"1",
|
|
@@ -81,33 +81,43 @@
|
|
|
81
81
|
],
|
|
82
82
|
"IC": [
|
|
83
83
|
[
|
|
84
|
-
"
|
|
85
|
-
"
|
|
84
|
+
"18787219007834814841096182623646107016205190740710151695526069997475928065780",
|
|
85
|
+
"20120664355363037570598442625576144265682413017676610272811462838013890674564",
|
|
86
86
|
"1"
|
|
87
87
|
],
|
|
88
88
|
[
|
|
89
|
-
"
|
|
90
|
-
"
|
|
89
|
+
"5421398432366681433617890885396156757131236314708583635166237425433980995687",
|
|
90
|
+
"15434315554593778972066893139024869554540012943877872766160614708400161761925",
|
|
91
91
|
"1"
|
|
92
92
|
],
|
|
93
93
|
[
|
|
94
|
-
"
|
|
95
|
-
"
|
|
94
|
+
"4919789772851440084381609248006903598442574183141745863307356750580938947857",
|
|
95
|
+
"5342808560495887025120724806174465546929091595983594768927002212920631858179",
|
|
96
96
|
"1"
|
|
97
97
|
],
|
|
98
98
|
[
|
|
99
|
-
"
|
|
100
|
-
"
|
|
99
|
+
"20360401651978644400401815090552549278977711590188208978541214195544337735242",
|
|
100
|
+
"5000169784427168931962507561009329117822304114414927247882155497373701165189",
|
|
101
101
|
"1"
|
|
102
102
|
],
|
|
103
103
|
[
|
|
104
|
-
"
|
|
105
|
-
"
|
|
104
|
+
"17044887283379556828952259263889022468655592192128516838198064474775607122561",
|
|
105
|
+
"11426388232069600018785695395582723467853934355072989863364793883377153484930",
|
|
106
106
|
"1"
|
|
107
107
|
],
|
|
108
108
|
[
|
|
109
|
-
"
|
|
110
|
-
"
|
|
109
|
+
"4238699764131622651668729385095163555264580772143528753149647295464517437842",
|
|
110
|
+
"18254998918333035320670615136232636249931854142125288996111813277598360176118",
|
|
111
|
+
"1"
|
|
112
|
+
],
|
|
113
|
+
[
|
|
114
|
+
"7262287201508887768455063698502079254802373940271253512063391045635043663246",
|
|
115
|
+
"4006640018783093606048070692787474033798642966676792235600409015747018390836",
|
|
116
|
+
"1"
|
|
117
|
+
],
|
|
118
|
+
[
|
|
119
|
+
"2767292722671152798487950928373221090852981259098169467784218357695082377791",
|
|
120
|
+
"10070366080989002244518855974531016837958086649239375977131685117326813064886",
|
|
111
121
|
"1"
|
|
112
122
|
]
|
|
113
123
|
]
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"protocol": "groth16",
|
|
3
3
|
"curve": "bn128",
|
|
4
|
-
"nPublic":
|
|
4
|
+
"nPublic": 6,
|
|
5
5
|
"vk_alpha_1": [
|
|
6
6
|
"20491192805390485299153009773594534940189261866228447918068658471970481763042",
|
|
7
7
|
"9383485363053290200918347156157836566562967994039712273449902621266178545958",
|
|
@@ -37,12 +37,12 @@
|
|
|
37
37
|
],
|
|
38
38
|
"vk_delta_2": [
|
|
39
39
|
[
|
|
40
|
-
"
|
|
41
|
-
"
|
|
40
|
+
"20070319455493507491299321986909756514670582188948755086048461311798888087409",
|
|
41
|
+
"21005033148099100659811508898854607675016080815663276770077840776931700808063"
|
|
42
42
|
],
|
|
43
43
|
[
|
|
44
|
-
"
|
|
45
|
-
"
|
|
44
|
+
"14372102490074769603691930242903632564128924032217414774333258025179633339966",
|
|
45
|
+
"5033074458707053932929755868365845975160985544108275398753849227012355052153"
|
|
46
46
|
],
|
|
47
47
|
[
|
|
48
48
|
"1",
|
|
@@ -81,33 +81,38 @@
|
|
|
81
81
|
],
|
|
82
82
|
"IC": [
|
|
83
83
|
[
|
|
84
|
-
"
|
|
85
|
-
"
|
|
84
|
+
"15405354109901283310068232257413416816879846039381954000563020729148043310847",
|
|
85
|
+
"12492988294433229052064031664920885553637757809341078505606621791218779211003",
|
|
86
86
|
"1"
|
|
87
87
|
],
|
|
88
88
|
[
|
|
89
|
-
"
|
|
90
|
-
"
|
|
89
|
+
"21029711156392545345076917086965836872956726857770447004575943252720493596008",
|
|
90
|
+
"18632642959456872234776790710300764745943575337311360178808456361512794722848",
|
|
91
91
|
"1"
|
|
92
92
|
],
|
|
93
93
|
[
|
|
94
|
-
"
|
|
95
|
-
"
|
|
94
|
+
"15923868803388916485143997169804957546135028743501258507549988511618670662182",
|
|
95
|
+
"5320442547963821099942543296347054919958979081537211596971516055153417774954",
|
|
96
96
|
"1"
|
|
97
97
|
],
|
|
98
98
|
[
|
|
99
|
-
"
|
|
100
|
-
"
|
|
99
|
+
"6835562792072090651898345247205709434209107366705063705945198258918495012841",
|
|
100
|
+
"11755224037472137926043279412122017692637056266155755162382854710873900853549",
|
|
101
101
|
"1"
|
|
102
102
|
],
|
|
103
103
|
[
|
|
104
|
-
"
|
|
105
|
-
"
|
|
104
|
+
"9733851958284875677027353344317314979021451581754781004552872740757587899342",
|
|
105
|
+
"9348132840099169445351207312826473123872677945073695866632075816052554455499",
|
|
106
106
|
"1"
|
|
107
107
|
],
|
|
108
108
|
[
|
|
109
|
-
"
|
|
110
|
-
"
|
|
109
|
+
"13248849963545456944473120592502116801904701759955511801158624790264716786374",
|
|
110
|
+
"7161404509833424670229997117161409196721093929555246204200189213824689841013",
|
|
111
|
+
"1"
|
|
112
|
+
],
|
|
113
|
+
[
|
|
114
|
+
"729410642178751948111283382515746216763935849039681726440305165454620064260",
|
|
115
|
+
"9061553743980573787545212167683989030827608910031365530259121964846676194884",
|
|
111
116
|
"1"
|
|
112
117
|
]
|
|
113
118
|
]
|