Keccak, qui se prononce "ketchak", est une fonction cryptographique flexible créée par Guido Bertoni, Joan Daemen, Michaël Peeters et Gilles Van Assche. Bien que Keccak ait de nombreuses applications potentielles, il est surtout reconnu comme une fonction de hachage offrant une sécurité accrue par rapport aux anciens algorithmes de hachage tels que SHA-1 et SHA-2.
L'acronyme SHA signifie Secure Hash Algorithm (algorithme de hachage sécurisé) et représente une série de fonctions de hachage cryptographiques développées par le National Institute of Standards and Technology (NIST) des États-Unis. SHA-1 et SHA-2 ont tous deux été créés par la National Security Agency (NSA) des États-Unis et partagent une structure similaire. Bien que Keccak ait la même taille de sortie (longueurs de hachage) que SHA-2, son mécanisme opérationnel diffère considérablement. Néanmoins, Keccak est considéré comme faisant partie de la famille SHA et est communément appelé SHA-3.
En résumé, des attaques théoriques contre SHA-1 ont été divulguées en 2004, ce qui a conduit le NIST à déclarer SHA-2 comme la nouvelle fonction de hachage standard en 2011. La lente migration de SHA-1 vers SHA-2 a été suivie par une attaque réussie de collision SHA-1 en 2017, rendant SHA-1 peu sûr et déconseillé à l'utilisation. Keccak, connu sous le nom de SHA-3, a été développé pour remédier aux failles potentielles de SHA-1 et SHA-2. Il a remporté un concours organisé par le NIST en 2012 et est devenu le membre le plus récent de la famille SHA. Sa structure innovante et sa dépendance à l'égard des fonctions de l'éponge ont contribué à sa sélection. Alors que SHA-2 reste largement utilisé et sûr, l'adoption éventuelle de SHA-3 pourrait être influencée par sa résistance aux attaques. En outre, l'évolution constante de la cryptographie pourrait conduire au développement de nouveaux algorithmes de hachage cryptographique dans les années à venir.