Keccak est une fonction de hachage conçue par Guido Bertoni, Joan Daemen, Michaël Peeters et Gilles Van Assche dans le cadre de la compétition du NIST pour la standardisation d’un nouvel algorithme de hachage cryptographique. En 2012, Keccak remporte cette compétition et certaines de ces instances sont standardisées sous le nom de SHA-3.
Depuis sa conception, Keccak a été l’objet de nombreuses cryptanalyses. Ces études sont essentielles afin de garantir la sécurité cryptographique des fonctions de hachage. Cependant, les efforts de la communauté cryptographique se sont concentrés sur les versions standardisées. Pour motiver l’étude des autres instances de Keccak, ses concepteurs ont organisé le Crunchy contest, une compétition qui propose des challenges de cryptanalyse. Les organisateurs du concours ont alors remarqué que les challenges portant sur les versions de Keccak ayant un petit état (et donc non standardisées) étaient moins souvent réussis. En outre, des candidats du second tour de la compétition Lightweight Cryptography du NIST utilisent ces petites versions. Il semble donc de plus en plus important de les étudier.
C’est dans ce contexte que Yann Rotella et moi-même proposons une cryptanalyse de ces petites versions. Lors de notre étude, nous avons montré que ces instances nécessitent une analyse spécifique, et en particulier distincte de celle qui existe pour les versions standardisées. En utilisant des techniques de cryptanalyse souvent réservées aux attaques en pré-image, nous avons conçue la première attaque en collision sur Keccak[40,160], Keccak[72,128] et Keccak[144,256] réduites à deux tours. Cet exposé a pour but de présenter notre attaque.