Инструмент шифрования PGP (OpenPGP)
Зашифруйте сообщение открытым ключом OpenPGP (одним или несколькими), расшифруйте закрытым ключом или создайте пару ключей Curve25519/RSA. ASCII armor, в браузере.
Вставьте один или несколько блоков открытого ключа в формате ASCII armor. Расшифровать сообщение сможет каждый указанный получатель.
Работает полностью в вашем браузере. Ваши данные никуда не загружаются.
Что такое Шифрование PGP?
Шифрует текст открытыми ключами OpenPGP одного или нескольких получателей и возвращает блок BEGIN PGP MESSAGE в формате ASCII armor, который расшифруют GnuPG, Kleopatra, Thunderbird или ProtonMail. Страница также расшифровывает сообщения вашим закрытым ключом и создаёт новые пары ключей для тестов на библиотеке openpgp.js.
Как пользоваться Шифрование PGP
- На вкладке Зашифровать вставьте один или несколько открытых ключей получателей (
BEGIN PGP PUBLIC KEY BLOCK); идентификаторы пользователей и отпечатки показываются, чтобы их можно было проверить. - Напишите Сообщение и нажмите Зашифровать, затем скопируйте или скачайте зашифрованное сообщение.
- Чтобы прочитать сообщение, откройте Расшифровать, вставьте закрытый ключ, его парольную фразу (если есть) и сообщение и нажмите Расшифровать.
- Ключа ещё нет? Откройте Создать пару ключей, введите имя или адрес эл. почты и необязательную парольную фразу, затем нажмите Использовать открытый ключ для шифрования.
Пример
Message "Hello PGP" encrypted to a Curve25519 public key for "Test Recipient <test@example.com>"
-----BEGIN PGP MESSAGE----- … -----END PGP MESSAGE-----
Сообщение в формате armor каждый раз отличается, потому что используется новый случайный сеансовый ключ; расшифровка вернёт "Hello PGP".
Когда использовать Шифрование PGP
Используйте, чтобы отправить конфиденциальное сообщение тому, кто публикует ключ PGP, протестировать интеграцию PGP или попробовать OpenPGP без установки ПО. Для повседневной работы храните закрытый ключ в локальном клиенте вроде GnuPG; страница браузера — не место для долгоживущих закрытых ключей. Инструмент не подписывает сообщения и не проверяет подписи.
Как работает Шифрование PGP
OpenPGP (RFC 4880/9580) использует гибридное шифрование: случайный сеансовый ключ шифрует сообщение алгоритмом AES, а сам сеансовый ключ шифруется для подключа шифрования каждого получателя (ECDH на Curve25519 или RSA). Пакеты оборачиваются в Base64 с контрольной суммой CRC. При расшифровке закрытый ключ разблокируется парольной фразой, восстанавливается сеансовый ключ и проверяется пакет данных с защитой целостности. Генерация ключей создаёт основной ключ подписи и подключ шифрования (Curve25519 или RSA-4096), привязанные к вашему идентификатору пользователя.
Распространенные Случаи Использования
- Зашифровать сообщение для опубликованного ключа PGP контакта по безопасности (security.txt)
- Проверить, что настройка GnuPG на вашем сервере расшифровывает вывод OpenPGP.js
- Зашифровать одно сообщение сразу для нескольких получателей
- Создать одноразовые пары ключей для демонстраций и руководств
Примечание по Безопасности
Всё шифрование, расшифровка и генерация ключей выполняются в вашем браузере; ничего не загружается. Созданные закрытые ключи не сохраняются — сохраните их сами — и не вставляйте долгоживущие закрытые ключи на веб-страницы.
Часто Задаваемые Вопросы
Сможет ли GnuPG расшифровать результат?
Да. Сохраните его как message.asc и выполните gpg --decrypt message.asc, имея ключ получателя в связке ключей.
Какой тип ключа создавать?
ECC Curve25519 быстр, компактен и поддерживается GnuPG 2.1+ и всеми современными клиентами. RSA 4096 обеспечивает максимальную совместимость с очень старым ПО, но работает медленнее.
Подписано ли сообщение?
Нет, оно только зашифровано. Получатели не смогут узнать, кто его отправил; если важна подлинность, подпишите его в своём клиенте.
Что, если я потеряю парольную фразу закрытого ключа?
Ключ больше нельзя использовать, а зашифрованные для него сообщения не прочитать. Восстановления нет.