Jump to content

Защита конфиденциальности GNU

(Перенаправлено с Gnu Privacy Guard )
Оригинальный автор(ы) Вернер Кох
Разработчик(и) Проект GNU
Первоначальный выпуск 7 сентября 1999 г .; 24 года назад ( 1999-09-07 )
Стабильный релиз(ы)
Стабильный 2.4.5 [ 1 ]  Отредактируйте это в Викиданных / 12 марта 2024 г.
LTS 2.2.43 [ 2 ]  Отредактируйте это в Викиданных / 16 апреля 2024 г.
Предварительный выпуск(ы)
2.5.0 [ 3 ]  Отредактируйте это в Викиданных / 8 июля 2024 г.
Репозиторий разработчик .gnupg .org /источник /gnupg /
Написано в С
Операционная система Microsoft Windows , macOS , RISC OS , Android , Linux
Тип OpenPGP
Лицензия 2007: GPL-3.0 или новее [ а ]
1997: GPL-2.0 или более поздняя версия [ б ]
Веб-сайт гнупг .org

GNU Privacy Guard ( GnuPG или GPG ) — это бесплатная замена Symantec программного пакета криптографического обеспечения PGP . Программное обеспечение соответствует RFC   4880 IETF , соответствующая стандартам спецификация OpenPGP . Современные версии PGP совместимы с GnuPG и другими системами, совместимыми с OpenPGP v4. [ 4 ]

В ноябре 2023 года появилось два проекта, направленных на обновление спецификации OpenPGP v4 2007 года (RFC4880), что в конечном итоге привело к появлению стандарта RFC 9580, предложенного в июле 2024 года. Предложение разработчиков GnuPG называется LibrePGP. [ 5 ]

GnuPG является частью проекта GNU и получил крупное финансирование от правительства Германии в 1999 году. [ 6 ]

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

Серия GnuPG 1.x использует интегрированную криптографическую библиотеку, а серия GnuPG 2.x заменяет ее Libgcrypt .

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

GnuPG также поддерживает симметричного шифрования алгоритмы . По умолчанию GnuPG использует симметричный алгоритм AES , начиная с версии 2.1. [ 7 ] CAST5 использовался в более ранних версиях. GnuPG не использует запатентованное или иным образом ограниченное программное обеспечение или алгоритмы. Вместо этого GnuPG использует множество других незапатентованных алгоритмов. [ 8 ]

Долгое время он не поддерживал алгоритм шифрования IDEA , используемый в PGP. На самом деле можно было использовать IDEA в GnuPG, загрузив для него плагин, однако для некоторых видов использования в странах, где IDEA была запатентована, могла потребоваться лицензия. Начиная с версий 1.4.13 и 2.0.20, GnuPG поддерживает IDEA, поскольку срок действия последнего патента IDEA истек в 2012 году. Поддержка IDEA предназначена «избавиться от всех вопросов со стороны людей, пытающихся расшифровать старые данные или перенести ключи из PGP». в GnuPG", [ 9 ] и, следовательно, не рекомендуется для регулярного использования.

Более поздние выпуски GnuPG 2.x («современная» и ныне устаревшая «стабильная» серия) предоставляют большинство криптографических функций и алгоритмов, предоставляемых Libgcrypt (ее криптографическая библиотека), включая поддержку криптографии с эллиптическими кривыми (ECDH, ECDSA и EdDSA). [ 10 ] в «современной» серии (т.е. начиная с GnuPG 2.1).

Алгоритмы

[ редактировать ]

Начиная с версий 2.3 или 2.2, GnuPG поддерживает следующие алгоритмы:

Открытый ключ
RSA , Эль-Гамаль , DSA , ECDH ( cv25519 , cv448 , [ с ] nistp256, nistp384, nistp521 , nistp384 , nistp521, мозговой пулP256r1, мозговой пулP384r1 мозговой пулP256r1, мозговой пулP384r1, мозговой пулP512r1, secp256k1), ECDSA (nistp256, , мозговой пулP512r1, secp256k1), EdDSA (ред.) 25519, изд448 [ с ] )
Шифр
3DES , IDEA (для обратной совместимости), CAST5 , Blowfish , Twofish , AES-128, AES-192, AES-256 , Camellia-128, -192 и -256
Хэш
МД5 , ША-1 , РИПЭМД-160 , ША-256, ША-384, ША-512, ША-224
Сжатие
Несжатый, ZIP , ZLIB , BZIP2.

