Для шифрования файлов в консоли Linux мы будем использовать пакет OpenSSL. Данный пакет имеет большое количество настроек, перечислим основные для шифрования файла.
1. Шифрование файла
openssl enc -aes-256-cbc -salt -in file1.txt -out file1.txt.enc
enc - Кодирование с помощью шифров
-aes-256-cbc - Используемый алгоритм шифра
-salt - Добавляет надежность шифрованию
-in - Указывает входной файл
-out - Указывает выходной файл
2. Расшифровка файла
openssl enc -aes-256-cbc -d -in file1.txt.enc -out file1.txt
-d - Расшифровывает данные
-in - Указывает данные для расшифровки
-out - Указывает файл для помещения расшифрованных данных
3. Методы шифрования
3.1 Для того, чтобы отправить зашифрованный фрагмент текста по почте или в чате без потери целостности шифра(данных) необходимо шифровать их в формате Base64.
Кодирование Base64 — это стандартный метод преобразования 8-битной двоичной информации в ограниченное подмножество символов ASCII. Он необходим для безопасной транспортировки через системы электронной почты, мессенджеры, которые не являются 8-битными, так как по умолчанию зашифрованный файл имеет двоичный формат.
openssl enc -aes-256-cbc -salt -a -in file1.txt -out file1.txt.enc
-a - делает зашифрованные данные в кодировке Base64.
Декодирование Base64
openssl enc -aes-256-cbc -d -a -in file1.txt.enc -out file1.txt