Red Hat och Google har presenterat Sigstore, en tjänst för kryptografisk verifiering av kod

Företagen Red Hat och Google, tillsammans med Purdue University, har grundat projektet Sigstore, som syftar till att skapa verktyg och tjänster för verifiering av programvara genom digitala signaturer och för att upprätta en offentlig logg för att bekräfta äktheten (transparency log). Projektet kommer att utvecklas under ledning av den ideella organisationen Linux Foundation.

Det föreslagna projektet kommer att öka säkerheten för distributionskanaler för program och skydda mot attacker som syftar till att manipulera programkomponenter och beroenden (supply chain). Ett av de centrala säkerhetsproblemen i öppen källkod är svårigheten att verifiera källan till programmet och att kontrollera byggprocessen. Till exempel, för att kontrollera integriteten hos en release använder de flesta projekt hashvärden, men ofta lagras den nödvändiga informationen för autenticitet på oskyddade system och i offentliga kodförråd, vilket innebär att angripare kan manipulera de filer som behövs för verifiering och utan att väcka misstankar införa skadliga förändringar.

Endast en liten del av projekten använder digitala signaturer vid distribution av releases på grund av svårigheterna med hantering av nycklar, distribution av offentliga nycklar och återkallande av komprometterade nycklar. För att verifieringen ska vara meningsfull krävs det också att man organiserar en pålitlig och säker process för distribution av offentliga nycklar och kontrollsumme. Även med en digital signatur ignorerar många användare verifieringen, eftersom det krävs tid för att sätta sig in i verifieringsprocessen och förstå vilken nyckel som är värd att lita på.

Sigstore presenteras som en analog till Let’s Encrypt för kod, som erbjuder certifikat för att intyga kod med digitala signaturer och verktyg för att automatisera verifieringen. Med hjälp av Sigstore kan utvecklare skapa digitala signaturer för applikationsrelaterade artefakter, såsom releasefiler, containerbilder, manifester och körfiler. En unik aspekt av Sigstore är att det material som används för signering återspeglas i en oföränderlig offentlig logg, som kan användas för verifiering och granskning.

Istället för permanenta nycklar används kortlivade, tillfälliga nycklar i Sigstore, som genereras baserat på behörigheter bekräftade av OpenID Connect-leverantörer (vid generation av nycklar för digital signatur identifierar utvecklaren sig via OpenID-leverantören kopplad till e-post). Äktheten av nycklarna kontrolleras genom en offentlig central logg, som gör det möjligt att säkerställa att signaturens avsändare verkligen är den som han utger sig för att vara och att signaturen har skapats av samma deltagare som var ansvarig för tidigare utgåvor.

Sigstore erbjuder både en färdig tjänst som redan kan användas och en uppsättning verktyg för att implementera liknande tjänster på egen hårdvara. Tjänsten är gratis för alla utvecklare och programvaruleverantörer och är implementerad på en neutral plattform - Linux Foundation. Alla komponenter av tjänsten är öppna, skrivna i Go och distribueras under Apache 2.0-licensen.

Bland de utvecklade komponenterna kan nämnas:

  • Rekor - en loggimplementation för lagring av metadata som är verifierad med digitala signaturer, vilket återspeglar information om projekten. För att säkerställa integritet och skydd mot manipulation av data i efterhand används en trästruktur, "Merkle-träd", där varje gren verifierar alla underliggande grenar och noder genom gemensam (träliknande) hashning. Med en slutlig hash kan användaren försäkra sig om att hela operationens historia är korrekt, såväl som tidigare tillstånd av databasen (den rotverifierande hashen av det nya tillståndet beräknas med hänsyn till det tidigare tillståndet). För verifiering och tillägg av nya poster erbjuds ett Restful API samt ett kommandoradsgränssnitt.
  • Fulcio (SigStore WebPKI) - ett system för att skapa certifikatutfärdare (Root-CA) som utfärdar kortlivade certifikat baserat på e-post som autentiserats via OpenID Connect. Certifikatets livslängd är 20 minuter, under vilket tid utvecklaren måste hinna skapa en digital signatur (om certifikatet senare hamnar i fel händer, kommer det att vara utgånget).
  • Cosign (Container Signing) - ett verktyg för att skapa signaturer för containrar, verifiera signaturer och placera signerade containrar i OCI-kompatibla återförsäljare (Open Container Initiative).

Källa: opennet.ru

Köp pålitlig webbhotell med DDoS-skydd, VPS VDS-servrar 🔥 Köp pålitlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster