AGE-INSPECT(1)
π
AGE-INSPECT(1) β inspect age(1) encrypted files π
okay so bestie, welcome to age-inspect, from the General Commands Manual section of the Unix world (that's section 1, iykyk) β¨
πΈ SYNOPSIS πΈ
age-inspect [--json] [INPUT]
π«Ά DESCRIPTION π«Ά
age-inspect reads an age(1) encrypted file from INPUT (or from standard input if you don't give it one, no pressure π
) and then β the whole point β displays metadata about it without decrypting. Like, it doesn't peek inside, it just reads the vibe check of the file π₯
What you get in that little report:
- the recipient types π
- whether the file uses post-quantum encryption π§
- a size breakdown of the file's components π
no decryption, no drama, just info. periodt π
β¨ OPTIONS β¨
--jsonβ outputs machine-readable JSON instead of the human-readable text version. for when you want your scripts to eat π--versionβ prints the version and then exits. short and sweet, iconic π
π¦ JSON FORMAT π¦
when you pass --json, what comes out is a JSON object with these fields:
version: the age format version (like"age-encryption.org/v1") βpostquantum: whether the file uses post-quantum encryption β one of"yes","no", or"unknown"πarmor: a boolean, meaning yes/no is it ASCII-armored π‘οΈstanza_types: an array of recipient stanza type strings (like["X25519"]or["mlkem768x25519"]) πsizes: an object holding the size info, in bytes πheader: the size of the age headerarmor: the armor encoding overhead β that's0if the file isn't armoredoverhead: the stream encryption overheadmin_payload,max_payload: the payload size bounds (right now these always match each other)min_padding,max_padding: the padding size bounds (right now these are always0)
and here's the cute part: the fields add up to the total size of the file π₯ not me doing math on a manpage, but it checks out.
π EXAMPLES π
inspect an encrypted file, no cap
$ 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
Tip: for machine-readable output, use --json.
yes bestie those paddings are literally zero, nothing to see there, moving on π«Ά
get JSON output for scripting (main character energy)
$ age-inspect --json secrets.age
{
"version": "age-encryption.org/v1",
"postquantum": "yes",
"armor": false,
"stanza_types": [
"mlkem768x25519"
],
"sizes": {
"header": 1627,
"armor": 0,
"overhead": 32,
"min_payload": 42,
"max_payload": 42,
"min_padding": 0,
"max_padding": 0
}
}
slay, your script is gonna love this π
π SEE ALSO π
go read those too, they're the supportive besties of this page π
π AUTHORS π
Filippo Valsorda age@filippo.io β absolute legend, we stan ππ«Ά
ngl this whole thing is metadata-only. it tells you about the file, it does not unlock the file. no cap, keep your keys safe π
β¨ August 2026 β¨ β and that's the version/date sign-off from the AGE-INSPECT(1) page, bestie. take care of your .age files and stay iconic π
ππ¦
π¦ where this page comes from
- alpine 3.24: age-doc 1.3.2-r1 Β· BSD-3-Clause
- arch rolling: age 1.3.2-1 Β· BSD-3-Clause
- nixos 26.05: age 1.3.2
- nixpkgs unstable: age 1.3.2
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms