Scatta una foto con un iPhone e apri il JPEG in un editor esadecimale. Poche centinaia di byte dopo il marker iniziale FF D8, trovi questo:
FF E1 1C 24 45 78 69 66 00 00 4D 4D 00 2A 00 00 00 08
FF E1 è il marker del segmento APP1. I due byte successivi sono la lunghezza del segmento. Poi sei byte compongono Exif\0\0, e subito dietro si trova un'intestazione TIFF (4D 4D 00 2A significa big-endian). Il tuo JPEG trasporta al suo interno un secondo file, più piccolo, che spesso rivela di te più di quanto non faccia l'immagine stessa.
Cosa sono davvero i metadati EXIF
EXIF è l'acronimo di Exchangeable Image File Format. JEIDA (Japan Electronic Industry Development Association) ne pubblicò la versione 1.0 nel 1995. Oggi lo standard è mantenuto da JEITA e CIPA; EXIF 3.0 è arrivato nel 2023.
Strutturalmente, EXIF è un TIFF. Dopo l'intestazione Exif\0\0 c'è un marker di byte order, poi una catena di Image File Directory (IFD). Ogni voce IFD occupa dodici byte:
Bytes 0-1: ID del tag (es. 0x010F = Make)
Bytes 2-3: Tipo di dato (ASCII, rational, short, long)
Bytes 4-7: Numero di valori
Bytes 8-11: Valore inline, oppure offset verso il valore
Due sottodirectory sono rilevanti per la privacy. La SubIFD EXIF, a cui punta il tag 0x8769, contiene impostazioni della fotocamera, numeri di serie e timestamp. La GPS IFD (tag 0x8825) memorizza latitudine e longitudine come tre numeri razionali ciascuna: gradi, minuti, secondi.
Di solito in IFD1 è memorizzata anche una miniatura, un piccolo JPEG incorporato nei metadati. Tienila a mente, ci torneremo più avanti.
Quali contenitori trasportano EXIF:
| Formato | Posizione EXIF | Note |
|---|---|---|
| JPEG | Segmento APP1 | Dove è nato EXIF |
| HEIC | Elemento Exif nella meta box | Predefinito su iPhone da iOS 11 |
| WebP | Chunk EXIF dentro VP8X | Opzionale, spesso assente |
| PNG | Chunk eXIf | Aggiunto alle specifiche nel 2017 |
| TIFF | Il file stesso è TIFF | Il formato da cui deriva EXIF |
| BMP/ICO | Non supportato | Nessuna struttura di metadati |
Perché le fotocamere hanno iniziato a scriverli
Il problema di metà anni Novanta era banale e pratico. Le fotocamere digitali producevano file senza alcun contesto. Chi fotografava a pellicola aveva negativi, buste del laboratorio con le date di sviluppo e appunti. Chi scattava in digitale aveva una directory piena di file DSC_0042.JPG e nient'altro.
EXIF rispondeva a tre esigenze concrete:
- Registro dell'esposizione. Apertura, tempo di otturazione, ISO e lunghezza focale, così un fotografo poteva capire perché uno scatto funzionava e ripeterlo.
- Ordini di stampa. DPOF (Digital Print Order Format) permetteva di contrassegnare le foto sulla fotocamera e farle stampare più tardi a un chiosco, usando campi EXIF come la rotazione.
- Orientamento e anteprima. Il tag Orientation mantiene dritti gli scatti in verticale, e la miniatura incorporata rendeva veloce la navigazione sul display LCD della fotocamera.
Nota il presupposto alla base di tutto questo: le foto restano con il loro proprietario. EXIF fu progettato per un mondo in cui una foto si spostava dalla scheda CF al disco fisso al chiosco di stampa. Nessuno in JEIDA nel 1995 immaginava un mondo in cui carichi una decina di foto al giorno su server pubblici.
Cosa c'è davvero dentro
Apri una foto del telefono in un lettore di metadati e l'elenco dei tag si fa lungo. I campi che contano per la privacy:
| Tag | Valore di esempio | Cosa rivela |
|---|---|---|
| Make / Model | Apple, iPhone 15 Pro | Il tuo hardware |
| BodySerialNumber / LensSerialNumber | Univoco per dispositivo | Un'impronta digitale della fotocamera |
| DateTimeOriginal + OffsetTime | 2026:06:30 18:42:11 +09:00 | Quando, al secondo |
| GPSLatitude / GPSLongitude | 37°46'29" N, 122°25'10" W | Dove, entro pochi metri |
| GPSAltitude | 14,2 m | Quale piano, all'incirca |
| Software | Instagram, Photoshop 26.1 | Cosa ha toccato il file |
| Artist / Copyright | Testo libero | A volte un nome vero |
| Miniatura IFD1 | Un secondo JPEG | Una copia dell'immagine non modificata |
Output di exiftool su una foto reale scattata con iPhone, ridotto per brevità:
$ exiftool IMG_4021.HEIC
Make : Apple
Camera Model Name : iPhone 15 Pro
Serial Number : F2LX8A1BCD
Date/Time Original : 2026:06:30 18:42:11
GPS Latitude : 37 deg 46' 29.28" N
GPS Longitude : 122 deg 25' 10.41" W
GPS Altitude : 14.2 m Above Sea Level
Trenta secondi di lettura e uno sconosciuto sa con cosa scatti, quando eri lì e dov'è quel «lì», con un margine di pochi metri.
Come leggerli sulla tua macchina
Windows
Fai clic con il tasto destro sul file, apri Proprietà e vai alla scheda Dettagli. Marca, modello, date e coordinate GPS sono tutti elencati lì. In fondo alla stessa scheda si trova il collegamento «Rimuovi proprietà e informazioni personali», che apre una finestra di dialogo con le opzioni di rimozione di base.
Per l'accesso raw in PowerShell:
Add-Type -AssemblyName System.Drawing
$img = [System.Drawing.Image]::FromFile("C:\photos\IMG_4021.jpg")
$img.PropertyItems | ForEach-Object {
$text = [System.Text.Encoding]::ASCII.GetString($_.Value).Trim([char]0)
"Tag 0x{0:X4} (len {1}): {2}" -f $_.Id, $_.Len, $text
}
$img.Dispose()
I campi numerici escono come byte raw, ma i tag ASCII come Make e Software si leggono senza problemi.
macOS
Apri l'immagine in Anteprima, poi Strumenti, Mostra Inspector, e controlla le schede EXIF e GPS. La scheda GPS mostra persino un pin sulla mappa.
Dal terminale, mdls elenca tutto ciò che Spotlight ha indicizzato:
mdls IMG_4021.jpg | grep -iE "gps|latitude|longitude|model"
Oppure installa ExifTool con brew install exiftool per l'elenco completo dei tag.
Linux
ExifTool è lo standard:
exiftool IMG_4021.jpg
Alternative più leggere: exiv2 IMG_4021.jpg, oppure identify -verbose IMG_4021.jpg | grep -i exif di ImageMagick.
Da un browser, con venti righe di TypeScript
Per trovare da solo il segmento APP1 serve un ciclo sulla catena dei marker JPEG:
async function findExifSegment(file: File): Promise<number> {
const bytes = new Uint8Array(await file.slice(0, 128 * 1024).arrayBuffer())
if (bytes[0] !== 0xff || bytes[1] !== 0xd8) return -1 // not a JPEG
let offset = 2
while (offset < bytes.length - 12) {
if (bytes[offset] !== 0xff) break
const marker = bytes[offset + 1]
const length = (bytes[offset + 2] << 8) | bytes[offset + 3]
if (
marker === 0xe1 &&
String.fromCharCode(...bytes.slice(offset + 4, offset + 10)) ===
"Exif\0\0"
) {
return offset
}
offset += 2 + length
}
return -1
}
Come EXIF espone la tua privacy
Le coordinate GPS rivelano la tua posizione
I telefoni registrano il GPS ogni volta che l'app fotocamera ha il permesso di localizzazione, un'impostazione predefinita che quasi tutti accettano una volta e poi dimenticano. Pubblica la foto del tuo balcone, della tua scrivania o del progetto scolastico di tuo figlio su un forum o in un annuncio su un marketplace, e avrai pubblicato il tuo indirizzo con una precisione di pochi metri.
Il caso più noto è quello di John McAfee. Nel dicembre 2012 era in fuga e si nascondeva in Guatemala. Vice pubblicò una sua foto scattata con un iPhone 4S, e i dati EXIF contenevano le coordinate GPS complete. Chiunque poteva leggere esattamente in che punto del Guatemala si trovasse. Pochi giorni dopo era nelle mani delle autorità guatemalteche.
I numeri di serie collegano i tuoi account
BodySerialNumber e LensSerialNumber sono univoci per dispositivo. Due account anonimi che pubblicano foto scattate con la stessa fotocamera possono essere collegati con quasi certezza. Alcuni ricercatori hanno passato al setaccio siti di foto per raggruppare le immagini in base al numero di serie della fotocamera proprio per questo motivo. Online puoi tenere separate le tue identità. La tua fotocamera non fa questa distinzione.
I timestamp delineano la tua routine
DateTimeOriginal, più l'offset del fuso orario. Da solo un timestamp dice poco, ma un anno di caricamenti mostra quando ti svegli, quando esci di casa e quando viaggi.
La miniatura ti tradisce
La miniatura IFD1 è un JPEG separato dentro i metadati. Ritaglia un volto o un documento dall'immagine principale, e molti editor lasciano la miniatura originale intatta. Chi la estrae ottiene la foto non ritagliata. Nel 2003 una conduttrice di TechTV pubblicò alcune sue foto ritagliate, e i lettori recuperarono le versioni complete dalle miniature EXIF. La lezione è rimasta attuale perché gli strumenti continuano a ripetere lo stesso errore.
Dove EXIF sopravvive al caricamento
Le grandi piattaforme social (Facebook, Instagram, X) eliminano gli EXIF dalle immagini al caricamento. Quasi tutto il resto no: allegati email, caricamenti su forum, annunci sui marketplace, link di condivisione da servizi cloud, AirDrop e qualsiasi app di messaggistica impostata per inviare in qualità originale. Se il file lascia il tuo dispositivo invariato, i metadati viaggiano con lui.
Cosa succede quando converti i formati
Convertire una foto non significa automaticamente ripulirla. I convertitori sono di due tipi:
- Copiatori di metadati. Strumenti che ricodificano ma portano deliberatamente i tag con sé: ExifTool, ffmpeg e la maggior parte dei convertitori con interfaccia grafica con l'opzione «mantieni metadati» predefinita. Passa un JPEG a WebP con un copiatore e le tue coordinate GPS finiscono intatte nel chunk
EXIFdel WebP. - Ricodificatori di pixel. Strumenti che decodificano in pixel raw e codificano un file completamente nuovo a partire da quei pixel. L'output contiene solo dati immagine, perché i metadati non hanno mai fatto parte dei pixel.
Per ripulire a mano basta un comando in entrambi i casi:
# ExifTool: wipe every tag, keep the image
exiftool -all= -overwrite_original photo.jpg
# ImageMagick 7: re-encode without metadata
magick photo.jpg -strip photo-clean.jpg
Un dettaglio qui richiede attenzione: l'orientamento. Il tag EXIF Orientation (0x0112) dice ai visualizzatori di ruotare l'immagine, spesso di 90 gradi. Elimina i tag senza fissare quella rotazione nei pixel, e ogni foto in verticale uscirà ruotata di lato. L'ordine corretto è decodificare con l'orientamento applicato e poi eliminare i metadati. Uno strumento che ripulisce senza ruotare è peggio di uno che non ripulisce affatto.
Cosa fanno i nostri convertitori con EXIF
Ogni convertitore di questo sito è un ricodificatore di pixel. La pipeline è identica per tutti:
- Decodifica del file sorgente in pixel raw nel tuo browser (una build WebAssembly di libheif per HEIC, il decodificatore nativo del browser per il resto).
- Disegno dei pixel su un canvas, con l'orientamento EXIF già applicato durante la decodifica.
- Codifica del canvas nel formato di destinazione.
Il file di output contiene pixel compressi e nient'altro. Nessun segmento APP1, nessun chunk EXIF o eXIf, nessuna GPS IFD, nessun numero di serie, nessuna miniatura incorporata. Non esiste un percorso nel codice che copi i metadati, perché non ci sono metadati in memoria da copiare. E dato che tutto avviene lato client, il file non esce mai dal tuo dispositivo, quindi nessun server vede nemmeno l'originale.
Scegli il tuo formato sorgente:
- Foto iPhone, quelle che contengono più dati EXIF: HEIC a JPG, HEIC a PNG, HEIC a WebP
- JPEG: JPG a PNG, JPG a WebP, JPG a ICO
- WebP: WebP a JPG, WebP a PNG, WebP a ICO
- PNG: PNG a JPG, PNG a WebP, PNG a ICO
Trascina un file dentro, scarica la copia convertita e condividi quella al posto dell'originale. I pixel sono identici; i metadati sono spariti.
La versione breve
- Prima di condividere una foto dove gli EXIF sopravvivono (email, forum, marketplace, link diretti), controllala. Proprietà su Windows, Inspector su macOS,
exiftoolsu Linux. - Se il file contiene dati GPS e preferiresti di no, convertilo. Ogni strumento collegato sopra produce solo pixel.
- Se pubblichi con identità separate, i numeri di serie della fotocamera possono collegarle. La rimozione dei metadati risolve anche questo.
- Conserva intatti i tuoi originali. EXIF è davvero utile nel tuo archivio personale. Le copie che pubblichi sono quelle che devono essere pulite.



