Переменные окружения
Переменная $GNUPGHOME
используется GnuPG для определения каталога, в котором хранятся все настройки. По умолчанию $GNUPGHOME
не установлена и используется домашний каталог текущего пользователя. Таким образом, после установки появится новый каталог ~/.gnupg
. Можно указать другой каталог для GnuPG, добавив след. строку в ~/.profile:
Блок кода | ||
---|---|---|
| ||
export GNUPGHOME="/путь/до/каталога" |
Ключи
GnuPG ключ состоит из двух частей: приватный и публичный. Приватный ключ хранится у владельца в запароленном виде. Публичный - распространяется в интернете.
С помощью приватного ключа можно:
- подписывать данные
- дешифровать зашифрованные файлы.
Во всех операциях, где используется приватный ключ, нужно вводить пароль (парольная фраза).
С помощью публичного ключа:
- проверить подпись данных
- зашифровывать файлы.
Управление ключами
Создание ключа
Для создания пары приватный-публичный ключ используется утилита gnupg:
Command |
---|
gpg --gen-key |
Алгоритмы GOST используются только для подписи. RSA можно использовать как для подписи, так и для шифрования файлов.
Экспорт ключей
Экспорт публичного ключа:
Command |
---|
gpg --export 12345678 > /home/user/public.key |
Где 12345678 идентификатор ключа.
Экспорт приватного ключа:
Command |
---|
gpg --export-secret-keys 12345678 > /home/user/private.key |
Где 12345678 идентификатор ключа.
Импортирование ключей
Импортировать открытый публичный ключ в список открытых ключей:
Command |
---|
gpg --import public.key |
Импортировать закрытый приватный ключ в список закрытых ключей:
Command |
---|
gpg --import private.key |
Отображение ключей
Для вывода списка открытых публичных ключей:
Command |
---|
gpg --list-keys |
Для вывода списка закрытых приватных ключей:
Command |
---|
gpg --list-secret-keys |
Шифрование и дешифрование
Для шифрования необходимо импортировать открытый публичный ключ. Дешифрование происходит с помощью закрытого приватного ключа Есть возможность использовать сразу несколько ключей. В этом случае вам будет необходимо указать идентификатор ключа Для этого используйте опцию -u <идентификатор_ключа>
, иначе будет использован ключ, выбранный по умолчанию.
Чтобы зашифровать файл:
Command |
---|
gpg --encrypt -r <идентификатор_ключа> -o file.tar.gpg file.tar |
Для того чтобы расшифровать файл:
Command |
---|
gpg --decrypt file.tar.gpg |