FIT

application/fits

Safe

Magic Bytes

Offset: 0
53 49 4D 50 4C 45 20 20 3D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54

The Flexible Image Transport System (FITS) is an open standard file format maintained by the International Astronomical Union for digital file storage. It is the standard format used within the astronomical community to transport, analyze, and archive scientific data, including multidimensional arrays and tables. Originally developed in the late 1970s, FITS remains backwards compatible and is considered safe as it typically contains structured data rather than executable code.

Extension

.fit

MIME Type

application/fits

Byte Offset

0

Risk Level

Safe

Validation Code

How to validate .fit files in Python

Python
def is_fit(file_path: str) -> bool:
    """Check if file is a valid FIT by magic bytes."""
    signature = bytes([0x53, 0x49, 0x4D, 0x50, 0x4C, 0x45, 0x20, 0x20, 0x3D, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54])
    with open(file_path, "rb") as f:
        return f.read(30) == signature

How to validate .fit files in Node.js

Node.js
function isFIT(buffer: Buffer): boolean {
  const signature = Buffer.from([0x53, 0x49, 0x4D, 0x50, 0x4C, 0x45, 0x20, 0x20, 0x3D, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54]);
  return buffer.subarray(0, 30).equals(signature);
}
Go
func IsFIT(data []byte) bool {
    signature := []byte{0x53, 0x49, 0x4D, 0x50, 0x4C, 0x45, 0x20, 0x20, 0x3D, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54}
    if len(data) < 30 {
        return false
    }
    return bytes.Equal(data[:30], signature)
}

API Endpoint

GET /api/v1/fit
curl https://filesignature.org/api/v1/fit

Related Formats