hamburger icon
  • language
back icon Précédent
Choisissez votre langue
Type de contenu

Base de Connaissances

Signer une application Windows sous Linux à l’aide d’osslsigncode

Solution ID : TL685
Last Modified : 10/13/2026

Description

Cet article vous présente les étapes de configuration d’un jeton sur un système Linux et vous explique comment l’utiliser une fois configuré. 
Les instructions ci-dessous s’appliquent uniquement aux certificats de signature de code.
 

Linux (Ubuntu): configuration d’osslsigncode

1) Mettez à jour les informations des packages du dépôt: 

sudo apt update


2) Installez les dépendances:

sudo apt install openssl libcurl4-openssl-dev libssl-dev libengine-pkcs11-openssl curl libcurl4 git automake libtool pkg-config wget libccid libpcsclite1 pcscd usbutils opensc p7zip-full


3) Créez un dossier pour stocker osslsigncode:

sudo mkdir /usr/local/win-dev


4) Connectez-vous temporairement au compte superutilisateur pour effectuer les étapes suivantes:

sudo su


5) Téléchargez et extrayez osslsigncode depuis l’archive:

1.  cd /usr/local/win-dev

2.  wget  https://github.com/mtrojnar/osslsigncode/releases/download/2.1/osslsigncode-2.1.0.tar.gz

3.  tar -xvzf osslsigncode-2.1.0.tar.gz

4.  cd osslsigncode-2.1.0


6) Compilez et installez osslsigncode: 

./autogen.sh ./configure && make && make install


7) Quittez le shell du superutilisateur:

exit

 

Signer à l’aide d’un certificat de signature de code EV (Linux)

1) Installez les pilotes SafeNet

1.  sudo apt install unzip

2.  wget https://www.digicert.com/StaticFiles/SAC_10_7_Linux_GA.zip

3.  unzip -q SAC_10_7_Linux_GA.zip

4.  cd SAC_10_7_Linux_GA/Installation/Standard/DEB

5.  sudo dpkg -i safenetauthenticationclient_10.7.77_amd64.deb


2) Installez OpenSC et les autres dépendances

sudo apt install opensc opensc-pkcs11 pcscd gnutls-bin


3) Ouvrez un shell administrateur pour effectuer les étapes suivantes:

sudo su


4) Téléchargez libp11

1.  cd /usr/local/win-dev

2.  wget https://github.com/OpenSC/libp11/releases/download/libp11-0.4.11/libp11-0.4.11.tar.gz && tar -xzvf libp11-0.4.11.tar.gz

3.  cd libp11-0.4.11


5) Installez libp11

./configure --prefix=/usr/local/mac-dev && make && make install


6) Téléchargez une copie de votre certificat au format PEM et enregistrez-la sous le nom certificate.pem. Vous pouvez facilement télécharger le certificat en vous connectant à votre compte, en remplaçant le numéro de commande (xxxxxx) dans l’URL ci-dessous par votre propre numéro, puis en ouvrant le lien:

https://www.digicert.com/services/v2/certificate/download/order/xxxxxx/format/pem_nointermediate


7) Récupérez l’URL de l’identifiant de clé du certificat à utiliser pour la signature. Vous pouvez déterminer quelle URL copier grâce au champ Label, qui contient le nom de votre organisation ou votre nom personnel.

p11tool --provider=/usr/lib/libeTPkcs11.so --list-all

 

8) Signez votre code (veillez à mettre à jour les informations du jeton afin qu’elles correspondent à celles obtenues à l’étape 7, ainsi que le chemin d’accès à l’application à signer et le chemin d’accès à l’emplacement où enregistrer l’application signée):

osslsigncode sign -verbose -pkcs11engine /usr/lib/x86_64-linux-gnu/engines-1.1/pkcs11.so -pkcs11module /lib/libeToken.so -h sha256 -n test-name -t http://timestamp.digicert.com -certs path/to/certificate.pem -key "pkcs11:model=eToken;manufacturer=SafeNet%2C%20Inc.;serial=029a748f;token=ExampleHSM;id=%C8%69%6E%65%0E%32%61%8E%49%27%2E%E6%6J%2E%1C%25%90%E3%50%45;object=Rex%20Linder;type=cert" -in path/to/application.exe -out path/to/new/signedApp.exe