For faster navigation, this Iframe is preloading the Wikiwand page for GnuPG.

GnuPG

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

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

Достоверность этого раздела статьи поставлена под сомнение.Необходимо проверить точность фактов, изложенных в этом разделе.На странице обсуждения могут быть пояснения.

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

Проект создан Вернером Кохом (нем. Werner Koch).

Версия 0.0.0 выпущена 20 декабря 1997 года. Версия 1.0.0 была выпущена 7 сентября 1999 года.

1 августа 2006 года вышла версия 1.4.5; 13 ноября 2006 года — версия 2.0; 3 октября 2014 года — версия 2.1.

В настоящее время существуют следующие версии:

  • GnuPG «classic» (1.4) — для старых платформ.
  • GnuPG «stable» (2.2) — текущая стабильная разработка для общего пользования.

Все ветви версий GnuPG развиваются параллельно.

Особенности

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

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

[править | править код]

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

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

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

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

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

[править | править код]

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

Уязвимость (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.[7]

Примечания

[править | править код]
  1. Объявление о выпуске GnuPG 2.2.0. Дата обращения: 21 сентября 2018. Архивировано 29 августа 2017 года.
  2. RFC 5639 — Elliptic Curve Cryptography (ECC) Brainpool Standard Curves and Curve Generation. Дата обращения: 21 сентября 2018. Архивировано 15 февраля 2020 года.
  3. Описание кривой Secp256k1 на Bitcoin Wiki. Дата обращения: 21 сентября 2018. Архивировано 21 сентября 2018 года.
  4. WKD — GnuPG wiki. Дата обращения: 21 сентября 2018. Архивировано 4 сентября 2018 года.
  5. Maximilien Cuony. FireGPG discontinued (7 июля 2010). Дата обращения: 22 апреля 2014. Архивировано 27 июля 2013 года.
  6. Werner Koch. [Announce] GnuPG's ElGamal signing keys compromised (27 ноября 2003). Дата обращения: 22 апреля 2014. Архивировано 18 марта 2004 года.
  7. Мария Нефёдова. В GNUPG И БИБЛИОТЕКЕ LIBGCRYPT ИСПРАВИЛИ КРИТИЧЕСКИЙ БАГ, СУЩЕСТВУЮЩИЙ С 1998 ГОДА (22 августа 2016). Дата обращения: 28 августа 2016. Архивировано 8 ноября 2016 года.
{{bottomLinkPreText}} {{bottomLinkText}}
GnuPG
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 🎉! the new version arrives on September 1st! Don't want to wait?