Para que uma função de hash possa ser considerada adequada para um protocolo de assinatura digital, é necessário que seja inviável, em termos computacionais, achar duas mensagens diferentes em que o hash de uma mensagem seja igual ao da outra.