Конституция Армении: Статья 18.1
Конституция Армении (Статья 18.1) закрепляет «исключительную миссию Армянской Апостольской Святой Церкви как национальной церкви в духовной жизни армянского народа, в деле развития его национальной культуры и сохранения его национальной самобытности»:
GnuPG

GnuPG

Материал из Википедии — свободной энциклопедии

GNU Privacy Guard (GnuPG, GPG) — свободное программное обеспечение для шифрования информации и создания электронных цифровых подписей. GnuPG присутствует во всех свободных операционных системах, включая GNU/Linux, распространяется под свободной лицензией GNU General Public License. GnuPG полностью совместима со стандартом IETFOpenPGP. Текущие версии GnuPG могут взаимодействовать с PGP и другими OpenPGP-совместимыми системами.

История

Проект GnuPG был инициирован в конце 1990-х годов Вернером Кохом (нем.Werner Koch) с целью замены набора криптографического программного обеспечения PGP (точнее, асимметричной криптографии) альтернативным свободным программным обеспечением.[2][3]

Для этой цели было получено значительное финансирование от Федеральное министерство экономики и защиты климата Германии.[4]

Первая стабильная версия 1.0.0, была выпущена 7 сентября1999 года, почти через два года после первого выпуска GnuPG (версия 0.0.0) 20 декабря1997 года.[5][6] Федеральное министерство экономики Германии профинансировало документацию и портирование GnuPG на платформу Microsoft Windows в 2000 году.[7] В декабре 2013 года была запущена первая краудфандинговая кампания с целью создания более привлекательного веб-сайта, улучшения документации и выпуска версии 2.1 GnuPG.[8] 7 февраля 2014 года завершился краудфандинговый проект GnuPG, в ходе которого было собрано 36 732 € на новый веб-сайт и улучшение инфраструктуры.[9] С 2015 года, Core Infrastructure Initiative (CII) субсидирует проект в размере более 50 000 евро в год.[2][10]

Компания g10code GmbH была основана в 2001 году. Название g10 — это отсылка к десятой статье немецкой конституции о свободе коммуникации (нем. Grundgesetz Artikel 10).[11] Эта статья аналогична 23-й статье Конституции РФ, гарантирующей тайну переписки, переговоров и иных сообщений.

Ограничения в США не позволяли экспортировать криптографическое программное обеспечение за границу. Правительство США стало преследовать Циммерманна[12], и тогда он обошёл это ограничение — опубликовал исходный код в книге, а уже за границей можно было набрать этот исходный код из книги и скомпилировать на компьютере. Жёсткие ограничения правительства США не давали возможность другим странам использовать сильную криптографию в программном обеспечении американских компаний (в том числе и Microsoft Windows). Разрабатывать криптографическое ПО в США с возможностью дальнейшего экспорта в другие страны разрешается только с соблюдением некоторых требований, и поэтому часть такого ПО создавалось за границами США (например, OpenBSD — в Канаде, GnuPG — в Германии). Правительство США пыталось заставить правительство Германии пересмотреть позицию по выпуску сильной криптографии на платформе Windows, но, так ничего и не добившись, в конце концов, ослабило свои экспортные ограничения на криптографическое ПО.

Ветви версий

На данный момент поддерживаются три стабильные ветви GnuPG:[13]

  • ветвь «stable» («стабильная») — текущая разработка для общего использования (на данный момент времени, по состоянию на 2024-11-25 — это версия 2.4.7).
  • ветвь «LTS» («долгосрочная поддержка»)
  • «ELTS» («расширенная долгосрочная поддержка»)
  • ветвь «legacy» — «устаревшая», для старых платформ (ранее называвшаяся ветвью «classic»), которая есть и останется версия 1.4 (1.4.23).

Различные версии GnuPG 2.x (например, из ветви 2.2 и 2.0) не могут быть установлены одновременно. Однако можно установить версию, например, из «устаревшей» ветви GnuPG (версию 1.4) вместе с любой версией GnuPG 2.x.[14]

