@Toxic-cloud

Почему не шифрует сообщение AES?

Вот мой код:
from Crypto.Cipher import AES
def code(crypt):
    crypt1=(b"%r"%crypt)
    obj = AES.new("1234567890123456", AES.MODE_CBC,"1234567890123456")

    crypt1 = obj.encrypt(crypt1)
    crypt1=crypt1.decode('utf-8')
    return crypt1
print(code("text567890123456"))


Вроде бы все правильно, но выводит ошибку:

Traceback (most recent call last):
ValueError: Input strings must be a multiple of 16 in length                                     
   [Program finished]
  • Вопрос задан
  • 122 просмотра
Решения вопроса 1
SagePtr
@SagePtr
Еда - это святое
Потому что шифруемые данные нужно дополнить до кратности размеру блока. Crypto.Util.Padding в помощь.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы