| =pod |
| |
| =head1 NAME |
| |
| EVP_MD-SHAKE, EVP_MD-KECCAK-KMAC |
| - The SHAKE / KECCAK family EVP_MD implementations |
| |
| =head1 DESCRIPTION |
| |
| Support for computing SHAKE or KECCAK-KMAC digests through the |
| B<EVP_MD> API. |
| |
| KECCAK-KMAC is a special digest that's used by the KMAC EVP_MAC |
| implementation (see L<EVP_MAC-KMAC(7)>). |
| |
| =head2 Identities |
| |
| This implementation is only available with the default provider, and |
| includes the following varieties: |
| |
| =over 4 |
| |
| =item KECCAK-KMAC-128 |
| |
| Known names are "KECCAK-KMAC-128" and "KECCAK-KMAC128" |
| |
| =item KECCAK-KMAC-256 |
| |
| Known names are "KECCAK-KMAC-256" and "KECCAK-KMAC256" |
| |
| =item SHAKE-128 |
| |
| Known names are "SHAKE-128" and "SHAKE128" |
| |
| =item SHAKE-256 |
| |
| Known names are "SHAKE-256" and "SHAKE256" |
| |
| =back |
| |
| =head2 Gettable Parameters |
| |
| This implementation supports the common gettable parameters described |
| in L<EVP_MD-common(7)>. |
| |
| =head2 Settable Context Parameters |
| |
| These implementations support the following L<OSSL_PARAM(3)> entries, |
| settable for an B<EVP_MD_CTX> with L<EVP_MD_CTX_set_params(3)>: |
| |
| =over 4 |
| |
| =item "xoflen" (B<OSSL_DIGEST_PARAM_XOFLEN>) <unsigned integer> |
| |
| Sets the digest length for extendable output functions. |
| The length of the "xoflen" parameter should not exceed that of a B<size_t>. |
| |
| =back |
| |
| =head1 SEE ALSO |
| |
| L<EVP_MD_CTX_set_params(3)>, L<provider-digest(7)>, L<OSSL_PROVIDER-default(7)> |
| |
| =head1 COPYRIGHT |
| |
| Copyright 2020 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 |
| L<https://www.openssl.org/source/license.html>. |
| |
| =cut |