Особенности

  • Свободная альтернатива PGP
  • Не использует патентованные алгоритмы
  • Распространяется под GNU General Public License
  • Полная реализация OpenPGP
  • Расшифрование и аутентификация почтовых сообщений, созданных с помощью PGP 5, 6 и 7
  • Поддержка электронной подписи с помощью алгоритмов ElGamal, DSA, RSA и хеш-функций MD5, SHA-1, SHA-2, RIPEMD-160 и TIGER. Начиная с версии 2.2[15] в разряд стабильных переведены алгоритмы эллиптической криптографии с использованием кривых Curve25519, NIST P-256/P-384/P-521, Brainpool[16] P-256/P-384/P-512 и Secp256k1[17]
  • Работа с асимметричным шифрованием ElGamal и RSA (длина ключа от 1024 до 4096 бит)
  • Поддержка блочных алгоритмов симметричного шифрования AES, CAST5, 3DES, Twofish, Blowfish, Camellia, а также IDEA с помощью плагина
  • Поддержка алгоритмов сжатия: ZIP, ZLIB, BZIP2
  • Лёгкая реализация новых алгоритмов с помощью дополнительных модулей
  • Поддержка просроченных ключей и подписей
  • Интегрированная поддержка HKP серверов ключей
  • Встроенный сервер и клиент WKD[18] для распространения публичных ключей.

Использование

Пример использования GnuPG: в качестве ключа подписи репозитория программного обеспечения для ZYpp

GnuPG — программа, которая работает почти на всех операционных системах: от Microsoft Windows и GNU/Linux до Mac OS X, FreeBSD, OpenBSD, NetBSD и т. д.

Хотя в основном интерфейсом GnuPG является командная строка, существуют различные внешние дополнения, которые делают доступной функциональность этой программы через графический интерфейс пользователя. Например, GnuPG интегрирован в графические клиенты электронной почты KMail и Evolution. Механизм плагинов полностью совместим со стандартом OpenPGP.

С помощью расширения Enigmail GnuPG работает в почтовом клиенте Mozilla Thunderbird для шифрования и аутентификации сообщений. Также поддержка GnuPG имеется в почтовых клиентах Mutt, The Bat! и Gnus.

При помощи программы GPGrelay[19] шифровать и подписывать электронные письма через GnuPG можно любыми почтовыми клиентами, работающими по протоколам POP3, IMAP4, SMTP.

Для пользователей операционной системы Microsoft Windows вторая ветвь GnuPG поставляется сразу с графическим интерфейсом. Начиная с 2005 года разработчиками проекта GnuPG выпускается Gpg4win (GNU Privacy Guard for Windows) — инсталляционный пакет, который включает в себя:

  • версию GnuPG для Windows (ядро пакета, само средство шифрования);
  • Kleopatra — менеджер сертификатов для OpenPGP и X.509;
  • GPA — альтернативный менеджер сертификатов (GNU) для OpenPGP и X.509;
  • GpgOL — плагин для Outlook;
  • GpgEX — плагин для проводника Windows, используется при шифровании файлов;
  • Claws Mail — полноценную почтовую программу с поддержкой функций GnuPG (с версии 2.2.6 удалён из пакета[20]);
  • документацию на английском и немецком языке.

По сути, Gpg4win — это официальная версия GnuPG для платформы Windows, и все включённые в этот пакет компоненты также свободны.

Также, используя дополнительные плагины GnuPG или SecureIM, можно достичь шифрования сообщений с помощью GnuPG в клиенте сетей мгновенных сообщений Miranda IM.

GnuPG поддерживается Jabber-клиентами Psi и Gajim.

Плагины для браузеров

До 7 июня 2010 года велась разработка FireGPG[21] — дополнения для Firefox, которое позволяло добавить в этот браузер поддержку GnuPG. Помимо прочих функций оно позволяло интегрировать GnuPG в Gmail. Из-за того что веб-интерфейс Gmail постоянно менялся, автор плагина прекратил сначала поддерживать шифрование Gmail почты, а затем и всего плагина. Этим плагином FireGPG пользовалось около 30 тысяч человек.

