随机数
- 产生一个加密用的强bits的伪随机数,若top=-1,最高位为 0 或 1 或者 最高位和次高位为1;top=0,最高位为 1 或者 最高位和次高位为1 ;top=1,最高位和次高位为1;
bottom为真,随机数为奇数,bottom 为假,随机数是奇数或偶数;
top 表示 最高 二进制位,bottom 表示 最低 二进制 位
int BN_rand(BIGNUM *rnd, int bits, int top, int bottom); (已测)
注意:当 top==-1 时,随机数实际比特数 一般只比 bits 少 0-3 个比特,几乎没有少 3 个比特数以上的随机数
- 产生一个伪随机数
int BN_pseudo_rand(BIGNUM *rnd, int bits, int top, int bottom); - 产生的随机数0<rnd<range
int BN_rand_range(BIGNUM *rnd, BIGNUM *range); - 产生的伪随机数0<rnd<range
int BN_pseudo_rand_range(BIGNUM *rnd, BIGNUM *range);
网友评论