Générer paire de clés
Avant d'utiliser gpg sur un ordinateur il faut posséder un paire de clés (publiques/privés). On peut les importer d'une autre machine ou bien les générer sur place. C'est cette dernière opération qui est décrite ici:
Génération
L'option de ligne de commande --gen-key est utilisée pour créer une nouvelle paire de clés.
La ligne de commande suivante lance la génération:
$ gpg --gen-key
Après l'en-tête affichée:
gpg (GnuPG) 1.4.9; Copyright (C) 2008 Free Software Foundation, Inc. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
gpg demande de choisir une methode de codage:
Please select what kind of key you want:
(1) DSA and Elgamal (default)
(2) DSA (sign only)
(5) RSA (sign only)
Choisir (1).
Your selection? 1 DSA keypair will have 1024 bits. ELG-E keys may be between 1024 and 4096 bits long. What keysize do you want? (2048)
Il faut entrer la taille de votre clé (2048 est une bonne taille)
Requested keysize is 2048 bits
Please specify how long the key should be valid.
0 = key does not expire
<n> = key expires in n days
<n>w = key expires in n weeks
<n>m = key expires in n months
<n>y = key expires in n years
Donnez la durée de vie de votre "paire de clés". 0 (zéro) pour une paire immortelle.
Key is valid for? (0) Key does not expire at all Is this correct? (y/N) y
Validez la saisie
You need a user ID to identify your key; the software constructs the user ID
from the Real Name, Comment and Email Address in this form:
"Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>"
Real name:
Entrez votre nom sous la forme "Prénom Nom"
Email address:
Entrez votre "vraie" adresse email.
Comment:
Vous pouvez par exemple entrer un No de téléphone. Vos interlocuteurs pourront ansi valider votre clé publique ne vous appelant.
You selected this USER-ID:
"Prénom Nom <addresse@mondomaine.com>"
Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit?
Validez par O (pour Ok)
You need a Passphrase to protect your secret key.
Entrez deux fois une "phrase de passe" (plus de 40 ou 50 caracteres)
We need to generate a lot of random bytes. It is a good idea to perform some other action (type on the keyboard, move the mouse, utilize the disks) during the prime generation; this gives the random number generator a better chance to gain enough entropy. +++++..+++++.+++++.+++++++++++++++.+++++.++++++++++.++++++++++.+++++.+++++.+++++ ++++++++++++++++++++......+++++.++++++++++++++++++++++++++++++++++++++++.+++++++ +++>..+++++....+++++>+++++>+++++>..+++++........................................ ..............................................................+++++^^^^ gpg: /home/user/.gnupg/trustdb.gpg: trustdb created gpg: key FE3CCD5C marked as ultimately trusted public and secret key created and signed.
gpg: checking the trustdb
gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
gpg: depth: 0 valid: 1 signed: 0 trust: 0-, 0q, 0n, 0m, 0f, 1u
pub 1024D/FE3CCD5C 2009-04-03
Key fingerprint = DEA8 4539 A504 B550 B456 1774 99FF F451 554C
uid Prénom Nom <addresse@mondomaine.com>
sub 2048g/1DDDBD69 2009-04-03
La paire de clé est générée.
Vérifier la clé
Liste des clés dans le "trousseau".
$ gpg --list-keys /home/user/.gnupg/pubring.gpg ------------------------------- pub 1024D/FE3CCD5C 2009-04-03 uid Prénom Nom <addresse@mondomaine.com> sub 2048g/1DDDBD69 2009-04-03
Exporter vos clés
Clé publique
C'est indispensable si vous désirez qu'un personne vous envoie des données sécurisées. (Mails Fichiers)
gpg --output user-key.gpg --export addresse@mondomaine.com
ou bien pour avoir un fichier ASCII
gpg --output user-key.gpg -a --export addresse@mondomaine.com
Un fichier user-key.gpg est crée sur le disque. C'est ce fichier qu'il faut envoyer a vos interlocuteurs.
Clé privée
ATTENTION: Il faut tenir cette clé en lieu sur. C'est elle qui permetrait a des pirates de lires les données cryptées par vos partenaires. Exportez cette clé dans un fichier et déposez là dans un lieu sûr. (CD dans un coffre, Clé USB attachée au cou...)
gpg --output private-user-key.gpg --export-secret-key
ou bien pour avoir un fichier ASCII
gpg --output private-user-key.gpg -a --export-secret-key
Déplacer clé privée
Dans le cas de machines pas assez puissantes pour générer elle même la clé il est possible de générer la clé sur une autre machine.
- Générer la clé comme indiqué ci-dessus.
- Exporter là.
- Transférer là.
- Faire le ménage sur la machine de génération (fichier de clé et répertoire .gnupg)
- Importer la clé sur la machine utilisatrice.
Export de clé
Pour générer un fichier secret.key contenant la clé (machine sur laquelle on a généré la clé).
gpg --export-secret-key -a > secret.key
Import de clé
Pour importer cette clé privée (machine sur laquelle elle sera utilisée)
gpg --import secret.key
ATTENTION : Bien penser à retirer la clé dans la machine de "génération" et à transférer par un moyen sûr. N'oubliez pas le .gnupg de la racine !
rm -rf .gnupg/