Подготовлен (https://github.com/das-labor/neopg/releases/tag/v0.0.6) новый выпуск проекта NeoPG (https://neopg.io/), развивающего форк инструментария GnuPG (GNU Privacy Guard) c реализацией инструментов для шифрования данных, работы с электронными подписями, управления ключами и доступа к публичным хранилищам ключей.
Ключевым отличием NeoPG является проведение существенной чистки кода от реализаций устаревших алгоритмов, переход с языка Cи на C++11, переработка структуры исходных текстов для упрощения сопровождения и предоставление расширяемого API для разработки надстроек. Весь новый код поставляется (https://github.com/das-labor/neopg) под разрешительной лицензией BSD вместо GPLv3.
Среди изменений также выделяется переход на сборочную систему cmake, замена Libgcrypt на библиотеку Botan (https://github.com/randombit/botan), замена встроенных парсеров и кода для работы с БД на libcurl и SQLite. В NeoPG прекращён запуск длительно работающих фоновых процессов gpg-agent, dirmngr (Directory Manager) и scdaemon (Smart Card Daemon), вместо которых выполняются одноразовые вспомогательные обработчики, завершаемые сразу после выполнения задания.
Основная функциональность NeoPG реализована в форме библиотеки libneopg, которую можно использовать в сторонних приложениях. Поверх libneopg реализован интерфейс командной строки, в котором произведено объединение входящих в GnuPG разрозненных утилит (gpg, gpgsm, gpgconf, gpgv, gpgtar и т.п.) в единый исполняемый файл neopg с оформлением субкоманд в стиле Git и поддержкой цветного вывода. В рамках команды "neopg gpg2" реализована прослойка для обеспечения совместимости с GnuPG 2.
В новом выпуске улучшена совместимость с утилитой gpg2 - если gpg2 является жёсткой ссылкой на neopg, то автоматически применяется слой для обеспечения совместимости команд с GnuPG 2. Добавлена новая команда "packet dump". Обеспечена поддержка Ubuntu 18.04. Улучшена работа сборочных сценариев Cmake. Вместо boost::format задействована библиотека fmtlib. Добавлен OpenPGP парсер для хранилищ ключей.
URL: https://github.com/das-labor/neopg/releases/tag/v0.0.6
Новость: https://www.opennet.ru/opennews/art.shtml?num=50564