@maci-protocol/sdk 0.0.0-ci.9342f07 → 0.0.0-ci.9819a21

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.
Files changed (212) hide show
  1. package/LICENSE +1 -2
  2. package/build/package.json +16 -8
  3. package/build/ts/browser/index.d.ts +4 -2
  4. package/build/ts/browser/index.d.ts.map +1 -1
  5. package/build/ts/browser/index.js +7 -1
  6. package/build/ts/browser/index.js.map +1 -1
  7. package/build/ts/browser/joinPoll.d.ts +4 -2
  8. package/build/ts/browser/joinPoll.d.ts.map +1 -1
  9. package/build/ts/browser/joinPoll.js +21 -17
  10. package/build/ts/browser/joinPoll.js.map +1 -1
  11. package/build/ts/browser/utils.d.ts +2 -2
  12. package/build/ts/browser/utils.d.ts.map +1 -1
  13. package/build/ts/browser/utils.js +3 -3
  14. package/build/ts/browser/utils.js.map +1 -1
  15. package/build/ts/deploy/index.d.ts +2 -2
  16. package/build/ts/deploy/index.d.ts.map +1 -1
  17. package/build/ts/deploy/index.js +3 -3
  18. package/build/ts/deploy/index.js.map +1 -1
  19. package/build/ts/deploy/maci.js +1 -1
  20. package/build/ts/deploy/maci.js.map +1 -1
  21. package/build/ts/deploy/poll.d.ts +1 -1
  22. package/build/ts/deploy/poll.d.ts.map +1 -1
  23. package/build/ts/deploy/poll.js +13 -9
  24. package/build/ts/deploy/poll.js.map +1 -1
  25. package/build/ts/deploy/types.d.ts +19 -10
  26. package/build/ts/deploy/types.d.ts.map +1 -1
  27. package/build/ts/deploy/utils.js +1 -1
  28. package/build/ts/deploy/utils.js.map +1 -1
  29. package/build/ts/deploy/verifyingKeysRegistry.d.ts +7 -0
  30. package/build/ts/deploy/verifyingKeysRegistry.d.ts.map +1 -0
  31. package/build/ts/deploy/verifyingKeysRegistry.js +14 -0
  32. package/build/ts/deploy/verifyingKeysRegistry.js.map +1 -0
  33. package/build/ts/index.d.ts +3 -2
  34. package/build/ts/index.d.ts.map +1 -1
  35. package/build/ts/index.js +16 -9
  36. package/build/ts/index.js.map +1 -1
  37. package/build/ts/maci/state.d.ts +1 -1
  38. package/build/ts/maci/state.js +8 -8
  39. package/build/ts/maci/state.js.map +1 -1
  40. package/build/ts/maci/types.d.ts +1 -1
  41. package/build/ts/maciKeys/__tests__/keypair.test.js +7 -7
  42. package/build/ts/maciKeys/__tests__/keypair.test.js.map +1 -1
  43. package/build/ts/maciKeys/__tests__/publicKeys.test.js +7 -7
  44. package/build/ts/maciKeys/__tests__/publicKeys.test.js.map +1 -1
  45. package/build/ts/maciKeys/keypair.d.ts.map +1 -1
  46. package/build/ts/maciKeys/keypair.js +4 -3
  47. package/build/ts/maciKeys/keypair.js.map +1 -1
  48. package/build/ts/maciKeys/publicKeys.d.ts +2 -2
  49. package/build/ts/maciKeys/publicKeys.d.ts.map +1 -1
  50. package/build/ts/maciKeys/publicKeys.js +6 -6
  51. package/build/ts/maciKeys/publicKeys.js.map +1 -1
  52. package/build/ts/maciKeys/types.d.ts +5 -0
  53. package/build/ts/maciKeys/types.d.ts.map +1 -1
  54. package/build/ts/poll/poll.d.ts.map +1 -1
  55. package/build/ts/poll/poll.js +9 -9
  56. package/build/ts/poll/poll.js.map +1 -1
  57. package/build/ts/poll/types.d.ts +6 -6
  58. package/build/ts/poll/types.d.ts.map +1 -1
  59. package/build/ts/proof/__tests__/download.test.js +8 -5
  60. package/build/ts/proof/__tests__/download.test.js.map +1 -1
  61. package/build/ts/proof/download.d.ts +3 -3
  62. package/build/ts/proof/download.d.ts.map +1 -1
  63. package/build/ts/proof/download.js +5 -7
  64. package/build/ts/proof/download.js.map +1 -1
  65. package/build/ts/proof/generate.d.ts +2 -2
  66. package/build/ts/proof/generate.d.ts.map +1 -1
  67. package/build/ts/proof/generate.js +29 -23
  68. package/build/ts/proof/generate.js.map +1 -1
  69. package/build/ts/proof/prove.js +13 -13
  70. package/build/ts/proof/prove.js.map +1 -1
  71. package/build/ts/proof/types.d.ts +40 -14
  72. package/build/ts/proof/types.d.ts.map +1 -1
  73. package/build/ts/proof/utils.d.ts +10 -0
  74. package/build/ts/proof/utils.d.ts.map +1 -0
  75. package/build/ts/proof/utils.js +24 -0
  76. package/build/ts/proof/utils.js.map +1 -0
  77. package/build/ts/relayer/__tests__/messages.test.js +1 -1
  78. package/build/ts/relayer/__tests__/messages.test.js.map +1 -1
  79. package/build/ts/relayer/__tests__/utils.test.js +3 -3
  80. package/build/ts/relayer/__tests__/utils.test.js.map +1 -1
  81. package/build/ts/relayer/messages.js +1 -1
  82. package/build/ts/relayer/utils.js +1 -1
  83. package/build/ts/relayer/utils.js.map +1 -1
  84. package/build/ts/subgraph/index.d.ts +3 -0
  85. package/build/ts/subgraph/index.d.ts.map +1 -0
  86. package/build/ts/subgraph/index.js +18 -0
  87. package/build/ts/subgraph/index.js.map +1 -0
  88. package/build/ts/subgraph/maciSubgraph.d.ts +28 -0
  89. package/build/ts/subgraph/maciSubgraph.d.ts.map +1 -0
  90. package/build/ts/subgraph/maciSubgraph.js +64 -0
  91. package/build/ts/subgraph/maciSubgraph.js.map +1 -0
  92. package/build/ts/subgraph/types.d.ts +20 -0
  93. package/build/ts/subgraph/types.d.ts.map +1 -0
  94. package/build/ts/subgraph/types.js +3 -0
  95. package/build/ts/subgraph/types.js.map +1 -0
  96. package/build/ts/tally/commitments.d.ts.map +1 -1
  97. package/build/ts/tally/commitments.js +8 -7
  98. package/build/ts/tally/commitments.js.map +1 -1
  99. package/build/ts/tally/index.d.ts +2 -1
  100. package/build/ts/tally/index.d.ts.map +1 -1
  101. package/build/ts/tally/index.js +5 -1
  102. package/build/ts/tally/index.js.map +1 -1
  103. package/build/ts/tally/results.d.ts +20 -0
  104. package/build/ts/tally/results.d.ts.map +1 -0
  105. package/build/ts/tally/results.js +49 -0
  106. package/build/ts/tally/results.js.map +1 -0
  107. package/build/ts/tally/types.d.ts +55 -15
  108. package/build/ts/tally/types.d.ts.map +1 -1
  109. package/build/ts/tally/utils.d.ts +3 -3
  110. package/build/ts/tally/utils.d.ts.map +1 -1
  111. package/build/ts/tally/utils.js +10 -10
  112. package/build/ts/tally/utils.js.map +1 -1
  113. package/build/ts/tally/verification.d.ts +1 -1
  114. package/build/ts/tally/verification.d.ts.map +1 -1
  115. package/build/ts/tally/verification.js +10 -10
  116. package/build/ts/tally/verification.js.map +1 -1
  117. package/build/ts/trees/index.d.ts +2 -2
  118. package/build/ts/trees/index.d.ts.map +1 -1
  119. package/build/ts/trees/index.js +3 -1
  120. package/build/ts/trees/index.js.map +1 -1
  121. package/build/ts/trees/stateTree.d.ts +23 -1
  122. package/build/ts/trees/stateTree.d.ts.map +1 -1
  123. package/build/ts/trees/stateTree.js +74 -13
  124. package/build/ts/trees/stateTree.js.map +1 -1
  125. package/build/ts/trees/types.d.ts +11 -2
  126. package/build/ts/trees/types.d.ts.map +1 -1
  127. package/build/ts/user/index.d.ts +2 -2
  128. package/build/ts/user/index.d.ts.map +1 -1
  129. package/build/ts/user/index.js +5 -1
  130. package/build/ts/user/index.js.map +1 -1
  131. package/build/ts/user/joinPoll.d.ts +1 -1
  132. package/build/ts/user/joinPoll.d.ts.map +1 -1
  133. package/build/ts/user/joinPoll.js +11 -11
  134. package/build/ts/user/joinPoll.js.map +1 -1
  135. package/build/ts/user/signup.d.ts +3 -3
  136. package/build/ts/user/signup.d.ts.map +1 -1
  137. package/build/ts/user/signup.js +26 -21
  138. package/build/ts/user/signup.js.map +1 -1
  139. package/build/ts/user/types.d.ts +63 -19
  140. package/build/ts/user/types.d.ts.map +1 -1
  141. package/build/ts/user/utils.d.ts +34 -14
  142. package/build/ts/user/utils.d.ts.map +1 -1
  143. package/build/ts/user/utils.js +91 -57
  144. package/build/ts/user/utils.js.map +1 -1
  145. package/build/ts/utils/index.d.ts +1 -1
  146. package/build/ts/utils/index.d.ts.map +1 -1
  147. package/build/ts/utils/index.js +2 -1
  148. package/build/ts/utils/index.js.map +1 -1
  149. package/build/ts/utils/params.d.ts +1 -1
  150. package/build/ts/utils/params.d.ts.map +1 -1
  151. package/build/ts/utils/params.js +3 -3
  152. package/build/ts/utils/params.js.map +1 -1
  153. package/build/ts/utils/proofs.d.ts +2 -2
  154. package/build/ts/utils/proofs.d.ts.map +1 -1
  155. package/build/ts/utils/proofs.js +4 -4
  156. package/build/ts/utils/proofs.js.map +1 -1
  157. package/build/ts/utils/types.d.ts +2 -2
  158. package/build/ts/utils/types.d.ts.map +1 -1
  159. package/build/ts/utils/utils.d.ts +5 -0
  160. package/build/ts/utils/utils.d.ts.map +1 -1
  161. package/build/ts/utils/utils.js +13 -1
  162. package/build/ts/utils/utils.js.map +1 -1
  163. package/build/ts/verifyingKeys/checkVerifyingKeys.d.ts +1 -1
  164. package/build/ts/verifyingKeys/checkVerifyingKeys.d.ts.map +1 -1
  165. package/build/ts/verifyingKeys/checkVerifyingKeys.js +18 -19
  166. package/build/ts/verifyingKeys/checkVerifyingKeys.js.map +1 -1
  167. package/build/ts/verifyingKeys/index.d.ts +2 -2
  168. package/build/ts/verifyingKeys/index.d.ts.map +1 -1
  169. package/build/ts/verifyingKeys/index.js +5 -5
  170. package/build/ts/verifyingKeys/index.js.map +1 -1
  171. package/build/ts/verifyingKeys/setVerifyingKeys.d.ts +1 -1
  172. package/build/ts/verifyingKeys/setVerifyingKeys.d.ts.map +1 -1
  173. package/build/ts/verifyingKeys/setVerifyingKeys.js +75 -41
  174. package/build/ts/verifyingKeys/setVerifyingKeys.js.map +1 -1
  175. package/build/ts/verifyingKeys/types.d.ts +56 -48
  176. package/build/ts/verifyingKeys/types.d.ts.map +1 -1
  177. package/build/ts/verifyingKeys/utils.d.ts +10 -10
  178. package/build/ts/verifyingKeys/utils.d.ts.map +1 -1
  179. package/build/ts/verifyingKeys/utils.js +75 -60
  180. package/build/ts/verifyingKeys/utils.js.map +1 -1
  181. package/build/ts/vote/generate.d.ts +1 -1
  182. package/build/ts/vote/generate.d.ts.map +1 -1
  183. package/build/ts/vote/generate.js +4 -4
  184. package/build/ts/vote/generate.js.map +1 -1
  185. package/build/ts/vote/index.d.ts +2 -1
  186. package/build/ts/vote/index.d.ts.map +1 -1
  187. package/build/ts/vote/index.js +4 -2
  188. package/build/ts/vote/index.js.map +1 -1
  189. package/build/ts/vote/invalidate.js +4 -4
  190. package/build/ts/vote/invalidate.js.map +1 -1
  191. package/build/ts/vote/publish.d.ts +1 -1
  192. package/build/ts/vote/publish.d.ts.map +1 -1
  193. package/build/ts/vote/publish.js +19 -19
  194. package/build/ts/vote/publish.js.map +1 -1
  195. package/build/ts/vote/submit.js +2 -2
  196. package/build/ts/vote/submit.js.map +1 -1
  197. package/build/ts/vote/types.d.ts +6 -6
  198. package/build/ts/vote/types.d.ts.map +1 -1
  199. package/build/ts/vote/utils.d.ts +2 -2
  200. package/build/ts/vote/utils.d.ts.map +1 -1
  201. package/build/ts/vote/utils.js +5 -5
  202. package/build/ts/vote/utils.js.map +1 -1
  203. package/build/tsconfig.build.tsbuildinfo +1 -1
  204. package/package.json +22 -14
  205. package/build/ts/deploy/vkRegistry.d.ts +0 -7
  206. package/build/ts/deploy/vkRegistry.d.ts.map +0 -1
  207. package/build/ts/deploy/vkRegistry.js +0 -14
  208. package/build/ts/deploy/vkRegistry.js.map +0 -1
  209. package/build/ts/proof/constants.d.ts +0 -17
  210. package/build/ts/proof/constants.d.ts.map +0 -1
  211. package/build/ts/proof/constants.js +0 -20
  212. package/build/ts/proof/constants.js.map +0 -1
