Använda ditt kodsigneringscertifikat

Hur du använder ditt OV- eller EV-kodsigneringscertifikat med Microsofts SignTool och SSL.com SSL Manager ansökan.

Den här webbsidan ger instruktioner om hur du använder en SSL.com OV or EV kodsigneringscertifikat med Microsofts SignTool och SSL.com's SSL Manager.

Dessa instruktioner förutsätter att ditt kodsigneringscertifikat har installerats, eller att du har det på en maskinvarutoken. För molnbaserad kodsignering med eSigner-plattformen, se översiktssida och detta inskrivningsguide.

Kom ihåg att för hårdvarubaserade OV- och EV-kodsigneringscertifikat den privata nyckeln finns bara på YubiKey FIPS USB-token som skickades till dig och att symbolen måste bifogas till datorn som används för att signera applikationen. Windows -användare med YubiKey FIPS -tokens bör också ladda ner och installera YubiKey Smart Card Minidrivrutin innan du använder deras token.

OV och EV-kodsigneringscertifikat bör inte installeras manuellt på din dator, vilket kan orsaka konfigurationsproblem. Certifikat som skickas på YubiKeys från SSL.com kan användas utan ytterligare installation än att installera YubiKey Smart Card Minidrivrutin och ansluta token till din dator. Intyg beställda via fjärrattest bör laddas ner och installeras på enheten som innehåller den privata nyckeln (t.ex. YubiKey FIPS eller annan maskinvara som stöds), inte datorns certifikatlager.
Om du planerar att signera Windows 10-drivrutiner med ett EV-kodsigneringscertifikat måste du registrera med Windows Hardware Developer Program.
För instruktioner om hur du använder ditt OV / IV- eller EV-kodsigneringscertifikat med Java, se vår Java-kodsigneringsguide.

Signera en körbar fil med Yubikey

installera Windows SDK och SignTool

SignTool ingår i Windows 10 SDK. Efter installationen kommer SignTool att finnas under:

C: \ Program Files (x86) \ Windows Kits \ 10 \ bin \ \ x64 \ signtool.exe

Start powershell

Starta en powershell kommandofönstret genom att söka efter "Powershell" i Start och klicka på skrivbordsapplikationen.

Powershell är ett kommandoradsgränssnitt till Windows kärntjänster. Du kan använda den för att köra SignTool och signera din kod.

För koda undertecknande, anslut din USB-token till din dator (om du inte redan har gjort det). Om du använder eSigner, installera eSigner Cloud Key Adapter

Kom ihåg att den privata nyckeln bara finns på USB-tokenet som skickades till dig och det token måste bifogas till dator som används för att signera applikationen. Det här steget ska hoppas över om du använder ett OV-kodsigneringscertifikat.

Anmäl exekverbar

Du kan signera en körbar fil genom att utfärda följande kommando i Powershell-fönstret. Om du använder eSigner molnsignering med signtool.exe, se till att installera eSigner CKA

. \ signtool.exe tecken / fd sha256 / a "C: \ sökväg \ till \ MyExecutable.exe"
  • Smakämnen /fd alternativet väljer den digereringsalgoritm som ska användas vid signering. Windows 10 SDK, HLK, WDK och ADK bygger 20236 och över kräver att det här alternativet ställs in vid signering. SHA256 rekommenderas framför SHA1 för säkerhet.
  • Smakämnen /a alternativet instruerar SignTool att automatiskt hitta ett lämpligt kodsigneringscertifikat för din körbara.
  • Du kommer att bli ombedd att ange PIN-koden för din USB-token. Om du behöver hjälp med att hitta din PIN-kod, se det här.Ange PIN-koden
Notera: Om du signerar kodfiler som kommer att ingå i ett installationsprogram (till exempel en Windows MSI-fil) måste du signera dessa filer innan du bygger installationsprogrammet och sedan underteckna själva installationsfilen.

Välja ett signeringscertifikat

Ange ämnesnamn

Om du har mer än en kodsignering av USB-tokens eller certifikat installerat kan du göra det ange certifikatet du vill använda genom att inkludera dess Ämnesnamn via /n alternativ.

Du kan hitta ditt certifikats ämnesnamn med hjälp av Microsofts certifikathanteringsverktyg certmgr. Öppna verktyget från Start-menyn och leta efter ditt certifikat i mappen "Personligt", under "Certifikat", som visas i bilden nedan. Ämnesnamnet är fältet "Utfärdad till" i certmgr.

