Мне нужно зашифровать двоичные файлы (в диапазоне от десятков кб до пары мб) в памяти в приложении Rails. Из соображений соответствия я не могу записать файл на диск в незашифрованном виде. Меня беспокоит потребление памяти, связанное с этим подходом. Я задаюсь вопросом, есть ли какие-либо рекомендации для способа сделать это (возможно, есть способ, которым я могу поток / чанк данных), который будет менее интенсивным, чем пытаться работать со всем файлом сразу?
Я бы предпочел использовать шифр openssl aes-256-cbc, хотя я открыт для других алгоритмов (например, потокового шифра), если он достаточно безопасен и решает мою проблему с памятью. У меня уже есть шифрование, работающее с файлами aes-256-cbc, поэтому я действительно сосредоточен на аспекте памяти, а не на том, как на самом деле делать шифрование.
Есть ли хорошие варианты для шифрования больших потоков двоичных данных?