Hoe u EV-codeondertekening kunt automatiseren met SignTool.exe of Certutil.exe met behulp van eSigner CKA (Cloud Key Adapter)

eSigner CKA (Cloud Key-adapter) is een Windows-gebaseerde applicatie die de CNG-interface (KSP Key Service Provider) gebruikt om tools zoals certutil.exe en signtool.exe de eSigner CSC API te laten gebruiken voor ondertekeningsbewerkingen. Het fungeert als een virtueel USB-token en laadt de codeondertekeningscertificaten in de certificaatopslag. Met deze functie wordt uw eSigner-certificaat flexibeler met opties om ondertekeningen in CI/CD-processen te automatiseren die niet bestaan ​​met een fysieke USB-token.

In deze handleiding wordt uitgelegd hoe u handmatige en automatische codeondertekening uitvoert op Windows SignTool met behulp van een productiecertificaat of testcertificaat. 

Opmerking: eSigner CKA biedt flexibele opties om ondertekeningen te automatiseren in CI/CD-processen die niet bestaan ​​met een fysieke USB-token. Voor begeleiding bij het gebruik van eSigner CKA voor geautomatiseerde codeondertekening in CI/CD-tools, waaronder CircleCI, GitHub Actions, Gitlab CI en Travis CI, gaat u naar deze pagina: Hoe eSigner CKA te integreren met CI/CD-tools voor geautomatiseerde code-ondertekening.

Voorwaarden

  1. Een Code Signing-certificaat uitgegeven door SSLcom. 
  2. Code Signing-certificaat moet momenteel geregistreerd zijn op eSigner. Raadpleeg deze handleiding: Meld u aan bij eSigner voor het op afstand ondertekenen van documenten en codes
  3. Installeer eSigner CKA op uw computer en configureer de ondertekeningsmodus (handmatig of geautomatiseerd) en het type ondertekening (productie of test). Raadpleeg dit artikel voor installatie-instructies: Hoe installeer ik SSL.com eSigner Cloud Key Adapter (CKA).

Gebruikers kunnen code ondertekenen met de functie Extended Validation Code Signing van eSigner. Klik hieronder voor meer info.

lees meer

Optionele procedure: gebruik Pre-Signing Malware Scan

Malware Scan is een cruciale service van SSL.com die ervoor zorgt dat software vrij is van malware voordat deze wordt ondertekend met een codeondertekeningscertificaat. Door Malware Scan te integreren, voegen ontwikkelaars een robuuste beveiligingslaag toe, waardoor het ondertekeningsproces automatisch wordt gestopt als er malware wordt gedetecteerd en de ontwikkelaar wordt gewaarschuwd om de nodige acties te ondernemen.

Instructies:

  1. Log in op uw SSL.com-account. Klik op het tabblad bestellingen gevolgd door de Download link van uw certificaat om de details ervan weer te geven. Scroll naar beneden naar de GEGEVENS ONDERTEKENEN sectie en zoek het gedeelte met uw eSigner-certificaatreferenties. Zorg ervoor dat de keuzerondjes die zeggen ondertekeningsgegevens ingeschakeld en malwareblokkering ingeschakeld zijn gekozen.
  2. Installeer eSigner Cloud Key Adapter.
  3. Installeer eSigner CodeSignTool. Klik hier om eSigner CodeSignTool te downloaden.
  4. Scan de code op CodeSignTool met behulp van de volgende opdracht: scan_code [-hV] -input_file_path=<inputFilePath> -password=<PASSWORD> [-program_name=<programName>] -username=<USERNAME>
  5. Gebruik SignTool om de code te ondertekenen met eSigner CKA met behulp van de volgende opdracht: scan_code -username=<USERNAME> -password=<PASSWORD> -credential_id=<eSigner Credential ID> -input_file_path=<inputFilePath>

parameters:

  • -input_file_path=<PATH>: Pad van codeobject dat moet worden ondertekend.
  • -username=<USERNAME>SSL.com account gebruikersnaam
  • -password=<PASSWORD>SSL.com account wachtwoord.
  • -program_name=<PROGRAM_NAME>: Naam van het programma
  • -credential_id=<CREDENTIAL_ID>: Referentie-ID voor ondertekeningscertificaat. Uw eSigner-referentie-ID bevindt zich in uw SSL.com certificaat bestelpagina.

Formuleer het commando voor het ondertekenen van code

Onderdelen van het Commando

Voor zowel handmatige als geautomatiseerde codeondertekening is de opdracht bevat:

  1. De locatie van SignTool (opdrachtregeltool die verantwoordelijk is voor het digitaal ondertekenen van een bestand en de handtekening verifieert), tussen dubbele aanhalingstekens. Voorbeeld: “C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe”
    Let op: de locatie van SignTool is afhankelijk van de gedownloade SDK-versie en de gebruikte architectuur.
  2. De /fdsha256 optie die het hash-algoritme specificeert
  3. De /tr http://ts.ssl.com optie die het tijdstempelserveradres specificeert
  4. /tdsha256 optie die het tijdstempelsamenvattingsalgoritme specificeert
  5. De /sha1 optie die de vingerafdruk specificeert die SignTool gebruikt om het juiste code-ondertekeningscertificaat uit de sleutelopslag te vinden
  6. De daadwerkelijke certificaat duimafdruk
  7. Het pad van het bestand dat wordt ondertekend, tussen dubbele aanhalingstekens: “SIGNABLE FILE PATH”

