如何暴力破解 RSA 私钥的密码?

How to bruteforce an RSA private-key's passphrase?

我有一个加密的 RSA 密钥,需要密码才能解锁。我忘记了密码,但我记得那个密码只有 6 位数字。我认为暴力破解会给我密码。

感谢您的帮助iabdhv liasbv

好吧,你可以 google 并且在评论中提到了标签 john the ripper,但现在已经不存在了,我仍然假设你最初想使用 jtr。给了一份手册here.

它的基本步骤是:

  1. Github 下载并编译 John the Ripper 的 Jumbo 版本。

  2. 现在使用 gpg2john 将您的 rsa_key 转换为可理解的 jtr 格式,称为 file1

  3. 使用john --incremental file1以暴力模式启动jtr。

但是请注意,第三步将使 jtr 也使用字符而不仅仅是数字。您可以通过配置中的设置来更改它,或者您可以简单地创建一个小脚本来生成包含所有可能密码的密码列表。

for number1 in range(0,9):
  for number2 in range(0,9):
    for number3 in range(0,9):
      for number4 in range(0,9):
        for number5 in range(0,9):
          for number6 in range(0,9):
            print str(number1) + str(number2) + str(number3) + str(number4) + str(number5) + str(number6) 

然后使用 python scriptname.py > passwords.txt 在 linux 上启动此脚本 使用以下命令终止启动 jtr 后: john --wordlist=passwords.txt file1