Se o senhor já trabalhou em uma agência ou em uma pequena loja on-line, aposto que já codificou uma boa quantidade de galerias de fotos. Provavelmente, o senhor também fez upload de fotos para a mídia social, enviou fotos para amigos e familiares e assim por diante. As fotos parecem bastante inocentes, mas, como acontece com quase tudo na Web, há um lado ligeiramente sinistro nas imagens da Web: um problema de privacidade e até de segurança com os dados EXIF.


Os dados EXIF são metadados adicionados a um arquivo de imagem pelo dispositivo que tirou a foto e, acredite, há uma grande quantidade de dados que os acompanham. É claro que a maioria dos metadados é inocente, mas muitos dispositivos adicionam latitude e longitude de GPS aos metadados EXIF, bem como a data em que a foto foi tirada, proporcionando a uma pessoa experiente uma maneira de descobrir onde a foto foi tirada e quando. A ideia de que alguém possa saber onde sua família gosta de sair para jantar ou fazer qualquer outra atividade com base em uma foto é, no mínimo, perturbadora. Como desenvolvedores que podem manipular e publicar as fotos de seus clientes, temos a responsabilidade perante eles de garantir que os dados EXIF confidenciais sejam limpos antes de serem publicados para o mundo ver.


Vamos dar uma olhada em como o senhor pode recuperar e remover dados EXIF de fotos usando o exiftool.


Instalação do exiftool


O senhor pode instalar o exiftool usando um utilitário como o Homebrew:


$ brew install exiftool


O senhor também pode obter o utilitário ou contribuir para ele no site exiftool site.


Obter metadados EXIF


A ação padrão do exiftool é simplesmente retornar os dados EXIF de uma imagem:


$ exiftool my-image.jpg


O senhor verá uma listagem de metadados como:



File Size                       : 1723 kB
File Modification Date/Time     : 2017:01:10 15:22:50-05:00
File Access Date/Time           : 2017:01:10 15:22:49-05:00
File Inode Change Date/Time     : 2017:01:10 15:22:50-05:00
File Permissions                : rw-r--r--
File Type                       : JPEG
File Type Extension             : jpg
MIME Type                       : image/jpeg
Exif Byte Order                 : Big-endian (Motorola, MM)
Make                            : Apple
Camera Model Name               : iPhone 6
Orientation                     : Horizontal (normal)
X Resolution                    : 72
Y Resolution                    : 72

# .... and much more


É assustador a quantidade de informações que podem ser armazenadas em uma foto sem que a maioria da população tenha a menor ideia disso. A maioria das pessoas vê uma foto bonita, mas um vilão vê uma oportunidade de saber mais sobre o senhor do que gostaria que soubessem.


Remoção de metadados EXIF


Para proteger a si mesmo ou a seu cliente, o senhor pode usar exiftool para remover metadados EXIF específicos:


$ exiftool -gps:all= -xmp-exif:all= my-image.jpg


exiftool fará uma cópia do seu arquivo original e, em seguida, removerá os dados de GPS da imagem original, preservando assim a privacidade do senhor ou do cliente.


Para remover todos metadados EXIF, use o seguinte:


exiftool -all= my-image.jpg


A maioria das linguagens do lado do servidor apresenta uma biblioteca para ler, modificar e remover metadados EXIF de fotos, portanto, não há desculpa para o senhor não tirar proveito delas para proteger a si mesmo ou a seus clientes. Perceba que a maioria dos sites de mídia social também remove esses dados para proteger seus usuários (…enquanto os exploram de outras formas, mas isso não vem ao caso…). Os metadados EXIF não são inerentemente ruins, mas, se o senhor não proteger as fotos, podem se tornar um pesadelo de privacidade!