NOM¶
BN_rand, BN_pseudo_rand - Produire un nombre pseudoaléatoire
SYNOPSIS¶
#include <openssl/bn.h>
int BN_rand(BIGNUM *rnd, int bits, int top, int bottom);
int BN_pseudo_rand(BIGNUM *rnd, int bits, int top, int bottom);
int BN_rand_range(BIGNUM *rnd, BIGNUM *range);
int BN_pseudo_rand_range(BIGNUM *rnd, BIGNUM *range);
DESCRIPTION¶
BN_rand() produit un nombre pseudoaléatoire cryptographiquement
fort de taille
bits bits et le stocke dans
rnd. Si
top est -1, le bit de poids fort du nombre aléatoire peut
être zéro. Si
top est 0, il est défini à 1
et si
top est 1, les deux bits de poids fort du nombre seront
définis à 1, de tel sorte que le produit de ces deux nombres
aura toujours une taille de 2*
bits. Si
bottom est vrai, le
nombre sera impair.
BN_pseudo_rand() fait la même chose, sauf que les nombres
pseudoaléatoires produits par cette fonction ne sont pas
nécessairement imprévisibles. Ils peuvent servir à des
utilisations non cryptographiques et à certaines utilisations dans des
protocoles cryptographiques, mais normalement pas à la
génération de clef, etc.
BN_rand_range() produit un nombre pseudoaléatoire
cryptographiquement fort
rnd dans l'intervalle 0 <=
rnd <
range.
BN_pseudo_rand_range() fait
la même chose, mais est basée sur
BN_pseudo_rand(), donc
les nombres pseudoaléatoires produits par cette fonction ne sont pas
nécessairement imprévisibles.
Le générateur de nombres aléatoires doit être
initialisé avant d'appeler
BN_rand() ou
BN_rand_range().
VALEURS DE RETOUR¶
Les fonctions renvoient 1 si elles réussissent et 0 en cas d'erreur. Les
codes d'erreur peuvent être obtenu par
ERR_get_error(3).
VOIR AUSSI¶
bn(3),
ERR_get_error(3),
rand(3),
RAND_add(3),
RAND_bytes(3)
HISTORIQUE¶
BN_rand() est disponible dans toutes les versions de SSLeay et OpenSSL.
BN_pseudo_rand() a été ajoutée dans
OpenSSL 0.9.5. Le cas
top == -1 et la fonction
BN_rand_range() ont été ajoutés dans
OpenSSL 0.9.6a.
BN_pseudo_rand_range() a été
ajoutée dans OpenSSL 0.9.6c.
TRADUCTION¶
La traduction de cette page de manuel est maintenue par les membres de la liste
<debian-l10n-french AT lists DOT debian DOT org>. Veuillez signaler
toute erreur de traduction par un rapport de bogue sur le paquet
manpages-fr-extra.