SmartDraw Drawing file
application/octet-stream
Magic Bytes
Offset: 0
53 50 46 49 00
SmartDraw Drawing (SDR) is a proprietary vector graphics file format developed by SmartDraw Software, LLC. It is primarily used for creating technical diagrams, including flowcharts, organizational charts, floor plans, and network maps within the SmartDraw application suite. As a legacy binary format largely succeeded by the compressed SDRZ extension, it possesses a low security risk profile, though third-party viewers may encounter compatibility issues when rendering properties from older software versions.
Validation Code
How to validate .sdr files in Python
Python
def is_sdr(file_path: str) -> bool:
"""Check if file is a valid SDR by magic bytes."""
signature = bytes([0x53, 0x50, 0x46, 0x49, 0x00])
with open(file_path, "rb") as f:
return f.read(5) == signature
How to validate .sdr files in Node.js
Node.js
function isSDR(buffer: Buffer): boolean {
const signature = Buffer.from([0x53, 0x50, 0x46, 0x49, 0x00]);
return buffer.subarray(0, 5).equals(signature);
}
Go
func IsSDR(data []byte) bool {
signature := []byte{0x53, 0x50, 0x46, 0x49, 0x00}
if len(data) < 5 {
return false
}
return bytes.Equal(data[:5], signature)
}
API Endpoint
GET
/api/v1/sdr
curl https://filesignature.org/api/v1/sdr