file signature : Java Glossary

*0-9ABCDEFGHIJKLMNOPQRSTUVWXYZ (all)

file signature

A hex constant embedded usually at a fixed offset in a file that identifies what format it is. Since identifiers are arbitrary and not assigned by any authority, they are sometimes called magic numbers, e.g. CA FE BA BE at the head of every Java class file. File signature are usully specified in hex, or sometimes ASCII (American Standard Code for Information Interchange). I have never seen any other encoding. These have to be kept simple for low level debugging.

File Signatures for Common Image File Formats
File Type Magic Number
Offset in hex
Magic Number
in hex
Magic Number
in ASCII
Offset of Width Offset of Height Format
*.png 0 89504e470d0a1a0a ·PNG 10 14 32-bit, big endian
*.jpg 0 FBD8 ·F 1a ac 16-bit, little endian, sometimes at other offsets. See ImageInfo source code.
6 4a464946 JFIF
*.gif 0 474946396132 GIF89a 06 08 16-bit, little endian
File Signatures for Windows Executables
File Type Offset in hex Magic Number
in hex
Magic Number
in ASCII
16-bit DOS (Disk Operating System) exe 0 4d5a MZ
3c 0000 ··
16-bit Win3.1 exe 0 4d5a MZ
4*(3c) 4e45 NE
32-bit Windows95+ exe 0 4d5a MZ
4*(3c) 50450000 PE··
+4 4c01
32-bit Jet Windows exe 0 4d5a MZ
4*(3c) 50450000 PE··
+4 4c01
4*(2f4) 43504200 CPB·
64-bit Windows amd64 exe 0 4d5a MZ
4*(3c) 50450000 PE··
+4 6486
64-bit Jet Windows amd64 exe 0 4d5a MZ
4*(3c) 50450000 PE··
+4 6486
4*(2f4) 43504200 CPB·
64-bit Windows ia64 exe (Itanium) 0 4d5a MZ
4*(3c) 50450000 PE··
+4 0002 ··

4*(3c) means go to offset 003c. Look at the following 4 bytes. That gives you the little-endian offset to the magic number.

Because Windows machines are little endian, magic numbers are often quoted in reverse order in other sources. I have quoted them in the same order they appear in RAM (Random Access Memory). This works even when the number is not an even number of bytes.


This page is posted
on the web at:

http://mindprod.com/jgloss/filesignature.html

Optional Replicator mirror
of mindprod.com
on local hard disk J:

J:\mindprod\jgloss\filesignature.html
logo
Please the feedback from other visitors, or your own feedback about the site.
Contact Roedy. Please feel free to link to this page without explicit permission.
no blog for this page
IP:[65.110.21.43]
Your face IP:[54.242.229.174]
You are visitor number