首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不同的MAC和密钥为AEAD?

不同的MAC和密钥为AEAD?
EN

Cryptography用户
提问于 2018-04-27 07:55:01
回答 1查看 242关注 0票数 1

我正在RFC 7518中实现一些算法,我注意到AES_CBC_HMAC_SHA2包含以下段落:

  1. 从输入键K生成辅助键MAC_KEY和ENC_KEY,如下所示。这两个键中的每一个都是一个八进制字符串。MAC_KEY按顺序由K的初始MAC_KEY_LEN八元组成。ENC_KEY按顺序由K的最终ENC_KEY_LEN八元组成。输入键K中的八进制数必须是MAC_KEY_LEN和ENC_KEY_LEN之和。这些参数的值由5.2.3至5.2.5节中的认证加密算法指定。请注意,MAC密钥位于输入密钥K中的加密密钥之前;这与标识符"AES_CBC_HMAC_SHA2“中算法名称的顺序相反。

为什么加密密钥与MAC密钥不同?我在维基百科中看到的例子表明,这两种方法都使用了相同的键。

我的理解是,因为在JWE中只有消息是经过身份验证的,这意味着密钥可以用于回火,而且由于MAC密钥和MAC位于已知位置,所以应该可以伪造消息。

我的假设不对吗?为什么RFC作者选择拆分密钥而不是重用它?

EN

回答 1

Cryptography用户

回答已采纳

发布于 2018-04-27 10:20:08

我在维基百科上看到的例子表明,两者都使用相同的密钥。

在大多数结构中,这样做是很好的,但是“大多数”并不是“全部”。此外,图形也可以被解读为“从给定的输入键派生出一个键”。

为什么加密密钥与MAC密钥不同?

从密码学上讲,为不同的原语使用不同的密钥是比较干净的,因为它肯定防止了由于密钥重用而发生的微妙交互,从而使安全声明的正式证明变得更容易。

此外,在某些情况下,您实际上必须为MAC和加密方案使用不同的密钥,最著名的例子是CBCCBC-MAC的结合,它允许修改(几乎)关于密钥重用的整个消息。

票数 2
EN
页面原文内容由Cryptography提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://crypto.stackexchange.com/questions/58724

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档