Kodsignering: nyckellagring och HSM-alternativ
Jämför USB-token, Azure Key Vault och Google Cloud KMS, och välj den lösning som passar ditt signeringsflöde.
Krav sedan 1 juni 2023
För alla kodsigneringscertifikat (OV och EV) måste den privata nyckeln lagras i hårdvara (FIPS 140-2 Level 2+). Nycklar i programvara, som .pfx-filer, är inte längre tillåtna.
Varför hårdvarubaserad nyckellagring krävs
Branschkrav
CA/Browser Forum, Microsoft och Apple kräver certifierad hårdvara för alla nycklar till kodsigneringscertifikat.
FIPS 140-2 Level 2+
Hårdvaran måste vara certifierad enligt FIPS 140-2 Level 2 eller Common Criteria EAL 4+.
Kan inte exporteras
Den privata nyckeln kan inte kopieras ut. All signering sker direkt på enheten eller i HSM.
OV och EV
OV och EV har samma krav, som gäller alla certifikat utfärdade efter 1 juni 2023.
Rekommenderade lösningar
Alla priser kommer utöver certifikatpriset och anges per år. Priser för tredjepartstjänster (Azure, Google, AWS) är ungefärliga och kan ändras av leverantören.
SafeNet USB-token
0 kr/år
Ingår i certifikatpriset. Obegränsat antal signeringar.
- ✓ RSA 4096 bitar, nyckeln kan inte exporteras, FIPS 140-2 Level 2
- ✓ Ansluts fysiskt till datorn som signerar
- ✓ Extra USB-token kan köpas, återutfärdande är kostnadsfritt
- ✓ En token som FairSSL skickar går med PostNord och leverans nästa arbetsdag. Den måste skickas före kl. 10.00, så du har den normalt inom 2 arbetsdagar (inte garanterat). GlobalSign skickar sin egen token inom ungefär en vecka.
Signeringsverktyg
signtool.exe (Windows), codesign/productsign (macOS; distribution till Mac kräver Apple Developer ID), Jsign (alla plattformar)
Obs: SafeNet-programvaran blockerar åtkomst till din token via RDP. TeamViewer fungerar.
Passar för: signering på en enskild dator utan molnberoende
Azure Key Vault Premium
Rekommenderas~600 kr/år
~50 kr/månad. Inkl. 500 000 signeringar/år. Därutöver 0,30 kr per 1 000.
- ✓ RSA-HSM 4096 bitar, kan inte exporteras, FIPS 140-2 Level 3
- ✓ SKU Premium krävs (Standard kan inte skapa RSA-HSM-nycklar)
- ✓ CSR skapas direkt i Azure-portalen
- ✓ Signera varifrån som helst: CI/CD-pipelines, byggservrar och utvecklardatorer
Signeringsverktyg
AzureSignTool (Windows, direkt ersättning för signtool), Jsign (alla plattformar)
Fullständig guide till Azure Key Vault →
Passar för: CI/CD-pipelines, fjärrsignering och team
Google Cloud KMS
~300 kr/år
~25 kr/månad per HSM-nyckel. Signeringar: 0,15 kr per 1 000.
- ✓ HSM-skyddad RSA 4096, FIPS 140-2 Level 3
- ✓ CSR via PKCS#11 och OpenSSL (mer arbete på kommandoraden än i Azure)
- ✓ Mer tekniskt krävande konfiguration än Azure Key Vault
Signeringsverktyg
signtool.exe (via Googles CNG-provider, Windows), Jsign (alla plattformar)
Passar för: organisationer som redan använder Google Cloud
Övriga alternativ
Alla priser kommer utöver certifikatpriset.
DigiCert KeyLocker
~3 500 kr/år
1 000 signeringar ingår. Bara för DigiCert-certifikat.
- ✓ Molnsignering som DigiCert driver
- ✓ Enkel konfiguration, DigiCert sköter driften
- — Begränsad till 1 000 signeringar/år
Verktyg: DigiCerts smctl CLI, signtool.exe (via DigiCert KSP)
Passar för: enkel konfiguration med få signeringar per år
Thales Luna A700
~140 000-350 000 kr
Engångsköp. Obegränsat antal signeringar (~300 per sekund).
- ✓ Fysisk nätverks-HSM, FIPS 140-2 Level 3
- ✓ Full kontroll, inget molnberoende
- — Hög startinvestering och underhållskostnad
Verktyg: signtool.exe (via PKCS#11/CNG), Jsign
Passar för: stora företag med befintlig PKI-infrastruktur
AWS CloudHSM
~150 000 kr/år
Per HSM-kluster. Obegränsat antal signeringar.
- ✓ FIPS 140-2 Level 3, full PKCS#11
- ✓ Dedikerad HSM i AWS-molnet
- — Orimligt dyrt om det bara används för kodsignering
Verktyg: signtool.exe (via PKCS#11), Jsign
Passar för: företag som redan kör CloudHSM för andra ändamål
AWS KMS
~120 kr/år
~10 kr/månad per nyckel. Signeringar: 0,30 kr per 1 000.
- ✓ FIPS 140-2 Level 3 (sedan maj 2023)
- ✓ RSA 4096, kan inte exporteras
- — Stöder inte signtool.exe
- — CSR kräver ett hjälpverktyg
Verktyg: bara Jsign (inte signtool eller AzureSignTool)
Passar för: organisationer som redan använder AWS
SmartScreen, nedladdningsvarningar och Trusted Publishers
Windows SmartScreen är ett filter i Windows som bedömer nedladdade filer utifrån rykte. När en användare laddar ner och kör en signerad körbar fil bedömer SmartScreen utgivarens rykte. All signerad programvara visar till en början en mildare varning ("Windows skyddade din dator" med alternativet "Kör ändå") i stället för att blockeras helt.
EV och OV beter sig likadant i SmartScreen. Enligt Microsoft kringgår EV-certifikat inte längre SmartScreen, så båda typerna bygger rykte över tid i takt med att fler användare laddar ner och kör den signerade programvaran.
Trusted Publishers: IT-avdelningen kan lägga till certifikatet i lagret Trusted Publishers via grupprinciper, så att datorer som de hanterar litar på det för PowerShell-skript med AllSigned och för signerade Office-makron. Microsoft dokumenterar det inte som ett sätt att komma förbi SmartScreen, och programvaruutgivaren kan inte styra det på slutanvändarnas datorer.
Hur nyckeln lagras (USB-token, Azure Key Vault, Google Cloud KMS) påverkar inte SmartScreen-ryktet. Det som avgör är certifikattypen (OV eller EV) och antalet lyckade nedladdningar över tid.
Se översikten över SmartScreen med exempel på varningar och de fyra ryktenivåerna.
Översikt: konfigurera Azure Key Vault
Här är de viktigaste valen när du konfigurerar Azure Key Vault för kodsignering. Efter köpet får du fullständiga installationsguider steg för steg från FairSSL, för både DigiCert och GlobalSign.
Konfiguration av Key Vault
- SKU: Premium (krävs för HSM-skyddade nycklar, eftersom Standard inte kan skapa RSA-HSM-nycklar)
- Nyckeltyp: RSA-HSM, 4096 bitar, kan inte exporteras
- Behörigheter: Rollen Key Vault Administrator krävs (kan behöva tilldelas uttryckligen via RBAC även om du redan har administratörsbehörighet)
Certifikatbegäran (CSR)
- Typ: "Certificate issued by a non-integrated CA"
- Innehållstyp: PEM
- Subject:
CN=Ditt företagsnamn(som det är registrerat hos CA:n) - Extended Key Usage:
1.3.6.1.5.5.7.3.3(Code Signing) - Exporterbar privat nyckel: Nej
- Certificate Transparency: Nej (krävs inte för kodsigneringscertifikat)
När du har beställt ditt kodsigneringscertifikat från FairSSL får du en detaljerad installationsguide för din CA (DigiCert eller GlobalSign) med skärmbilder och exakta steg.
Signeringsverktyg
signtool.exe
Windows. Microsofts officiella signeringsverktyg (del av Windows SDK).
- ✓ Signerar .exe, .dll, .msi, .cab, .sys, .appx och Office-filer
- ✓ Fungerar med USB-token (SafeNet) och Google Cloud KMS (via CNG-provider)
- ✓ Ingår i Visual Studio och Windows SDK
AzureSignTool
Windows. Direkt ersättning för signtool.exe när nyckeln ligger i Azure Key Vault.
- ✓ Signerar direkt från Azure Key Vault
- ✓ Gratis, med öppen källkod
- ✓ Azure RBAC: kräver rollerna Key Vault Crypto User, Certificate User och Secrets User
Jsign
Plattformsoberoende (Windows, macOS, Linux). Java-baserat.
- ✓ Stöder Azure Key Vault, Google Cloud KMS, AWS KMS, YubiKey, SafeNet med mera
- ✓ Kan användas tillsammans med jarsigner (signering av Java och Android)
- ✓ Gratis, med öppen källkod
codesign / productsign
macOS. Apples inbyggda verktyg för signering av appar och installationspaket. De fungerar med certifikatet på token, men Gatekeeper och notarisering kräver ett Apple Developer ID-certifikat utfärdat av Apple, så appar som ska distribueras till Mac måste signeras med Apples certifikat.
- ✓
codesignsignerar macOS-appar, frameworks och dylibs - ✓
productsignsignerar .pkg-installationspaket - ✓ Fungerar med USB-token via Keychain Access
Använd alltid tidsstämpling
Lägg till en RFC 3161-tidsstämpel när du signerar, så förblir signaturerna giltiga även efter att certifikatet har gått ut.
http://timestamp.digicert.com(rekommenderas, har historiskt varit mest stabil)http://timestamp.globalsign.com/tsa/r6advanced1
Det här hjälper FairSSL till med
Ingår i alla kodsigneringscertifikat
- ✓ Fullständiga installationsguider för DigiCert och GlobalSign med Azure Key Vault
- ✓ HSM-intyg och hantering av bekräftelser
- ✓ Organisationsvalidering på engelska, danska och svenska (tiden beror på CA och på hur snabbt vi når er och får tillbaka undertecknade dokument)
- ✓ Gratis support via e-post och telefon genom hela processen
Valfria tillägg
- ✓ Snabbare leverans av USB-token för GlobalSign: FairSSL skickar med PostNord och leverans nästa arbetsdag, normalt framme inom 2 arbetsdagar eftersom den måste skickas före kl. 10.00
- ✓ Fjärrinstallation via TeamViewer
Ingår inte
- — Konfiguration av Azure-prenumeration
- — Konfiguration av API-nycklar eller service principals
- — Integration med byggpipeline
- — Konfiguration av signeringsverktyg
Relaterade signeringsverktyg: SignTool / AzureSignTool | Jsign | Jämför alla →
Kodsigneringscertifikat
OV Code Signing
DigiCert CodeSign OV
DigiCert OV Code Signing. Brett plattformsstöd.
GlobalSign CodeSign
GlobalSign OV Code Signing. Starkt varumärke.
EV Code Signing
Vanliga frågor om nyckellagring för kodsignering
Hitta svar på de vanligaste frågorna om SSL-certifikat och FairSSL.
Redo att säkra dina signeringsnycklar?
Skapa ett gratis konto och beställ ditt första certifikat. Ett DV-certifikat utfärdas på under 2 minuter.