打开SSL

密码学和SSL/TLS工具包

life_cycle-mac

名称

life_cycle-mac - MAC算法生命周期

描述

所有消息认证码(MAC)在其生命周期中都会经历多个阶段

开始

此状态表示MAC在分配之前。它是任何生命周期转换的起始状态。

新建

此状态表示MAC在分配之后。

初始化

此状态表示MAC已设置并能够处理输入。

更新

此状态表示MAC已设置并能够处理其他输入或生成输出。

完成

此状态表示MAC已生成输出。

释放

当MAC被释放时进入此状态。它是所有生命周期转换的终止状态。

状态转换图

说明了MAC的常见生命周期

正式状态转换

本节定义所有合法状态转换。这是规范列表。

函数调用 当前状态
开始 新建 初始化 更新 完成 释放
EVP_MAC_CTX_new 新建
EVP_MAC_init 初始化 初始化 初始化 初始化
EVP_MAC_update 更新 更新
EVP_MAC_final 完成
EVP_MAC_finalXOF 完成
EVP_MAC_CTX_free 释放 释放 释放 释放 释放
EVP_MAC_CTX_get_params 新建 初始化 更新
EVP_MAC_CTX_set_params 新建 初始化 更新
EVP_MAC_CTX_gettable_params 新建 初始化 更新
EVP_MAC_CTX_settable_params 新建 初始化 更新

注释

在某些时候,EVP层将开始强制执行本文档中描述的转换。

参见

provider-mac(7)EVP_MAC(3)

历史

提供程序MAC接口是在OpenSSL 3.0中引入的。

版权所有 2021 OpenSSL 项目作者。保留所有权利。

根据 Apache 许可证 2.0(“许可证”)获得许可。除非符合许可证,否则您不得使用此文件。您可以在源代码分发中的 LICENSE 文件或 https://www.openssl.org/source/license.html 中获取副本。