相关疑难解决方法(0)

使用 AES-256 加密,如 OpenSSL 和 PyCrypto

我正在尝试使用 AES-256 和带有 base64 的 Python 加密时间戳。使用以下命令生成输出的 OpenSSL 等效项:

openssl enc -aes256 -pass pass:'1Lw2*kx18#AvNuij*iRL1nY1UA_#k8$+' -nosalt -base64 <<< "1489355323"
Run Code Online (Sandbox Code Playgroud)

我的python代码如下所示:

import time
from base64 import b64encode
from Crypto.Cipher import AES

key = '1Lw2*kx18#AvNuij*iRL1nY1UA_#k8$+'
timestamp = "1489355323"

BS = 16
pad = lambda s: s + (BS - len(s) % BS) * chr(BS - len(s) % BS)
iv = "\x00" * 16

aes = AES.new(key, AES.MODE_CBC, iv)
ciphertext = aes.encrypt( pad( timestamp ) )

print b64encode(ciphertext)
Run Code Online (Sandbox Code Playgroud)

目前输出不同,我需要获得与 OpenSSL 命令相同的输出。知道我做错了什么吗?

python encryption cryptography pycrypto

1
推荐指数
1
解决办法
2853
查看次数

标签 统计

cryptography ×1

encryption ×1

pycrypto ×1

python ×1