这是我在这里发表的第一篇文章,如果我遗漏某些内容或违反任何规则,请提前道歉!
我们将从第三方收到AES128加密文件。第三方使用Java加密文件。他们使用AES / ECB / PKCSPadding进行加密。
我们必须在unix上处理文件,我们正在尝试在unix上使用OpenSSL命令来解密文件,但是我们无法这样做。 Source没有使用任何盐,并且使用密钥作为IV本身。
我已经尝试过OpenSSL中的所有选项但是每次遇到错误的解密错误。 - Source能够在其末尾加密和解密 - 为了测试我的命令,我加密并解密了一个文件(在unix上)并且能够这样做 - 但是,当我们交换文件和密钥时,我们都无法解密文件
到目前为止我尝试的东西/命令:
openssl enc -d -aes-128-ecb -nosalt -in <> -out <> -nosalt -pass file:$HOME/keyfile
将密钥更改为十六进制,然后在
下面尝试openssl enc -d -aes-128-ecb -nosalt -K 'hex value' -iv 'hex value' -in <> -out <>
在这个阶段我很无能为力。我假设使用AES,加密/解密应该独立于平台,但如果我遗漏了某些内容,任何指针都会有所帮助!
答案 0 :(得分:0)
加密和AES等算法本质上独立于平台。 说到java,有可能在java中使用big endian可能是个问题。 无论如何作为建议:永远不要将你的钥匙用作IV。