Português (Brasil)

Imagens e fotos · Ferramenta de privacidade de metadados de imagens

EXIF, TIFF e IFDs: a estrutura da década de 1990 ainda dentro de cada foto

· Fundo

exif formatos de arquivo privacidade de imagem

Um segmento JPEG APP1 abrindo em um cabeçalho TIFF e diretórios de arquivos de imagem vinculados
Ilustração vetorial original ToolAcre

EXIF foi publicado em 1995 e pegou emprestado seu modelo de dados de TIFF, e é por isso que um bloco de metadados dentro de um JPEG é na verdade um pequeno arquivo TIFF com diretórios, tags e deslocamentos. Conhecer a estrutura explica o que um removedor pode remover de forma limpa e por quê.

Um arquivo TIFF escondido dentro de seu JPEG — o quebra-cabeça de por que EXIF não se parece em nada com o resto do formato JPEG

Um JPEG pode conter uma estrutura de dados em formato de TIFF sem ser uma imagem TIFF. Sua carga útil Exif APP1 começa com um identificador e, em seguida, um cabeçalho TIFF cujos deslocamentos e diretórios organizam valores de câmera, hora e GPS. O analisador compartilhado também consome blocos TIFF encontrados em pedaços PNG eXIf e WebP EXIF, e é por isso que um leitor atende três contêineres.

O repositório não estabelece a data de origem de EXIF

A apostila forneceu uma história de origem e ano, mas as fontes do repositório usadas aqui não estabelecem histórico de padrões, organizações ou datas de publicação. Em vez de repetir uma cronologia não citada, esta seção ancora o fato útil no código: cargas úteis EXIF usam ordem de bytes TIFF, mágica e mecânica de diretório que um analisador de navegador pode inspecionar sem decodificar dados de imagem.

Modelo de diretório de TIFF - o cabeçalho, marcador de ordem de bytes, IFD0 e entradas de 12 bytes com tag, tipo, contagem e valor ou deslocamento

O cabeçalho TIFF indica se os valores multibyte são little- ou big-endian, carrega um valor mágico e aponta para IFD0. Cada diretório começa com uma contagem e armazena entradas de tamanho fixo contendo tag, tipo, contagem de valores e dados embutidos ou um deslocamento. Esse arranjo permite que valores pequenos fiquem na entrada, enquanto strings mais longas e racionais ficam em outras partes do bloco.

Os diretórios que este analisador realmente segue

Esta implementação segue IFD0 e depois os ponteiros Exif e GPS. Ele ignora deliberadamente o ponteiro de interoperabilidade como um valor voltado para o usuário e não persegue IFD1 miniaturas recursivamente. Chamar que o modelo de diretório EXIF completo seria falso; é o subconjunto limitado necessário para a localização legível, identidade, carimbo de data/hora, software e campos técnicos do produto.

Numeração de tags e tipos de dados — por que Make é 0x010F, por que os racionais são pares de números inteiros e por que as strings terminam em um byte nulo

Tags são identificadores numéricos interpretados no contexto de seu diretório, enquanto os tipos de campo determinam a largura e a decodificação dos bytes. ASCII, valores inteiros e racionais recebem tratamento diferente. Tags desconhecidas são rotuladas por números hexadecimais em vez de adivinhadas, e qualquer tag desconhecida dentro do diretório GPS permanece classificada como localização porque seu diretório fornece esse contexto.

Limites de implementação que importam hoje

Os limites operacionais são mais importantes aqui do que o cronograma da versão. Um diretório é limitado a entradas 512, valores em elementos 64 e deslocamentos fora do intervalo são ignorados. Os internos do MakerNote e IFD1 não são decodificados. Esses limites evitam que um bloco malformado ou hostil transforme um visualizador de metadados em um analisador ilimitado, ao mesmo tempo que permite que todo o seu bloco contêiner seja removido.

O que isso não cobre – a própria compactação JPEG e os formatos privados do MakerNote

O leitor JPEG analisa apenas APP1 Exif para exibição, não conteúdos XMP ou IPTC, e imagens TIFF, DNG e RAW não suportadas são rejeitadas apesar do compartilhamento de estruturas relacionadas. Um perfil de cores é mantido deliberadamente durante a limpeza. A ferramenta, portanto, demonstra um uso contido do diretório TIFF sem pretender ser um TIFF geral ou mecanismo de metadados forenses.

Conclusão: EXIF é independente por design - a ferramenta de privacidade de metadados de imagem pode mostrar os diretórios e remover todo o bloco sem tocar na imagem

EXIF é independente o suficiente para inspeção e remoção de bloco inteiro: encontre o bloco contêiner, analise os diretórios limitados que você suporta ou elimine o bloco sem analisar cada byte privado. Abra uma fotografia, compare os campos IFD0, Exif e GPS na tabela e mantenha a distinção entre cobertura legível e cobertura de remoção visível em todo o fluxo de trabalho.