De vigtigste forskelle ved NeoPG er den betydelige oprydning af koden fra implementeringer af forældede algoritmer, overgangen fra C-sproget til C++11, behandlingen af kildetekststrukturen for at forenkle vedligeholdelsen og tilvejebringelsen af en udvidelig API til udviklingen af tilføjelser. Helt ny kode
Blandt ændringerne er overgangen til cmake assembly-systemet og udskiftningen af Libgcrypt med biblioteket
Kernefunktionaliteten i NeoPG er implementeret i form af libneopg-biblioteket, som kan bruges i tredjepartsapplikationer. En kommandolinjegrænseflade er implementeret oven på libneopg, som kombinerer de forskellige hjælpeprogrammer inkluderet i GnuPG (gpg, gpgsm, gpgconf, gpgv, gpgtar osv.) til en enkelt neopg eksekverbar fil med Git-stil underkommandoer og understøttelse af farveoutput. Et lag er blevet implementeret i kommandoen "neopg gpg2" for at sikre kompatibilitet med GnuPG 2.
Den nye udgivelse har forbedret kompatibilitet med gpg2-værktøjet - hvis gpg2 er et hårdt link til neopg, påføres et lag automatisk for at sikre kommandokompatibilitet med GnuPG 2. En ny "pakkedump"-kommando er blevet tilføjet. Der tilbydes support til Ubuntu 18.04. Forbedret ydeevne af Cmake build scripts. I stedet for boost::format bruges fmtlib-biblioteket. Tilføjet OpenPGP-parser til nøglelagre.
Kilde: opennet.ru