首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >软件中HMAC的侧信道安全性

软件中HMAC的侧信道安全性
EN

Cryptography用户
提问于 2016-01-30 11:15:15
回答 1查看 869关注 0票数 9

假设我们有一个具有对称协处理器的处理器,它支持AES。然而,该处理器不为散列算法(如SHA-1或SHA-256 )提供协处理器支持。

我有以下几个密切相关的问题:

  1. 基于软件中哈希实现的HMAC实现--没有明确地保护它不受侧信道攻击--是否容易受到侧信道攻击?
  2. 如果是这样的话,是否有理由这样的攻击会比CBC模式下的对称密码的侧信道攻击更强或更弱?
  3. 是否可以检索用于HMAC算法密钥的密钥?
  4. 最后,在硬件上有AES实现的情况下,选择AES-CMAC是否更安全?

假设身份验证标记值的比较不会泄漏信息。DPA和定时攻击都可以考虑。

我之所以问这个问题,是因为哈希算法通常没有被明确地保护以抵御侧信道攻击。在这种情况下仍然经常使用HMAC。

EN

回答 1

Cryptography用户

回答已采纳

发布于 2016-02-04 08:33:16

我的回答是基于本论文 (pdf)在评论中的链接,以及它引用或引用的一些相关论文。我不知道对HMAC有更现实的攻击。

它假设有一个DPA侧通道,当一个新值被读入CPU寄存器(或者在一些文件中的另一条指令中)时,它会泄漏翻转的位数。也就是说,它泄露了旧值和新值之间的汉明距离。这允许对HMAC进行直接的密钥恢复攻击,这是因为HMAC使用了内部和外部键,这是一个方便的已知距离。

如果您假设有这样一个侧通道,那么在计算机上您可以安全地做的事情不多。事实上,如果您仍然需要从内存中加载密钥才能使用HMAC,那么HMAC的典型硬件实现几乎同样容易受到攻击。

  1. 基于软件中哈希实现的HMAC实现--没有明确地保护它不受侧信道攻击--是否容易受到侧信道攻击?

我不认为这是软件与硬件之间的问题,甚至不是侧通道保护的问题。如果存在上面描述的这样一个侧通道,那么在CPU上可以安全地做的事情就不多了。当然,大多数具有秘密值的传统数据处理都必须重新考虑。

  1. 如果是这样的话,是否有理由这样的攻击会比CBC模式下的对称密码的侧信道攻击更强或更弱?

更强,因为这是一个关键恢复攻击,不像填充甲骨文攻击,目标是CBC。但这些假设也更加有力。

  1. 是否可以检索用于HMAC算法密钥的密钥?

是的,假设。

  1. 最后,在硬件上有AES实现的情况下,选择AES-CMAC是否更安全?

不一定。例如,使用AES-NI指令,您必须将AES密钥加载到XMM寄存器中,这有可能以同样的方式允许密钥恢复攻击。

如果您有一个专门的密码芯片组,也存储密钥,那么这可能是另一回事。当然,没有先验的理由认为它也没有侧通道。你得把钥匙安全地放进去。

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

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

复制
相关文章

相似问题

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