29
29
@ Slf4j
30
30
public class JLibrustzcash {
31
31
32
- private static Librustzcash INSTANCE ;
32
+ private static Librustzcash INSTANCE = LibrustzcashWrapper . getInstance () ;
33
33
34
34
public static void librustzcashZip32XskMaster (Zip32XskMasterParams params ) {
35
- if (!isOpenZen ()) {
36
- return ;
37
- }
38
35
INSTANCE .librustzcashZip32XskMaster (params .getData (), params .getSize (), params .getM_bytes ());
39
36
}
40
37
41
38
public static void librustzcashInitZksnarkParams (InitZksnarkParams params ) {
42
- if (!isOpenZen ()) {
43
- return ;
44
- }
45
39
INSTANCE .librustzcashInitZksnarkParams (params .getSpend_path (),
46
40
params .getSpend_hash (), params .getOutput_path (), params .getOutput_hash ());
47
41
}
48
42
49
43
public static void librustzcashZip32XskDerive (Zip32XskDeriveParams params ) {
50
- if (!isOpenZen ()) {
51
- return ;
52
- }
53
44
INSTANCE .librustzcashZip32XskDerive (params .getData (), params .getSize (), params .getM_bytes ());
54
45
}
55
46
56
47
public static boolean librustzcashZip32XfvkAddress (Zip32XfvkAddressParams params ) {
57
- if (!isOpenZen ()) {
58
- return true ;
59
- }
60
48
return INSTANCE .librustzcashZip32XfvkAddress (params .getXfvk (), params .getJ (),
61
49
params .getJ_ret (), params .getAddr_ret ());
62
50
}
63
51
64
52
public static void librustzcashCrhIvk (CrhIvkParams params ) {
65
- if (!isOpenZen ()) {
66
- return ;
67
- }
68
53
INSTANCE .librustzcashCrhIvk (params .getAk (), params .getNk (), params .getIvk ());
69
54
}
70
55
71
56
public static boolean librustzcashKaAgree (KaAgreeParams params ) {
72
- if (!isOpenZen ()) {
73
- return true ;
74
- }
75
57
return INSTANCE .librustzcashSaplingKaAgree (params .getP (), params .getSk (), params .getResult ());
76
58
}
77
59
78
60
public static boolean librustzcashComputeCm (ComputeCmParams params ) {
79
- if (!isOpenZen ()) {
80
- return true ;
81
- }
82
61
return INSTANCE .librustzcashSaplingComputeCm (params .getD (), params .getPkD (),
83
62
params .getValue (), params .getR (), params .getCm ());
84
63
}
85
64
86
65
public static boolean librustzcashComputeNf (ComputeNfParams params ) {
87
- if (isOpenZen ()) {
88
- INSTANCE .librustzcashSaplingComputeNf (params .getD (), params .getPkD (), params .getValue (),
89
- params .getR (), params .getAk (), params .getNk (), params .getPosition (), params .getResult ());
90
- }
66
+ INSTANCE .librustzcashSaplingComputeNf (params .getD (), params .getPkD (), params .getValue (),
67
+ params .getR (), params .getAk (), params .getNk (), params .getPosition (), params .getResult ());
91
68
return true ;
92
69
}
93
70
@@ -96,9 +73,6 @@ public static boolean librustzcashComputeNf(ComputeNfParams params) {
96
73
* @return ak 32 bytes
97
74
*/
98
75
public static byte [] librustzcashAskToAk (byte [] ask ) throws ZksnarkException {
99
- if (!isOpenZen ()) {
100
- return ByteUtil .EMPTY_BYTE_ARRAY ;
101
- }
102
76
LibrustzcashParam .valid32Params (ask );
103
77
byte [] ak = new byte [32 ];
104
78
INSTANCE .librustzcashAskToAk (ask , ak );
@@ -110,9 +84,6 @@ public static byte[] librustzcashAskToAk(byte[] ask) throws ZksnarkException {
110
84
* @return 32 bytes
111
85
*/
112
86
public static byte [] librustzcashNskToNk (byte [] nsk ) throws ZksnarkException {
113
- if (!isOpenZen ()) {
114
- return ByteUtil .EMPTY_BYTE_ARRAY ;
115
- }
116
87
LibrustzcashParam .valid32Params (nsk );
117
88
byte [] nk = new byte [32 ];
118
89
INSTANCE .librustzcashNskToNk (nsk , nk );
@@ -125,26 +96,17 @@ public static byte[] librustzcashNskToNk(byte[] nsk) throws ZksnarkException {
125
96
* @return r: random number, less than r_J, 32 bytes
126
97
*/
127
98
public static byte [] librustzcashSaplingGenerateR (byte [] r ) throws ZksnarkException {
128
- if (!isOpenZen ()) {
129
- return ByteUtil .EMPTY_BYTE_ARRAY ;
130
- }
131
99
LibrustzcashParam .valid32Params (r );
132
100
INSTANCE .librustzcashSaplingGenerateR (r );
133
101
return r ;
134
102
}
135
103
136
104
public static boolean librustzcashSaplingKaDerivepublic (KaDerivepublicParams params ) {
137
- if (!isOpenZen ()) {
138
- return true ;
139
- }
140
105
return INSTANCE .librustzcashSaplingKaDerivepublic (params .getDiversifier (), params .getEsk (),
141
106
params .getResult ());
142
107
}
143
108
144
109
public static long librustzcashSaplingProvingCtxInit () {
145
- if (!isOpenZen ()) {
146
- return 0 ;
147
- }
148
110
return INSTANCE .librustzcashSaplingProvingCtxInit ();
149
111
}
150
112
@@ -154,44 +116,29 @@ public static long librustzcashSaplingProvingCtxInit() {
154
116
* @param d 11 bytes
155
117
*/
156
118
public static boolean librustzcashCheckDiversifier (byte [] d ) throws ZksnarkException {
157
- if (!isOpenZen ()) {
158
- return true ;
159
- }
160
119
LibrustzcashParam .valid11Params (d );
161
120
return INSTANCE .librustzcashCheckDiversifier (d );
162
121
}
163
122
164
123
public static boolean librustzcashSaplingSpendProof (SpendProofParams params ) {
165
- if (!isOpenZen ()) {
166
- return true ;
167
- }
168
124
return INSTANCE .librustzcashSaplingSpendProof (params .getCtx (), params .getAk (),
169
125
params .getNsk (), params .getD (), params .getR (), params .getAlpha (), params .getValue (),
170
126
params .getAnchor (), params .getVoucherPath (), params .getCv (), params .getRk (),
171
127
params .getZkproof ());
172
128
}
173
129
174
130
public static boolean librustzcashSaplingOutputProof (OutputProofParams params ) {
175
- if (!isOpenZen ()) {
176
- return true ;
177
- }
178
131
return INSTANCE .librustzcashSaplingOutputProof (params .getCtx (), params .getEsk (),
179
132
params .getD (), params .getPkD (), params .getR (), params .getValue (), params .getCv (),
180
133
params .getZkproof ());
181
134
}
182
135
183
136
public static boolean librustzcashSaplingSpendSig (SpendSigParams params ) {
184
- if (!isOpenZen ()) {
185
- return true ;
186
- }
187
137
return INSTANCE .librustzcashSaplingSpendSig (params .getAsk (), params .getAlpha (),
188
138
params .getSigHash (), params .getResult ());
189
139
}
190
140
191
141
public static boolean librustzcashSaplingBindingSig (BindingSigParams params ) {
192
- if (!isOpenZen ()) {
193
- return true ;
194
- }
195
142
return INSTANCE .librustzcashSaplingBindingSig (params .getCtx (),
196
143
params .getValueBalance (), params .getSighash (), params .getResult ());
197
144
}
@@ -203,98 +150,62 @@ public static boolean librustzcashSaplingBindingSig(BindingSigParams params) {
203
150
* @param data 32 bytes
204
151
*/
205
152
public static void librustzcashToScalar (byte [] value , byte [] data ) throws ZksnarkException {
206
- if (!isOpenZen ()) {
207
- return ;
208
- }
209
153
LibrustzcashParam .validParamLength (value , 64 );
210
154
LibrustzcashParam .valid32Params (data );
211
155
INSTANCE .librustzcashToScalar (value , data );
212
156
}
213
157
214
158
public static void librustzcashSaplingProvingCtxFree (long ctx ) {
215
- if (!isOpenZen ()) {
216
- return ;
217
- }
218
159
INSTANCE .librustzcashSaplingProvingCtxFree (ctx );
219
160
}
220
161
221
162
public static long librustzcashSaplingVerificationCtxInit () {
222
- if (!isOpenZen ()) {
223
- return 0 ;
224
- }
225
163
return INSTANCE .librustzcashSaplingVerificationCtxInit ();
226
164
}
227
165
228
166
public static boolean librustzcashSaplingCheckSpend (CheckSpendParams params ) {
229
- if (!isOpenZen ()) {
230
- return true ;
231
- }
232
167
return INSTANCE .librustzcashSaplingCheckSpend (params .getCtx (), params .getCv (),
233
168
params .getAnchor (), params .getNullifier (), params .getRk (), params .getZkproof (),
234
169
params .getSpendAuthSig (), params .getSighashValue ());
235
170
}
236
171
237
172
public static boolean librustzcashSaplingCheckOutput (CheckOutputParams params ) {
238
- if (!isOpenZen ()) {
239
- return true ;
240
- }
241
173
return INSTANCE .librustzcashSaplingCheckOutput (params .getCtx (), params .getCv (),
242
174
params .getCm (), params .getEphemeralKey (), params .getZkproof ());
243
175
}
244
176
245
177
public static boolean librustzcashSaplingFinalCheck (FinalCheckParams params ) {
246
- if (!isOpenZen ()) {
247
- return true ;
248
- }
249
178
return INSTANCE .librustzcashSaplingFinalCheck (params .getCtx (),
250
179
params .getValueBalance (), params .getBindingSig (), params .getSighashValue ());
251
180
}
252
181
253
182
public static boolean librustzcashSaplingCheckSpendNew (CheckSpendNewParams params ) {
254
- if (!isOpenZen ()) {
255
- return true ;
256
- }
257
183
return INSTANCE .librustzcashSaplingCheckSpendNew (params .getCv (),
258
184
params .getAnchor (), params .getNullifier (), params .getRk (), params .getZkproof (),
259
185
params .getSpendAuthSig (), params .getSighashValue ());
260
186
}
261
187
262
188
public static boolean librustzcashSaplingCheckOutputNew (CheckOutputNewParams params ) {
263
- if (!isOpenZen ()) {
264
- return true ;
265
- }
266
189
return INSTANCE .librustzcashSaplingCheckOutputNew (params .getCv (), params .getCm (),
267
190
params .getEphemeralKey (), params .getZkproof ());
268
191
}
269
192
270
193
public static boolean librustzcashSaplingFinalCheckNew (FinalCheckNewParams params ) {
271
- if (!isOpenZen ()) {
272
- return true ;
273
- }
274
194
return INSTANCE
275
195
.librustzcashSaplingFinalCheckNew (params .getValueBalance (), params .getBindingSig (),
276
196
params .getSighashValue (), params .getSpendCv (), params .getSpendCvLen (),
277
197
params .getOutputCv (), params .getOutputCvLen ());
278
198
}
279
199
280
200
public static void librustzcashSaplingVerificationCtxFree (long ctx ) {
281
- if (!isOpenZen ()) {
282
- return ;
283
- }
284
201
INSTANCE .librustzcashSaplingVerificationCtxFree (ctx );
285
202
}
286
203
287
204
public static boolean librustzcashIvkToPkd (IvkToPkdParams params ) {
288
- if (!isOpenZen ()) {
289
- return true ;
290
- }
291
205
return INSTANCE .librustzcashIvkToPkd (params .getIvk (), params .getD (), params .getPkD ());
292
206
}
293
207
294
208
public static void librustzcashMerkleHash (MerkleHashParams params ) {
295
- if (!isOpenZen ()) {
296
- return ;
297
- }
298
209
INSTANCE .librustzcashMerkleHash (params .getDepth (), params .getA (), params .getB (),
299
210
params .getResult ());
300
211
}
@@ -303,19 +214,7 @@ public static void librustzcashMerkleHash(MerkleHashParams params) {
303
214
* @param result uncommitted value, 32 bytes
304
215
*/
305
216
public static void librustzcashTreeUncommitted (byte [] result ) throws ZksnarkException {
306
- if (!isOpenZen ()) {
307
- return ;
308
- }
309
217
LibrustzcashParam .valid32Params (result );
310
218
INSTANCE .librustzcashTreeUncommitted (result );
311
219
}
312
-
313
- public static boolean isOpenZen () {
314
- boolean res = CommonParameter .getInstance ().isFullNodeAllowShieldedTransactionArgs ();
315
- if (res ) {
316
- INSTANCE = LibrustzcashWrapper .getInstance ();
317
- }
318
- return res ;
319
- }
320
-
321
220
}
0 commit comments