Другой плагин для браузеров WebPG существует в версиях для Firefox (Seamonkey, Thunderbird) и Chrome (Chromium). Поддерживает функции: шифрование, расшифровывание, цифровая подпись, управление ключами. Текущая версия 0.9.2 от 24 января 2013 года. Есть экспериментальная интеграция с Gmail.

Другой действующий плагин, позволяющий использовать криптозащиту (шифрование и ЭЦП) в сообщении на странице в Интернете для браузера Chrome — это GPG4Browsers. Этот плагин первоначально выпущен немецкой компанией Recurity Labs, но затем передан в отдельный проект OpenPGP.js.

Использование плагинов в браузерах позволяет гарантировать принадлежность того или иного сообщения тому или иному человеку (через ЭЦП) или позволяет прочитать сообщение, находящееся в публичном доступе, кому-то одному (для кого зашифровано данное сообщение). В том числе возможно использование данных плагинов в социальных сетях или электронной почте.

Принцип работы

GnuPG шифрует сообщения, используя асимметричные пары ключей, генерируемые пользователями GnuPG. Открытыми ключами можно обмениваться с другими пользователями различными путями, в том числе и через Интернет с помощью серверов ключей. Также GnuPG позволяет добавлять криптографическую цифровую подпись к сообщению, при этом целостность и отправитель сообщения могут быть проверены.

GnuPG не использует запатентованное или иначе ограниченное программное обеспечение и/или алгоритмы, включая алгоритм IDEA, который представлен в PGP почти с самого начала. GnuPG использует другие непатентованные алгоритмы CAST5, 3DES, AES, Blowfish и Twofish. Тем не менее, возможно использование в GnuPG и алгоритма IDEA с помощью дополнительного модуля.

GnuPG — это гибридное криптографическое программное обеспечение, которое использует комбинацию стандартного шифрования с помощью симметричных ключей и шифрования с открытым ключом для безопасного обмена ключами, открытый ключ получателя необходим для шифрования ключа сессии, используемого единожды. Такой режим работы является частью стандарта OpenPGP и частью PGP в его первой версии.

Проблемы

Подпись

Стандарт OpenPGP определяет несколько методов для подписанных цифровой подписью сообщений. Из-за ошибки, допущенной в результате попытки сделать эти методы более эффективными, появилась уязвимость. Это затрагивает только один метод в цифровой подписи сообщений, только для некоторых выпусков GnuPG (1.0.2 до 1.2.3), и было меньше чем 1000 таких ключей, перечисленных на ключевых серверах.[22]

CVE-2016-6313

Уязвимость (CVE-2016-6313) была найдена специалистами Технологического института Карлсруэ, Феликсом Дёрре и Владимиром Клебановым; баг присутствует во всех версиях GnuPG и Libgcrypt, вышедших до 17 августа 2016 года.

Суть проблемы: если атакующему удастся извлечь 4620 бит данных из генератора случайных чисел, то последующие 160 бит последовательности он сумеет легко предсказать.

В заявлении разработчиков отдельно сообщается, что проблема не должна сказываться на безопасности существующих RSA-ключей. Также специалисты[кто?] считают крайне маловероятным, что кто-то сумеет использовать публичную информацию для предсказания приватных ключей DSA и Elgamal, однако в документе сообщается, что проблему всё ещё продолжают изучать.

Уязвимость устранена выпуском Libgcrypt 1.7.3, 1.6.6 и 1.5.6 и выпуском GnuPG 1.4.21.[23]

Критика

Эксперты по ИТ-безопасности критикуют плохую кодовую базу GnuPG, отсутствие системы непрерывной интеграции и связанные с этим уязвимости.[24]

См. также