GnuPG изначально был разработан Вернером Кохом . [ 11 ] [ 12 ] Первая производственная версия, версия 1.0.0, была выпущена 7 сентября 1999 года, почти через два года после первого выпуска GnuPG (версия 0.0.0). [ 13 ] [ 11 ] Федеральное министерство экономики и технологий Германии профинансировало документацию и порт на Microsoft Windows в 2000 году. [ 12 ]

GnuPG — это система, совместимая со стандартом OpenPGP, поэтому история OpenPGP имеет важное значение; он был разработан для взаимодействия с PGP , программой шифрования электронной почты, первоначально разработанной Филом Циммерманном . [ 14 ] [ 15 ]

7 февраля 2014 г. завершился краудфандинговый проект GnuPG, в результате которого было собрано 36 732 евро на новый веб-сайт и улучшение инфраструктуры. [ 16 ]

С момента выпуска стабильной версии GnuPG 2.3, начиная с версии 2.3.3 в октябре 2021 года, активно поддерживаются три стабильные ветки GnuPG: [ 17 ]

  • « Стабильная ветка», которая в настоящее время (по состоянию на 2021 год) является веткой 2.3.
  • « Ветка LTS (долгосрочная поддержка) », которая в настоящее время (по состоянию на 2021 год) является веткой 2.2 (которая раньше называлась «современной веткой» по сравнению с веткой 2.0).
  • Старая « устаревшая ветка» (ранее называвшаяся «классической веткой»), которая есть и останется веткой 1.4.

До GnuPG 2.3 активно поддерживались две стабильные ветки GnuPG:

  • «Современная» (2.2) с многочисленными новыми функциями, такими как криптография на основе эллиптических кривых , по сравнению с бывшей «стабильной» (2.0) ветвью, которую она заменила выпуском GnuPG 2.2.0 28 августа 2017 г. [ 18 ] Первоначально он был выпущен 6 ноября 2014 года. [ 10 ]
  • «Классик» (1.4), очень старая, но до сих пор поддерживаемая автономная версия, наиболее подходящая для устаревших или встроенных платформ. Первоначально выпущен 16 декабря 2004 г. [ 19 ]

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

Перед выпуском GnuPG 2.2 («современный») для общего использования была рекомендована устаревшая «стабильная» ветвь (2.0), первоначально выпущенная 13 ноября 2006 г. [ 20 ] этой ветки завершился Срок службы 31 декабря 2017 г.; [ 21 ] Последняя версия — 2.0.31, выпущенная 29 декабря 2017 года. [ 22 ]

До выпуска GnuPG 2.0 все стабильные выпуски происходили из одной ветки; т.е. до 13 ноября 2006 г. несколько ветвей выпуска не поддерживались параллельно. Этими предыдущими, последовательно следующими (до 1.4) ветками выпуска были:

  • Ветка 1.2, первоначально выпущенная 22 сентября 2002 г., [ 23 ] последняя версия - 1.2.6, выпущенная 26 октября 2004 г. [ 24 ]
  • Ветка 1.0, первоначально выпущенная 7 сентября 1999 г., [ 13 ] последняя версия - 1.0.7, выпущенная 30 апреля 2002 г. [ 25 ]

(Обратите внимание, что до выпуска GnuPG 2.3.0 ветки с нечетным младшим номером версии (например, 2.1, 1.9, 1.3) были ветвями разработки, ведущими к стабильной ветке выпуска с номером версии «+ 0,1» выше (например, 2.2, 2.0). , 1.4); следовательно, ветви 2.2 и 2.1 относятся к «современной» серии, 2.0 и 1.9 — к «стабильной», а ветви 1.4 и 1.3 — к «классической» серии.

С выпуском GnuPG 2.3.0 эта номенклатура была изменена и теперь состоит из «стабильной» и «LTS» веток из «современной» серии, а также 1.4 как последней поддерживаемой «классической» ветки. Также обратите внимание, что четные или нечетные номера второстепенных выпусков больше не указывают на стабильную или разрабатываемую ветку выпуска.)

Платформы

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

Хотя базовая программа GnuPG имеет интерфейс командной строки , существуют различные внешние интерфейсы , которые предоставляют ей графический интерфейс пользователя . Например, поддержка шифрования GnuPG была интегрирована в KMail и Evolution , графические почтовые клиенты, имеющиеся в KDE и GNOME , самых популярных рабочих столах Linux . Существуют также графические интерфейсы GnuPG, например Seahorse для GNOME и KGPG и Kleopatra для KDE.

GPGTools предоставляет ряд интерфейсов для интеграции с ОС шифрования и управления ключами , а также установки GnuPG через установщика . пакеты [ 26 ] для MacOS . GPG-пакет [ 26 ] устанавливает все связанные приложения OpenPGP (GPG Keychain), плагины ( GPG Mail ) и зависимости (MacGPG), а также службы GPG (интеграция в меню «Службы» macOS) для использования шифрования на основе GnuPG.

Приложения для обмена мгновенными сообщениями, такие как Psi и Fire, могут автоматически защищать сообщения, когда GnuPG установлен и настроен. веб-программное обеспечение, такое как Horde Его также использует . Кроссплатформенное расширение Enigmail обеспечивает поддержку GnuPG для Mozilla Thunderbird и SeaMonkey . Аналогично, Enigform обеспечивает поддержку GnuPG для Mozilla Firefox . Выпуск FireGPG был прекращен 7 июня 2010 года. [ 27 ]

В 2005 году компании g10 Code GmbH и Intevation GmbH выпустили Gpg4win — пакет программного обеспечения, включающий GnuPG для Windows, GNU Privacy Assistant и плагины GnuPG для Windows Explorer и Outlook . Эти инструменты включены в стандартный установщик Windows, что упрощает установку и использование GnuPG в системах Windows. [ 28 ]

Уязвимости

[ редактировать ]

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

Еще две уязвимости были обнаружены в начале 2006 года; во-первых, использование GnuPG по сценарию для проверки подписи может привести к ложным срабатываниям . [ 31 ] во-вторых, сообщения, отличные от MIME, были уязвимы для внедрения данных, которые, хотя и не покрыты цифровой подписью, будут считаться частью подписанного сообщения. [ 32 ] В обоих случаях на момент анонса были доступны обновленные версии GnuPG.

В июне 2017 года Бернштейн, Брейтнер и другие обнаружили уязвимость (CVE-2017-7526) в Libgcrypt : библиотеке, используемой GnuPG, которая позволила полностью восстановить ключ для RSA-1024 и примерно более 1/8 RSA-1024. 2048 ключей. Эта атака по побочному каналу использует тот факт, что Libgcrypt использовал метод скользящего окна для возведения в степень , что приводит к утечке битов экспоненты и полному восстановлению ключа. [ 33 ] [ 34 ] Опять же, на момент анонса была доступна обновленная версия GnuPG.

В октябре 2017 года было объявлено об уязвимости ROCA , которая затрагивает ключи RSA, генерируемые токенами YubiKey 4, которые часто используются с PGP/GPG. Многие опубликованные ключи PGP оказались уязвимыми. [ 35 ]

Примерно в июне 2018 года SigSpoof было объявлено об атаках . Это позволило злоумышленнику убедительно подделать цифровые подписи. [ 36 ] [ 37 ]

В январе 2021 года была выпущена версия Libgcrypt 1.9.0, в которой была обнаружена серьезная ошибка, которую было легко использовать. Исправление было выпущено 10 дней спустя в Libgcrypt 1.9.1. [ 38 ]

См. также

[ редактировать ]

Примечания

