GRM
text/plain
Magic Bytes
Offset: 0
54 68 69 73 20 69 73 20 54 65 58 2C
The GRM file format is a resource associated with the TeX typesetting system, developed by Donald Knuth for high-quality digital printing. These files typically serve as precompiled format definitions or grammar sets, enabling the rapid loading of macro collections and typesetting rules during document processing. While structurally similar to standard binary format dumps, this legacy file type is benign and poses no active security risks to modern systems.
Validation Code
How to validate .grm files in Python
Python
def is_grm(file_path: str) -> bool:
"""Check if file is a valid GRM 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 .grm files in Node.js
Node.js
function isGRM(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 IsGRM(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/grm
curl https://filesignature.org/api/v1/grm