首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RSA-KEM抵抗立方体根攻击的安全性

RSA-KEM抵抗立方体根攻击的安全性
EN

Cryptography用户
提问于 2019-09-12 19:22:43
回答 1查看 174关注 0票数 2

在维基百科的密钥封装文章中,RSA被简要地描述如下;

  1. 生成一个随机元素1<m<n,然后通过M=\text{KDF}(m)驱动对称密钥
  2. 然后计算密文并发送c \equiv m^e \pmod{n}
  3. 接收者解密m \equiv c^d \pmod{n}并应用M=\text{KDF}(m)派生密钥。

Q1:由于立方根攻击,随机选择应该是\sqrt[3]{n}<m<n

现在,在文件的末尾,它说;

以某种方式恢复M的攻击者无法获得纯文本m。用填充物的方法,他可以。

Q2:当有OAEP的正式证明时,攻击者如何恢复M

EN

回答 1

Cryptography用户

发布于 2019-09-12 19:42:57

Q1:由于立方根攻击,随机选择应该是\sqrt[3]{n}<m<n

假设n是2048位长。然后是\sqrt[3] n < 2^{700}。如果m\{1, 2, \dots, n - 1, n\}中均匀分布,那么\Pr[m < \sqrt[3] n]是什么?这个概率大到你不得不担心吗?

现在,在文档的末尾,它说;攻击者如果以某种方式恢复M,就无法获得纯文本m。用填充物的方法,他可以。Q2:当有OAEP的正式证明时,攻击者如何恢复M

我不知道这篇文章到底得到了什么,但真正重要的是,即使对手有一组(c, H(m))对,其中c = m^e \bmod nH是随机的甲骨文,它也无助于预测H(m),因为这是以前从未见过的c。通常,我们使用它来加密真正的消息(任意位字符串)的方式是:

  1. 使用RSA生成(c, k),其中k = \operatorname{KDF}(m)c = m^e \bmod n
  2. 使用k作为对称身份验证密码(如crypto_secretbox_xsalsa20poly1305 )的密钥来加密实际的明文。
  3. c与认证的密文一起传输。

接收者可以恢复m = c^d \bmod n,然后恢复k = \operatorname{KDF}(m)等。

这种KEM和DEM (数据封装机制;认证密码作为DEM)的组合提供了IND-CCA2/NM-CCA2-密文在自适应选择密文攻击下不可分辨性和不可延展性的标准。

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

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

复制
相关文章

相似问题

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