Лучшие вопросы
Таймлайн
Чат
Перспективы

GnuPG

свободная программа для шифрования информации и создания электронных цифровых подписей Из Википедии, свободной энциклопедии

GnuPG
Remove ads

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

Краткие факты GNU Privacy Guard, Тип ...
Remove ads

История

Суммиров вкратце
Перспектива

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

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

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

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

Remove ads

Ветви версий

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

  • ветвь «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.[15]

Remove ads

Особенности

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

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

Суммиров вкратце
Перспектива
Thumb
Пример использования 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[20] шифровать и подписывать электронные письма через 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 удалён из пакета[21]);
  • документацию на английском и немецком языке.

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

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

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

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

До 7 июня 2010 года велась разработка FireGPG[22] — дополнения для 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.

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

Remove ads

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

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

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

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

Remove ads

Проблемы

Суммиров вкратце
Перспектива

Подпись

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

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.[24]

Remove ads

Критика

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

См. также

Примечания

Ссылки

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads