🔐 Как указать пароль шифрования при использовании утилиты OpenSSL

Мануал

Давайте рассмотрим различные способы предоставления пароля шифрования при использовании утилиты OpenSSL.

Возможно, не напрямую, но я уже упоминал об этом в нескольких сообщениях в блогах, поэтому позвольте мне подвести итог.

Версия OpenSSL

$ openssl version
OpenSSL 1.1.1f  31 Mar 2020

Зашифруем файл, используя пароль, предоставленный из стандартного ввода (stdout).

$ echo "password" | openssl enc -aes-256-cbc  -in archive.tgz -out archive.tgz.enc -pbkdf2 -pass stdin

Расшифруем файл, используя пароль, указанный в командной строке.

$ openssl enc -aes-256-cbc -d -in archive.tgz.enc -out archive.tgz -pbkdf2 -pass pass:password

Зашифруем файл, используя пароль, предоставленный из определенного файла.

$ cat /home/milosz/Projects/openssl/password.txt
password
$ openssl enc -aes-256-cbc -in archive.tgz -out archive.tgz.enc -pbkdf2 -pass file:/home/milosz/Projects/openssl/password.txt

Расшифруем файл, используя пароль, указанный в переменной окружения.

$ export PASSWORD="password"
$ openssl enc -aes-256-cbc -d -in archive.tgz.enc -out archive.tgz -pbkdf2 -pass env:PASSWORD
$ unset PASSWORD

Расшифруем файл, используя пароль, предоставленный дескриптором файла.

$ exec 5< <(echo password)
$ openssl enc -aes-256-cbc -d -in archive.tgz.enc -out archive.tgz -pbkdf2 -pass fd:5
$ exec 5>&-

 

Добавить комментарий