Спустя два с половиной года с момента формирования прошлой значительной ветки представлен релиз инструментария GnuPG 2.2.0 (GNU Privacy Guard), совместимого со стандартами OpenPGP (RFC-4880) и S/MIME, и предоставляющего утилиты для шифрования данных, работы с электронными подписями, управления ключами и доступа к публичным хранилищам ключей.

GnuPG 2.2.0 позиционируется как первый выпуск развивающейся стабильной ветки, в которой продолжат добавляться новые возможности. В ветке 2.1 теперь будут приниматься только корректирующие исправления, а ветка 2.0 переведена в разряд старой стабильной ветки, поддержка которой будет прекращена 31 декабря этого года. Что касается нововведений, то ветка GnuPG 2.2.0 плавно вобрала в себя все изменения, накопленные при подготовке выпусков 2.1.x.

В отличие от прошлых выпусков 2.1.x, в GnuPG 2.2.0 представлено два важных изменения в поведении: Во-первых, прекращена поставка выпусков GnuPG 2.x под именем "gpg2", после установки GnuPG теперь доступен как "gpg" (для установки как gpg2 следует явно указать при сборке опцию "--enable-gpg-is-gpg2"). Во-вторых, включено по умолчанию автоматическое извлечение ключей из серверов хранения ключей (по умолчанию включена опция '--auto-key-locate "local,wkd"'). Кроме того, в GnuPG agent по умолчанию включена опция "--no-grab", а в команду импорта gpg добавлена опция "show-only" для отображения импортируемых данных без их фактического сохранения.

Особенности GnuPG 2.2, реализованные в процессе развития ветки 2.1.x:

  • Добавлена поддержка шифрования с применением алгоритма Curve25519, предложенного Дэниэлом Бернштейном (D. J. Bernstein) и основанного на использовании криптографии по эллиптическим кривым;
  • Поддержка шифрования по эллиптическим кривым (ECC, Elliptic Curve Cryptography). Поддерживаются NIST P-256/P-384/P-521 и Brainpool P-256/P-384/P-512. По умолчанию применяется алгоритм Curve 25519 и схема цифровой подписи с открытым ключом Ed25519, разработанная Дэниэлом Бернштейном;
  • Прекращение поддержки устаревших ключей PGP2, не отвечающих современным требованиям к безопасности из-за использования хэшей MD5;
  • Прекращено использование файла "secring.gpg" для хранения закрытых ключей. Доступ к закрытым ключам теперь возможен только через gpg-agent, который хранит ключи в директории private-keys-v1.d. Напрямую gpg к закрытым ключам отныне обращаться не может. Добавлена поддержка слияния закрытых ключей;
  • Задействован новый формат для локального хранения публичных ключей, обеспечивающий большой прирост производительности для больших таблиц ключей (keyring);
  • Упрощён штатный интерфейс генерации ключей (gpg2 --gen-key), который стал более прост для генерации подходящих ключей начинающими пользователями. Для создания ключей теперь можно ввести только имя и email.
  • Добавлены команды для создания и подписания ключей из командной строки без дополнительных запросов ввода параметров (например, "gpg2 --batch --quick-gen-key 'Vasyliy Pupkin vasia@example.org' или "gpg2 --quick-sign-key '15CA 723E 2030 A1A8 2505 F3B7 CC10 B501 BD19 AC1C'");
  • В Pinentry обеспечена возможность показа полей ввода нового пароля и его подтверждения в одном диалоге;
  • Пользователь избавлен от необходимости ручного запуска gpg-agent, который теперь вызывается автоматически из других частей GnuPG;
  • Обновлена поддержка смарткарт, добавлена поддержка новых устройств чтения и типов токенов. Добавлена поддержка смарткарт OpenPGP версии 3;
  • Улучшена обработка пулов серверов ключей (keyserver), используемых для балансировки нагрузки. Кроме распределения запросов на основе DNS в новой версии представлен процесс dirmngr, распределяющий запросы с учётом возможного выхода из строя отдельных серверов (если сервер не отвечает, выбирается другой сервер);
  • По умолчанию теперь для всех пар ключей создаётся отзывающий сертификат (revocation certificate);
  • Обеспечена возможность использования gpg-agent на платформе Windows в качестве замены Pageant для Putty;
  • Улучшен процесс создания сертификатов X.509. Обеспечена возможность экспорта сертификатов X.509 в форматы PKCS#8 и PEM для использования на серверах TLS;
  • Интегрирована функция экспорта ключей для SSH в формате для добавления в файл authorized_keys (опция "--export-ssh-key");
  • Реализована возможность добавления к существующему ключу дополнительных идентификаторов пользователей и субключей с отдельным временем жизни. Также появилась опция для отзыва идентификатора пользователя из ключа;
  • Обеспечена возможность прямого изменения времени окончания жизни первичного ключа;
  • Добавлена возможность одновременного использования нескольких кардридеров;
  • Добавлены новые опции "-f"/"--recipient-file" и "-F"/"--hidden-recipient-file" для прямой загрузки ключей шифрования из заданного файла;
  • Реализована возможность использования gpg в качестве фильтра. Добавлены опции "--import-filter" и "--export-filter", которые позволяют на лету изменять ключ без его сохранения, выдавая результат в выходной поток для дальнейшей конвейерной обработки.


Источник: http://www.opennet.ru/opennews/art.shtml?num=47090