mirror of
https://github.com/monero-project/monero.git
synced 2026-01-03 00:11:19 -08:00
crypto: never return zero in random32_unbiased
This avoids problems when the caller can't deal with a zero walue, which happens often enough that it's worth nipping the problem in the bud.
This commit is contained in:
@@ -116,7 +116,7 @@ namespace crypto {
|
||||
do
|
||||
{
|
||||
generate_random_bytes_thread_safe(32, bytes);
|
||||
} while (!less32(bytes, limit)); // should be good about 15/16 of the time
|
||||
} while (!sc_isnonzero(bytes) && !less32(bytes, limit)); // should be good about 15/16 of the time
|
||||
sc_reduce32(bytes);
|
||||
}
|
||||
/* generate a random 32-byte (256-bit) integer and copy it to res */
|
||||
|
||||
Reference in New Issue
Block a user