man 7ossl EVP_MD-BLAKE2

EVP_MD-BLAKE2(7ossl)                OpenSSL               EVP_MD-BLAKE2(7ossl)

NAME
       EVP_MD-BLAKE2 - The BLAKE2 EVP_MD implementation

DESCRIPTION
       Support for computing BLAKE2 digests through the EVP_MD API.

   Identities
       This implementation is only available with the default provider, and
       includes the following varieties:

       BLAKE2S-256
           Known names are "BLAKE2S-256" and "BLAKE2s256".

       BLAKE2B-512
           Known names are "BLAKE2B-512" and "BLAKE2b512".

   Gettable Parameters
       This implementation supports the common gettable parameters described
       in EVP_MD-common(7).

   Settable Context Parameters
       The BLAKE2B-512 implementation supports the following OSSL_PARAM(3)
       entries which are settable for an EVP_MD_CTX with EVP_DigestInit_ex2(3)
       or EVP_MD_CTX_set_params(3):

       "size" (OSSL_DIGEST_PARAM_SIZE) <unsigned integer> 
           Sets a different digest length for the EVP_DigestFinal(3) output.
           The value of the "size" parameter must not exceed the default
           digest length (64 for BLAKE2B-512). The parameter must be set with
           the EVP_DigestInit_ex2(3) call to have an immediate effect. When
           set with EVP_MD_CTX_set_params(3) it will have an effect only if
           the EVP_MD_CTX context is reinitialized.

SEE ALSO
       provider-digest(7), OSSL_PROVIDER-default(7)

HISTORY
       This functionality was added in OpenSSL 3.0.

       The variable size support was added in OpenSSL 3.2 for BLAKE2B-512.

COPYRIGHT
       Copyright 2020-2023 The OpenSSL Project Authors. All Rights Reserved.

       Licensed under the Apache License 2.0 (the "License").  You may not use
       this file except in compliance with the License.  You can obtain a copy
       in the file LICENSE in the source distribution or at
       <https://www.openssl.org/source/license.html>.

3.2.2                             2025-01-29              EVP_MD-BLAKE2(7ossl)