Résumé
En cryptographie, une fonction éponge, ou construction de l’éponge est une classe de fonctions permettant de construire entre autres des fonctions de hachage cryptographique. Elle a notamment été utilisée pour la fonction SHA-3. D'un point de vue théorique, elles permettent aussi de construire des preuves de sécurité de ce type de fonction. Leur originalité est d’accepter en entrée à la fois des chaînes de taille arbitraire et de permettre en sortie des chaînes de la taille que l’on souhaite. Elles généralisent à la fois les fonctions de hachage et le chiffrement de flux. La construction de l’éponge est une manière générique de construire une fonction F qui prend en paramètre une chaîne de n’importe quelle taille (un flux ou un fichier par exemple) et qui retourne une chaîne de la longueur qu’on souhaite. Ses paramètres sont une permutation, ou plus généralement une transformation f opérant sur un nombre fixe b de bits, qu’on appellera largeur, et une fonction de bourrage p. Son fonctionnement est le suivant : la chaîne d’entrée est complémentée par la fonction de complément pour aligner la taille de la chaîne d’entrée sur un nombre entier de blocs, puis découpée en blocs de r bits. Les b bits de l’état interne sont initialisés à zéros, puis le calcul se déroule en deux phases : l’absorption Dans cette phase, les blocs de r bits sont Xorés avec les r premiers bits de l’état, en alternance avec des applications de la fonction f sur l’état. Cette phase se déroule jusqu’à ce que tous les blocs aient été traités. l’essorage Cette phase est la construction pas à pas de la sortie. Elle consiste en la répétition des deux étapes suivantes : 1. les r premiers bits de l’état sont retournés comme blocs de sortie et 2. la fonction f est appliquée sur l’état. Le nombre d’itération est au choix de l’utilisateur et la taille de la chaîne de sortie en dépend. Les derniers c bits de l’état ne sont jamais directement modifiés par les blocs d’entrée et ne sont jamais retournés pendant l’essorage.
À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.