Sequoia 1.0, bibliotēka, kas ievieš OpenPGP standartus

Pēc trīsarpus gadu izstrādes tika izlaista Sequoia 1.0 izdevuma pakotne , kas izstrādāja funkciju bibliotēku un komandrindas rīkus, ieviešot OpenPGP standartu (RFC-4880).

Laidienā tika apkopots darbs pie zemā līmeņa API , kas ievieš OpenPGP standarta pārklājumu, kas ir pietiekams pilnīgai lietošanai. Projekta kods ir rakstīts Rust valodā un izplatīts saskaņā ar GPLv2+ licenci.

Projektu dibināja trīs GnuPG līdzstrādnieki no g10code, GnuPG spraudņu izstrādātāja un kriptosistēmu audita firmas. Sequoia komanda ir pazīstama arī ar Hagrid atslēgu servera izveidi, ko izmanto keys.openpgp.org pakalpojums.

Jaunā projekta mērķis bija pārveidot arhitektūru un pielietot jaunas metodes, lai uzlabotu koda bāzes drošību un uzticamību.

Lai uzlabotu drošību, Sequoia izmanto ne tikai drošus programmēšanas rīkus , kas izmanto Rust valodu, bet arī API līmeņa kļūdu aizsardzību.

Piemēram, API neļauj nejauši eksportēt slepenās atslēgas materiālu , jo eksportēšanas darbībām pēc noklusējuma ir nepieciešama skaidra atlase. Līdzīgi API nodrošina, ka, atjauninot digitālo parakstu, netiek palaistas garām nevienas svarīgas darbības; pēc noklusējuma izveides laiks, jaucējkodolgoritms un paraksta izdevējs tiek atjaunināti automātiski.

Sequoia arī cenšas atbrīvoties no GnuPG trūkumiem , piemēram, komandrindas rīku funkcionalitātes desinhronizācijas ar funkciju bibliotēku (dažas darbības var veikt tikai, izmantojot utilītu) un pārāk ciešās sasaistes starp komponentiem, kas apgrūtina izmaiņu veikšanu, apmulsina koda bāzi un neļauj izveidot pilnīgu vienības testēšanas sistēmu.

Sequoia izstrādā komandrindas utilītu sq ar Git stila apakškomandu atbalstu , sqv programmu (gpgv aizstājēju) atsevišķu parakstu pārbaudei, sqop utilītu (bezvalstnieku OpenPGP CLI) un sequoia-openpgp bibliotēku.

Ir saites C un Python valodām. Lielākā daļa OpenPGP standartā aprakstīto funkciju ir saderīgas ar ciparparakstu šifrēšanu, atšifrēšanu, izveidošanu un pārbaudi.

Starp uzlabotajām funkcijām tiek atzīmēts, ka tā atbalsta pārbaudi, izmantojot digitālos parakstus, kas tiek piegādāti atsevišķi (atsevišķs paraksts), pielāgošanu integrācijai ar pakotņu pārvaldniekiem (APT, RPM, augšupielāde utt.), Iespēju ierobežot parakstus ar slieksni un laika vērtībām.

Lai vienkāršotu izstrādi, atkļūdošanu un incidentu analīzi, tiek piedāvāti pakešu pārbaudes rīki, kas integrējas ar analizatoru un ļauj vizuāli analizēt šifrētu ziņojumu, digitālo parakstu un atslēgu struktūru.

Drošības apsvērumu dēļ ir atļauts izmantot kriptogrāfiskos pakalpojumus, piemēram, kopprocesorus skaitļošanai izolētās enklāvās. Lai nodrošinātu papildu izolāciju, pakalpojumi, kas strādā ar publiskajām un privātajām atslēgām, tiek sadalīti atsevišķos procesos (procesu mijiedarbība tiek organizēta, izmantojot Cap'n Proto protokolu). Piemēram, atslēgu krātuve tiek ieviesta kā atsevišķs process.

Ir divas API iespējas: zema līmeņa un augsta līmeņa. Zema līmeņa API pēc iespējas precīzāk atkārto OpenPGP un dažu saistīto paplašinājumu iespējas, piemēram, ECC atbalstu, notariālu apliecinājumu (paraksts uz paraksta) un elementus no standarta nākamās versijas melnraksta.

Tiek novērots, ka saskaņā ar plānoto funkcionalitāti Sequoia sasniedza gatavību 1.0 versijai pirms gada, taču izstrādātāji nolēma nesteigties un tā vietā vairāk laika veltīt kļūdu meklēšanai un pilnīgas, augstas kvalitātes dokumentācijas rakstīšanai ar saitēm uz informāciju OpenPGP standartā un lietošanas piemēriem.

1.0 versija pašlaik aptver tikai sequoia-openpgp lodziņu un sqv digitālā paraksta verifikācijas utilītu. "sq" komandrindas saskarne un augsta līmeņa API joprojām tiek pabeigtas un vēl nav stabilizētas.

Ierobežojumi, kurus plānots noņemt nākamajos laidienos, ietver pakalpojumu ieviešanu privāto un publisko atslēgu glabāšanai, skaidru teksta digitālo parakstu atbalstu un spēju izmantot regulāras izteiksmes uzticamu parakstu noteikšanai.


Pievienot kā vēlamo avotu pakalpojumā Google