SHR
application/octet-stream
Magic Bytes
Offset: 0
52 49 46 46 73 68 72 35
The SHR file format is a search index or channel container developed by Apple for use with the Sherlock application on Classic Mac OS and early macOS. These files allow the Sherlock utility to categorize web resources, local file metadata, and external search plugins for structured information retrieval. As a legacy format superseded by modern Spotlight technology, it is primarily encountered in archival contexts and presents minimal security risk due to its non-executable nature.
Validation Code
How to validate .shr files in Python
Python
def is_shr(file_path: str) -> bool:
"""Check if file is a valid SHR by magic bytes."""
signature = bytes([0x52, 0x49, 0x46, 0x46, 0x73, 0x68, 0x72, 0x35])
with open(file_path, "rb") as f:
return f.read(8) == signature
How to validate .shr files in Node.js
Node.js
function isSHR(buffer: Buffer): boolean {
const signature = Buffer.from([0x52, 0x49, 0x46, 0x46, 0x73, 0x68, 0x72, 0x35]);
return buffer.subarray(0, 8).equals(signature);
}
Go
func IsSHR(data []byte) bool {
signature := []byte{0x52, 0x49, 0x46, 0x46, 0x73, 0x68, 0x72, 0x35}
if len(data) < 8 {
return false
}
return bytes.Equal(data[:8], signature)
}
API Endpoint
GET
/api/v1/shr
curl https://filesignature.org/api/v1/shr