Как создавать, подписывать, экспортировать, импортировать и проверять подписи OpenPGP в OpenKeychain и GPG4win с видеоинструкцией

Как создавать, подписывать, экспортировать, импортировать и проверять подписи OpenPGP в OpenKeychain и GPG4win с видеоинструкцией


В наши дни связь между людьми, учреждениями, компаниями и организациями является цифровой.
Согласно взятой из веба статистики, электронные письма генерируют ежедневный трафик, объём которого склонен к росту:
| 2021 год | 2022 год | 2023 год | 2024 год | 2025 год |
|---|---|---|---|---|
| 319,6 | 333,2 | 347.3 | 361.6 | 376,4 |
| Ежедневный трафик в миллиардах электронных писем компаний и потребителей. Источник: www.radicati.com | ||||
То есть в 2022 году ожидается ежедневный трафик в 333,2 миллиарда писем (или приблизительно 333200000000).
Однако нас удивляет не столько огромный объём почтового трафика, сколько совершеннейшая неосведомлённость пользователей о необходимости защиты содержимого каждого письма.
На самом деле, большая доля писем в ежедневном трафике отправляется обычным текстом, без применения криптографических систем, защищающих содержимое каждого сообщения.
Читать полностью »
Если нужно подписать файл, чтобы гарантировать его аутентичность, что мы делаем? Старый способ — запустить PGP и сгенерировать подпись, используя команду --sign. Цифровая подпись удостоверяет создателя и дату создания документа. Если документ будет как-то изменён, то проверка цифровой подписи это покажет. Одновременно нужно опубликовать в открытом доступе свой публичный ключ, чтобы любой желающий мог проверить подпись.
Но использовать PGP — не лучшая идея. Есть варианты получше. Например, теперь подписывать документы/файлы можно с помощью обычной утилиты OpenSSH.
Вообще, ключ SSH — очень удобная штука. Не только для подписи текстов и коммитов в Git, но и для авторизации на сайтах. А также для шифрования сообщений, которые сможет прочитать только один человек.
Читать полностью »

Вчера был представлен выпуск пакета Sequoia 0.20.0. Он предлагает библиотеку функций и инструментарий командной строки с реализацией стандартов OpenPGP (RFC-4880). Команда проекта состоит из трех человек — участников проекта OpenPGP (RFC-4880). Для повышения безопасности и надежности кодовой базы они решили создать новую свободную реализацию OpenPGP на языке Rust. Код проекта распространяется под лицензией GPLv2+.
Цель разработчиков — не только повышение безопасности продукта, но и избавление от недостатков GnuPG. Без нарушения совместимости или кардинальной переработки кодовой базы их нельзя устранить в основном проекте. Так, связь между отдельными компонентами GnuPG достаточно сильная, так что вносить изменения сложно, не говоря уже о создании системы unit-тестирования. Инструментарий командной строки gpupg не синхронизирован по функциональности и библиотекой функций, так что ряд действий можно выполнить лишь при помощи утилиты.
Читать полностью »

В февралe 2020 года на Хабре появилась увлекательная статья про преобразованию программатора ST-Link v2 в аппаратный ключ шифрования. Уже тогда в комментариях появились жалобы на то, что результат не удаётся повторить, но они остались без ответа.
За прошедшее время до меня дошла пара посылок с Aliexpress и теперь, самостоятельно пройдя весь путь, я попытаюсь представить более или менее полную инструкцию с комментариями, которая поможет неспециалисту перепрошить микропроцессор в китайском клоне ST-Link v2. Постараюсь не повторять уже известное, поэтому про пайку контактов и использование GPG с аппаратным ключом смотрите в исходной статье.
Хакеры использовали особенность протокола OpenPGP, о которой известно более десяти лет.
Рассказываем, в чем суть и почему её не могут закрыть.
Криптоинженеры уже несколько десятилетий кричат о недостатках PGP. Когда это слышат обычные разработчики, то бывают крайне удивлены. Как, PGP никуда не годится? Зачем же тогда его советуют использовать? Ответ в том, PGP действительно никуда не годится, и никому никогда не следует его рекомендовать. Он должен исчезнуть.
Как вы скоро увидите, у PGP много проблем. Если не вдаваться в подробности, основная причина в том, что программа разработана в 90-е годы, до появления серьёзной современной криптографии. Ни один компетентный криптоинженер сегодня не станет разрабатывать систему в таком виде и не потерпит большинства её дефектов ни в какой другой системе. Серьёзные криптографы в основном отказались от PGP и больше не тратят на неё времени (за некоторыми заметными исключениями). Поэтому хорошо известные проблемы в PGP остаются нерешёнными более десяти лет.
Читать полностью »
В данном руководстве мы рассмотрим работу с OpenPGP на Java с использованием библиотеки Bouncy Castle Cryptography Library с ориентацией на использование в веб-разработке.