Added an explicit yield (OP_SLEEP) to QUIC testing for cooperative threading.
[openssl.git] / doc / man3 / EVP_blake2b512.pod
1 =pod
2
3 =head1 NAME
4
5 EVP_blake2b512,
6 EVP_blake2s256
7 - BLAKE2 For EVP
8
9 =head1 SYNOPSIS
10
11  #include <openssl/evp.h>
12
13  const EVP_MD *EVP_blake2b512(void);
14  const EVP_MD *EVP_blake2s256(void);
15
16 =head1 DESCRIPTION
17
18 BLAKE2 is an improved version of BLAKE, which was submitted to the NIST SHA-3
19 algorithm competition. The BLAKE2s and BLAKE2b algorithms are described in
20 RFC 7693.
21
22 =over 4
23
24 =item EVP_blake2s256()
25
26 The BLAKE2s algorithm that produces a 256-bit output from a given input.
27
28 =item EVP_blake2b512()
29
30 The BLAKE2b algorithm that produces a 512-bit output from a given input.
31
32 =back
33
34 =head1 NOTES
35
36 Developers should be aware of the negative performance implications of
37 calling these functions multiple times and should consider using
38 L<EVP_MD_fetch(3)> with L<EVP_MD-BLAKE2(7)> instead.
39 See L<crypto(7)/Performance> for further information.
40
41 Both algorithms support a variable-length digest,
42 but this is only available through L<EVP_MD-BLAKE2(7)>.
43
44 =head1 RETURN VALUES
45
46 These functions return a B<EVP_MD> structure that contains the
47 implementation of the message digest. See L<EVP_MD_meth_new(3)> for
48 details of the B<EVP_MD> structure.
49
50 =head1 CONFORMING TO
51
52 RFC 7693.
53
54 =head1 SEE ALSO
55
56 L<evp(7)>,
57 L<EVP_DigestInit(3)>
58
59 =head1 COPYRIGHT
60
61 Copyright 2017-2023 The OpenSSL Project Authors. All Rights Reserved.
62
63 Licensed under the Apache License 2.0 (the "License").  You may not use
64 this file except in compliance with the License.  You can obtain a copy
65 in the file LICENSE in the source distribution or at
66 L<https://www.openssl.org/source/license.html>.
67
68 =cut
69