DEFINIÇÃO de Funções de Hash Criptográficas
Uma função de hash criptográfico é uma função matemática usada em criptografia. Funções de hash típicas recebem entradas de comprimento variável para retornar saídas de comprimento fixo. Uma função hash criptográfica combina os recursos de passagem de mensagens das funções hash com propriedades de segurança.
Quebrando Funções de Hash Criptográficas
As funções de hash são estruturas de dados comumente usadas nos sistemas de computação para tarefas, como verificar a integridade das mensagens e autenticar informações. Mas eles são considerados criptograficamente fracos. As funções de hash criptográfico adicionam recursos de segurança às funções típicas de hash, dificultando a detecção do conteúdo de uma mensagem ou informação sobre destinatários e remetentes.
Em particular, as funções de hash criptográfico exibem três propriedades
- Eles são "livres de colisão". Em palavras simples, não há dois hashes de entrada para mapear o mesmo hash de saída. Eles podem estar ocultos. Em palavras simples, deve ser difícil adivinhar o valor de entrada para uma função de hash a partir de sua saída. Eles devem ser amigáveis. Ou seja, deve ser difícil selecionar uma entrada que forneça uma saída predefinida. Portanto, a entrada deve ser selecionada de uma distribuição o mais ampla possível.
As três propriedades descritas acima são desejáveis, mas nem sempre podem ser implementadas na prática. Por exemplo, a disparidade nos espaços de amostra para hashes e saídas de entrada garante que colisões sejam possíveis. Um exemplo disso foi demonstrado recentemente quando a Iniciativa de Moeda Digital do MIT encontrou vulnerabilidade de colisão no IOTA.
As funções de hash criptográfico são amplamente usadas em criptomoedas para passar informações de transação anonimamente. Por exemplo, o bitcoin, a maior e mais antiga criptomoeda, usa a função hash criptográfica SHA-256 em seu algoritmo. Da mesma forma, o IOTA, uma plataforma para a Internet das Coisas, tem sua função hash criptográfica conhecida como Curl.