I bilden ovan är certifikatets ämnesnamn example. Du kan ange detta värde i SignTool med följande kommando.

. \ signtool.exe tecken / fd sha256 / n "exempel" "C: \ sökväg \ till \ MyExecutable.exe"

Ange SHA1 Hash

Om du har flera certifikat med samma ämnesnamn kan du också använda SHA1-hash (eller "tumavtryck") för ett certifikat för att välja det för signering. Byta ut THUMBPRINT i kommandot nedan med den faktiska SHA1-hash ditt certifikat. Du kan hitta detta värde genom att visa certifikatinformation i certmgr och leta efter Thumbprint fält (se till att ta bort alla mellanslagstecken från tumavtrycket innan du använder det i ditt kommando).

. \ signtool.exe tecken / fd sha256 / sha1 THUMBPRINT "C: \ sökväg \ till \ MyExecutable.exe"

Använd en PKCS # 12 / PFX-fil

Om du har ett kodsigneringscertifikat och en privat nyckel i en PKCS # 12-fil (även känd som en PFX- eller P12-fil) kan du ange filen och dess lösenord på kommandoraden:

. \ signtool.exe sign / fd sha256 / f "C: \ path \ to \ MyCertificate.pfx" / p password "C: \ path \ to \ MyExecutable.exe"

Tidsstämpling

Tidsstämpling av din kod gör att den kan lita på efter att ditt kodsigneringscertifikat löper ut. Om du vill lägga till en tidsstämpel i den signerade binära filen kan du göra det med hjälp av SignTool /tr alternativ, som ska följas av att ställa in tidsstämpelsammandragningsalgoritmen med /td. Kommandot i utdraget nedan innehåller en tidsstämpel från SSL.comtidstämpeltjänst medan du signerar en körbar.

. \ signtool.exe tecken / fd sha256 / tr http://ts.ssl.com / td sha256 / a "C: \ sökväg \ till \ MyExecutable.exe"
Notera: Var noga med att använda SignTool /tr alternativ (ange URL för RFC 3161 tidsstämpelserver), inte /t (URL för tidsstämpelserver), vilket är oförenligt med SSL.coms tidsstämpelserver.
Notera: Smakämnen /td alternativ måste Följ /tr alternativ. Om tidsstämpelsammandragningsalgoritmen specificeras före tidsstämpelservern, används standardalternativet SHA-1. Windows 10 SDK, HLK, WDK och ADK bygger 20236 och över kräver användning av /tr vid tidsstämpling. SHA256 rekommenderas över SHA1 för säkerhet.
Notera: Som standard stöder SSL.com tidsstämplar från ECDSA-nycklar.

Om du stöter på det här felet: The timestamp certificate does not meet a minimum public key length requirement, bör du kontakta din programvaruleverantör för att tillåta tidsstämplar från ECDSA-nycklar.

Om det inte finns något sätt för din programvaruleverantör att tillåta att den normala slutpunkten används, kan du använda denna äldre slutpunkt http://ts.ssl.com/legacy för att få en tidsstämpel från en RSA Timestamping Unit.

Andra alternativ

Andra viktiga alternativ för SignTool är:

  • /d: Lägg till en beskrivning av den signerade koden. Till exempel, /d "test code".
  • /du: Lägg till en URL med en utökad beskrivning av den signerade koden. Till exempel, /du https://your_website.tld/project/description.

