JWK - Jackall's IT Wiki

Sécurité, Système, Réseau

Outils pour utilisateurs

Outils du site


en:gpg

GNU PGP

Introduction

GNUPG is a cryptographic system use to crypt data and sign email

It uses asymetric cryptograpy :

  • A private key
  • A Public Key

Concepts

User ID : UID

L'identifiant ou User ID est une chaîne permettant d'identifier votre clef publique. String allowing people to identify your key Shaped like this :
Firstname Name (optionnal comment) mail.address@domain.tld

Publication

Exporting you public key to a publicly accessible server so that anyone can find your UID.

Keyring

Collection of all the PGP Key you know of.

Revocation

Letting the world know that your key has been corrupted or is no longer valid, by issuing a specific query based on you key.

Key Management

Initial creation

<note> You should use 4096 b key and not 2048 as below </note>

jackall@edo:~$ gpg2 --gen-key
gpg (GnuPG) 2.0.20; Copyright (C) 2013 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.

Sélectionnez le type de clef désiré :
   (1) RSA et RSA (par défaut)      
   (2) DSA et Elgamal
   (3) DSA (signature seule)
   (4) RSA (signature seule)
Quel est votre choix ? 1
les clefs RSA peuvent faire entre 1024 et 4096 bits de longueur.
Quelle taille de clef désirez-vous ? (2048) 2048
La taille demandée est 2048 bits
Veuillez indiquer le temps pendant lequel cette clef devrait être valable.
         0 = la clef n'expire pas
      <n>  = la clef expire dans n jours
      <n>w = la clef expire dans n semaines
      <n>m = la clef expire dans n mois
      <n>y = la clef expire dans n ans
Pendant combien de temps la clef est-elle valable ? (0) 1y
La clef expire le ven. 04 déc. 2015 22:41:13 CET
Est-ce correct ? (o/N) o

GnuPG doit construire une identité pour identifier la clef.

Nom réel : Damien BOLUS
Adresse électronique : damien@jackall.net
Commentaire : jackall.net
Vous avez sélectionné cette identité :
    « Damien BOLUS (jackall.net) <damien@jackall.net> »

Faut-il modifier le (N)om, le (C)ommentaire, l'(A)dresse électronique
ou (O)ui/(Q)uitter ? O
Une phrase de passe est nécessaire pour protéger votre clef secrète.


gpg: vérification de la base de confiance
gpg: 3 marginale(s) nécessaire(s), 1 complète(s) nécessaire(s),
     modèle de confiance PGP
gpg: profondeur : 0  valables :   2  signées :   0
     confiance : 0 i., 0 n.d., 0 j., 0 m., 0 t., 2 u.
gpg: la prochaine vérification de la base de confiance aura lieu le 2015-12-04
pub   2048R/7BCACAE5 2014-12-04 [expire : 2015-12-04]
 Empreinte de la clef = 4C36 B510 3EE2 8E45 C3A2  9163 3D9F D331 7BCA CAE5
uid                  Damien BOLUS (jackall.net) <damien@jackall.net>
sub   2048R/7552C554 2014-12-04 [expire : 2015-12-04]

La clef est générée et pgp2 affiche l'empreinte de celle-ci.

List Keyring

jackall@edo:~$ gpg2 --list-key
/home/jackall/.gnupg/pubring.gpg
--------------------------------
pub   2048R/7BCACAE5 2014-12-04 [expire : 2015-12-04]
uid                  Damien BOLUS (jackall.net) <damien@jackall.net>
sub   2048R/7552C554 2014-12-04 [expire : 2015-12-04]

jackall@edo:~$ 

Add a new email to your (pre existant) key

jackall@edo:~$ gpg2 --edit-key 7BCACAE5
gpg (GnuPG) 2.0.20; Copyright (C) 2013 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.

La clef secrète est disponible.

pub  2048R/7BCACAE5  créé : 2014-12-04  expire : 2015-12-04  utilisation : SC  
                     confiance : ultime        validité : ultime
sub  2048R/7552C554  créé : 2014-12-04  expire : 2015-12-04  utilisation : E   
[  ultime ] (1). Damien BOLUS (jackall.net) <damien@jackall.net>

gpg> adduid
Nom réel : TESTKEY
Adresse électronique : testkey@jackall.net
Commentaire : TEST ONLY
Vous avez sélectionné cette identité :
    « TESTKEY (TEST ONLY) <testkey@jackall.net> »

Faut-il modifier le (N)om, le (C)ommentaire, l'(A)dresse électronique
ou (O)ui/(Q)uitter ? o

Une phrase de passe est nécessaire pour déverrouiller la clef secrète de
l'utilisateur : « Damien BOLUS (jackall.net) <damien@jackall.net> »
clef RSA de 2048 bits, identifiant 7BCACAE5, créée le 2014-12-04


pub  2048R/7BCACAE5  créé : 2014-12-04  expire : 2015-12-04  utilisation : SC  
                     confiance : ultime        validité : ultime
sub  2048R/7552C554  créé : 2014-12-04  expire : 2015-12-04  utilisation : E   
[  ultime ] (1)  Damien BOLUS (jackall.net) <damien@jackall.net>
[ inconnue] (2). TESTKEY (TEST ONLY) <testkey@jackall.net>
gpg>save

Let's see…

jackall@edo:~$ gpg2 --list-key
<...>
pub   2048R/7BCACAE5 2014-12-04 [expire : 2015-12-04]
uid                  TESTKEY (TEST ONLY) <testkey@jackall.net>
uid                  Damien BOLUS (jackall.net) <damien@jackall.net>
sub   2048R/7552C554 2014-12-04 [expire : 2015-12-04]

Revocation Rertificate

jackall@edo:~$ gpg2 --gen-revoke 7BCACAE5
 
sec  2048R/7BCACAE5 2014-12-04 TESTKEY (TEST ONLY) <testkey@jackall.net>
 
Faut-il créer un certificat de révocation pour cette clef ? (o/N) o
choisissez la cause de la révocation :
  0 = Aucune raison indiquée
  1 = La clef a été compromise
  2 = La clef a été remplacée
  3 = La clef n'est plus utilisée
  Q = Annuler
(Vous devriez sûrement sélectionner 1 ici)
Quelle est votre décision ? 3
Entrez une description facultative, en terminant par une ligne vide :
> test keys
> 
Cause de révocation : La clef n'est plus utilisée
test keys
Est-ce d'accord ? (o/N) o
 
Une phrase de passe est nécessaire pour déverrouiller la clef secrète de
l'utilisateur : « TESTKEY (TEST ONLY) <testkey@jackall.net> »
clef RSA de 2048 bits, identifiant 7BCACAE5, créée le 2014-12-04
 
Certificat de révocation créé.
 
<...>
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v2.0.20 (GNU/Linux)
Comment: A revocation certificate should follow
 
iQEoBCABAgASBQJUgx2HCx0DdGVzdCBrZXlzAAoJED2f0zF7ysrl7n4IAK2nOz+N
SUZqyIpzRwIF5RTQWRoM8iCT90gr058DmaAAVnJtl6vaCqufGQU6C5wyUVlmFZ3B
K3WjzJ9Y5itT/R72Vj2JRO24EgNv/qY3AC4hJ2O+qrlXAOMb2XYXpsSb05wD6oLo
m8U+XUxz9mvtVuAFagc9cj14+mYAAMius13HSubiRJeS4C+UvCBPaWqaAeHjll2W
5qs4YkPkFU6jr/vnV0n0ttxNfwkUkE5/fqPQzAN22Tlc5opWJfC2u0/sNBgi+gX3
xiquvGu2xxgv+DKP3KGMec/+4y++Ui5tB+JPxTPqk9FuAhGzYM3ZtqP79FYT77TG
rpG/81yC7KZJJH4=
=8c4U
-----END PGP PUBLIC KEY BLOCK-----

Exporting your key

Envoi de la clef sur un serveur public

jackall@edo:~$ gpg2 --send-key 6jackall@edo:~$ gpg2 --send-key 6E64EC2A
gpg: envoi de la clef 6E64EC2A au serveur hkp pgp.mit.edu
E64EC2A
gpg: envoi de la clef 6E64EC2A au serveur hkp pgp.mit.edu

Everyday use

Pulling someone key from a public server

jackall@edo:~$ gpg2 --search-keys jackall
gpg: recherche de « jackall » sur le serveur hkp pgp.mit.edu
(1)     Admin <admin@jackall.net>
          2048 bit RSA key E952609B, créé : 2013-09-22

Then…

gpg2 --recv-key XXXXXXXX

Deleting you own key

jackall@edo:~$ gpg2 --delete-secret-key 7BCACAE5
<...>
sec  2048R/7BCACAE5 2014-12-04 TESTKEY (TEST ONLY) <testkey@jackall.net>

Faut-il supprimer cette clef du porte-clefs ? (o/N) o
C'est une clef secrète — faut-il vraiment la supprimer ? (o/N) o

Then you need to clean your Keyring

jackall@edo:~$ gpg2 --delete-key 7BCACAE5
<...>
pub  2048R/7BCACAE5 2014-12-04 TESTKEY (TEST ONLY) <testkey@jackall.net>

Faut-il supprimer cette clef du porte-clefs ? (o/N) o

search?q=S%C3%A9curit%C3%A9%20Howto%20Soft%20Mail%20InfoSec%20Crypto%20Privacy%20Linux%20EN&amp;btnI=lucky

en/gpg.txt · Dernière modification: 2018/02/18 16:01 (modification externe)