Denne webside giver instruktioner om brug af en SSL.com OV or EV kodesigneringscertifikat med Microsofts SignTool og SSL.com's SSL Manager.
Disse instruktioner antager, at dit kodesigneringscertifikat er blevet installeret, eller at du har det på et hardwaretoken. For cloud-baseret kodesignering ved hjælp af eSigner-platformen, se venligst Oversigt side og dette tilmeldingsvejledning.
Husk, at for hardware-baserede OV- og EV-kodesigneringscertifikater den private nøgle findes kun på YubiKey FIPS USB-token der blev sendt til dig og at symbolet skal vedhæftes til computeren, der bruges til at underskrive applikationen. Windows-brugere med YubiKey FIPS-tokens skal også downloade og installere YubiKey Smart Card Minidriver inden du bruger deres token.
Signering af en eksekverbar fil med Yubikey
Installer Windows SDK og SignTool
SignTool er inkluderet i Windows 10 SDK. Efter installationen vil SignTool være placeret under:
C: \ Program Files (x86) \ Windows Kits \ 10 \ bin \ \ x64 \ signtool.exe
Starten PowerShell
Start en PowerShell kommandovindue ved at søge efter "Powershell" i Starten og klikke på skrivebordsprogrammet.
Powershell er en kommandolinjegrænseflade til Windows 'kernetjenester. Du kan bruge den til at udføre SignTool og underskrive din kode.
Til kode underskriver, skal du vedhæfte dit USB-token til din computer (hvis du ikke allerede har gjort det). Hvis du bruger eSigner, skal du installere eSigner Cloud Key Adapter
Husk, at den private nøgle kun findes på den USB-token, der blev sendt til dig og det token skal vedhæftes til computeren, der bruges til at underskrive applikationen. Dette trin skal springes over, hvis du bruger et OV-kodesigneringscertifikat.
Tilmeld eksekverbar
Du kan signere en eksekverbar fil ved at udstede følgende kommando i Powershell-vinduet. Hvis du bruger eSigner cloud-signering med signtool.exe, skal du sørge for at installere eSigner CKA
. \ signtool.exe tegn / fd sha256 / a "C: \ sti \ til \ MyExecutable.exe"
-
/fd
option vælger den fordøjelsesalgoritme, der skal bruges, når du underskriver. Windows 10 SDK, HLK, WDK og ADK bygger 20236 og derover kræver, at denne indstilling er indstillet ved underskrift. SHA256 anbefales fremfor SHA1 for sikkerhed. -
/a
option instruerer SignTool til automatisk at finde et passende kodesigneringscertifikat til din eksekverbare. - Du vil blive bedt om din USB-tokens PIN-kode. Hvis du har brug for hjælp til at finde din PIN-kode, se venligst denne vej.
Valg af et signeringscertifikat
Angiv emnets navn
Hvis du har mere end én kodesignering af USB-tokens eller -certifikater installeret, kan du gøre det angiv certifikatet du vil bruge ved at inkludere dens Emne navn via /n
valgmulighed.
Du kan finde dit certifikats emnenavn ved hjælp af Microsofts certifikatstyringsværktøj certmgr. Åbn værktøjet fra Start-menuen og se efter dit certifikat i mappen "Personlig" under "Certifikater", som vist på billedet nedenfor. Emnenavnet er feltet "Udstedt til" i certmgr.
I ovenstående billede er certifikatets emne navn example
. Du kan specificere denne værdi i SignTool med følgende kommando.
. \ signtool.exe tegn / fd sha256 / n "eksempel" "C: \ sti \ til \ MyExecutable.exe"
Angiv SHA1 Hash
Hvis du har flere certifikater med samme emne navn, kan du også bruge SHA1 hash (eller "tommelfingerprint") af et certifikat til at vælge det til signering. Erstatte THUMBPRINT
i kommandoen nedenfor med den aktuelle SHA1-hash dit certifikat. Du kan finde denne værdi ved at se certifikatoplysningerne i certmgr og kigge efter Thumbprint
felt (sørg for at fjerne mellemrumstegn fra fingeraftrykket, inden du bruger det i din kommando).
. \ signtool.exe sign / fd sha256 / sha1 THUMBPRINT "C: \ path \ to \ MyExecutable.exe"
Brug en PKCS # 12 / PFX-fil
Hvis du har et kodesigneringscertifikat og en privat nøgle i en PKCS # 12-fil (også kendt som en PFX- eller P12-fil), kan du angive filen og dens adgangskode på kommandolinjen:
. \ signtool.exe tegn / fd sha256 / f "C: \ sti \ til \ MyCertificate.pfx" / p adgangskode "C: \ sti \ til \ MyExecutable.exe"
Tidsstempling
Tidsstempling af din kode gør det muligt at stole på den, når dit kodesigneringscertifikat udløber. Hvis du vil tilføje en tidsstempel i den underskrevne binære fil kan du gøre det ved hjælp af SignTool's /tr
option, som skal følges ved at indstille tidsstemplets fordøjelsesalgoritme med /td
. Kommandoen i uddraget nedenfor inkluderer et tidsstempel fra SSL.com's tidsstempletjeneste, mens du underskriver en eksekverbar.
. \ signtool.exe tegn / fd sha256 / tr http://ts.ssl.com / td sha256 / a "C: \ sti \ til \ MyExecutable.exe"
/tr
valgmulighed (angiv URL til RFC 3161-tidsstempleserver) ikke /t
(URL til tidsstemplingsserver), som er inkompatibel med SSL.coms tidsstempel-server./td
option skal følg /tr
mulighed. Hvis tidsstemplets fordøjelsesalgoritme er specificeret før tidsstemplingsserveren, bruges standard SHA-1-algoritmen. Windows 10 SDK, HLK, WDK og ADK bygger 20236 og derover kræver brug af /tr
ved tidsstempling. SHA256 anbefales over SHA1 for sikkerheds skyld.Hvis du støder på denne fejl:
The timestamp certificate does not meet a minimum public key length requirement
, bør du kontakte din softwareleverandør for at tillade tidsstempler fra ECDSA-nøgler.Hvis der ikke er nogen måde for din softwareleverandør at tillade det normale slutpunkt at blive brugt, kan du bruge dette ældre slutpunkt
http://ts.ssl.com/legacy
for at få et tidsstempel fra en RSA Timestamping Unit.Andre muligheder
Andre vigtige indstillinger for SignTool er:
/d
: Tilføj en beskrivelse af den underskrevne kode. For eksempel,/d "test code"
./du
: Tilføj en URL med en udvidet beskrivelse af den underskrevne kode. For eksempel,/du https://your_website.tld/project/description
.
Brug af alle ovenstående indstillinger (men udeladt /a
, /sha1
eller /f
fordi vi angiver certifikatets emne navn med /n
, vores kommandolinie ser ud:
signtool.exe sign / n "eksempel" / fd sha256 / tr http://ts.ssl.com / td sha256 / d "testkode" / du https: //your_website.tld/project/description "C: \ path \ til \ MyExecutable.exe"
Bekræft underskrift
Brug denne kommando til at bekræfte din underskrevne kode (bemærk, at /pa
option skal være til stede i kommandoen):
. \ signtool.exe verificere / pa "C: \ sti \ til \ MyExecutable.exe"
Hvis din fil er blevet signeret med succes, skal du se output som denne:
Fil: C: \ sti \ til \ MyExecutable.exe Index Algoritme Tidsstempel ======================================= ===== 0 sha256 RFC3161 Bekræftet: C: \ sti \ til \ MyExecutable.exe
Du kan også kontrollere, at en fil er underskrevet ved at højreklikke på ikonet og vælge Ejendomme i menuen og derefter vælge Digitale signaturer fanen. Se detaljer om en signatur ved at vælge den og klikke på Detaljer .
Her kan vi se, at filen indeholder en gyldig digital signatur oprettet af SSL Corp den 28. juni 2020.
Signering af en eksekverbar med SSL Manager
Hvis du foretrækker en mere grafikbaseret tilgang, kan du bruge SSL.com's interne software, SSL Manager, for at underskrive dine filer. Mange kunder foretrækker at bruge SSL Manager fordi det giver den ekstra fordel at have nem adgang til alle dine certifikater i en samlet grænseflade. For instruktioner om download og installation SSL Manager, se venligst vores installationsvejledning.
For at underskrive en eksekverbar skal du starte med at vælge Kodesignering> Sign & Timestamp Code Package fra SSL Managermenu.
I formularen til kodesignering kan du vælge det eksekverbare og kodesigneringscertifikatet (enten fra en fil eller et certifikatlager) og en af de tilgængelige tidsstempel-servere. Når du er færdig, skal du klikke på Tilmeld knappen for at signere din kode. Du vil blive bedt om din USB-tokens PIN-kode.
Udover kodesignering, SSL Manager tilbyder mange kraftfulde funktioner. For yderligere detaljer henvises til SSL Managerdokumentation, især den Kodesigneringsmenu.
Kodesignering med et Thales SafeNet (Gemalto) USB-token
Dette afsnit viser, hvordan man signerer kode ved hjælp af SSL.com's kodesigneringscertifikat, Thales SafeNet (Gemalto) USB-token og Safenet Authentication Client.
Thales SafeNet-tokenet kan gemme alle typer SSL.com-kodesigneringscertifikater og deres private nøgler. Disse omfatter signeringscertifikater for personlig identitetskode, certifikater til signering af organisationsvalideringskode og signeringscertifikater for udvidet valideringskode.
SafeNet Authentication Client er en middleware-løsning, der håndterer Thales' omfattende SafeNet-portefølje af certifikat-baserede autentificeringer. Dette inkluderer eTokens, SafeNet IDPrime smart cards, SafeNet IDPrime Virtual og kombineret PKI/FIDO-enheder.
For instruktioner om, hvordan du ændrer din kodesigneringsadgangskode for Thales SafeNet (Gemalto)-tokens eller genvinder adgang til et låst token, bedes du tjekke denne SSL.com-artikel: Sådan ændres din Thales SafeNet/Gemalto Token-adgangskode
Krav
- Windows udviklingssæt installeret på din computer
- SafeNet Authentication Client installeret på din computer. For instruktioner, se denne SSL.com-vejledning: SafeNet Authentication Client Download til kodesigneringscertifikater
- Et Thales SafeNet-token, der indeholder et SSL.com forudinstalleret kodesigneringscertifikat. Thales SafeNet-tokenet skal aktiveres ved at følge disse trin:
- Find serienummeret på dit Thales-token. Dette er en række bogstaver og tal, der er trykt på overfladen af dit token.
- Log ind på din SSL.com-konto.
- Klik på knappen Mine Ordrer fanen efterfulgt af downloade link til din certifikatordre for at vise dens detaljer. På den fysiske symboler sektion, skal du aktivere dit Thales-token ved at placere dets serienummer i det tildelte felt. Ved aktivering af dit Thales-token vil fysiske symboler sektionen vil vise din Aktiverings-PIN og Administrator-PIN. Det Administrator-PIN er også kendt som Token adgangskode og du vil blive bedt om at indtaste dette, når du signerer din fil.
Trin til at signere kode med et Thales SafeNet-token
- Tilslut din Thales SafeNet token til din computer.
- Åbne Safenet Authentication Client.
- Konfigurer kommandoen til at signere din kode:
signtool sign /tr http://ts.ssl.com /td sha256 /fd sha256 /a "PATH_OF_FILE_TO_BE_SIGNED"
Legende:
/fd sha256 vælger den sammenfattende algoritme, der skal bruges ved signering.
/tr http://ts.ssl.com angiver tidsstempelserveradressen
/td sha256 specificerer tidsstemplets algoritme
/a instruerer SignTool til automatisk at finde et passende kodesigneringscertifikat til din fil.
signerbar filsti: Stien til din fil skal være omgivet af dobbelte anførselstegn. Vær opmærksom på at inkludere navnet på din signerbare fil i stien. Eksempel: /test fil.dll
Bemærk: Nogle brugere kan opleve denne fejl med sign-kommandoen: 'Signtool' genkendes ikke som en intern eller ekstern kommando, operativt program eller batchfil. Løsningen på denne fejl er at fjerne teksten skilteværktøj fra kommandoen og erstat den med stien til signtool.exe. Stien skal være omgivet af dobbelte anførselstegn.
"C:\Program Files (x86)\Windows Kits\10\folder\folder\x86\signtool.exe" tegn /tr http://ts.ssl.com/ /td sha256 /fd sha256 /a "C:\ Brugere\Admin\Documents\testfiler\testfil.dll"
- Kør Kommandoprompt som administrator og placere tegnkommandoen. Tryk derefter på Indtast.
- Du vil se beskeden Færdig med at tilføje yderligere butik. Kort efter, vil du blive bedt om at placere din Token adgangskode. Som anført i Krav afsnittet ovenfor, er token-adgangskoden den samme som Administrator-PIN og dette kan ses via din SSL.com-certifikatbestillingsside. Klik på OK knappen for at afslutte kodesigneringen.
- Succes! Din fil er nu signeret. Kommandoprompt giver dig besked om den vellykkede signering.
Muligheder for at signere kode
1. Angiv emnenavnet på certifikatet
Hvis du er i besiddelse af flere USB-tokens eller certifikater til kodesignering, kan du vælge, hvilket specifikt certifikat, der skal bruges, ved at inkorporere dets emnenavn gennem /n-indstillingen.
Du kan se emnenavnet på dit certifikat ved at klikke på tandhjulsikonet i SafeNet Authentication Client for at tillade en avanceret visning. Klik derefter på pilen for Brugercertifikater for at vise alle de certifikater, der er installeret i tokenet. Kopier navnet på det certifikat, du vil bruge.
Tegnkommandoen ved hjælp af /n
mulighed ser ud som følgende. Emnenavnet på dit certifikat skal være omgivet af dobbelte anførselstegn.
"PATH OF SIGNTOOL.EXE"-tegn /tr http://ts.ssl.com/ /td sha256 /fd sha256 /n "EMNENAVN PÅ CERTIFIKAT" "PATH_OF_FILE_TO_BE_SIGNED"
2. Angiv certifikatets tommelfingeraftryk
Hvis du er i besiddelse af flere certifikater med identiske emnenavne, kan du skelne mellem og vælge et til signering ved at bruge dets SHA1-hash, almindeligvis omtalt som "thumbprint". For at gøre dette skal du erstatte TUMMEPRINT i den følgende kommando med den faktiske SHA1-hash for dit certifikat.
Du kan se tommelfingeraftryksværdien for dit certifikat ved at klikke på tandhjulsikonet i SafeNet Authentication Client for at tillade en avanceret visning. Klik derefter på pilen for Brugercertifikater. Dobbeltklik på det certifikat, du vil bruge. Klik på Detaljer fanen. Rul til sidst ned til Tommelfingerprint felt.
I tegnkommandoen skal du erstatte teksten TUMMEPRINT med den faktiske værdi af dit certifikats tommelfingeraftryk.
"PATH OF SIGNTOOL.EXE"-tegn /tr http://ts.ssl.com/ /td sha256 /fd sha256 /SHA1 THUMBPRINT "PATH_OF_FILE_TO_BE_SIGNED"
Bekræft signaturen
Du kan kontrollere den anvendte digitale signatur ved at højreklikke på den signerede fil for at se dens egenskaber.
- Klik på knappen Digitale signaturer fanen. Hold musen hen til Underskriftsliste og klik på det viste navn på dit certifikat for at fremhæve det. Klik på Detaljer boks for at fortsætte.
- Du vil kunne se navnet på det certifikat, der blev brugt til at signere filen samt dato og klokkeslæt, hvor den blev underskrevet og tidsstemplet.