- Key Takeaways
- Vad är betrodd tidsstämpling?
- Hur fungerar betrodd tidsstämpling?
- Varför betrodd tidsstämpling är viktig för kodsignering
- Tidsstämpling och återkallelse
- Standarder bakom betrodd tidsstämpling
- Vanliga användningsområden för betrodd tidsstämpling
- Hur krypteringskonsulting hjälper
- Vanliga frågor om partihandel med mat och dryck
- Håll dina signaturer betrodda med CodeSign Secure
Betrodd tidsstämpling är en kryptografisk process som bevisar att en dataenhet existerade vid en specifik tidpunkt. En betrodd tidsstämplingsauktoritet (TSA) tar en hash av informationen, lägger till ett korrekt tidsvärde och signerar de två tillsammans med sitt eget certifikat. Vid kodsignering håller tidsstämpling en signatur giltig även efter att signeringscertifikatet har löpt ut.
Betrodd tidsstämpling är ett sätt att kryptografiskt bevisa att specifik data existerade vid en specifik tidpunkt och att den inte har ändrats sedan dess. En betrodd tredje part som kallas en Timestamping Authority (TSA) signerar en hash av informationen tillsammans med aktuell tid. Vid kodsignering är det detta som gör att signerad programvara förblir betrodd långt efter att signeringscertifikatet har löpt ut.
Key Takeaways
- Tillförlitlig tidsstämpling bevisar att data existerade vid en viss tidpunkt och inte har ändrats sedan dess, med hjälp av en betrodd tredje part (en TSA).
- TSA signerar en hash av data plus ett korrekt tidsvärde; den ser aldrig de faktiska data, bara hashen.
- Kärnstandarden är RFC 3161 (Time-Stamp Protocol), som definierar hur tidsstämpelförfrågningar och tokens fungerar.
- Vid kodsignering låter en tidsstämpel en signatur förbli giltig efter att signeringscertifikatet har löpt ut eller återkallats, eftersom verifierare kan bekräfta att koden signerades medan certifikatet fortfarande var giltigt.
- Utan tidsstämpling skulle all din signerade programvara i praktiken sluta vara betrodd den dag då dess signeringscertifikat löpte ut.
Vad är betrodd tidsstämpling?
Betrodd tidsstämpling är en mekanism som binder data till en specifik tidpunkt på ett sätt som kan verifieras oberoende och inte kan förfalskas. Den besvarar två frågor samtidigt: existerade exakt dessa data vid denna tidpunkt, och har de förändrats sedan dess? Den "betrodda" delen kommer från användningen av en oberoende tredje part, en Timestamping Authority (TSA), vars signatur garanterar tiden. Eftersom TSA är betrodd och dess klocka är korrekt och granskningsbar, är dess tidsstämpel mycket mer trovärdig än ett datum som en användare helt enkelt kan ställa in på sin egen dator.
Viktigt är att TSA aldrig tar emot själva informationen. Endast en kryptografisk hash (ett fingeravtryck med fast storlek) av informationen skickas till den. Detta skyddar innehållets sekretess samtidigt som TSA kan certifiera exakt när innehållet existerade, eftersom hashen unikt representerar informationen utan att avslöja den.
Hur fungerar betrodd tidsstämpling?
Processen följer Time-Stamp Protocol som definieras i RFC 3161. På en övergripande nivå:
- Hasha data: Klienten beräknar en kryptografisk hash (till exempel SHA-256) av de data som ska tidsstämplas. Själva informationen lämnar aldrig klienten.
- Skicka hashen till TSAKlienten skickar endast hashen till tidsstämpelmyndigheten som en tidsstämpelbegäran.
- TSA lägger till tiden och skyltarna: TSA kombinerar den mottagna hashen med den aktuella, korrekta tiden och signerar den kombinationen med sin egen privata nyckel, vilket producerar en tidsstämpeltoken.
- Returnera tidsstämpeltoken: TSA returnerar den signerade tidsstämpeltoken, som är kopplad till data eller signatur. Vem som helst kan senare verifiera den med hjälp av TSA:s offentliga certifikat.
För att verifiera en tidsstämpel hashar en part informationen på nytt, kontrollerar att den matchar hashen inuti token och validerar TSA:s signatur på token. Om båda checkar ut kan informationen bevisligen existera i den formen vid tidpunkten då TSA registrerade den och har inte ändrats sedan dess.
Varför betrodd tidsstämpling är viktig för kodsignering
Tidsstämpling är inte bara en bra sak vid kodsignering; det är viktigt, och anledningen är att certifikatet har löpt ut. När en utvecklare signerar programvara använder de ett kodsigneringscertifikat som bara är giltigt under en begränsad period. Utan en tidsstämpel är signaturen bara betrodd så länge certifikatet är giltigt. I det ögonblick certifikatet löper ut (eller återkallas) kommer all programvara som signerats med det att upphöra att vara betrodd, även programvara som signerades helt legitimt flera år tidigare.
En betrodd tidsstämpel löser detta. Genom att tidsstämpla signaturen vid signeringsögonblicket skapar du ett hållbart bevis på att koden signerades medan certifikatet fortfarande var giltigt. Verifierare (som operativsystem) kan sedan fortsätta att lita på signaturen långt efter att certifikatet har löpt ut, eftersom de kan se att den signerades under certifikatets giltighetstid. Kort sagt:
Kärnfördelen med kodsignering
- Utan tidsstämpling: en signatur är endast betrodd tills signeringscertifikatet löper ut. Därefter flaggas programvaran som obetrodd, även om inget är fel med den.
- Med tidsstämpling: signaturen förblir betrodd långt efter certifikatets utgångsdatum, eftersom en betrodd tredje part har bevisat att koden signerades medan certifikatet var giltigt.
Det är därför tidsstämpling anses vara en bästa praxis (och i praktiken krävs) för kodsignering i produktion: det låter dig distribuera programvara med en lång, stabil förtroendelivslängd istället för en som bryts vid certifikatets utgångsdatum.
Tidsstämpling och återkallelse
Tidsstämpling interagerar också med återkallelse av certifikat. Om ett kodsigneringscertifikat måste återkallas (till exempel för att dess privata nyckel har komprometterats) träder återkallelsen vanligtvis i kraft från ett visst datum. En betrodd tidsstämpel låter verifierare skilja på programvara som signerades före komprometteringen från programvara som signerades efter den. Signaturer som gjorts och tidsstämplats före återkallningsdatumet kan fortfarande respekteras, medan de som gjorts efteråt korrekt avvisas. Utan en tidsstämpel finns det inget tillförlitligt sätt att avgöra när signeringen skedde, så förtroende blir allt-eller-inget.
Standarder bakom betrodd tidsstämpling
Tillförlitlig tidsstämpling är väl standardiserad, vilket gör den kompatibel mellan verktyg och plattformar:
| Standard | Vad det definierar |
|---|---|
| RFC 3161 | Time-Stamp Protocol (TSP): formatet för tidsstämpelförfrågningar och signerade tidsstämpeltokens mellan en klient och en TSA. |
| RFC 5816 / ESSCertIDv2 | Uppdateringar som tillåter starkare hashalgoritmer (som SHA-256) i tidsstämpeltokens signeringscertifikatidentifierare. |
| RFC 3628 | Policykrav för driften av en tidsstämplingsmyndighet. |
| Authenticode-tidsstämpling | Microsofts tidsstämpelmekanismer för kodsignering (både äldre och RFC 3161-baserade) som används för körbara Windows-filer. |
Vanliga användningsområden för betrodd tidsstämpling
- Kodsignering: Att hålla signerad programvara, drivrutiner och firmware tillförlitliga långt efter att signeringscertifikatet har löpt ut. Detta är den viktigaste användningen.
- Digitala signaturer på dokument: Att bevisa att ett dokument eller avtal existerade och undertecknades vid en specifik tidpunkt, vilket stöder oavvislighet och rättslig giltighet.
- Långsiktig arkivering: Tidsstämplar möjliggör långsiktig validering (LTV), så att signaturer förblir verifierbara år senare för arkiverings- och revisionsändamål.
- Efterlevnad och bevis: Att visa att data (såsom bevis, register eller immateriella rättigheter) existerade i en viss form vid en viss tidpunkt.
Hur krypteringskonsulting hjälper
Tillförlitlig tidsstämpling är en inbyggd del av att utföra korrekt kodsignering, och Encryption Consultings CodeSign Secure- plattform gör det sömlöst. CodeSign Secure säkrar dina signeringsnycklar (i en HSM ), automatiserar signering över dina byggpipelines och tillämpar tillförlitliga RFC 3161-tidsstämplar så att din programvara förblir tillförlitlig långt efter certifikatets utgång, med fullständig certifikathantering, policytillämpning och revisionsloggar. Med stöd av ISO/IEC 27001:2022- och SOC 2-certifierade metoder hjälper det dig att signera i stor skala utan risk för att signaturer löper ut eller att nycklar hanteras felaktigt.
Vanliga frågor om partihandel med mat och dryck
Vad är betrodd tidsstämpling?
Betrodd tidsstämpling är en kryptografisk process som bevisar att specifik data existerade vid en specifik tidpunkt och inte har ändrats sedan dess. En betrodd tredje part som kallas en Timestamping Authority (TSA) tar en hash av informationen, kombinerar den med ett korrekt tidsvärde och signerar de två tillsammans med sitt eget certifikat, vilket producerar en tidsstämpeltoken. Eftersom TSA är oberoende och dess klocka är betrodd är tidsstämpeln mycket mer trovärdig än ett datum som är inställt på en användares egen enhet. Den används ofta vid kodsignering och digitala signaturer.
Hur fungerar betrodd tidsstämpling?
Klienten beräknar först en kryptografisk hash av data och skickar sedan endast den hashen till en Timestamping Authority (TSA) enligt RFC 3161 Time-Stamp Protocol. TSA kombinerar hashen med den aktuella och korrekta tiden och signerar den med sin privata nyckel, vilket returnerar en signerad tidsstämpeltoken. För att verifiera kan vem som helst hasha om data, bekräfta att den matchar hashen i token och validera TSA:s signatur. Om båda matchar kan data bevisligen existera vid den tidpunkten och har inte ändrats. TSA ser aldrig de faktiska data, bara dess hash.
Varför är tidsstämpling viktigt för kodsignering?
Eftersom kodsigneringscertifikat löper ut. Utan en tidsstämpel är en programvarusignatur bara betrodd medan dess signeringscertifikat är giltigt; den dag certifikatet löper ut kommer all programvara som signerats med den att flaggas som obetrodd, även legitim programvara som signerats flera år tidigare. En betrodd tidsstämpel bevisar att koden signerades medan certifikatet fortfarande var giltigt, så verifierare fortsätter att lita på signaturen långt efter att certifikatet löpt ut. Det är därför tidsstämpling är en bästa praxis, i praktiken ett krav, för kodsignering i produktion.
Vad händer med signerad kod om det inte finns någon tidsstämpel?
Om kod signeras utan en betrodd tidsstämpel är signaturen endast giltig under signeringscertifikatets livstid. När certifikatet löper ut, vanligtvis efter ett till tre år, kan operativsystemet eller verifieraren inte längre bekräfta att signaturen gjordes medan certifikatet var giltigt, så programvaran behandlas som obetrodd eller osignerad. Användare kan se säkerhetsvarningar, eller så kan programvaran blockeras. Tidsstämpling undviker detta genom att förankra signaturen till en bevisbar tidpunkt inom certifikatets giltighetsperiod.
Vad är RFC 3161?
RFC 3161 är internetstandarden som definierar Time-Stamp Protocol (TSP), formatet och reglerna för att begära och utfärda betrodda tidsstämplar. Den specificerar hur en klient skickar en hash till en Timestamping Authority (TSA) och hur TSA returnerar en signerad tidsstämpeltoken som binder den hashen till ett tidsvärde. Eftersom det är en allmänt använd standard gör RFC 3161 betrodda tidsstämplar interoperabla mellan olika verktyg, plattformar och TSA:er. Senare uppdateringar, som RFC 5816, lade till stöd för starkare hashalgoritmer som SHA-256.
Ser tidsstämplingsmyndigheten mina data eller min kod?
Nej. Tidsstämplingsmyndigheten (TSA) tar bara emot en kryptografisk hash av dina data, aldrig själva data eller koden. Hashen är ett fingeravtryck med fast storlek som unikt representerar informationen utan att avslöja dess innehåll, så TSA kan certifiera exakt när informationen existerade medan ditt faktiska innehåll förblir privat för dig. Detta är en viktig integritets- och säkerhetsegenskap: du får ett pålitligt bevis på tid utan att avslöja något känsligt för tredjepartsmyndigheten.
Håll dina signaturer betrodda med CodeSign Secure
Tillförlitlig tidsstämpling är det som gör att din signerade programvara är pålitlig på lång sikt. Utforska Encryption Consultings CodeSign Secure för att signera i stor skala med säkra nycklar och inbyggd RFC 3161-tidsstämpling, så att dina signaturer håller längre än dina certifikat.
- Key Takeaways
- Vad är betrodd tidsstämpling?
- Hur fungerar betrodd tidsstämpling?
- Varför betrodd tidsstämpling är viktig för kodsignering
- Tidsstämpling och återkallelse
- Standarder bakom betrodd tidsstämpling
- Vanliga användningsområden för betrodd tidsstämpling
- Hur krypteringskonsulting hjälper
- Vanliga frågor om partihandel med mat och dryck
- Håll dina signaturer betrodda med CodeSign Secure
