Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
wiki:guide_du_debutant:cle_openpgp [2018/02/28 01:35] varens [Suppression de clé] ajout signature simtrami |
wiki:guide_du_debutant:cle_openpgp [2020/06/27 18:16] (Version actuelle) |
||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
<WRAP center round todo 60%> | <WRAP center round todo 60%> | ||
- | Cette page est inachevée, certaines sections | + | Cette page est inachevée, certaines sections |
À faire : | À faire : | ||
* Description succinte du fonctionnement d' | * Description succinte du fonctionnement d' | ||
Ligne 36: | Ligne 36: | ||
=== OpenPGP === | === OpenPGP === | ||
- | Zimmerman, en bon hipster, commença à développer une version open-source de PGP. Celle-ci n'emploierai | + | Zimmerman, en bon hipster, commença à développer une version open-source de PGP. Celle-ci n'emploierait |
- | En 1997 il proposa les normes OpenPGP à l'IETF pour permettre aux fournisseurs de chiffrement conformes aux normes PGP de fournir des solutions compatibles avec d' | + | En 1997 il proposa les normes OpenPGP à l'IETF pour permettre aux fournisseurs de chiffrement conformes aux normes PGP de fournir des solutions compatibles avec d' |
Aujourd' | Aujourd' | ||
=== GnuPG (GNU Privacy Guard) === | === GnuPG (GNU Privacy Guard) === | ||
- | GnuPGP a été développé par Werner Koch et publié en 1999 en tant qu' | + | GnuPGP a été développé par Werner Koch et publié en 1999 en tant qu' |
- | GPG fourni | + | GPG fournit |
=== Conclusion === | === Conclusion === | ||
- | * OpenPGP est la norme approuvée par l'IETF qui décrit les technologies de chiffrement | + | * OpenPGP est la norme approuvée par l'IETF qui décrit les technologies de chiffrement |
- | * PGP est une solution propriétaire de chiffrement et les droits de ce logiciel sont détenus | + | * PGP est une solution propriétaire de chiffrement et les droits de ce logiciel sont détenus |
* GPG est une autre solution très populaire qui suit la norme OpenPGP et offre une interface utilisateur pour chiffrer facilement ses fichiers. | * GPG est une autre solution très populaire qui suit la norme OpenPGP et offre une interface utilisateur pour chiffrer facilement ses fichiers. | ||
Ligne 78: | Ligne 78: | ||
Si vous n'avez pas encore de clé ou que vous souhaitez repartir sur de bonnes bases, générez votre clé comme suit. | Si vous n'avez pas encore de clé ou que vous souhaitez repartir sur de bonnes bases, générez votre clé comme suit. | ||
< | < | ||
- | $ gpg --full-generate-key | + | $ gpg --full-gen |
</ | </ | ||
La clé doit suivre la configuration suivante : | La clé doit suivre la configuration suivante : | ||
Ligne 87: | Ligne 87: | ||
- Adresse électronique : Celle de cette identité | - Adresse électronique : Celle de cette identité | ||
- Commentaire : Description de l' | - Commentaire : Description de l' | ||
- | - Phrase secrète : Choisissez un mot de passe complexe((http:// | + | - Phrase secrète : Choisissez un mot de passe complexe((http:// |
GnuPG s' | GnuPG s' | ||
Ligne 93: | Ligne 93: | ||
* L' | * L' | ||
* Le chemin vers votre certificat de révocation (généralement // | * Le chemin vers votre certificat de révocation (généralement // | ||
- | | + | |
- | On peut désormais éditer la clé.\\\\ | + | Des clés publiques et uid ont été créées : une '' |
- | IMPORTANT : N' | + | |
- | IMPORTANT 2 : Si, dans la suite de ce tutoriel, vous faites une erreur de manipulation irréparables sur votre clé **et que celle-ci n'a pas été partagée**, | + | On peut désormais éditer la clé.\\ |
+ | \\ | ||
+ | IMPORTANT : | ||
+ | * N' | ||
+ | | ||
==== Génération d'une subkey de signature ==== | ==== Génération d'une subkey de signature ==== | ||
Ligne 208: | Ligne 212: | ||
$ cp $HOME/ | $ cp $HOME/ | ||
</ | </ | ||
- | Ensuite exportez (1) toutes vos subkeys ou (2) celles de votre choix. Et entrez le mot de passe de la clé. | + | Ensuite exportez |
< | < | ||
- | (1) $ gpg --export-secret-subkeys [KEYID] > nom_identifiant_clairement_lensemble.secret-subkeys | + | $ gpg --export-secret-key [KEYID] > [fingerprint].secret-key |
+ | |||
+ | (1) $ gpg --export-secret-subkeys [KEYID] > [fingerprint].secret-subkeys | ||
ou | ou | ||
- | (2) $ gpg --export-secret-subkeys [SUBKEYID_1]! [SUBKEYID_2]! .. > nom_identifiant_clairement_lensemble.secret-subkeys | + | (2) $ gpg --export-secret-subkeys [SUBKEYID_1]! [SUBKEYID_2]! .. > [fingerprint]-[E/ |
</ | </ | ||
Supprimez alors votre clé secrète maître (si si). | Supprimez alors votre clé secrète maître (si si). | ||
Ligne 220: | Ligne 226: | ||
Importez les '' | Importez les '' | ||
< | < | ||
- | $ gpg --import | + | $ gpg --import |
</ | </ | ||
Et vérifiez le bon déroulement de l' | Et vérifiez le bon déroulement de l' | ||
Ligne 226: | Ligne 232: | ||
$ gpg -K | $ gpg -K | ||
</ | </ | ||
- | Un # devrait être apparu à droite de '' | + | Un # devrait être apparu à droite de '' |
+ | \\ | ||
(Factultatif) Vous pouvez changer le mot de passe protégeant vos subkeys sur l' | (Factultatif) Vous pouvez changer le mot de passe protégeant vos subkeys sur l' | ||
< | < | ||
Ligne 234: | Ligne 241: | ||
</ | </ | ||
- | Votre ordinateur est désormais | + | Votre ordinateur est désormais |
==== Utiliser la clé maître secrète ==== | ==== Utiliser la clé maître secrète ==== | ||
Ligne 250: | Ligne 257: | ||
Pour ce faire, branchez votre clé USB chiffrée contenant la copie du dossier .gnupg et indiquez à GnuPG le chemin vers le répertoire .gnupg de votre clé. | Pour ce faire, branchez votre clé USB chiffrée contenant la copie du dossier .gnupg et indiquez à GnuPG le chemin vers le répertoire .gnupg de votre clé. | ||
< | < | ||
- | $ gpg --homedir / | + | $ gpg --homedir / |
+ | | ||
ou | ou | ||
$ export GNUPGHOME=/ | $ export GNUPGHOME=/ | ||
+ | $ gpg --edit-key [KEYID] | ||
| | ||
$ export GNUPGHOME=$HOME/ | $ export GNUPGHOME=$HOME/ | ||
</ | </ | ||
N' | N' | ||
- | Si des modifications concernant les uid (par exemple) ont été apportées, n' | + | <del>Si des modifications concernant les uid (par exemple) ont été apportées, n' |
- | Vous pouvez alors démonter | + | \\ |
+ | Après avoir effectué des modifications, | ||
+ | Pour cela, re-publiez | ||
+ | < | ||
+ | $ gpg --homedir / | ||
+ | ou (selon le choix de la méthode à l' | ||
+ | $ gpg --export-secret-subkeys [KEYID | SUBKEYID1 [SUBKEYID2] ...] > [fingerprint].secret-subkeys | ||
+ | </ | ||
+ | Puis importez la nouvelle version de la clé publique et les subkeys. | ||
+ | < | ||
+ | $ gpg --keyserver < | ||
+ | $ gpg --import [fingerprint].secret-subkeys | ||
+ | </ | ||
+ | |||
+ | Vous pouvez alors démonter et détacher votre clé USB chiffrée.\\ | ||
+ | \\ | ||
+ | Une dernière méthode, plus simple, est possible mais elle nécessite de stocker la clé maître temporairement sur la machine (donc plus uniquement sur votre clé chiffrée) et n'est donc pas recommandée ni explicité ici. | ||
+ | - Importer la clé maître | ||
+ | - Effectuer des opération | ||
+ | - Ré-exporter clé maître et subkeys ainsi que les clés publiques localement stockées | ||
+ | - Supprimer la clé du trousseau | ||
+ | - Importer les subkeys et les clés publiques | ||
+ | - Envoyer la clé sur les serveurs hpk | ||
==== Utiliser sa clé sur ses appareils ==== | ==== Utiliser sa clé sur ses appareils ==== | ||
Ligne 285: | Ligne 316: | ||
Se référer au manuel de '' | Se référer au manuel de '' | ||
+ | Lister les clés du trousseau | ||
+ | < | ||
+ | $ gpg --list-keys | ||
+ | </ | ||
+ | |||
+ | Récupérer une clé depuis un serveur de clés | ||
+ | < | ||
+ | $ gpg --keyserver [nom du serveur de clés] --search-keys [adresse e-mail] | ||
+ | ou | ||
+ | $ gpg --keyserver [nom du serveur de clés] --search-keys KEYID | ||
+ | </ | ||
+ | |||
+ | Récupérer une clé depuis un fichier | ||
+ | < | ||
+ | $ gpg --import fichier.extension | ||
+ | </ | ||
+ | |||
+ | Envoyer une clé vers un serveur de clés | ||
+ | < | ||
+ | $ gpg --keyserver [nom du serveur de clés] --send-keys KEYID | ||
+ | </ | ||
+ | |||
+ | Définir le niveau de confiance d'une clé | ||
+ | < | ||
+ | $ gpg --edit-key KEYID trust | ||
+ | </ | ||
+ | |||
+ | Certifier une clé (nécessite la clé primaire secrète) | ||
+ | < | ||
+ | $ gpg --edit-key KEYID sign | ||
+ | ... | ||
+ | > save | ||
+ | </ | ||
+ | |||
+ | Lorsque l'on souhaite certifier la clé de quelqu' | ||
+ | |||
+ | Renvoyer la clé de quelqu' | ||
+ | < | ||
+ | $ gpg --armor --export KEYID > KEYID.asc | ||
+ | </ | ||
+ | Récupérer le fichier .asc et le transmettre par mail (en signant le mail). | ||
+ | |||
+ | Voir les certifications d'une clé | ||
+ | < | ||
+ | $ gpg --list-sigs KEYID | ||
+ | </ | ||
===== Modifier une clé ===== | ===== Modifier une clé ===== | ||
==== Ajouter des éléments à la clé ==== | ==== Ajouter des éléments à la clé ==== | ||
- | Une clé OpenPGP peut contenir plus d' | + | Une clé OpenPGP peut contenir plus d' |
Pour l' | Pour l' | ||
Ligne 415: | Ligne 492: | ||
Afin de supprimer une clé (master et subkeys), il faut préalablement supprimer la clé maître. | Afin de supprimer une clé (master et subkeys), il faut préalablement supprimer la clé maître. | ||
< | < | ||
- | $ gpg --delete-secrete-keys [KeyID] | + | $ gpg --delete-secret-keys [KeyID] |
</ | </ | ||
Il vous sera alors plusieurs fois demandé confirmation.\\ | Il vous sera alors plusieurs fois demandé confirmation.\\ | ||
Ligne 422: | Ligne 499: | ||
$ gpg --delete-keys [KeyID] | $ gpg --delete-keys [KeyID] | ||
</ | </ | ||
- | Vous pouvez par ce biais supprimer plusieurs clés à la fois en indiquant plusieurs [KeyID].\\ | + | Vous pouvez par ce biais supprimer plusieurs |
Vérifiez enfin que la(les) clé(s) a(ont) bien été supprimée(s). | Vérifiez enfin que la(les) clé(s) a(ont) bien été supprimée(s). | ||
< | < |