Google uses AI technology to translate content into your preferred language. AI translations can contain errors.
MAC 签名
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
MAC 签名是用于验证数据完整性和真实性的加密输出。MAC 签名算法支持两种不同的操作:
MAC 签名有两个主要用途:
虽然 MAC 签名的用途类似于数字签名,但 MAC 签名依赖于对称加密。MAC 标记使用相同的密钥生成和验证。消息的发送者和接收者必须具有相同的密钥才能使用 MAC 签名。
MAC 签名的使用场景示例
由于其高效性,密钥散列消息认证码 (HMAC) 等 MAC 算法是出色的文件传输数据完整性检查机制。哈希函数可以接受任意长度的消息,并将其转换为固定长度的摘要,从而最大限度地提高带宽利用率。
MAC 签名工作流
下文介绍了创建和验证签名的流程。此工作流中的两个参与者包括数据签名者和数据接收者。
签名者和接收者同意使用特定的共享 MAC 密钥。
双方都可以使用此密钥创建或验证 MAC 签名。
签名者对数据执行签名操作以计算 MAC 标记。
签名者向数据接收者提供数据和 MAC 标记。
接收者使用共享的 MAC 密钥来验证 MAC 签名。如果验证不成功,则数据已被更改。
签名算法
Cloud Key Management Service 仅支持使用密钥散列消息认证码 (HMAC) 算法进行 MAC 签名。HMAC 算法使用加密哈希函数(如 SHA-2 或 SHA-3)来计算 MAC 标记。HMAC 函数的强度取决于哈希函数的强度、哈希输出的大小和密钥的大小。如需详细了解 HMAC 签名算法,请参阅 HMAC 签名算法。
限制
使用 Cloud KMS 生成 MAC 签名时,Cloud HSM 密钥的文件大小上限为 16 KiB,所有其他密钥的文件大小上限为 64 KiB。
后续步骤
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2026-05-22。
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["很难理解","hardToUnderstand","thumb-down"],["信息或示例代码不正确","incorrectInformationOrSampleCode","thumb-down"],["没有我需要的信息/示例","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2026-05-22。"],[],[]]