Page suivante Page précédente Table des matières

5. GPG

GPG est la version GNU de PGP, ce logiciel est entièrement sous licence GPL, y compris les algorithmes de cryptages utilisés. Il se présente sous la forme d'un seul programme que l'on dirige via des options en ligne de commande.

D'une manière générale, il est préférable d'utiliser GPG qui ne dépend directement d'aucun organisme ou entreprise.

GPG reprend exactement les même principes que PGP, on ne s'attardera pas sur les explications (se référer aux sections équivalente sur PGP pour plus d'information).

5.1 Création d'une clef

La création d'une clef se fait par un appel à la ligne de commande suivante : gpg ――gen-key


gpg (GnuPG) 1.0.1; Copyright (C) 1999 Free Software Foundation, Inc.
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it
under certain conditions. See the file COPYING for details. 

Sélectionnez le type de clé désiré :
   (1) DSA et ElGamal (défaut)
   (2) DSA (signature seule)
   (4) ElGamal (signature et chiffrement)
Votre choix ?

Préparation à la génération d'une nouvelle paire de clés ELG-E.
            la taille minimale est  768 bits
          la taille par défaut est 1024 bits
 la taille maximale conseillée est 2048 bits
Quelle taille de clé désirez-vous ? (1024)

Spécifiez combien de temps cette clé devrait être valide.
         0 = la clé n'expire pas
      <n>  = la clé expire dans n jours
      <n>w = la clé expire dans n semaines
      <n>m = la clé expire dans n mois
      <n>y = la clé expire dans n ans
La clé est valide pour ? (0)

Vous avez besoin d'un nom d'utilisateur pour identifier votre clé ; le
programme le construit à partir du nom réel, d'un commentaire et d'une
adresse e-mail de cette manière:
   « Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de> »
Nom réel :   Jean Dupont
Adresse e-mail : dupont@jean.fr
Commentaire : Ma première clef GPG
Entrez le mot de passe :
Répétez le mot de passe :
Un grand nombre d'octets aléatoires doit être généré. Vous devriez faire
autre-chose (taper au clavier, déplacer la souris, utiliser les disques)
pendant la génération de nombres premiers ; cela donne au générateur de
nombres aléatoires une meilleure chance d'avoir assez d'entropie. 

5.2 Gestion des clefs

Extraction d'une clef

Vous avez donc une paire de clef. Mais pour pouvoir communiquer, il vous faut envoyer votre clef publique à vos correspondants. Pour cela, nous allons extraire votre clef publique de votre base de clefs avec la commande gpg ――export ――armor <user-id>

L'option ――armor est là pour forcer la clef à être codée en ASCII.

On obtient :


-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.0.1 (Linux)
Comment: For info see http://www.gnupg.org

mQGiBDi+PEIRBACYyvjLmmTl/KZq0rHb35SNhRh19ZZI0YZ+MqRg2rWldTAAgxTd
...
-----END PGP PUBLIC KEY BLOCK-----

Ajout d'une clef

gpg ――import <filename>

Par exemple :


gpg: clé A4A7E29F : clé publique importée
gpg:        Quantité totale traitée : 1
gpg:                       importée : 1 

Informations sur les clefs répertoriées

gpg ――list-keys


pub  1024D/1AB2C904 2000-03-02 Jean Dupont <dupont@jean.fr>
sub  1024g/49D54573 2000-03-02

pub  1024D/31BF8027 2000-03-01 John Doe <doe@john.org>
sub  2048g/A6CEA8F6 2000-03-01

pub  1024D/1BA44C81 2000-03-01 John Smith <smith@john.org>
sub  1024g/A0BAC7FA 2000-03-01

Modification d'une clef

gpg ――edit-key <user-id>


La clé secrète est disponible.
pub  1024D/1AB2C904  created: 2000-03-02 expires: never      trust: -/u
sub  1024g/49D54573  created: 2000-03-02 expires: never
(1)  Emmanuel Fleury <fleury@lsv.ens-cachan.fr>
Commande>

On peut ensuite entre en ligne de commande les différentes modifications de sa clef. Pour mémoire, les différentes commandes sont :

Destruction d'une clef

Détruire une clef secrète :

gpgp ――delete-secret-key <user-id>


sec   768G/A4A7E29F 2000-03-01   John Doe <doe@john.org>
 
Enlever cette clé du porte-clés ? o
C'est une clé secrète - faut-il vraiment l'effacer ? o

Détruire une clef publique :

gpg ――delete-key <user-id>

5.3 Cryptage d'un message

Cryptage simple

gpg ――armor ―r <destinataire> -o <output> ――encrypt <filename>

L'option ――armor permet de générer un cryptage en ASCII.

Signature simple d'un message

gpg ――sign <filename>

Cryptage avec signature

Il suffit de combiner les options :

gpg ――sign ――armor ――encrypt <destinataire> <filename>

Décryptage et vérification de signature

gpg ――decrypt -o <output> <filename>


Page suivante Page précédente Table des matières