Keccak (pronunciado “ketchak”) é uma função criptográfica versátil desenvolvida por Guido Bertoni, Joan Daemen, Michaël Peeters e Gilles Van Assche. Embora o Keccak possa ser aplicado em outros contextos, ele é mais conhecido como uma função de hash que oferece níveis de segurança mais altos em comparação com algoritmos de hash mais antigos, como SHA-1 e SHA-2.
A sigla SHA significa Secure Hash Algorithm e se refere a um conjunto de funções criptográficas de hash publicadas pelo Instituto Nacional de Padrões e Tecnologia (NIST) dos EUA. Os algoritmos SHA-1 e SHA-2 foram criados pela Agência de Segurança Nacional (NSA) dos EUA e, portanto, apresentam uma estrutura semelhante. Embora o Keccak ofereça suporte para o mesmo tamanho de output (comprimento de hash de saída) que o SHA-2, seu mecanismo de funcionamento é bem diferente. Ainda assim, o Keccak faz parte da família SHA e também é chamado de SHA-3.
Embora nenhum ataque significativo ao SHA-2 tenha sido demonstrado ainda, espera-se que as funções de hash se tornem vulneráveis com o tempo e que leve anos para que uma nova função padrão seja desenvolvida. Levando isso em consideração, juntamente com as demonstrações de ataques bem-sucedidos realizados contra o SHA-1 em 2004 e 2005, o NIST percebeu a necessidade de criar um novo algoritmo de hash criptográfico. Em 2012, o NIST declarou o Keccak como o algoritmo vencedor da competição e ele foi padronizado como o mais novo membro da família SHA (daí o nome SHA-3).
Uma das razões pelas quais o NIST escolheu o Keccak é devido à sua estrutura inovadora, que provou ser mais segura e eficiente do que a de outros algoritmos. Tecnicamente, o algoritmo SHA-3 depende das chamadas funções esponja (ou construção esponja) - em contraste com a construção Merkle Damgård usada pelo SHA-1 e SHA-2.
Ciência que utiliza teorias matemáticas e computação para criptografar e descriptografar informações.
Provas para verificar se as transações são válidas sem revelar nenhuma informação sobre elas, proporcionand...