Примечания

  1. Koch W.GnuPG and Gpg4win Security Advisory (T8044) (англ.) — 2026.
  2. 12Angwin, Julia. The World's Email Encryption Software Relies on One Guy, Who is Going Broke. ProPublica (5 февраля 2015). Дата обращения: 5 февраля 2025.
  3. Germany Awards Grant for Encryption. archive.nytimes.com. Дата обращения: 5 февраля 2025.
  4. online, heise. Bundesregierung fördert Open Source (нем.). heise online (15 ноября 1999). Дата обращения: 5 февраля 2025.
  5. Project, The People of the GnuPG. GnuPG - Release Notes (англ.). gnupg.org (12 июня 2021). Дата обращения: 5 февраля 2025.
  6. The World’s Email Encryption Software Relies on One Guy, Who is Going Broke - ProPublica. web.archive.org (6 февраля 2015). Дата обращения: 5 февраля 2025.
  7. Germany Awards Grant for Encryption. web.archive.org (25 августа 2014). Дата обращения: 5 февраля 2025.
  8. Goteo, Fundación. GnuPG: new website and infrastructure (фр.). Goteo.org. Дата обращения: 5 февраля 2025.
  9. Goteo.org Crowdfunding the commons. web.archive.org (30 марта 2014). Дата обращения: 5 февраля 2025.
  10. OpenPGP.org - Gnu Privacy Guard. web.archive.org (27 февраля 2014). Дата обращения: 5 февраля 2025.
  11. Project, The People of the GnuPG. 20141214-gnupg-and-g10 (англ.). gnupg.org (29 апреля 2015). Дата обращения: 2 апреля 2025.
  12. Philip Zimmermann and a new standard for encrypting data | Hidden Heroes (англ.). hiddenheroes.netguru.com. Дата обращения: 8 августа 2025.
  13. [Announce] GnuPG 2.3.3 released. lists.gnupg.org. Дата обращения: 5 февраля 2025.
  14. [Announce] GnuPG 2.1.0 "modern" released. web.archive.org (6 ноября 2014). Дата обращения: 5 февраля 2025.
  15. Объявление о выпуске GnuPG 2.2.0. Дата обращения: 21 сентября 2018. Архивировано 29 августа 2017 года.
  16. RFC 5639 — Elliptic Curve Cryptography (ECC) Brainpool Standard Curves and Curve Generation. Дата обращения: 21 сентября 2018. Архивировано 15 февраля 2020 года.
  17. Описание кривой Secp256k1. Bitcoin Wiki. Дата обращения: 21 сентября 2018. Архивировано 21 сентября 2018 года.
  18. WKD — GnuPG wiki. Дата обращения: 21 сентября 2018. Архивировано 4 сентября 2018 года.
  19. GPGrelay
  20. Gpg4win 2.2.6 released
  21. Maximilien Cuony. FireGPG discontinued (7 июля 2010). Дата обращения: 22 апреля 2014. Архивировано 27 июля 2013 года.
  22. Werner Koch. [Announce] GnuPG's ElGamal signing keys compromised (27 ноября 2003). Дата обращения: 22 апреля 2014. Архивировано 18 марта 2004 года.
  23. Мария Нефёдова. В GNUPG И БИБЛИОТЕКЕ LIBGCRYPT ИСПРАВИЛИ КРИТИЧЕСКИЙ БАГ, СУЩЕСТВУЮЩИЙ С 1998 ГОДА (22 августа 2016). Дата обращения: 28 августа 2016. Архивировано 8 ноября 2016 года.
  24. Golem.de: IT-News für Profis. www.golem.de. Дата обращения: 5 февраля 2025.

Ссылки

GNU Privacy Guard
Логотип программы GNU Privacy Guard
Скриншот программы GNU Privacy Guard
ТипPretty Good PrivacyOpenPGP
АвторWerner Koch
РазработчикGNU Project
Написана наC
Операционные системы Microsoft Windows, macOS, RISC OS, Android, Linux
Дата выпуска7 сентября 1999; 26 лет назад (1999-09-07)
Последняя версия
Репозиторийdev.gnupg.org/source/gnupg/
ЛицензияGPL-3.0+
Сайтgnupg.org
Логотип Викисклада Медиафайлы на Викискладе