解密OpenSSL Bruteforce

时间:2014-08-04 08:31:40

标签: encryption openssl bitcoin brute-force

我忘记了比特币备份的密码,想要暴力破解它。 我得到了这个信息; “手动备份文件使用您选择的备份密码加密。您可以使用OpenSSL解密:

openssl enc -d -aes-256-cbc -a -in <filename>" 

不幸的是,我没有太多的经验这样做,我所能做到的就是在终端要求输入密码。任何人都可以给我说明如何使用OpenSSL强制解密文件吗?

n.b。密码很简单,只使用字母和一个数字。

2 个答案:

答案 0 :(得分:8)

  

...我所能做的就是在终端询问密码。

您需要添加-passin pass:XXX个选项,其中XXX是您要尝试的密码。

-passin还有其他选项,PASS PHRASE ARGUMENTS命令openssl(1)

您还需要了解-k的{​​{1}}和-K选项。


  

有人可以给我说明如何使用OpenSSL强制解密文件吗?

在循环中运行这样的东西:

openssl enc

# Build your list of candidates PASSWORDS=... for PASSWORD in $PASSWORDS; do openssl enc -d -aes-256-cbc -a -in <filename> -passin pass:$PASSWORD RET=$? if [ $RET -eq 0 ]; then echo "Candidate password: $PASSWORD" fi done 成功时返回0,否则返回非零。 注意:您将得到误报,因为AES / CBC只能确定&#34;解密是否有效&#34;基于使填充正确。如果文件解密但 已恢复,则删除该候选密码。

经过身份验证的加密可以解决歧义问题,但您需要使用AES / CCM,AES / GCM,AES / EAX等进行加密。

答案 1 :(得分:0)

如果你想自己尝试,现在有一个蛮力工具可以非常有效地做到这一点,叫做 bruteforce-salted-openssl。请注意,openssl 过去使用的摘要是 md5(而不是今天的 sha256),因此您必须指定摘要 (-m md5)