Ulf Möller | 9dbc41d | 2000-02-03 18:22:01 +0000 | [diff] [blame] | 1 | =pod |
| 2 | |
| 3 | =head1 NAME |
| 4 | |
| 5 | RIPEMD160, RIPEMD160_Init, RIPEMD160_Update, RIPEMD160_Final - |
| 6 | RIPEMD-160 hash function |
| 7 | |
| 8 | =head1 SYNOPSIS |
| 9 | |
| 10 | #include <openssl/ripemd.h> |
| 11 | |
| 12 | unsigned char *RIPEMD160(const unsigned char *d, unsigned long n, |
| 13 | unsigned char *md); |
| 14 | |
| 15 | void RIPEMD160_Init(RIPEMD160_CTX *c); |
Ulf Möller | 4d524e1 | 2000-02-24 11:55:57 +0000 | [diff] [blame] | 16 | void RIPEMD160_Update(RIPEMD_CTX *c, const void *data, |
Ulf Möller | 9dbc41d | 2000-02-03 18:22:01 +0000 | [diff] [blame] | 17 | unsigned long len); |
| 18 | void RIPEMD160_Final(unsigned char *md, RIPEMD160_CTX *c); |
| 19 | |
| 20 | =head1 DESCRIPTION |
| 21 | |
| 22 | RIPEMD-160 is a cryptographic hash function with a |
| 23 | 160 bit output. |
| 24 | |
| 25 | RIPEMD160() computes the RIPEMD-160 message digest of the B<n> |
| 26 | bytes at B<d> and places it in B<md> (which must have space for |
| 27 | RIPEMD160_DIGEST_LENGTH == 20 bytes of output). If B<md> is NULL, the digest |
| 28 | is placed in a static array. |
| 29 | |
| 30 | The following functions may be used if the message is not completely |
| 31 | stored in memory: |
| 32 | |
| 33 | RIPEMD160_Init() initializes a B<RIPEMD160_CTX> structure. |
| 34 | |
| 35 | RIPEMD160_Update() can be called repeatedly with chunks of the message to |
| 36 | be hashed (B<len> bytes at B<data>). |
| 37 | |
| 38 | RIPEMD160_Final() places the message digest in B<md>, which must have |
| 39 | space for RIPEMD160_DIGEST_LENGTH == 20 bytes of output, and erases |
| 40 | the B<RIPEMD160_CTX>. |
| 41 | |
Ulf Möller | d52c973 | 2000-02-25 16:00:24 +0000 | [diff] [blame] | 42 | Applications should use the higher level functions |
| 43 | L<EVP_DigestInit(3)|EVP_DigestInit(3)> etc. instead of calling the |
| 44 | hash functions directly. |
Ulf Möller | 4facdbb | 2000-02-06 23:26:31 +0000 | [diff] [blame] | 45 | |
Ulf Möller | 9dbc41d | 2000-02-03 18:22:01 +0000 | [diff] [blame] | 46 | =head1 RETURN VALUES |
| 47 | |
| 48 | RIPEMD160() returns a pointer to the hash value. |
| 49 | |
| 50 | RIPEMD160_Init(), RIPEMD160_Update() and RIPEMD160_Final() do not |
| 51 | return values. |
| 52 | |
| 53 | =head1 CONFORMING TO |
| 54 | |
| 55 | ISO/IEC 10118-3 (draft) (??) |
| 56 | |
| 57 | =head1 SEE ALSO |
| 58 | |
Ulf Möller | 4facdbb | 2000-02-06 23:26:31 +0000 | [diff] [blame] | 59 | L<sha(3)|sha(3)>, L<hmac(3)|hmac(3)>, L<EVP_DigestInit(3)|EVP_DigestInit(3)> |
Ulf Möller | 9dbc41d | 2000-02-03 18:22:01 +0000 | [diff] [blame] | 60 | |
| 61 | =head1 HISTORY |
| 62 | |
| 63 | RIPEMD160(), RIPEMD160_Init(), RIPEMD160_Update() and |
| 64 | RIPEMD160_Final() are available since SSLeay 0.9.0. |
| 65 | |
| 66 | =cut |