Skip to content

CRT (.crt)

.crt file signature | application/octet-stream

CRT is a file extension commonly used for X.509 digital certificates, a standard defined by ITU-T and maintained through related public-key infrastructure specifications. It is used to distribute server, client, and certificate-authority certificates for TLS, HTTPS, email security, and other authenticated communication systems. Certificate files are generally safe to open, but their trust depends on the issuing authority and validity period; some legacy CRT files are PEM-encoded text rather than a distinct format.

Safe

Magic Bytes

Offset 0
43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20

Sources: Wikipedia

All Known Signatures

2 signature variants are documented for .crt files across multiple sources.

Hex Signature Offset Sources
43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20 0 Wikipedia
2D 2D 2D 2D 2D 42 45 47 49 4E 20 43 45 52 54 49 46 49 43 41 54 45 2D 2D 2D 2D 2D 0 Wikipedia

Extension

.crt

MIME Type

application/octet-stream

Byte Offset

0

Risk Level

Safe

Validation Code

How to validate .crt files in Python

Python
def is_crt(file_path: str) -> bool:
    """Check if file is a valid CRT by magic bytes."""
    signature = bytes([0x43, 0x36, 0x34, 0x20, 0x43, 0x41, 0x52, 0x54, 0x52, 0x49, 0x44, 0x47, 0x45, 0x20, 0x20, 0x20])
    with open(file_path, "rb") as f:
        return f.read(16) == signature

How to validate .crt files in Node.js

Node.js
function isCRT(buffer: Buffer): boolean {
  const signature = Buffer.from([0x43, 0x36, 0x34, 0x20, 0x43, 0x41, 0x52, 0x54, 0x52, 0x49, 0x44, 0x47, 0x45, 0x20, 0x20, 0x20]);
  return buffer.subarray(0, 16).equals(signature);
}

How to validate .crt files in Go

Go
func IsCRT(data []byte) bool {
    signature := []byte{0x43, 0x36, 0x34, 0x20, 0x43, 0x41, 0x52, 0x54, 0x52, 0x49, 0x44, 0x47, 0x45, 0x20, 0x20, 0x20}
    if len(data) < 16 {
        return false
    }
    return bytes.Equal(data[:16], signature)
}

API Endpoint

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

See the full API documentation for all endpoints and parameters.

Related Formats

Frequently Asked Questions

What is a .crt file?

A .crt file is identified by the magic bytes 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20 at byte offset 0. CRT is a file extension commonly used for X.509 digital certificates, a standard defined by ITU-T and maintained through related public-key infrastructure specifications. It is used to distribute server, client, and certificate-authority certificates for TLS, HTTPS, email security, and other authenticated communication systems. Certificate files are generally safe to open, but their trust depends on the issuing authority and validity period; some legacy CRT files are PEM-encoded text rather than a distinct format.

What are the magic bytes for .crt files?

The magic bytes for CRT files are 43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20 at byte offset 0. These bytes uniquely identify the file format regardless of the file extension.

How do I validate a .crt file?

To validate a .crt file, read the first bytes of the file and compare them against the known magic bytes (43 36 34 20 43 41 52 54 52 49 44 47 45 20 20 20) at offset 0. This is more reliable than checking the file extension alone, as extensions can be renamed.

What is the MIME type for .crt files?

The primary MIME type for .crt files is application/octet-stream.

Is it safe to open .crt files?

CRT (.crt) 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.