@@ -790,7 +790,7 @@ void signed30_to_uint16(uint16_t* out, const secp256k1_modinv32_signed30* in) {
790
790
void mutate_sign_signed30 (secp256k1_modinv32_signed30 * x ) {
791
791
int i ;
792
792
for (i = 0 ; i < 16 ; ++ i ) {
793
- int pos = secp256k1_testrand_int ( 8 );
793
+ int pos = secp256k1_testrand_bits ( 3 );
794
794
if (x -> v [pos ] > 0 && x -> v [pos + 1 ] <= 0x3fffffff ) {
795
795
x -> v [pos ] -= 0x40000000 ;
796
796
x -> v [pos + 1 ] += 1 ;
@@ -862,7 +862,7 @@ void mutate_sign_signed62(secp256k1_modinv64_signed62* x) {
862
862
static const int64_t M62 = (int64_t )(UINT64_MAX >> 2 );
863
863
int i ;
864
864
for (i = 0 ; i < 8 ; ++ i ) {
865
- int pos = secp256k1_testrand_int ( 4 );
865
+ int pos = secp256k1_testrand_bits ( 2 );
866
866
if (x -> v [pos ] > 0 && x -> v [pos + 1 ] <= M62 ) {
867
867
x -> v [pos ] -= (M62 + 1 );
868
868
x -> v [pos + 1 ] += 1 ;
@@ -4261,7 +4261,7 @@ void test_secp256k1_pippenger_bucket_window_inv(void) {
4261
4261
* for a given scratch space.
4262
4262
*/
4263
4263
void test_ecmult_multi_pippenger_max_points (void ) {
4264
- size_t scratch_size = secp256k1_testrand_int ( 256 );
4264
+ size_t scratch_size = secp256k1_testrand_bits ( 8 );
4265
4265
size_t max_size = secp256k1_pippenger_scratch_size (secp256k1_pippenger_bucket_window_inv (PIPPENGER_MAX_BUCKET_WINDOW - 1 )+ 512 , 12 );
4266
4266
secp256k1_scratch * scratch ;
4267
4267
size_t n_points_supported ;
@@ -6023,14 +6023,14 @@ static void random_ber_signature(unsigned char *sig, size_t *len, int* certainly
6023
6023
/* We generate two classes of numbers: nlow==1 "low" ones (up to 32 bytes), nlow==0 "high" ones (32 bytes with 129 top bits set, or larger than 32 bytes) */
6024
6024
nlow [n ] = der ? 1 : (secp256k1_testrand_bits (3 ) != 0 );
6025
6025
/* The length of the number in bytes (the first byte of which will always be nonzero) */
6026
- nlen [n ] = nlow [n ] ? secp256k1_testrand_int (33 ) : 32 + secp256k1_testrand_int (200 ) * secp256k1_testrand_int ( 8 ) / 8 ;
6026
+ nlen [n ] = nlow [n ] ? secp256k1_testrand_int (33 ) : 32 + secp256k1_testrand_int (200 ) * secp256k1_testrand_bits ( 3 ) / 8 ;
6027
6027
CHECK (nlen [n ] <= 232 );
6028
6028
/* The top bit of the number. */
6029
6029
nhbit [n ] = (nlow [n ] == 0 && nlen [n ] == 32 ) ? 1 : (nlen [n ] == 0 ? 0 : secp256k1_testrand_bits (1 ));
6030
6030
/* The top byte of the number (after the potential hardcoded 16 0xFF characters for "high" 32 bytes numbers) */
6031
6031
nhbyte [n ] = nlen [n ] == 0 ? 0 : (nhbit [n ] ? 128 + secp256k1_testrand_bits (7 ) : 1 + secp256k1_testrand_int (127 ));
6032
6032
/* The number of zero bytes in front of the number (which is 0 or 1 in case of DER, otherwise we extend up to 300 bytes) */
6033
- nzlen [n ] = der ? ((nlen [n ] == 0 || nhbit [n ]) ? 1 : 0 ) : (nlow [n ] ? secp256k1_testrand_int (3 ) : secp256k1_testrand_int (300 - nlen [n ]) * secp256k1_testrand_int ( 8 ) / 8 );
6033
+ nzlen [n ] = der ? ((nlen [n ] == 0 || nhbit [n ]) ? 1 : 0 ) : (nlow [n ] ? secp256k1_testrand_int (3 ) : secp256k1_testrand_int (300 - nlen [n ]) * secp256k1_testrand_bits ( 3 ) / 8 );
6034
6034
if (nzlen [n ] > ((nlen [n ] == 0 || nhbit [n ]) ? 1 : 0 )) {
6035
6035
* certainly_not_der = 1 ;
6036
6036
}
@@ -6039,7 +6039,7 @@ static void random_ber_signature(unsigned char *sig, size_t *len, int* certainly
6039
6039
nlenlen [n ] = nlen [n ] + nzlen [n ] < 128 ? 0 : (nlen [n ] + nzlen [n ] < 256 ? 1 : 2 );
6040
6040
if (!der ) {
6041
6041
/* nlenlen[n] max 127 bytes */
6042
- int add = secp256k1_testrand_int (127 - nlenlen [n ]) * secp256k1_testrand_int ( 16 ) * secp256k1_testrand_int ( 16 ) / 256 ;
6042
+ int add = secp256k1_testrand_int (127 - nlenlen [n ]) * secp256k1_testrand_bits ( 4 ) * secp256k1_testrand_bits ( 4 ) / 256 ;
6043
6043
nlenlen [n ] += add ;
6044
6044
if (add != 0 ) {
6045
6045
* certainly_not_der = 1 ;
@@ -6053,15 +6053,15 @@ static void random_ber_signature(unsigned char *sig, size_t *len, int* certainly
6053
6053
CHECK (tlen <= 856 );
6054
6054
6055
6055
/* The length of the garbage inside the tuple. */
6056
- elen = (der || indet ) ? 0 : secp256k1_testrand_int (980 - tlen ) * secp256k1_testrand_int ( 8 ) / 8 ;
6056
+ elen = (der || indet ) ? 0 : secp256k1_testrand_int (980 - tlen ) * secp256k1_testrand_bits ( 3 ) / 8 ;
6057
6057
if (elen != 0 ) {
6058
6058
* certainly_not_der = 1 ;
6059
6059
}
6060
6060
tlen += elen ;
6061
6061
CHECK (tlen <= 980 );
6062
6062
6063
6063
/* The length of the garbage after the end of the tuple. */
6064
- glen = der ? 0 : secp256k1_testrand_int (990 - tlen ) * secp256k1_testrand_int ( 8 ) / 8 ;
6064
+ glen = der ? 0 : secp256k1_testrand_int (990 - tlen ) * secp256k1_testrand_bits ( 3 ) / 8 ;
6065
6065
if (glen != 0 ) {
6066
6066
* certainly_not_der = 1 ;
6067
6067
}
@@ -6076,7 +6076,7 @@ static void random_ber_signature(unsigned char *sig, size_t *len, int* certainly
6076
6076
} else {
6077
6077
int tlenlen = tlen < 128 ? 0 : (tlen < 256 ? 1 : 2 );
6078
6078
if (!der ) {
6079
- int add = secp256k1_testrand_int (127 - tlenlen ) * secp256k1_testrand_int ( 16 ) * secp256k1_testrand_int ( 16 ) / 256 ;
6079
+ int add = secp256k1_testrand_int (127 - tlenlen ) * secp256k1_testrand_bits ( 4 ) * secp256k1_testrand_bits ( 4 ) / 256 ;
6080
6080
tlenlen += add ;
6081
6081
if (add != 0 ) {
6082
6082
* certainly_not_der = 1 ;
0 commit comments