Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
age — Un outil de chiffrement simple, moderne et sécurisé (et bibliothèque Go) avec de petites clés explicites, aucune option de configuration et une composabilité de style UNIX. | Kitploit
Outils/GitHubGitHub/filosottile/age
Outils de Chiffrement/DéchiffrementRécupération de DonnéesCryptographieProtection de la Vie PrivéeUtilitaires et Frameworks
GitHubfilosottile/age

age

Un outil de chiffrement simple, moderne et sécurisé (et bibliothèque Go) avec de petites clés explicites, aucune option de configuration et une composabilité de style UNIX.

Voir le dépôt
23.2k660il y a 5 moisVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
Site web

Le logo age, un fil de fer du dôme de Saint-Pierre à Rome, avec le texte : age, file encryption

Go Reference man page C2SP specification

age est un outil de chiffrement de fichiers, un format et une bibliothèque Go simples, modernes et sécurisés.

Il offre de petites clés explicites, la prise en charge post-quantique, aucune option de configuration et une composabilité de style UNIX.

root@kitploit:~
$ age-keygen -o key.txt
Public key: age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p
$ tar cvz ~/data | age -r age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p > data.tar.gz.age
$ age --decrypt -i key.txt data.tar.gz.age > data.tar.gz

📜 La spécification du format se trouve sur age-encryption.org/v1. age a été conçu par @benjojo et @FiloSottile.

🦀 Une implémentation Rust alternative et interopérable est disponible sur github.com/str4d/rage.

🌍 Typage est une implémentation TypeScript. Elle fonctionne dans le navigateur, Node.js, Deno et Bun.

🔑 Les jetons PIV matériels tels que les YubiKeys sont pris en charge via le plugin age-plugin-yubikey.

✨ Pour plus de plugins, d'implémentations, d'outils et d'intégrations, consultez la liste awesome age.

💬 L'auteur le prononce [aɡe̞] avec un g dur, comme GIF, et il s'écrit toujours en minuscules.

Installation

Sur Windows, Linux, macOS et FreeBSD, vous pouvez utiliser les binaires précompilés.

root@kitploit:~
https://dl.filippo.io/age/latest?for=linux/amd64
https://dl.filippo.io/age/v1.3.1?for=darwin/arm64
...

Si vous téléchargez les binaires précompilés, vous pouvez vérifier leurs preuves Sigsum.

Si votre système dispose d'une version prise en charge de Go, vous pouvez compiler à partir des sources.

L'aide de nouveaux empaqueteurs est très bienvenue.

Utilisation

Pour la documentation complète, lisez la page de manuel age(1).

root@kitploit:~
Usage:
    age [--encrypt] (-r RECIPIENT | -R PATH)... [--armor] [-o OUTPUT] [INPUT]
    age [--encrypt] --passphrase [--armor] [-o OUTPUT] [INPUT]
    age --decrypt [-i PATH]... [-o OUTPUT] [INPUT]

Options:
    -e, --encrypt               Encrypt the input to the output. Default if omitted.
    -d, --decrypt               Decrypt the input to the output.
    -o, --output OUTPUT         Write the result to the file at path OUTPUT.
    -a, --armor                 Encrypt to a PEM encoded format.
    -p, --passphrase            Encrypt with a passphrase.
    -r, --recipient RECIPIENT   Encrypt to the specified RECIPIENT. Can be repeated.
    -R, --recipients-file PATH  Encrypt to recipients listed at PATH. Can be repeated.
    -i, --identity PATH         Use the identity file at PATH. Can be repeated.

INPUT defaults to standard input, and OUTPUT defaults to standard output.
If OUTPUT exists, it will be overwritten.

RECIPIENT can be an age public key generated by age-keygen ("age1...")
or an SSH public key ("ssh-ed25519 AAAA...", "ssh-rsa AAAA...").

Recipient files contain one or more recipients, one per line. Empty lines
and lines starting with "#" are ignored as comments. "-" may be used to
read recipients from standard input.

Identity files contain one or more secret keys ("AGE-SECRET-KEY-1..."),
one per line, or an SSH key. Empty lines and lines starting with "#" are
ignored as comments. Passphrase encrypted age files can be used as
identity files. Multiple key files can be provided, and any unused ones
will be ignored. "-" may be used to read identities from standard input.

When --encrypt is specified explicitly, -i can also be used to encrypt to an
identity file symmetrically, instead or in addition to normal recipients.

Destinataires multiples

Les fichiers peuvent être chiffrés pour plusieurs destinataires en répétant -r/--recipient. Chaque destinataire pourra déchiffrer le fichier.

root@kitploit:~
$ age -o example.jpg.age -r age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p \
    -r age1lggyhqrw2nlhcxprm67z43rta597azn8gknawjehu9d9dl0jq3yqqvfafg example.jpg

Fichiers de destinataires

Plusieurs destinataires peuvent également être listés un par ligne dans un ou plusieurs fichiers passés avec l'option -R/--recipients-file.

root@kitploit:~
$ cat recipients.txt
# Alice
age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p
# Bob
age1lggyhqrw2nlhcxprm67z43rta597azn8gknawjehu9d9dl0jq3yqqvfafg
$ age -R recipients.txt example.jpg > example.jpg.age

Si l'argument de -R (ou -i) est -, le fichier est lu depuis l'entrée standard.

Clés post-quantiques

Pour générer des clés hybrides post-quantiques, sécurisées contre les futures attaques des ordinateurs quantiques, utilisez l'option -pq avec age-keygen. Cela pourrait devenir le comportement par défaut à l'avenir.

