Comment générer un certificat auto-signé?

Un certificat électronique permet de s’assurer de l’identité d’un interlocuteur. Le format le plus utilisé pour les certificats numériques est le X.509. Celui-ci repose sur une hiérarchie d’autorité de certifications. Dans le système X.509, une autorité de certification attribue un certificat liant une clé publique à un nom distinctif. Il est possible de se passer d’autorité de certification pour générer un certificat, malgré le fait que ce type de certificat dits auto-signés soient déconseillés et deviennent par défaut non accepté par la plupart des applications et navigateurs internet.

Nous allons ici détailler comment générer un tel certificat.

Étape 1

Première étape, télécharger un programme permettant la génération de certificat tel que openssl, disponible à l’adresse web suivante :

 

Étape 2

Installer l’application OpenSSL et configurer les variables d’environnement afin de pouvoir trouver l’application OpenSSL ainsi que son fichier de configuration, afin de pouvoir les appeler de manière relative et non absolue.
Soit de manière temporaire dans la console en entrant les deux commandes suivantes :

>set OPENSSL_CONF=C:\Program Files\OpenSSL\bin\openssl.cfg
>set Path=C:\Program Files\OpenSSL\bin

Soit de manière permanente en ajoutant cela dans les propriétés du système:

Après avoir ouvert l’application sysdm.cpl, dans le lanceur d’application Windows (‘Windows’ + ‘R’), sous l’onglet Avancé, variable d’environnement, ajouter les mêmes variables « OPENSSL_CONF » et « Path ».

Si la deuxième étape s’est bien déroulée, la commande openssl sera reconnue.

Étape 3

Créer le certificat autosigné

openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -sha256 -days 1000

Cette commande permet de générer les certificats mais certaines informations sont encore demandées comme le mot de passe permettant d’accéder à la clé privée, le nom du pays, de la province, l’adresse électronique de la personne émettant le certificat, etc.

Cette commande créé deux nouveaux fichiers dans le répertoire courant « key.pem » qui contient la clé privée et « cert.pem » qui contient les informations de certificat.

Il est possible de renseigner directement ces informations en utilisant certaines options de la commande openssl : comme -subj afin de définir qui est l’émetteur du certificat ou -passin et -passout afin de définir le mot de passe permettant d’accéder à la clé privée.

openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -sha256 -days 1000 -subj “/C=CH/ST=BERN/L=LA NEUVEVILLE/O=VISIATIV/OU=VISIATIV SOLUTIONS” -passin pass:CeciEstMonMotDePasse -passout pass:CeciEstMonMotDePasse

Résultat

Voici les résultats en image de ce que vous devez obtenir :

Auteur de l'article

Lionel Réveillère, Application Engineer chez Visiativ