Google Chrome dictionary file
application/octet-stream
Magic Bytes
Offset: 0
42 45 47 49 4E 3A 56 43 41 52 44 0D 0A
The Google Chrome Dictionary (BDIC) is a proprietary binary file format developed by Google for use in the Chromium open-source project. It functions as the primary data source for the browser’s built-in spell-checking engine, enabling efficient word lookup and linguistic verification across multiple languages. Because the format is a compiled version of plain text word lists containing no executable code, it is generally considered safe for system security.
Validation Code
How to validate .bdic files in Python
Python
def is_bdic(file_path: str) -> bool:
"""Check if file is a valid BDIC by magic bytes."""
signature = bytes([0x42, 0x45, 0x47, 0x49, 0x4E, 0x3A, 0x56, 0x43, 0x41, 0x52, 0x44, 0x0D, 0x0A])
with open(file_path, "rb") as f:
return f.read(13) == signature
How to validate .bdic files in Node.js
Node.js
function isBDIC(buffer: Buffer): boolean {
const signature = Buffer.from([0x42, 0x45, 0x47, 0x49, 0x4E, 0x3A, 0x56, 0x43, 0x41, 0x52, 0x44, 0x0D, 0x0A]);
return buffer.subarray(0, 13).equals(signature);
}
Go
func IsBDIC(data []byte) bool {
signature := []byte{0x42, 0x45, 0x47, 0x49, 0x4E, 0x3A, 0x56, 0x43, 0x41, 0x52, 0x44, 0x0D, 0x0A}
if len(data) < 13 {
return false
}
return bytes.Equal(data[:13], signature)
}
API Endpoint
GET
/api/v1/bdic
curl https://filesignature.org/api/v1/bdic