Ключевыми отличиями NeoPG является проведение существенной чистки кода от реализаций устаревших алгоритмов, переход с языка Cи на C++11, переработка структуры исходных текстов для упрощения сопровождения и предоставление расширяемого API для разработки надстроек. Весь новый код
Среди изменений также выделяется переход на сборочную систему cmake, замена Libgcrypt на библиотеку
Основная функциональность 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 парсер для хранилищ ключей.
Источник: opennet.ru