Cryptography RSA的创建者可以读取所有编码的消息吗?

Cryptography RSA的创建者可以读取所有编码的消息吗?,cryptography,rsa,prime-factoring,Cryptography,Rsa,Prime Factoring,根据本页,每个RSA版本都使用一个难以计算的常量长数 是这样吗 例如,RSA-100使用数字 1522605027922533360535618378132637429718068114961380688657908494580122963258952897654000350692006139 24524664490027821197651766357308801846702678767833275974341445171506160083003858721695220839933207154

根据本页,每个RSA版本都使用一个难以计算的常量长数

是这样吗

例如,RSA-100使用数字

1522605027922533360535618378132637429718068114961380688657908494580122963258952897654000350692006139
245246644900278211976517663573088018467026787678332759743414451715061600830038587216952208399332071549103626827191679864079776723243005600592035631246561218465817904100131859299619933817012149335034875870551067
这是1991年考虑的因素

同时RSA-210使用数字

1522605027922533360535618378132637429718068114961380688657908494580122963258952897654000350692006139
245246644900278211976517663573088018467026787678332759743414451715061600830038587216952208399332071549103626827191679864079776723243005600592035631246561218465817904100131859299619933817012149335034875870551067
这还没有被考虑在内

我的问题是:这是否意味着任何特定RSA版本的创建者都知道因子数,因此可以读取所有编码的消息?如果他们不知道因式分解,那么他们如何生成一个数字呢。它详细分析了重复使用RSA密钥和使用RSA密钥的共同因素(您描述的问题)。文章中有很多内容,但引用其结论:

我们检查了数百万公钥的计算属性 我们在网上收集的。大多数人似乎并没有遭受痛苦 明显的弱点和可预期提供的预期水平 安全问题。我们发现,大约0.003%的公钥是 不正确,这似乎不是不可接受的

是的,这是一个问题,而且问题还会继续增加,但可能的密钥数量意味着问题不是太严重,至少现在还不严重。请注意,本文也没有介绍暴力强制缩短RSA密钥的日益容易性


请注意,这不是RSA算法或用于生成密钥的随机数生成器的问题(尽管本文确实提到种子设定可能仍然是一个问题)。检查新生成的密钥与来自任意、有时断开连接的设备的不断扩展的现有密钥列表是困难的。例如,这与弱密钥预先已知的情况不同。

这些数字只是随机数,RSA使用这些随机数来判断算法的适当性。为了安全起见,RSA非对称密钥算法本身依赖于分解大容量数字的难度

将这些数字分解的大致时间或难度是算法中使用的其他此类数字与我们的计算能力对比的一个指标

这些数字是挑战,现将其描述如下

(引用自)

RSA质询编号是使用以下安全流程生成的: 保证每个数字的系数不能通过任何方法获得 方法,而不是对发布的值进行因式分解。没有人,连RSA都没有 实验室,知道任何挑战数字的因素。这个 这一代是在没有网络连接的康柏笔记本电脑上进行的 任何类型的。进程如下:

首先,30000个随机变量 字节是使用ComScire QNG硬件随机数生成的 发电机,连接到笔记本电脑的并行端口

随机字节 在中用作B_GenerateKeyPair函数的种子值 RSA BSAFE库的4.0版

私人部分 生成的密钥对被丢弃。公共部分于年出口 将DER格式转换为磁盘文件

从DER中提取模量 文件并转换为十进制,以便在网页上发布

笔记本电脑的硬盘被毁了


当它变得相当简单和快速时,要可靠地分解特定大小的数字,通常意味着是时候移动到更长的数字了。

该页面完全没有提到加密或RSA算法的实现。是的,你需要使用一些推断:)不,你没有,因为RSA数字与RSA加密无关,只是它们是大素数。好吧,我理解你的观点,但我需要一些其他的东西。是的,请参阅文章。它指出素数因子应该是随机选择的。投票被否决了,因为这似乎是RSA固有的问题。事实并非如此,这是所使用的随机数生成器的问题。RSA密钥空间很大,对于高比特数非常大。如果不是,你可以简单地对它进行暴力。@owlstead我已经澄清,这是密钥生成的问题,而不是算法本身。你读过论文的结论了吗?“这可能表明,正确地植入随机数生成器仍然是一个有问题的问题。”你仍然没有在回答中反映这一点(我错误地投了赞成票,而不是取消了我的反对票)。换句话说,它是使用的特定随机数生成器。@owlstead是的,我已经阅读了结论,并在答案中添加了注释。然而,如果正确的种子设定是一个问题,我怀疑弱键出现的频率会超过0.003%。我想这篇文章是想解释为什么会出现0.003%的情况,而不是对RSA密钥生成中使用的熵做一个一般性的评论。在我们公司,我们确实会检查键模是否是以前生成的,但这并不是因为我们害怕碰撞。这更像是防止rng或密钥对生成方法出现问题的一种保护措施。好的解释,尽管很明显这个数字不是完全随机的。该数字是使用随机数生成器生成的,但数字本身需要符合RSA的要求。这就是为什么生成RSA密钥对需要很长时间。