Ang pangunahing pagkakaiba ng NeoPG ay ang makabuluhang paglilinis ng code mula sa mga pagpapatupad ng hindi napapanahong mga algorithm, ang paglipat mula sa wikang C tungo sa C++11, ang pagpoproseso ng istraktura ng pinagmulang teksto upang pasimplehin ang pagpapanatili at ang pagbibigay ng isang napapalawak na API para sa pagbuo. ng mga add-on. Lahat ng bagong code
Kabilang sa mga pagbabago, ang paglipat sa cmake assembly system at ang pagpapalit ng Libgcrypt sa library
Ang pangunahing functionality ng NeoPG ay ipinatupad sa anyo ng libneopg library, na maaaring magamit sa mga third-party na application. Ipinapatupad ang isang interface ng command line sa ibabaw ng libneopg, na pinagsasama ang magkakaibang mga utility na kasama sa GnuPG (gpg, gpgsm, gpgconf, gpgv, gpgtar, atbp.) sa isang solong neopg executable na file na may mga istilong Git na subcommand at suporta para sa output ng kulay. Ang isang layer ay ipinatupad sa loob ng command na "neopg gpg2" upang matiyak ang pagiging tugma sa GnuPG 2.
Ang bagong release ay pinahusay na compatibility sa gpg2 utility - kung ang gpg2 ay isang hard link sa neopg, isang layer ay awtomatikong inilalapat upang matiyak ang command compatibility sa GnuPG 2. Ang isang bagong "packet dump" command ay naidagdag. Ang suporta para sa Ubuntu 18.04 ay ibinigay. Pinahusay na pagganap ng Cmake build script. Sa halip na boost::format, ginagamit ang fmtlib library. Nagdagdag ng OpenPGP parser para sa mga keystore.
Pinagmulan: opennet.ru