{
    "mode": "man",
    "parameter": "EVP_MAC-CMAC",
    "section": "7ssl",
    "url": "https://www.chedong.com/phpMan.php/man/EVP_MAC-CMAC/7ssl/json",
    "generated": "2026-07-05T16:04:18Z",
    "sections": {
        "NAME": {
            "content": "EVPMAC-CMAC - The CMAC EVPMAC implementation\n",
            "subsections": []
        },
        "DESCRIPTION": {
            "content": "Support for computing CMAC MACs through the EVPMAC API.\n\nThis implementation uses EVPCIPHER functions to get access to the underlying cipher.\n",
            "subsections": [
                {
                    "name": "Identity",
                    "content": "This implementation is identified with this name and properties, to be used with\nEVPMACfetch():\n\n\"CMAC\", \"provider=default\" or \"provider=fips\"\n"
                },
                {
                    "name": "Supported parameters",
                    "content": "The general description of these parameters can be found in \"PARAMETERS\" in EVPMAC(3).\n\nThe following parameter can be set with EVPMACCTXsetparams():\n\n\"key\" (OSSLMACPARAMKEY) <octet string>\nSets the MAC key.  Setting this parameter is identical to passing a key to\nEVPMACinit(3).\n\n\"cipher\" (OSSLMACPARAMCIPHER) <UTF8 string>\nSets the name of the underlying cipher to be used.\n\n\"properties\" (OSSLMACPARAMPROPERTIES) <UTF8 string>\nSets the properties to be queried when trying to fetch the underlying cipher.  This must\nbe given together with the cipher naming parameter to be considered valid.\n\nThe following parameters can be retrieved with EVPMACCTXgetparams():\n\n\"size\" (OSSLMACPARAMSIZE) <unsigned integer>\nThe \"size\" parameter can also be retrieved with with EVPMACCTXgetmacsize().  The\nlength of the \"size\" parameter is equal to that of an unsigned int.\n\n\"block-size\" (OSSLMACPARAMSIZE) <unsigned integer>\nGets the MAC block size.  The \"block-size\" parameter can also be retrieved with\nEVPMACCTXgetblocksize().\n"
                }
            ]
        },
        "SEE ALSO": {
            "content": "EVPMACCTXgetparams(3), EVPMACCTXsetparams(3), \"PARAMETERS\" in EVPMAC(3),\nOSSLPARAM(3)\n",
            "subsections": []
        },
        "COPYRIGHT": {
            "content": "Copyright 2018-2021 The OpenSSL Project Authors. All Rights Reserved.\n\nLicensed under the Apache License 2.0 (the \"License\").  You may not use this file except in\ncompliance with the License.  You can obtain a copy in the file LICENSE in the source\ndistribution or at <https://www.openssl.org/source/license.html>.\n\n\n\n3.0.2                                        2026-06-02                           EVPMAC-CMAC(7SSL)",
            "subsections": []
        }
    },
    "summary": "EVPMAC-CMAC - The CMAC EVPMAC implementation",
    "flags": [],
    "examples": [],
    "see_also": [
        {
            "name": "EVPMACCTXgetparams",
            "section": "3",
            "url": "https://www.chedong.com/phpMan.php/man/EVPMACCTXgetparams/3/json"
        },
        {
            "name": "EVPMACCTXsetparams",
            "section": "3",
            "url": "https://www.chedong.com/phpMan.php/man/EVPMACCTXsetparams/3/json"
        },
        {
            "name": "EVPMAC",
            "section": "3",
            "url": "https://www.chedong.com/phpMan.php/man/EVPMAC/3/json"
        },
        {
            "name": "OSSLPARAM",
            "section": "3",
            "url": "https://www.chedong.com/phpMan.php/man/OSSLPARAM/3/json"
        }
    ]
}