La storia di questo esercizio parte dal confronto tra l'estensione del file e il formato di file binario per esplorare i concetti di dati binari, pattern matching e codifica delle stringhe. Lo studente dovrà scrivere alcune funzioni per confrontare il tipo di media atteso con il tipo di media codificato nel file.
La storia offre lo spunto per definire alcune funzioni:
| Tipo di file | Estensione comune | Tipo di media | firma binaria dai primi byte |
|---|---|---|---|
| ELF |
none o "exe"
|
"application/octet-stream" |
0x7F, 0x45, 0x4C, 0x46 |
| BMP | "bmp" |
"image/bmp" |
0x42, 0x4D |
| PNG | "png" |
"image/png" |
0x89, 0x50, 0x4E, 0x47, 0x0D, 0x0A, 0x1A, 0x0A |
| JPG | "jpg" |
"image/jpg" |
0xFF, 0xD8, 0xFF |
| GIF | "gif" |
"image/gif" |
0x47, 0x49, 0x46 |