Hvad der faktisk ligger inde i et foto
Åbn et hvilket som helst foto direkte fra en telefon, og selve billedet er kun en del af filen. Rundt om det ligger en blok af metadata, som kameraet skrev i samme øjeblik: enhedens mærke og model, objektivet, eksponeringsindstillingerne, det nøjagtige sekund udløseren blev trykket ned, versionen af operativsystemet og — når lokalitetstjenester er slået til — bredde- og længdegraden for, hvor du stod, som regel nøjagtig ned til få meter.
Intet af det er synligt i billedet. Det hele følger med filen. Send fotoet som en vedhæftet fil i en e-mail, læg det i en delt mappe, sæt en vare til salg med det, og hvert eneste af disse felter følger med.
Værktøjet ovenfor udlæser den blok og viser dig den, før det fjerner noget, fordi tallene i sig selv er argumentet. »Dette foto indeholder EXIF-metadata« er abstrakt. Et par koordinater, der peger direkte på din hoveddør, er ikke.
Fjern bytene, omkod ikke billedet
Der er to måder at fjerne metadata fra et billede på, og kun den ene af dem er rigtig.
Den nemme måde er at tegne billedet på et HTML-canvas og gemme det igen. Metadataene forsvinder, fordi et canvas aldrig har haft nogen. Men det genkomprimerer også billedet — en ekstra runde tabsgivende JPEG-komprimering oven i kameraets — og smider den indlejrede farveprofil væk, så den »rensede« fil er målbart dårligere end originalen, og dens farver har rykket sig. De fleste gratis metadatafjernere fungerer på den måde, og det er grunden til, at den fil, du får tilbage, ofte har en anden størrelse og er et lidt anderledes billede.
Dette værktøj gør det modsatte. En JPEG er en sekvens af markørsegmenter; en PNG er en sekvens af blokke (chunks); en WebP er en RIFF-container. Metadata bor i specifikke, identificerbare segmenter i hver af dem — APPn-blokke i JPEG, eXIf-, tEXt-, iTXt-, zTXt- og tIME-blokke i PNG, EXIF- og XMP-blokke i WebP. At fjerne dem handler blot om at gennemgå filens egen struktur, springe de blokke over og kopiere alt andet uændret over.
Det komprimerede billede afkodes aldrig. Det betyder, at billeddataene i den fil, du downloader, bit for bit er de samme billeddata som i den fil, du valgte — ikke »visuelt identiske«, ikke »høj kvalitet«, men identiske. Den eneste forskel mellem de to filer er de metadata, der blev taget ud.
Hvad vi ikke fjerner, og hvorfor
To ting beholdes med vilje, og begge vises med et afkrydsningsfelt, hvis du er uenig.
Farveprofilen. En ICC-profil beskriver, hvilket farverum pixlerne er kodet i. Moderne telefoner tager billeder i et bredt farverum (wide gamut), og et sådant foto uden sin profil fortolkes som almindelig sRGB og vises forkert — som regel blegt, nogle gange skrigende. Profilen beskriver billedet, ikke fotografen, så den beholdes som standard.
Rotationsflaget, når fotoet har brug for det. Telefoner drejer ikke pixlerne, når du vender kameraet; de gemmer fotoet, som sensoren så det, og skriver et enkelt EXIF-tal, der fortæller, hvilken vej der er opad. Fjerner man det tal, vises den rene kopi på siden i enhver app, der retter sig efter det. Når et foto er afhængigt af det, genopbygger dette værktøj en minimal blok, der kun indeholder den ene værdi og intet andet — intet kamera, intet tidsstempel, ingen placering.
Hvor det efterlader dine andre fotos
At rense en fil, før du sender den, løser delingsdelen af problemet. Det gør intet for de fotos, der stadig ligger i din kamerarulle, som beholder hvert eneste felt, dette værktøj lige har fjernet, og som kan læses af alt, der har adgang til enheden.
Det er den halvdel, Vaultine er skabt til: et krypteret hvælv, hvor filer låses med AES-256-GCM på selve enheden, åbnes i en indbygget fremviser i stedet for at blive dekrypteret ud på disken og låses op med et mønster eller en PIN i stedet for en konto. Det er en anden opgave end denne side — Vaultine opbevarer filer, det redigerer ikke deres metadata — men de er to sider af samme sag. Fotos, du deler, afslører, hvor du var. Fotos, du beholder, bør være låst inde.



