diff --git a/telethon/network/mtproto_sender.py b/telethon/network/mtproto_sender.py index 400ea6cf..6d103c7a 100644 --- a/telethon/network/mtproto_sender.py +++ b/telethon/network/mtproto_sender.py @@ -158,10 +158,11 @@ class MtProtoSender: msg_key = reader.read(16) key, iv = utils.calc_key(self.session.auth_key.key, msg_key, False) - if reader.read(len(body) - reader.tell_position()) % 16 != 0: + data = reader.read(len(body) - reader.tell_position()) + if len(data) % 16 != 0: raise SecurityError('AES block size missmatch') plain_text = AES.decrypt_ige( - reader.read(len(body) - reader.tell_position()), key, iv) + data, key, iv) with BinaryReader(plain_text) as plain_text_reader: plain_text_reader.read_long() # remote_salt