Flexible Image Transport System (.fits)
.fits file signature | application/fits
Flexible Image Transport System (FITS), Version 3.0file
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
Sources: Apache Tika, Wikipedia, Gary Kessler
All Known Signatures
2 signature variants are documented for .fits files across multiple sources.
| Hex Signature | Offset | Sources |
|---|---|---|
| 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 | 0 | Apache Tika, Wikipedia, Gary Kessler |
| 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 54 | 0 | Apache Tika |
Extension
.fits
MIME Type
application/fits
Byte Offset
0
Risk Level
Safe
Validation Code
How to validate .fits files in Python
def is_fits(file_path: str) -> bool:
"""Check if file is a valid FITS 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 .fits files in Node.js
function isFITS(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);
}
How to validate .fits files in Go
func IsFITS(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
/api/v1/fits
curl https://filesignature.org/api/v1/fits
See the full API documentation for all endpoints and parameters.
Frequently Asked Questions
What is a .fits file?
A .fits file is a Flexible Image Transport System file. Flexible Image Transport System (FITS), Version 3.0file
What are the magic bytes for .fits files?
The magic bytes for Flexible Image Transport System files are 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 at byte offset 0. These bytes uniquely identify the file format regardless of the file extension.
How do I validate a .fits file?
To validate a .fits file, read the first bytes of the file and compare them against the known magic bytes (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) at offset 0. This is more reliable than checking the file extension alone, as extensions can be renamed.
What is the MIME type for .fits files?
The primary MIME type for .fits files is application/fits.
Is it safe to open .fits files?
Flexible Image Transport System (.fits) files are generally safe to open. They are classified as low risk because they primarily contain data rather than executable code. However, always ensure files come from a trusted source.