[ редактировать ]
  1. ^ GPL-3.0 или более поздняя версия с 4 июля 2007 г. для 2.x и с 23 октября 2007 г. для 1.x.
  2. ^ GPL-2.0 или более поздняя версия с 18 ноября 1997 г. по 4 июля 2007 г. для 2.x и 23 октября 2007 г. для 1.x.
  3. ^ Перейти обратно: а б доступно только в версии 2.3
  1. ^ Вернер Кох (12 марта 2024 г.). «[Объявить] Выпущена GnuPG 2.4.5» . Архивировано из оригинала 12 марта 2024 года . Проверено 12 марта 2024 г.
  2. ^ «Примечательные изменения в версии 2.2.43» . 16 апреля 2024 г. Проверено 27 мая 2024 г.
  3. ^ «GnuPG 2.5.0 выпущен для публичного тестирования» . 8 июля 2024 года. Архивировано из оригинала 9 июля 2024 года . Проверено 9 июля 2024 г.
  4. ^ «Защитник конфиденциальности Gnu» . GnuPG.org. Архивировано из оригинала 29 апреля 2015 г. Проверено 26 мая 2015 г.
  5. ^ «Раскол в мире OpenPGP» . Еженедельные новости Linux . Проверено 9 декабря 2023 г.
  6. ^ «Федеральное правительство продвигает открытый исходный код» (на немецком языке). Хейзе Онлайн. 15 ноября 1999 г. Архивировано из оригинала 12 октября 2013 года . Проверено 24 июля 2013 г.
  7. ^ «[Анонс] Возможно, последняя бета-версия GnuPG 2.1» . Архивировано из оригинала 2 мая 2019 г. Проверено 28 марта 2019 г.
  8. ^ «Функции GnuPG» . Архивировано из оригинала 4 октября 2009 года . Проверено 1 октября 2009 г.
  9. ^ Кох, Вернер (21 декабря 2012 г.). «Выпущен GnuPG 1.4.13» (список рассылки). gnupg-пользователи. Архивировано из оригинала 12 февраля 2013 г. Проверено 19 мая 2013 г.
  10. ^ Перейти обратно: а б с Кох, Вернер (6 ноября 2014 г.). «[Объявить] Выпущен GnuPG 2.1.0 «современный»» . gnupg.org. Архивировано из оригинала 6 ноября 2014 г. Проверено 6 ноября 2014 г.
  11. ^ Перейти обратно: а б Ангвин, Джулия (5 февраля 2015 г.). «Всемирное программное обеспечение для шифрования электронной почты опирается на одного парня, который обанкротился» . ПроПублика . Архивировано из оригинала 6 февраля 2015 года . Проверено 6 февраля 2015 г.
  12. ^ Перейти обратно: а б Уэйнер, Питер (19 ноября 1999 г.). «Грант Германии в области шифрования» . Нью-Йорк Таймс . Архивировано из оригинала 25 августа 2014 года . Проверено 8 августа 2014 г.
  13. ^ Перейти обратно: а б «Примечания к выпуску» . ГнуПГ. Архивировано из оригинала 9 февраля 2014 г. Проверено 30 января 2014 г.
  14. ^ «Защитник конфиденциальности Gnu» . OpenPGP.org. Архивировано из оригинала 27 февраля 2014 г. Проверено 26 февраля 2014 г.
  15. ^ «Где взять PGP» . Philzimmermann.com. Архивировано из оригинала 26 февраля 2014 г. Проверено 26 февраля 2014 г.
  16. ^ «GnuPG: Новый веб-сайт и инфраструктура» . goteo.org. Архивировано из оригинала 30 марта 2014 г. Проверено 9 марта 2014 г.
  17. ^ «Выпущена GnuPG 2.3.3» .
  18. ^ Кох, Вернер (28 августа 2017 г.). «[Объявить] Выпущен GnuPG 2.2.0» . gnupg-announce (список рассылки). Архивировано из оригинала 29 августа 2017 г. Проверено 21 сентября 2017 г.
  19. ^ Кох, Вернер (16 декабря 2004 г.). «[Объявить] Выпущена стабильная версия GnuPG 1.4» . gnupg.org. Архивировано из оригинала 3 января 2005 г. Проверено 16 декабря 2004 г.
  20. ^ Кох, Вернер (13 ноября 2006 г.). «[Объявить] Выпущен GnuPG 2.0» . gnupg.org. Архивировано из оригинала 14 февраля 2014 г. Проверено 30 января 2014 г.
  21. ^ Кох, Вернер (23 января 2017 г.). «[Объявить] Выпущена GnuPG 2.1.18» . gnupg.org. Архивировано из оригинала 11 февраля 2017 г. Проверено 4 февраля 2017 г.
  22. ^ «ГнуПГ 2.0.31» . 29 декабря 2017 г. Проверено 30 декабря 2017 г.
  23. ^ Кох, Вернер (6 сентября 2002 г.). «[Объявить]Выпущена GnuPG 1.2» . gnupg.org. Архивировано из оригинала 17 июня 2014 г. Проверено 6 ноября 2014 г.
  24. ^ Кох, Вернер (26 августа 2004 г.). «[Объявить] Выпущен GnuPG 1.2.6» . gnupg.org. Архивировано из оригинала 17 июня 2014 г. Проверено 6 ноября 2014 г.
  25. ^ Кох, Вернер (30 апреля 2002 г.). «[Объявить] Выпущена версия GnuPG 1.0.7» . gnupg.org. Архивировано из оригинала 17 июня 2014 г. Проверено 6 ноября 2014 г.
  26. ^ Перейти обратно: а б «ГПГ-люкс» . GPGTools . Проверено 24 декабря 2017 г.
  27. ^ «Блог разработчиков FireGPG» . 7 июня 2010. Архивировано из оригинала 27 июля 2013 года . Проверено 24 июля 2013 г.
  28. ^ «Gpg4win – О Gpg4win» . gpg4win.org . Проверено 23 марта 2021 г.
  29. ^ Нгуен, Фонг В. «Можем ли мы доверять криптографическому программному обеспечению? Криптографические недостатки в GNU Privacy Guard v1.2.3» . ЕВРОКРИПТ 2004: 555–570. Архивировано из оригинала 4 декабря 2017 г. Проверено 23 августа 2019 г.
  30. ^ Кох, Вернер (27 ноября 2003 г.). «Ключи подписи Эль-Гамаля GnuPG скомпрометированы» . Архивировано из оригинала 18 марта 2004 года . Проверено 14 мая 2004 г.
  31. ^ Кох, Вернер (15 февраля 2006 г.). «Ложноположительная проверка подписи в GnuPG» . Архивировано из оригинала 17 июня 2006 года . Проверено 23 мая 2006 г.
  32. ^ Кох, Вернер (9 марта 2006 г.). «GnuPG не обнаруживает внедрение беззнаковых данных» . Архивировано из оригинала 5 мая 2006 года . Проверено 23 мая 2006 г.
  33. ^ Эдж, Джейк (5 июля 2017 г.). «Взлом Libgcrypt RSA через побочный канал» . LWN.net . Архивировано из оригинала 28 июля 2017 года . Проверено 28 июля 2017 г.
  34. ^ «Скольжение прямо к катастрофе: протечки раздвижных окон слева направо» (PDF) . Архивировано (PDF) из оригинала 30 июня 2017 г. Проверено 30 июня 2017 г.
  35. Возвращение атаки Копперсмита: практическая факторизация широко используемых модулей RSA. Архивировано 12 ноября 2017 г. в Wayback Machine , Матус Немец, Марек Сис, Петр Свенда, Душан Клинец, Вашек Матьяс, ноябрь 2017 г.
  36. ^ «Ошибка PGP, возникшая несколько десятилетий назад, позволила хакерам подделать чью-либо подпись» . 14 июня 2018 г. Архивировано из оригинала 07 сентября 2018 г. Проверено 7 сентября 2018 г.
  37. ^ «Проход не пройден: в хранилище простых паролей обнаружена ошибка подмены GnuPG» . Регистр . Архивировано из оригинала 30 июня 2018 г. Проверено 7 сентября 2018 г.
  38. ^ «Серьезная ошибка в Libgcrypt, используемая GPG и другими, вызывает целую кучу неприятностей, требующих установки патчей» . Архивировано из оригинала 21 февраля 2021 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: cda452e79011c1e2c66e391f3a630226__1722988260
URL1:https://arc.ask3.ru/arc/aa/cd/26/cda452e79011c1e2c66e391f3a630226.html
Заголовок, (Title) документа по адресу, URL1:
GNU Privacy Guard - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)