Med alla ovanstående alternativ (men utelämnande /a, /sha1, eller /f eftersom vi anger certifikatets ämnesnamn med /n, vår kommandorad ser ut som:

signtool.exe tecken / n "exempel" / fd sha256 / tr http://ts.ssl.com / td sha256 / d "testkod" / du https: //ditt_webbplats.tld/projekt/beskrivning "C: \ sökväg \ till \ MyExecutable.exe "

Verifiera signatur

Använd det här kommandot för att verifiera din signerade kod (notera att /pa alternativet måste finnas i kommandot):

. \ signtool.exe verifiera / pa "C: \ sökväg \ till \ MyExecutable.exe"

Om din fil har signerats framgångsrikt bör du se utdata så här:

Fil: C: \ sökväg \ till \ MyExecutable.exe Index Algoritm Tidsstämpel ====================================== ===== 0 sha256 RFC3161 Framgångsrikt verifierat: C: \ path \ to \ MyExecutable.exe

Du kan också verifiera att en fil har signerats genom att högerklicka på dess ikon och välja Våra Bostäder från menyn och sedan välja Digitala signaturer flik. Visa detaljer om en signatur genom att markera den och klicka på Detaljer knapp.

Digitala signaturer

Här kan vi se att filen innehåller en giltig digital signatur, skapad av SSL Corp den 28 juni 2020.

Detaljer om digital signatur

Signera en körbar med SSL Manager

Om du föredrar en mer grafikbaserad strategi kan du använda SSL.comegen programvara, SSL Manager, för att underteckna dina filer. Många kunder föredrar att använda SSL Manager eftersom det ger den extra fördelen med att ha enkel åtkomst till alla dina certifikat i ett enhetligt gränssnitt. För instruktioner om nedladdning och installation SSL Manager, se vår installationsguide.

För att signera en körbar börjar du med att välja Kodsignering> Sign & Timestamp Code Package från SSL Managermeny.

Tecken & tidsstämpelkodpaket

I kodsigneringsformuläret kan du välja körbarhet och kodsigneringscertifikat (antingen från en fil eller ett certifikatlager) och en av de tillgängliga tidstämpelservrarna. När du är klar klickar du på Anmäl knappen för att signera din kod. Du kommer att bli ombedd att ange PIN-koden för din USB-token.

Förutom kodsignering, SSL Manager erbjuder många kraftfulla funktioner. För mer information, se SSL Managerdokumentation, speciellt Kodsigneringsmeny.

Kodsignering med en Thales SafeNet (Gemalto) USB-token

Obs: SSL.com levererar Thales SafeNet-tokens som är förinstallerade med kodsigneringscertifikat. Ta inte bort något material från token.

Det här avsnittet visar hur man signerar kod med SSL.coms kodsigneringscertifikat, Thales SafeNet (Gemalto) USB-token och Safenet Authentication Client. 

Thales SafeNet-token kan lagra alla typer av SSL.com-kodsigneringscertifikat och deras privata nycklar. Dessa inkluderar signeringscertifikat för personlig identitetskod, signeringscertifikat för organisationsvalidering och kodsigneringscertifikat för utökad validering.

SafeNet Authentication Client är en mellanprogramlösning som hanterar Thales omfattande SafeNet-portfölj av certifikatbaserade autentiseringsenheter. Detta inkluderar eTokens, SafeNet IDPrime-smartkort, SafeNet IDPrime Virtual och kombinerade PKI/FIDO-enheter.

För instruktioner om hur du ändrar ditt kodsigneringslösenord för Thales SafeNet (Gemalto) tokens eller återfår åtkomst till en låst token, vänligen kolla denna SSL.com-artikel: Hur du ändrar ditt Thales SafeNet/Gemalto Token-lösenord

Krav

  1. Windows Development Kit installerat på din dator
  2. SafeNet Authentication Client installerad på din dator. För instruktioner, se denna SSL.com-guide: SafeNet Authentication Client Ladda ner för kodsigneringscertifikat
  3. En Thales SafeNet-token som innehåller ett SSL.com förinstallerat kodsigneringscertifikat. Thales SafeNet-token måste aktiveras genom att följa dessa steg: 
    1. Leta reda på serienumret på din Thales-token. Detta är en serie bokstäver och siffror som är tryckta på ytan av din token. 
    2. Logga in på ditt SSL.com-konto.
    3. Klicka på Beställningar fliken, följt av ladda ner länken till din certifikatbeställning för att visa dess detaljer. På fysiska symboler aktivera din Thales-token genom att placera dess serienummer i det tilldelade fältet. Vid aktivering av din Thales-token, fysiska symboler avsnitt kommer att visa din Aktiverings-PIN och Administratörs-PIN. De Administratörs-PIN är också känd som Token lösenord och du kommer att bli ombedd att ange detta när du signerar din fil. 

Steg för att signera kod med en Thales SafeNet-token

  1. Anslut Thales SafeNet-token till din dator. 
  2. Öppen Safenet Authentication Client.
  3. Konfigurera kommandot för att signera din kod:
    signtool sign /tr http://ts.ssl.com /td sha256 /fd sha256 /a "PATH_OF_FILE_TO_BE_SIGNED"
    Förklaring:
    /fd sha256 väljer den sammanfattningsalgoritm som ska användas vid signering.
    /tr http://ts.ssl.com anger tidsstämpelserveradressen
    /td sha256 anger tidsstämpelsammanfattningsalgoritmen
    /a instruerar SignTool att automatiskt hitta ett lämpligt kodsigneringscertifikat för din fil.

    signerbar filsökväg: Sökvägen till din fil bör omges av dubbla citattecken.
    Notera att du inkluderar namnet på din signerbara fil i sökvägen. Exempel: /testfil.dll

    Anmärkningar: Vissa användare kan uppleva det här felet med kommandot sign: "Signtool" känns inte igen som ett internt eller externt kommando, funktionsprogram eller batchfil. Lösningen på detta fel är att ta bort texten teckenverktyg från kommandot och ersätt det med sökvägen för signtool.exe. Sökvägen ska vara omgiven av dubbla citattecken.
    "C:\Program Files (x86)\Windows Kits\10\folder\folder\x86\signtool.exe" tecken /tr http://ts.ssl.com/ /td sha256 /fd sha256 /a "C:\ Användare\Admin\Documents\testfiler\testfil.dll"
  4. Körning kommando~~POS=TRUNC som administratör och placera teckenkommandot. Efteråt, tryck ange.

  5. Du kommer att se meddelandet Klar med att lägga till ytterligare butik. Kort efter, du kommer att bli ombedd att placera din Token lösenord. Som anges i Krav avsnittet ovan, är Token-lösenordet detsamma som Administratörs-PIN och detta kan ses via din SSL.com-certifikatbeställningssida. Klicka på OK för att slutföra kodsigneringen.

  6. Framgång! Din fil är nu signerad. Kommandotolken kommer att meddela dig om framgångsrik signering. 

Alternativ för att signera kod

1. Ange ämnesnamnet för certifikatet

Om du har flera USB-tokens eller certifikat för kodsignering kan du välja vilket specifikt certifikat som ska användas genom att inkludera dess ämnesnamn genom alternativet /n.

Du kan se ämnesnamnet för ditt certifikat genom att klicka på kugghjulsikonen i SafeNet Authentication Client för att tillåta en avancerad vy. Klicka sedan på pilen för Användarcertifikat för att visa alla certifikat som är installerade i token. Kopiera namnet på certifikatet som du vill använda.

Teckenkommandot med hjälp av /n alternativet ser ut som följande. Ämnesnamnet på ditt certifikat ska stå inom dubbla citattecken. 

"PATH OF SIGNTOOL.EXE"-tecken /tr http://ts.ssl.com/ /td sha256 /fd sha256 /n "ÄMNET NAME OF CERTIFICATE" "PATH_OF_FILE_TO_BE_SIGNED"

2. Ange certifikatets tumavtryck

Om du har flera certifikat som bär identiska ämnesnamn kan du särskilja och välja ett för signering genom att använda dess SHA1-hash, vanligen kallad "tumavtrycket". För att göra detta, ersätt TUMAVTRYCK i följande kommando med den faktiska SHA1-hash för ditt certifikat.

Du kan se tumavtrycksvärdet för ditt certifikat genom att klicka på kugghjulsikonen i SafeNet Authentication Client för att möjliggöra en avancerad vy. Klicka sedan på pilen för Användarcertifikat. Dubbelklicka på det certifikat du vill använda. Klicka på Detaljer flik. Bläddra till sist ner till Tumavtryck fält. 


Byt ut texten i teckenkommandot TUMAVTRYCK med det faktiska värdet av ditt certifikats tumavtryck. 

"PATH OF SIGNTOOL.EXE" tecken /tr http://ts.ssl.com/ /td sha256 /fd sha256 /SHA1 THUMBPRINT "PATH_OF_FILE_TO_BE_SIGNED"

Verifiera signaturen

Du kan kontrollera den använda digitala signaturen genom att högerklicka på den signerade filen för att se dess egenskaper. 

  1. Klicka på Digitala signaturer flik. Håll musen till Signaturlista och klicka på det visade namnet på ditt certifikat för att markera det. Klicka på Detaljer ruta för att fortsätta. 

  2. Du kommer att kunna se namnet på certifikatet som användes för att signera filen samt datum och tid när den undertecknades och tidsstämplades.

Tack för att du valde SSL.com! Om du har några frågor, vänligen kontakta oss via e-post på Support@SSL.com, ring upp 1-877-SSL-SECURE, eller bara klicka på chattlänken längst ner till höger på denna sida.

Håll dig informerad och säker

SSL.com är en global ledare inom cybersäkerhet, PKI och digitala certifikat. Registrera dig för att få de senaste branschnyheterna, tipsen och produktmeddelanden från SSL.com.

Vi vill gärna ha din feedback

Följ vår undersökning och låt oss veta vad du tycker om ditt senaste köp.