Шифрование GPG (GnuPG, ex PGP)

Защита конфиденциальной информации периодически востребована всеми, кто пользуется электронной почтой и хранит документы на своем компьютере, т.е. практически каждый современный человек хоть раз, но сталкивался с проблемой защиты передавемых или хранимых данных. GnuPG — это полная и бесплатная реализация стандарта OpenPGP, определенного в RFC4880 (также известном как PGP). GnuPG позволяет вам шифровать и подписывать ваши данные и сообщения; он оснащен универсальной системой управления ключами, а также модулями доступа для всех видов каталогов открытых ключей. GnuPG, также известный как GPG, представляет собой инструмент командной строки с функциями для легкой интеграции с другими приложениями. Доступно множество интерфейсных приложений и библиотек. GnuPG также поддерживает S/MIME и Secure Shell (ssh).
Для защиты информации (с возможностью ее передачи по электронной почте или на физическом носителе) от чужих глаз используется несколько основных методик:
- криптоконтейнеры (например, VeraCrypt)
- зашифрованные файлы
- зашифрованные сообщения, передаваемые в открытом текстовом сообщении
Также используют скрытые контейнеры, но я не представляю себе, как передать по почте скрытый криптоконтейнер. И еще — никто не возбраняет использовать несколько методик одновременно, например, зашифровать текстовое сообщение, поместить его в текстовый файл, файл зашифровать, поместить в другой криптоконтейнер, который и передавать по электронной почте (вариант с хранением смерти Кощея Бессмертного).
Кратко рассмотрим использование GnuPG как средство шифрования текстовых сообщений.
Итак, GnuPG.

Веб-сайт: https://www.gnupg.org
Реализация для Windows: https://www.gpg4win.org
Распространение бесплатно
GNU Privacy Guard, совместимый с OpenPGP, созданный Фондом СПО на базе PGP, востребован и стабильно развивается на протяжении многих лет. На февраль 2020 года актуальная версия 3.1.11, в которой заявлены улучшения в плагине к Outlook GpgOL, в основном модуле Kleopatra и др.
Установка GPG
После установки при первом запуске программа предлагает сгенерировать ключ для подписывания/шифрования информации.
Соглашаемся, вводим необходимую информацию, программа сгенерирует пару секретного/открытого ключей:



Фразу-пароль ключа необходимо беречь как зеницу ока! Этот пароль — защита всей вашей переписки, возможно, на долгие годы вперед. Пароль должен быть сложным и не словарным.
Открытым ключом сообщения подписываются и/или шифруются (этот ключ можно отправить вашему другу, который будет посылать вам секретные письма!), а расшифровываются они только закрытым ключем, который есть только у вас.
Все, установка и создание ключа закончены. Открытый ключ можно отправить по электронной почте, опубликовать (но, как программа вас предупредит, отозвать опубликованный открытый ключ будет крайне трудно, поэтому подумайте, оно вам сразу надо или нет).
Шифрование текста
Вся работа (управление ключами, шифрование текста и много другое) происходит в приложении Kleopatra . Возможностей и тонкостей настолько много, что, пожалуй, даже не буду начинать их обзор.
Запускаем: Пуск — Kleopatra.
Рядом с часами внизу экрана появиось стилизованное изображение женщины с красными волосами. Так, программа запущена.
Наберем текст для ширования. Удобно это сделать в самом приложении Kleopatra в модуле «Блокнот»:

