Voor de ingewijden: grep cafe /usr/share/magic
Een computerbestand is meestal van een zeker type. Vaak kun je dat zien aan de extensie bijvoorbeeld .txt, .java of .class. Naast de extensie kunnen veel bestanden ook worden herkend aan het eerste aantal bytes, het zogenaamde magic number. Voor een java class file zijn dat de eerste 4 bytes. Als deze 4 bytes worden geschreven in het zestientallig stelsel ( hexadecimaal, 0..9,A..F) ziet dat eruit als CAFEBABE. Om te benadrukken dat het hier gaat om een hexadecimaal geschreven getal, is 0x toegevoegd, een in veel programmeertalen gebruikelijk voorvoegsel.
Een stukje hexdump van een willekeurige gecompileerde java .class file verduidelijkt de zaak:
0000000 CA FE BA BE 00 03 00 2D 01 60 0A 00 69 00 CD 09 0000020 00 68 00 CE 09 00 68 00 CF 09 00 68 00 D0 09 00 0000040 68 00 D1 09 00 68 00 D2 09 00 68 00 D3 09 00 68 0000060 00 D4 09 00 68 00 D5 09 00 68 00 D6 09 00 68 00 0000100 D7 09 00 68 00 D8 09 00 68 00 D9 09 00 68 00 DA 0000120 09 00 68 00 DB 09 00 68 00 DC 09 00 68 00 DD 09 0000140 00 68 00 DE 09 00 68 00 DF 09 00 68 00 E0 09 00 0000160 68 00 E1 09 00 68 00 E2 09 00 68 00 E3 09 00 68 0000200 00 E4 0A 00 E5 00 E6 09 00 68 00 E7 0A 00 E5 00 0000220 E8 09 00 68 00 E9 09 00 68 00 EA 09 00 68 00 EB 0000240 0A 00 68 00 EC 04 42 C8 00 00 04 43 B4 00 00 06 0000260 40 09 21 FB 53 C8 D4 F1 06 40 66 80 00 00 00 00 0000300 00 0A 00 ED 00 EE 0A 00 ED 00 EF 07 00 F0 03 00 0000320 FF 00 00 03 00 00 FF 00 0A 00 28 00 F1 09 00 68 0000340 00 F2 07 00 F3 0A 00 2D 00 F4 09 00 68 00 F5 0A
Gewijzigd: 2006-07-11