GPG

30-10-2023

GNU Privacy Guard или просто GPG может быть использован для шифрования любого файла из командной строки или в графическом режиме.

$ gpg опции файл параметры

Опции указывают что необходимо сделать с файлом, как это сделать и какие возможности использовать.

  • -h - вывести справку по утилите;
  • -s, --sign - создать цифровую подпись, эта опция используется вместе с другими опциями для шифрования;
  • --clearsign - подписать незашифрованный текст;
  • -e, --encrypt - зашифровать данные, с помощью ключа;
  • -с, --symmetric - зашифровать данные, с помощью пароля;
  • -d, --decrypt - расшифровать данные, зашифрованные с помощью ключа или пароля;
  • --verify - проверить подпись;
  • -k, --list-keys - вывести доступные ключи;
  • --list-sigs - вывести доступные подписи;
  • --fingerprint - вывести все ключи вместе с их отпечатками;
  • --delete-key - удалить ключ;
  • --delete-secret-key - удалить секретный ключ;
  • --export - экспортировать все ключи;
  • --export-secret-keys - экспортировать все секретные ключи;
  • --import - импортировать ключи;
  • --send-keys - отправить ключи на сервер, должен быть указан сервер ключей;
  • --recv-keys - получить ключи от сервера ключей;
  • --keyserver - указать сервер ключей;
  • --fetch-keys - скачать ключи;
  • --gen-key - создать ключ;
  • --sign-key - подписать ключ;
  • --passwd - изменить пароль для ключа.

Шифрование файлов с помощью пароля

gpg -c имя_файла

Запросит ввод парольной фразы и подтверждение.

Для расшифровки:

gpg имя_файла.gpg

Для использования в скриптах:

gpg -c --no-tty --batch --passphrase 'QWE#_!123' имя_файла

  • --no-tty - терминал не будет использоваться для какого-либо вывода
  • --batch - не позволяет gpg использовать интерактивные команды
  • --passphrase 'QWE#_!123' - пароль необходимо заключать в кавычки, если используются специальные символы.

Расшифровка:

gpg --no-tty --batch --passphrase 'QWE#_!123' имя_файла.gpg

Полезные параметры командной строки:

  • --passphrase-file file - читает парольную фразу из файла
  • --passphrase string - использует string в качестве парольной фразы