Словил баг не могу понять в чем причина и куда копать дальше, может кто то, укажет нужное направление?
В общем ситуация такая . Есть клиент который отправляет зашифрованные AES контейнер через system.net.WebClient методом Post.
На веб-сервере (BaseHTTPServer.HTTPServer python2.7) обрабатываю запрос. Данные(байты) из метода post передаю в функцию
Сама функция.
BLOCK_SIZE = 16 def aes_decrypt(self, key, data): if len(data) > BLOCK_SIZE: IV = data[:BLOCK_SIZE] cipher = AES.new(key, AES.MODE_CBC, IV) return self.unpad(cipher.decrypt(data[BLOCK_SIZE:])) def unpad(self, s): return s[:-(ord(s[-1]))]
message: TF7��V�?P ����C�eto testovoe soobshenie
Исходное сообщение перед криптованием было таким:
message: privet kak dela eto testovoe soobshenie
Не могу понять что происходить с сообщением . Вес данных при отправки и получении совпадает. На клиенте аеs контейнер весит 64 байта. На веб-сервер столько и приходит.
Само сообщение перед криптованием весит 39 байт. После расшифровки на веб-севере сообщение весит len(message): 31. Получается декрипт куда от отрезает от 7-10 байтов и из-за этого сообщение не расшифровывается нормально.