Mais um blog inútil.

Maio 3, 2009

SHA-1 Quebrado (outra vez)

Filed under: Drama,Fail,Serious Business — dongs @ 3:27

Lembram-se de todo o drama quando criaram certificados falsos a partir de colisões de MD5?

Aparentemente a resposta dos principais CAs foi rapidamente migrar para SHA-1, mesmo sabendo que já não era inteiramente seguro (reparem na data). Na altura eu disse que era má ideia, mas agora a situação piorou:

SHA-1 Collisions now 2^52. Infelizmente o artigo completo ainda não foi publicado, deixando os detalhes do ataque em aberto. Ainda assim, os autores são credíveis e os resultados vão ser apresentados na Eurocrypt 2009 pelo Greg Rose, autor de um dos candidatos ao SHA-3.

Para quem argumentar que este tipo de ataques não é practicável, vamos fazer as contas (tm). A implementação do SHA-1 presente no OpenSSL precisa de cerca de 768 ciclos num processador actual (Q6600). Isto num processador de 3 GHz e 4 cores dá-nos cerca de 16 milhões de iterações por segundo, i.e. ~2^24. Num único processador, isto levaria demasiado tempo, cerca de 8 anos. Mas num cluster de 1024 destes processadores, não tão incomum quanto isso, levaria cerca de 3 dias. Isto ignorando implementações optimizadas para o efeito e chips mais apropriados para o efeito, e.g. Cell, GPU, FPGA, ASIC, ...

Assim, recomendo Calgon em todas as lavagens que o SHA-1 deixe de ser utilizado para assinaturas digitais. Para autenticação simétrica (e.g. HMAC) e geração de números aleatórios estes resultados são de relativamente pouco interesse.

P.S. Esta implementação parece atingir os 213 ciclos por compressão, diminuindo drasticamente os custos descritos acima.

3 comentários a “SHA-1 Quebrado (outra vez)”

  1. mirage diz:

    "Quem te avisa teu amigo é!"

  2. falso diz:

    Depois de ler isto tudo, só me apetece: ;-)

  3. madinfo diz:

    Vou mesmo começar a usar Calgon em todas as lavagens...

Comentar

widgeon
widgeon
widgeon
widgeon