TupleHash
TupleHash est le hachage Keccak pour tuples de chaînes d'octets défini dans NIST SP 800-185 ; il garantit que différentes structures de tuple n'entrent pas en collision.
Objectif
Fournir un hachage sans ambiguïté pour des tuples de champs de longueur variable, évitant les collisions par injection de délimiteurs — adapté aux empreintes d'enregistrements structurés.
Mécanisme
Chaque champ est encodé comme right_encode(longueur) || contenu du champ et concaténé, avec une sortie cSHAKE finale. L'encodage à préfixe de longueur garantit que (ab, c) et (a, bc) produisent des entrées différentes.
Cas d’usage
- Hachage d'enregistrements structurés
- Empreintes de lignes de bases de données
- Encodage de tuples sans ambiguïté