IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Contribuez Discussion :

Créer votre propre certificat numérique personnel auto-signé


Sujet :

Contribuez

  1. #1
    Expert éminent
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    3 937
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 3 937
    Points : 9 249
    Points
    9 249
    Par défaut Créer votre propre certificat numérique personnel auto-signé
    bonjour et tout d'abord bonne année 2011 à tous !

    Introduction
    Pourquoi me direz-vous cet article dans le contribuez du forum WINDEV. Eh bien, par exemple pour pouvoir signer un exécutable dans windev 16, il faut que vous ayez au moins un certificat numérique personnel sinon l'option de signature dans la génération de l'exécutable n'apparaît pas. De même pour pouvoir apposer une signature numérique à un email il faut lui mettre aussi un certificat. A des fins de tests, pour une utilisation personnelle ou une utilisation interne à votre société, si vous n'avez pas de certificats, l'article qui suit vous permettra de créer un certificat personnel auto-signé. Vous avez bien sûr la possibilité de passer par une société spécialisée pour les certificats comme Thawte,Verisign,TBS mais cela n'est pas gratuit ou alors limité dans le temps. Pour comprendre dans quel cas on doit utiliser une société spécialisée dans les certificats voir le paragraphe limitations.

    Solution
    Cet article décrit comment effectuer les choses suivantes :
    Créer un certificat CA (autorité de certification racine de confiance) en utilisant OpenSSL
    Créer un certificat ICA (autorité de certification intermédiaire) en utilisant OpenSSL
    Créer un certificat personnel auto-signé en utilisant OpenSSL
    Installer le certificat CA dans le magasin de clés Windows en utilisant Internet Explorer
    Installer le certificat ICA dans le magasin de clés Windows en utilisant Internet Explorer
    Installer le certificat personnel dans le magasin de clés Windows en utilisant Internet Explorer

    Limitations
    Les certificats auto-signés sont des certificats à usage interne. Signés par un serveur local, ce type de certificat permet de garantir la confidentialité des échanges au sein d'une organisation, par exemple pour le besoin d'un intranet. Il est ainsi possible d'effectuer une authentification des utilisateurs grâce à des certificats auto-signés.
    Les certificats signés par un organisme de certification comme Thawte,Verisign,TBS sont nécessaires lorsqu'il s'agit d'assurer la sécurité des échanges avec des utilisateurs anonymes, par exemple dans le cas d'un site web sécurisé accessible au grand public. Le certificateur tiers permet d'assurer à l'utilisateur que le certificat appartient bien à l'organisation à laquelle il est déclaré appartenir.

    Etape 1 : Télécharger et installer OpenSSL
    Télécharger la distribution OpenSSL ici : http://www.slproweb.com/products/Win32OpenSSL.html
    Installer le logiciel OpenSSL dans par exemple c:\openssl

    Etape 2 : Créer un certificat CA
    Ouvrir une fenêtre console
    Aller dans le répertoire des binaires de OpenSSL
    CD c:\openssl\bin
    Créer la clé privée en tapant :
    openssl genrsa -des3 -out monca.key 1024
    Quand vous y êtes invité, saisir un mot de passe *super* costaud
    Et puis retaper le mot de passe dans la vérification
    Créer la clé publique en tapant :
    openssl req -new -x509 -days 365 -key monca.key -out monca.crt
    Quand vous y êtes invité saisir un mot de passe *super* costaud
    Pour «*Country Name*» entrer l'abréviation standard du pays (ex : FR ou CH ou BE ou CA etc)
    Pour «*State or Province Name*» entrer le département où votre société est située (ex : paris)
    Pour «*Locality Name*», entrer la ville où votre société est située (ex : paris)
    Pour «*Organization Name*» entrer le nom complet de votre société ( ex: MaBoite SA)
    Pour «*Organization Unit*Name» entrer votre section (ex: Développement ou Support)
    Pour «*Common Name*» utiliser votre domaine (ex : maboite.com)
    Pour «*Email Address*» entrer une adresse email valide (ex: support@maboite.com)

    Etape 3 : Créer et signer un ICA
    Créer la clé privée en tapant :
    openssl genrsa -des3 -out monica.key 1024
    Quand vous y êtes invité saisir un mot de passe *super* costaud
    Et puis vérifier le mot de passe
    Créer une demande de certificat pour signature par l'autorité racine CA en tapant :
    openssl req -new -key monica.key -out monica.csr
    Quand vous êtes invité, saisir un mot de passe *super* costaud
    Répéter les informations entrées au-dessus pour le certificat CA , Excepter pour le «Common Name*» ajouter "www." (ex: www.maboite.com)
    Quand vous êtes invité à saisir un «*Challenge Password*» appuyer sur la touche «*Entrée*» pour passer
    Quand vous êtes invité à saisir un «*Optional Company Name*» appuyer sur la touche «*Entrée*» pour passer
    Signer la demande avec la racine CA et fabriquer une clé publique en tapant :
    openssl x509 -req -days 365 -in monica.csr -CA monca.crt -CAkey monca.key -set_serial 01 -out monica.crt
    Quand vous êtes invité, rentrer le mot de passe *super* costaud utilisé pour créer le certificat CA.

    Etape 4 : Créer un certificat personnel combiné
    Combiner les deux certificats dans un simple fichier en tapant :
    openssl pkcs12 -export -out monexport.pfx -inkey monica.key -in monica.crt
    Quand vous êtes invité, rentrer le mot de passe *super* costaud utilisé pour créer le certificat intermédiaire ICA.
    Répéter le mot de passe pour «*Export Password*» et «*Export Password verify*»

    Etape 5: Installer le certificat racine CA en utilisant Internet Explorer
    Lancer Internet Explorer
    Sélectionner Outils->Options Internet à partir du menu
    Sélectionner l'onglet Contenu
    Cliquer sur le bouton «*Certificats*»
    Sélectionner l'onglet «*autorités de certification racines de confiance*»
    Cliquer sur le bouton «*Importer*»
    Cliquer sur le bouton «*Suivant >*»
    Cliquer sur le bouton «*Parcourir» pour trouver le fichier qui contient le certificat CA
    Aller à C:\openssl\bin et choisir monca.crt
    Cliquer sur le bouton «*Ouvrir*»
    Cliquer sur le bouton «*Suivant >*»
    Vérifier que «*Placer tous les certificats dans le magasin suivant*» est sélectionné
    Vérifier que Magasin de certificats: = autorités de certification racines de confiance
    Cliquer sur le bouton «*Suivant >*»
    Cliquer sur le bouton «*Terminer*»
    Dans la fenêtre d'avertissement qui apparaît cliquer sur le bouton «*Oui» pour valider
    Cliquer sur «*OK*»

    Etape 6: Installer le certificat intermédiaire ICA en utilisant Internet Explorer
    Change l'onglet en cours pour l'onglet «*Autorités de certification intermédiaires*»
    Cliquer sur le bouton «*Importer*»
    Cliquer sur le bouton «*Suivant >*»
    Cliquer sur le bouton «*Parcourir*» pour trouver le fichier requis
    Aller à C:\openssl\bin et sélectionner monica.crt
    Cliquer sur le bouton «*Ouvrir*»
    Cliquer sur le bouton «*Suivant >*»
    Vérifier que «*Placer tous les certificats dans le magasin suivant*» est sélectionné
    Vérifier que Magasin de certificats: = autorités de certification racines de confiance
    Cliquer sur le bouton «*Suivant >*»*
    Cliquer sur le bouton «*Terminer»
    Cliquer sur le bouton «*OK*»

    Etape 7: Installer le certificat personnel en utilisant Internet Explorer
    Changer l'onglet pour «*Personnel*»
    Cliquer sur le bouton «*Importer»
    Cliquer sur le bouton «*Suivant >*»
    Cliquer sur le bouton Parcourir pour trouver le fichier requis
    Changer le type d'extension de fichier pour «*Echange d'informations personnelles *.pfx, *.p12*»
    Aller à C:\openssl\bin et sélectionner monexport.pfx
    Cliquer sur le bouton «*Ouvrir*»
    Cliquer sur le bouton «*Suivant >*»
    Rentrer le mot de passe *super* costaud utilisé pendant l'export la clé (on a utilisé le même mot de passe que celui utilisé pour créer la clé intermédiaire)
    Cliquer sur le bouton «*Suivant >*»
    Vérifier que «*Placer tous les certificats dans le magasin suivant*» est sélectionné
    Vérifier que Magasin de certificats: = Personnel
    Cliquer sur le bouton «*Suivant >*»
    Cliquer sur le bouton «*Terminer*»
    Cliquer sur le bouton «*OK*»

    Et voilà si tout s'est bien passé vous avez à votre disposition un certificat numérique personnel auto-signé. Vous pourrez le choisir pour tester la signature des exécutables en windev 16.

    Ami calmant, J.P
    Jurassic computer : Sinclair ZX81 - Zilog Z80A à 3,25 MHz - RAM 1 Ko - ROM 8 Ko

  2. #2
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 50
    Points : 46
    Points
    46
    Par défaut
    Salut à toi et merci beaucoup pour ton tuto.

    Je l'ai suivi une première fois pour faire un test et je suis parvenu à signer un exécutable (je suis passé par signtool.exe pour y parvenir).

    J'ai voulu réexécuter toute la procédure pour faire une nouvelle signature, mais cette fois j'obtiens le message d'erreur suivant avec signtool.exe :

    Done Adding Additional Store
    SignTool Error: ISignedCode::Sign returned error: 0x800B010A
    Une chaine de certificats n'a pas pu etre etablie vers une autorite racine de confiance.
    SignTool Error: An error occurred while attempting to sign: c:\cle\test.exe

    Number of errors: 1
    Une recherche sur Google sur ce message d'erreur me renvoie sur cette page : http://msdn.microsoft.com/fr-fr/libr...(v=vs.80).aspx

    Mais rien à faire, je ne comprends pas l'erreur ni ce qu'il faut faire...

    Aurais-tu une idée de ce que j'aurais mal fait ou oublié ?

    Merci d'avance.

    EDIT ------------------------------------------------------------------

    J'ai continué mes tests et recommencé ta procédure.

    Mon erreur venait du fait que pour "Common Name", je ne mettais plus explicitement à la deuxième tentative "maboite.com" et "www.maboite.com" comme tu le précises.
    Je mettais uniquement le nom de mon entreprise ("maboite") car dans la console, openssl indique "e.q. server FQDN or YOUR name", ce que j'ai compris par "un nom de domaine ou le nom de votre entreprise", mais apparemment ce n'est pas le cas.
    Je ne comprends pas trop pourquoi il faut absolument mettre "maboite.com" et "www.maboite.com". As-tu une explication ?

    Autre petite remarque : les étapes d'installation des certificats dans IE (racine, intermédiaire et personnel) ne sont pas nécessaires pour signer un exécutable avec signtool.exe. On peut tout de suite utiliser le fichier généré "monexport.pfx" avec la commande signtool sign /f "monexport.pfx" /p monmotdepasse "setup.exe".
    D'où ma question : à quoi servent les installations via IE ? Cela est peut-être nécessaire dans ton cas pour WinDev ?

  3. #3
    Membre actif
    Inscrit en
    Août 2005
    Messages
    96
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 96
    Points : 205
    Points
    205
    Par défaut
    Pour info,

    Lors de la création de la clé publique avec : openssl req -new -x509 -days 365 -key monca.key -out monca.crt

    J'ai eu l'erreur suivante : "Unable to load config info from <path> error in req".

    Pour la résoudre, il faut ajouter l'option -config :

    openssl req -new -x509 -days 365 -key monca.key -out monca.crt -config "C:\OpenSSL-Win32\bin\openssl.cfg"

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Décembre 2017
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2017
    Messages : 2
    Points : 5
    Points
    5
    Par défaut Alternative à OpenSSL Sous Windows
    Salut,

    Voici une alternative gratuite à OpenSSL, avec interface grapique (bien plus pratique) pour créer des certificats auto-signés sous windows : http://www.itiverba.com/fr/software/itisscg.php

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour, quel est le réel intérêt de générer un certificat auto-signé?
    Pour moi, ça devrait justement être interdit, lisez cet article

  6. #6
    Nouveau Candidat au Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2018
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2018
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par romulus001 Voir le message
    Bonjour, quel est le réel intérêt de générer un certificat auto-signé?
    Pour moi, ça devrait justement être interdit, lisez cet article
    Comme indiqué dans l'article, l'intérêt (énorme, ne fut-ce que économiquement) existe à condition de rester dans le domaine privé :
    - au sein d'une organisation
    - au sein d'une famille
    - au sein d'un groupe d'amis
    - etc...

    Toujours comme indiqué dans l'article, utiliser un certificats auto-signé génère des avertissements (des navigateurs, en particulier). Pour éviter ces avertissements, il faut ajouter ce certificat auto-signé dans la liste des autorités de certification auxquelles on fait confiance.
    Mais attention : une fois qu'on a ajouté un certificat auto-signé dans cette liste, on fait confiance à TOUS les certificats de cette autorité. Il faut donc faire confiance à ceux qui émettent des certificats signés par ce certificat auto-signé.

    Petit rappel : tout système informatique possède une ou plusieurs listes de certificats d'autorités de confiance. Ces listes sont essentiellement mises à jour automatiquement lors de mises à jour du système ou des programmes tels que Firefox, Thunderbird, etc... Ceci implique que VOUS FAITES CONFIANCE à TOUS LES CERTIFICATS émis par CES AUTORITÉS.

    Cordialement,
    Jibéhef

Discussions similaires

  1. Créer votre propre compilateur C#
    Par khayyam90 dans le forum Contribuez
    Réponses: 8
    Dernier message: 19/03/2014, 10h47
  2. Réponses: 0
    Dernier message: 09/09/2011, 17h37
  3. [Généralités] PB avec le code contribuez "Créer votre propre certificat numérique"
    Par lepatachou dans le forum WinDev
    Réponses: 4
    Dernier message: 08/07/2011, 14h43
  4. Créer votre propre compilateur Visual Basic .Net
    Par khayyam90 dans le forum Contribuez
    Réponses: 0
    Dernier message: 29/12/2010, 11h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo