OTG
application/vnd.oasis.opendocument.graphics-template
Magic Bytes
Offset: 0
50 4B
OTG is the OpenDocument Graphics Template format, an XML-based standard developed and maintained by the Organization for the Advancement of Structured Information Standards (OASIS). It serves as a blueprint for creating vector graphics documents, primarily used in productivity suites like LibreOffice Draw and Apache OpenOffice to ensure consistent layouts and styles. As a compressed ZIP container, the format is generally considered safe, although users should exercise caution with templates containing embedded macros or external scripts.
Validation Code
How to validate .otg files in Python
Python
def is_otg(file_path: str) -> bool:
"""Check if file is a valid OTG by magic bytes."""
signature = bytes([0x50, 0x4B])
with open(file_path, "rb") as f:
return f.read(2) == signature
How to validate .otg files in Node.js
Node.js
function isOTG(buffer: Buffer): boolean {
const signature = Buffer.from([0x50, 0x4B]);
return buffer.subarray(0, 2).equals(signature);
}
Go
func IsOTG(data []byte) bool {
signature := []byte{0x50, 0x4B}
if len(data) < 2 {
return false
}
return bytes.Equal(data[:2], signature)
}
API Endpoint
GET
/api/v1/otg
curl https://filesignature.org/api/v1/otg