Points clés à retenir
- Un certificat de signature de code permet de signer cryptographiquement un logiciel afin que les utilisateurs et les systèmes d'exploitation puissent vérifier qui l'a publié et confirmer qu'il n'a pas été altéré depuis sa mise en ligne.
- SSL.com délivre des clés privées de signature de code uniquement à des matériels validés FIPS (jetons USB YubiKey ou Thales SafeNet) ou à des serveurs cloud. e-signataire service — les clés privées ne peuvent jamais être exportées sous forme de fichier téléchargeable . Pfx fichier.
- La signature est effectuée avec Microsoft. Outil de signature, ou un outil de signature électronique (Signataire électronique CKA, eSigner CodeSignTool, ou l'API eSigner CSC), selon que votre certificat réside sur un jeton ou dans le cloud.
- À compter du 1er mars 2026, les exigences de base du CA/Browser Forum limitent la validité des certificats de signature de code publiquement approuvés à 458 jours ; la durée de votre achat n’est pas affectée, mais les certificats individuels au sein de cette période peuvent nécessiter une réémission périodique.
- Horodatez toujours vos signatures afin qu'elles restent valides après l'expiration du certificat lui-même.
Prérequis communs à toutes les méthodes de signature
Avant de commencer, quelle que soit la méthode de délivrance des certificats que vous utilisez, assurez-vous d'avoir :
- SDK windows Installé, Qui comprend Outil de signature (SignTool est fourni avec le kit de développement logiciel Windows 10/11 ; aucun téléchargement supplémentaire n’est requis.)
- Le fichier que vous avez l'intention de signer enregistré localement et accessible depuis la ligne de commande
- Accès administrateur sur la machine de signature, car certaines étapes de configuration et opérations SignTool nécessitent des autorisations élevées.
À partir de là, le processus d'installation se divise selon que votre certificat se trouve sur un jeton matériel ou qu'il est enregistré dans eSigner.
Option 1 : Signature de code basée sur des jetons
SSL.com livre des certificats de signature de code sur deux jetons matériels compatibles : YubiKey (validé FIPS) et Thales SafeNet (Gemalto)Ce guide suppose qu'un certificat est déjà installé sur votre jeton.
A. Signature de code YubiKey
Exigences d'installation et de configuration
- Installez le SDK Windows et SignTool. SignTool est fourni avec le SDK Windows 10/11 et est généralement installé dans un chemin similaire à celui-ci : C: \ Program Files (x86) \ Windows Kits \ 10 \ bin \ \ x64 \ signtool.exe.
- Téléchargez et installez le Mini pilote de carte à puce YubiKeyCe pilote, disponible auprès de Yubico, est nécessaire pour que Windows reconnaisse le jeton FIPS.
- Trouvez votre code PIN YubiKey. Ce code PIN vous sera demandé à chaque connexion. Vous pouvez le consulter depuis votre compte SSL.com.
Signature de votre premier fichier
Une fois le jeton connecté et le minipilote installé, ouvrez PowerShell ou l'invite de commandes et exécutez :
.\signtool.exe sign /fd sha256 /a "C:\path\to\MyExecutable.exe"
Voici à quoi sert chaque partie de cette commande :
.\signtool.exeinvoque SignTool. Selon votre version du SDK et la configuration de votre variable PATH, vous pourriez avoir besoin du chemin complet vers signtool.exe.
/fd sha256Définit l'algorithme de hachage utilisé lors de la signature. Cette option est obligatoire sur les versions 20236 et supérieures du SDK Windows 10, du HLK, du WDK et de l'ADK ; l'utilisation de SHA256 est recommandée plutôt que de SHA1 pour une sécurité renforcée.
/aindique à SignTool de sélectionner automatiquement un certificat de signature de code approprié, ce qui est utile lorsqu'un seul certificat est présent.
"C:\path\to\MyExecutable.exe"Il s'agit du chemin d'accès complet au fichier que vous signez.
Vous serez invité à saisir votre code PIN YubiKey pour autoriser l'opération.
Ajout d'un horodatage (recommandé)
L'horodatage garantit la validité de votre signature même après l'expiration du certificat, car il prouve que le code a été signé pendant la période de validité du certificat. /tr http://ts.ssl.com /td sha256 à votre commande — veuillez noter que le serveur d'horodatage de SSL.com exige le /tr drapeau en particulier (pas l'ancien) /t drapeau), et /td doit venir après /tr ou SignTool utilisera par défaut, sans notification, l'algorithme d'horodatage SHA-1, moins robuste.
B. Jeton USB Thales SafeNet (Gemalto)
Exigences d'installation et de configuration
- Installez le SDK Windows et SignTool. (comme ci-dessus).
- Installer le client d'authentification SafeNet, le logiciel intermédiaire qui gère le matériel Thales SafeNet. Pour consulter le guide complet, avec des instructions détaillées de téléchargement et d'installation, veuillez vous référer à : Téléchargement du client d'authentification SafeNet pour les certificats de signature de code
- Activez votre jeton Thales SafeNet. Étant donné que SSL.com préinstalle le certificat sur le jeton avant l'expédition, l'activation se fait via votre compte SSL.com et non localement :
- Repérez le numéro de série imprimé sur le jeton physique.
- Connectez-vous à votre compte SSL.com et ouvrez le Commandes languette.
- Cliquez sur le lien de téléchargement/détails de votre commande de certificat, puis trouvez le Jetons physiques .
- Saisissez le numéro de série du jeton pour l'activer. Cela révèle votre Code PIN d'activation (également appelé mot de passe du jeton, saisi lors de la connexion) et votre PIN administrateur (également appelé PUK, utilisé uniquement pour réinitialiser un jeton verrouillé).
Signature de votre premier fichier
- Connectez le jeton Thales SafeNet à votre ordinateur.
- Ouvrez le client d'authentification SafeNet pour que le jeton soit reconnu.
- Exécutez la commande de signature :
signtool sign /tr http://ts.ssl.com /td sha256 /fd sha256 /a "PATH_OF_FILE_TO_BE_SIGNED"
/fd sha256— algorithme de hachage utilisé pour la signature
/trhttp://ts.ssl.com— Adresse du serveur d'horodatage de SSL.com
/td sha256— algorithme de condensé d'horodatage
/a— sélectionne automatiquement un certificat approprié
- Le chemin d'accès au fichier doit être placé entre guillemets doubles et inclure le nom du fichier lui-même, par exemple :
"C:\Users\Admin\Documents\test file.dll".
Si Windows signale que outil de signalisation n'est pas reconnu comme une commande, remplacez outil de signalisation dans la commande avec le chemin complet entre guillemets vers signtool.exe (Le chemin exact dépend de la version et de l'architecture de votre SDK installé).
- Exécuter l'invite de commande comme administrateur et exécutez la commande.
- Lorsque vous y êtes invité, entrez votre Mot de passe du jeton (le code PIN d'activation figurant sur votre page de commande SSL.com).
- Un message de confirmation atteste que le fichier est signé.
Si votre jeton se bloque ou si vous devez changer son mot de passe, n'essayez pas de deviner le code PIN à plusieurs reprises, car cela peut bloquer le jeton.
Vérification de votre signature (les deux types de jetons)
Après avoir signé, vérifiez que la signature est valide :
.\signtool.exe verify /pa "C:\path\to\MyExecutable.exe"
En cas de succès, l'algorithme et l'horodatage utilisés s'affichent. Vous pouvez également cliquer avec le bouton droit sur le fichier signé et l'ouvrir. Propriétés, et vérifiez le Signatures numériques Onglet permettant de confirmer visuellement l'identité du signataire et la date de signature.
Option 2 : Signature électronique dans le cloud SSL.com
Si la gestion de jetons physiques n'est pas pratique pour votre équipe — notamment pour les développeurs répartis ou les pipelines de construction automatisés — e-signataire permet de signer du code à distance depuis n'importe quel appareil connecté à Internet, la clé privée étant sécurisée dans le HSM cloud de SSL.com plutôt que sur le matériel que vous gérez. La signature de code eSigner nécessite un certificat de signature de code EV et prend en charge une large gamme de types de fichiers, y compris les formats Microsoft Authenticode (.exe, . Dll, .sys, .ocx, et autres), les installateurs MSI, les scripts PowerShell, les fichiers CAB et CAT, Java .jar Les fichiers .exe et, lorsqu'ils sont signés via eSigner CKA, les fichiers MSIX, MDB et ACCDE sont également pris en charge. La taille maximale des fichiers est de 200 Mo pour la signature de code, que vous utilisiez eSigner Express ou l'API eSigner.
Étape 1 : Enregistrez votre certificat dans eSigner
Avant de pouvoir signer quoi que ce soit, votre commande de certificat doit être enregistrée dans eSigner et associée à l'authentification à deux facteurs (2FA), requise pour chaque opération de signature. Deux options d'inscription s'offrent à vous :
Méthode du code QR (application d'authentification)
- Connectez-vous à votre compte SSL.com, cliquez Commandes, et ouvrez la page de détails de votre commande de certificat.
- Découvrez Inscription à la signature dans le cloud eSigner et sélectionnez APPLICATION OTP comme méthode de deuxième facteur.
- Créez un code PIN à 4 chiffres et enregistrez-le en lieu sûr, idéalement dans un gestionnaire de mots de passe, car vous en aurez besoin ultérieurement pour ajouter, supprimer ou remplacer des dispositifs de signature.
- Cliquez à nouveau créer OTP et délivrer un certificatUn code QR apparaît.
- Scannez le code QR avec une application d'authentification comme Google Authenticator ou Authy. L'application générera alors des mots de passe à usage unique de 30 secondes, nécessaires pour chaque connexion ultérieure. Veuillez noter que le code QR ne s'affiche qu'une seule fois ; il ne réapparaîtra pas si vous rechargez la page.
Méthode SMS OTP
- Connectez-vous à votre compte SSL.com (sélectionnez la bonne équipe si vous en appartenez à plusieurs), cliquez Commandes, et ouvrez la page de détails de votre certificat.
- Sous Authentification à deux facteurs, sélectionnez SMS OTP.
- Dans l' Vérification du numéro de téléphone portable Dans cette section, choisissez votre indicatif pays, saisissez votre numéro de mobile et cliquez. envoyer un SMS OTP.
- Vérifiez votre téléphone pour trouver un code à 6 chiffres envoyé par « AuthMSG » (le service de vérification de SSL.com), saisissez-le sur la page de commande et cliquez sur vérifier le téléphone.
- Une fois vérifié, cliquez créer OTP et délivrer un certificat Pour finaliser votre inscription, les quatre derniers chiffres de votre numéro de téléphone vérifié s'afficheront sur votre page de compte.
Étape 2 : Choisir un outil de signature
Une fois inscrit, choisissez la méthode de signature qui convient à votre flux de travail :
Adaptateur de clé cloud eSigner (CKA)
Une application Windows qui se comporte comme un jeton USB virtuel, chargeant votre certificat cloud dans le magasin de certificats Windows afin que des outils familiers comme signtool.exe et certutil.exe Il peut être utilisé directement. C'est la meilleure option pour les équipes qui souhaitent continuer à utiliser leurs flux de travail existants basés sur SignTool sans matériel physique.
Exigences : Certificat enregistré dans eSigner ; CKA eSigner installé et configuré pour la signature manuelle ou automatisée ; SDK/SignTool Windows installé ; fichier à signer enregistré localement ; et, pour la signature manuelle, votre méthode 2FA prête.
Une commande de signature CKA typique ressemble à ceci :
"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— algorithme de hachage
/trhttp://ts.ssl.comet/td sha256— Serveur d'horodatage et algorithme de condensé
/sha1 CERTIFICATE_THUMBPRINT— identifie, par son empreinte numérique, le certificat à utiliser dans le magasin de certificats.
- Le chemin d'accès au fichier signable doit être mis entre guillemets.
Certains types de fichiers nécessitent une configuration supplémentaire avant de pouvoir être signés par eSigner CKA. SSL.com propose des guides dédiés pour chacun d'eux :
- Fichiers du kit de laboratoire matériel de signature (HLK) — Utilisation de eSigner CKA avec HLKSigntool pour préparer les pilotes en mode noyau en vue de leur soumission à Microsoft
- Signature des macros VBA — signature des macros Microsoft Visual Basic pour Applications utilisées pour automatiser les tâches Office
- Signature des fichiers .app — définir et référencer de manière sécurisée l'identité d'une solution applicative Microsoft complète
- Signature des fichiers .vsix — signature des packages d'extension et de modules complémentaires Visual Studio
eSigner CKA s'intègre également aux plateformes CI/CD, notamment CircleCI, GitHub Actions, GitLab CI, Travis CI et Azure Pipelines, pour une signature entièrement automatisée.
eSigner CodeSignTool
CodeSignTool est un utilitaire en ligne de commande multiplateforme, basé sur Java, conçu pour la signature automatisée et à grande échelle, notamment pour les pipelines CI/CD. Au lieu de transmettre votre fichier original, CodeSignTool envoie uniquement un hachage cryptographique du fichier à SSL.com pour signature, ce qui représente un avantage considérable si vos fichiers contiennent du code sensible qui ne doit pas quitter votre réseau.
Pour l'automatisation CI/CD, CodeSignTool s'appuie sur les variables d'environnement suivantes :
|
Variable |
Interet |
|
USERNAME |
Nom d'utilisateur de votre compte SSL.com |
|
MOT DE PASSE |
Mot de passe de votre compte SSL.com |
|
CREDENTIAL_ID |
Indique le certificat de signature de code à utiliser — requis uniquement si vous possédez plusieurs certificats eSigner ; si ce champ est omis avec un seul certificat, celui-ci sera utilisé par défaut. |
|
TOTP_SECRET |
Secret TOTP OAuth utilisé pour l'authentification à deux facteurs automatisée — voir la section Automatisez la signature de code eSigner EV guide |
|
ENVIRONNEMENT_NAME |
Régler TEST or REF |
Et ces entrées :
- chemin_fichier_entrée (obligatoire) — chemin d'accès au fichier à signer
- chemin_rép_sortie — Répertoire de destination du fichier signé ; si ce paramètre est omis, le fichier original est remplacé par la version signée.
Des guides d'intégration spécifiques à chaque plateforme sont également disponibles sous les titres suivants :
Questions fréquemment posées
Puis-je exporter ma clé privée de signature de code pour l'utiliser sur une autre machine ? Non. Conformément aux exigences de base du CA/Browser Forum, les clés privées de signature de code SSL.com ne peuvent être exportées et ne sont jamais disponibles au téléchargement. . Pfx Les clés résident uniquement sur une YubiKey validée FIPS, un jeton Thales SafeNet ou dans le HSM cloud eSigner de SSL.com.
Pourquoi la période de validité de mon certificat a-t-elle diminué ? À compter du 1er mars 2026, les exigences de base du CA/Browser Forum limitent la validité maximale des certificats de signature de code publiquement approuvés à 458 jours. Cela n'affecte en rien la valeur de votre achat : SSL.com applique cette limite à l'émission de nouveaux certificats depuis le 27 février 2026, et les clients bénéficient toujours de la durée de validité complète prévue, même si certains certificats devront peut-être être renouvelés plus fréquemment.
Dois-je horodater mon code signé ? Oui. Sans horodatage fiable, votre signature devient invalide dès l'expiration du certificat. Avec un horodatage, la signature reste valide indéfiniment, car elle prouve que le code a été signé pendant la période de validité du certificat.
Quelle est la différence entre la signature par jeton et eSigner ? La signature par jeton (YubiKey ou Thales SafeNet) stocke votre clé privée sur un matériel physique qui doit être connecté à la machine de signature. eSigner, quant à lui, stocke la clé dans le HSM cloud de SSL.com et vous permet de signer depuis n'importe quel appareil connecté à Internet grâce à l'authentification à deux facteurs (2FA) ; une solution plus adaptée aux équipes distribuées ou à l'automatisation CI/CD.
Quels types de fichiers puis-je signer avec eSigner ? eSigner prend en charge les formats Microsoft Authenticode (EXE, DLL, SYS, OCX et types associés), les installateurs MSI, les scripts PowerShell, les fichiers CAB/CAT et les fichiers JAR Java, ainsi que les formats MSIX, MDB et ACCDE lorsqu'ils sont signés via l'authentification eSigner CKA. La signature de documents (PDF, DOCX, PPTX, XLSX) est gérée séparément par les outils de signature de documents d'eSigner.
Conclusion
Que vous signiez ponctuellement un programme d'installation depuis le poste d'un développeur ou que vous automatisiez des milliers d'opérations de signature sur un pipeline CI/CD, l'objectif reste le même : prouver à vos clients, partenaires et systèmes d'exploitation que votre logiciel est conforme à sa description et qu'il n'a subi aucune modification depuis sa publication. La signature par jeton avec YubiKey ou Thales SafeNet offre un contrôle direct et matériel, idéal pour les petites équipes ou les besoins de signature peu fréquents. Le modèle cloud d'eSigner, quant à lui, élimine totalement les contraintes liées aux jetons physiques, permettant ainsi aux équipes distribuées et aux systèmes de compilation automatisés de signer du code en toute sécurité, où qu'ils soient.
Une fois votre environnement de signature correctement configuré, le processus quotidien devient routinier : hachage, signature, horodatage, vérification. Une configuration réussie dès le départ réduit les alertes de sécurité des navigateurs et des systèmes d'exploitation, renforce la confiance envers votre marque et facilite la mise en conformité avec les exigences des autorités de certification et des navigateurs, qui évoluent constamment. Pour toute question relative à votre configuration, l'équipe d'assistance de SSL.com est disponible par e-mail à l'adresse suivante : Support@SSL.com, par téléphone au 1-877-SSL-SECUREou par chat en direct.