eSigner CKA (adaptateur de clé cloud) est une application Windows qui utilise l'interface CNG (KSP Key Service Provider) pour activer certutil.exe et signtool.exe pour effectuer des opérations de signature de code via le API eSigner CSC.
Fonctionnant comme un jeton USB virtuelIl charge en toute sécurité les certificats de signature de code dans le magasin de certificats Windows sans nécessiter de matériel physique. En tant que méthode de signature basée sur le cloud, eSigner CKA élimine les coûts, les difficultés logistiques et les risques de sécurité liés aux jetons USB, tout en offrant des capacités de signature de niveau entreprise sans la complexité des HSM en réseau. Cela en fait un solution évolutive, sécurisée et rentable pour les flux de travail modernes de signature de code.
Ce guide couvre Signature de code manuelle et automatisée sous Windows à l'aide de SignTool avec des certificats de production ou de test. Contrairement aux jetons physiques, eSigner CKA prend en charge automatisation avancée, permettant une intégration transparente avec les outils CI/CD tels que GitHub Actions, GitLab CI, CircleCI et Travis CISi vous utilisez un outil CI/CD, consultez ce guide : Comment intégrer eSigner CKA avec les outils CI/CD pour la signature de code automatisée.
Exigences
- Un certificat de signature de code émis par SSLcom.
- Le certificat Code Signing doit être actuellement enregistré sur eSigner. Consultez ce guide : Inscrivez-vous avec eSigner pour la signature de documents et de codes à distance
- Installez eSigner CKA sur votre ordinateur et configurez le mode de signature (manuel ou automatisé) et le type de signature (production ou test). Reportez-vous à cet article pour obtenir des instructions d'installation : Comment installer l'adaptateur de clé cloud SSL.com eSigner (CKA).
Procédure facultative : utiliser l'analyse anti-programme malveillant avant signature
Malware Scan est un service essentiel de SSL.com qui garantit que les logiciels sont exempts de logiciels malveillants avant qu'ils ne soient signés avec un certificat de signature de code. En intégrant Malware Scan, les développeurs ajoutent une couche de sécurité robuste, interrompant automatiquement le processus de signature si un logiciel malveillant est détecté et alertant le développeur pour qu'il prenne les mesures nécessaires.
Étapes :
- Connectez-vous à votre compte SSL.com. Cliquez sur l'onglet Commandes suivi du download lien de votre certificat pour afficher ses détails. Faites défiler jusqu'à SIGNATURE DES IDENTIFICATIONS section et localisez la partie indiquant vos informations d'identification de certificat eSigner. Assurez-vous que les boutons radio indiquant identifiant de signature activé et bloqueur de logiciels malveillants activé sont choisis.


- Installez l'adaptateur de clé cloud eSigner.
- Installez eSigner CodeSignTool. Cliquez sur ici pour télécharger eSigner CodeSignTool.
- Scannez le code sur CodeSignTool à l'aide de la commande suivante :
scan_code [-hV] -input_file_path=<inputFilePath> -password=<PASSWORD> [-program_name=<programName>] -username=<USERNAME> - Utilisez SignTool pour signer le code avec eSigner CKA en utilisant la commande suivante :
scan_code -username=<USERNAME> -password=<PASSWORD> -credential_id=<eSigner Credential ID> -input_file_path=<inputFilePath>
Paramètres:
-input_file_path=<PATH>: Chemin de l'objet de code à signer.-username=<USERNAME>: SSL.com Nom d'utilisateur du compte-password=<PASSWORD>: SSL.com mot de passe du compte.-program_name=<PROGRAM_NAME>: Nom du programme-credential_id=<CREDENTIAL_ID>: ID d'identification pour la signature du certificat. Votre identifiant d'identification eSigner se trouve dans votre SSL.com page de commande de certificat.
Formuler la commande pour signer le code
Composants du Comand
Pour la signature de code manuelle et automatisée, la commande contient:
- L'emplacement de SignTool (outil de ligne de commande chargé de signer numériquement un fichier et de vérifier la signature), entre guillemets doubles. Exemple : «C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe"
Remarque : l’emplacement de SignTool dépend de la version du SDK téléchargée et de l’architecture utilisée. - Le /fdsha256 option qui spécifie l'algorithme de hachage
- Le / tr http://ts.ssl.com option qui spécifie l'adresse du serveur d'horodatage
- /tdsha256 option qui spécifie l'algorithme de résumé d'horodatage
- Le /sha1 option qui spécifie l'empreinte que SignTool utilise pour trouver le certificat de signature de code approprié dans le magasin de clés
- L'actuel empreinte digitale du certificat
- Le chemin du fichier qui sera signé, entouré de guillemets doubles : « SIGNABLE FILE PATH »
Dans l’ensemble, la commande devrait ressembler à ce qui suit :
"C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe" signe /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 empreinte du certificat " CHEMIN DE FICHIER SIGNABLE".
Si vous rencontrez cette erreur :
The timestamp certificate does not meet a minimum public key length requirement, vous devez contacter votre fournisseur de logiciels pour autoriser les horodatages des clés ECDSA.Si votre fournisseur de logiciels n'a aucun moyen d'autoriser l'utilisation du point de terminaison normal, vous pouvez utiliser ce point de terminaison hérité
http://ts.ssl.com/legacy pour obtenir un horodatage d'une unité d'horodatage RSA.
Localisation de l'empreinte de votre certificat
Plus tard, après avoir installé eSigner CKA et ajouté votre certificat de signature de code EV au Magasin de certificats utilisateur, vous pourrez vérifier l'empreinte de votre certificat EV Code Signing en appuyant sur Touche Windows + R puis tapez certmgr.msc pour accéder au magasin de certificats utilisateur. Lorsque la fenêtre du gestionnaire de certificats apparaît, cliquez sur le Personnel dossier sur le panneau de gauche, puis sélectionnez le Certificats sous-dossier à droite pour localiser votre certificat EV Code Signing.

