我正在用 C 测试一些AES实现,从这里得到它,编译并测试它,加密和解密彼此都可以正常工作。
在现场它说:
此实现加密 128 位块。
并且
这些程序应仅用于演示目的,因为使用密码作为密钥提供的有效密钥长度比传递给 Rijndael 加密包的 256 位密钥短得多。
所以,我试图测试它们并与openssl交互,所以如果我用我得到的编译代码加密任何东西,它可以用 open-ssl 解密,反之亦然。
我已经尝试过openssl aes-128-cbc -in attack-plan.txt -out message.enc
用于加密和openssl aes-128-cbc -d -in message.enc -out plain-text.txt
解密的方法,这些方法实际上是从这里得到的。也尝试过128-ecb
但没有得到结果。
当我尝试使用 openssl 解密使用编译代码加密的文件并输入密码时,它给了我错误的幻数错误。当我尝试用我的编译代码解密一个 openssl 加密文件时,我没有得到正确的解密输出。
我真的需要在 C 中实现 AES 的任何实现,并针对 openssl 证明它并让它协同工作。