.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.29) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{ . if \nF \{ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "fr::crypto::EVP_DigestSignInit 3SSL" .TH fr::crypto::EVP_DigestSignInit 3SSL "2015-12-31" "1.0.2a 1.0.2c" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NOM" .IX Header "NOM" EVP_DigestSignInit, EVP_DigestSignUpdate, EVP_DigestSignFinal \- Fonctions \&\s-1EVP\s0 d’empreinte numérique .SH "SYNOPSIS" .IX Header "SYNOPSIS" \&\fB #include \fR .PP \&\fB int EVP_DigestSignInit(\s-1EVP_MD_CTX\s0 *\fR\fIctx\fR\fB, \s-1EVP_PKEY_CTX\s0 **\fR\fIpctx\fR\fB,\fR \fBconst \s-1EVP_MD\s0 *\fR\fItype\fR\fB, \s-1ENGINE\s0 *e, \s-1EVP_PKEY\s0 *\fR\fIpkey\fR\fB);\fR \fBint EVP_DigestSignUpdate(\s-1EVP_MD_CTX\s0 *\fR\fIctx\fR\fB, const void *\fR\fId\fR\fB, unsigned int cnt);\fR \fBint EVP_DigestSignFinal(\s-1EVP_MD_CTX\s0 *\fR\fIctx\fR\fB, unsigned char *\fR\fIsig\fR\fB, size_t *\fR\fIsiglen\fR\fB);\fR .SH "DESCRIPTION" .IX Header "DESCRIPTION" Les routines de signature \s-1EVP\s0 constituent une interface de haut niveau pour les signatures numériques. .PP \&\fBEVP_DigestSignInit\fR() définit de contexte de signature \fIctx\fR à utiliser avec le \fBtype\fR d’empreinte numérique à partir de l’ENGINE \fIimpl\fR et la clef privée \fIpkey\fR. \fIctx\fR doit être initialisé avec \fBEVP_MD_CTX_init\fR() avant l’appel de cette fonction. Si n’est pas \s-1NULL, \s0\fB\s-1EVP_PKEY_CTX\s0\fR de cette opération de signature sera écrit dans \fI*pctx\fR : cela peut être utilisé pour définir des options alternatives de signature. .PP \&\fBEVP_DigestSignUpdate\fR() calcule un hachage de \fIcnt\fR octets de données vers \fId\fR dans le contexte de signature \fIctx\fR. Cette fonction peut être appelée plusieurs fois dans le même \fIctx\fR pour tenir compte de données additionnelles. Cette fonction est actuellement implémentée en utilisant une macro. .PP \&\fBEVP_DigestSignFinal\fR() signe les données dans \fIctx\fR et place l’empreinte numérique dans \fIsig\fR. Si \fIsig\fR est \s-1NULL,\s0 alors la taille maximale du tampon de sortie est écrite dans le paramètre \fIsiglen\fR. Si \fIsig\fR n’est pas \&\s-1NULL,\s0 alors avant l’appel, le paramètre \fIsiglen\fR doit contenir la taille du tampon \fIsig\fR ; si l’appel est réussi, l’empreinte numérique est écrite dans \&\fIsig\fR et le total de données écrites dans \fIsiglen\fR. .SH "VALEURS DE RETOUR" .IX Header "VALEURS DE RETOUR" \&\fBEVP_DigestSignInit\fR(), \fBEVP_DigestSignUpdate\fR() et \&\fBEVP_DigestSignaFinal\fR() renvoient \fB1\fR en cas de succès ou une valeur négative en cas d’échec. En particulier, une valeur de retour de \fB\-2\fR signifie que l’opération n’est pas permise par l’algorithme de clef publique. .PP Les codes d'erreur peuvent être obtenus par \&\fBERR_get_error\fR(3). .SH "NOTES" .IX Header "NOTES" L’interface \fB\s-1EVP\s0\fR pour les signatures numériques devrait presque toujours être utilisée de préférence à des interfaces de bas niveaux. Cela est ainsi parce que le code devient évident pour l’algorithme utilisé et bien plus souple. .PP Dans les versions précédentes d’OpenSSL, un lien existait entre les empreintes numériques et les algorithmes de clef publique. Cela signifiait que les « clones » d’algorithmes de hachage tels que \fBEVP_dss1\fR() devaient être utilisés pour les empreintes numériques \s-1SHA1\s0 et \s-1DSA.\s0 Cela n’est plus nécessaire et l’utilisation de clone est maintenant déconseillée. .PP Pour quelques sortes de clefs et de paramètres, la graine du générateur de nombre aléatoire doit être fournie ou l’opération échouera. .PP L’appel à \fBEVP_DigestSignFinal\fR() de manière interne fait une copie du contexte de signature. Cela signifie que des appels à \&\fBEVP_DigestSignUpdate\fR() et \fBEVP_DigestSignFinal\fR() peuvent être faits en cas de données additionnelles. .PP Puisqu’une seule copie est réalisée, le contexte de l’empreinte numérique doit être nettoyé après utilisation en appelant \fBEVP_MD_CTX_cleanup\fR() ou une fuite de mémoire se produira. .PP L’utilisation de \fBEVP_PKEY_size\fR() avec ces fonctions est déconseillée car quelques opérations de signature peuvent avoir une taille d’empreinte numérique dépendant de paramètres. Par conséquent, \fBEVP_PKEY_size\fR() devrait renvoyer une valeur donnant la taille maximale possible d’empreinte numérique pour n’importe quelles définitions des paramètres. .SH "VOIR AUSSI" .IX Header "VOIR AUSSI" \&\fBEVP_DigestVerifyInit\fR(3), \&\fBEVP_DigestInit\fR(3), \fBerr\fR(3), \&\fBevp\fR(3), \fBhmac\fR(3), \fBmd2\fR(3), \&\fBmd5\fR(3), \fBmdc2\fR(3), \fBripemd\fR(3), \&\fBsha\fR(3), \fBdgst\fR(1) .SH "HISTORIQUE" .IX Header "HISTORIQUE" \&\fBEVP_DigestSignInit\fR(), \fBEVP_DigestSignUpdate\fR() et \&\fBEVP_DigestSignFinal\fR() ont été ajoutées pour la première fois à OpenSSL 1.0.0. .SH "TRADUCTION" .IX Header "TRADUCTION" La traduction de cette page de manuel est maintenue par les membres de la liste . Veuillez signaler toute erreur de traduction par un rapport de bogue sur le paquet manpages-fr-extra.