O presente texto, visa ilustrar de forma simples e objetiva o emprego da “Função de Hash” inserido no Direito Digital, e como esta prática deve ser adotada em todas as instâncias que envolvam a formalização de prova digital.


Se tratando de todo e qualquer arquivo digital, seja arquivo de texto, planilha, arquivo de multimídia, tais como áudios, vídeos e arquivos de imagem, este, possui um identificador único, com base no seu algoritmo Hash, visto que este é considerado uma impressão digital eletrônica do arquivo.


O Algoritmo de Hash, trata-se de uma sequência de caracteres, onde, busca preservar um arquivo ou informação unicamente. Resumidamente, após a coleta do algoritmo de Hash sobre determinado arquivo digital, caso seja editado o seu conteúdo, o resultado de Hash também será alterado.


No que compete o uso de arquivos digitais em processos eletrônicos, torna-se de fundamental importância que sejam extraídos e mencionados os seus algoritmos de Hash junto a juntada de documentos eletrônicos, visto que esta boa prática assegura que, caso o arquivo seja questionado ou principalmente periciado, já estará garantida a preservação do arquivo original.

Forense Digital

A Ciência Forense Digital abrange todas as questões relacionadas aos crimes praticados com a utilização dos meios computacionais, tais como a Internet ou fora dela. Por meio de metodologias que visam coletar evidências, analisar e documentar casos. Esta ciência, relativamente nova aqui no Brasil segue as principais metodologias em conformidade a norma ABNT NBR ISO/IEC 27037:2013. Esta Norma estabelece diretrizes para atividades específicas no tratamento de evidências digitais na identificação, coleta, aquisição e preservação de potenciais evidências.


Visando assegurar a integridade da evidência, a norma recomenda o uso da função de Hash, uma vez que a Hash é considerado uma impressão digital eletrônica do dado coletado, usadas em Forense Digital para comprovar se determinada cópia de um arquivo ou se determinada versão de um arquivo bate com a versão original. Serve para averiguar a integridade de uma evidência. E se, associado ao trabalho de um perito, garante que tudo está exatamente como foi averiguado.


Portanto, é imprescindível que o indivíduo responsável pela coleta e posterior manipulação da evidência digital esteja familiarizado e entenda a vital importância na extração do código Hash e que sejam anexados estes dados a cadeia de custódia, para caso necessário estes dados possam ser posteriormente comparados.

Características da Função Hash

Conforme descrito na Norma ABNT, a função Hash é um método de criptografia unidirecional, uma sequência de bits geradas por um algoritmo, em geral representada em base hexadecimal, que permite a conversão em letras e números (0 a 9 e A a F). O conceito teórico diz que “Hash é a transformação de uma grande quantidade de dados em uma pequena quantidade de informações”, podendo ser MD5, SHA1, SHA256 entre outras. O código Hash é gerado através de um algoritmo que vai analisar byte a byte de determinado dado para gerar de forma única, um determinado código que só aquele arquivo terá. Se neste mesmo arquivo um único bit for alterado a Hash gerada será diferente. Muito usado no controle de integridade de arquivos e mídias de armazenamento, haja vista a baixíssima probabilidade de dois arquivos distintos submetidos a mesma função produzirem a mesma Hash. Essa sequência busca identificar um arquivo ou informação unicamente. Por exemplo, uma mensagem de correio eletrônico, uma senha, uma chave criptográfica ou mesmo um arquivo. Além disso, funções usadas em criptografia garantem que não é possível a partir de um valor de Hash retornar à informação original


É um método para transformar dados de tal forma que o resultado seja “quase” exclusivo. Estou levando em consideração ao fato de mesmo que improvável, existe sim a possibilidade em obtermos o mesmo “código” Hash para dois arquivos diferentes. Matematicamente falando isso é possível. Como por exemplo a Hash MD5 só tem 32 caracteres que são gerados em Hexadecimal (sistema numérico com 16 números possibilidades por caractere.)
Logo, para saber quantas possibilidades podem ser geradas temos a conta:


16^32 = 3,4028236692093846346337460743177e+38.


