Hva som faktisk er inni et bilde
Åpne et hvilket som helst bilde rett fra en telefon, og selve bildet er bare en del av filen. Pakket rundt det er en blokk med metadata som kameraet skrev i samme øyeblikk: enhetens merke og modell, objektivet, eksponeringsinnstillingene, nøyaktig hvilket sekund bildet ble tatt, operativsystemversjonen, og — når stedstjenester er på — bredde- og lengdegrad for hvor du sto, vanligvis nøyaktig ned til noen få meter.
Ingenting av dette er synlig i bildet. Alt reiser sammen med filen. Send bildet som et e-postvedlegg, slipp det i en delt mappe, legg ut en vare for salg med det, og hvert eneste av disse feltene følger med.
Verktøyet ovenfor leser ut den blokken og viser den til deg før det fjerner noe som helst, fordi tallene er argumentet. “Dette bildet inneholder EXIF-metadata” er abstrakt. Et par koordinater som peker til inngangsdøren din er ikke det.
Fjern bytene, ikke kod på nytt
Det er to måter å fjerne metadata fra et bilde på, og bare én av dem er riktig.
Den enkle måten er å tegne bildet på et HTML-lerret og lagre det på nytt. Metadataene forsvinner fordi et lerret aldri bar noen. Det komprimerer også bildet på nytt — en andre runde med tapsgivende JPEG-komprimering på toppen av kameraets — og fjerner den innebygde fargeprofilen, så den “rensede” filen er målbart dårligere enn originalen og fargene har forskjøvet seg. De fleste gratis metadatafjernere fungerer på denne måten, og det er grunnen til at filen du får tilbake ofte har en annen størrelse og er et litt annerledes bilde.
Dette verktøyet gjør den andre tingen. En JPEG er en sekvens av markørsegmenter; en PNG er en sekvens av biter (“chunks”); en WebP er en RIFF-beholder. Metadata bor i spesifikke, identifiserbare segmenter i hver av dem — APPn-blokker i JPEG, eXIf-, tEXt-, iTXt-, zTXt- og tIME-biter i PNG, EXIF- og XMP-biter i WebP. Å fjerne dem handler om å gå gjennom filens egen struktur, hoppe over disse blokkene, og kopiere alt annet over uendret.
Det komprimerte bildet blir aldri dekodet. Det betyr at bildedataene i filen du laster ned er bit-for-bit bildedataene i filen du leverte — ikke “visuelt identiske”, ikke “høy kvalitet”, identiske. Den eneste forskjellen mellom de to filene er metadataene som ble tatt ut.
Hva vi ikke fjerner, og hvorfor
To ting blir bevisst beholdt, og begge vises til deg med en avkrysningsboks i tilfelle du er uenig.
Fargeprofilen. En ICC-profil beskriver hvilket fargerom pikslene er kodet i. Moderne telefoner fotograferer i et bredt spekter, og et bilde med bredt spekter uten profilen sin tolkes som vanlig sRGB og gjengis feil — vanligvis utvasket, noen ganger overdrevent fargesprakende. Profilen beskriver bildet, ikke fotografen, så den beholdes som standard.
Rotasjonsflagget, når bildet trenger det. Telefoner roterer ikke pikslene når du snur kameraet; de lagrer bildet slik sensoren så det og skriver ett enkelt EXIF-tall som sier hvilken vei det skal være. Fjern det tallet og den rene kopien kommer ut sidelengs i enhver app som respekterer det. Når et bilde er avhengig av det, gjenoppbygger dette verktøyet en minimal blokk som inneholder den ene verdien og ingenting annet — ikke noe kamera, ikke noe tidsstempel, ingen plassering.
Hvor dette etterlater dine andre bilder
Å rense en fil før du sender den, løser delingshalvdelen av problemet. Det gjør ingenting for bildene som fortsatt ligger i kamerarullen din, som beholder hvert felt dette verktøyet nettopp fjernet og er lesbare av alt med tilgang til enheten.
Det er den halvdelen Vaultine eksisterer for: et kryptert hvelv hvor filer er låst med AES-256-GCM på selve enheten, åpnes i et innebygd visningsprogram i stedet for å dekrypteres ut til disken, og låses opp med et mønster eller en PIN-kode i stedet for en konto. Det er en annen jobb enn denne siden — Vaultine lagrer filer, det redigerer ikke metadataene deres — men de to halvdelene av det samme instinktet. Bilder du deler lekker hvor du var. Bilder du beholder bør være låst.



