Créer une toile de confiance avec GnuPG

Publié par Mickael Rigonnaux le

Bonjour à tous ! Aujourd’hui nous allons aborder ensemble un sujet que j’ai pu traiter dans le cadre de mon alternance, la mise en place d’une toile de confiance GnuPG.

Introduction

PI : je parle souvent de « clé » GPG, il faut comprendre biclé car il y a toujours une clé publique et une clé privée.

Le chiffrement GnuPG a déjà été abordé sur ce blog, mais moins précisément. La mise en place d’une toile de confiance peut se faire dans le cadre d’un chiffrement entre une entité A et une entité B, ce qui était mon cas.

La mise en place de cette procédure permettra de créer une zone de confiance entre les deux entités. Le principe reste le même qu’avec les autorités de certification pour SSL/TLS sauf que nous n’aurons pas la possibilité de passer par des autorités de confiance, cela se fera en direct. L’entité A devra signer la clé publique maître de l’entité B et inversement, tout cela en garantissant l’intégrité des données.

Dans mon article je parle plus au niveau des entreprises/entités, mais tout cela est également vrai pour les échanges entre personnes.

Clé maître et clé applicative

Dans les différents exemples que j’ai pu traiter il y avait souvent des notions de clés maître et de clés applicatives. Il faut voir les clés maîtres comme des autorités de certification interne à l’entité, une fois validée et signée par l’entité adverse elle permettra de générer des clés applicatives qui seront de confiance.

Un schéma vaut mieux qu’une longue explication :

 

Les biclés applicatives sont directement issues et signées des clés maîtres de chaque entité, ce qui permet d’avoir cette toile de confiance.

Le schéma peut également être simplifié en utilisant seulement les biclés « maître » si les échanges sont entre deux personnes par exemple.

L’utilisation de ce système permet cependant un meilleur niveau de sécurité, car les clés maîtres ne sont jamais utilisées pour chiffrer des données mais seulement pour signer des clés publiques.

Procédure

Tout cela doit bien entendu être tracé dans une procédure pour garantir l’intégrité et le bon traitement des données et des clés.

Nous allons maintenant aborder les différentes étapes pour générer les clés maîtres et applicatives, ainsi que toutes les étapes nécessaires à la mise en place de cette toile de confiance.

Dans mon exemple je vais montrer les étapes des deux entités pour que vous puissiez suivre les étapes dans l’intégralité.

Génération des biclés

Il faut dans un premier temps générer les bi-clés maîtres GPG de chaque côté :

gpg --full-gen-key

Cette commande permet de générer une clé GPG avec toutes les options :

 

Vous allez devoir entrer des caractéristiques comme :

Vous pouvez ensuite vérifier la présence des clés publiques et privées :

gpg -k # Clé publique

gpg -K # Clé privée

 

Les clés sont maintenant générées pour les deux entités.

Partage des biclés

Les biclés générées il faut maintenant les partager entre les partager entre les entités. Vous pouvez pour cela définir de chaque côté des personnes responsables des clés si vous êtes un société. Cette personne devra être chargée de transférer la clé à l’entité adverse et de vérifier l’intégrité.

Il faut tout d’abord exporter les clés en utilisant l’ID récupéré avec les commandes gpg -k :

gpg --export --armor ID_KEY > entite-x-master-pub.gpg