Pendant des années, chiffrer un fichier c’était : générer une clé GPG, la stocker sur une clé physique, gérer l’expiration, prier pour que le keyring ne soit pas corrompu, et relire la doc GPG pour la trente-septième fois.

age a remplacé tout ça. Une clé publique, une clé privée, zéro concept de keyring. La clé privée tient sur une ligne. La clé publique aussi. C’est tellement simple qu’on peut les stocker dans son gestionnaire de mots de passe.

age vs GPG pour le quotidien

UsageGPGage
Générer une clégpg --gen-key (7 questions)age-keygen (0 question)
Chiffrer un fichiergpg -e -r KEYage -r PUBKEY
Déchiffrergpg -d fichier.gpgage -d -i key.txt
Taille de la clé privée10+ lignes1 ligne
Compatible SSHOui (pénible)Oui (ssh-ed25519 natif)

Ce qui change tout : age supporte les clés SSH nativement. Pour chiffrer un fichier que seul mon serveur peut lire, je passe sa clé publique SSH. Pas besoin de générer des clés age séparées.

Cheatsheet age

# Générer une clé
age-keygen -o key.txt

# Chiffrer avec une clé publique
age -r age1ql3z7hjy54p3w6d... -o secret.txt.age secret.txt

# Déchiffrer
age -d -i key.txt -o secret.txt secret.txt.age

# Chiffrer avec une clé SSH publique
age -R ~/.ssh/id_ed25519.pub -o secret.txt.age secret.txt

# Chiffrer pour plusieurs destinataires
age -r PUB1 -r PUB2 -o secret.txt.age secret.txt

C’est tellement simple que j’ai supprimé toutes mes clés GPG locales. Je les garde juste pour signer des commits.

Pour le combo age + sops (chiffrer des secrets dans Git), voir le TIL dédié.