I’m looking for feedback on age-rt, an experimental streaming format based on age v1.
The motivation is to use age-style encryption for data that is produced continuously and should be forwarded immediately, such as live audio/video, terminal output, telemetry, logs, event feeds, and long-running network connections.
Age’s fixed-size payload chunks work well for files, but can introduce latency when data arrives slowly or in small pieces. age-rt aims to retain age’s encryption and key-management model while allowing available data to be encrypted and transmitted immediately. The proposal is intentionally a minimal diff to the original spec with conservative settings, so that security analysis is straightforward and existing age implementations can be reused.
The main differences from age v1 are:
- variable-sized chunks, from 0 to 65,536 bytes (no padding required to fill a fixed-size chunk)
- an explicit 4-byte ciphertext length before each chunk
- custom header string (same format)
The specification is separate from the implementation. It documents the resulting metadata leakage, including chunk sizes and timing. The design is experimental and has not been independently audited.
I’d welcome general discussion, criticism, and concrete attack scenarios, particularly regarding the framing, security properties, and practical usefulness for real-time streams.

