Uw Code Signing-certificaat gebruiken

Deze webpagina geeft instructies over het gebruik van een SSL.com OV or EV code-ondertekeningscertificaat met Microsoft's SignTool en SSL.com's SSL Manager.

Bij deze instructies wordt ervan uitgegaan dat uw certificaat voor codeondertekening is geïnstalleerd of dat u het op een hardwaretoken hebt staan. Voor op de cloud gebaseerde codeondertekening met behulp van het eSigner-platform, raadpleegt u de overzichtspagina en dit Inschrijvingsgids.

Onthoud dat voor op hardware gebaseerde OV- en EV-codeondertekeningscertificaten de privésleutel is bestaat alleen op het YubiKey FIPS USB-token die naar u is verzonden en dat het teken is moet worden bijgevoegd op de computer die wordt gebruikt om de applicatie te ondertekenen. Windows-gebruikers met YubiKey FIPS-tokens moeten ook de YubiKey Smart Card-ministuurprogramma voordat ze hun token gebruiken.

OV en EV-codeondertekeningscertificaten mogen niet handmatig op uw computer worden geïnstalleerd, wat configuratieproblemen kan veroorzaken. Certificaten die op YubiKeys van SSL.com zijn verzonden, kunnen worden gebruikt zonder extra installatie, behalve het installeren van de YubiKey Smart Card-ministuurprogramma en het token op uw computer aansluiten. Certificaten besteld via attest op afstand moet worden gedownload en geïnstalleerd op het apparaat dat de privésleutel bevat (bijvoorbeeld YubiKey FIPS of andere ondersteunde hardware), niet het certificaatarchief van uw computer.
Als u van plan bent Windows 10-stuurprogramma's te ondertekenen met een EV-codeondertekeningscertificaat, moet u dat doen registreren met het Windows Hardware Developer Program.
Raadpleeg onze voor instructies over het gebruik van uw OV / IV- of EV-codeondertekeningscertificaat met Java Handleiding voor ondertekening van Java-codes.

Een uitvoerbaar bestand ondertekenen met SignTool

Install Dakramen en raamkozijnen SDK en SignTool

SignTool is inbegrepen bij Windows 10-SDK. Na installatie bevindt SignTool zich onder:

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

Start Powershell

Start een Powershell opdrachtvenster door te zoeken naar "Powershell" in het Start menu en klikken op de desktop-applicatie.

Powershell is een opdrachtregelinterface voor de kernservices van Windows. U kunt het gebruiken om SignTool uit te voeren en uw code te ondertekenen.

Voor EV code ondertekent, sluit u uw USB-token aan op uw computer (als u dit nog niet hebt gedaan). Als u eSigner gebruikt, installeer dan eSigner Cloud Key-adapter

Onthoud dat de privésleutel alleen bestaat op het USB-token dat naar u is verzonden en dat het token moet worden bijgevoegd naar de computer die wordt gebruikt om de applicatie te ondertekenen. Deze stap moet worden overgeslagen als u een OV-codeondertekeningscertificaat gebruikt.

Ondertekenen Uitvoerbaar

U kunt een uitvoerbaar bestand ondertekenen door de volgende opdracht in het Powershell-venster uit te voeren. Als u eSigner-cloudondertekening gebruikt met signtool.exe, zorg er dan voor dat u installeert eSigner CKA

. \ signtool.exe sign / fd sha256 / a "C: \ pad \ naar \ MyExecutable.exe"
  • De /fd optie selecteert het digest-algoritme dat moet worden gebruikt bij het ondertekenen. Windows 10 SDK-, HLK-, WDK- ​​en ADK-builds 20236 en hoger vereisen dat deze optie wordt ingesteld bij het ondertekenen. SHA256 wordt aanbevolen boven SHA1 voor beveiliging.
  • De /a optie instrueert SignTool om automatisch een geschikt codeondertekeningscertificaat te vinden voor uw uitvoerbare bestand.
  • Als u een EV-codeondertekeningscertificaat gebruikt, wordt u om de pincode van uw USB-token gevraagd. Als u hulp nodig heeft bij het vinden van uw pincode, raadpleeg dan deze how-to.Voer Pin-code in
