Hoppa till innehåll

47-dagarscertifikaten är på väg. Är du redo?

Agera nu →

Tidsstämplingskodsigneringscertifikat – Betydelse

Certifikat för tidsstämpling av kodsignering

Beskrivning

LÃ¥t oss kortfattat diskutera kodsignering.

Kodsignering är en metod för att sätta en digital signatur pÃ¥ en fil, ett dokument, en programvara eller en körbar fil för att testa dess äktheten och äkthet vad gäller funktionalitet och egenskaper som den tillhandahÃ¥ller. Detta säkerställer ocksÃ¥ att programvaruenheten (fil, dokument, programvara eller körbar fil) inte manipuleras under transport.
Kodsignering har blivit ett väsentligt krav för mjukvaruutvecklare. Anledningen är att kodsignering säkerställer förtroende bland användare för programvaran, och ger också användarna förtroende för att undvika varningsmeddelanden som visas när en användare laddar ner/installerar den körbara filen i sin miljö.

Vad är tidsstämpling?

Tidsstämpling är en valfri del av kodsigneringsprocessen, vilket gör att programvara kan känna igen om en tillämpad kodsigneringssignatur är giltig – även efter att ett kodsigneringscertifikat har löpt ut. Med andra ord kan vi säga att tidsstämpling bevarar signaturen som tillämpats på programvaran.
Närhelst den signerade programvarans körbara fil körs/exekveras på en klientmaskin/ett klientsystem verifieras dess digitala signatur av användarens operativsystem. Anta nu att användaren har tidsstämplat programvaran. Användarens dator kommer att verifiera signaturen baserat på den tidpunkt då den signerades digitalt, snarare än systemets aktuella tidpunkt när programvaran körs.

Nedan följer arbetsflödet för en tidsstämplingsprocess:

arbetsflöde för tidsstämplingsprocessen

Tidsstämpling tillhandahålls av Time Stamp Authority (TSA) som använder principer och teknik för Public Key Infrastructure (PKI) för att tillämpa tidsstämplar.

Lösning för företagskodsignering

Få en lösning för alla dina behov av kodsignering och kryptografi för mjukvara med vår kodsigneringslösning.

Följande steg utförs med Time Stamp-programvaran:

  1. Ett hashat värde skapas och skickas till TSA av den som begär programvaran som behöver tidsstämplas.
  2. Hashvärde, auktoritativ tid och annan relaterad information såsom data och tid för den digitala signaturen kombineras av TSA och signeras med dess privata nyckel för att skapa ett nytt hashvärde.
  3. Därefter paketeras den nya hashen och programvarans hash och skickas till den som begär det.
  4. En begärande applikation tar sedan emot paketet och verifierar det. När verifieringen är klar blir tidsstämpeln giltig och inbäddad i programvarans kodsignatur.

Låt oss försöka förstå detta utifrån ett verkligt scenario.
Låt oss anta att du är utvecklaren, att du har kodsignerat din programvara och att certifikatet är giltigt från januari 2021 till januari 2022. Nu glömmer en användare som laddar ner din programvara i oktober 2021 att installera den på grund av sitt hektiska schema. Han försöker installera programvaran i februari 2022, men får ett felmeddelande.

Låt oss förstå samma scenario med det enda undantaget att du har tidsstämplat programvaran i juli 2021. När användaren nu försöker installera programvaran i februari 2022 kan hen installera den utan att få något felmeddelande alls. Detta är effekten av tidsstämpling!!

Protokoll som används vid tidsstämpling

Följande protokoll används i tidsstämplingsprogramvara:

RFC 3161

RFC 3161 har uppdaterats och betecknats som RFC 5035, vilket dessutom tillåter användning av ESSCertIDv2.

Microsoft Autenticode

Microsoft Authenticode kan användas i olika format som .cab, .exe, .ocx och .dll.

Bästa praxis för tidsstämpling av kodsignering

Följande bästa praxis kan anpassas medan tidsstämpling av kodsignering utförs:

  1. Se alltid till att tidsstämplingsalternativet är aktiverat i ditt signeringsverktyg, till exempel Microsoft Signtool. Välj också ett signeringsverktyg som stöder tidsstämplingsalternativet eftersom det är en valfri funktion som standard.
  2. Se till att tidsstämpling ingår som en del av din programvaruutvecklingslivscykel. Detta undviker oväntade problem på grund av versionsöverensstämmelser.
  3. Dokumentera hela processen för ditt signeringsverktyg när du använder tidsstämplingsalternativet, eftersom varje signeringsverktyg har ett unikt arbetsflöde för tidsstämpling. Distribuera även detta dokument till alla intressenter som är involverade i kodsigneringsprocessen.
  4. Tidsstämpling gör det möjligt för klientsystemet att verifiera om programvaran signerades före eller efter att koden Ã¥terkallades undertecknande av certifikatSÃ¥ om du vill Ã¥terkalla kodsigneringscertifikatet av nÃ¥gon anledning, till exempel genom att den privata nyckeln komprometteras, kan du göra det. Klientsystemet kommer inte att ha nÃ¥gra problem med att installera programvaran, eftersom tidsstämplingen gjordes när kodsigneringscertifikatet var giltigt.

Slutsats

Tidsstämpling verkar vara ett valfritt steg, medan det är en viktig del av kodsigneringsekosystemet i din organisation. Utan tidsstämpling skulle utgången/återkallelsen av kodsigneringscertifikat minska kundernas förtroende för samma programvaruprodukt. Tidsstämplar säkerställer att även om certifikat förlorar sin giltighet eller återkallas av någon anledning, förblir deras signaturer giltiga, säkra och pålitliga.