La historia de este ejercicio parte de la premisa de comparar la extensión de archivo con el formato de archivo binario para explorar las ideas de datos binarios, coincidencia de patrones y codificación de string. Se pide al estudiante que escriba varias funciones para comparar el tipo de medio esperado con el tipo de medio codificado del archivo.
La historia facilita la definición de funciones:
| Tipo de archivo | Extensión común | Tipo de medio | «firma» binaria de los primeros bytes |
|---|---|---|---|
| ELF |
none or "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 |