Autenticar uma imagem digital não é uma tarefa fácil e depende de quão longe você quer ir com ela. Primeiro de tudo, é necessário entender em que nível você deseja verificar a originalidade de uma imagem.
Você quer que seja a imagem exata criada pela câmera sem qualquer alteração ( camera-original )? Nesse caso, se você fez o upload para o Facebook, não será mais um original, já que os servidores do Facebook provavelmente o recompactarão, redimensionarão e adicionarão algumas tags.
Existem vários métodos para verificar se a imagem é uma câmera original ou não e alguns são realmente muito simples, por exemplo:
- verifique se o formato e a resolução são suportados pela câmera
- verifique se os metadados EXIF estão presentes e respeite as configurações fornecidas pela câmera
- verifique se os metadados EXIF não contêm nenhuma tag de software suspeito que contenha palavras como "Photoshop"
- verifique se as configurações de compactação JPEG (tabelas de quantização) são compatíveis com as das imagens geradas pela câmera suspeita
Verificar se as imagens são originais da câmera é bastante rápido, mas devemos lembrar que um invasor habilidoso com o software adequado será capaz de enganar sua análise. Pode ser muito fácil modificar os dados EXIF de uma imagem para parecer original, mas pode ser menos óbvio codificar uma imagem adulterada com as configurações da câmera sem alterar a estrutura original do arquivo da câmera.
O outro problema é que você pode não se importar que a imagem não seja original da câmera (por exemplo, porque ela foi redimensionada), mas você só está interessado no fato de seu conteúdo não ter sido falsificado, por exemplo remover um objeto ou adicionar uma pessoa.
Nesse caso, você não analisará apenas o formato de arquivo e os metadados, mas os pixels reais para executar diferentes tipos de análise que levam em consideração as estatísticas de imagem e outras propriedades matemáticas da imagem.
A análise pode ser feita em nível global ou em nível local.
Em geral, uma análise global informará se a imagem foi modificada, mas não lhe dirá onde. Por outro lado, uma análise local pode ser capaz de dizer onde exatamente a imagem foi modificada.
Os resultados mais confiáveis serão obtidos comparando a imagem em análise com outras imagens provenientes do mesmo dispositivo que deveria ter tirado a foto. Técnicas de análise baseadas em pixels são muito mais difíceis de enganar do que aquelas baseadas em formato, mas não é impossível.
Em um cenário forense, não poderemos dizer em termos absolutos que uma imagem é um original, mas apenas que não conseguimos encontrar nenhuma evidência de que a imagem não é original.
Não há muitas ferramentas disponíveis para autenticação de imagens: além das citadas pela Martheen, você também pode dar uma olhada no Amped Authenticate da minha empresa ( link ).