использовать 32-байтовый вектор инициализации в Pycrypto - PullRequest
0 голосов
/ 08 июня 2018

Я пытаюсь расшифровать текст, используя python с pycrypto.Но я получаю: ValueError: IV должен иметь длину 16 байтов

Однако мой iv имеет длину 32 байта, и я не могу это изменить.Мой ключ также имеет размер 32 байта. Есть ли способ сделать это с помощью Pycrypto?Я мог найти что-нибудь в документах.

import Crypto.Cipher.AES as AES
a=0x0
i='68fe3a4cf921122eda3df6c7d5458497'
print(i)
plain="encrypted text"
print(plain)
length = 16 - (len(plain) % 16)
plain += chr(length)*length
print(plain)
plaintext=""

for a in range(0, 0xffffff):
    s="6af6f9fae1ab621c2aba5f80ea4"+hex(a)[2:].zfill(5)
    print(s)
    cipher = AES.new(key=s, mode=AES.MODE_CBC, IV=i)
    text=cipher.decrypt(plain)
    if isinstance(text, unicode):    plaintext=text

print(plaintext)
...