首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NIST关于SP 800-38D上确定性IV结构的计数器/LFSR建议的理由

NIST关于SP 800-38D上确定性IV结构的计数器/LFSR建议的理由
EN

Cryptography用户
提问于 2020-10-05 20:08:47
回答 1查看 482关注 0票数 5

NIST有一个"SP 800-38D:分组密码操作模式的推荐:Galois/计数器模式(GCM)和GMAC“。此指南是AES-GCM从定义到安全性考虑的基础。(所有的锚都是我的)

第8.2.1节确定性结构第四节

在确定性构造中,IV是两个字段的连接,称为固定字段和调用字段。固定字段应标识设备,或者更一般地标识经身份验证的加密功能的实例的上下文。调用字段应标识该特定设备中经过身份验证的加密功能的输入集。

稍后在同一节中

调用字段通常是( 1)整数计数器或( 2)线性反馈移位寄存器,该寄存器由原始多项式驱动,以确保最大周期长度。在任何一种情况下,调用字段都会在每次调用经过身份验证的加密函数时递增。

计数器和线性反馈移位寄存器(LFSR)的区别是明确的。计数器可以简单地在CPU寄存器中实现,以构造一个要求原始多项式和额外代码的LFSR。今天,选择/寻找一个原始多项式并不难。正如这个所以回答中所列出的,有一个来自惠普列表的报告,这是一种低次的二进制本原多项式。你也可以使用枫叶,数学和SageMath找到一个。

如果一切正常工作,计数器和LFSR可以产生独特的IV,这是至关重要的安全的AES-GCM。任何(IV,密钥)对的使用都可以消除机密性,并可能导致伪造。

我注意到了一个问题:在系统故障期间,最后一个递增/高级计数器/LFSR值可能会丢失。如果管理员继续使用上一个已知值,则会导致(key,IV)对重用。以减少交换新密钥或在IV的某些部分使用随机密钥。

关于正确使用AES-GCM的规则是什么?回答的评论

马腾·波德威斯

对不起,但是我不明白为什么你需要一个LFSR,而不是一个通用的DRBG。

而且还

吉尔斯,所以-别再作恶了

这是一个很好的建议,除了LFSR。非加密的RNG在密码中没有位置.

我不知道他们为什么建议使用LFSR。遗憾的是,他们没有给出理由。

所以AES-GCM的问题是;

  1. NIST的理由是什么来建议第四阶段的计数器和LFSR。
  2. 为什么使用LFSR不是很好的建议?
  3. 在8.2.2节中,基于RGB的构造--从两种方式谈RGB(随机比特生成器)
    1. 来自已批准的RBG的具有足够安全强度的r(i)位输出字符串,或
    2. 将r(I)-bit增量函数应用于给定密钥的前面IV的随机场的结果

RGB对抗计数器/LFSR有什么优势吗?

EN

回答 1

Cryptography用户

回答已采纳

发布于 2020-10-05 20:43:50

我不知道这是否是推动NIST的原因,但我在一些应用程序中发现了一篇关于LFSR计数器的文章:

  • Mukhopadhyay、Sourav和Palash Sarkar。2006年。用于并行序列生成的LFSRs在密码算法中的应用密码学ePrint档案馆:2006/042号报告.

摘要。我们考虑了在某些密码算法中有效地生成硬件序列的问题。传统的方法是使用计数器。结果表明,线性反馈移位寄存器(LFSR)产生的序列可以根据相应的算法进行调整。对于硬件实现,这减少了时间和芯片面积。因此,我们能够建议改进由电子前沿基金会于1998年建造的efficient的设计;提供一种有效的策略来生成时间记忆交换/关闭攻击中的起始点;并提出一种改进的并行硬件实现,以实现分组密码的计数器操作模式的一种变体。

正如我在对这个问题的一个注释中提到的,NIST SP 800-38a (“对分组密码操作模式的建议”,2001年版)也提到了LFSR作为计数器块允许的增量函数的一个例子(第18页),因此该技术先于GCM和本文。

RFC 3686 (“使用高级加密标准(AES)计数器模式和IPsec封装安全有效载荷(ESP)”,2004年1月)也允许使用LFSR计数器块。它说,LFSR是一种常见的IV生成方法(第5页),并间接地呼吁与Mukhopadhyay和Sarkar相似的动机允许它们:

第14页允许加法器、LFSR和满足加密器时间预算的任何其他技术,只要该技术为每个数据包带来唯一的值。加法器的实现简单明了,但由于有了进位,它们不会在固定时间内执行。LFSR提供了一种在恒定时间内执行的替代方案。

说LFSR在固定时间内执行对我们软件人员来说是违反直觉的,他们倾向于更普遍地认为添加是“简单的”但LFSR是“复杂的”。

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

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

复制
相关文章

相似问题

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