Opmerking: Als u codebestanden ondertekent die in een installatieprogramma worden opgenomen (zoals een Windows MSI-bestand), moet u deze bestanden ondertekenen voordat u het installatieprogramma gaat bouwen en vervolgens het installatiebestand zelf ondertekenen.

Een ondertekeningscertificaat selecteren

Specificeer onderwerpnaam

Als u meer dan één code voor het ondertekenen van USB-tokens of certificaten hebt geïnstalleerd, kunt u dat doen specificeer het certificaat u wilt gebruiken door het op te nemen Onderwerp via de /n optie.

U kunt de onderwerpnaam van uw EV CS-certificaat vinden met de tool voor certificaatbeheer van Microsoft gecertificeerd. Open de tool vanuit het Start-menu en zoek uw EV CS-certificaat in de map “Persoonlijk” onder “Certificaten”, zoals weergegeven in de afbeelding hieronder. De onderwerpnaam is het veld "Uitgegeven aan" in certmgr.

In de bovenstaande afbeelding is de onderwerpnaam van het certificaat example. U kunt deze waarde in SignTool specificeren met de volgende opdracht.

. \ signtool.exe sign / fd sha256 / n "voorbeeld" "C: \ pad \ naar \ MyExecutable.exe"

Geef SHA1-hash op

Als u meerdere certificaten met dezelfde onderwerpnaam heeft, kunt u ook de SHA1-hash (of "vingerafdruk") van een certificaat gebruiken om het voor ondertekening te selecteren. Vervangen THUMBPRINT in de onderstaande opdracht met de werkelijke SHA1-hash uw certificaat. U kunt deze waarde vinden door de certificaatdetails in certmgr te bekijken en te zoeken naar het Thumbprint veld (zorg ervoor dat u eventuele spatie-tekens uit de vingerafdruk verwijdert voordat u deze in uw opdracht gebruikt).

. \ signtool.exe sign / fd sha256 / sha1 THUMBPRINT "C: \ pad \ naar \ MyExecutable.exe"

Gebruik een PKCS # 12 / PFX-bestand

Als u een certificaat voor ondertekening van code en een privésleutel in een PKCS # 12-bestand (ook bekend als een PFX- of P12-bestand) hebt, kunt u het bestand en het wachtwoord specificeren op de opdrachtregel:

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

Tijdstempel

Door uw code van tijdstempel te voorzien, kan deze worden vertrouwd nadat uw certificaat voor ondertekening van code is verlopen. Als je een tijdstempel in het ondertekende binaire bestand, kunt u dit doen met SignTool's /tr optie, die moet worden gevolgd door het instellen van het timestamp-digest-algoritme met /td. De opdracht in het onderstaande fragment bevat een tijdstempel van SSL.com's tijdstempelservice tijdens het ondertekenen van een uitvoerbaar bestand.

. \ signtool.exe sign / fd sha256 / tr http://ts.ssl.com / td sha256 / a "C: \ pad \ naar \ MyExecutable.exe"
Opmerking: Zorg ervoor dat u SignTool's /tr optie (specificeer URL van RFC 3161 tijdstempelserver), niet /t (URL van tijdstempelserver), die niet compatibel is met de tijdstempelserver van SSL.com.
Opmerking: De /td optie Dan moet je Volg de /tr optie. Als het algoritme voor het samenvatten van tijdstempels wordt opgegeven vóór de tijdstempelserver, wordt het standaard SHA-1-algoritme gebruikt. Windows 10 SDK-, HLK-, WDK- ​​en ADK-builds 20236 en hoger vereisen gebruik van /tr wanneer tijdstempels. SHA256 wordt aanbevolen boven SHA1 voor beveiliging.
Opmerking: Standaard ondersteunt SSL.com tijdstempels van ECDSA-sleutels.

Als u deze fout tegenkomt: The timestamp certificate does not meet a minimum public key length requirement, dient u contact op te nemen met uw softwareleverancier om tijdstempels van ECDSA-sleutels toe te staan.

