]>
Commit | Line | Data |
---|---|---|
bbda8ce9 RT |
1 | =pod |
2 | ||
3 | =head1 NAME | |
4 | ||
5 | EVP_sha3_224, | |
6 | EVP_sha3_256, | |
7 | EVP_sha3_384, | |
8 | EVP_sha3_512, | |
9 | EVP_shake128, | |
10 | EVP_shake256 | |
11 | - SHA-3 For EVP | |
12 | ||
13 | =head1 SYNOPSIS | |
14 | ||
15 | #include <openssl/evp.h> | |
16 | ||
17 | const EVP_MD *EVP_sha3_224(void); | |
18 | const EVP_MD *EVP_sha3_256(void); | |
19 | const EVP_MD *EVP_sha3_384(void); | |
20 | const EVP_MD *EVP_sha3_512(void); | |
21 | ||
22 | const EVP_MD *EVP_shake128(void); | |
23 | const EVP_MD *EVP_shake256(void); | |
24 | ||
25 | =head1 DESCRIPTION | |
26 | ||
27 | SHA-3 (Secure Hash Algorithm 3) is a family of cryptographic hash functions | |
28 | standardized in NIST FIPS 202, first published in 2015. It is based on the | |
29 | Keccak algorithm. | |
30 | ||
31 | =over 4 | |
32 | ||
33 | =item EVP_sha3_224(), | |
34 | EVP_sha3_256(), | |
35 | EVP_sha3_384(), | |
36 | EVP_sha3_512() | |
37 | ||
38 | The SHA-3 SHA-3-224, SHA-3-256, SHA-3-384, and SHA-3-512 algorithms | |
39 | respectively. They produce 224, 256, 384 and 512 bits of output from a given | |
40 | input. | |
41 | ||
42 | =item EVP_shake128(), | |
43 | EVP_shake256() | |
44 | ||
45 | The SHAKE-128 and SHAKE-256 Extendable Output Functions (XOF) that can generate | |
46 | a variable hash length. | |
47 | ||
48 | Specifically, B<EVP_shake128> provides an overall security of 128 bits, while | |
49 | B<EVP_shake256> provides that of 256 bits. | |
50 | ||
51 | =back | |
52 | ||
53 | ||
54 | =head1 RETURN VALUES | |
55 | ||
56 | These functions return a B<EVP_MD> structure that contains the | |
57 | implementation of the symmetric cipher. See L<EVP_MD_meth_new(3)> for | |
58 | details of the B<EVP_MD> structure. | |
59 | ||
60 | =head1 CONFORMING TO | |
61 | ||
62 | NIST FIPS 202. | |
63 | ||
64 | =head1 SEE ALSO | |
65 | ||
66 | L<evp(7)>, | |
67 | L<EVP_DigestInit(3)> | |
68 | ||
69 | =head1 COPYRIGHT | |
70 | ||
71 | Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. | |
72 | ||
4746f25a | 73 | Licensed under the Apache License 2.0 (the "License"). You may not use |
bbda8ce9 RT |
74 | this file except in compliance with the License. You can obtain a copy |
75 | in the file LICENSE in the source distribution or at | |
76 | L<https://www.openssl.org/source/license.html>. | |
77 | ||
78 | =cut | |
79 |