AVRO
application/octet-stream
Magic Bytes
Offset: 0
4F 62 6A 01
Apache Avro is a row-oriented data serialization framework maintained by the Apache Software Foundation for efficient data exchange between systems. It is extensively utilized within big data ecosystems, including Hadoop and Kafka, to manage high-volume data persistence and facilitate remote procedure calls. Because the format embeds schemas directly within file containers, it supports dynamic typing and schema evolution while remaining secure against macro-based vulnerabilities or malicious executable code during processing.
Validation Code
How to validate .avro files in Python
Python
def is_avro(file_path: str) -> bool:
"""Check if file is a valid AVRO by magic bytes."""
signature = bytes([0x4F, 0x62, 0x6A, 0x01])
with open(file_path, "rb") as f:
return f.read(4) == signature
How to validate .avro files in Node.js
Node.js
function isAVRO(buffer: Buffer): boolean {
const signature = Buffer.from([0x4F, 0x62, 0x6A, 0x01]);
return buffer.subarray(0, 4).equals(signature);
}
Go
func IsAVRO(data []byte) bool {
signature := []byte{0x4F, 0x62, 0x6A, 0x01}
if len(data) < 4 {
return false
}
return bytes.Equal(data[:4], signature)
}
API Endpoint
GET
/api/v1/avro
curl https://filesignature.org/api/v1/avro