关于RSA的FAQ

一 RSA与质数

问:

随着越来越多的人在不断地生成RSA的密钥对,质数会不会被用光呢?

答:

不需要担心。

512比特能够容纳的质数数量大约为10的150次方,这个数量比整个宇宙中的原子的数量还要多。

我们假设地球上有100亿人,每个人每秒生成100亿个密钥对,那么在经过100亿年之后会生成多少个密钥对呢?

1年最多366天,也就是366*24*60*60=31622400秒,因此

100亿人*100亿个*31622400秒*100亿年=31622400000000000000000000000000000000个

这个数量比10的39次方还少,和512比特能够容纳的质数的数量,即10的150次方相比还相差很远。

别人生成质数组合和自己生成质数组合偶然撞车的可能性,事实上也可以认为是没有的。

二 RSA与质因数分解

问:

RSA加密的过程,需要对大整数进行质因数分解吗?

答:

RSA在加密、解密、密钥对的生成过程中都不需要对大整数进行质因数分解。

只有在需要由数N求p和q的密码破译过程中才需要对大整数进行质因数分解,因此RSA的设计是将质因数分解这种困难留给了密码破译者。

问:

RSA的破译与大整数的质因数分解是等价的吗?

答:

2004年Alexander May证明了求RSA的私钥和对N进行质因数分解是等价的。

三 RSA的长度

问:

要抵御质因数分解,N的长度需要达到多少比特呢?

答:

N无论有多长,总有一个天能够被质因数分解,因此现在的问题是,在现实的时间内N是否能够被质因数分解。随着计算机性能的提高,对一定长度的整数进行质因数分解所需要的时间会逐步缩短,如果大型组织或国家投入其计算资源,则时间会进一步缩短。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值