@@ -2304,26 +2304,23 @@ static void scalar_test(void) {
2304
2304
2305
2305
{
2306
2306
/* Test multiplicative identity. */
2307
- secp256k1_scalar r1 , v1 ;
2308
- secp256k1_scalar_set_int (& v1 ,1 );
2309
- secp256k1_scalar_mul (& r1 , & s1 , & v1 );
2307
+ secp256k1_scalar r1 ;
2308
+ secp256k1_scalar_mul (& r1 , & s1 , & secp256k1_scalar_one );
2310
2309
CHECK (secp256k1_scalar_eq (& r1 , & s1 ));
2311
2310
}
2312
2311
2313
2312
{
2314
2313
/* Test additive identity. */
2315
- secp256k1_scalar r1 , v0 ;
2316
- secp256k1_scalar_set_int (& v0 ,0 );
2317
- secp256k1_scalar_add (& r1 , & s1 , & v0 );
2314
+ secp256k1_scalar r1 ;
2315
+ secp256k1_scalar_add (& r1 , & s1 , & secp256k1_scalar_zero );
2318
2316
CHECK (secp256k1_scalar_eq (& r1 , & s1 ));
2319
2317
}
2320
2318
2321
2319
{
2322
2320
/* Test zero product property. */
2323
- secp256k1_scalar r1 , v0 ;
2324
- secp256k1_scalar_set_int (& v0 ,0 );
2325
- secp256k1_scalar_mul (& r1 , & s1 , & v0 );
2326
- CHECK (secp256k1_scalar_eq (& r1 , & v0 ));
2321
+ secp256k1_scalar r1 ;
2322
+ secp256k1_scalar_mul (& r1 , & s1 , & secp256k1_scalar_zero );
2323
+ CHECK (secp256k1_scalar_eq (& r1 , & secp256k1_scalar_zero ));
2327
2324
}
2328
2325
2329
2326
}
@@ -2356,11 +2353,9 @@ static void run_scalar_tests(void) {
2356
2353
2357
2354
{
2358
2355
/* (-1)+1 should be zero. */
2359
- secp256k1_scalar s , o ;
2360
- secp256k1_scalar_set_int (& s , 1 );
2361
- CHECK (secp256k1_scalar_is_one (& s ));
2362
- secp256k1_scalar_negate (& o , & s );
2363
- secp256k1_scalar_add (& o , & o , & s );
2356
+ secp256k1_scalar o ;
2357
+ secp256k1_scalar_negate (& o , & secp256k1_scalar_one );
2358
+ secp256k1_scalar_add (& o , & o , & secp256k1_scalar_one );
2364
2359
CHECK (secp256k1_scalar_is_zero (& o ));
2365
2360
secp256k1_scalar_negate (& o , & o );
2366
2361
CHECK (secp256k1_scalar_is_zero (& o ));
@@ -2385,7 +2380,6 @@ static void run_scalar_tests(void) {
2385
2380
secp256k1_scalar y ;
2386
2381
secp256k1_scalar z ;
2387
2382
secp256k1_scalar zz ;
2388
- secp256k1_scalar one ;
2389
2383
secp256k1_scalar r1 ;
2390
2384
secp256k1_scalar r2 ;
2391
2385
secp256k1_scalar zzv ;
@@ -2922,7 +2916,6 @@ static void run_scalar_tests(void) {
2922
2916
0x1e , 0x86 , 0x5d , 0x89 , 0x63 , 0xe6 , 0x0a , 0x46 ,
2923
2917
0x5c , 0x02 , 0x97 , 0x1b , 0x62 , 0x43 , 0x86 , 0xf5 }}
2924
2918
};
2925
- secp256k1_scalar_set_int (& one , 1 );
2926
2919
for (i = 0 ; i < 33 ; i ++ ) {
2927
2920
secp256k1_scalar_set_b32 (& x , chal [i ][0 ], & overflow );
2928
2921
CHECK (!overflow );
@@ -2945,7 +2938,7 @@ static void run_scalar_tests(void) {
2945
2938
CHECK (secp256k1_scalar_eq (& x , & z ));
2946
2939
secp256k1_scalar_mul (& zz , & zz , & y );
2947
2940
CHECK (!secp256k1_scalar_check_overflow (& zz ));
2948
- CHECK (secp256k1_scalar_eq (& one , & zz ));
2941
+ CHECK (secp256k1_scalar_eq (& secp256k1_scalar_one , & zz ));
2949
2942
}
2950
2943
}
2951
2944
}
@@ -4643,7 +4636,6 @@ static int ecmult_multi_false_callback(secp256k1_scalar *sc, secp256k1_ge *pt, s
4643
4636
4644
4637
static void test_ecmult_multi (secp256k1_scratch * scratch , secp256k1_ecmult_multi_func ecmult_multi ) {
4645
4638
int ncount ;
4646
- secp256k1_scalar szero ;
4647
4639
secp256k1_scalar sc [32 ];
4648
4640
secp256k1_ge pt [32 ];
4649
4641
secp256k1_gej r ;
@@ -4652,7 +4644,6 @@ static void test_ecmult_multi(secp256k1_scratch *scratch, secp256k1_ecmult_multi
4652
4644
4653
4645
data .sc = sc ;
4654
4646
data .pt = pt ;
4655
- secp256k1_scalar_set_int (& szero , 0 );
4656
4647
4657
4648
/* No points to multiply */
4658
4649
CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , NULL , ecmult_multi_callback , & data , 0 ));
@@ -4670,21 +4661,21 @@ static void test_ecmult_multi(secp256k1_scratch *scratch, secp256k1_ecmult_multi
4670
4661
pt [1 ] = secp256k1_ge_const_g ;
4671
4662
4672
4663
/* only G scalar */
4673
- secp256k1_ecmult (& r2 , & ptgj , & szero , & sc [0 ]);
4664
+ secp256k1_ecmult (& r2 , & ptgj , & secp256k1_scalar_zero , & sc [0 ]);
4674
4665
CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & sc [0 ], ecmult_multi_callback , & data , 0 ));
4675
4666
CHECK (secp256k1_gej_eq_var (& r , & r2 ));
4676
4667
4677
4668
/* 1-point */
4678
- secp256k1_ecmult (& r2 , & ptgj , & sc [0 ], & szero );
4679
- CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & szero , ecmult_multi_callback , & data , 1 ));
4669
+ secp256k1_ecmult (& r2 , & ptgj , & sc [0 ], & secp256k1_scalar_zero );
4670
+ CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & secp256k1_scalar_zero , ecmult_multi_callback , & data , 1 ));
4680
4671
CHECK (secp256k1_gej_eq_var (& r , & r2 ));
4681
4672
4682
4673
/* Try to multiply 1 point, but callback returns false */
4683
- CHECK (!ecmult_multi (& CTX -> error_callback , scratch , & r , & szero , ecmult_multi_false_callback , & data , 1 ));
4674
+ CHECK (!ecmult_multi (& CTX -> error_callback , scratch , & r , & secp256k1_scalar_zero , ecmult_multi_false_callback , & data , 1 ));
4684
4675
4685
4676
/* 2-point */
4686
4677
secp256k1_ecmult (& r2 , & ptgj , & sc [0 ], & sc [1 ]);
4687
- CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & szero , ecmult_multi_callback , & data , 2 ));
4678
+ CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & secp256k1_scalar_zero , ecmult_multi_callback , & data , 2 ));
4688
4679
CHECK (secp256k1_gej_eq_var (& r , & r2 ));
4689
4680
4690
4681
/* 2-point with G scalar */
@@ -4704,7 +4695,7 @@ static void test_ecmult_multi(secp256k1_scratch *scratch, secp256k1_ecmult_multi
4704
4695
random_scalar_order (& sc [i ]);
4705
4696
secp256k1_ge_set_infinity (& pt [i ]);
4706
4697
}
4707
- CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & szero , ecmult_multi_callback , & data , sizes [j ]));
4698
+ CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & secp256k1_scalar_zero , ecmult_multi_callback , & data , sizes [j ]));
4708
4699
CHECK (secp256k1_gej_is_infinity (& r ));
4709
4700
}
4710
4701
@@ -4714,7 +4705,7 @@ static void test_ecmult_multi(secp256k1_scratch *scratch, secp256k1_ecmult_multi
4714
4705
pt [i ] = ptg ;
4715
4706
secp256k1_scalar_set_int (& sc [i ], 0 );
4716
4707
}
4717
- CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & szero , ecmult_multi_callback , & data , sizes [j ]));
4708
+ CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & secp256k1_scalar_zero , ecmult_multi_callback , & data , sizes [j ]));
4718
4709
CHECK (secp256k1_gej_is_infinity (& r ));
4719
4710
}
4720
4711
@@ -4727,7 +4718,7 @@ static void test_ecmult_multi(secp256k1_scratch *scratch, secp256k1_ecmult_multi
4727
4718
pt [2 * i + 1 ] = ptg ;
4728
4719
}
4729
4720
4730
- CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & szero , ecmult_multi_callback , & data , sizes [j ]));
4721
+ CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & secp256k1_scalar_zero , ecmult_multi_callback , & data , sizes [j ]));
4731
4722
CHECK (secp256k1_gej_is_infinity (& r ));
4732
4723
4733
4724
random_scalar_order (& sc [0 ]);
@@ -4740,7 +4731,7 @@ static void test_ecmult_multi(secp256k1_scratch *scratch, secp256k1_ecmult_multi
4740
4731
secp256k1_ge_neg (& pt [2 * i + 1 ], & pt [2 * i ]);
4741
4732
}
4742
4733
4743
- CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & szero , ecmult_multi_callback , & data , sizes [j ]));
4734
+ CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & secp256k1_scalar_zero , ecmult_multi_callback , & data , sizes [j ]));
4744
4735
CHECK (secp256k1_gej_is_infinity (& r ));
4745
4736
}
4746
4737
@@ -4755,7 +4746,7 @@ static void test_ecmult_multi(secp256k1_scratch *scratch, secp256k1_ecmult_multi
4755
4746
secp256k1_scalar_negate (& sc [i ], & sc [i ]);
4756
4747
}
4757
4748
4758
- CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & szero , ecmult_multi_callback , & data , 32 ));
4749
+ CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & secp256k1_scalar_zero , ecmult_multi_callback , & data , 32 ));
4759
4750
CHECK (secp256k1_gej_is_infinity (& r ));
4760
4751
}
4761
4752
@@ -4773,8 +4764,8 @@ static void test_ecmult_multi(secp256k1_scratch *scratch, secp256k1_ecmult_multi
4773
4764
secp256k1_gej_add_ge_var (& r , & r , & pt [i ], NULL );
4774
4765
}
4775
4766
4776
- secp256k1_ecmult (& r2 , & r , & sc [0 ], & szero );
4777
- CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & szero , ecmult_multi_callback , & data , 20 ));
4767
+ secp256k1_ecmult (& r2 , & r , & sc [0 ], & secp256k1_scalar_zero );
4768
+ CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & secp256k1_scalar_zero , ecmult_multi_callback , & data , 20 ));
4778
4769
CHECK (secp256k1_gej_eq_var (& r , & r2 ));
4779
4770
}
4780
4771
@@ -4794,8 +4785,8 @@ static void test_ecmult_multi(secp256k1_scratch *scratch, secp256k1_ecmult_multi
4794
4785
}
4795
4786
4796
4787
secp256k1_gej_set_ge (& p0j , & pt [0 ]);
4797
- secp256k1_ecmult (& r2 , & p0j , & rs , & szero );
4798
- CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & szero , ecmult_multi_callback , & data , 20 ));
4788
+ secp256k1_ecmult (& r2 , & p0j , & rs , & secp256k1_scalar_zero );
4789
+ CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & secp256k1_scalar_zero , ecmult_multi_callback , & data , 20 ));
4799
4790
CHECK (secp256k1_gej_eq_var (& r , & r2 ));
4800
4791
}
4801
4792
@@ -4806,13 +4797,13 @@ static void test_ecmult_multi(secp256k1_scratch *scratch, secp256k1_ecmult_multi
4806
4797
}
4807
4798
4808
4799
secp256k1_scalar_clear (& sc [0 ]);
4809
- CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & szero , ecmult_multi_callback , & data , 20 ));
4800
+ CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & secp256k1_scalar_zero , ecmult_multi_callback , & data , 20 ));
4810
4801
secp256k1_scalar_clear (& sc [1 ]);
4811
4802
secp256k1_scalar_clear (& sc [2 ]);
4812
4803
secp256k1_scalar_clear (& sc [3 ]);
4813
4804
secp256k1_scalar_clear (& sc [4 ]);
4814
- CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & szero , ecmult_multi_callback , & data , 6 ));
4815
- CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & szero , ecmult_multi_callback , & data , 5 ));
4805
+ CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & secp256k1_scalar_zero , ecmult_multi_callback , & data , 6 ));
4806
+ CHECK (ecmult_multi (& CTX -> error_callback , scratch , & r , & secp256k1_scalar_zero , ecmult_multi_callback , & data , 5 ));
4816
4807
CHECK (secp256k1_gej_is_infinity (& r ));
4817
4808
4818
4809
/* Run through s0*(t0*P) + s1*(t1*P) exhaustively for many small values of s0, s1, t0, t1 */
@@ -4836,8 +4827,8 @@ static void test_ecmult_multi(secp256k1_scratch *scratch, secp256k1_ecmult_multi
4836
4827
secp256k1_scalar_set_int (& t1 , (t1i + 1 ) / 2 );
4837
4828
secp256k1_scalar_cond_negate (& t1 , t1i & 1 );
4838
4829
4839
- secp256k1_ecmult (& t0p , & ptgj , & t0 , & szero );
4840
- secp256k1_ecmult (& t1p , & ptgj , & t1 , & szero );
4830
+ secp256k1_ecmult (& t0p , & ptgj , & t0 , & secp256k1_scalar_zero );
4831
+ secp256k1_ecmult (& t1p , & ptgj , & t1 , & secp256k1_scalar_zero );
4841
4832
4842
4833
for (s0i = 0 ; s0i < TOP ; s0i ++ ) {
4843
4834
for (s1i = 0 ; s1i < TOP ; s1i ++ ) {
@@ -4856,8 +4847,8 @@ static void test_ecmult_multi(secp256k1_scratch *scratch, secp256k1_ecmult_multi
4856
4847
secp256k1_scalar_mul (& tmp2 , & t1 , & sc [1 ]);
4857
4848
secp256k1_scalar_add (& tmp1 , & tmp1 , & tmp2 );
4858
4849
4859
- secp256k1_ecmult (& expected , & ptgj , & tmp1 , & szero );
4860
- CHECK (ecmult_multi (& CTX -> error_callback , scratch , & actual , & szero , ecmult_multi_callback , & data , 2 ));
4850
+ secp256k1_ecmult (& expected , & ptgj , & tmp1 , & secp256k1_scalar_zero );
4851
+ CHECK (ecmult_multi (& CTX -> error_callback , scratch , & actual , & secp256k1_scalar_zero , ecmult_multi_callback , & data , 2 ));
4861
4852
CHECK (secp256k1_gej_eq_var (& actual , & expected ));
4862
4853
}
4863
4854
}
@@ -5033,7 +5024,6 @@ static int test_ecmult_multi_random(secp256k1_scratch *scratch) {
5033
5024
}
5034
5025
5035
5026
static void test_ecmult_multi_batch_single (secp256k1_ecmult_multi_func ecmult_multi ) {
5036
- secp256k1_scalar szero ;
5037
5027
secp256k1_scalar sc ;
5038
5028
secp256k1_ge pt ;
5039
5029
secp256k1_gej r ;
@@ -5044,11 +5034,10 @@ static void test_ecmult_multi_batch_single(secp256k1_ecmult_multi_func ecmult_mu
5044
5034
random_scalar_order (& sc );
5045
5035
data .sc = & sc ;
5046
5036
data .pt = & pt ;
5047
- secp256k1_scalar_set_int (& szero , 0 );
5048
5037
5049
5038
/* Try to multiply 1 point, but scratch space is empty.*/
5050
5039
scratch_empty = secp256k1_scratch_create (& CTX -> error_callback , 0 );
5051
- CHECK (!ecmult_multi (& CTX -> error_callback , scratch_empty , & r , & szero , ecmult_multi_callback , & data , 1 ));
5040
+ CHECK (!ecmult_multi (& CTX -> error_callback , scratch_empty , & r , & secp256k1_scalar_zero , ecmult_multi_callback , & data , 1 ));
5052
5041
secp256k1_scratch_destroy (& CTX -> error_callback , scratch_empty );
5053
5042
}
5054
5043
@@ -5156,7 +5145,6 @@ static void test_ecmult_multi_batch_size_helper(void) {
5156
5145
static void test_ecmult_multi_batching (void ) {
5157
5146
static const int n_points = 2 * ECMULT_PIPPENGER_THRESHOLD ;
5158
5147
secp256k1_scalar scG ;
5159
- secp256k1_scalar szero ;
5160
5148
secp256k1_scalar * sc = (secp256k1_scalar * )checked_malloc (& CTX -> error_callback , sizeof (secp256k1_scalar ) * n_points );
5161
5149
secp256k1_ge * pt = (secp256k1_ge * )checked_malloc (& CTX -> error_callback , sizeof (secp256k1_ge ) * n_points );
5162
5150
secp256k1_gej r ;
@@ -5166,11 +5154,10 @@ static void test_ecmult_multi_batching(void) {
5166
5154
secp256k1_scratch * scratch ;
5167
5155
5168
5156
secp256k1_gej_set_infinity (& r2 );
5169
- secp256k1_scalar_set_int (& szero , 0 );
5170
5157
5171
5158
/* Get random scalars and group elements and compute result */
5172
5159
random_scalar_order (& scG );
5173
- secp256k1_ecmult (& r2 , & r2 , & szero , & scG );
5160
+ secp256k1_ecmult (& r2 , & r2 , & secp256k1_scalar_zero , & scG );
5174
5161
for (i = 0 ; i < n_points ; i ++ ) {
5175
5162
secp256k1_ge ptg ;
5176
5163
secp256k1_gej ptgj ;
0 commit comments