Les identités post-quantiques commencent par AGE-SECRET-KEY-PQ-1... et les destinataires par age1pq1.... Les destinataires font malheureusement ~2000 caractères.

root@kitploit:~
$ age-keygen -pq -o key.txt
$ age-keygen -y key.txt > recipient.txt
$ age -R recipient.txt example.jpg > example.jpg.age
$ age -d -i key.txt example.jpg.age > example.jpg

La prise en charge des clés post-quantiques est intégrée à age v1.3.0 et ultérieur. Alternativement, le binaire age-plugin-pq peut être installé et placé dans $PATH pour ajouter la prise en charge à toute version et implémentation d'age prenant en charge les plugins. Les destinataires fonctionneront immédiatement, tandis que les identités devront être converties en identités de plugin avec age-plugin-pq -identity.

Phrases de passe

Les fichiers peuvent être chiffrés avec une phrase de passe en utilisant -p/--passphrase. Par défaut, age générera automatiquement une phrase de passe sécurisée. Les fichiers protégés par phrase de passe sont automatiquement détectés lors du déchiffrement.

root@kitploit:~
$ age -p secrets.txt > secrets.txt.age
Enter passphrase (leave empty to autogenerate a secure one):
Using the autogenerated passphrase "release-response-step-brand-wrap-ankle-pair-unusual-sword-train".
$ age -d secrets.txt.age > secrets.txt
Enter passphrase:

Fichiers de clés protégés par phrase de passe

Si un fichier d'identité passé à -i est un fichier age chiffré par phrase de passe, il sera automatiquement déchiffré.

root@kitploit:~
$ age-keygen | age -p > key.age
Public key: age1yhm4gctwfmrpz87tdslm550wrx6m79y9f2hdzt0lndjnehwj0ukqrjpyx5
Enter passphrase (leave empty to autogenerate a secure one):
Using the autogenerated passphrase "hip-roast-boring-snake-mention-east-wasp-honey-input-actress".
$ age -r age1yhm4gctwfmrpz87tdslm550wrx6m79y9f2hdzt0lndjnehwj0ukqrjpyx5 secrets.txt > secrets.txt.age
$ age -d -i key.age secrets.txt.age > secrets.txt
Enter passphrase for identity file "key.age":

Les fichiers d'identité protégés par phrase de passe ne sont pas nécessaires dans la plupart des cas d'utilisation, où l'accès au fichier d'identité chiffré implique l'accès à l'ensemble du système. Cependant, ils peuvent être utiles si le fichier d'identité est stocké à distance.

Clés SSH

En tant que fonctionnalité pratique, age prend également en charge le chiffrement vers des clés publiques SSH ssh-rsa et ssh-ed25519, et le déchiffrement avec le fichier de clé privée correspondant. (ssh-agent n'est pas pris en charge.)

Notez que la prise en charge des clés SSH utilise une cryptographie plus complexe et intègre une étiquette de clé publique dans le fichier chiffré, ce qui permet de suivre les fichiers chiffrés pour une clé publique spécifique.

root@kitploit:~
$ age -R ~/.ssh/id_ed25519.pub example.jpg > example.jpg.age
$ age -d -i ~/.ssh/id_ed25519 example.jpg.age > example.jpg

Chiffrement vers un utilisateur GitHub

En combinant la prise en charge des clés SSH et -R, vous pouvez facilement chiffrer un fichier vers les clés SSH listées sur un profil GitHub.

root@kitploit:~
$ curl https://github.com/benjojo.keys | age -R - example.jpg > example.jpg.age

Gardez à l'esprit que les gens ne protègent peut-être pas leurs clés SSH à long terme, car elles sont révocables lorsqu'elles ne sont utilisées que pour l'authentification, et que les clés SSH conservées sur des YubiKeys ne peuvent pas être utilisées pour déchiffrer des fichiers.

Inspecter les fichiers chiffrés

La commande age-inspect peut afficher des métadonnées sur un fichier chiffré sans le déchiffrer, notamment les types de destinataires, l'utilisation éventuelle du chiffrement post-quantique et la taille de la charge utile.

root@kitploit:~
$ age-inspect secrets.age
secrets.age is an age file, version "age-encryption.org/v1".

This file is encrypted to the following recipient types:
  - "mlkem768x25519"

This file uses post-quantum encryption.

Size breakdown (assuming it decrypts successfully):

    Header                      1627 bytes
    Encryption overhead           32 bytes
    Payload                       42 bytes
                        -------------------
    Total                       1701 bytes

Pour les scripts, utilisez --json pour obtenir une sortie lisible par machine.

Télécharger l’outil
Homebrew (macOS ou Linux) brew install age
MacPorts port install age
Windows winget install --id FiloSottile.age
Alpine Linux v3.15+ apk add age
Arch Linux pacman -S age
Debian 12+ (Bookworm) apt install age
Debian 11 (Bullseye) apt install age/bullseye-backports (activer les backports pour age v1.0.0+)
Fedora 33+ dnf install age
Gentoo Linux emerge app-crypt/age
Guix System guix package -i age
NixOS / Nix nix-env -i age
openSUSE Tumbleweed zypper install age
Ubuntu 22.04+ apt install age
Void Linux xbps-install age
FreeBSD pkg install age (security/age)
OpenBSD 6.7+ pkg_add age (security/age)
Chocolatey (Windows) choco install age.portable
Scoop (Windows) scoop bucket add extras && scoop install age