Google Chromium patch update
application/x-chrome-package
Magic Bytes
Offset: 0
43 72 32 34
The Google Chromium patch update format (CRX) is a specialized archive container developed by Google for distributing browser extensions and component updates. It packages JavaScript, HTML, and resource files to provide additional functionality, themes, or application enhancements for Google Chrome and related Chromium-based browsers. These files include a digital signature to verify content integrity and authorship, though modern security policies generally restrict their installation to the official Chrome Web Store.
Validation Code
How to validate .crx files in Python
Python
def is_crx(file_path: str) -> bool:
"""Check if file is a valid CRX by magic bytes."""
signature = bytes([0x43, 0x72, 0x32, 0x34])
with open(file_path, "rb") as f:
return f.read(4) == signature
How to validate .crx files in Node.js
Node.js
function isCRX(buffer: Buffer): boolean {
const signature = Buffer.from([0x43, 0x72, 0x32, 0x34]);
return buffer.subarray(0, 4).equals(signature);
}
Go
func IsCRX(data []byte) bool {
signature := []byte{0x43, 0x72, 0x32, 0x34}
if len(data) < 4 {
return false
}
return bytes.Equal(data[:4], signature)
}
API Endpoint
GET
/api/v1/crx
curl https://filesignature.org/api/v1/crx