{
    "content": [
        {
            "type": "text",
            "text": "# EVP_MD-SHAKE (info)\n\n## NAME\n\nEVPMD-SHAKE, EVPMD-KECCAK-KMAC - The SHAKE / KECCAK family EVPMD implementations\n\n## DESCRIPTION\n\nSupport for computing SHAKE or KECCAK-KMAC digests through the EVPMD\nAPI.\n\n## Sections\n\n- **NAME**\n- **DESCRIPTION**\n- **SEE ALSO**\n- **COPYRIGHT**\n\nUse structuredContent.sections for detailed options, examples, and full documentation.\n"
        }
    ],
    "structuredContent": {
        "command": "EVP_MD-SHAKE",
        "section": "",
        "mode": "info",
        "summary": "EVPMD-SHAKE, EVPMD-KECCAK-KMAC - The SHAKE / KECCAK family EVPMD implementations",
        "synopsis": null,
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [],
        "examples": [],
        "see_also": [
            {
                "name": "EVPMDCTXsetparams",
                "section": "3",
                "url": "https://www.chedong.com/phpMan.php/man/EVPMDCTXsetparams/3/json"
            },
            {
                "name": "provider-digest",
                "section": "7",
                "url": "https://www.chedong.com/phpMan.php/man/provider-digest/7/json"
            },
            {
                "name": "OSSLPROVIDER-default",
                "section": "7",
                "url": "https://www.chedong.com/phpMan.php/man/OSSLPROVIDER-default/7/json"
            }
        ],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 3,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 34,
                "subsections": []
            },
            {
                "name": "SEE ALSO",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "COPYRIGHT",
                "lines": 8,
                "subsections": []
            }
        ],
        "sections": {
            "NAME": {
                "content": "EVPMD-SHAKE, EVPMD-KECCAK-KMAC - The SHAKE / KECCAK family EVPMD\nimplementations\n",
                "subsections": []
            },
            "DESCRIPTION": {
                "content": "Support for computing SHAKE or KECCAK-KMAC digests through the EVPMD\nAPI.\n\nKECCAK-KMAC is a special digest that's used by the KMAC EVPMAC\nimplementation (see EVPMAC-KMAC(7)).\n\nIdentities\nThis implementation is only available with the default provider, and\nincludes the following varieties:\n\nKECCAK-KMAC-128\nKnown names are \"KECCAK-KMAC-128\" and \"KECCAK-KMAC128\"\n\nKECCAK-KMAC-256\nKnown names are \"KECCAK-KMAC-256\" and \"KECCAK-KMAC256\"\n\nSHAKE-128\nKnown names are \"SHAKE-128\" and \"SHAKE128\"\n\nSHAKE-256\nKnown names are \"SHAKE-256\" and \"SHAKE256\"\n\nGettable Parameters\nThis implementation supports the common gettable parameters described\nin EVPMD-common(7).\n\nSettable Context Parameters\nThese implementations support the following OSSLPARAM(3) entries,\nsettable for an EVPMDCTX with EVPMDCTXsetparams(3):\n\n\"xoflen\" (OSSLDIGESTPARAMXOFLEN) <unsigned integer>\nSets the digest length for extendable output functions.  The length\nof the \"xoflen\" parameter should not exceed that of a sizet.\n",
                "subsections": []
            },
            "SEE ALSO": {
                "content": "EVPMDCTXsetparams(3), provider-digest(7), OSSLPROVIDER-default(7)\n",
                "subsections": []
            },
            "COPYRIGHT": {
                "content": "Copyright 2020 The OpenSSL Project Authors. All Rights Reserved.\n\nLicensed under the Apache License 2.0 (the \"License\").  You may not use\nthis file except in compliance with the License.  You can obtain a copy\nin the file LICENSE in the source distribution or at\n<https://www.openssl.org/source/license.html>.\n\n3.0.2                             2026-06-02                EVPMD-SHAKE(7SSL)",
                "subsections": []
            }
        }
    }
}