Als uw softwareleverancier het gebruik van het normale eindpunt niet toestaat, kunt u dit verouderde eindpunt gebruiken http://ts.ssl.com/legacy om een ​​tijdstempel te krijgen van een RSA-tijdstempeleenheid.

Andere opties

Andere belangrijke SignTool-opties zijn:

  • /d: Voeg een beschrijving van de ondertekende code toe. Bijvoorbeeld, /d "test code".
  • /du: Voeg een URL toe met een uitgebreide beschrijving van de ondertekende code. Bijvoorbeeld, /du https://your_website.tld/project/description.

Alle bovenstaande opties gebruiken (maar weglaten /a, /sha1of /f omdat we de onderwerpnaam van het certificaat specificeren met /n, onze opdrachtregel ziet er als volgt uit:

signtool.exe sign / n "voorbeeld" / fd sha256 / tr http://ts.ssl.com / td sha256 / d "testcode" / du https: //your_website.tld/project/description "C: \ path \ naar \ MyExecutable.exe "

Controleer de handtekening

Gebruik deze opdracht om uw ondertekende code te verifiëren (merk op dat het /pa optie moet aanwezig zijn in het commando):

. \ signtool.exe verifieer / pa "C: \ pad \ naar \ MyExecutable.exe"

Als je bestand met succes is ondertekend, zou je de output als volgt moeten zien:

Bestand: C: \ pad \ naar \ MyExecutable.exe Tijdstempel indexalgoritme =================================== ===== 0 sha256 RFC3161 Succesvol geverifieerd: C: \ path \ to \ MyExecutable.exe

U kunt ook controleren of een bestand is ondertekend door met de rechtermuisknop op het pictogram te klikken en te selecteren Properties in het menu en selecteer vervolgens het Digitale handtekeningen tabblad. Bekijk details over een handtekening door deze te selecteren en op het Details knop.

Digitale handtekeningen

Hier kunnen we zien dat het bestand een geldige digitale handtekening bevat, gemaakt door SSL Corp op 28 juni 2020.

Details digitale handtekening

Een uitvoerbaar bestand ondertekenen met SSL Manager

Als u liever een meer grafische benadering gebruikt, kunt u deze gebruiken SSL.com's eigen software, SSL Manager, om uw bestanden te ondertekenen. Veel klanten geven er de voorkeur aan om te gebruiken SSL Manager omdat het het extra voordeel biedt dat het gemakkelijk toegang heeft tot al uw certificaten in één uniforme interface. Voor instructies over downloaden en installeren SSL Manager, verwijzen wij u naar onze installatie gids.

Selecteer eerst om een ​​uitvoerbaar bestand te ondertekenen Code Signing> Sign & Timestamp Codepakket oppompen van SSL Manager's menu.

Sign & Timestamp Code-pakket

In het codeondertekeningsformulier kunt u het uitvoerbare bestand en het codeondertekeningscertificaat (uit een bestand of een certificaatarchief) en een van de beschikbare tijdstempelservers selecteren. Als je klaar bent, klik je op Ondertekenen knop om uw code te ondertekenen. Als u een certificaat laadt vanuit een PFX-bestand, moet u het wachtwoord van het bestand invoeren. Als u een EV-codeondertekeningscertificaat gebruikt, wordt u om de pincode van uw USB-token gevraagd.

Naast codeondertekening, SSL Manager biedt veel krachtige functies. Voor meer details verwijzen wij u naar SSL Manager's documentatie, vooral de Menu voor codeondertekening.

Bedankt voor het kiezen van SSL.com! Als u vragen heeft, neem dan contact met ons op via e-mail op Support@SSL.com, bel 1-877-SSL-SECURE, of klik gewoon op de chatlink rechts onderaan deze pagina.

Abonneer u op de nieuwsbrief van SSL.com

Mis geen nieuwe artikelen en updates van SSL.com

Blijf geïnformeerd en veilig

SSL.com is een wereldleider op het gebied van cyberbeveiliging, PKI en digitale certificaten. Meld u aan om het laatste branchenieuws, tips en productaankondigingen te ontvangen van SSL.com.

We willen graag uw feedback

Vul onze enquête in en laat ons uw mening over uw recente aankoop weten.