A função hash criptográfica é um de um grupo de funções hash que são adequadas para aplicativos criptográficos como SSL /TLS. Como outras funções hash, as funções hash criptográficas são algoritmos matemáticos unilaterais usados ​​para mapear dados de qualquer tamanho para uma sequência de bits de tamanho fixo. As funções criptográficas de hash são amplamente utilizadas nas práticas de segurança da informação, como assinaturas digitais, códigos de autenticação de mensagens e outras formas de autenticação.  As funções hash criptográficas devem ter as seguintes propriedades (fonte: wikipedia): 1. A mesma mensagem sempre resulta no mesmo valor hash (ou seja, a função é determinista). 2. O valor do hash é calculado rapidamente. 3. É inviável ter duas mensagens com o mesmo valor hash (conhecido como “colisão”). 4. É inviável criar intencionalmente uma mensagem que produza um determinado valor de hash.  5. Pequenas alterações na mensagem devem alterar o valor de hash resultante extensivamente, para que pareça não correlacionado com o hash original. As funções de hash criptográficas mais comumente usadas incluem MD5, SHA-1 e SHA-2. A exclusividade de cada hash é vital para a integridade da função de hash criptográfica. Isso é o que realmente distingue as funções hash criptográficas de outras funções hash - a garantia de que uma mensagem específica seja identificada de uma forma única e inviávelmente duplicável.  Esquemas de assinatura digital (como para assinatura de documento, assinatura de códigoou S/MIME email) geralmente exigem que um hash criptográfico seja calculado da mensagem e incluído na assinatura. O software do destinatário então calcula independentemente o hash para verificar a integridade da mensagem.  Os sites também costumam publicar um valor hash para arquivos para download. Quando um usuário baixa o arquivo, ele pode usar seu próprio software para calcular o hash de forma independente, verificando a integridade do arquivo.  A segurança da senha também depende de hashes criptográficos. As senhas apresentadas pelos usuários são hash e depois comparadas com o hash armazenado.  As funções de hash criptográfico são amplamente usadas em protocolos de segurança como SSL /TLS e SSH e em outros aplicativos que dependem da integridade dos dados. As criptomoedas usam algoritmos de hash para atualizar uma blockchain com novos blocos de dados de transação seguros e verificáveis. (BitCoin, por exemplo, usa SHA-2 para verificação de transação.)