--- date: 2017-07-23T19:43:38+01:00 draft: false tags: ['GPG','Renouvellement'] title: "GPG : renouvellement de ma clé" --- ## Description Enfin, cela fait presque deux ans, à une ou deux semaines près, que j'ai créé ma précédente clé GPG … il va falloir la renouveler, n'est-ce pas ! Il y a deux manières de faire cela : - **si et seulement si** votre clé est toujours conforme aux recommandations actuelles de choix d’algorithmes, de taille de celle-ci - à savoir RSA 4096 - alors il est possible d'envisager de {{< anchor "modifier la date d'expiration" "modifier-la-date-d-expiration" >}} - si vous préférez recréer une clé, pour quelle que raison que ce soit, alors il suffit de {{< anchor "créer une nouvelle clé" "création_d_une_nouvelle_clé" >}}, relative toujours à la même adresse mail… ## Modifier la date d'expiration Repousser la date d'expiration est très simple, il faut éditer la clé en utilisant son empreinte, bien-sûr :
*Et oui, pour rappel, on édite sa clé à partir de son empreinte gpg, et non pas sa clé gpg ou l'email correspondant !* ```gpg $ gpg --edit-key "CBC8 A5AB C6A6 2F2C C414 E869 DA43 05B9 BE07 311F" gpg (GnuPG) 2.2.27; Copyright (C) 2021 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. sec ed25519/0xDA4305B9BE07311F créé : 2020-01-30 expirée : 2022-01-29 utilisation : SC confiance : ultime validité : expirée ssb cv25519/0x9BA14C4E01678087 créé : 2020-01-30 expirée : 2022-01-29 utilisation : E ssb ed25519/0xBA82BCDF5858BA77 créé : 2020-01-30 expirée : jamais utilisation : S [ expirée ] (1). Stéphane HUC [ expirée ] (2) Stéphane HUC gpg> ``` Utilisons l'option `expire`, tel que : ```gpg gpg> expire Modification de la date d'expiration de la clef principale. Veuillez indiquer le temps pendant lequel cette clef devrait être valable. 0 = la clef n'expire pas = la clef expire dans n jours w = la clef expire dans n semaines m = la clef expire dans n mois y = la clef expire dans n ans Pendant combien de temps la clef est-elle valable ? (0) 1y La clef expire le jeu. 23 mars 2023 09:56:03 CET Est-ce correct ? (o/N) o sec ed25519/0xDA4305B9BE07311F créé : 2020-01-30 expire : 2023-03-23 utilisation : SC confiance : ultime validité : ultime ssb cv25519/0x9BA14C4E01678087 créé : 2020-01-30 expirée : 2022-01-29 utilisation : E ssb ed25519/0xBA82BCDF5858BA77 créé : 2020-01-30 expire : jamais utilisation : S [ ultime ] (1). Stéphane HUC [ ultime ] (2) Stéphane HUC gpg: Attention : votre sous-clef de chiffrement expire bientôt. gpg: Vous pourriez modifier aussi sa date d’expiration. gpg> ``` Ainsi que l'affiche l'avertissement, il est nécessaire de modifier aussi les dates d'expirations de vos sous-clés, si vous en avez, en utilisant l'option `key`, tel que : ```gpg gpg> key 0xBA82BCDF5858BA77 sec ed25519/0xDA4305B9BE07311F créé : 2020-01-30 expire : 2023-03-23 utilisation : SC confiance : ultime validité : ultime ssb* cv25519/0x9BA14C4E01678087 créé : 2020-01-30 expire : 2023-03-23 utilisation : E ssb* ed25519/0xBA82BCDF5858BA77 créé : 2020-01-30 expire : jamais utilisation : S [ ultime ] (1). Stéphane HUC [ ultime ] (2) Stéphane HUC gpg> expire Are you sure you want to change the expiration time for multiple subkeys? (y/N) y Veuillez indiquer le temps pendant lequel cette clef devrait être valable. 0 = la clef n'expire pas = la clef expire dans n jours w = la clef expire dans n semaines m = la clef expire dans n mois y = la clef expire dans n ans Pendant combien de temps la clef est-elle valable ? (0) 1y La clef expire le jeu. 23 mars 2023 09:57:39 CET Est-ce correct ? (o/N) o sec ed25519/0xDA4305B9BE07311F créé : 2020-01-30 expire : 2023-03-23 utilisation : SC confiance : ultime validité : ultime ssb* cv25519/0x9BA14C4E01678087 créé : 2020-01-30 expire : 2023-03-23 utilisation : E ssb* ed25519/0xBA82BCDF5858BA77 créé : 2020-01-30 expire : 2023-03-23 utilisation : S [ ultime ] (1). Stéphane HUC [ ultime ] (2) Stéphane HUC gpg> ``` Faire de même pour tout autre sous-clé… N'oubliez surtout pas d'enregister vos modifications grâce à l'option `save` : ```gpg gpg> save $ ``` ce qui vous renverra sous votre invite shell. ### Envoi au serveur de clé GPG #### cas normal de serveur de clé Pour finir, n'oubliez pas de l'envoyer au serveur :
`$ gpg --send-key "fingerprint"`. #### serveur keys.openpgp.org Sauf si votre serveur est **keys.OpenPGP.org**, faites alors : ```sh $ gpg --export "fingerprint" | curl -T - https://keys.openpgp.org ``` Normallement, vous aurez un message de réussite, tel que : ```sh Key successfully uploaded. Proceed with verification here: https://keys.openpgp.org/upload/*** ``` Cliquez sur le lien ou copiez-le dans votre navigateur, et confirmez l'ajout comme il vous sera demandé par le biais du site. ### Pour finir {{< note info >}} Pensez à créer vos fichiers d'export de clé privée, publique, voire de créer votre fichier de révocation !
Et, bien-sûr à les sécuriser… {{}} ## Création d'une nouvelle clé Comme j'aime bien faire les choses, qu'il s'est passé près de deux ans, entre temps - *voire plus* -, je me penche à nouveau sur la lecture de cet article : "**{{< inside2 l="sec:gpg:gpg-guide-bonnes-pratiques" t="Guide bonnes pratiques de création GPG" >}}**". Une fois que vous avez créé la nouvelle, suivez ces étapes très simples : - Signez publiquement la nouvelle clé, avec votre ancienne clé - cela montrera que vous lui faites confiance…
`$ gpg --default-key "fingerprint clé qui sert à signer" --sign-key "fingerprint clé à signer"` - Exportez votre nouvelle clé, en la publiant sur un des serveurs SKS…
`$ gpg --send-key "fingerprint"` - Arrivé à expiration, il va falloir révoquer votre ancienne clé, et publiez le fait que l'ancienne clé soit révoquée - et là, je vous renvoie au mon mémo "**{{< inside "sec:gpg:gpg-revoque" "GPG Révocation de clé" >}}**". ----