Double-cliquez sur le certificat. Sélectionnez les détails Cliquez sur l'onglet puis faites défiler vers le bas pour afficher l'empreinte numérique. Copiez l'empreinte numérique et incluez-la dans votre commande lorsque vous signez du code.
Signature manuelle du code
Installer eSigner CKA
Accéder à SignTool via la ligne de commande
Pour rappel, la commande de signature de code ressemble à ce qui suit :
"C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe" signe /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 empreinte du certificat " CHEMIN DE FICHIER SIGNABLE"
Après avoir écrit la commande et appuyé sur Entrer, vous verrez le message Terminé Ajout d'un magasin supplémentaire. Une fenêtre apparaîtra alors vous demandant de saisir le nom d'utilisateur et le mot de passe de votre compte SSL.com.

Entrez le mot de passe à usage unique (OTP)
Un mot de passe à usage unique (OTP) pour votre certificat de signature de code EV inscrit par eSigner sera envoyé à votre application Authenticator. Une fois la saisie réussie, l'invite de commande indiquera que votre fichier a été signé avec succès.


Succès ! Votre code est maintenant signé.
Vérifier la signature numérique sur le fichier
Après une signature de code réussie, vous pouvez maintenant vérifier les détails de la signature numérique sur le fichier. Cliquez avec le bouton droit sur le fichier signé, cliquez sur Propriétés, suivi par le Signatures numériques Languette. Ici, vous verrez le nom du signataire, l'algorithme de résumé utilisé et l'horodatage de la signature. Clique le DÉTAILS bouton pour obtenir plus d'informations sur le code signé.

Vous pourrez lire les informations indiquant Cette signature numérique est OK. Continuez à cliquer sur le Afficher le certificat .

Après avoir cliqué sur le Afficher le certificat , vous lirez des informations indiquant que le certificat numérique émis pour le fichier signé garantit qu'il provient de l'éditeur et le protège de toute altération après publication.
Signature de code automatisée
Accéder à SignTool via la commande
Pour rappel, la commande de signature de code ressemble à ce qui suit :
C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe" signe /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 empreinte du certificat "SIGNABLE CHEMIN DU FICHIER"
Ouvrez Invite de commandes et placez la commande. Après avoir appuyé sur Entrée, vous verrez l'avis indiquant Terminé Ajout d'un magasin supplémentaire.

Après quelques secondes, vous verrez l'avis Signé avec succès. Cela indique que votre fichier a été signé de manière automatisée, sans avoir besoin d'OTP supplémentaires.

Vérifier la présence de la signature numérique sur votre dossier
Ouvrez l'emplacement du dossier de votre fichier signé. Faites un clic droit dessus puis cliquez sur Propriétés. Cliquez sur l'onglet Signatures numériques et ici vous verrez que l'algorithme de hachage sécurisé utilisé a 256 bits. Cliquez sur l'espace immédiat indiquant le nom du signataire, l'algorithme de résumé et l'horodatage. Une fois qu'il est mis en surbrillance, continuez à cliquer sur le DÉTAILS .

Une fenêtre contextuelle s'affichera alors indiquant que la signature numérique sur le fichier est valide ainsi que l'heure précise à laquelle elle a été signée. Clique le Afficher le certificat pour voir plus d'informations sur le certificat numérique EV Code Signing qui a été émis.

Vous verrez des informations sur le certificat EV Code Signing indiquant qu'il vous valide en tant que créateur de l'exécutable et protège votre fichier contre la falsification.
Guides de signature de code associés à l'aide d'eSigner CKA
- Fichiers du kit de laboratoire matériel de signature (HLK) – Utilisez eSigner CKA avec HLKSigntool Tester et préparer les pilotes en mode noyau pour soumission à Microsoft. L'intégration avec la plateforme HLK de Microsoft nécessite HLKSigntool.
- Signature des macros VBA – Apprenez à signer des macros Microsoft Visual Basic pour Applications (VBA), qui automatisent les tâches au sein des applications Office sans nécessiter de compétences en programmation.
- Signature des fichiers .app - Signe .app fichiers permettant de définir et de référencer en toute sécurité l'identité d'une solution applicative Microsoft complète.
- Signature des fichiers .vsix - Signe .vsix Packages d'installation pour les extensions et modules complémentaires de Visual Studio, garantissant l'intégrité et l'authenticité des composants de l'IDE.


