Используем gpg для шифрования сообщений и файлов
Содержание:
Создание цифровой подписи файла
GnuPG позволяет использовать несколько типов подписей:
- встроенная в файл: содержимое файла изменяется так, чтобы в него была добавлена ЭЦП. Чаще всего применяется при отправке подписанных сообщений по электронной почте;
- отсоединённая в текстовом формате: создаётся файл с расширением *.asc вида mydocument.pdf.asc (где mydocument.pdf — имя оригинального файла);
- отсоединённая в двоичном формате: создаётся файл с расширением *.sig вида mydocument.pdf.sig в бинарном формате.
Для создания ЭЦП файла используется закрытый ключ из нашей ключевой пары, а для проверки — открытый.
Консоль
Создадим отсоединённую подпись в текстовом формате:
gpg2 --sign --detach-sign --default-key 0xD45AB90A --armor mydocument.pdf
Здесь 0xD45AB90A — отпечаток ключа нашей ключевой пары, а mydocument.pdf — имя файла, который мы будем подписывать ЭЦП.
Создадим отсоединённую подпись в двоичном формате:
gpg2 --sign --detach-sign --default-key 0xD45AB90A mydocument.pdf
Все параметры идентичны, но на выходе будет получен файл mydocument.pdf.sig.
Создадим встроенную в файл подпись в текстовом формате:
gpg2 --sign --default-key 0xD45AB90A --armor mydocument.pdf
Создадим встроенную в файл подпись в двоичном формате:
gpg2 --sign --default-key 0xD45AB90A mydocument.pdf
Внимание! При создании встроенных подписей содержимое файла-источника целиком включается внутрь, поэтому использовать данный формат не желательно из-за дублирования и значительного размера. Далее в статье мы будем рассматривать только отсоединённую ЭЦП, т.к
это самый популярный вариант подписи.
GUI
Выбор пункта на панели Kleopatra
В главном окне Kleopatra нажмём кнопку на панели инструментов Подписать/Зашифровать (Sign/Encrypt).
Подпись файлов в Kleopatra
В открывшемся окне сначала найдём на диске файл, который следует подписать, выберем его и увидим новое окно с настройками шифрования и подписи.
Выберем свой, который будет использоваться для подписи и, т.к. мы не хотим шифровать его, уберём флажки из всех чекбоксов блока Зашифровать (Encrypt).
Т.к. нам необходимо создать отсоединённую подпись, обязательно установим флажок в чекбокс Зашифровать / Подписать каждый файл отдельно (Encrypt / Sign each file separately).
Запрос ввода пароля закрытого ключа
После нажатия кнопки Подписать (Sign) будет предложено ввести пароль, указанный при создании ключевой пары.
Успешная подпись файла в Kleopatra
Если пароль был введён верно, то процесс завершится успешно и будет создана действительная цифровая подпись. Нажмём Завершить (Finish) для выхода.
Importing a public key
A public key may be added to your public keyring with the
—import option.
alice% gpg --import blake.gpg gpg: key 9E98BC16: public key imported gpg: Total number processed: 1 gpg: imported: 1 alice% gpg --list-keys /users/alice/.gnupg/pubring.gpg --------------------------------------- pub 1024D/BB7576AC 1999-06-04 Alice (Judge) <alice@cyb.org> sub 1024g/78E9A8FA 1999-06-04 pub 1024D/9E98BC16 1999-06-04 Blake (Executioner) <blake@cyb.org> sub 1024g/5C8CBD41 1999-06-04 |
Once a key is imported it should be validated.
GnuPG uses a powerful and flexible trust model that does not require
you to personally validate each key you import.
Some keys may need to be personally validated, however.
A key is validated by verifying the key’s fingerprint and then signing
the key to certify it as a valid key.
A key’s fingerprint can be quickly viewed with the
—fingerprint
command-line option, but in order to certify the key you must edit it.
alice% gpg --edit-key blake@cyb.org pub 1024D/9E98BC16 created: 1999-06-04 expires: never trust: -/q sub 1024g/5C8CBD41 created: 1999-06-04 expires: never (1) Blake (Executioner) <blake@cyb.org> Command> fpr pub 1024D/9E98BC16 1999-06-04 Blake (Executioner) <blake@cyb.org> Fingerprint: 268F 448F CCD7 AF34 183E 52D8 9BDE 1A08 9E98 BC16 |
After checking the fingerprint, you may sign the key to validate it.
Since key verification is a weak point in public-key cryptography,
you should be extremely careful and always check
a key’s fingerprint with the owner before signing the key.
Command> sign pub 1024D/9E98BC16 created: 1999-06-04 expires: never trust: -/q Fingerprint: 268F 448F CCD7 AF34 183E 52D8 9BDE 1A08 9E98 BC16 Blake (Executioner) <blake@cyb.org> Are you really sure that you want to sign this key with your key: "Alice (Judge) <alice@cyb.org>" Really sign? |
Once signed you can check the key to list the signatures on it and
see the signature that you have added.
Every user ID on the key will have one or more self-signatures as well
as a signature for each user that has validated the key.
Command> check uid Blake (Executioner) <blake@cyb.org> sig! 9E98BC16 1999-06-04 sig! BB7576AC 1999-06-04 Alice (Judge) <alice@cyb.org> |
News
The latest blog entries:
- Using an OpenPGP card in the UbuntuPhone BQ E4.5
- Financial Results for 2016
- Using the Web Key Service with Enigmail
The latest release news:
(all news)
GnuPG 2.2.21 released (2020-07-09)
After the release of GnuPG 2.2.20 back in March it is now the time to
get collected fixes from the last months out: GnuPG version 2.2.21 has
been released today. This is a maintenance release with a some minor
changes. {more}
Libgcrypt 1.8.6 released (2020-07-06)
Nearly a year passed since the last release and so the time is ripe
for new maintenance release: Libgcrypt version 1.8.6 is now
available. {more}
Gpg4win fully approved for EU RESTRICTED.
After about a year of tweaking details of the approval, Gpg4win and
GnuPG are now approved for EU RESTRICTED communication (VS-NfD). This
approvals covers the protocols S/MIME and OpenPGP (public-key and
symmetric-only) with hard- and soft-tokens. Our commercial branch
GnuPG.com released a press notice (in German) today.
GnuPG 2.2.19 released (2019-12-07)
We are pleased to announce the availability of GnuPG version 2.2.19.
This version fixes a regression introduced with the last release.
{more}
GnuPG 2.2.18 released (2019-11-25)
We are pleased to announce the availability of GnuPG version 2.2.18.
This is maintenance release to fix a couple of minor bugs and provide
a few feature updates. This release also retires the use of SHA-1 key
signatures created since this year. {more} (see also)
Libgcrypt 1.8.5 released (2019-08-29)
If you care about local site-channel attacks on ECDSA you may want to
update to Libgcrypt version 1.8.5. CVE-CVE-2019-13627 {more}
Software list
This is the complete list of software we know to work or once used to
work with GnuPG. The header line indicates the supported operating
systems and the type of the software:
- GUI
- A graphical user interface for GnuPG
- MUA
- A Mail User Agent (mail program) or a Plugin for MUA
- CHAT
- A chat client
- INST
- An installer package
- LIB
- Software to help writing programs with GnuPG support.
- SRV
- Software for use on servers.
- MISC
- Other types of software
The flag Active indicates that we know that this software is
actively maintained. Obsolete mean that the software is not anymore
useful.
Cryptophane GUI
Cryptophane is an easy-to-use application for MS Windows. It allows
users to encrypt, sign, decrypt, and perform key maintenance without
having to deal with GnuPG’s command-line interface.
ez-pine-gpg MUA
ez-pine-gpg is a set of scripts that allows beginners and experts to
use gpg with Pine. There are plenty of other applications that allow
gpg to be used with Pine: this one is intended to be the best, since
it merges intuitive use with powerful features. The result is an
application that’s not only fast and secure, but also perfect for
novices and power-users alike.
Gabber CHAT
Gabber is a Free and Open Source GNOME client for an instant messaging
system called Jabber (XMPP). Jabber is a Free and Open Source distributed
instant messaging system. It does not rely on a single server, and the
protocol is well documented. Jabber allows communication with many
different instant messaging systems, including ICQ and AIM.
Gajim CHAT Active
The goal of Gajim is to provide a full featured and easy to use Jabber
client. Gajim works nicely with GNOME, but does not require it to
run. It is released under the GNU General Public License.
GNU Anubis MUA
Is an outgoing mail processor, and an SMTP tunnel between the MUA and
the MTA. It strongly uses the GnuPG via the GPGME interface. With this
GNU tool you can encrypt or sign an outgoing mail on-the-fly.
GPA GUI Active
gpg_encrypt SRV
gpg_encrypt() is a PHP function that will allow you to easily use
GnuPG to encrypt data to your public PGP key and mail that encrypted
data to yourself, where it can be securely decrypted with your private
key. This is designed primarily for use with web-based forms but can
be used to encrypt any data.
GPGMail MUA Active
Is a mail program for MAC OS X. Note that only the source code is
delivered without charge; a binary version requires a paid
subscription.
GPGTools INST Active
GPGTools is an installer package for Mac OS X. It integrates all
required modules for easy use of GnuPG on this OS. Note that only the
source code is delivered without charge; a binary version requires a
paid subscription.
PGG MUA
PGG is a complete PGP signing/encrypting solution provided from
scratch by the Gnus development team. It deserves the same than
mailcrypt but it has also native MIME support whereas mailcrypt does
not. There is no PGG homepage at the moment, sorry.
PSI CHAT Active
Psi is a free and crossplatform client for connecting to the Jabber
network. It supports multiple accounts, group chat, Unicode, and
strong security (TLS and GnuPG).
Tkabber CHAT
Tkabber is a free client for an instant messaging system called
Jabber (aka XMPP). It is written in Tcl/Tk and supports many features like
support of unicode, ssl support, http proxy, file transfers and
support of multi-user conference protocol.
wija CHAT
wija is a free and cross-platform Jabber/XMPP client written in Java,
with built-in GnuPG key rings management GUI. Its extended protocols
allow users to encrypt chat and multi-user chat as well as
encrypting/signing messages and signing presence of the user. It is
multilingual and runs on GNU/Linux, Mac OS X and Windows.
WinGPG GUI
WinGPG is a tray-based classical Windows application, Windows NT
Explorer shell extension, and a classic GPGv2 distribution (it uses
the cryptography from the official site without making any
modifications).
XFmail MUA
Технические характеристики гасителя вибрации ГПГ
Обозначение |
Диаметр провода, |
Размеры, мм |
Масса, |
|||
d |
2R |
L |
H |
|||
ГПГ-0,8-9,1-300/10 |
9,0 — 11,0 |
9,1 |
10 |
300 |
82,5 |
2,32 |
ГПГ-0,8-9,1-300/13 |
11,1 — 14,0 |
13 |
83,5 |
2,34 |
||
ГПГ-0,8-9,1-350/13 |
11,1 — 14,0 |
350 |
2,37 |
|||
ГПГ-0,8-9,1-350/16 |
14,1 — 17,0 |
16 |
86,5 |
2,39 |
||
ГПГ-0,8-9,1-400/13 |
11,1 — 14,0 |
13 |
400 |
83,5 |
2,39 |
|
ГПГ-1,6-11-350/10 |
9,0 — 11,0 |
11 |
10 |
350 |
80,0 |
4,23 |
ГПГ-1,6-11-350/13 |
11,1 — 14,0 |
13 |
81,0 |
4,26 |
||
ГПГ-1,6-11-400/13 |
400 |
4,28 |
||||
ГПГ-1,6-11-400/16 |
14,1 — 17,0 |
16 |
84,0 |
4,30 |
||
ГПГ-1,6-11-400/20 |
17,1 — 20,0 |
20 |
87,0 |
4,32 |
||
ГПГ-1,6-11-450/13 |
11,1 — 14,0 |
13 |
450 |
81,0 |
4,31 |
|
ГПГ-1,6-11-450/16 |
14,1 — 17,0 |
16 |
84,0 |
4,33 |
||
ГПГ-1,6-11-450/23 |
20,1 — 26,0 |
23 |
88,0 |
4,51 |
||
ГПГ-1,6-11-450/31 |
26,1 — 32,0 |
31 |
92,0 |
4,57 |
||
ГПГ-1,6-11-450/35 |
32,1 — 35,0 |
35 |
93,0 |
|||
ГПГ-1,6-11-500/13 |
11,1 — 14,0 |
13 |
500 |
81,0 |
4,34 |
|
ГПГ-1,6-11-500/20 |
17,1 — 20,0 |
20 |
87,0 |
4,38 |
||
ГПГ-1,6-11-550/16 |
14,1 — 17,0 |
16 |
550 |
84,0 |
4,39 |
|
ГПГ-1,6-11-550/20 |
17,1 — 20,0 |
20 |
87,0 |
4,41 |
||
ГПГ-1,6-13-350/13 |
11,1 — 14,0 |
13 |
13 |
350 |
89,5 |
4,39 |
ГПГ-1,6-13-400/16 |
14,1 — 17,0 |
16 |
400 |
92,5 |
4,45 |
|
ГПГ-1,6-13-400/20 |
17,1 — 20,0 |
20 |
95,5 |
4,47 |
||
ГПГ-1,6-13-450/20 |
450 |
4,51 |
||||
ГПГ-1,6-13-450/23 |
20,1 — 26,0 |
23 |
96,5 |
4,57 |
Гасители вибрации линейные типа ГВН с глухим креплением на проводе
НАЗНАЧЕНИЕ: устанавливаются на проводах и тросах воздушных линий электропередачи для предупреждения повреждения их от усталостных напряжений, вызываемых вибрацией.
Рисунок 3 (Чертеж гасителей вибрации ГВН)
Технические характеристики ГВН:
Марка гасителя |
Номинальное сечение проводов по ГОСТ 839-80, мм2 |
Расчётная площадь сечения всех проволок каната, мм2 |
Размеры, мм |
Масса, кг |
||||||
М |
АК, АКП, АЖ, АН, АЖКП, АНКП |
АС, АСКС, АСКП, АСК |
по ГОСТ 3062-80 |
по ГОСТ 3063-80 |
d |
2R |
L |
H |
||
ГВН-2-9 |
— |
— |
— |
38,01; 50,45; 57,33 |
48,64 |
9,1 |
10 |
300 |
82,5 |
2,32 |
ГВН-2-13 |
70 |
70,95 |
70/11, 95/16 |
— |
— |
11,0 |
13 |
350 |
83,5 |
2,37 |
ГВН-3-12 |
95 |
— |
— |
80,61 |
72,95 |
11,0 |
13 |
400 |
81,0 |
4,38 |
ГВН-3-13 |
— |
— |
— |
— |
101,72 |
11,0 |
13 |
450 |
81,0 |
4,31 |
ГВН-3-17 |
120, 150 |
120, 150, 185 |
70/72, 120/19, 120/27, 150/19, 150/24, 150/34 |
— |
— |
11,0 |
16 |
84,0 |
4,33 |
|
ГВН-4-14 |
— |
— |
— |
— |
117,9 |
11,0 |
13 |
440 |
81,0 |
5,91 |
ГВН-4-22 |
185, 240 |
240, 300 |
185/24, 185/29, 185/43, 205/27, 240/32, 240/39, 240/56 |
— |
— |
11,0 |
20 |
490 |
87,0 |
5,98 |
ГВН-5-25 |
300, 350, 400 |
350, 400 |
300/39, 300/48, 300/66, 300/67, 330/30, 330/43 |
— |
— |
13,0 |
23 |
550 |
96,5 |
7,96 |
ГВН-5-30 |
— |
450, 500, 550 |
400/22, 400/51, 400/64, 400/93, 450/56, 400/18, 500/26, 500/27, 500/64 |
— |
— |
13,0 |
31 |
100,5 |
8,02 |
|
ГВН-5-34 |
— |
600, 650, 700 |
550/71, 600/72, 650/79 |
— |
— |
13,0 |
35 |
600 |
101,5 |
8,07 |
ГВН-5-38 |
— |
750 |
700/86, 750/93 |
— |
— |
13,0 |
38 |
650 |
103,5 |
8,12 |
Защита Вашего секретого ключа
Защита секретного ключа одна из наиболее важных задач
для правильного использования GnuPG.
Если кто-либо получит Ваш секретный ключ, то он сможет
расшифровывать все направленные Вам сообщения и сможет
подписываться Вашей подписью.
Если Вы потеряете Ваш секретный ключ, то не сможете больше
расшифровывать документы зашифрованные для Вас и не сможете
подписывать свои сообщения.
Потеря единственной копии Вашего секретного ключа катастрофична.
Независимо от того, как Вы используете GnuPG Вы должны сохранить
открытых ключей
и резервную копию Вашего секретного ключа на защищенный от записи носитель
и хранить его в надежном месте.
Например, Вы можете записать копии на компакт-диск и хранить его
в банковском сейфе.
Можно, также, записать их на дискету и спрятать ее дома.
Чтобы Вы ни делали, копии должны быть скопированы на носитель,
на котором они смогут надежно храниться на протяжении всего срока
использования ключа, и их следует спрятать более тщательно, чем
копию Вашего секретного ключа для ежедневного использования.
Чтобы защитить Ваш ключ, GnuPG не сохраняет его на диск в
чистом виде.
Вместо этого он шифруется симметричным алгоритмом.
Вот зачем нужна ключевая фраза для доступа к ключу.
Поэтому взломщик должен решить две проблемы, чтобы получить
Ваш секретный ключ: (1) он должен получить ключ, (2) он должен
расшифровать ключ.
Надежное хранение секретного ключа — сложная задача.
В идеале, Вы должны хранить секретный ключ на сменном,
защищенном от записи диске и использовать его только на
на однопользовательской машине не подключенной к сети.
Это может оказаться неудобным или невозможным для Вас.
Например, у Вас может не быть своего компьютера и Вы используете
компьютер на работе, или это может означать, что Вам
прийдется отключать компьютер от сети каждый раз когда Вы
запускаете GnuPG
Это не означает, что Вы не можете или не должны использовать GnuPG.
Это означает только, что Вы считаете свои данные достаточно важными,
чтобы шифровать, но не настолько важными, чтобы принимать
особые меры предосторожности для усиления первого барьера защиты.
Это Ваш выбор. Хорошая ключевая фраза очень критична при использовании GnuPG.
Любой взломщик, получивший Ваш секретный ключ, должен взломать
шифр на секретном ключе.
Вместо атаки в лоб, взломщик, наверняка, попробует угадать
ключевую фразу
Хорошая ключевая фраза очень критична при использовании GnuPG.
Любой взломщик, получивший Ваш секретный ключ, должен взломать
шифр на секретном ключе.
Вместо атаки в лоб, взломщик, наверняка, попробует угадать
ключевую фразу.
Мотивацией для подбора ключевой фразы является то, что большинство
людей выбирают ключевую фразу, которую проще подобрать, чем
произвольный 128 битный ключ.
Если в качестве ключевой фразы используется слово, то гораздо
проще перепробовать все слова в словарях мировых языков.
Даже если слово искажено, например, k3wldood, гораздо проще
попробовать слова из словаря с каталогом перестановок.
Таже проблема с цитированием.
В общем случае, ключевые фразы основанные на естественном языке
недостаточны, т.к. в естественных языках не хватает случайности
и избыточности.
Вы должны избегать использования естественных языков в ключевых
фразах, если можете.
gpg-agent
gpg-agent чаще всего используется как посредник для временного хранения пароля (пароль не будет запрашиваться каждый раз, когда нужен). Он полезен если GnuPG используется внешней программой — например, почтовым клиентом.
Включение
Начиная с версии -2.1, gpg-agent используется по умолчанию. Если вы используете предыдущие версии, вы можете включить его, добавив следующую строку в :
~/.gnupg/gpg.conf
use-agent
Теперь GnuPG будет использовать агент каждый раз, когда ему необходим пароль.
Запуск
Информация в этой статье или разделе устарела
Чтобы агент запускался автоматически, добавьте следующую запись в ваш файл инициализации среды (например, или ). Если каталог настроек GnuPG у вас расположен не в стандартном месте (), не забудьте при этом соответствующим образом обновить значение переменной .
~/.bash_profile
envfile="$HOME/.gnupg/gpg-agent.env" if ] && kill -0 $(grep GPG_AGENT_INFO "$envfile" | cut -d: -f 2) 2>/dev/null; then eval "$(cat "$envfile")" else eval "$(gpg-agent --daemon --enable-ssh-support --write-env-file "$envfile")" fi export GPG_AGENT_INFO # the env file does not contain the export statement export SSH_AUTH_SOCK # enable gpg-agent for ssh
Перезайдите в систему и убедитесь, что gpg-agent запущен:
$ pgrep gpg-agent
Совет: Чтобы убедиться в том, что gpg-agent работает корректно, наберите . Если всё сделано правильно, будет отображено приглашение для ввода команд (наберите и для того, чтобы закрыть соединение и выйти).
Запуск с помощью systemd
Также вы можете использовать systemd в пользовательском режиме для запуска агента. Это имеет смысл и при >= 2.1, поскольку так он будет запускаться вне пользовательских сессий и под контролем systemd.
Создайте файл юнита для gpg-agent:
~/.config/systemd/user/gpg-agent.service
Description=GnuPG private key agent IgnoreOnIsolate=true Type=forking ExecStart=/usr/bin/gpg-agent --daemon --homedir=%h/.gnupg ExecReload=/usr/bin/gpg-connect-agent RELOADAGENT Restart=on-abort WantedBy=default.target
Затем включите его в список автозапуска и запустите его командами , и .
Примечание:
- Вам может понадобиться установить для агента какие-нибудь переменные окружения, например . Как это сделать, смотрите в разделе .
- Если вы используете стандартный каталог настроек GnuPG (), вам не нужно указывать его явно. В примере он указан исключительно для справки.
- Если вы используете SSH возможности gpg-agent’a (—enable-ssh-support), приведенный выше юнит systemd работать не будет.
Настройка
gpg-agent можно настроить в файле . Все опции для настройки перечислены на странице . Например, так вы можете задать время жизни для ключей в кэше с момента последнего использования:
~/.gnupg/gpg-agent.conf
default-cache-ttl 3600
Tip: Для кеширования вашего пароля на протяжении всей сессии, используйте команду:
$ /usr/lib/gnupg/gpg-preset-passphrase --preset XXXXXX
где XXXX keygrip. Вы можете получить это значение запустив . Пароль будет храниться до перезапуска . Установленное значение будет иметь превосходство.
Перезапуск агента
После обновления настроек, перезапустите агент, передав команду программе gpg-connect-agent:
$ echo RELOADAGENT | gpg-connect-agent
Будет выведено сообщение .
Или же, если вы используете #Запуск с помощью systemd, можно использовать следующую команду:
$ systemctl --user reload gpg-agent
pinentry
gpg-agent использует pinentry для отображения диалога запроса пароля. Это настраивается в файле настроек gpg-agent.
По умолчанию используется диалог GTK+. Однако, есть и другие варианты — смотрите подробнее в . Чтобы установить другой диалог, установите опцию :
~/.gnupg/gpg-agent.conf
# PIN entry program # pinentry-program /usr/bin/pinentry-curses # pinentry-program /usr/bin/pinentry-qt # pinentry-program /usr/bin/pinentry-kwallet pinentry-program /usr/bin/pinentry-gtk-2
Совет: Чтобы использовать потребуется установить пакет .
После внесения изменений перезапустите gpg-agent.
Unattended passphrase
Начиная с GnuPG 2.1.0 использование gpg-agent и pinentry стало обязательным; это нарушает обратную совместимость для парольных фраз, которые передавались через входной поток с помощью опции . Чтобы иметь возможность сделать, как раньше, требуется выполнить несколько шагов.
Первым делом, отредактируйте настройки gpg-agent, разрешив режим петли (loopback) для pinentry:
~/.gnupg/gpg-agent.conf
allow-loopback-pinentry
Перезапустите процесс gpg-agent чтобы изменения вступили в силу.
Теперь либо запускайте GnuPG с опцией
$ gpg --pinentry-mode loopback ...
либо добавьте ее же в файл настроек GnuPG:
~/.gnupg/gpg.conf
pinentry-mode loopback
Шифрование и дешифровка сообщений при помощи GPG
После настройки ключей с другим пользователем можно легко шифровать и расшифровывать сообщения.
Шифрование сообщений
Для шифрования сообщений используется флаг «—encrypt». Базовый синтаксис выглядит так:
данные параметры шифруют сообщение, подписывают его вашим закрытым ключом (что подтверждает то, что сообщение написано вами), а также позволяют создать сообщение в текстовом формате.
Нужно также добавить флаг второго получателя «-r», чтобы иметь возможность позже прочесть данное сообщение (поскольку сообщение шифруется для открытого ключа любого пользователя, но может быть открыто только при помощи определенного закрытого ключа).
То есть, если сообщение было зашифровано с помощью открытого ключа другого пользователя, у вас не будет возможности снова просмотреть сообщение, если только вы не получили его закрытый ключ. При указании отправителя вторым получателем программа шифрует сообщение дважды, отдельно для каждого получателя.
Расшифровывание сообщений
Получив сообщение, просто вызовите GPG на файл сообщения:
В случае необходимости программа выдаст подсказку.
Если сообщение имеет вид чистого текстового потока, то его можно скопировать и вставить, перед этим набрав gpg безо всяких аргументов. Можно нажать «CTRL-D», чтобы обозначить конец сообщения, и GPG расшифрует его.
Импорт открытого ключа
Для проверки чужой цифровой подписи GnuPG, у нас должны быть:
- открытый ключ человека, который её создал;
- оригинальный файл и файл отсоединённой цифровой подписи.
Сначала мы должны импортировать ключ респондента, подписавшего файл (если это не было сделано ранее). Это можно сделать любым способом:
- текстовый файл;
- серверы-хранилища ключей;
- буфер обмена (для GUI утилит).
Консоль
Импортируем открытый ключ с ключевого сервера (наиболее популярный вариант):
gpg2 --keyserver pgp.mit.edu --recv-keys 0xD45AB90A
Здесь 0xD45AB90A — отпечаток открытого ключа, который мы импортируем.
Импортируем открытый ключ из файла:
gpg2 --import mykey.asc
Здесь mykey.asc — имя файла с открытым ключом.
Теперь мы должны установить доверие импортированному ключу, т.к. в противном случае не сможем проверить подпись. Войдём в интерактивный режим:
gpg2 --edit-key 0xD45AB90A
Установим доверие ключу:
trust
Проверим отпечаток респондента (например посредством телефонного звонка или любым другим способом), затем выберем пункт Я полностью доверяю (I trust fully). Выходим из интерактивного режима:
quit
Также мы можем подписать чужой ключ своей подписью после его проверки. Это можно сделать так:
gpg2 --sign-key 0xD45AB90A
Созданную подпись рекомендуется отправить назад на ключевой сервер:
gpg2 --keyserver pgp.mit.edu --send-keys 0xD45AB90A
Здесь 0xD45AB90A — отпечаток открытого ключа респондента.
GUI
Поиск ключа на сервере в Kleopatra
Для того, чтобы импортировать открытый ключ с сервера в Kleopatra, мы должны знать либо его отпечаток, либо адрес электронной почты, который был указан при его создании. Введём запрос в поле Искать (Search) и нажмём Поиск (Search). Как только будет найден необходимый, выберем его и нажмём Импорт (Import).
Если требуется загрузить открытый ключ из текстового файла достаточно просто нажать в главном окне Kleopatra кнопку Импорт (Import) и указать данный файл.
Настройка уровня доверия ключу в Kleopatra
Проверим отпечаток импортированного ключа и, если всё верно, установим ему уровень доверия посредством выбора ключа в главном окне и пункта Изменить уровень доверия (Change Certification Trust) в контекстном меню.
Подпись ключей в Kleopatra
Если необходимо, подпишем его (пункт Подписать (Certify)) контекстного меню). Проверим отпечаток ключа (контрольную сумму) и нажмём Далее (Next).
Выбор ключевой пары для подписи Kleopatra
Поставим точку в пункт Сертифицировать для всех (Certify for all) и Отправить заверенный сертификат на сервер (Export signed certificate to server), затем нажмём кнопку Удостоверить (Certify).
Итоги
Правильное использование программы GPG обезопасит переписку. Это очень полезно как при работе с конфиденциальной информацией, так и в обыденной переписке.
Поскольку определенные зашифрованные сообщения могут быть помечены программами мониторинга, рекомендуется использовать шифрование сообщений для любой, не только секретной, переписки. Тогда постороннему будет сложнее определить, что в сообщении: секретная информация или просто «Привет».
Шифрования GPG имеет смысл, только если обе стороны используют передовые технологии безопасности, а также соблюдают правила защиты информации.
Cloud ServerGPGMITUbuntuUbuntu 12.04