Sigstore kriptografa kontrola sistemo anoncita

Google anoncis la formadon de la unuaj stabilaj eldonoj de la komponantoj, kiuj formas la projekton Sigstore, kiu estas deklarita taŭga por krei funkciajn efektivigojn. Sigstore disvolvas ilojn kaj servojn por programaro-konfirmo uzante ciferecajn subskribojn kaj konservante publikan protokolo konfirmanta la aŭtentikecon de ŝanĝoj (travidebleco-protokolo). La projekto estas disvolvita sub la aŭspicioj de la neprofitcela organizo Linux Foundation fare de Google, Red Hat, Cisco, vmWare, GitHub kaj HP Enterprise kun la partopreno de la OpenSSF (Open Source Security Foundation) organizo kaj Purdue University.

Sigstore povas esti opiniita kiel analogo de Let's Encrypt por kodo, disponigante atestojn por ciferece subskribi kodon kaj ilojn por aŭtomatigi konfirmon. Kun Sigstore, programistoj povas cifere subskribi aplikaĵ-rilatajn artefaktojn kiel ekzemple eldondosieroj, ujbildoj, manifestoj kaj ruligeblaj. La subskriba materialo estas reflektita en fuŝrezista publika protokolo, kiu povas esti uzata por kontrolado kaj revizio.

Anstataŭ konstantaj ŝlosiloj, Sigstore uzas mallongdaŭrajn efemerajn ŝlosilojn, kiuj estas generitaj surbaze de akreditaĵoj konfirmitaj de OpenID Connect-provizantoj (ĉe la generado de la ŝlosiloj necesaj por krei ciferecan subskribon, la programisto identigas sin per la OpenID-provizanto ligita al retpoŝto). La aŭtentikeco de la ŝlosiloj estas kontrolita per publika centralizita protokolo, kiu ebligas kontroli, ke la aŭtoro de la subskribo estas ĝuste kiu li asertas esti, kaj la subskribo estis generita de la sama partoprenanto, kiu respondecis pri pasintaj eldonoj.

La preteco de Sigstore por efektivigo ŝuldiĝas al la formado de eldonoj de du ŝlosilaj komponentoj - Rekor 1.0 kaj Fulcio 1.0, kies programaraj interfacoj estas deklaritaj stabilaj kaj daŭre estos retrokongruaj. La servokomponentoj estas skribitaj en Go kaj distribuitaj sub la Apache 2.0 permesilo.

La Rekor-komponento enhavas protokolan efektivigon por stoki ciferece subskribitajn metadatenojn reflektantajn informojn pri projektoj. Por certigi integrecon kaj protekti kontraŭ datuma korupto post la fakto, Merkle Tree-arba strukturo estas uzata, en kiu ĉiu branĉo kontrolas ĉiujn subestajn branĉojn kaj nodojn per komuna (arba) hakado. Havante la finan haŝon, la uzanto povas kontroli la ĝustecon de la tuta historio de operacioj, same kiel la ĝustecon de la pasintaj statoj de la datumbazo (la radika kontrola hash de la nova stato de la datumbazo estas kalkulita konsiderante la pasintan staton. ). RESTful API estas provizita por kontroli kaj aldoni novajn rekordojn, kaj ankaŭ komandlinian interfacon.

La Fulcio-komponento (SigStore WebPKI) inkludas sistemon por kreado de atestadaŭtoritatoj (radikaj CAoj) kiuj emisias mallongdaŭrajn atestilojn bazitajn sur retpoŝto aŭtentikigita per OpenID Connect. La vivdaŭro de la atestilo estas 20 minutoj, dum kiuj la programisto devas havi tempon por generi ciferecan subskribon (se la atestilo poste falas en la manojn de atakanto, ĝi jam eksvalidiĝos). Aldone, la projekto disvolvas la ilaron Cosign (Container Signing), dizajnita por generi subskribojn por ujoj, kontroli subskribojn kaj meti subskribitajn ujojn en deponejoj kongruaj kun OCI (Open Container Initiative).

La efektivigo de Sigstore ebligas pliigi la sekurecon de program-distribuaj kanaloj kaj protekti kontraŭ atakoj celantaj anstataŭi bibliotekojn kaj dependecojn (provizoĉeno). Unu el la ŝlosilaj sekurecproblemoj en malfermkoda programaro estas la malfacileco kontroli la fonton de la programo kaj kontroli la konstruprocezon. Ekzemple, la plej multaj projektoj uzas haŝojn por kontroli la integrecon de eldono, sed ofte la informoj necesaj por aŭtentikigo estas stokitaj sur senprotektitaj sistemoj kaj en komunaj kodaj deponejoj, kiel rezulto de kiuj atakantoj povas endanĝerigi la dosierojn necesajn por konfirmo kaj enkonduki malicajn ŝanĝojn. sen levi suspekton.

La uzo de ciferecaj subskriboj por konfirmo de liberigo ankoraŭ ne disvastiĝis pro malfacilaĵoj en administrado de ŝlosiloj, distribuado de publikaj ŝlosiloj kaj revokado de kompromititaj ŝlosiloj. Por ke kontrolado havu sencon, estas aldone necese organizi fidindan kaj sekuran procezon por distribuado de publikaj ŝlosiloj kaj ĉeksumoj. Eĉ kun cifereca subskribo, multaj uzantoj ignoras konfirmon ĉar ili devas pasigi tempon lernante la konfirmprocezon kaj kompreni kiu ŝlosilo estas fidinda. La projekto Sigstore provas simpligi kaj aŭtomatigi ĉi tiujn procezojn provizante pretan kaj provitan solvon.

fonto: opennet.ru

Aldoni komenton