Генерация симметричного ключа шифрования
На этом этапе вы сгенерируете симметричный ключ — секретный ключ, используемый как для шифрования, так и для расшифровки данных. Мы будем использовать OpenSSL для создания надежного случайного ключа, подходящего для шифрования AES-256, которое является высокозащищенным и общепринятым стандартом.
Убедитесь, что вы находитесь в директории проекта /home/labex/project.
cd ~/project
Используйте команду openssl rand, чтобы сгенерировать 32 байта (256 бит) случайных данных и сохранить их в шестнадцатеричном формате в файл с именем symmetric_key.hex.
openssl rand -hex 32 > symmetric_key.hex
Просмотрите сгенерированный ключ, чтобы увидеть, как он выглядит.
cat symmetric_key.hex
Результатом будет 64-символьная шестнадцатеричная строка, представляющая ваш 256-битный ключ. Она будет выглядеть примерно так (ваш ключ будет уникальным):
2f8b5e9a1c3d4e6f8a9b0c1d2e3f4a5b6c7d8e9f0a1b2c3d4e5f6a7b8c9d0e1f
Поскольку этот ключ может открыть ваши данные, крайне важно защитить его. Используйте команду chmod, чтобы установить права доступа к файлу так, чтобы только владелец (вы) мог читать и записывать его.
chmod 600 symmetric_key.hex
Наконец, проверьте права доступа к файлу с помощью ls -l.
ls -l symmetric_key.hex
Вывод должен показывать права -rw-------, что подтверждает защищенность файла.
-rw------- 1 labex labex 65 Nov 15 10:30 symmetric_key.hex
Теперь, когда ключ сгенерирован и защищен, вы готовы зашифровать тестовый файл.