1=pod 2 3=head1 NAME 4 5EVP_sha224, 6EVP_sha256, 7EVP_sha512_224, 8EVP_sha512_256, 9EVP_sha384, 10EVP_sha512 11- SHA-2 For EVP 12 13=head1 SYNOPSIS 14 15 #include <openssl/evp.h> 16 17 const EVP_MD *EVP_sha224(void); 18 const EVP_MD *EVP_sha256(void); 19 const EVP_MD *EVP_sha512_224(void); 20 const EVP_MD *EVP_sha512_256(void); 21 const EVP_MD *EVP_sha384(void); 22 const EVP_MD *EVP_sha512(void); 23 24=head1 DESCRIPTION 25 26SHA-2 (Secure Hash Algorithm 2) is a family of cryptographic hash functions 27standardized in NIST FIPS 180-4, first published in 2001. 28 29=over 4 30 31=item EVP_sha224(), 32EVP_sha256(), 33EVP_sha512_224, 34EVP_sha512_256, 35EVP_sha384(), 36EVP_sha512() 37 38The SHA-2 SHA-224, SHA-256, SHA-512/224, SHA512/256, SHA-384 and SHA-512 39algorithms, which generate 224, 256, 224, 256, 384 and 512 bits 40respectively of output from a given input. 41 42The two algorithms: SHA-512/224 and SHA512/256 are truncated forms of the 43SHA-512 algorithm. They are distinct from SHA-224 and SHA-256 even though 44their outputs are of the same size. 45 46=back 47 48=head1 NOTES 49 50Developers should be aware of the negative performance implications of 51calling these functions multiple times and should consider using 52L<EVP_MD_fetch(3)> instead. 53See L<crypto(7)/Performance> for further information. 54 55=head1 RETURN VALUES 56 57These functions return a B<EVP_MD> structure that contains the 58implementation of the message digest. See L<EVP_MD_meth_new(3)> for 59details of the B<EVP_MD> structure. 60 61=head1 CONFORMING TO 62 63NIST FIPS 180-4. 64 65=head1 SEE ALSO 66 67L<evp(7)>, 68L<EVP_DigestInit(3)> 69 70=head1 COPYRIGHT 71 72Copyright 2017-2023 The OpenSSL Project Authors. All Rights Reserved. 73 74Licensed under the Apache License 2.0 (the "License"). You may not use 75this file except in compliance with the License. You can obtain a copy 76in the file LICENSE in the source distribution or at 77L<https://www.openssl.org/source/license.html>. 78 79=cut 80 81