我希望每个人都做得很好。我希望有人能在这里向我指出正确的方向。
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向后兼容吗?加密文件是否可能损坏? (如果我看一下原始的二进制加密文件,我开始使用'盐渍的__',所以它看起来好像我还记得当时的回顾......)
你们可以想到的任何建议吗?谢谢!
答案 0 :(得分:0)
尝试将-md md5
添加到您的解密命令行。在OpenSSL 1.1.0中,用于从密码生成密钥的默认哈希值从md5更改为sha256: