diff options
Diffstat (limited to 'src/lib/libcrypto/doc/HMAC.pod')
| -rw-r--r-- | src/lib/libcrypto/doc/HMAC.pod | 106 |
1 files changed, 0 insertions, 106 deletions
diff --git a/src/lib/libcrypto/doc/HMAC.pod b/src/lib/libcrypto/doc/HMAC.pod deleted file mode 100644 index d92138d273..0000000000 --- a/src/lib/libcrypto/doc/HMAC.pod +++ /dev/null | |||
| @@ -1,106 +0,0 @@ | |||
| 1 | =pod | ||
| 2 | |||
| 3 | =head1 NAME | ||
| 4 | |||
| 5 | HMAC, HMAC_Init, HMAC_Update, HMAC_Final, HMAC_cleanup - HMAC message | ||
| 6 | authentication code | ||
| 7 | |||
| 8 | =head1 SYNOPSIS | ||
| 9 | |||
| 10 | #include <openssl/hmac.h> | ||
| 11 | |||
| 12 | unsigned char *HMAC(const EVP_MD *evp_md, const void *key, | ||
| 13 | int key_len, const unsigned char *d, int n, | ||
| 14 | unsigned char *md, unsigned int *md_len); | ||
| 15 | |||
| 16 | void HMAC_CTX_init(HMAC_CTX *ctx); | ||
| 17 | |||
| 18 | int HMAC_Init(HMAC_CTX *ctx, const void *key, int key_len, | ||
| 19 | const EVP_MD *md); | ||
| 20 | int HMAC_Init_ex(HMAC_CTX *ctx, const void *key, int key_len, | ||
| 21 | const EVP_MD *md, ENGINE *impl); | ||
| 22 | int HMAC_Update(HMAC_CTX *ctx, const unsigned char *data, int len); | ||
| 23 | int HMAC_Final(HMAC_CTX *ctx, unsigned char *md, unsigned int *len); | ||
| 24 | |||
| 25 | void HMAC_CTX_cleanup(HMAC_CTX *ctx); | ||
| 26 | void HMAC_cleanup(HMAC_CTX *ctx); | ||
| 27 | |||
| 28 | =head1 DESCRIPTION | ||
| 29 | |||
| 30 | HMAC is a MAC (message authentication code), i.e. a keyed hash | ||
| 31 | function used for message authentication, which is based on a hash | ||
| 32 | function. | ||
| 33 | |||
| 34 | HMAC() computes the message authentication code of the B<n> bytes at | ||
| 35 | B<d> using the hash function B<evp_md> and the key B<key> which is | ||
| 36 | B<key_len> bytes long. | ||
| 37 | |||
| 38 | It places the result in B<md> (which must have space for the output of | ||
| 39 | the hash function, which is no more than B<EVP_MAX_MD_SIZE> bytes). | ||
| 40 | If B<md> is NULL, the digest is placed in a static array. The size of | ||
| 41 | the output is placed in B<md_len>, unless it is B<NULL>. | ||
| 42 | |||
| 43 | B<evp_md> can be EVP_sha1(), EVP_ripemd160() etc. | ||
| 44 | |||
| 45 | HMAC_CTX_init() initialises a B<HMAC_CTX> before first use. It must be | ||
| 46 | called. | ||
| 47 | |||
| 48 | HMAC_CTX_cleanup() erases the key and other data from the B<HMAC_CTX> | ||
| 49 | and releases any associated resources. It must be called when an | ||
| 50 | B<HMAC_CTX> is no longer required. | ||
| 51 | |||
| 52 | HMAC_cleanup() is an alias for HMAC_CTX_cleanup() included for back | ||
| 53 | compatibility with 0.9.6b, it is deprecated. | ||
| 54 | |||
| 55 | The following functions may be used if the message is not completely | ||
| 56 | stored in memory: | ||
| 57 | |||
| 58 | HMAC_Init() initializes a B<HMAC_CTX> structure to use the hash | ||
| 59 | function B<evp_md> and the key B<key> which is B<key_len> bytes | ||
| 60 | long. It is deprecated and only included for backward compatibility | ||
| 61 | with OpenSSL 0.9.6b. | ||
| 62 | |||
| 63 | HMAC_Init_ex() initializes or reuses a B<HMAC_CTX> structure to use | ||
| 64 | the function B<evp_md> and key B<key>. Either can be NULL, in which | ||
| 65 | case the existing one will be reused. HMAC_CTX_init() must have been | ||
| 66 | called before the first use of an B<HMAC_CTX> in this | ||
| 67 | function. B<N.B. HMAC_Init() had this undocumented behaviour in | ||
| 68 | previous versions of OpenSSL - failure to switch to HMAC_Init_ex() in | ||
| 69 | programs that expect it will cause them to stop working>. | ||
| 70 | |||
| 71 | HMAC_Update() can be called repeatedly with chunks of the message to | ||
| 72 | be authenticated (B<len> bytes at B<data>). | ||
| 73 | |||
| 74 | HMAC_Final() places the message authentication code in B<md>, which | ||
| 75 | must have space for the hash function output. | ||
| 76 | |||
| 77 | =head1 RETURN VALUES | ||
| 78 | |||
| 79 | HMAC() returns a pointer to the message authentication code or NULL if | ||
| 80 | an error occurred. | ||
| 81 | |||
| 82 | HMAC_Init_ex(), HMAC_Update() and HMAC_Final() return 1 for success or 0 if | ||
| 83 | an error occurred. | ||
| 84 | |||
| 85 | HMAC_CTX_init() and HMAC_CTX_cleanup() do not return values. | ||
| 86 | |||
| 87 | =head1 CONFORMING TO | ||
| 88 | |||
| 89 | RFC 2104 | ||
| 90 | |||
| 91 | =head1 SEE ALSO | ||
| 92 | |||
| 93 | L<sha(3)|sha(3)>, L<evp(3)|evp(3)> | ||
| 94 | |||
| 95 | =head1 HISTORY | ||
| 96 | |||
| 97 | HMAC(), HMAC_Init(), HMAC_Update(), HMAC_Final() and HMAC_cleanup() | ||
| 98 | are available since SSLeay 0.9.0. | ||
| 99 | |||
| 100 | HMAC_CTX_init(), HMAC_Init_ex() and HMAC_CTX_cleanup() are available | ||
| 101 | since OpenSSL 0.9.7. | ||
| 102 | |||
| 103 | HMAC_Init_ex(), HMAC_Update() and HMAC_Final() did not return values in | ||
| 104 | versions of OpenSSL before 1.0.0. | ||
| 105 | |||
| 106 | =cut | ||
