![](/img/trans.png)
[英]encrypt using node.js crypto aes256 and decrypt using python2.7 PyCrypto
[英]Python 2.7 crypto AES
我在python 2.7中遇到了aes問題
import pyelliptic
iv = pyelliptic.Cipher.gen_IV('aes-256-cfb')
ctx = pyelliptic.Cipher("secretkey", iv, 1, ciphername='aes-256-cfb')
ciphertext = ctx.update('test1')
ciphertext += ctx.final()
ctx2 = pyelliptic.Cipher("secretkey", iv, 0, ciphername='aes-256-cfb')
現在,我不知道如何將該消息發送到服務器,並在服務器上對其進行解密,因為我不知道IV,我的服務器無法解密它。 服務器具有密鑰。
IV不需要保密,但是對於具有相同密鑰的每個加密操作,它都需要唯一(隨機)。
許多實現只是將IV字節添加到密文的開頭。 您必須知道IV用於實現的時間,以便您可以在解密之前將其切開。
# encrypt
ciphertext = iv + ciphertext
# decrypt
blocksize = pyelliptic.Cipher.get_blocksize('aes-256-cfb')
iv = ciphertext[0:blocksize]
ciphertext = ciphertext[blocksize:]
從代碼中可以明顯看出,IV的生成大小與密文塊大小相同,因此從密文中切出一個塊以獲取IV是安全的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.