Sequoia 1.0, o bibliotecă care implementează standardele OpenPGP

După trei ani și jumătate de dezvoltare a fost publicat editați pachetul Sequoia 1.0, dezvoltarea unei biblioteci de instrumente și funcții pentru linia de comandă cu implementarea standardului OpenPGP (RFC-4880).

Lansarea a rezumat munca pe API-ul de nivel scăzut, care implementează acoperirea standardului OpenPGP, suficient pentru o utilizare completă. Codul proiectului este scris în Rust și este distribuit sub licența GPLv2 +.

Proiectul a fost fondat de trei colaboratori GnuPG din g10code, un dezvoltator de plugin-uri GnuPG și audit de criptosisteme. Echipa Sequoia este, de asemenea, cunoscută pentru crearea serverului de chei Hagrid, care este utilizat de serviciul keys.openpgp.org.

Scopul noului proiect a fost reproiectarea arhitecturii și aplicarea de noi tehnici pentru a îmbunătăți securitatea și fiabilitatea bazei de cod.

Pentru a îmbunătăți securitatea, Sequoia folosește nu numai instrumente de programare sigur că folosesc limba Rugină, dar și protecție împotriva erorilor la nivel API.

De exemplu, API-ul nu vă permite să exportați accidental material cheie secretădeoarece, în mod implicit, operațiunile de export necesită o selecție explicită. De asemenea, API-ul asigură faptul că nu se ratează pași importanți la actualizarea unei semnături digitale; În mod implicit, timpul de creare, algoritmul de hash și emitentul semnăturii sunt actualizate automat.

Sequoia încercați, de asemenea, să scăpați de deficiențele GnuPGcum ar fi desincronizarea funcționalității instrumentelor de linie de comandă cu biblioteca de funcții (unele acțiuni pot fi efectuate numai folosind utilitarul) și cuplarea prea strânsă între componente, ceea ce face dificilă efectuarea modificărilor, ofensează baza cod și împiedică crearea unui sistem complet de unități. -teste.

Sequoia dezvoltă utilitarul liniei de comandă sq cu suport pentru subcomandă stil Git, programul sqv (înlocuitor pentru gpgv) pentru verificarea semnăturilor separate, utilitarul sqop (Stateless OpenPGP CLI) și biblioteca sequoia-openpgp.

Există legături pentru limbile C și Python. Majoritatea funcțiilor descrise în standardul OpenPGP acceptă criptarea, decriptarea, crearea și verificarea semnăturilor digitale.

Printre caracteristicile avansate, se remarcă faptul că acceptă verificarea utilizând semnături digitale furnizate separat (semnătură separată), adaptare pentru integrarea cu managerii de pachete (APT, RPM, încărcare etc.), capacitatea de a limita semnăturile prin valorile pragului și timpului.

Pentru a simplifica dezvoltarea, depanarea și analiza incidentelor, sunt furnizate instrumente de inspecție a pachetelor, care se integrează cu analizorul și vă permit să analizați vizual structura mesajelor criptate, a semnăturilor digitale și a cheilor.

Din motive de securitate, Este acceptată utilizarea serviciilor criptografice, cum ar fi coprocesoarele pentru calculul în enclave izolate. Pentru o izolare suplimentară, se practică separarea în procese separate a serviciilor care funcționează cu chei publice și private (interacțiunea proceselor este organizată utilizând protocolul Cap'n Proto). De exemplu, un depozit de chei este dezvoltat sub forma unui proces separat.

Există două opțiuni API: nivel scăzut și nivel ridicat. API-ul de nivel redus redă cât mai aproape posibil capacitățile OpenPGP și unele extensii conexe, cum ar fi suportul ECC, notarizarea (semnătura pe semnătură) și elementele proiectului viitoarei ediții a standardului.

Se observă că, în funcție de funcționalitatea planificată, Sequoia a ajuns la pregătirea pentru versiunea 1.0 acum un an, Pero dezvoltatorii au decis să nu se grăbească și să petreacă mai mult timp pentru a căuta erori și a scrie documentație completă și de înaltă calitate, cu linkuri către informații în standardul OpenPGP și exemple de utilizare.

Versiunea 1.0 acoperă până acum doar caseta sequoia-openpgp și utilitarul de verificare a semnăturii digitale sqv. CLI „sq” și API-urile de nivel înalt nu s-au stabilizat încă și sunt în curs de finalizare.

Limitările planificate pentru a fi eliminate în versiunile viitoare includ implementarea serviciilor de stocare a cheilor private și publice, suport pentru semnături digitale cu text clar și capacitatea de a utiliza expresii regulate pentru a determina semnături de încredere.


Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: Miguel Ángel Gatón
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.