U njoftua sistemi i verifikimit kriptografik Sigstore

Google njoftoi formimin e lëshimeve të para të qëndrueshme të komponentëve që formojnë projektin Sigstore, i cili është shpallur i përshtatshëm për krijimin e zbatimeve të punës. Sigstore zhvillon mjete dhe shërbime për verifikimin e softuerit duke përdorur nënshkrime dixhitale dhe duke mbajtur një regjistër publik që konfirmon vërtetësinë e ndryshimeve (regjistri i transparencës). Projekti po zhvillohet nën kujdesin e organizatës jofitimprurëse Linux Foundation nga Google, Red Hat, Cisco, vmWare, GitHub dhe HP Enterprise me pjesëmarrjen e organizatës OpenSSF (Open Source Security Foundation) dhe Universitetit Purdue.

Sigstore mund të konsiderohet si një analog i Let's Encrypt për kodin, duke ofruar certifikata për nënshkrimin dixhital të kodit dhe mjete për automatizimin e verifikimit. Me Sigstore, zhvilluesit mund të nënshkruajnë në mënyrë dixhitale objekte të lidhura me aplikacionin, si skedarët e lëshimit, imazhet e kontejnerëve, manifestet dhe ekzekutuesit. Materiali i nënshkrimit pasqyrohet në një regjistër publik të rezistuar nga manipulimet që mund të përdoret për verifikim dhe auditim.

Në vend të çelësave të përhershëm, Sigstore përdor çelësa kalimtarë jetëshkurtër, të cilët krijohen bazuar në kredencialet e konfirmuara nga ofruesit e OpenID Connect (në momentin e gjenerimit të çelësave të nevojshëm për të krijuar një nënshkrim dixhital, zhvilluesi identifikohet përmes ofruesit OpenID të lidhur me një email). Vërtetësia e çelësave verifikohet duke përdorur një regjistër të centralizuar publik, i cili bën të mundur verifikimin që autori i nënshkrimit është pikërisht ai që pretendon të jetë, dhe nënshkrimi u krijua nga i njëjti pjesëmarrës që ishte përgjegjës për publikimet e kaluara.

Gatishmëria e Sigstore për zbatim është për shkak të formimit të lëshimeve të dy komponentëve kryesorë - Rekor 1.0 dhe Fulcio 1.0, ndërfaqet softuerike të të cilave janë deklaruar të qëndrueshme dhe do të vazhdojnë të jenë të pajtueshme me prapavijën. Komponentët e shërbimit janë shkruar në Go dhe shpërndahen nën licencën Apache 2.0.

Komponenti Rekor përmban një zbatim regjistri për ruajtjen e meta të dhënave të nënshkruara dixhitale që pasqyrojnë informacione rreth projekteve. Për të siguruar integritetin dhe për të mbrojtur kundër korrupsionit retrospektiv të të dhënave, përdoret një strukturë peme Merkle Tree, në të cilën secila degë verifikon të gjitha degët dhe nyjet themelore përmes hashimit të përbashkët (pemë). Duke pasur hash-in përfundimtar, përdoruesi mund të verifikojë korrektësinë e të gjithë historisë së operacioneve, si dhe korrektësinë e gjendjeve të kaluara të bazës së të dhënave (hash-i i verifikimit rrënjësor i gjendjes së re të bazës së të dhënave llogaritet duke marrë parasysh gjendjen e kaluar ). Ofrohet një API RESTful si dhe një ndërfaqe e linjës së komandës për verifikimin dhe shtimin e hyrjeve të reja.

Komponenti Fulcio (SigStore WebPKI) përfshin një sistem për krijimin e autoriteteve certifikuese (root CA) që lëshojnë certifikata jetëshkurtër bazuar në email të vërtetuar përmes OpenID Connect. Jetëgjatësia e certifikatës është 20 minuta, gjatë së cilës zhvilluesi duhet të ketë kohë për të gjeneruar një nënshkrim dixhital (nëse certifikata më vonë bie në duart e një sulmuesi, ajo tashmë do të ketë skaduar). Për më tepër, projekti po zhvillon paketën e veglave Cosign (Nënshkrimi i kontejnerëve), i projektuar për të gjeneruar nënshkrime për kontejnerë, për të verifikuar nënshkrimet dhe për të vendosur kontejnerë të nënshkruar në depo të pajtueshme me OCI (Iniciativa e Kontejnerëve të Hapur).

Zbatimi i Sigstore bën të mundur rritjen e sigurisë së kanaleve të shpërndarjes së programeve dhe mbrojtjen nga sulmet që synojnë zëvendësimin e bibliotekave dhe varësive (zinxhiri i furnizimit). Një nga problemet kryesore të sigurisë në softuerin me burim të hapur është vështirësia e verifikimit të burimit të programit dhe verifikimi i procesit të ndërtimit. Për shembull, shumica e projekteve përdorin hash për të verifikuar integritetin e një versioni, por shpesh informacioni i nevojshëm për vërtetimin ruhet në sisteme të pambrojtura dhe në depo kodesh të përbashkëta, si rezultat i të cilave sulmuesit mund të komprometojnë skedarët e nevojshëm për verifikim dhe të sjellin ndryshime me qëllim të keq. pa ngjallur dyshime.

Përdorimi i nënshkrimeve dixhitale për verifikimin e lëshimit nuk është bërë ende i përhapur për shkak të vështirësive në menaxhimin e çelësave, shpërndarjen e çelësave publikë dhe revokimin e çelësave të komprometuar. Në mënyrë që verifikimi të ketë kuptim, është gjithashtu e nevojshme të organizohet një proces i besueshëm dhe i sigurt për shpërndarjen e çelësave publikë dhe shumave të kontrollit. Edhe me një nënshkrim dixhital, shumë përdorues e injorojnë verifikimin sepse duhet të shpenzojnë kohë për të mësuar procesin e verifikimit dhe për të kuptuar se cili çelës është i besueshëm. Projekti Sigstore përpiqet të thjeshtojë dhe automatizojë këto procese duke ofruar një zgjidhje të gatshme dhe të provuar.

Burimi: opennet.ru

Shto një koment