.\" 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::sha 3SSL" .TH fr::crypto::sha 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" \&\s-1SHA1,\s0 SHA1_Init, SHA1_Update, SHA1_Final, \s-1SHA224,\s0 SHA224_Init, SHA224_Update, SHA224_Final, \s-1SHA256,\s0 SHA256_Init, SHA256_Update, SHA256_Final, \s-1SHA384,\s0 SHA384_Init, SHA384_Update, SHA384_Final, \s-1SHA512,\s0 SHA512_Init, SHA512_Update, SHA512_Final \- Algorithme de hachage sécurisé (« Secure Hash Algorithm ») .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int SHA1_Init(SHA_CTX *c); \& int SHA1_Update(SHA_CTX *c, const void *data, size_t len); \& int SHA1_Final(unsigned char *md, SHA_CTX *c); \& unsigned char *SHA1(const unsigned char *d, size_t n, \& unsigned char *md); \& \& int SHA224_Init(SHA256_CTX *c); \& int SHA224_Update(SHA256_CTX *c, const void *data, size_t len); \& int SHA224_Final(unsigned char *md, SHA256_CTX *c); \& unsigned char *SHA224(const unsigned char *d, size_t n, \& unsigned char *md); \& \& int SHA256_Init(SHA256_CTX *c); \& int SHA256_Update(SHA256_CTX *c, const void *data, size_t len); \& int SHA256_Final(unsigned char *md, SHA256_CTX *c); \& unsigned char *SHA256(const unsigned char *d, size_t n, \& unsigned char *md); \& \& int SHA384_Init(SHA512_CTX *c); \& int SHA384_Update(SHA512_CTX *c, const void *data, size_t len); \& int SHA384_Final(unsigned char *md, SHA512_CTX *c); \& unsigned char *SHA384(const unsigned char *d, size_t n, \& unsigned char *md); \& \& int SHA512_Init(SHA512_CTX *c); \& int SHA512_Update(SHA512_CTX *c, const void *data, size_t len); \& int SHA512_Final(unsigned char *md, SHA512_CTX *c); \& unsigned char *SHA512(const unsigned char *d, size_t n, \& unsigned char *md); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" Les applications devraient utiliser les fonctions de haut niveau \&\fIEVP_DigestInit\fR\|(3), etc. plutôt que d'appeler les fonctions de hachage directement. .PP \&\s-1SHA\-1 \s0(« Secure Hash Algorithm ») est une fonction de hachage cryptographique avec une sortie de 160 bits. .PP \&\s-1\fISHA1\s0()\fR calcule le condensé de message \s-1SHA\-1\s0 des \fBn\fR octets de \fBd\fR et le place dans \fBmd\fR (qui doit avoir de la place pour \s-1SHA_DIGEST_LENGTH\s0 == 20 octets de sortie). Si \fBmd\fR est \s-1NULL,\s0 le condensé est placé dans un tableau statique. Note : le réglage de \fBmd\fR à \s-1NULL\s0 n'est \fBpas à fil sécurisé\fR. .PP Les fonctions suivantes peuvent être utiles si le message n'est pas stocké en entier dans la mémoire : .PP \&\fISHA1_Init()\fR initialise une structure \fB\s-1SHA_CTX\s0\fR. .PP \&\fISHA1_Update()\fR peut être appelée de façon répétée avec des bouts du message dont il faut calculer le hachage (\fBlen\fR octets de \fBdata\fR). .PP \&\fISHA1_Final()\fR place le condensé de message dans \fBmd\fR, qui doit avoir de la place pour \s-1SHA_DIGEST_LENGTH\s0 == 20 octets de données, et efface \fB\s-1SHA_CTX\s0\fR. .PP Les familles de fonctions \s-1SHA224, SHA256, SHA384\s0 et \s-1SHA512\s0 opèrent de la même façon que les fonctions \s-1SHA1.\s0 Notez que \s-1SHA224\s0 et \s-1SHA256\s0 utilisent un objet \fB\s-1SHA256_CTX\s0\fR à la place de \fB\s-1SHA_CTX\s0\fR. \s-1SHA384\s0 et \s-1SHA512\s0 utilisent \&\fB\s-1SHA512_CTX\s0\fR. Le tampon \fBmd\fR doit avoir de la place pour la sortie de la variante de \s-1SHA\s0 utilisée (définie par \s-1SHA224_DIGEST_LENGTH, SHA256_DIGEST_LENGTH, SHA384_DIGEST_LENGTH\s0 et \s-1SHA512_DIGEST_LENGTH\s0). Notez aussi que, comme pour la fonction \s-1\fISHA1\s0()\fR vue plus haut, les fonctions \&\s-1\fISHA224\s0()\fR, \s-1\fISHA256\s0()\fR, \s-1\fISHA384\s0()\fR et \s-1\fISHA512\s0()\fR ne sont pas à fil sécurisé si \fBmd\fR est \s-1NULL.\s0 .PP Le prédécesseur de \s-1SHA\-1, SHA,\s0 est aussi implémenté, mais ne devrait être utilisé que si nécessaire pour des raisons de compatibilité. .SH "VALEURS DE RETOUR" .IX Header "VALEURS DE RETOUR" \&\s-1\fISHA1\s0()\fR, \s-1\fISHA224\s0()\fR, \s-1\fISHA256\s0()\fR, \s-1\fISHA384\s0()\fR et \s-1\fISHA512\s0()\fR renvoient un pointeur vers la valeur de hachage. .PP \&\fBSHA1_Init\fR(), \fBSHA1_Update\fR() et \fBSHA1_Final\fR() et les fonctions équivalentes \s-1SHA224, SHA256, SHA384\s0 et \s-1SHA512\s0 renvoient \fB1\fR en cas de succès et \fB0\fR sinon. .SH "MISE EN CONFORMITÉ" .IX Header "MISE EN CONFORMITÉ" \&\s-1US\s0 Federal Information Processing Standard \s-1FIPS PUB 180\-1 \s0(Secure Hash Standard), \s-1ANSI X9.30\s0 .SH "VOIR AUSSI" .IX Header "VOIR AUSSI" \&\fIripemd\fR\|(3), \fIhmac\fR\|(3), \&\fIEVP_DigestInit\fR\|(3) .SH "HISTORIQUE" .IX Header "HISTORIQUE" \&\s-1\fISHA1\s0()\fR, \fISHA1_Init()\fR, \fISHA1_Update()\fR et \fISHA1_Final()\fR sont disponibles dans toutes les versions de SSLeay et d'OpenSSL. .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.