RSA:私钥安全? (ssh/gpg)

RSA:私钥安全? (ssh/gpg)

我想了解基于 RSA 的加密的安全性,特别是用于使用 gpg 加密文件或通过 ssh 加密连接时。

给定一些公钥,是否可以重建工作私钥?

解密一个小文件是否更容易?或者解密一个小文件的复杂性是否等于重建整个私钥所需的复杂性?

位强度如何影响 RSA 加密的安全性/复杂性?据我所知,与 AES 相比,RSA(像所有非对称加密一样)需要高熵来生成匹配的私钥/公钥对,因为对称加密确实直接“使用”每个位熵进行加密?!

通过增加位强度来解密某些文件的复杂性是否会呈指数增长?

为什么大多数 RSA 加密工具的强度仅限于 4096 位?

答案1

你应该阅读手册,它解释了很多。我主要来评论一下。

RSA 中的公钥由 2 个精心挑选的大素数相乘组成。为了攻击RSA,攻击者需要找到这些因素。

所以,是的,实际上,当您发布公钥时,攻击者知道要分解什么数字。但事实上,假设围绕大数因式分解的数学仍然很困难,那么公钥应该是公开的并且可以安全发布。

PGP 中的 RSA 不直接用于加密数据。它加密对称密钥。这是攻击者的另一个机会,但对称密钥当然是 PGP 中每条消息的随机数。通过这种方式,您不需要为每个收件人多次加密数据(这会成倍增加数据量),但您可以为每个收件人加密对称密钥。

小文件和大文件的解密与 RSA 端无关,因为那里使用对称密码。

当直接破译密码的最佳方法是暴力破解时,密码就很强大。假设这个攻击者拥有的最佳方法是,密钥的位长度使问题变得更加困难。

老实说,我不确定为什么它的最大值是 4096 位,但我可以想象您需要多种算法,这些算法需要被证明是安全的、正常工作的并且对用户来说是高效/可用的。

相关内容