目标: 使用openssl算一遍,再使用网页在线工具算一遍,看看结果是否一样
构造数据
如何编写一个二进制规律性的文件, 比如你可以编写一个"0123456789abcdef"的文本文件,记得删除换行符
然后用ultraedit打开,ctrl+H就可以看到二进制文件,对应的0x30 0x31 0x32…
或者使用xxd -i 1.txt查看
echo "0123456789abcdef" > temp.txt && d if=temp.txt of=in.txt bs=1 count=16 && rm temp.txt
ECB
加密
命令行 : openssl aes-128-ecb -in in.txt -K 30313233343536373839616263646566 -out temp.txt
密码二进制 == 密码文本
、30313233343536373839616263646566 == 0123456789abcdef
注意:在openssl命令行中填写的是密码二进制,在网页中填写的是密码文本
openssl命令行加密的数据,被pending填充了16字节,忽略最后16字节即可。
网页在线工具的计算 http://tool.chacuo.net/cryptaes/
解密
命令行 : openssl aes-128-ecb -d -in temp.txt -K 30313233343536373839616263646566 -out out.txt
CBC
命令行: openssl aes-128-cbc -in in.txt -K 30313233343536373839616263646566 -iv 30313233343536373839616263646566 -out temp.txt
网页在线工具的计算 http://tool.chacuo.net/cryptaes/