Здравствуйте, я пытаюсь выполнить Шифрование / дешифрование BlowFish с использованием pycrypto
Вот мой пример файла кода, шифрование работает хорошо при расшифровке данных
Он просто печатает:
Hello 8g
вместо this
Вот полный пример кода для BlowFIsh Encryption и Расшифровка , не знаю, какой отступ мне нужно добавить, я знаю, что BlowFISH имеет фиксированный размер блока данных 8 байтов, а длина его ключей может варьироваться от 32 до 448 бит (от 4 до 56 байт).
from Crypto.Cipher import Blowfish
from Crypto import Random
from struct import pack
bs = Blowfish.block_size
import os
encryptedpass = "myverystrongpassword"
plaintextMessage = "Hello 8gwifi.org"
iv = os.urandom(Blowfish.block_size)
bs = Blowfish.block_size
# ENcryption
cipher = Blowfish.new(encryptedpass, Blowfish.MODE_CBC, iv)
plen = bs - divmod(len(plaintextMessage),bs)[1]
padding = [plen]*plen
padding = pack('b'*plen, *padding)
ct = iv + cipher.encrypt(plaintextMessage + padding)
#Decryption
cipher = Blowfish.new(encryptedpass, Blowfish.MODE_CBC, iv)
msg = cipher.decrypt(ct[bs:])
print msg