Skip to content

FH (.fh)

.fh file signature | image/x-freehand

Safe

Magic Bytes

Offset 0
41 47 44 32

Sources: Apache Tika

All Known Signatures

6 signature variants are documented for .fh files across multiple sources.

Hex Signature Offset Sources
41 47 44 32 0 Apache Tika
41 47 44 33 0 Apache Tika
41 47 44 34 0 Apache Tika
46 72 65 65 48 61 6E 64 31 30 0 Apache Tika
46 72 65 65 48 61 6E 64 31 31 0 Apache Tika
46 72 65 65 48 61 6E 64 31 32 0 Apache Tika

Extension

.fh

MIME Type

image/x-freehand

Byte Offset

0

Risk Level

Safe

Validation Code

How to validate .fh files in Python

Python
def is_fh(file_path: str) -> bool:
    """Check if file is a valid FH by magic bytes."""
    signature = bytes([0x41, 0x47, 0x44, 0x32])
    with open(file_path, "rb") as f:
        return f.read(4) == signature

How to validate .fh files in Node.js

Node.js
function isFH(buffer: Buffer): boolean {
  const signature = Buffer.from([0x41, 0x47, 0x44, 0x32]);
  return buffer.subarray(0, 4).equals(signature);
}

How to validate .fh files in Go

Go
func IsFH(data []byte) bool {
    signature := []byte{0x41, 0x47, 0x44, 0x32}
    if len(data) < 4 {
        return false
    }
    return bytes.Equal(data[:4], signature)
}

API Endpoint

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

See the full API documentation for all endpoints and parameters.

Frequently Asked Questions

What is a .fh file?

A .fh file is a FH file.

What are the magic bytes for .fh files?

The magic bytes for FH files are 41 47 44 32 at byte offset 0. These bytes uniquely identify the file format regardless of the file extension.

How do I validate a .fh file?

To validate a .fh file, read the first bytes of the file and compare them against the known magic bytes (41 47 44 32) at offset 0. This is more reliable than checking the file extension alone, as extensions can be renamed.

What is the MIME type for .fh files?

The primary MIME type for .fh files is image/x-freehand.

Is it safe to open .fh files?

FH (.fh) 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.