Wichtige Erkenntnisse
- Mit einem Codesignaturzertifikat können Sie Software kryptografisch signieren, sodass Benutzer und Betriebssysteme überprüfen können, wer sie veröffentlicht hat und ob sie seit der Veröffentlichung nicht manipuliert wurde.
- SSL.com stellt private Codesignaturschlüssel nur für FIPS-validierte Hardware (YubiKey- oder Thales SafeNet-USB-Token) oder für Cloud-basierte Dienste aus. eSignierer Dienst – private Schlüssel können niemals als herunterladbare Datei exportiert werden PFX Datei.
- Die Signierung erfolgt mit Microsofts SignTooloder ein eSignatur-Tool (eSigner-CKA, eSigner CodeSignTool, oder der eSigner CSC API), je nachdem, ob sich Ihr Zertifikat auf einem Token oder in der Cloud befindet.
- Gemäß den CA/Browser Forum Baseline Requirements ist ab dem 1. März 2026 die Gültigkeitsdauer öffentlich vertrauenswürdiger Codesignaturzertifikate auf 458 Tage begrenzt; die von Ihnen erworbene Laufzeit bleibt davon unberührt, jedoch müssen einzelne Zertifikate innerhalb dieser Laufzeit möglicherweise regelmäßig neu ausgestellt werden.
- Versehen Sie Ihre Signaturen stets mit einem Zeitstempel, damit sie auch nach Ablauf des Zertifikats selbst noch gültig sind.
Gemeinsame Voraussetzungen für alle Signiermethoden
Bevor Sie beginnen, stellen Sie unabhängig von der gewählten Methode zur Zertifikatsübermittlung sicher, dass Sie Folgendes haben:
- Windows SDK installiert, Die umfasst SignTool (SignTool wird mit dem Windows 10/11 SDK ausgeliefert – ein separater Download ist nicht erforderlich)
- Das die Datei, die Sie unterschreiben möchten Lokal gespeichert und über die Kommandozeile zugänglich
- Administratorzugriff auf dem Signaturrechner, da einige Konfigurationsschritte und SignTool-Operationen erhöhte Berechtigungen erfordern.
Ab hier teilt sich der Einrichtungspfad je nachdem, ob sich Ihr Zertifikat auf einem Hardware-Token befindet oder bei eSigner registriert ist.
Option 1: Tokenbasierte Codesignatur
SSL.com liefert Codesignaturzertifikate auf zwei unterstützten Hardware-Tokens aus: YubiKey (FIPS-validiert) und Thales SafeNet (Gemalto)Diese Anleitung setzt voraus, dass auf Ihrem Token bereits ein Zertifikat installiert ist.
A. YubiKey-Codesignierung
Installations- und Konfigurationsanforderungen
- Installieren Sie das Windows SDK und SignTool. SignTool ist im Windows 10/11 SDK enthalten und wird üblicherweise in einem ähnlichen Pfad installiert wie C: \ Programme (x86) \ Windows Kits \ 10 \ bin \ \ x64 \ signtool.exe.
- Laden Sie die YubiKey Smartcard-MinitreiberDieser Treiber ist bei Yubico erhältlich. Er wird benötigt, damit Windows das FIPS-Token erkennt.
- Suchen Sie Ihre YubiKey-PIN. Sie werden bei jeder Anmeldung zur Eingabe dieser PIN aufgefordert. Sie können diese in Ihrem SSL.com-Konto einsehen.
Unterzeichnen Ihrer ersten Datei
Nachdem der Token angeschlossen und der Minidriver installiert ist, öffnen Sie PowerShell oder die Eingabeaufforderung und führen Sie folgenden Befehl aus:
.\signtool.exe sign /fd sha256 /a "C:\path\to\MyExecutable.exe"
Hier die Funktion jedes einzelnen Teils dieses Befehls:
.\signtool.exeruft SignTool auf. Abhängig von Ihrer SDK-Version und der Konfiguration Ihres PATH benötigen Sie möglicherweise stattdessen den vollständigen Pfad zu signtool.exe.
/fd sha256Legt den beim Signieren verwendeten Hash-Algorithmus fest. Dieses Flag ist für Windows 10 SDK, HLK, WDK und ADK ab Build 20236 obligatorisch. SHA256 wird für höhere Sicherheit gegenüber SHA1 empfohlen.
/aweist SignTool an, automatisch ein geeignetes Codesignaturzertifikat auszuwählen – nützlich, wenn nur ein Zertifikat vorhanden ist.
"C:\path\to\MyExecutable.exe"ist der vollständige Pfad zu der Datei, die Sie signieren.
Sie werden aufgefordert, Ihre YubiKey-PIN einzugeben, um den Vorgang zu autorisieren.
Hinzufügen eines Zeitstempels (empfohlen)
Die Zeitstempelung stellt sicher, dass Ihre Signatur auch nach Ablauf des Zertifikats gültig bleibt, da der Zeitstempel beweist, dass der Code signiert wurde, als das Zertifikat noch gültig war. Hinzufügen /tr http://ts.ssl.com /td sha256 zu Ihrem Befehl – beachten Sie, dass der Zeitstempelserver von SSL.com dies erfordert /tr speziell die Flagge (nicht die ältere) /t Flagge), und /td muss kommen nachdem /tr oder SignTool verwendet stillschweigend standardmäßig den schwächeren SHA-1-Zeitstempelalgorithmus.
B. Thales SafeNet (Gemalto) USB-Token
Installations- und Konfigurationsanforderungen
- Installieren Sie das Windows SDK und SignTool. (wie oben).
- Installieren Sie den SafeNet-Authentifizierungsclient., die Middleware, die die Thales SafeNet-Hardware verwaltet. Die vollständige Anleitung mit detaillierten Download- und Installationshinweisen finden Sie hier: SafeNet-Authentifizierungsclient zum Herunterladen für Code Signing-Zertifikate
- Aktivieren Sie Ihren Thales SafeNet-Token. Da SSL.com das Zertifikat vor dem Versand auf dem Token vorinstalliert, erfolgt die Aktivierung über Ihr SSL.com-Konto und nicht lokal:
- Suchen Sie die auf dem physischen Token aufgedruckte Seriennummer.
- Melden Sie sich bei Ihrem SSL.com-Konto an und öffnen Sie die Bestellungen Tab.
- Klicken Sie auf den Download-/Details-Link für Ihre Zertifikatsbestellung und suchen Sie dann nach dem/der/das Physische Token .
- Geben Sie die Seriennummer des Tokens ein, um ihn zu aktivieren. Dadurch wird Ihre Aktivierungs-PIN (auch Token-Passwort genannt, das beim Anmelden eingegeben wird) und Ihr Admin-PIN (auch PUK genannt, dient nur zum Zurücksetzen eines gesperrten Tokens).
Unterzeichnen Ihrer ersten Datei
- Verbinden Sie den Thales SafeNet-Token mit Ihrem Computer.
- Öffnen Sie den SafeNet Authentication Client, damit das Token erkannt wird.
- Führen Sie den Signierbefehl aus:
signtool sign /tr http://ts.ssl.com /td sha256 /fd sha256 /a "PATH_OF_FILE_TO_BE_SIGNED"
/fd sha256— Digest-Algorithmus, der zum Signieren verwendet wird
/trhttp://ts.ssl.com— Zeitstempelserveradresse von SSL.com
/td sha256— Zeitstempel-Digest-Algorithmus
/a— wählt automatisch ein geeignetes Zertifikat aus
- Der Dateipfad sollte in doppelte Anführungszeichen gesetzt werden und den Dateinamen selbst enthalten, z. B.
"C:\Users\Admin\Documents\test file.dll".
Wenn Windows meldet, dass signtool wird nicht als Befehl erkannt, ersetzen Sie ihn. signtool im Befehl mit dem vollständigen Pfad in Anführungszeichen zu signtool.exe (Der genaue Pfad hängt von Ihrer installierten SDK-Version und Architektur ab.)
- Führen Sie die Eingabeaufforderung aus als Administrator und führe den Befehl aus.
- Geben Sie bei der entsprechenden Aufforderung Ihre Token-Passwort (die Aktivierungs-PIN von Ihrer SSL.com-Bestellseite).
- Eine Erfolgsmeldung bestätigt, dass die Datei signiert wurde.
Wenn Ihr Token gesperrt wird oder Sie sein Passwort ändern müssen, versuchen Sie nicht wiederholt, die PIN zu erraten, da dies zur Sperrung des Tokens führen kann.
Überprüfung Ihrer Signatur (beide Token-Typen)
Prüfen Sie nach der Unterzeichnung, ob die Unterschrift gültig ist:
.\signtool.exe verify /pa "C:\path\to\MyExecutable.exe"
Bei erfolgreicher Ausführung werden der verwendete Algorithmus und der Zeitstempel angezeigt. Sie können auch mit der rechten Maustaste auf die signierte Datei klicken und sie öffnen. Eigenschaften im Vergleichund überprüfen Sie die Digitale Signaturen Registerkarte zur visuellen Bestätigung der Identität des Unterzeichners und des Unterzeichnungsdatums.
Option 2: SSL.com eSigner Cloud Code Signing
Wenn die Verwaltung physischer Token für Ihr Team nicht praktikabel ist – insbesondere für verteilte Entwickler oder automatisierte Build-Pipelines – eSignierer Mit eSigner können Sie Code remote von jedem internetfähigen Gerät aus signieren, wobei der private Schlüssel im Cloud-HSM von SSL.com und nicht auf von Ihnen verwalteter Hardware gespeichert wird. Die Codesignierung mit eSigner erfordert ein EV-Codesignaturzertifikat und unterstützt eine breite Palette von Dateitypen, einschließlich Microsoft Authenticode-Formaten (.exe, . Dll, .sys, .ocxund andere), MSI-Installationsprogramme, PowerShell-Skripte, CAB- und CAT-Dateien, Java . Jar Dateien sowie – bei Signierung mit eSigner CKA – auch MSIX-, MDB- und ACCDE-Dateien. Die maximale Dateigröße für die Codesignierung beträgt 200 MB, unabhängig davon, ob Sie eSigner Express oder die eSigner-API verwenden.
Schritt 1: Registrieren Sie Ihr Zertifikat bei eSigner
Bevor Sie etwas signieren können, muss Ihre Zertifikatsbestellung bei eSigner registriert und mit der Zwei-Faktor-Authentifizierung (2FA) verknüpft werden, die für jeden Signiervorgang erforderlich ist. Sie haben zwei Registrierungsmöglichkeiten:
QR-Code-Methode (Authentifizierungs-App)
- Melden Sie sich bei Ihrem SSL.com-Konto an, klicken Sie Bestellungenund öffnen Sie die Detailseite Ihrer Zertifikatsbestellung.
- Finden Sie die eSigner Cloud Signing-Registrierung Abschnitt und wählen Sie OTP-APP als Ihre Zwei-Faktor-Methode.
- Erstellen Sie eine 4-stellige PIN und speichern Sie diese sicher – idealerweise in einem Passwort-Manager, da Sie sie später erneut benötigen, um Signaturgeräte hinzuzufügen, zu entfernen oder zu ersetzen.
- Klicken Sie auf OTP erstellen und Zertifikat ausstellenEin QR-Code erscheint.
- Scannen Sie den QR-Code mit einer Authentifizierungs-App wie Google Authenticator oder Authy. Die App generiert nun 30 Sekunden gültige Einmalpasswörter, die für alle zukünftigen Anmeldevorgänge verwendet werden. Beachten Sie, dass der QR-Code nur einmal angezeigt wird – er erscheint nicht erneut, wenn Sie die Seite neu laden.
OTP-SMS-Methode
- Melden Sie sich in Ihrem SSL.com-Konto an (wählen Sie das richtige Team aus, falls Sie mehreren Teams angehören), klicken Sie Bestellungenund öffnen Sie die Detailseite Ihres Zertifikats.
- Der Zweite Faktor-AuthentifizierungWählen OTP-SMS.
- Im Handy Nummer Bestätigung Wählen Sie im entsprechenden Abschnitt Ihre Landesvorwahl aus, geben Sie Ihre Handynummer ein und klicken Sie auf „Weiter“. OTP-SMS senden.
- Prüfen Sie auf Ihrem Telefon, ob Sie einen 6-stelligen Code von „AuthMSG“ (dem Verifizierungsdienst von SSL.com) erhalten haben, geben Sie diesen auf der Bestellseite ein und klicken Sie auf „Bestellen“. Telefon verifizieren.
- Klicken Sie nach der Überprüfung auf OTP erstellen und Zertifikat ausstellen Um die Registrierung abzuschließen, werden auf Ihrer Kontoseite anschließend die letzten vier Ziffern der verifizierten Telefonnummer angezeigt.
Schritt 2: Wählen Sie ein Signaturtool aus
Nach der Anmeldung wählen Sie die Signaturmethode, die am besten zu Ihrem Arbeitsablauf passt:
eSigner Cloud Key Adapter (CKA)
Eine Windows-Anwendung, die sich wie ein virtueller USB-Token verhält und Ihr Cloud-basiertes Zertifikat in den Windows-Zertifikatspeicher lädt, sodass vertraute Tools wie signtool.exe und certutil.exe Es kann direkt verwendet werden. Dies ist die beste Option für Teams, die ihre bestehenden SignTool-basierten Workflows ohne physische Hardware weiter nutzen möchten.
Anforderungen: Zertifikat in eSigner registriert; eSigner CKA installiert und für manuelle oder automatische Signierung konfiguriert; Windows SDK/SignTool installiert; die zu signierende Datei lokal gespeichert; und für die manuelle Signierung ist Ihre 2FA-Methode bereit.
Ein typischer CKA-Signaturbefehl sieht wie folgt aus:
"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 CERTIFICATE_THUMBPRINT "SIGNABLE_FILE_PATH"
/fd sha256— Hash-Algorithmus
/trhttp://ts.ssl.comund/td sha256— Zeitstempelserver und Digest-Algorithmus
/sha1 CERTIFICATE_THUMBPRINT— identifiziert anhand des Fingerabdrucks das zu verwendende Zertifikat aus dem Zertifikatsspeicher.
- Der Pfad zur signierbaren Datei muss in Anführungszeichen gesetzt werden.
Manche Dateitypen erfordern zusätzliche Konfigurationen, bevor eSigner CKA sie signieren kann. SSL.com bietet für jeden Dateityp separate Anleitungen an:
- Signieren von Hardware Lab Kit (HLK)-Dateien — Verwendung von eSigner CKA mit HLKSigntool zur Vorbereitung von Kernelmodustreibern für die Microsoft-Einreichung
- Signieren von VBA-Makros — Signieren von Microsoft Visual Basic for Applications-Makros, die zur Automatisierung von Office-Aufgaben verwendet werden
- Signieren von .app-Dateien — die Identität einer vollständigen Microsoft-Anwendungslösung sicher definieren und referenzieren
- Signieren von .vsix-Dateien — Signieren von Visual Studio-Erweiterungs- und Add-on-Paketen
eSigner CKA lässt sich außerdem in CI/CD-Plattformen wie CircleCI, GitHub Actions, GitLab CI, Travis CI und Azure Pipelines integrieren, um eine vollautomatische Signierung zu ermöglichen.
eSigner CodeSignTool
CodeSignTool ist ein plattformübergreifendes, Java-basiertes Kommandozeilenprogramm für die automatisierte und großvolumige Signierung, einschließlich CI/CD-Pipelines. Anstatt die eigentliche Datei zu übertragen, sendet CodeSignTool lediglich einen kryptografischen Hash der Datei zur Signierung an SSL.com. Dies ist ein entscheidender Vorteil, wenn Ihre Dateien sensiblen Code enthalten, der Ihr Netzwerk nicht verlassen darf.
Für die CI/CD-Automatisierung verwendet CodeSignTool die folgenden Umgebungsvariablen:
|
Variable |
Zweck |
|
USERNAME |
Ihr SSL.com-Kontobenutzername |
|
PASSWORD |
Ihr SSL.com-Kontopasswort |
|
CREDENTIAL_ID |
Gibt an, welches Codesignaturzertifikat verwendet werden soll – nur erforderlich, wenn Sie über mehr als ein eSigner-Zertifikat verfügen; wird dieses bei Verwendung nur eines Zertifikats weggelassen, wird standardmäßig dieses verwendet. |
|
TOTP_SECRET |
OAuth-TOTP-Geheimnis, das für die automatisierte Zwei-Faktor-Authentifizierung verwendet wird – siehe Automatisieren Sie die Signatur des eSigner EV-Codes Entwicklung |
|
UMGEBUNGSNAME |
Setzen Sie auf TESTEN or REF |
Und diese Eingaben:
- Eingabedateipfad (erforderlich) — Pfad zur zu signierenden Datei
- Ausgabeverzeichnis_Pfad — Zielverzeichnis für die signierte Datei; wird dieses Feld weggelassen, wird die Originaldatei mit der signierten Version überschrieben.
Plattformspezifische Integrationsleitfäden sind auch unter folgenden Titeln verfügbar:
Häufig gestellte Fragen
Kann ich meinen privaten Codesignaturschlüssel exportieren, um ihn auf einem anderen Rechner zu verwenden? Nein. Gemäß den CA/Browser Forum Baseline Requirements können die privaten Code-Signaturschlüssel von SSL.com nicht exportiert werden und werden niemals zum Download bereitgestellt. PFX Dateien. Schlüssel befinden sich ausschließlich auf einem FIPS-validierten YubiKey, einem Thales SafeNet-Token oder innerhalb des eSigner Cloud-HSM von SSL.com.
Warum hat sich die Gültigkeitsdauer meines Zertifikats verkürzt? Ab dem 1. März 2026 begrenzen die CA/Browser Forum Baseline Requirements die maximale Gültigkeitsdauer öffentlich vertrauenswürdiger Codesignaturzertifikate auf 458 Tage. Dies mindert nicht den Wert Ihres Kaufs – SSL.com setzt diese Begrenzung bei der Ausstellung neuer Zertifikate seit dem 27. Februar 2026 durch, und Kunden erhalten weiterhin die volle Laufzeit, die sie erworben haben. Einzelne Zertifikate innerhalb dieser Laufzeit müssen jedoch möglicherweise häufiger neu ausgestellt werden.
Muss ich meinen signierten Code mit einem Zeitstempel versehen? Ja. Ohne einen vertrauenswürdigen Zeitstempel verliert Ihre Signatur ihre Gültigkeit, sobald das Zertifikat abläuft. Mit einem Zeitstempel bleibt die Signatur hingegen dauerhaft vertrauenswürdig, da er beweist, dass der Code signiert wurde, als das Zertifikat noch gültig war.
Worin besteht der Unterschied zwischen tokenbasierter Signatur und eSigner? Tokenbasierte Signaturverfahren (YubiKey oder Thales SafeNet) speichern Ihren privaten Schlüssel auf physischer Hardware, die mit dem Signaturrechner verbunden sein muss. eSigner hingegen speichert den Schlüssel im Cloud-HSM von SSL.com und ermöglicht das Signieren von jedem internetfähigen Gerät mit Zwei-Faktor-Authentifizierung – ideal für verteilte Teams oder CI/CD-Automatisierung.
Welche Dateitypen kann ich mit eSigner signieren? eSigner unterstützt Microsoft Authenticode-Formate (EXE, DLL, SYS, OCX und verwandte Typen), MSI-Installationsprogramme, PowerShell-Skripte, CAB/CAT-Dateien und Java-JAR-Dateien sowie MSIX, MDB und ACCDE, wenn diese über eSigner CKA signiert werden. Die Dokumentensignatur (PDF, DOCX, PPTX, XLSX) erfolgt separat über die Dokumentensignatur-Tools von eSigner.
Fazit
Ob Sie nun gelegentlich ein Installationsprogramm von einem einzelnen Entwicklerrechner signieren oder Tausende von Signaturvorgängen in einer CI/CD-Pipeline automatisieren – das Ziel ist immer dasselbe: Ihren Kunden, Partnern und Betriebssystemen zu beweisen, dass Ihre Software exakt dem entspricht, was Sie versprechen, und dass sie seit der Veröffentlichung nicht verändert wurde. Tokenbasierte Signaturen mit YubiKey oder Thales SafeNet bieten Ihnen eine direkte, hardwaregestützte Kontrolle, die sich ideal für kleinere Teams oder seltene Signaturanforderungen eignet. Das Cloud-basierte Modell von eSigner hingegen beseitigt die Hürden physischer Token vollständig und ermöglicht verteilten Teams und automatisierten Build-Systemen, Code sicher von überall aus zu signieren.
Sobald Ihre Signaturumgebung korrekt konfiguriert ist, läuft der tägliche Prozess routinemäßig ab: Hash, Signieren, Zeitstempeln, Verifizieren. Wenn Sie es gleich beim ersten Mal richtig machen, bedeutet das weniger Sicherheitswarnungen von Browsern und Betriebssystemen, stärkeres Markenvertrauen und einen reibungsloseren Weg zur Einhaltung der sich ständig weiterentwickelnden Anforderungen von Zertifizierungsstellen und Browserforen. Bei Fragen zu Ihrer spezifischen Konfiguration steht Ihnen das Support-Team von SSL.com per E-Mail zur Verfügung. Support@SSL.comtelefonisch unter 1-877-SSL-SECUREoder per Live-Chat.