Fonctions de hachage flexibles

Occurrences : 

2021

Nombre d'étudiants minimum: 

2

Nombre d'étudiants maximum: 

4

Nombre d'instances : 

2

Domaines: 

Faisable à distance: 

Oui

Les fonctions de hachage (Hash Functions) sont intensivement utilisées actuellement pour un service d’intégrité dans les systèmes cryptographiques. Par exemple la fonction SHA256 intervient dans les blockchains du type bitcoin ; elle traite des blocks de taille 256 bits. Il existe des alternatives pour des blocs de tailles inférieures 128, ou supérieures 512, 1024, … Pour hacher de grands fichier on utilise tes techniques de chainage qui sont assez bien répertoriées dans la littérature. On peut aussi utiliser des fonctions de hachage flexibles qui seront plus efficaces pour le traitement de très grands fichiers.
Le projet donnera lieu à une réalisation d’un algorithme implémentant fonction de hachage flexible pouvant traiter des blocs de tailles variée (nblock = 2m ) dont il existe en prototype en MATLAB qui sera fourni aux étudiants.

Domaines concernés : Sécurité des réseaux, codage correcteurs et cryptographie, attaques cryptographiques en intégrité, programmation (plusieurs langages sont envisageables suivant les "savoir-faire techniques" des étudiants et leur désir de les étendre), complexité algorithmique, compromis temps/mémoire, tests statistiques, analyse de normes, …

Outre la réalisation d’un algorithme de hachage, dont les performances seront testées, le projet donnera lieu à une présentation du contexte (hachage, chainage et blockchain) et de certains mécanismes et standards utilisés actuellement.