使用 OpenSSL 的密钥文件作为密码

使用 OpenSSL 的密钥文件作为密码

我收到一个任务来解密使用 aes 加密的二进制文件。我有一个 32 字节的二进制文件,它是解密的密钥。如果密钥是密码短语,我知道如何解密

openssl enc -d -aes-256-cbc -in file.out

在这种情况下,密钥是一个二进制文件。我该如何使用它?

答案1

添加-pass file:nameofkeyfile到 OpenSSL 命令行。这会导致 OpenSSL 从指定文件中读取密码/密码短语,但其他方面则正常进行。

有关更多详细信息,请参见 openssl(1) ( ) 的手册页,man 1 openssl特别是其“PASS PHRASE ARGUMENTS”部分,以及 enc(1) ( ) 的手册页man 1 enc

如果密钥文件实际上包含加密密钥(不是从中派生加密密钥的东西),那么您想使用-K它。为此,您需要类似的东西:

-K $(hexdump -v -e '/1 "%02X"' < nameofkeyfile)

在 OpenSSL 命令行中而不是-pass.hexdump用于将密钥文件转换为 OpenSSL 想要的纯十六进制表示形式。

相关内容