首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Poly1305-AES与AES-GCM

Poly1305-AES与AES-GCM
EN

Cryptography用户
提问于 2017-01-19 18:19:16
回答 1查看 2.4K关注 0票数 8

与AES-GCM相比,Poly1305-AES的优点是什么?请注意,我不是在谈论广泛采用的chacha20-Poly1305,包括谷歌。但是我想知道Poly1305-AES和AES-GCM的优缺点。

EN

回答 1

Cryptography用户

发布于 2019-03-07 21:52:44

Poly1305-AES是一种消息认证代码。AES-GCM是一种认证密码。所以这不是一个有意义的比较。

但我们可以将Poly1305-AES与作为消息认证码的AES-GMAC进行比较.它们都是,由分组密码AES和一个基于多项式计算的通用哈希族组成,微分概率远低于2^{-100}

一个本质上无关紧要的区别是Poly1305-AES直接使用其部分密钥作为其通用散列,而AES-GMAC则通过AES传递其密钥以导出通用哈希键。

Poly1305-AES和AES-GMAC的主要区别是底层通用散列族Poly1305或GHASH所使用的算法类型分别是:

  • Poly1305在主域采用\mathbb Z/(2^{130} - 5)\mathbb Z算法,易于在软件中快速实现,不需要定时侧通道。
  • GHASH在二进制字段\operatorname{GF}(2^{128})中使用算法,在没有定时侧通道的软件中很难快速实现:如果您没有硬件支持--或者现代软件栈中软件斜塔深处的某个bug导致它无法利用硬件支持--那么您的软件要么会慢一点,要么您的软件会通过定时侧通道泄漏机密。

Poly1305是为快速安全的软件实现而优化的,而GHASH是一种安全风险,除非您能够保证您使用的是硬件支持。硬件支持的优化实现速度相当快,运行在大约一个cpb上。

当然,对GHASH的同样批评也适用于AES本身,这就是为什么您应该真正使用ChaCha20-Poly1305而不是AES-GCM或任何由Poly1305-AES构建的东西。

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

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

复制
相关文章

相似问题

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