Como comentado anteriormente, mesmo que em uma possibilidade remota as Hash podem se repetir em algum momento, se você parar para pensar que existem milhares de arquivos no seu PC, e que existem milhares de PCs, logo se dará conta de que as Hash inevitavelmente em algum momento irão repetir.

Como dois arquivos diferentes podem ter a mesma Hash?
-Pela limitação de caracteres do código Hash.
-E mesmo que os bytes sejam diferentes pela limitação do código o algoritmo dele fará com que a repetição ocorra mesmo que demore.

Portanto, dentro da Ciência da Forense Digital, uma boa prática seria adotarmos a cultura para a extração do código Hash em determinada evidência em pelo menos 2 tipos de Hash diferentes. Os geralmente utilizados são MD5 e o SHA1.


Conforme ilustrado na Figura 1, a extração do Hash para o arquivo “GravaçãodeÁudio.wav”, utilizando a ferramenta online através do endereço https://onlinemd5.com/

Extração Hash do arquivo “GravaçãodeÁudio.wav” para o algoritmo de Hash MD5:

Extração Hash do arquivo "GravaçãodeÁudio.wav" para o algoritmo de Hash MD5:

Extração Hash do arquivo “GravaçãodeÁudio.wav” para o algoritmo de Hash SHA-1:

Extração Hash do arquivo "GravaçãodeÁudio.wav" para o algoritmo de Hash SHA-1

Repare que os códigos são diferentes, pois são dois tipos de códigos gerados através de algoritmos distintos.
Arquivo: “GravaçãodeÁudio.wav”
MD5 = 27bfb0479703fe2c75109b938437e295
SHA1 = ea42850e2d80c43e5265302cd500a2c8555ff6eb

Extração do Hash na prática

Para executarmos com a extração do Hash para um arquivo ou texto, podemos proceder de duas maneiras: Através de software instalado no computador, neste caso eu utilizo o HashCalc, por ser um utilitário gratuito que permite calcular os checksum para arquivos, strings (frases ou palavras) e hexadecimais, no qual o software oferece os 13 mais populares algoritmos de calculo Hash . A vantagem em executar esta tarefa através do software instalado é quanto a conversão de arquivos, uma vez que este software não possui a limitação no tamanho do arquivo.

Download: http://www.slavasoft.com/zip/hashcalc.zip

Algoritmo de Hash - HashCalc

Outra alternativa para a extração do código Hash é utilizarmos alguma ferramenta online onde na minha opinião, se destacam dois sites:


OnlineMD5 – Ferramenta online que nos permite a extração do algoritmo de Hash (MD5, SHA1 e SHA-256) para textos e arquivos (possui limitação de tamanho no arquivo em 4GB).
Acesso em 01 Mar 22 – http://onlinemd5.com/

VirusTotal – Ferramenta muito interessante, não apenas para a extração do código Hash de arquivos (possui limitação de tamanho no arquivo em 256MB), mas também nos permite a possibilidade em analisarmos os metadados do arquivo.

Outra funcionalidade bastante interessante para esta ferramenta é a possibilidade de automaticamente analisar as hashes do arquivo, possibilitando a comparação de conteúdo malicioso detectável pelo banco de dados dos principais antivírus e scanners de websites, ferramentas de análise de arquivos e URLs e contribuições de usuários, como pode ser visto na Figura 5.

Acesso em 01 Mar 22 – https://www.virustotal.com

VírusTotal

FONTES:
OliveiraPerito – Perícia Computacional. Disponível em https://oliveiraperito.com.br/pericia-computacional/. Acesso em 01 Mar 22.


ABNT NBR ISO/IEC 27037:2013 – Tecnologia da informação — Técnicas de segurança — Diretrizes para identificação, coleta, aquisição e preservação de evidência digital.


Wikipédia. Função Hash – Disponível em https://pt.wikipedia.org/wiki/Função_hash. Acesso em 01 Mar 22.


Blog Segurança de Informação. Algoritmos de Hash criptográficos. Disponível em https://segurancainformacao.wordpress.com/2008/12/16/algoritmos-de-hash-criptograficos/. Acesso em 01 Mar 22.


0 comentários

Deixe um comentário

Avatar placeholder

O seu endereço de email não será publicado. Campos obrigatórios marcados com *