Sunday, March 6, 2011

Colisão MD5


Basicamente, colisão de hash é uma situação que ocorre quando dois arquivos distintos tem o mesmo valor de hash. A probabilidade de que haja uma colisão de hash é maior quando utilizamos MD5, pois o tamanho do valor gerado é menor:


MD5("") = d41d8cd9 8f00b204 e9800998 ecf8427e
SHA1("") = da39a3ee 5e6b4b0d 3255bfef 95601890 afd80709
SHA256("") = e3b0c442 98fc1c14 9afbf4c8 996fb924 27ae41e4 649b934c a495991b 7852b855



Há uma vulnerabilidade no algorítimo do MD5 que permite ao atacante "forjar" uma colisão de MD5, modificando um arquivo original e gerando para este arquivo resultante o mesmo hash do arquivo original.
Então fica a pergunta: SHA1 é a solução?? Bruce Schneier diz que não.

Uma "solução de contorno" seria utilizar ambos algoritmos para o mesmo arquivo: MD5 e SHA1, pois, mesmo que haja manipulação do arquivo e a "maracutaia" para colisão do MD5 seja aplicada, o SHA1 será alterado e evidenciará o ataque.

Maiores informações sobre o assunto:

No comments:

Post a Comment