Я передаю потоковую запись звука с микрофона в реальном времени с помощью PyAudio и сокета. Шифрую поток и передаю его клиенту. Когда клиент пытается расшифровать поток, я получаю ошибку о неправильном типе данных:
data = cipher.decrypt(data,AES.block_size)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/homebrew/lib/python3.11/site-packages/Crypto/Cipher/_mode_cbc.py", line 234, in decrypt
raise TypeError("output must be a bytearray or a writeable memoryview")
TypeError: output must be a bytearray or a writeable memoryview
Это мой код
Клиента:
cipher = AES.new(self.__aes_key,AES.MODE_CBC,iv=self.__iv_data)
while self.__running:
data = bytearray(connection.recv(self.__frame_chunk))
data = unpad(cipher.decrypt(data,AES.block_size))
self.__stream.write(data)
сервера
self.__sending_socket.send(self.__cipher.encrypt(pad(self.__stream.read(self.__frame_chunk),AES.block_size)))
Отправка проходит хорошо, проблема только расшифровать
Я попробовал использовать необходимые типы данных