Globaal gezien zou de opdracht er als volgt uit moeten zien: 

"C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe" teken /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 certificaat duimafdruk " ONDERTEKENBAAR BESTANDSPAD”

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.

Uw certificaatvingerafdruk vinden

Later, bij het installeren van eSigner CKA en het toevoegen van uw EV Code Signing-certificaat aan de Gebruikerscertificaatarchief, kunt u de vingerafdruk van uw EV Code Signing-certificaat controleren door op te drukken Windows-toets + R en typ dan in certmgr.msc om toegang te krijgen tot het gebruikerscertificaatarchief. Wanneer het venster Certificaatbeheer verschijnt, klikt u op de persoonlijke map in het linkerdeelvenster en selecteer vervolgens de Certificeringen submap aan de rechterkant om uw EV Code Signing-certificaat te vinden.

Dubbelklik op het certificaat. Selecteer de details tab en scroll dan naar beneden om de Thumbprint te onthullen. Kopieer de Thumbprint en neem deze op in uw opdracht wanneer u code ondertekent.

Handmatige code-ondertekening

Installeer eSigner CKA

Toegang tot SignTool via de opdrachtregel

Ter herinnering: de opdracht voor het ondertekenen van code ziet er als volgt uit: 

"C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe" teken /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 certificaat duimafdruk " ONDERTEKENBAAR BESTANDSPAD”

Nadat u de opdracht hebt geschreven en op hebt gedrukt Enter, u ziet het bericht Klaar met het toevoegen van extra winkel. Er verschijnt dan een venster waarin u de gebruikersnaam en het wachtwoord van uw SSL.com-account moet invoeren.

Voer het eenmalige wachtwoord (OTP) in 

Een eenmalig wachtwoord (OTP) voor uw eSigner-ingeschreven EV Code Signing-certificaat wordt naar uw Authenticator-app verzonden. Na succesvolle invoer geeft de opdrachtprompt aan dat uw bestand met succes is ondertekend.

Succes! Uw code is nu ondertekend. 

Controleer de digitale handtekening op het bestand

Na succesvolle code-ondertekening kunt u nu de details van de digitale handtekening op het bestand controleren. Klik met de rechtermuisknop op het ondertekende bestand, klik op Koten, gevolgd door de Digitale handtekeningen Tabblad. Hier ziet u de naam van de ondertekenaar, het gebruikte digest-algoritme en de tijdstempel van de handtekening. Klik op de Details knop voor meer informatie over de ondertekende code.

U kunt de informatie lezen die vermeld staat Deze digitale handtekening is OK. Ga verder om op de . te klikken Certificaat weergeven knop.

Na het klikken op de Certificaat weergeven klikt, leest u informatie die aangeeft dat het digitale certificaat dat voor het ondertekende bestand is uitgegeven, ervoor zorgt dat het van de uitgever afkomstig is en het na publicatie beschermt tegen wijziging.

Geautomatiseerde code-ondertekening

Toegang tot SignTool via de opdracht

Ter herinnering: de opdracht voor het ondertekenen van code ziet er als volgt uit: 

C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe” sign /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 certificaat thumbprint “SIGNABLE BESTANDSPAD"

Openen Command Prompt en plaats de opdracht. Nadat u op enter hebt gedrukt, ziet u de melding Klaar met het toevoegen van extra winkel.

Na een paar seconden ziet u de melding Succesvol ondertekend. Dit geeft aan dat uw bestand op een geautomatiseerde manier is ondertekend, zonder dat er extra OTP's nodig zijn. 

Controleer de aanwezigheid van de digitale handtekening op uw bestand

Open de maplocatie van uw ondertekende bestand. Klik er met de rechtermuisknop op en klik vervolgens op Koten. Klik op het tabblad Digitale handtekeningen en hier ziet u dat het gebruikte veilige hash-algoritme 256 bits heeft. Klik op de onmiddellijke ruimte met de naam van de ondertekenaar, het digest-algoritme en het tijdstempel. Nadat het is gemarkeerd, gaat u verder met klikken op de Details knop.

Er verschijnt dan een pop-upvenster waarin staat dat de digitale handtekening op het bestand geldig is, evenals het specifieke tijdstip waarop het is ondertekend. Klik op de Certificaat weergeven om meer informatie te zien over het EV Code Signing digitale certificaat dat is uitgegeven. 

U ziet informatie over het EV Code Signing-certificaat waarin staat dat het u valideert als de maker van het uitvoerbare bestand en dat uw bestand wordt beschermd tegen manipulatie. 

Gerelateerde Code Signing-handleidingen met behulp van eSigner CKA

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.