OpenSSL命令行解密打嗝

时间:2017-11-07 11:58:51

标签: linux macos shell openssl

我希望每个人都做得很好。我希望有人能在这里向我指出正确的方向。

2013年左右,我曾使用OpenSSL在Mac OS机器上加密文本文件。不确定它是哪个版本的OpenSSL或MacOS X.

我用它加密了它;

openssl des3 -in unencrypted.txt -out encrypted

它的输出似乎是某种二进制格式,所以我使用xxd将其转换为十六进制,然后输出一个我保存在某处的文本文件。

xxd encrypted >> encryptedhex.txt

为了扭转我使用的过程

xxd -r encryptedhex.txt encrypted.bin
openssl des3 -d -in encrypted.bin -out decrypted.txt

我记得几次测试它似乎工作正常。现在快进到2017年。

我在Debian 9机器上,我试图解密这个文件。

每当我提供我认为正确的密码时,我都没有错误,但输出文件似乎是垃圾。我不知道是否可以通过不正确的密码获得错误,但每当我提供密码时,我知道错误就会吐出来

  

bad decrypt 140492140782848:错误:06065064:数字信封例程:EVP_DecryptFinal_ex:bad decrypt:../ crypto / evp / evp_enc.c:535:

我意识到现在有更好的方法可以做到这一点,但我仍然坚持我所拥有的东西,它似乎并不想工作。

较新版本的openssl向后兼容吗?加密文件是否可能损坏? (如果我看一下原始的二进制加密文件,我开始使用'盐渍的__',所以它看起来好像我还记得当时的回顾......)

你们可以想到的任何建议吗?谢谢!

1 个答案:

答案 0 :(得分:0)

尝试将-md md5添加到您的解密命令行。在OpenSSL 1.1.0中,用于从密码生成密钥的默认哈希值从md5更改为sha256:

https://www.openssl.org/docs/faq.html#USER3