MOBI
application/x-mobipocket-ebook
Magic Bytes
Offset: 0
42 4F 4F 4B 4D 4F 42 49
The Mobipocket eBook format (MOBI) is a proprietary standard originally developed by Mobipocket SA and subsequently acquired by Amazon. It serves as a container for reflowable digital text and images, designed to adapt primarily to the smaller screens of early mobile devices and eReaders. While the format is now considered obsolete and has been replaced by the modern AZW3 standard, it remains compatible with legacy Kindle hardware and reader applications.
Validation Code
How to validate .mobi files in Python
Python
def is_mobi(file_path: str) -> bool:
"""Check if file is a valid MOBI by magic bytes."""
signature = bytes([0x42, 0x4F, 0x4F, 0x4B, 0x4D, 0x4F, 0x42, 0x49])
with open(file_path, "rb") as f:
return f.read(8) == signature
How to validate .mobi files in Node.js
Node.js
function isMOBI(buffer: Buffer): boolean {
const signature = Buffer.from([0x42, 0x4F, 0x4F, 0x4B, 0x4D, 0x4F, 0x42, 0x49]);
return buffer.subarray(0, 8).equals(signature);
}
Go
func IsMOBI(data []byte) bool {
signature := []byte{0x42, 0x4F, 0x4F, 0x4B, 0x4D, 0x4F, 0x42, 0x49}
if len(data) < 8 {
return false
}
return bytes.Equal(data[:8], signature)
}
API Endpoint
GET
/api/v1/mobi
curl https://filesignature.org/api/v1/mobi