【问题标题】:How to decrypt openssl encryped file with flag -nosalt -base64 and -md sha256?如何使用标志-nosalt -base64和-md sha256解密openssl加密文件?
【发布时间】:2020-06-05 00:04:37
【问题描述】:

给定这个命令:

openssl enc -aes-128-ecb -nosalt -base64 -pass pass:aaaca -in flag.txt -out flag.txt.enc -md sha256

openssl 文件的解密格式是什么?我的 openssl ubuntu 版本是 1.0.2g。

我之所以问,是因为我尝试使用 openssl enc -d -aes-128-ecb -pass pass:aaaca -in flag.txt.enc -out pass.txt,但它说使用 aaaca 作为密码的幻数错误,当我尝试使用 openssl enc -d -aes-128-ecb -nosalt -base64 -md sha256 -in flag.txt.enc -out pass.txt -pass pass:aaaaa(使用不同的密码)时,它说解密错误。在这一点上,我不确定了。谢谢!

编辑:如果您想知道我为什么故意输入错误的密码,那是因为我正在尝试针对我的一项作业测试暴力破解密码。帮助赞赏>

【问题讨论】:

    标签: encryption openssl


    【解决方案1】:

    当我尝试openssl enc -d -aes-128-ecb -nosalt -base64 -md sha256 -in flag.txt.enc -out pass.txt -pass pass:aaaaa(使用不同的密码)时,它说解密错误。

    当然可以,因为openssl 命令行默认会执行PKCS#7 compatible padding and unpadding。因此,如果您使用错误的密钥解密,则由于取消填充失败,因此有大约 255/256 的机会获得“错误解密”。如果你“幸运”,不正确的明文将包含一个有效的填充,你只会在输出中得到一个错误/随机的明文。

    因此,如果您遇到这种情况,则必须检查明文消息是否符合您的期望。如果你没有什么可以比较可能坏的明文,那么你就有麻烦了,因为你可能会找到多种解决方案。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-04-07
      • 2010-11-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多