Capítulos 5,6 - Departamento de Ciência da Computação
Capítulos 5,6 - Departamento de Ciência da Computação
Capítulos 5,6 - Departamento de Ciência da Computação
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Funções <strong>de</strong> Hash<br />
Criptografia e Segurança na Informática<br />
• Premissas <strong>de</strong> um hash ou checksum criptográfico seguro -<br />
Como mecanismo principal na autenticação <strong>da</strong> integri<strong>da</strong><strong>de</strong> <strong>de</strong> <strong>da</strong>dos,<br />
funções <strong>de</strong> hash h:M →{0,1} n <strong>de</strong>vem satisfazer as proprie<strong>da</strong><strong>de</strong>s:<br />
1. Proprie<strong>da</strong><strong>de</strong>s básicas (unidirecional e livre <strong>de</strong> colisão)<br />
• Dado m, é fácil calcular c = h(m) e <strong>da</strong>do c é difícil calcular m;<br />
• Dado m qualquer, é difícil produzir uma colisão com m (encontrar m'<br />
tal que h(m) = h(m')). O valor <strong>de</strong> n <strong>de</strong>ve dificultar a produção <strong>de</strong><br />
colisão através <strong>de</strong> ataques por dicionário em m'.<br />
2. Proprie<strong>da</strong><strong>de</strong> adicional (resistência à colisão)<br />
• Para algumas aplicações, a função <strong>de</strong> hash <strong>de</strong>ve ser resistente a<br />
colisão: <strong>de</strong>ve ser difícil encontrar, por meio <strong>de</strong> ataques "<strong>de</strong><br />
aniversário" ou técnica melhor, qualquer colisão na função h.<br />
• Ataques <strong>de</strong> aniversário a funções <strong>de</strong> hash -<br />
Descrição: Encontrar um par m e m' tal que h(m) = h(m').<br />
Exemplo: Ao propor um contrato (protocolo tipo VII), o frau<strong>da</strong>dor prepara<br />
outra versão que lhe seja vantajosa e prejudicial à outra parte.<br />
Testa o hash <strong>de</strong> variações <strong>de</strong> ambas versões, contendo combinações <strong>de</strong><br />
espaços adicionais (ASCII 32) on<strong>de</strong> há quebras <strong>de</strong> linha, até conseguir<br />
um par m (contrato), m' (frau<strong>de</strong>) que gerem mesmo hash. Assinam o<br />
hash <strong>de</strong> m e <strong>de</strong>pois, em juízo, o frau<strong>da</strong>dor protesta m'.<br />
Pedro Rezen<strong>de</strong> © 1998-2002 25