RNG
text/plain
Magic Bytes
Offset: 0
54 68 69 73 20 69 73 20 54 65 58 2C
The RNG file format is a specialized data structure created by Donald Knuth and maintained within the TeX typesetting community. It primarily serves to store precompiled macro definitions or state information for random number generation within specific TeX distributions and document preparation workflows. As a plain text format used within a controlled typesetting environment, it is considered safe, though it is largely legacy and superseded by modern LaTeX state management methods.
Validation Code
How to validate .rng files in Python
Python
def is_rng(file_path: str) -> bool:
"""Check if file is a valid RNG by magic bytes."""
signature = bytes([0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x54, 0x65, 0x58, 0x2C])
with open(file_path, "rb") as f:
return f.read(12) == signature
How to validate .rng files in Node.js
Node.js
function isRNG(buffer: Buffer): boolean {
const signature = Buffer.from([0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x54, 0x65, 0x58, 0x2C]);
return buffer.subarray(0, 12).equals(signature);
}
Go
func IsRNG(data []byte) bool {
signature := []byte{0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x54, 0x65, 0x58, 0x2C}
if len(data) < 12 {
return false
}
return bytes.Equal(data[:12], signature)
}
API Endpoint
GET
/api/v1/rng
curl https://filesignature.org/api/v1/rng