首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >非FIPS算法是否允许在符合FIPS的系统中执行?

非FIPS算法是否允许在符合FIPS的系统中执行?
EN

Cryptography用户
提问于 2021-07-13 20:19:28
回答 2查看 790关注 0票数 3

如果一段软件以FIPS模式运行,并且使用FIPS认证的加密模块,那么即使系统的安全性不是唯一依赖于它们,它是否允许执行任何非FIPS算法?

例如:假设您有一个交换两个ECDH密钥对的系统:一个curve25519密钥对和一个NISTP-384密钥对。密钥协议使用两个密钥对执行,然后将产生的秘密连接起来,并使用SHA-384进行散列。

密码学上,我看不出有什么问题,因为SHA-384(K0 \ K1)的结果和最强的曲线一样强。这是因为SHA-384(一个秘密的一个已知值)是一个秘密,这意味着如果攻击者破解了curve25519,他们仍然不知道用另一个他们不知道的秘密哈希的结果。

我的问题是FIPS是否允许这样做,或者它是否必须只执行FIPS认证的代码和算法。你能把curve25519计算出来的共享秘密看作是“盐”之类的吗?

编辑:考虑到与Curve25519的非FIPS协议的结果可以与“官方”秘密作为一个盐,例如HMAC- the 384( salt,key)。

EN

回答 2

Cryptography用户

回答已采纳

发布于 2021-07-14 23:52:05

当您在这个上下文中说FIPS时,我假设您指的是FIPS 140,如果这是正确的,那么在有限的情况下,您可以使用非FIPS批准的算法,但仍然是符合FIPS的。

看一看实施指南,有一节“FIPS模式下允许的未经批准的加密算法的示例场景”。我认为您的示例不符合文档中概述的三种场景中的任何一种。

票数 1
EN

Cryptography用户

发布于 2021-07-13 20:38:22

实际上,curve25519正在向FIPS申请批准(NISTSP800186),但这不是你要问的。

为了回答您的问题,是的,NIST已经声明,他们确实允许不经批准的算法与他们喜欢的密钥交换并行。目前,他们正式批准的流程将需要处理与批准的密钥共享不同的未经批准的密钥共享;但是他们注意到,这将在NIST SP 800-56C的下一个版本中发生变化。

他们的实际陈述(来自https://csrc.nist.gov/Projects/post-quantum-cryptography/faqs)不仅适用于后量子密码学(一些给出量子后示例的文本被省略了):

是否有可能在FIPS 140批准的操作模式中执行混合密钥建立模式?(新增1/28/20)混合密钥建立模式.在这里定义为一个密钥建立方案,它是两个或多个本身是加密密钥建立方案的组件的组合。所需的属性是,如果至少有一个组件方案是安全的,则由混合密钥建立方案派生的密钥保持安全。目前的NIST标准..。可以容纳在FIPS 140中定义的“FIPS模式”中的几个混合密钥建立结构。例如,假设值Z是在NIST批准的密码方案中生成的共享秘密,而值T是通过其他方案生成或分发的(S).以下是将值T合并到键派生过程中以实现当前标准所允许的混合模式的不同方法:对于在SP 800-56C中指定的任何一步密钥派生方法,定义为SuppPrivInfo的输入可以包含在(可选的) FixedInfo字段中,而T可以包含在该字段中。在SP 800-56C中指定的任何一种关键推导方法中,无论是一步或一步展开,T值都可以包含在盐场中。此外,NIST计划在SP 800-56C的未来修订版中纳入一个更清洁、因而更可取的混合密钥建立结构:在SP 800-56C中指定的任何关键派生方法中,该修订将允许Z和T (例如Z\x\x{e76f}T)连接为共享秘密,而不是Z。这将需要将T插入到该方案的编码中,并且FIPS 140验证代码可能需要修改。

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

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

复制
相关文章

相似问题

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