@@ -1,14 +1,14 @@
1
1
  import type { EMode } from "@maci-protocol/contracts";
2
- import type { IVkContractParams, VerifyingKey } from "@maci-protocol/domainobjs";
2
+ import type { IVerifyingKeyContractParams, VerifyingKey } from "@maci-protocol/domainobjs";
3
3
  import type { Signer } from "ethers";
4
4
  /**
5
- * Arguments for the getAllVks function
5
+ * Arguments for the getAllVerifyingKeys function
6
6
  */
7
- export interface IGetAllVksArgs {
7
+ export interface IGetAllVerifyingKeysArgs {
8
8
  /**
9
- * The address of the VkRegistry contract
9
+ * The address of the VerifyingKeysRegistry contract
10
10
  */
11
- vkRegistryAddress: string;
11
+ verifyingKeysRegistryAddress: string;
12
12
  /**
13
13
  * The signer to use for the contract calls
14
14
  */
@@ -28,7 +28,7 @@ export interface IGetAllVksArgs {
28
28
  /**
29
29
  * The depth of the ballot tree
30
30
  */
31
- intStateTreeDepth: number;
31
+ tallyProcessingStateTreeDepth: number;
32
32
  /**
33
33
  * The mode to use for the contract calls
34
34
  */
@@ -37,28 +37,28 @@ export interface IGetAllVksArgs {
37
37
  /**
38
38
  * MACI's verifying keys
39
39
  */
40
- export interface IMaciVerifyingKeys {
40
+ export interface IMaciVerifyingKeysOnchain {
41
41
  /**
42
42
  * The verifying key for the poll joining circuit
43
43
  */
44
- pollJoiningVkOnChain: IVkContractParams;
44
+ pollJoiningVerifyingKeyOnChain: IVerifyingKeyContractParams;
45
45
  /**
46
46
  * The verifying key for the poll joined circuit
47
47
  */
48
- pollJoinedVkOnChain: IVkContractParams;
48
+ pollJoinedVerifyingKeyOnChain: IVerifyingKeyContractParams;
49
49
  /**
50
50
  * The verifying key for the process messages circuit
51
51
  */
52
- processVkOnChain: IVkContractParams;
52
+ processVerifyingKeyOnChain: IVerifyingKeyContractParams;
53
53
  /**
54
54
  * The verifying key for the tally votes circuit
55
55
  */
56
- tallyVkOnChain: IVkContractParams;
56
+ tallyVerifyingKeyOnChain: IVerifyingKeyContractParams;
57
57
  }
58
58
  /**
59
- * Arguments for the extractAllVks function
59
+ * Arguments for the extractAllVerifyingKeys function
60
60
  */
61
- export interface IExtractAllVksArgs {
61
+ export interface IExtractAllVerifyingKeysArgs {
62
62
  /**
63
63
  * The path to the poll joining zkey
64
64
  */
@@ -70,61 +70,65 @@ export interface IExtractAllVksArgs {
70
70
  /**
71
71
  * The path to the process messages zkey
72
72
  */
73
- processMessagesZkeyPath?: string;
73
+ messageProcessorZkeyPath?: string;
74
74
  /**
75
75
  * The path to the tally votes zkey
76
76
  */
77
- tallyVotesZkeyPath?: string;
77
+ voteTallyZkeyPath?: string;
78
78
  }
79
79
  /**
80
80
  * Maci verifying keys
81
81
  */
82
- export interface IMaciVks {
82
+ export interface IMaciVerifyingKeys {
83
83
  /**
84
84
  * The poll joining verifying key
85
85
  */
86
- pollJoiningVk?: VerifyingKey;
86
+ pollJoiningVerifyingKey?: VerifyingKey;
87
87
  /**
88
88
  * The poll joined verifying key
89
89
  */
90
- pollJoinedVk?: VerifyingKey;
90
+ pollJoinedVerifyingKey?: VerifyingKey;
91
91
  /**
92
92
  * The message processing verifying key
93
93
  */
94
- processVk?: VerifyingKey;
94
+ processVerifyingKey?: VerifyingKey;
95
95
  /**
96
96
  * The tally verifying key
97
97
  */
98
- tallyVk?: VerifyingKey;
98
+ tallyVerifyingKey?: VerifyingKey;
99
99
  }
100
100
  /**
101
101
  * The arguments for the setVerifyingKeys function
102
102
  */
103
103
  export interface ISetVerifyingKeysArgs {
104
104
  /**
105
- * The polll joining Vk object
105
+ * The polll joining verifying key object
106
106
  */
107
- pollJoiningVk: VerifyingKey;
107
+ pollJoiningVerifyingKey: VerifyingKey;
108
108
  /**
109
- * The poll joined Vk object
109
+ * The poll joined verifying key object
110
110
  */
111
- pollJoinedVk: VerifyingKey;
111
+ pollJoinedVerifyingKey: VerifyingKey;
112
112
  /**
113
- * The process messages Vk object
113
+ * The process messages verifying keys array
114
114
  */
115
- processMessagesVk: VerifyingKey;
115
+ processMessagesVerifyingKeys: VerifyingKey[];
116
116
  /**
117
- * The tally votes Vk object
117
+ * The tally votes verifying keys array
118
118
  */
119
- tallyVotesVk: VerifyingKey;
119
+ tallyVotesVerifyingKeys: VerifyingKey[];
120
120
  /**
121
121
  * The state tree depth
122
122
  */
123
123
  stateTreeDepth: number;
124
+ /**
125
+ * The poll state tree depth
126
+ */
127
+ pollStateTreeDepth: number;
124
128
  /**
125
129
  * The intermediate state tree depth (ballot tree)
126
130
  */
127
- intStateTreeDepth: number;
131
+ tallyProcessingStateTreeDepth: number;
128
132
  /**
129
133
  * The vote option tree depth
130
134
  */
@@ -134,17 +138,17 @@ export interface ISetVerifyingKeysArgs {
134
138
  */
135
139
  messageBatchSize: number;
136
140
  /**
137
- * The VkRegistry contract address
141
+ * The VerifyingKeysRegistry contract address
138
142
  */
139
- vkRegistryAddress: string;
143
+ verifyingKeysRegistryAddress: string;
140
144
  /**
141
145
  * The signer
142
146
  */
143
147
  signer: Signer;
144
148
  /**
145
- * QV or NON_QV
149
+ * QV, NON_QV or FULL
146
150
  */
147
- mode: EMode;
151
+ modes: EMode[];
148
152
  }
149
153
  /**
150
154
  * Interface for the arguments to the checkVerifyingKeys command
@@ -157,7 +161,7 @@ export interface ICheckVerifyingKeysArgs {
157
161
  /**
158
162
  * The depth of the state subtree
159
163
  */
160
- intStateTreeDepth: number;
164
+ tallyProcessingStateTreeDepth: number;
161
165
  /**
162
166
  * The depth of the vote option tree
163
167
  */
@@ -177,28 +181,28 @@ export interface ICheckVerifyingKeysArgs {
177
181
  /**
178
182
  * The path to the process messages zkey
179
183
  */
180
- processMessagesZkeyPath: string;
184
+ messageProcessorZkeyPath: string;
181
185
  /**
182
186
  * The path to the tally votes zkey
183
187
  */
184
- tallyVotesZkeyPath: string;
188
+ voteTallyZkeyPath: string;
185
189
  /**
186
190
  * A signer object
187
191
  */
188
192
  signer: Signer;
189
193
  /**
190
- * The address of the VkRegistry contract
194
+ * The address of the VerifyingKeysRegistry contract
191
195
  */
192
- vkRegistry: string;
196
+ verifyingKeysRegistry: string;
193
197
  /**
194
- * Whether to use quadratic voting or not
198
+ * Voting mode
195
199
  */
196
- useQuadraticVoting?: boolean;
200
+ mode?: EMode;
197
201
  }
198
202
  /**
199
- * Interface for the arguments to the extractVkToFile command
203
+ * Interface for the arguments to the extractVerifyingKeyToFile command
200
204
  */
201
- export interface IExtractVkToFileArgs {
205
+ export interface IExtractVerifyingKeyToFileArgs {
202
206
  /**
203
207
  * File path for poll joining zkey
204
208
  */
@@ -210,21 +214,25 @@ export interface IExtractVkToFileArgs {
210
214
  /**
211
215
  * File path for processMessagesQv zkey
212
216
  */
213
- processMessagesZkeyPathQv: string;
217
+ messageProcessorZkeyPathQv: string;
214
218
  /**
215
219
  * File path for tallyVotesQv zkey
216
220
  */
217
- tallyVotesZkeyPathQv: string;
221
+ voteTallyZkeyPathQv: string;
218
222
  /**
219
223
  * File path for processMessagesNonQv zkey
220
224
  */
221
- processMessagesZkeyPathNonQv: string;
225
+ messageProcessorZkeyPathNonQv: string;
226
+ /**
227
+ * File path for MessageProcessor zkey
228
+ */
229
+ messageProcessorZkeyPathFull: string;
222
230
  /**
223
- * File path for tallyVotes zkey
231
+ * File path for VoteTally zkey
224
232
  */
225
- tallyVotesZkeyPathNonQv: string;
233
+ voteTallyZkeyPathNonQv: string;
226
234
  /**
227
- * Output file path of extracted vkeys
235
+ * Output file path of extracted verifying keys
228
236
  */
229
237
  outputFilePath: string;
230
238
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../ts/verifyingKeys/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACjF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,mBAAmB,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,oBAAoB,EAAE,iBAAiB,CAAC;IACxC;;OAEG;IACH,mBAAmB,EAAE,iBAAiB,CAAC;IACvC;;OAEG;IACH,gBAAgB,EAAE,iBAAiB,CAAC;IACpC;;OAEG;IACH,cAAc,EAAE,iBAAiB,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC;;OAEG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB;;OAEG;IACH,aAAa,CAAC,EAAE,YAAY,CAAC;IAE7B;;OAEG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAE5B;;OAEG;IACH,SAAS,CAAC,EAAE,YAAY,CAAC;IAEzB;;OAEG;IACH,OAAO,CAAC,EAAE,YAAY,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,aAAa,EAAE,YAAY,CAAC;IAE5B;;OAEG;IACH,YAAY,EAAE,YAAY,CAAC;IAE3B;;OAEG;IACH,iBAAiB,EAAE,YAAY,CAAC;IAEhC;;OAEG;IACH,YAAY,EAAE,YAAY,CAAC;IAE3B;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,mBAAmB,EAAE,MAAM,CAAC;IAE5B;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,mBAAmB,EAAE,MAAM,CAAC;IAE5B;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,mBAAmB,EAAE,MAAM,CAAC;IAE5B;;OAEG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,uBAAuB,EAAE,MAAM,CAAC;IAEhC;;OAEG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,mBAAmB,EAAE,MAAM,CAAC;IAE5B;;OAEG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,yBAAyB,EAAE,MAAM,CAAC;IAElC;;OAEG;IACH,oBAAoB,EAAE,MAAM,CAAC;IAE7B;;OAEG;IACH,4BAA4B,EAAE,MAAM,CAAC;IAErC;;OAEG;IACH,uBAAuB,EAAE,MAAM,CAAC;IAEhC;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC;CACxB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../ts/verifyingKeys/types.ts"],"names":[],"mappings":"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"}
@@ -1,29 +1,29 @@
1
- import { type IVkContractParams, VerifyingKey } from "@maci-protocol/domainobjs";
2
- import type { IGetAllVksArgs, IExtractAllVksArgs, IMaciVks, IMaciVerifyingKeys, IExtractVkToFileArgs } from "./types";
1
+ import { type IVerifyingKeyContractParams, VerifyingKey } from "@maci-protocol/domainobjs";
2
+ import type { IGetAllVerifyingKeysArgs, IExtractAllVerifyingKeysArgs, IMaciVerifyingKeys, IMaciVerifyingKeysOnchain, IExtractVerifyingKeyToFileArgs } from "./types";
3
3
  /**
4
4
  * Get all the verifying keys from the contract
5
- * @param args - The arguments for the getAllVks function
5
+ * @param args - The arguments for the getAllVerifyingKeys function
6
6
  * @returns The verifying keys
7
7
  */
8
- export declare const getAllOnChainVks: ({ vkRegistryAddress, signer, stateTreeDepth, voteOptionTreeDepth, messageBatchSize, intStateTreeDepth, mode, }: IGetAllVksArgs) => Promise<IMaciVerifyingKeys>;
8
+ export declare const getAllOnChainVerifyingKeys: ({ verifyingKeysRegistryAddress, signer, stateTreeDepth, voteOptionTreeDepth, messageBatchSize, tallyProcessingStateTreeDepth, mode, }: IGetAllVerifyingKeysArgs) => Promise<IMaciVerifyingKeysOnchain>;
9
9
  /**
10
10
  * Compare two verifying keys
11
- * @param vkOnChain - the verifying key on chain
12
- * @param vk - the local verifying key
11
+ * @param verifyingKeyOnChain - the verifying key on chain
12
+ * @param verifyingKey - the local verifying key
13
13
  * @returns whether they are equal or not
14
14
  */
15
- export declare const compareVks: (vkOnChain: VerifyingKey | IVkContractParams, vk?: VerifyingKey | IVkContractParams) => boolean;
15
+ export declare const compareVerifyingKeys: (verifyingKeyOnChain: VerifyingKey | IVerifyingKeyContractParams, verifyingKey?: VerifyingKey | IVerifyingKeyContractParams) => boolean;
16
16
  /**
17
17
  * Extract all the verifying keys
18
- * @param args - The arguments for the extractAllVks function
18
+ * @param args - The arguments for the extractAllVerifyingKeys function
19
19
  * @returns The verifying keys
20
20
  */
21
- export declare const extractAllVks: ({ pollJoiningZkeyPath, pollJoinedZkeyPath, processMessagesZkeyPath, tallyVotesZkeyPath, }: IExtractAllVksArgs) => Promise<IMaciVks>;
21
+ export declare const extractAllVerifyingKeys: ({ pollJoiningZkeyPath, pollJoinedZkeyPath, messageProcessorZkeyPath, voteTallyZkeyPath, }: IExtractAllVerifyingKeysArgs) => Promise<IMaciVerifyingKeys>;
22
22
  /**
23
23
  * Command to confirm that the verifying keys in the contract match the local ones
24
24
  * @note see different options for zkey files to use specific circuits https://maci.pse.dev/docs/trusted-setup, https://maci.pse.dev/docs/testing/#pre-compiled-artifacts-for-testing
25
25
  * @param args The arguments for the checkVerifyingKeys command
26
26
  * @returns Whether the verifying keys match or not
27
27
  */
28
- export declare const extractVkToFile: ({ processMessagesZkeyPathQv, tallyVotesZkeyPathQv, processMessagesZkeyPathNonQv, pollJoinedZkeyPath, pollJoiningZkeyPath, tallyVotesZkeyPathNonQv, outputFilePath, }: IExtractVkToFileArgs) => Promise<void>;
28
+ export declare const extractVerifyingKeyToFile: ({ messageProcessorZkeyPathQv, voteTallyZkeyPathQv, messageProcessorZkeyPathNonQv, messageProcessorZkeyPathFull, pollJoinedZkeyPath, pollJoiningZkeyPath, voteTallyZkeyPathNonQv, outputFilePath, }: IExtractVerifyingKeyToFileArgs) => Promise<void>;
29
29
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../ts/verifyingKeys/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,iBAAiB,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAIjF,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,QAAQ,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEtH;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAU,gHAQpC,cAAc,KAAG,OAAO,CAAC,kBAAkB,CAgB7C,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GACrB,WAAW,YAAY,GAAG,iBAAiB,EAC3C,KAAK,YAAY,GAAG,iBAAiB,KACpC,OA2BF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAU,2FAKjC,kBAAkB,KAAG,OAAO,CAAC,QAAQ,CAgBvC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAAU,sKAQnC,oBAAoB,KAAG,OAAO,CAAC,IAAI,CAcrC,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../ts/verifyingKeys/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,2BAA2B,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAI3F,OAAO,KAAK,EACV,wBAAwB,EACxB,4BAA4B,EAC5B,kBAAkB,EAClB,yBAAyB,EACzB,8BAA8B,EAC/B,MAAM,SAAS,CAAC;AAEjB;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,GAAU,uIAQ9C,wBAAwB,KAAG,OAAO,CAAC,yBAAyB,CAqB9D,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,GAC/B,qBAAqB,YAAY,GAAG,2BAA2B,EAC/D,eAAe,YAAY,GAAG,2BAA2B,KACxD,OA2BF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,GAAU,2FAK3C,4BAA4B,KAAG,OAAO,CAAC,kBAAkB,CAsB3D,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,GAAU,oMAS7C,8BAA8B,KAAG,OAAO,CAAC,IAAI,CA+B/C,CAAC"}
@@ -3,101 +3,116 @@ 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
- exports.extractVkToFile = exports.extractAllVks = exports.compareVks = exports.getAllOnChainVks = void 0;
6
+ exports.extractVerifyingKeyToFile = exports.extractAllVerifyingKeys = exports.compareVerifyingKeys = exports.getAllOnChainVerifyingKeys = void 0;
7
7
  const contracts_1 = require("@maci-protocol/contracts");
8
8
  const typechain_types_1 = require("@maci-protocol/contracts/typechain-types");
9
9
  const domainobjs_1 = require("@maci-protocol/domainobjs");
10
10
  const fs_1 = __importDefault(require("fs"));
11
11
  /**
12
12
  * Get all the verifying keys from the contract
13
- * @param args - The arguments for the getAllVks function
13
+ * @param args - The arguments for the getAllVerifyingKeys function
14
14
  * @returns The verifying keys
15
15
  */
16
- const getAllOnChainVks = async ({ vkRegistryAddress, signer, stateTreeDepth, voteOptionTreeDepth, messageBatchSize, intStateTreeDepth, mode, }) => {
17
- const vkRegistryContractInstance = typechain_types_1.VkRegistry__factory.connect(vkRegistryAddress, signer);
18
- const [pollJoiningVkOnChain, pollJoinedVkOnChain, processVkOnChain, tallyVkOnChain] = await Promise.all([
19
- vkRegistryContractInstance.getPollJoiningVk(stateTreeDepth),
20
- vkRegistryContractInstance.getPollJoinedVk(stateTreeDepth),
21
- vkRegistryContractInstance.getProcessVk(stateTreeDepth, voteOptionTreeDepth, messageBatchSize, mode),
22
- vkRegistryContractInstance.getTallyVk(stateTreeDepth, intStateTreeDepth, voteOptionTreeDepth, mode),
16
+ const getAllOnChainVerifyingKeys = async ({ verifyingKeysRegistryAddress, signer, stateTreeDepth, voteOptionTreeDepth, messageBatchSize, tallyProcessingStateTreeDepth, mode, }) => {
17
+ const contract = typechain_types_1.VerifyingKeysRegistry__factory.connect(verifyingKeysRegistryAddress, signer);
18
+ const [pollJoiningVerifyingKeyOnChain, pollJoinedVerifyingKeyOnChain, processVerifyingKeyOnChain, tallyVerifyingKeyOnChain,] = await Promise.all([
19
+ contract.getPollJoiningVerifyingKey(stateTreeDepth),
20
+ contract.getPollJoinedVerifyingKey(stateTreeDepth),
21
+ contract.getProcessVerifyingKey(stateTreeDepth, voteOptionTreeDepth, messageBatchSize, mode),
22
+ contract.getTallyVerifyingKey(stateTreeDepth, tallyProcessingStateTreeDepth, voteOptionTreeDepth, mode),
23
23
  ]);
24
24
  return {
25
- pollJoiningVkOnChain,
26
- pollJoinedVkOnChain,
27
- processVkOnChain,
28
- tallyVkOnChain,
25
+ pollJoiningVerifyingKeyOnChain,
26
+ pollJoinedVerifyingKeyOnChain,
27
+ processVerifyingKeyOnChain,
28
+ tallyVerifyingKeyOnChain,
29
29
  };
30
30
  };
31
- exports.getAllOnChainVks = getAllOnChainVks;
31
+ exports.getAllOnChainVerifyingKeys = getAllOnChainVerifyingKeys;
32
32
  /**
33
33
  * Compare two verifying keys
34
- * @param vkOnChain - the verifying key on chain
35
- * @param vk - the local verifying key
34
+ * @param verifyingKeyOnChain - the verifying key on chain
35
+ * @param verifyingKey - the local verifying key
36
36
  * @returns whether they are equal or not
37
37
  */
38
- const compareVks = (vkOnChain, vk) => {
39
- if (!vk) {
38
+ const compareVerifyingKeys = (verifyingKeyOnChain, verifyingKey) => {
39
+ if (!verifyingKey) {
40
40
  throw new Error("Verifying key is not provided");
41
41
  }
42
- let isEqual = vk.ic.length === vkOnChain.ic.length;
43
- for (let i = 0; i < vk.ic.length; i += 1) {
44
- isEqual = isEqual && vk.ic[i].x.toString() === vkOnChain.ic[i].x.toString();
45
- isEqual = isEqual && vk.ic[i].y.toString() === vkOnChain.ic[i].y.toString();
42
+ let isEqual = verifyingKey.ic.length === verifyingKeyOnChain.ic.length;
43
+ for (let i = 0; i < verifyingKey.ic.length; i += 1) {
44
+ isEqual = isEqual && verifyingKey.ic[i].x.toString() === verifyingKeyOnChain.ic[i].x.toString();
45
+ isEqual = isEqual && verifyingKey.ic[i].y.toString() === verifyingKeyOnChain.ic[i].y.toString();
46
46
  }
47
- isEqual = isEqual && vk.alpha1.x.toString() === vkOnChain.alpha1.x.toString();
48
- isEqual = isEqual && vk.alpha1.y.toString() === vkOnChain.alpha1.y.toString();
49
- isEqual = isEqual && vk.beta2.x[0].toString() === vkOnChain.beta2.x[0].toString();
50
- isEqual = isEqual && vk.beta2.x[1].toString() === vkOnChain.beta2.x[1].toString();
51
- isEqual = isEqual && vk.beta2.y[0].toString() === vkOnChain.beta2.y[0].toString();
52
- isEqual = isEqual && vk.beta2.y[1].toString() === vkOnChain.beta2.y[1].toString();
53
- isEqual = isEqual && vk.delta2.x[0].toString() === vkOnChain.delta2.x[0].toString();
54
- isEqual = isEqual && vk.delta2.x[1].toString() === vkOnChain.delta2.x[1].toString();
55
- isEqual = isEqual && vk.delta2.y[0].toString() === vkOnChain.delta2.y[0].toString();
56
- isEqual = isEqual && vk.delta2.y[1].toString() === vkOnChain.delta2.y[1].toString();
57
- isEqual = isEqual && vk.gamma2.x[0].toString() === vkOnChain.gamma2.x[0].toString();
58
- isEqual = isEqual && vk.gamma2.x[1].toString() === vkOnChain.gamma2.x[1].toString();
59
- isEqual = isEqual && vk.gamma2.y[0].toString() === vkOnChain.gamma2.y[0].toString();
60
- isEqual = isEqual && vk.gamma2.y[1].toString() === vkOnChain.gamma2.y[1].toString();
47
+ isEqual = isEqual && verifyingKey.alpha1.x.toString() === verifyingKeyOnChain.alpha1.x.toString();
48
+ isEqual = isEqual && verifyingKey.alpha1.y.toString() === verifyingKeyOnChain.alpha1.y.toString();
49
+ isEqual = isEqual && verifyingKey.beta2.x[0].toString() === verifyingKeyOnChain.beta2.x[0].toString();
50
+ isEqual = isEqual && verifyingKey.beta2.x[1].toString() === verifyingKeyOnChain.beta2.x[1].toString();
51
+ isEqual = isEqual && verifyingKey.beta2.y[0].toString() === verifyingKeyOnChain.beta2.y[0].toString();
52
+ isEqual = isEqual && verifyingKey.beta2.y[1].toString() === verifyingKeyOnChain.beta2.y[1].toString();
53
+ isEqual = isEqual && verifyingKey.delta2.x[0].toString() === verifyingKeyOnChain.delta2.x[0].toString();
54
+ isEqual = isEqual && verifyingKey.delta2.x[1].toString() === verifyingKeyOnChain.delta2.x[1].toString();
55
+ isEqual = isEqual && verifyingKey.delta2.y[0].toString() === verifyingKeyOnChain.delta2.y[0].toString();
56
+ isEqual = isEqual && verifyingKey.delta2.y[1].toString() === verifyingKeyOnChain.delta2.y[1].toString();
57
+ isEqual = isEqual && verifyingKey.gamma2.x[0].toString() === verifyingKeyOnChain.gamma2.x[0].toString();
58
+ isEqual = isEqual && verifyingKey.gamma2.x[1].toString() === verifyingKeyOnChain.gamma2.x[1].toString();
59
+ isEqual = isEqual && verifyingKey.gamma2.y[0].toString() === verifyingKeyOnChain.gamma2.y[0].toString();
60
+ isEqual = isEqual && verifyingKey.gamma2.y[1].toString() === verifyingKeyOnChain.gamma2.y[1].toString();
61
61
  return isEqual;
62
62
  };
63
- exports.compareVks = compareVks;
63
+ exports.compareVerifyingKeys = compareVerifyingKeys;
64
64
  /**
65
65
  * Extract all the verifying keys
66
- * @param args - The arguments for the extractAllVks function
66
+ * @param args - The arguments for the extractAllVerifyingKeys function
67
67
  * @returns The verifying keys
68
68
  */
69
- const extractAllVks = async ({ pollJoiningZkeyPath, pollJoinedZkeyPath, processMessagesZkeyPath, tallyVotesZkeyPath, }) => {
70
- // extract the vks
71
- const pollJoiningVk = pollJoiningZkeyPath ? domainobjs_1.VerifyingKey.fromObj(await (0, contracts_1.extractVk)(pollJoiningZkeyPath)) : undefined;
72
- const pollJoinedVk = pollJoinedZkeyPath ? domainobjs_1.VerifyingKey.fromObj(await (0, contracts_1.extractVk)(pollJoinedZkeyPath)) : undefined;
73
- const processVk = processMessagesZkeyPath
74
- ? domainobjs_1.VerifyingKey.fromObj(await (0, contracts_1.extractVk)(processMessagesZkeyPath))
69
+ const extractAllVerifyingKeys = async ({ pollJoiningZkeyPath, pollJoinedZkeyPath, messageProcessorZkeyPath, voteTallyZkeyPath, }) => {
70
+ // extract the verifying keys
71
+ const pollJoiningVerifyingKey = pollJoiningZkeyPath
72
+ ? domainobjs_1.VerifyingKey.fromObj(await (0, contracts_1.extractVerifyingKey)(pollJoiningZkeyPath))
73
+ : undefined;
74
+ const pollJoinedVerifyingKey = pollJoinedZkeyPath
75
+ ? domainobjs_1.VerifyingKey.fromObj(await (0, contracts_1.extractVerifyingKey)(pollJoinedZkeyPath))
76
+ : undefined;
77
+ const processVerifyingKey = messageProcessorZkeyPath
78
+ ? domainobjs_1.VerifyingKey.fromObj(await (0, contracts_1.extractVerifyingKey)(messageProcessorZkeyPath))
79
+ : undefined;
80
+ const tallyVerifyingKey = voteTallyZkeyPath
81
+ ? domainobjs_1.VerifyingKey.fromObj(await (0, contracts_1.extractVerifyingKey)(voteTallyZkeyPath))
75
82
  : undefined;
76
- const tallyVk = tallyVotesZkeyPath ? domainobjs_1.VerifyingKey.fromObj(await (0, contracts_1.extractVk)(tallyVotesZkeyPath)) : undefined;
77
83
  return {
78
- pollJoiningVk,
79
- pollJoinedVk,
80
- processVk,
81
- tallyVk,
84
+ pollJoiningVerifyingKey,
85
+ pollJoinedVerifyingKey,
86
+ processVerifyingKey,
87
+ tallyVerifyingKey,
82
88
  };
83
89
  };
84
- exports.extractAllVks = extractAllVks;
90
+ exports.extractAllVerifyingKeys = extractAllVerifyingKeys;
85
91
  /**
86
92
  * Command to confirm that the verifying keys in the contract match the local ones
87
93
  * @note see different options for zkey files to use specific circuits https://maci.pse.dev/docs/trusted-setup, https://maci.pse.dev/docs/testing/#pre-compiled-artifacts-for-testing
88
94
  * @param args The arguments for the checkVerifyingKeys command
89
95
  * @returns Whether the verifying keys match or not
90
96
  */
91
- const extractVkToFile = async ({ processMessagesZkeyPathQv, tallyVotesZkeyPathQv, processMessagesZkeyPathNonQv, pollJoinedZkeyPath, pollJoiningZkeyPath, tallyVotesZkeyPathNonQv, outputFilePath, }) => {
92
- const [processVkQv, tallyVkQv, processVkNonQv, tallyVkNonQv, pollJoiningVk, pollJoinedVk] = await Promise.all([
93
- (0, contracts_1.extractVk)(processMessagesZkeyPathQv),
94
- (0, contracts_1.extractVk)(tallyVotesZkeyPathQv),
95
- (0, contracts_1.extractVk)(processMessagesZkeyPathNonQv),
96
- (0, contracts_1.extractVk)(tallyVotesZkeyPathNonQv),
97
- (0, contracts_1.extractVk)(pollJoiningZkeyPath),
98
- (0, contracts_1.extractVk)(pollJoinedZkeyPath),
97
+ const extractVerifyingKeyToFile = async ({ messageProcessorZkeyPathQv, voteTallyZkeyPathQv, messageProcessorZkeyPathNonQv, messageProcessorZkeyPathFull, pollJoinedZkeyPath, pollJoiningZkeyPath, voteTallyZkeyPathNonQv, outputFilePath, }) => {
98
+ const [processVerifyingKeyQv, tallyVerifyingKeyQv, processVerifyingKeyNonQv, tallyVerifyingKeyNonQv, pollJoiningVerifyingKey, pollJoinedVerifyingKey, processVerifyingKeyFull,] = await Promise.all([
99
+ (0, contracts_1.extractVerifyingKey)(messageProcessorZkeyPathQv),
100
+ (0, contracts_1.extractVerifyingKey)(voteTallyZkeyPathQv),
101
+ (0, contracts_1.extractVerifyingKey)(messageProcessorZkeyPathNonQv),
102
+ (0, contracts_1.extractVerifyingKey)(voteTallyZkeyPathNonQv),
103
+ (0, contracts_1.extractVerifyingKey)(pollJoiningZkeyPath),
104
+ (0, contracts_1.extractVerifyingKey)(pollJoinedZkeyPath),
105
+ (0, contracts_1.extractVerifyingKey)(messageProcessorZkeyPathFull),
99
106
  ]);
100
- await fs_1.default.promises.writeFile(outputFilePath, JSON.stringify({ processVkQv, tallyVkQv, processVkNonQv, tallyVkNonQv, pollJoiningVk, pollJoinedVk }));
107
+ await fs_1.default.promises.writeFile(outputFilePath, JSON.stringify({
108
+ processVerifyingKeyQv,
109
+ tallyVerifyingKeyQv,
110
+ processVerifyingKeyNonQv,
111
+ tallyVerifyingKeyNonQv,
112
+ pollJoiningVerifyingKey,
113
+ pollJoinedVerifyingKey,
114
+ processVerifyingKeyFull,
115
+ }));
101
116
  };
102
- exports.extractVkToFile = extractVkToFile;
117
+ exports.extractVerifyingKeyToFile = extractVerifyingKeyToFile;
103
118
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../ts/verifyingKeys/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../ts/verifyingKeys/utils.ts"],"names":[],"mappings":"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"}
@@ -4,5 +4,5 @@ import type { IGenerateVoteArgs, IVote } from "./types";
4
4
  * @param args - The arguments for the vote
5
5
  * @returns The vote object
6
6
  */
7
- export declare const generateVote: ({ pollId, voteOptionIndex, salt, nonce, privateKey, stateIndex, voteWeight, coordinatorPubKey, maxVoteOption, ephemeralKeypair, newPubKey, }: IGenerateVoteArgs) => IVote;
7
+ export declare const generateVote: ({ pollId, voteOptionIndex, salt, nonce, privateKey, stateIndex, voteWeight, coordinatorPublicKey, maxVoteOption, ephemeralKeypair, newPublicKey, }: IGenerateVoteArgs) => IVote;
8
8
  //# sourceMappingURL=generate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../../ts/vote/generate.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAIxD;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAI,8IAY1B,iBAAiB,KAAG,KAmDtB,CAAC"}
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../../ts/vote/generate.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAIxD;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAI,oJAY1B,iBAAiB,KAAG,KAsDtB,CAAC"}
@@ -9,7 +9,7 @@ const utils_1 = require("./utils");
9
9
  * @param args - The arguments for the vote
10
10
  * @returns The vote object
11
11
  */
12
- const generateVote = ({ pollId, voteOptionIndex, salt, nonce, privateKey, stateIndex, voteWeight, coordinatorPubKey, maxVoteOption, ephemeralKeypair, newPubKey, }) => {
12
+ const generateVote = ({ pollId, voteOptionIndex, salt, nonce, privateKey, stateIndex, voteWeight, coordinatorPublicKey, maxVoteOption, ephemeralKeypair, newPublicKey, }) => {
13
13
  const keypair = new domainobjs_1.Keypair(privateKey);
14
14
  // validate args
15
15
  if (voteOptionIndex < 0 || voteOptionIndex > maxVoteOption) {
@@ -25,18 +25,18 @@ const generateVote = ({ pollId, voteOptionIndex, salt, nonce, privateKey, stateI
25
25
  if (salt && !(0, utils_1.validateSalt)(salt)) {
26
26
  throw new Error("Invalid salt");
27
27
  }
28
- const userSalt = salt ? BigInt(salt) : (0, crypto_1.genRandomSalt)();
28
+ const userSalt = salt ? BigInt(salt) : (0, crypto_1.generateRandomSalt)();
29
29
  if (pollId < 0) {
30
30
  throw new Error("Invalid poll id");
31
31
  }
32
32
  // if no ephemeral keypair is provided, generate a new one
33
33
  const encKeypair = ephemeralKeypair ?? new domainobjs_1.Keypair();
34
34
  // create the command object
35
- const command = new domainobjs_1.PCommand(stateIndex, newPubKey ?? keypair.pubKey, voteOptionIndex, voteWeight, nonce, pollId, userSalt);
35
+ const command = new domainobjs_1.VoteCommand(stateIndex, newPublicKey ?? keypair.publicKey, voteOptionIndex, voteWeight, nonce, pollId, userSalt);
36
36
  // sign the command with the poll private key
37
37
  const signature = command.sign(privateKey);
38
38
  // encrypt the command using a shared key between the user and the coordinator
39
- const message = command.encrypt(signature, domainobjs_1.Keypair.genEcdhSharedKey(encKeypair.privKey, coordinatorPubKey));
39
+ const message = command.encrypt(signature, domainobjs_1.Keypair.generateEcdhSharedKey(encKeypair.privateKey, coordinatorPublicKey));
40
40
  return {
41
41
  message,
42
42
  ephemeralKeypair: encKeypair,
@@ -1 +1 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../ts/vote/generate.ts"],"names":[],"mappings":";;;AAAA,kDAAsD;AACtD,0DAA8D;AAI9D,mCAAuC;AAEvC;;;;GAIG;AACI,MAAM,YAAY,GAAG,CAAC,EAC3B,MAAM,EACN,eAAe,EACf,IAAI,EACJ,KAAK,EACL,UAAU,EACV,UAAU,EACV,UAAU,EACV,iBAAiB,EACjB,aAAa,EACb,gBAAgB,EAChB,SAAS,GACS,EAAS,EAAE;IAC7B,MAAM,OAAO,GAAG,IAAI,oBAAO,CAAC,UAAU,CAAC,CAAC;IAExC,gBAAgB;IAChB,IAAI,eAAe,GAAG,CAAC,IAAI,eAAe,GAAG,aAAa,EAAE,CAAC;QAC3D,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC/C,CAAC;IAED,mDAAmD;IACnD,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED,IAAI,IAAI,IAAI,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,sBAAa,GAAE,CAAC;IAEvD,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;IAED,0DAA0D;IAC1D,MAAM,UAAU,GAAG,gBAAgB,IAAI,IAAI,oBAAO,EAAE,CAAC;IAErD,4BAA4B;IAC5B,MAAM,OAAO,GAAG,IAAI,qBAAQ,CAC1B,UAAU,EACV,SAAS,IAAI,OAAO,CAAC,MAAM,EAC3B,eAAe,EACf,UAAU,EACV,KAAK,EACL,MAAM,EACN,QAAQ,CACT,CAAC;IAEF,6CAA6C;IAC7C,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAE3C,8EAA8E;IAC9E,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,oBAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAE5G,OAAO;QACL,OAAO;QACP,gBAAgB,EAAE,UAAU;KAC7B,CAAC;AACJ,CAAC,CAAC;AA/DW,QAAA,YAAY,gBA+DvB"}
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../ts/vote/generate.ts"],"names":[],"mappings":";;;AAAA,kDAA2D;AAC3D,0DAAiE;AAIjE,mCAAuC;AAEvC;;;;GAIG;AACI,MAAM,YAAY,GAAG,CAAC,EAC3B,MAAM,EACN,eAAe,EACf,IAAI,EACJ,KAAK,EACL,UAAU,EACV,UAAU,EACV,UAAU,EACV,oBAAoB,EACpB,aAAa,EACb,gBAAgB,EAChB,YAAY,GACM,EAAS,EAAE;IAC7B,MAAM,OAAO,GAAG,IAAI,oBAAO,CAAC,UAAU,CAAC,CAAC;IAExC,gBAAgB;IAChB,IAAI,eAAe,GAAG,CAAC,IAAI,eAAe,GAAG,aAAa,EAAE,CAAC;QAC3D,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC/C,CAAC;IAED,mDAAmD;IACnD,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED,IAAI,IAAI,IAAI,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,2BAAkB,GAAE,CAAC;IAE5D,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;IAED,0DAA0D;IAC1D,MAAM,UAAU,GAAG,gBAAgB,IAAI,IAAI,oBAAO,EAAE,CAAC;IAErD,4BAA4B;IAC5B,MAAM,OAAO,GAAG,IAAI,wBAAW,CAC7B,UAAU,EACV,YAAY,IAAI,OAAO,CAAC,SAAS,EACjC,eAAe,EACf,UAAU,EACV,KAAK,EACL,MAAM,EACN,QAAQ,CACT,CAAC;IAEF,6CAA6C;IAC7C,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAE3C,8EAA8E;IAC9E,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAC7B,SAAS,EACT,oBAAO,CAAC,qBAAqB,CAAC,UAAU,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAC3E,CAAC;IAEF,OAAO;QACL,OAAO;QACP,gBAAgB,EAAE,UAAU;KAC7B,CAAC;AACJ,CAAC,CAAC;AAlEW,QAAA,YAAY,gBAkEvB"}
@@ -1,6 +1,7 @@
1
1
  export type { IVote, IGenerateVoteArgs, IPublishArgs, IPublishBatchArgs, IPublishBatchData, IPublishData, IPublishMessage, ISubmitVoteArgs, ISubmitVoteBatchArgs, } from "./types";
2
2
  export { generateVote } from "./generate";
3
+ export { invalidateVotes } from "./invalidate";
3
4
  export { publish, publishBatch } from "./publish";
4
5
  export { submitVote, submitVoteBatch } from "./submit";
5
- export { getCoordinatorPubKey, validateSalt } from "./utils";
6
+ export { getCoordinatorPublicKey, validateSalt } from "./utils";
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../ts/vote/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,KAAK,EACL,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,eAAe,EACf,oBAAoB,GACrB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../ts/vote/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,KAAK,EACL,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,eAAe,EACf,oBAAoB,GACrB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AACvD,OAAO,EAAE,uBAAuB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC"}
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validateSalt = exports.getCoordinatorPubKey = exports.submitVoteBatch = exports.submitVote = exports.publishBatch = exports.publish = exports.generateVote = void 0;
3
+ exports.validateSalt = exports.getCoordinatorPublicKey = exports.submitVoteBatch = exports.submitVote = exports.publishBatch = exports.publish = exports.invalidateVotes = exports.generateVote = void 0;
4
4
  var generate_1 = require("./generate");
5
5
  Object.defineProperty(exports, "generateVote", { enumerable: true, get: function () { return generate_1.generateVote; } });
6
+ var invalidate_1 = require("./invalidate");
7
+ Object.defineProperty(exports, "invalidateVotes", { enumerable: true, get: function () { return invalidate_1.invalidateVotes; } });
6
8
  var publish_1 = require("./publish");
7
9
  Object.defineProperty(exports, "publish", { enumerable: true, get: function () { return publish_1.publish; } });
8
10
  Object.defineProperty(exports, "publishBatch", { enumerable: true, get: function () { return publish_1.publishBatch; } });
@@ -10,6 +12,6 @@ var submit_1 = require("./submit");
10
12
  Object.defineProperty(exports, "submitVote", { enumerable: true, get: function () { return submit_1.submitVote; } });
11
13
  Object.defineProperty(exports, "submitVoteBatch", { enumerable: true, get: function () { return submit_1.submitVoteBatch; } });
12
14
  var utils_1 = require("./utils");
13
- Object.defineProperty(exports, "getCoordinatorPubKey", { enumerable: true, get: function () { return utils_1.getCoordinatorPubKey; } });
15
+ Object.defineProperty(exports, "getCoordinatorPublicKey", { enumerable: true, get: function () { return utils_1.getCoordinatorPublicKey; } });
14
16
  Object.defineProperty(exports, "validateSalt", { enumerable: true, get: function () { return utils_1.validateSalt; } });
15
17
  //# sourceMappingURL=index.js.map