Julgue os itens a seguir, a respeito de criptografia. O algo...

Próximas questões
Com base no mesmo assunto
Q351971 Segurança da Informação
Julgue os itens a seguir, a respeito de criptografia.

O algoritmo de criptografia MD5 (Message-Digest Algorithm 5) é um método que transforma uma palavra em um código criptografado único, ou seja, não é possível que duas strings diferentes produzam o mesmo hash.
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

A alternativa correta é: E - errado

Para resolver a questão de forma adequada e entender por que a alternativa correta é "Errado", é essencial ter um bom conhecimento sobre algoritmos de hash, especificamente o MD5 (Message-Digest Algorithm 5).

O MD5 é um algoritmo de hash que produz um resumo de mensagem (ou hash) de 128 bits (16 bytes) a partir de uma entrada de qualquer comprimento. Esse resumo é frequentemente representado por um número hexadecimal de 32 caracteres.

O enunciado da questão faz a afirmação de que o MD5 transforma uma palavra em um código criptografado único, sugerindo que não é possível que duas diferentes strings gerem o mesmo hash. Essa afirmação está incorreta por causa do conceito de colisões em algoritmos de hash.

Colisão ocorre quando dois diferentes conjuntos de dados produzem o mesmo valor de hash. No caso do MD5, apesar de ser um algoritmo bem projetado para gerar resumos de mensagem, ele não é resistente a colisões. Isso significa que, na prática, é possível encontrar duas strings diferentes que geram o mesmo hash MD5.

Justificativa da alternativa correta:

A alternativa é errada porque o MD5 não garante que duas diferentes strings não possam produzir o mesmo hash. Na verdade, várias vulnerabilidades foram descobertas ao longo dos anos que demonstram que colisões podem ser encontradas eficientemente, o que torna o MD5 inadequado para muitas aplicações de segurança.

Considerando esses aspectos, o entendimento correto seria que o MD5 pode gerar o mesmo hash para entradas diferentes, violando a unicidade que a questão sugere. Portanto, a afirmação no enunciado está incorreta.

Espero que esta explicação tenha sido clara e útil para o seu entendimento sobre o tema. Caso haja mais dúvidas ou necessidade de mais detalhes, estou à disposição!

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Quando duas ou mais string produzem o mesmo hash, temos a ocorrência das chamadas COLISÕES.

"a sequência do hash é limitada, muitas vezes não passando de 512 bits, existem colisões (sequências iguais para dados diferentes). Quanto maior for a dificuldade de se criar colisões intencionais, melhor é o algoritmo."

Só completando a Janine com um trecho do livro do Tanenbaum:

"(...) os pontos fracos no MD5 têm levado à capacidade de encontrar colisões, ou então diferentes mensagens  com o mesmo hash (..)".

a teoria é essa, mas creio que a questão levou em consideração que o md5 foi quebrado

A questão cobra o conhecimento de Colisão que, em resumo, é quando duas mensagens distintas, quando aplicadas a um algoritmo, como MD5 ou SHA-1, geram o mesmo hash.


Ou seja, a possibilidade desse fenômeno acontecer, mesmo que ínfima, existe.

Portanto, gabarito errado!


Bons estudos!

Não importa qual a função de hash usada SEMPRE haverá colisões, o que queremos é que seja computacionalmente inviável encontrá-las.

Pela própria natureza do hash as colisões são inevitáveis: estamos tentando mapear uma mensagem de tamanho arbitrário em uma mensagem de tamanho fixo e muito menor que a mensagem original - para md5 somente 128 bits.

Como diz Stallings:

"Lembre-se que, para qualquer função de hash, é preciso haver colisões, pois estamos relacionando uma mensagem de tamanho pelo menos igual ao dobro do tamanho do bloco b (porque precisamos anexar um campo contendo o tamanho) a um código de hash de tamanho n, onde b>=n. O que é preciso é que seja computacionalmente inviável encontrar colisões".

Avante!

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo