Sigstore kriptografski sistem verifikacije najavljen

Google je najavio formiranje prvih stabilnih izdanja komponenti koje čine projekat Sigstore, koji je proglašen pogodnim za kreiranje radnih implementacija. Sigstore razvija alate i usluge za verifikaciju softvera korišćenjem digitalnih potpisa i vođenjem javnog dnevnika koji potvrđuje autentičnost promena (transparentnost dnevnika). Projekat se razvija pod pokroviteljstvom neprofitne organizacije Linux Foundation by Google, Red Hat, Cisco, vmWare, GitHub i HP Enterprise uz učešće organizacije OpenSSF (Open Source Security Foundation) i Univerziteta Purdue.

Sigstore se može smatrati analogom Let's Encrypt for code, koji pruža certifikate za digitalno potpisivanje koda i alate za automatizaciju verifikacije. Uz Sigstore, programeri mogu digitalno potpisati artefakte vezane za aplikacije kao što su datoteke izdanja, slike kontejnera, manifesti i izvršni fajlovi. Potpisni materijal se ogleda u javnom dnevniku zaštićenom od neovlaštenog pristupa koji se može koristiti za verifikaciju i reviziju.

Umjesto trajnih ključeva, Sigstore koristi kratkotrajne efemerne ključeve, koji se generiraju na osnovu vjerodajnica koje su potvrdili OpenID Connect provajderi (u vrijeme generiranja ključeva potrebnih za kreiranje digitalnog potpisa, programer se identifikuje preko OpenID provajdera koji je povezan sa email). Autentičnost ključeva se provjerava korištenjem javnog centraliziranog dnevnika, koji omogućava provjeru da je autor potpisa upravo onaj za koga se tvrdi da je, a potpis je generirao isti učesnik koji je bio odgovoran za prošla izdanja.

Sigstoreova spremnost za implementaciju je zbog formiranja izdanja dvije ključne komponente - Rekor 1.0 i Fulcio 1.0, čiji su softverski interfejsi proglašeni stabilnim i nastaviće da budu kompatibilni sa prethodnim verzijama. Komponente usluge su napisane u Go i distribuirane pod licencom Apache 2.0.

Komponenta Rekor sadrži implementaciju dnevnika za pohranjivanje digitalno potpisanih metapodataka koji odražavaju informacije o projektima. Da bi se osigurao integritet i zaštita od oštećenja podataka nakon činjenice, koristi se struktura stabla Merkle Tree, u kojoj svaka grana provjerava sve osnovne grane i čvorove putem zajedničkog (stabla) heširanja. Imajući konačni hash, korisnik može provjeriti ispravnost cjelokupne historije operacija, kao i ispravnost prošlih stanja baze podataka (heš provjere korijena novog stanja baze podataka izračunava se uzimajući u obzir prošlo stanje ). Omogućen je RESTful API kao i interfejs komandne linije za provjeru i dodavanje novih unosa.

Fulcio komponenta (SigStore WebPKI) uključuje sistem za kreiranje certifikacijskih tijela (root CA) koji izdaju kratkotrajne certifikate na osnovu e-pošte autentificirane putem OpenID Connect-a. Životni vek sertifikata je 20 minuta, tokom kojih programer mora imati vremena da generiše digitalni potpis (ako sertifikat kasnije padne u ruke napadača, on će već biti istekao). Pored toga, projekat razvija komplet alata Cosign (Potpisivanje kontejnera), dizajniran za generisanje potpisa za kontejnere, provjeru potpisa i postavljanje potpisanih kontejnera u spremišta kompatibilna sa OCI (Open Container Initiative).

Implementacija Sigstore-a omogućava povećanje sigurnosti kanala distribucije programa i zaštitu od napada koji imaju za cilj zamjenu biblioteka i ovisnosti (lanca nabave). Jedan od ključnih sigurnosnih problema u softveru otvorenog koda je teškoća provjere izvora programa i provjere procesa izrade. Na primjer, većina projekata koristi hashove za provjeru integriteta izdanja, ali često se informacije potrebne za autentifikaciju pohranjuju na nezaštićenim sistemima iu zajedničkim spremištima koda, zbog čega napadači mogu ugroziti datoteke potrebne za verifikaciju i unijeti zlonamjerne promjene bez izazivanja sumnje.

Upotreba digitalnih potpisa za verifikaciju izdanja još nije postala široko rasprostranjena zbog poteškoća u upravljanju ključevima, distribuciji javnih ključeva i opozivanju kompromitovanih ključeva. Da bi verifikacija imala smisla, dodatno je potrebno organizovati pouzdan i siguran proces distribucije javnih ključeva i kontrolnih suma. Čak i sa digitalnim potpisom, mnogi korisnici zanemaruju verifikaciju jer moraju provesti vrijeme učeći proces verifikacije i razumjeti koji ključ je pouzdan. Projekt Sigstore pokušava pojednostaviti i automatizirati ove procese pružanjem gotovog i provjerenog rješenja.

izvor: opennet.ru

Dodajte komentar