GPG: ключи, шифрование, подпись
GPG (GnuPG, GNU Privacy Guard) — свободная программа для шифрования сообщений, файлов; создания электронных цифровых подписей.
Без труда найдёте более подробное описание и техническую документацию. Ниже я буду упрощая объяснять самыми простыми и доступными терминами для охвата большей аудитории.
Для использования GPG создаётся пара ключей: Секретный и Публичный ключи.
Публичный ключ – публикуете его для общего доступа. Ваш собеседник шифрует сообщение (или файл) этим ключом и передаёт зашифрованный текст вам.
Секретный ключ – храните его в самом безопасном месте. Зашифрованный текст (или файл) для вашего Публичного ключа — можно расшифровать только вашим Секретным ключом.
Помимо шифрования можно осуществлять подпись своего сообщения для подтверждения, что оно написано именно вами – для этого подписываете сообщение своим Секретным ключом, передаёте или публикуете подписанный текст, для проверки подписи служит ваш Публичный ключ. Это всё, что вам нужно знать.
Самая простая и интуитивно понятная программа — gpg4usb.

- совершенно не требуется установка
- полностью портативна и может храниться на флешке
- ключи, конфиги — всё хранит в своей папке
- не оставляет никаких следов или мусора в системе, реестре, переменных средах и т.д.
- может работать на Windows и Linux, разные файлы для запуска
Недостаток только один, ключи в Psi+ подцепятся только через скрипт, но он есть здесь
Итак, скачиваем и распаковываем куда хотим.
Интерфейс проще некуда. Запуск:
- из Windows — start_windows.exe
- из Linux — start_linux_32bit
/gpg4usb/keydb – здесь лежат ключи: secring.gpg – секретные, pubring.gpg – публичные
При входе нам предложат импортировать существующие ключи (если они у вас есть) или создать новые.
Также новые ключи создаются так: Менеджер ключей » Ключ » Генерировать ключ:
- Имя – вводите ник как на форуме, для предотвращения путаницы, случайное имя в "целях конспирации" будет глупостью (см. конец статьи)
- E-mail – любой
- Пароль – очень сложный (Секретный ключ или пароль от него – не восстанавливаются!)
- Длина ключа – 4096 бит
- Истекает – без срока годности
Через время ключ будет готов. Сразу сохраним резервную копию Секретного ключа, для этого - правой кнопкой щёлкнем на ключе в списке » Свойства » Экспортировать секретный ключ » выбираем где его сохранить (я рекомендую держать его в Tails на Persistent разделе)
Теперь у нас всё готово, как только те же самые пункты проделает ваш собеседник, можете обменяться с ним Публичными ключами для начала шифрованной переписки/передачи файлов и т.д.
Открываем Менеджер ключей » отмечаем свой ключ » Экспорт в Буфер обмена » полученный текст передаём собеседнику
Также можно экспортировать в файл и передавать файл, разницы никакой нет, только лишняя трата времени.
Крайне рекомендуется загрузить свой Публичный ключ на Сервер ключей, см. конец статьи.
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1
mQGiBEidtoMRBACxTEK5fYugdih9OhO2B3J4v860xVxcaXoveXgykqglNbBXT0+5
5R1TQu7CIqVHoYb8s3BMaHHarwa+GXvw6ZesV1JVAUt+665AglxuHwQ3IrsSaWlp
JFwXXaGgrwWyn/aTelzCxom4aw8+DVEL/l0BvYxhgyXoE46VyGdei91jEwCgm0tW
nd9EyRdae+8e4xL2NSJX3EcEAJTu6LHa/z0BnUsu48ZdFWqhZT7hI2HROyQ18EhH
fuMhUlynT1O+hFcR9a1CCz7UqHa5ZMGulW4eddWWbeuxIG5nu7LlktD8+qLxXa7d
JuyPGJgyqC2iW5JNMTTQlaR2/QA0Y1YKNIR6CzkSkR0T4c2pFsVzw0Jqp1BKiJFb
JYV8BACfd/lPrhkahkCBgVJgrZmRKq6GAqG8+4kNoleGo9x8bTEtt/+WBxrxsxLe
CQ5oDj56Or+N7cEcOOlK0bW4oM/qFZMLFALhW9a6kFW+z8JqVkb+UeAUZErMj+uI
uafj/E1Iz2ayN3t43DV44/7/4rfYlaOknm0FqH2emK42NXjahbQiZ3BnNHVzYi1w
cm9qZWN0IDxncGc0dXNiQGNwdW5rLmRlPohgBBMRAgAgBQJInbaDAhsjBgsJCAcD
AgQVAggDBBYCAwECHgECF4AACgkQgKRDIS7NczpjuACfYnCtiAso1H9vp8IHVB22
cLuGP6sAn28nflukImttcSsbgiAol23/89rRuQINBEidtoMQCADAjZhV0Uvgp+il
JD9RjxWFNmzjnOlLWqThnyK9kyUc9FGGlnq4FMYX34ZGR3ngCqaYlf/Yy54PuUZB
iQXZHBH1LLJW//Ux0crfselKWvxfMN3UHZl6/ysECeLX5DCNRKCnb1Wqx/0UA6+n
79H/FSUG94Mf3YNvvrClMiQS17LbnQtmYICoFP/YO2dfc8ghNbLmcyc3XiTv1Puc
iy9OJhZTASeksVJrir6ZM+Vx8EjYkS7bKtneX+QqlK9E5p3eUshiX4UBgPk1q92w
DKytmy7QPd4egq1W6cJ9RZ5SioJC70vf1jXkWeiOS3Jjlz1wUybU/q0ybUP3QRim
0qKwZNk7AAMFCACMwwFEMt56Sm9lAXWrjTKQcyR4ASJr//gJW2Yyc3rCSCSGppTS
tAgFEaFMca/i3Wyv35cKQy/DejPQfcitaXmmgBDqeX6z8VzPyEVu8I9lnZTWr2Y8
viqR6p4TSz2u5gSeMT6rNosrukMoehBh4I3eEXAs1pPwyFbJOepJCeMZwFiIZ469
guXywLRBYvpiAkt29W/q2ndbsRVxq1+PVlXP9HFatt70rTfOlVShkI6vCyWcCl2F
RlV7niCBkwSr8oH0hrt4GqvCzQtcGG1TrdeLuxBVVM+AACvVBEWxgk5b8yueK7jy
xAYgEiYDLDtbJysNUCQsV4G35wm1nkaK8/ixiEkEGBECAAkFAkidtoMCGwwACgkQ
gKRDIS7Nczrg5QCeNh2yio7SPI8TTZWbFCP6wUpjNvoAn3Bgbg7Y+hhzEe0r62Tp
egB6gGxq
=8/Ep
-----END PGP PUBLIC KEY BLOCK-----
Копируем текст содержащий Публичный ключ собеседника (текст может содержать и сторонний текст помимо ключа, gpg4usb знает, что именно является ключом).
Открываем Менеджер ключей » Импорт ключа из » выбираем из Буфера обмена (или из файла, если вам передали его файлом)
Ключ собеседника появится в списке.
Если вам понадобилось добавить свой прошлый Секретный ключ в новую/другую версию/копию программы.
Открываем Менеджер ключей » Импорт ключа из » выбираем из Файла » выбираем файл в который ранее экспортировали ключ.
В левом окне пишем сообщение » в правом отмечаем для кого оно » нажимаем "Зашифровать" » полученный текст отправляем собеседнику
-----BEGIN PGP MESSAGE-----
Version: GnuPG v1
hQIOAyMSkNPsVUnVEAgAsmsPLrjlzRPivJO9FAyNmjzhnEyC7LO/gAqIFzdfIxt2
Kfu+rN+NeiGy54HhN8DBxHA1NNptQFxjDuP8HhpKDixZAJrbMGGJ1kRFRAxevWoM
m7kGj6voa5kPFtjB3M+3UsiKnvBWx5sW/IMMKnn5qdMeeZt13Y5TrQy3CFSn7ZVz
JYXZR6/yUN766BF1fjjXUPyjzUKNTWK9IM0WjyNb10dwtpXl5B5/FgdZTYS2K6+l
4tGvEjjSFc+LstHUP+4OVSq/LIT0QbwrjXc94Im7ZQZS8a8N+z+Ji5QHCMuFVN0W
ROU8Mo3z4SgO+LEY2awXNeQSvUOODdxmHWs4Jam5VQf+JY2NQQ0E3nlYJ2uTgCNy
4I1+5keWqOldLoCSVE3e6cwI5NbFZfMH+g6nPICJPd3VE7harJJ7sMmg3jP2xOyo
Ze2x4K7YmvD/LqxtnJdvu94V3HmCgbaYRyAtyK0UcMoo2zMAvfReP+1JISZBXkjH
l5GsguSHelJ4BitSP6/rUKkDf1D4DViX/qKHISRHATAjHOnWbXTYo+9xVKtbF3OV
ESpm6yP0yL5T9xGYMH5P5rUr5s2AnjJ8GvUfVhskdJ1GDyua61koOKCBlAWLkMtg
7fuFePf+NUJNOD8QO3eSpflRU+f4r/VQRNQie6IEH9kEpgdjZyHnurUE9N0lz2sh
J9I9ARfir9UQRJ2g2K5k5VOhJOtL9zT13AIgosHb6flK8C+QUK/ywd6V8SHn3ovr
6sIyqUL88Iu0sOLSUOarNQ==
=maa7
-----END PGP MESSAGE-----
В левое окно вставляем зашифрованное сообщение » нажимаем "Расшифровать" » получаем расшифрованный текст
Если не можете расшифровать: либо у вас нет Секретного ключа для которого зашифровано (или ваш собеседник зашифровал для своего), либо сообщение повреждено (отсутствие или присутствие лишних символов), либо всё вместе.
В панели инструментов выбираем "Файл" » Зашифровать
"Файл ввода", что следует зашифровать, "Файл вывода", где сохраниться зашифрованный файл.
Снизу отмечаем для кого его следует зашифровать.
Полученный файл ("Файл вывода") передаём кому надо.
В панели инструментов выбираем "Файл" » Расшифровать
"Файл ввода", что следует расшифровать, "Файл вывода", где сохраниться расшифрованный файл.
В левое окно пишем сообщение » в правом отмечаем свой Секретный ключ для подписи » нажимаем "Подписать" » полученный текст публикуем\отправляем собеседнику
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
тест
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAEBCgAGBQJVHqaEAAoJEJh1Qur50NuzBuMQAJIaOKSuLYtXcP47RMQ3OBcK
fAONQF/vtajdvgPGQvl4kitku9rCqGDOZhONzbKdY712vBTiY9qtZzin/Cs4kaWp
QKaYhFeVEiieF53CzHAliSc/knQf6CXXOduk4TG8wiZYldxNr7/PcQhyab9bWDpy
cL3rVWUHNGZ6YlbiJNa209eg1FAxFQRTgBmgd7LcIfY07P2dO/uy+sVTOOpA/o8V
ZEr8Zsnuf6DJUkFj9rxGz/wOiSu0wvo1BmIdzkvCu0fwMyf5cgxS5snXL9KUt1Wn
h+2+W8XhF2nrnQ3XJfjibb+LN3ydF0T9D1Wmk7Yv/TS1P1qtDMWnzko+Y8/Dk9Vi
YfLoziLkrNM1v3NK1YsO0x1bfILN7+Yi0KTnsH5w1HnUa7Mo/u7+nSqT7nrKrJ4l
0dmZyvdKWirfAMBckvcAv9wv6ak516Yx/jxsFoJCevupubmU4Oqg7b71MgerOhbI
bup0fTy+GPd6iLGw60tbYKfc+P81XbDwVyBUBSgj4XKp8VE9ib6iwAvs2Ke9wSE+
up5Ry+5hcKk7iqtxvkNdUGwYK0ezbWL9NaKsyBmfaEreichgP8OvhQajvbxUSV3U
byiSYhRrtHVeTih0AoSUOp2xh7nqwRJJKe3wjv4wlwDwpDZFw1o48Yy+3D+bz8rj
RrrDG1cOZsgel1j38sta
=sQBQ
-----END PGP SIGNATURE-----
В левое окно вставляем подписанное сообщение » нажимаем "Проверить" » снизу получаем уведомление о том, что текст был подписан таким-то именем
Если не можете проверить подпись: либо у вас нет Публичного ключа того, кто подписывал сообщение, либо сообщение повреждено (отсутствие или присутствие лишних символов), либо всё вместе.
- Тут есть видео и ещё одна инструкция в картинках.
- Для автоматизации процесса шифровки-расшифровки сообщений в режиме реального времени существует jabber с GPG.
