首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否需要RSA KTS-OAEP?

是否需要RSA KTS-OAEP?
EN

Cryptography用户
提问于 2022-04-20 17:31:39
回答 2查看 317关注 0票数 1

数据通常使用对称密码加密,对称密钥通过使用收件人的非对称公钥进行加密而与接收方共享。NIST特别出版物800-56B,第2版第9节定义了RSA KTS-OAEP,以建立发送方和接收方之间的关键材料。是否真的需要使用RSA OAEP或RSA KTS-OAEP来建立发送方和接收方之间的密钥?

由于大多数情况下,对称密钥长度比非对称密钥长度(例如256 vs 2048 )要小得多。在发送方为每条消息随机生成新对称密钥的情况下,使用教科书RSA加密对称密钥是否安全?

由于随机生成的对称密钥不太可能重复,因此不需要使用RSA OAEP和RSA KTS-OAEP?

EN

回答 2

Cryptography用户

回答已采纳

发布于 2022-04-21 08:37:02

不,没有必要,但:

  • 您将得到(大约)与任何安全方案相同的RSA密文大小;
  • 无论如何,OAEP的计算开销是最小的;
  • 使用教科书RSA是不安全的(见其他答案);
  • 其他填充模式可能不安全(PKCS#1 v1.5填充更容易受到填充oracle攻击)。

但还有其他可能性:

  • 您可以使用RSA-KEM -这基本上是教科书RSA的一个完全随机数的大小的模数,然后是一个密钥推导;
  • 可以使用IES方案,如ECIES -您可以在其中包括NaCL -这样的方案可以大大减少计算资源和数据开销(非对称密码)。

特别是RSA-KEM可能很有用,因为您只需要一个随机数生成器和教科书RSA +某种方法来派生密钥(这可以是一些简单的密码散列)。

票数 2
EN

Cryptography用户

发布于 2022-04-20 19:09:38

使用小的公共指数将被排除在台面上。假设256-bit对称密钥ke = 3为公共指数。如果我们天真地将k转换为整数,那么k^3将是一个\approx 768-bit数,因此是k^3 \bmod N = k^3。那么,任何能够拿到密文的人都可以轻松地解开密码。

类似地,如果你向太多不同的接收者发送了同样的密钥,那么小的公共指数会使你容易受到哈斯塔德的广播攻击--就像你用这些密钥来培育一群工人一样。

此外,密文是可以延展性的,这将导致上文所述的一些问题。

因此,这似乎是不明智的。所有这些问题都是可以解决的--或者不适用于特定的系统--但我更倾向于使用加密系统,这样可以减少对自己开枪的机会。

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

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

复制
相关文章

相似问题

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