在GCM认证加密模式下,GHASH实现时间是否会发生变化,这是否是一个安全问题?
如果时间因AAD/密文数据的不同而变化,看起来这并不重要,因为该数据无论如何都是公开的。但如果时间因GHASH键而异,这会降低安全性吗?
发布于 2018-05-29 13:42:22
如果时间因公共信息而异,那就没有问题了。如果时间因GCM中的密钥等秘密信息而变化,则这是一个问题。( GCM只向GHASH提供AAD和密文,而GCM等其他AEAD方案则将明文提供给GHASH/POLYVAL;依赖于任何秘密信息的时间是一个问题。)
很难实现不随密钥变化的GCM快速软件实现,因为在GHASH键处您正在计算$\operatorname{GF}(2^{128})$中的多项式。(t很容易实现一个更快的软件实现,通过使用可变时刻表查找,它确实会随键的不同而变化。)更糟糕的是,消息的每一个块(AAD或密文)精确地显示在GHASH公式中一次,但是密钥、它的方方和它的立方体等都是多次数字的。
历史上,CPU指令集和编程语言被设计成支持整数算法,而不是Galois字段算法,因此,即使是在支持Galois字段算法的CPU上,可靠地利用它也需要大量的工程工作。
https://crypto.stackexchange.com/questions/59613
复制相似问题