Для примера, пусть это будет слово «test» (без кавычек).
Во вкладке «получатели» необходимо выбрать, от кого сообщение (по желанию — подписываем сообщение), кто получатель — если у нас есть чьи-то открытые ключи, можно сразу создать сообщение для конкретных людей. А можно просто защитить сообщение паролем, зная который, любой сможет прочитать текст.
Нажимаем «Подписать/зашифровать — Блокнот». Появится окно, в котором вы должны выбрать, каким ключом будете шифровать секретный текст «test». Выбрали ключ, нажали «Ok», ввели пароль ключа. Все, программа зашифровала и подписала текст с помощью вашего ключа. У меня это выглядит так (пример, не настоящее сообщение):
-----BEGIN PGP MESSAGE----- qCc7ndI3FQKUeI3ZXy9BLHvRhM2vtFm67U5/VWAFeJbPG5uPoPGvf01GaAaBFGGE zCeu83Z/saRzh5CU2+AO2RRdlHoksoNPsUOc1Gl45SQ70ERUNGzYxULPMFtfkGsR 1Tqoi5b5wHFJaydXthbJWcr3gwHbr24K+/ycsGwJdPM4Zi2NGknjZsGOeP7Gnynj cO1m8EDO+wJNlYL1phLkdsvcq1UFOfzL+rigIlavUSmlQV+UWBzkL+thMukh6gxQ qCc7ndI3FQKUeI3ZXy9BLHvRhM2vtFm67U5/VWAFeJbPG5uPoPGvf01GaAaBFGGE rrbR6QBrkk8wlmuBV19Xj/RpiBVDsZdqZ1udjjJnStLAxAE2TnTY3ZzTYcsvof5z fokicJBIEHfuHjwRqcecsKSTCgCdpajGZntus+SoU55ohasq8q8tf8D/EXHWDrhR CuMRLhiLECXqACwKDipzh/OOqfuXqVinlDk+cGwS89q5x2RRNDf55Kma85UaHwrK XPgQn+Ucz18jVTSzwJt/4lhzYgNC/Pi+ChrQ3MgUIU1lQsSUHMatFU+3fhhUB7Lc d+wSCPeJU5wgUtQ9lbjqD44RCf2d2TKuPBV0ViCcUsS4VbCGZlg+eJoiDm+SHmiT fokicJBIEHfuHjwRqcecsKSTCgCdpajGZntus+SoU55ohasq8q8tf8D/EXHWDrhR zCeu83Z/saRzh5CU2+AO2RRdlHoksoNPsUOc1Gl45SQ70ERUNGzYxULPMFtfkGsR xVJYibdiM9lqteVHyc+Ypaqm2cl3wnLWs4hRxYib7VXysROdlJN8vyF+TmrXjdSA 7zd7+KaFG9TKh9RKhwduDRFkT17vnMYUgQLONGOs+At8pKAjWHw= =rxDG -----END PGP MESSAGE-----
Мы получили подписанное вашим ключем сообщение. Не просто зашифрованный текст, а с указанием, что его автор — вы, а не жулик. Не выходя из приложения, можно нажать «Расшифровать и/или проверить текст» и сразу увидеть наш «test».
Перед тем, как радостно отправлять этот текст по электронной почте, надо выбрать получателя. Пока что весь этот текст (включая заголовки ——BEGIN PGP MESSAGE—— и ——END PGP MESSAGE——) можно спокойно переслать по элетронной почте в отрытом виде (более открытого вида и не придумать!) кому угодно. Без вашего секретного ключа этот текст расшифровать невозможно. Без вашего ключа. Пока что только вы сможете открыть этот текст.
Шифруем простым паролем
Как вы наверняка знаете, шифрование с приватным/открытым ключом подразумевает предварительный обмен открытыми ключами между корреспондентами. Т.е. для того, чтобы зашифровать сообщение для Bob (чтобы Bob открыл сообщение своим приватным ключем), надо чтобы Bob предварительно прислал вам его открытый ключ. Во вкладке «Получатели» выбираете ключ Bob (предварительно полученный и установленный) и все. Это не всегда возможно, а порой — невозможно. Так вот, с помощью GnuPG можно просто зашифровать сообщение, чтобы отправить его кому угодно. Без пароля расшифровать его будет невозможно.
Для этого переходим во вкладку «Получатели», оставляем только галку «Зашифровать, используя пароль. Каждый, кто знает пароль, сможет прочитать данные.»
Теперь, если вернуться на вкладку «Блокнот», то при нажатии на кнопку «Зашифровать Блокнот», появится предложение ввести пароль (любой, пусть это будет 123-654-ATAS). Повторите фразу-пароль и сообщение будет зашифровано. Результат:
-----BEGIN PGP MESSAGE----- jA0EBwMC3pIbioeFcSO+0jkBoYr+j/z0CuEcdKPDCFTOEzVZayqFq1X1W5N3z/AG R2Bc1qPnPjhTbaoTpOMfc93xF+Hs1qD6Goo= =N4xU -----END PGP MESSAGE-----
Этот текст не привязан ни к вашему ключу подписи, ни к программе. Просто зашифрованный текст.
Расшифровка GPG
Если текст шифровался вашим открытым ключем, то для его расшифровки необходим секретный ключ из пары открытого/секретного ключей, которым было зашифровано сообщение. Каждый из виртуальных собеседников создает свою пару открытого/секретного ключей и спокойно обменивается открытыми ключами друг с другом (хоть по обычной электронной почте). Если один захочет написать секретное сообщение другому, то просто зашифрует письмо не своим ключом, а открытым ключом получателя. Получатель же, когда получит письмо, сможет расшифровать его своим секретным ключом и паролем, который останется известным только ему.
Итак, при личной встрече мы лично передали секретный ключ и пароль нашему получателю. Ок, теперь, используя мастер импорта ключей, наш получатель сможет импортировать полученный ключ в его копию программы GnuPG и сможет расшифровать полученное от вас сообщение следующим образом (считаем, что ключ импортирован):
Копируем полученное зашифрованное сообщение в буфер обмена и вставляем его в модуль «Блокнот» Kleopatra.
Жмем «Расшифровать/Проверить» (Decrypt/Verify)
Программа попросит ввести пароль ключа и отобразит расшифрованное сообщение.
Напомню, что копировать шифрованный текст необходимо полностью, от ——BEGIN . и до END PGP MESSAGE——
Вот собственно, и все. К плюсам данного метода шифрования сообщений можно отнести то, что сообщения можно не только шифровать, но и подписывать, при этом, если разместите на вашем веб-сайте ваш публичный ключ (а не в коем случае не секретный), то любой сможет отправить вам подписанное и/или зашифрованное сообщение, прочитать которое сможете только вы (если секретный ключ есть только у вас).
Само собой, если вы расшифровывате текст, который был просто зашифрован паролем, без ключей, то и для расшифровки потребуется только пароль, но этот пароль надо будет как-то передать от отправителя к получателю (или согласовать заранее).
В заключение могу сказать, что программа GPG позволяет не только шифровать текстовые сообщения, но позволяет также шифровать целые файлы, причем шифрование можно совершать не используя ваш ключ, а просто парольной фразой. Это может быть необходимо для передачи вашему будущему собеседнику вашего секретного ключа. Но это уже тема отдельной статьи.
Подпись GPG
Помимо шифрования часто полезно знать, что данный конкретный файл — оригинал, а не подделка. GnuPG позволяет, не шифруя, просто подписать файл. В дальнейшем всегда можно убедиться, что файл не был изменен.
Kleopatra > Файл > Подписать / Зашифровать [файлы]
Выбираете файл (например, file.doc), выбираете сертификат подписи, убираете все галочки, оставив только выбранный сертификат подписи и жмете «Подписать». Будет необдим пароль приватного ключа.
После успешного завершения в той же папке, что и нужный файл, будет создан файл file.doc.sig (с расширением .sig). Двойной клик на нем и если с расширением .sig ассоциирована программа Kleopatra, то октроется окно, в котором будет написано, что файл подписан тем-то, тогда-то.
Исхдный файл и файл подписи должны быть в одной папке при проверке. Имя файла подписи должно быть такое же, как и исходный файл, просто добавляется .sig. Если переименовать файл подписи, то проверить кликом мышки уже не выйдет.
Попробуйте изменить хоть немного оригинальный файл — проверка покажет, что файл уже не тот.
Это можно использовать при скачивании файлов — вы предоставляете файл и файл его подписи. Подменить файл подписи не выйдет, ведь незаметно переподписать, не зная пароля приватного ключа, не возможно.
Thunderbird интегрируется с GnuPG с помощью плагина Enigmail (https://www.enigmail.net/). После скачивания и установки позволяет шифровать не только тело, но и тему письма.
Для других платформ сморите ПО на странице https://gnupg.org/download/index.html
05.07.2020 20:05 Sense4532
——BEGIN PGP MESSAGE——
hQGMA+qI8SSOraNiAQwAj8Ee+SwUf24dKHeqeQAhBNyj9G/aHAa7VIliit3J1l6v
4JVBA2kgJyRYccIJx8Y+udqvmZajvb/2S8NBhzAPz2oeTX05+80vZzD1OGxpFt8S
8ktwP3ZVtEIEP6Le6muZOg/umP2zo8WMAO17wJ7GXCRxbMu583bGvvHJgN82eAZN
SzJwkwTxgdJ+6p21aPI3tm40AA9MsuXsGKoXc38lZaJv6+u/x1sde6oxbf00GBjF
12vyfcYLeKC0c6fFFD3xejE3OWQU52oasAdcAOTOD8gqI++QM4EZmT6M+nygTERF
0+fX6BRHSUUKmcPnM6E5a/AHqA9qL+HUtP6bgZpfZWKoQ9O+7FvAONdCHhaaYDrG
LCVqo3Vyjp9U1z8GjP5dk6T30ZpZEdAQYj+w47Xszzs/Y7+dTO7EVNc8hKDysqlu
bCPoeeG/0HNtDvhgeBAbPEzPpilAYCIq/u/z0WVO3Ox2oOObS8Wwfn6de/jG/yks
24T/6Z7uFWKMQgHI6ly+0l8BZ0idNIhZxzBJBMMkKjfLK8tA9FWJi4sMLFpB5FWj
kpzlUQ0YZfYN+KNalXvCqpr/BEPv1BjW9L6JycAUOg/Maou9jU/6qZtnj+ShXM9J
pUVEBueLEcQU9toNIcykkw==
=psq5
——END PGP MESSAGE——
27.08.2020 01:18 Sense4532
Расшифруйте код подтверждения
——BEGIN PGP MESSAGE——
hQGMA+qI8SSOraNiAQwAsXPh0CenWerB2yItSXuTyPBcQc/xCnXXWtx45oLUVlgL
R4dPSsLR+KfY11oIbOM4dbMrN2eNdLSGTp0ONkap578rVeS+2ZEMIyzThtf6Eh+q
3LOk6FfCl/I0j06HiQ9lYzZhijJBnpb9kQp+nAOZj8BtLpXjTfjHIR9NfZkmJGUT
JhqRHXNqmljMfw6JCFKkUzTnYviLnopUPV26gWewt0pPGK7Ey5zrDqBFauhVUV2J
DJ2SC8Q/LAPMNEXaUxuskt32enZ8KrljlJbcM03rUTDgERQ6LV9Fm9mlN3JvWz4M
6tNcotWDVgiAHadwDAhm1NUOLetz8laxDtdoCYuO5CGokNCI06u9VGtNip8wtRWR
MpCZfw4391GdWp9cXqCHuxc+35nc7eGI0erNfQQECPoMYuItP58P1Qv4+1xdIeSm
DkH75F2FKHRM3e2L+ZXNrR35GV1rcqVZn1OwfCzKNrRAbViYtLPdgYYSPNk7SdNR
FC74WJzA3OjCUF06ojaY0l8BJcLQu3v13bTztrRWc9s/nHS3hwn8rm5UWbKHpRWi
jokEwDoDboWBAUKbGwIHa9vCIFrkuRVilHJxz0lIvlFPGjI1z3WdeGpZDJ6BF4nZ
/prAm1vRMiwt6TbpXe3Xpw==
=ZkZc
——END PGP MESSAGE——
22.09.2022 08:07 Molotok41
——BEGIN PGP MESSAGE——
hQGMA/ZYHv8QAP5pAQv9G5zho0ZIcxfWPM1xQeZaveaNuWCYy5EMu4jUQOzem03R
IRun+KGmgGMkt1rTwMr4JtW8EfPGi9vVCWHqnU9gIm4qNKlsVXaRpM+GK0yOiAG8
URDM0E4RWAObUvLXSIBU60+nm/BKmA4maw/MMxNa/DVnT+RPN+FvK8Uc2mxXcxXt
dMv7R/UNSvPz+stsNo5oSbuTw3Ycig6kMafTBARhKez/W53OUEfDOxWH10s5pqbD
i7ufVWNU46uw4SEabahleFFZZW38sygD7tIR9nKHEYu5HMsOT7N0ciUMgMfSfhIB
g03noUOjGK2mTNWrPwKK2avC8mp6idZ5Rzy496d02pzSUcbUwX+Vb7EAQpjgNxEL
jp2iSMVMr2CnBVzGJy0zYp/w5V2wqpRWb6mVs7XmjGxrEwb769NC4T6QjbmtoBOb
dJhzUUDWqPVn3seBpIgLEl72R1Ph0BX85pj3KIvPRDxpufQl5UCa2c/+z+Pil/Bg
Kd9K/HaCOLmtoY43QqH40lUBlE02d+lJiJIMA5A6H6MSHkWFsEcNz3bUZHAjrAie
Psrj4oLfxUY2zhNLRPbFWJhMJR6wyZ7/vS3PClRhqJNdUU2J+Uu7dV4QdS2L6tDi
QlCHgkOy
=5MR/
——END PGP MESSAGE——
Расшифруйте пожалуйста
01.07.2023 09:29 ju sam
——BEGIN PGP MESSAGE——
hQEMAyN4PeUKHYydAQgAl28W0oF7QtUZ2yayXrAtyQuNpnmVuZVc3U/ehJuNSl7R
Ay1v5SrVY3CYpcvtWcwHanIlFRKiLvc0SO3rslyF8ur9/SJgUTTcX05Gurkom6vd
d/f3vc2uLXywA22bKDTo7047jmhTdXpzqS2mA1zn5U5tFXJctm3M6El7pIWxIW3v
7rO8wdNk1BkBtm0NuIOwJwZtYbLmnJQWRsmtOsber0MaGOF9QJFJLcCVwxgIB9pE
LIyEjlZtn1KANrfHxMYFtex9ua5OtrNowZwWGfM1CPGmZ2JKbAC0bYp5ghfLK6KE
9yGq8H0qvTzHdKrRV84X284fZFhXd98Acj3emJeChtJKAdWA4sM7S5dPKSoh0Mdw
FGpacLMtonMaTh7HhSJnm1VsfduvuCWGdLQpTQQgZGcNUZ9gOR3VoPvH4Cbs8Q53
C4Sg8/gumqjN6j4=
=IKli
——END PGP MESSAGE——
01.07.2023 09:31 ju sam
Добрый день, забыла точнее не записала первый код, помогите пожалуйста с расшифровкой. Заранее Благодарю!
——BEGIN PGP MESSAGE——
hQEMAyN4PeUKHYydAQgAl28W0oF7QtUZ2yayXrAtyQuNpnmVuZVc3U/ehJuNSl7R
Ay1v5SrVY3CYpcvtWcwHanIlFRKiLvc0SO3rslyF8ur9/SJgUTTcX05Gurkom6vd
d/f3vc2uLXywA22bKDTo7047jmhTdXpzqS2mA1zn5U5tFXJctm3M6El7pIWxIW3v
7rO8wdNk1BkBtm0NuIOwJwZtYbLmnJQWRsmtOsber0MaGOF9QJFJLcCVwxgIB9pE
LIyEjlZtn1KANrfHxMYFtex9ua5OtrNowZwWGfM1CPGmZ2JKbAC0bYp5ghfLK6KE
9yGq8H0qvTzHdKrRV84X284fZFhXd98Acj3emJeChtJKAdWA4sM7S5dPKSoh0Mdw
FGpacLMtonMaTh7HhSJnm1VsfduvuCWGdLQpTQQgZGcNUZ9gOR3VoPvH4Cbs8Q53
C4Sg8/gumqjN6j4=
=IKli
——END PGP MESSAGE——
01.07.2023 09:32 ju sam
Добрый день, забыла точнее не записала первый код, помогите пожалуйста с расшифровкой. Заранее Благодарю!
——BEGIN PGP MESSAGE——
hQEMAyN4PeUKHYydAQgAl28W0oF7QtUZ2yayXrAtyQuNpnmVuZVc3U/ehJuNSl7R
Ay1v5SrVY3CYpcvtWcwHanIlFRKiLvc0SO3rslyF8ur9/SJgUTTcX05Gurkom6vd
d/f3vc2uLXywA22bKDTo7047jmhTdXpzqS2mA1zn5U5tFXJctm3M6El7pIWxIW3v
7rO8wdNk1BkBtm0NuIOwJwZtYbLmnJQWRsmtOsber0MaGOF9QJFJLcCVwxgIB9pE
LIyEjlZtn1KANrfHxMYFtex9ua5OtrNowZwWGfM1CPGmZ2JKbAC0bYp5ghfLK6KE
9yGq8H0qvTzHdKrRV84X284fZFhXd98Acj3emJeChtJKAdWA4sM7S5dPKSoh0Mdw
FGpacLMtonMaTh7HhSJnm1VsfduvuCWGdLQpTQQgZGcNUZ9gOR3VoPvH4Cbs8Q53
C4Sg8/gumqjN6j4=
=IKli
——END PGP MESSAGE——
Авторизуйтесь для добавления комментариев!

Почтовый сервер Mikrotik VPN 3proxy Шифрование Squid Резервное копирование Защита почты Виртуальные машины Настройка сервера java kvm Групповые политики SELinux OpenVPN IPFW WDS Lightsquid Samba firewalld systemd Mobile libvirt Remote desktop WiFi Iptables NAT Postfix Dovecot Удаление данных Софт Безопасность Winbox User agent Хостинг Передача данных Онлайн сервисы Privacy LetsEncrypt VPN сервер Настройка прокси RRDTool sendmail Rsync Linux SSH Система Windows Синхронизация Облако fail2ban FreeBSD
Шифрование на прикладном уровне
Оптимизируйте свои подборки Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Для шифрования на прикладном уровне в One Time Payment Code API может использоваться протокол PGP или JWE.
Шифрование PGP
PGP – это стандартный набор алгоритмов шифрования, расшифровки и подписи, обеспечивающих конфиденциальность и аутентификацию.
Партнеры, выполняющие шифрование полезной нагрузки с помощью PGP, должны поддерживать следующие механизмы:
- шифрование и расшифровка полезных нагрузок с использованием нескольких ключей PGP;
- подписание полезных нагрузок с использованием нескольких ключей PGP;
- проверка полезной нагрузки с несколькими подписями, любая из которых может являться подписью с ключом, предоставленным Google;
- расшифровка полезных нагрузок, закодированных по стандарту Base64 для URL.
Открытые ключи PGP, переданные в Google, должны иметь подключ, используемый для шифрования. Подключ позволяет выполнять независимую ротацию на основе главного ключа. Главный ключ предназначен для подтверждения учетных данных. Закрытые ключи должны представлять собой ключи RSA размером 2048 бит (или больше) со сроком действия в один год. Максимальный срок их жизни не должен превышать двух лет.
Прежде чем начать разработку, обменяйтесь ключами PGP с Google. На этом этапе вы создаете пару ключей PGP – открытый и секретный, отправляете свой открытый ключ в Google и получаете открытый ключ от Google. Во время разработки вам необходимо обмениваться только ключами тестовой среды, используемыми для разработки и тестирования за пределами рабочей среды. Перед тестированием и запуском необходимо будет ещё раз обменяться рабочими версиями ключей.
Создание нового ключа PGP
Используйте следующую команду POSIX, чтобы создать новую пару ключей (системный путь должен указывать на исполняемый файл GPG):
$ gpg --full-generate-key
Когда появится запрос, выберите ключ RSA. Его размер должен составлять не менее 2048 бит энтропии, а срок действия – от одного до двух лет. Будут созданы главный ключ с ярлыком SC (Signing Certificate – сертификат подписи) и подключ с ярлыком E (Encryption – шифрование).
Шифрование JWE
JWE (JSON Web Encryption) – это стандарт шифрования контента на прикладном уровне, описанный в документе rfc7516.
Партнеры, выполняющие шифрование полезной нагрузки с помощью JWE, должны поддерживать следующие механизмы:
- расшифровка полезных нагрузок с использованием одного из нескольких ключей JWE;
- компактное представление;
- сжатие JWE (т. е. zip=»DEF»);
- алгоритм RSAES-PKCS1-V1_5 для управления ключами;
- алгоритм AES-CBC + HMAC-SHA2 для шифрования контента.
Закрытые ключи должны представлять собой ключи RSA со сроком действия в один год. Максимальный срок их жизни не должен превышать двух лет. Все идентификаторы закрытых ключей должны храниться на сервере партнера. Там же должны вычисляться значения подписи.
Данные в теле JSON шифруются клиентом и сервером в соответствии со спецификацией JWE. Тело POST или ответа целиком перекодируется в токен JWE с помощью функции «Компактное представление» в JWE.
Прежде чем начать разработку, обменяйтесь ключами JWE с Google. На этом этапе вы создаете пару ключей JWE – открытый и секретный, отправляете свой открытый ключ в Google и получаете открытый ключ от Google. Во время разработки вам необходимо обмениваться только ключами тестовой среды, используемыми для разработки и тестирования за пределами рабочей среды. Перед тестированием и запуском необходимо будет ещё раз обменяться рабочими версиями ключей.
Партнеры должны поддерживать механизм отправки и получения сообщений с использованием сжатия JWE (т. е. zip=»DEF»). Для запросов и ответов используется асимметричное шифрование (с открытым ключом) с помощью ключей JWE, которыми взаимно обмениваются стороны. Наряду с JWE может использоваться подтверждение подписи JWS. В этом случае контент подписывается до шифрования и проверяется после него. Стандарт JWS также предусматривает использование асимметричных ключей: закрытого ключа для подписи и открытого – для проверки.
Примечание. Поскольку механизм JWE не предусматривает аутентификацию, аутентификация клиента TLS должна быть включена.
Java – это зарегистрированный товарный знак корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2021-11-24 UTC.
Расшифровка файлов с помощью PGP
Поддержка этой версии Orchestrator завершена. Рекомендуется выполнить обновление до Orchestrator 2019.
Действие PGP Decrypt File расшифровывает файл или все дерево папок с помощью созданного файла ключа PGP и парольной фразы. При расшифровке всей папки дерево папок сохраняется ниже корневой папки. Например, при расшифровке C:\Documents and Settings\Administrator\My Documents\*.* и всех вложенных папок будут расшифрованы все файлы в папке «Мои документы», а также все файлы в папке «Мои документы». Все файлы во вложенных папках будут находиться в одной вложенной папке в папке Output.
Вы можете использовать действие расшифровки файлов с помощью PGP для расшифровки файлов, которые были зашифрованы при выполнении резервного копирования. Чтобы использовать это действие, необходимо установить исполняемый файл gpg.
Установка GnuPG
GnuPG — это программа с открытым исходным кодом, используемая в стандартных действиях шифрования и расшифровки с помощью PGP для шифрования и расшифровки файлов. Следующие процедуры описывают способы установки этого исполняемого файла и связанного файла на сервер Runbook или компьютер, на котором выполняется Runbook Designer.
Установка GnuPG версии 1.x и 2.0.x
Выполните указанные ниже действия.
- Загрузите файлы gpg.exe и iconv.dll версии 1.4.10 или более поздней из GnuPG.
- Сохраните gpg.exe и iconv.dll в папку :\Program Files (x86)\Common Files\Microsoft System Center \Orchestrator\Extensions\Support\Encryption на каждом сервере Runbook и компьютере с Designer Runbook.
Установка GnuPG версии 2.x
Выполните указанные ниже действия.
- Загрузите файлы gpg.exe, gpg-agent.exe, iconv.dll, libassuan-0.dll, libgcrypt-20.dll, libgpg-error-0.dll, libnpth-0.dll, libsqlite3-0.dll и zlib1.dll версии 2.x или более поздней из GnuPG.
- Сохраните gpg.exe, gpg-agent.exe, iconv.dll, libassuan-0.dll, libgcrypt-20.dll, libgpg-error-0.dll, libnpth-0.dll, libsqlite3-0.dll и zlib1.dll в папку :\Program Files(x86)\Common Files\Orchestrator\Extensions\Support\Encryption на каждом сервере Runbook и компьютере, на котором запущена Designer Runbook.
Настройка действия расшифровки с помощью PGP
Используйте следующие сведения для настройки действия расшифровки файлов с помощью PGP.
Вкладка «Подробные сведения»
| Параметры | Инструкции по настройке |
|---|---|
| Путь | Введите путь к файлам, которые требуется расшифровать. Вы можете использовать подстановочные знаки ? и * для указания файлов, которые вы расшифровываете. В этом поле можно ввести только символы из текущего языкового стандарта системы. Если вы используете другие символы, произойдет сбой. |
| Включая вложенные каталоги | Выберите этот параметр, чтобы найти все файлы, которые соответствуют указанному имени, во всех вложенных каталогах в папке, указанной в пути. |
| Выходная папка | Введите путь к папке, в которой должны храниться расшифрованные файлы. |
| Skip | Выберите этот параметр, чтобы пропустить расшифровку файла, если файл с таким именем найден в папке выходных данных. |
| Overwrite | Выберите этот параметр, чтобы перезаписать все файлы с тем же именем, что и у полученного расшифрованного файла. |
| Создать уникальное имя | Выберите этот параметр, чтобы дать расшифрованному файлу уникальное имя, если файл с таким именем уже существует. |
Вкладка «Дополнительно»
| Параметры | Инструкции по настройке |
|---|---|
| Папка набора ключей | Введите расположение папки keyring, содержащей файл секрета, который будет использоваться для расшифровки файлов. Файл секретных ключей (*.skr) можно переименовать с расширением *.gpg. |
| Парольная фраза | Введите парольную фразу, связанную с файлом keyring. |
Опубликованные данные
В следующей таблице перечислены опубликованные элементы данных.
| Элемент | Описание |
|---|---|
| Папка набора ключей | Путь к папке набора ключей, содержащей ключ, используемый для расшифровки файлов. |
| Папка выходных данных | Путь к папке, где сохранены расшифрованные файлы. |
| Файлы для расшифровки | Количество файлов, которые Orchestrator попытался расшифровать. |
| Расшифрованные файлы | Количество успешно расшифрованных файлов. |
| Имя расшифрованного файла | Путь и имя полученного расшифрованного файла. |
PGP / GPG шифрование
Защита своих данных от чужих глаз — в некоторых случаях может быть вопросом жизни и смерти, а полагаться в этом вопросе на других означает доверять им свои данные. Защитить от любопытных носов свою переписку своими же силами поможет GPG шифрование.
Я также могу вам посоветовать статью «Зашифрованная почта», в которой мы рассказывали как с помощью GPG шифрования зашифровать конфиденциальную переписку.
- GPG шифрование
- История PGP / GPG шифрования
- Термины GPG шифрования
- Установка GPG шифрования
- Шифрование сообщений и файлов
- Подписи в GPG шифровании
- Функция Web of Trust
- Зачем нужно шифрование
GPG шифрование
GPG (Gnu Privacy Guard) — это инструмент асимметричного шифрования. Если проще, он создает такое сообщение, которое может прочитать только тот, кому ты его написал. Он незаменим при передаче любой важной текстовой информации. Это могут быть письма электронной почты, личные сообщения на форумах, или даже на публичных открытых сервисах. Помимо шифрования он также предоставляет несколько других функций для обеспечения безопасности.
Всегда самым очевидным способом защитить свои коммуникации было шифрование. Раньше для этого применялось симметричное шифрование, требовавшее передачи ключей по надежному каналу. С развитием электронных коммуникаций, увеличением объема данных и возможностей прослушки надежная передача ключей стала трудной задачей.
История PGP / GPG шифрования
В 1970-ых были разработаны асимметричные алгоритмы, позволяющие безопасно, открыто и автоматизировано обмениваться ключами. Схемы таких алгоритмов позволяют двум сторонам обменяться открытыми ключами, используемыми для обозначения получателя сообщения, и при зашифровке использовать открытый ключ получателя одновременно с секретным ключом отправителя. Расшифровать сообщение можно только секретным ключом получателя, и при этом будет видно, что шифрование выполнял именно владелец открытого ключа, то есть отправитель. В такой схеме секретные ключи, используемые для расшифровки, не нужно передавать, поэтому они остаются в безопасности, а отправитель сообщения выявляется при расшифровке, что исключает подмену информации. Но подобное изобретение было доступно только военным и спец. службам.

В 1991 появился общедоступный инструмент асимметричного шифрования для личного использования — PGP, задавший стандарт, однако он был платным и являлся зарегистрированной товарной маркой.
В 1999 был создан GPG — свободный, бесплатный, открытый и полностью совместимый со стандартом аналог PGP. Именно GPG стал самым популярным и зрелым инструментом асимметричного шифрования.
Термины GPG шифрования
Прежде чем приступить к использованию GPG, нужно понять несколько главных особенностей этого инструмента. Первая и основная особенность — это понятие «ключи». Каждый пользователь создает себе свой личный ключ. Ключ пользователя состоит из двух частей
- Публичный ключ (из публичной части)
- Секретный ключ (из секретной части)
Публичный ключ (далее просто «ключ») представляет собой своего рода визитную карточку, которую пользователь раздает всем своим контактам, желающим переписываться с шифрованием.
Секретный ключ отвечает за процессы шифрования исходящих сообщений и расшифровки полученных. Его следует хранить в безопасном месте. Принято считать, что если кто-либо завладеет секретным ключом, то ключ можно считать скомпрометированным, а значит небезопасным. Этого следует избегать.

Вторая особенность — ключи, основанные на разных алгоритмах совместимы между собой. Неважно, использует ли пользователь RSA или ELGamal, для шифрования не нужно забивать голову такими деталями. Это достигается за счет работы по упомянутому выше стандарту и через некоторые криптографические приемы. Это одно из главных преимуществ GPG. Достаточно знать нужные команды, и программа сделает все сама. В библиотеку входит большое количество асимметричных алгоритмов, симметричным шифров и односторонних хэш-функций. Разнообразие также является преимуществом, потому что позволяет создать одновременно и общие рекомендованные конфигурации, подходящие для большинства, и возможность тонкой настройки для более опытных пользователей.
Как установить GPG шифрование
Для начала работы нужно установить сам GPG. Пользователи Linux могут поставить его из любого пакетного менеджера, поискав там «gnupg», или собрать вручную. Пользователи Windows могут воспользоваться сильно устаревшим клиентом GPG4Win, который имеет несколько неприятных багов и больше функций, или портативным и более свежим клиентом GPG4USB, который имеет меньше функций, но намного проще и стабильнее. Кстати, мы уже писали о том как с помощью клиента GPG4USB зашифровать свою переписку.

Независимо от операционной системы и клиента, после установки нужно будет создать свой ключ, введя в терминале или кликнув в клиенте соответствующую команду. Программа попросит определиться с алгоритмом шифрования. Обычно их два — это RSA и ELGamal (на самом деле три, если на Linux Вы отважились поставить экспериментальную ветку «modern» с криптографией на эллиптических кривых). Конкретных рекомендаций по алгоритмам нет, они разные и каждый выбирает себе схему по нраву.
Затем необходимо определиться с размером ключа в битах. Здесь тоже нет короткого и однозначного ответа. У слишком длинных ключей есть и недостатки. Одно можно сказать с уверенностью: при выборе RSA и ELGamal не используйте ключи меньше 2048 бит, они крайне не безопасны. Далее программа попросит заполнить несколько форм: E-mail, Имя и комментарий. E-mail и Имя — это публичная информация, которую сможет увидеть каждый, с кем вы будете переписываться.
• В качестве почты можно указать другие виды связи, например ID какого-либо сервиса или мессенджера (Tox, Jabber, BitMessage и т. д.), разделив знаком «@» сам идентификатор/адрес и название сервиса. Чаще всего содержание именно этого поля используется для идентификации владельца ключа.
• Имя выбирать по своему усмотрению. Например, часто используемый ник или вообще «Anonymous».
• Поле комментария заполнять не обязательно. Можно ввести дополнительный. адрес или свою должность. Комментарий будет виден другим пользователям.
После заполнения всех форм нужно ввести пароль. Его можно и пропустить, что не рекомендуется, так как это единственная мера безопасности, которая защитит секретную часть ключа в случае захвата файла с данным ключом злоумышленником. Также важно не забыть пароль, иначе работа с ключом будет более невозможна. При создании ключа нужно внимательно проверять корректность ввода всех полей — ошибки потом не исправить. Публичный ключ распространяется среди большого количества людей, поэтому среди пользователей не принято их часто менять — не у всех контактов может быть свежий ключ.
Сгенерировав свой GPG-ключ, можно начать его распространять. Для этого надо ввести команду отображения публичной части. Исторически сложилось так, что программа изначально применялась для шифрования почты и подписи публичных сообщений в почтовых рассылках, поэтому ключи отображаются по принципу формата РЕМ (англ. «PrivacyEnhanced Mail»). Формат представляет собой единый стандартный блок ключа, начинающийся заголовком — BEGIN PGP PUBLIC KEY BLOCK —, за ним следует достаточно длинное тело самого ключа, кодированное цифрами и латинским алфавитом, и завершающий заголовок — END PGP PUBLIC KEY BLOCK —. Весь блок с заголовками представляет собой ключ GPG, его и нужно распространять целиком. Помимо ручного распространения ключей, возможно использовать специализированные сервера. Пользователь загружает свой публичный ключ на сервер, и при необходимости любой может запросить его. Во многих программах в качестве сервера по умолчанию часто указывают сервер MIT.
Каждый GPG-ключ уникален. Запоминать и сравнивать такие большие блоки ключей вручную невозможно, поэтому для этого существуют отпечатки ключей. Каждый отпечаток ключа тоже уникален, формируется из публичной части, предоставляя короткую уникальную строку для идентификации. В строке отпечатка содержится 40 символов с разделением на 4 символа пробелами. Важно знать, что последние 8 или 16 символов являются еще и ID ключа. При использовании команд из терминала надо будет указывать ID для работы. Отпечатки удобны для быстрого сравнения двух ключей, или короткого указателя нужного ключа при нехватке места.
Шифрование сообщений и файлов
Шифрованные с помощью GPG сообщения состоят из похожих на публичный ключ блоков, только с заголовком — BEGIN PGP MESSAGE —, а длина кодированной символами части зависит от длины сообщения. Подобные сообщения могут быть прочитаны только обладателем ключа, которому адресовано сообщение. Также можно зашифровать свое послание для нескольких ключей, что очень удобно при общении небольшой группы людей. Шифровать можно и файлы, тогда результат шифрования будет записан в файл, а не кодирован текстовыми символами.
Подписи в GPG
Подпись сообщений является удобным средством открытого публичного подтверждения авторства, потому что, как и в случае с шифрованием, только истинный обладатель ключа может подписать свое послание таким ключом и подделать подобную подпись невозможно. Отличается от шифрованных сообщений тем, что текст остается открытым, заключенным с двух сторон соответствующим заголовком, а снизу добавляется небольшой блок самой подписи, также кодированный символами. При попытке изменить хотя бы один символ открытого текста, подпись станет не действительной. Проверка подписей также выполняется при помощи GPG.

Подписи тоже можно применять на файлах. Особенно часто эта функция применяется разработчиками ПО, связанного с безопасностью. Делается это для того, чтобы предотвратить подмену файлов злоумышленниками, которые могут встроить в программы вредоносный код. Подписываются обычно архивы или сборки, сама подпись сохраняется в отдельный файл с расширением .asc или .sig. Ключ публикуется в нескольких местах и/или загружается на сервер, где его очень трудно подменить. Сам процесс проверки называется «верификация подписи».
Функция Web of Trust
Еще одна функция GPG, которую стоит упомянуть — это Web of Trust. Она используется для подтверждения принадлежности публичного ключа конкретному человеку. Для этого знакомые друг с другом пользователи GPG обмениваются ключами при личной встрече.
Каждый из них сверяет отпечаток ключей и создает для каждого полученного ключа электронный сертификат, доказывающий достоверное соответствие между определенной персоной и публичным ключом.
Создание сертификата называется «подписывание ключей». Сам сертификат потом загружается на сервер ключей, и любой может его запросить. Подразумевается, что чем больше пользователей подписали ключ, тем выше к владельцу доверие.
Модель использования WoT предполагает, что пользователи всегда указывают в ключах свои реальные имена и все желающие установить сеть доверия могут физически встретиться для личного обмена ключами. Это делает подобную схему трудно выполнимой при анонимном общении.
При псевдонимном общении для обмена можно использовать каналы связи или сервисы с аутентификацией, которая будет подтверждать достоверность. В любом случае, сети доверия при анонимном или псевдонимном общении не такие стойкие, частично из-за отсутствия «крепкого набора», формирующего основную группу доверенных пользователей, частично из-за человеческого фактора. Решение о целесообразности подобной сети доверия лежит целиком на группе пользователей, желающих ее построить.
Зачем нужно шифрование
Зачем вообще нужно все это шифрование, если человек ничего не скрывает и не нарушает? Это один из самых часто задаваемых вопросов. На него есть несколько ответов. За последние годы возможность тотальной слежки за сетевой деятельностью миллионов пользователей стала уже вопросом не технической сложности, а ресурсов. Обладатели таких ресурсов — все спецслужбы мира и десятки крупных корпораций, с помощью таких программ как PRISM и XKeyscore могут собирать и хранить годами все письма электронной почты, SMS-сообщения и историю звонков.
Это нарушает конституционные права граждан на тайну переписки, однако влияние этих организаций такое сильное, что остановить неправомерный сбор информации невозможно. Использование GPG не снимет слежку с миллионов людей и не исправит магическим образом весь мир. Это всего лишь инструмент в руках человека. Инструмент, позволяющий сохранить письма и слова только для тех, кому они предназначены, и ни для кого больше. Это немного, но по крайне мере это возвращает право каждого человека на тайну переписки.
Вас может заинтересовать обзор расширения браузера для передачи зашифрованных файлов MiniLock
Если сбор данных и слежка кажутся слишком отдаленными, можно рассмотреть шифрование с еще более практичной стороны. Та же электронная почта в открытом виде проходит десятки промежуточных узлов. На каждом может быть сколько угодно уязвимостей и дыр безопасности, которые могут быть использованы кем угодно.
В мире, где цифровые коммуникации играют ключевую роль, шифрование — это элементарное правило безопасности, предотвращающее огромное количество проблем. Глупо не воспользоваться возможностью повысить безопасность, учитывая что программа распространяется бесплатно, и освоить ее можно достаточно быстро. А подробнее ознакомиться с командами можно в официальном руководстве.