Provided by: manpages-fr-extra_20151231_all bug

NOM

       DSA_generate_parameters_ex, DSA_generate_parameters - Créer des paramètres DSA

SYNOPSIS

        #include ltopenssl/dsa.h>

        int DSA_generate_parameters_ex(DSA *dsa, int bits,
                 const unsigned char *seed, int seed_len,
                 int *counter_ret, unsigned long *h_ret, BN_GENCB *cb);

       Obsolète :

        DSA *DSA_generate_parameters(int bits, unsigned char *seed,
                 int seed_len int *counter_ret, unsigned long *h_ret,
                 void (*callback)(int, int, void *), void *cb_arg);

DESCRIPTION

       DSA_generate_parameters_ex() crée des nombres premiers p et q et un générateur g pour
       utiliser dans le DSA et conserve le résultat dans dsa.

       bits est la taille du nombre premier à générer ; la DSS permet 1024 bits au maximum.

       Si seed est NULL ou seed_len < 20, les nombres premiers seront créés de façon aléatoire.
       Sinon, ils seront initialisés avec seed. Si la valeur de départ donnée ne renvoie pas de
       nombre premier q, une nouvelle initialisation aléatoire est choisie et placée dans seed.

       DSA_generate_parameters_ex() place le décompte d’itérations dans *counter_ret et un
       compteur utilisé pour trouver un générateur dans *h_ret, sauf s’ils sont NULL.

       Une fonction de rappel pourrait être utilisée pour fournir un retour sur l’avancement de
       la création de clef. Si cb n’est pas NULL, elle sera appelée comme montré ci-dessous. Pour
       plus de renseignements sur la structure BN_GENCB et la fonction BN_GENCB_call() évoquées
       ci-dessous, consultez BN_generate_prime(3).

       •   Quand un candidat pour q est créé, BN_GENCB_call(cb, 0, m++) est appelée (m est 0 pour
           le premier candidat).

       •   Quand un candidat pour q a passé un test par divisions successives, BN_GENCB_call(cb,
           1, -1) est appelée. Alors qu’un candidat pour q est testé par les tests de primalité
           de Miller-Rabin, BN_GENCB_call(cb, 1, i) est appelée dans la boucle externe (une fois
           pour chaque témoin confirmant que le candidat pourrait être premier) ; i est le
           compteur de boucles (commençant à 0).

       •   Quand un nombre premier q a été trouvé, BN_GENCB_call(cb, 2, 0) et BN_GENCB_call(cb,
           3, 0) sont appelées.

       •   Avant qu’un candidat pour p (autre que le premier) ne soit créé et testé,
           BN_GENCB_call(cb, 0, compteur) est appelée.

       •   Quand un candidat pour p a passé un test par divisions successives, BN_GENCB_call(cb,
           1, -1) est appelée. Alors qu’il est testé par les tests de primalité de Miller-Rabin,
           BN_GENCB_call(cb, 1, i) est appelée dans la boucle externe (une fois pour chaque
           témoin confirmant que le candidat pourrait être premier). i est le compteur de boucle
           (commençant à 0).

       •   Quand p a été trouvé, BN_GENCB_call(cb, 2, 1) est appelée.

       •   Quand le générateur a été trouvé, BN_GENCB_call(cb, 3, 1) est appelée.

       DSA_generate_parameters() (obsolète) fonctionne de façon très similaire à
       DSA_generate_parameters_ex(), à part qu’aucun paramètre dsa n’est passé et, qu’à la place,
       une structure DSA nouvellement allouée est renvoyée. De plus, les rappels « à l’ancienne »
       sont utilisés au lieu de la nouvelle approche basée sur BN_GENCB. Consultez
       BN_generate_prime(3) pour plus de renseignements.

VALEUR DE RETOUR

       DSA_generate_parameters_ex() renvoie 1 si elle réussit et 0 sinon.

       DSA_generate_parameters() renvoie un pointeur vers la structure DSA ou NULL en cas d’échec
       de création de paramètre.

       Les codes d'erreur peuvent être obtenus à l'aide de ERR_get_error(3).

BOGUES

       Les tailles de seed > 20 ne sont pas prises en charge.

VOIR AUSSI

       dsa(3), ERR_get_error(3), rand(3), DSA_free(3), BN_generate_prime(3)

HISTORIQUE

       DSA_generate_parameters() est apparue dans SSLeay 0.8. L’argument cb_arg a été ajouté dans
       SSLeay 0.9.0. Dans OpenSSL jusqu’à la version 0.9.4, callback(1, ...) était appelée dans
       la boucle interne du test de Miller-Rabin à chaque fois qu’elle atteignait l’étape du
       carré (les paramètres de callback n’indiquaient pas le nombre de témoins qui avaient été
       essayés) ; depuis OpenSSL 0.9.5, callback(1, ...) est appelée comme dans BN_is_prime(3),
       c’est-à-dire une fois par témoin.

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.