我有一个使用Python和OpenSSL加密的问题。
我编写了以下简短的Python脚本:
#!/usr/bin/python
from Crypto.Cipher import AES
obj = AES.new('Thisisakey123456', AES.MODE_ECB)
message = "Sample text....."
ciphertext = obj.encrypt(message)
print ciphertext
当我使用以下命令运行脚本时:
$ ./enc.py | base64
我得到了E0lNh0wtSg9lxxKClBEITAo=
作为结果。
如果我在openssl中执行相同的操作(或者显然不是完全相同的操作;)),我会得到另一个结果:
$ echo -n "Sample text....." | openssl aes-128-ecb -k "Thisisakey123456" -nosalt -nopad | base64
yvNTGC+gwUK38uyJXIk/sQ==
我做错了什么?我期望得到相同的base64编码字符串。
顺便说一句:我知道ECB是不好的,但我只是在玩,所以没问题...;)