-
-
-
-
-
-
-
HomeSite map
SoC/Offres d'emplois/Stages/2011-2012/CIAN/Crypto hachage Print page

Conception matérielle de fonctions de hachage

Objectif

Le but de ce stage est de concevoir un composant matériel réalisant la fonction de hachage d'un message en utilisant une bibliothèque de fonctions cryptographiques prédéfinie.

Description

En cryptographie, le hachage consiste à fournir une empreinte réduite d'un message permettant ensuite de garantir l'intégrité d'un message. Il existe de nombreux algorithmes de hachage cryptographiques (MD5, SHA...). Mais ces algorithmes ne sont pas infaillibles et le NIST a lancé une compétition afin de définir un nouveau standard pour les fonctions de hachage (SHA-3). Cette compétition est en cours et devrait se terminer courant 2012. Il y a actuellement 4 finalistes engagés dans le dernier tour de la compétition. L'algorithme qui sera finalement choisi devra avoir une bonne capacité à être implantable en matériel. Il est donc intéressant d'étudier la capacité à être implanté en matériel de ces algorithmes.

L'an passé nous avons proposé une implantation matérielle de l'AES à partir de fonctions élémentaires fortement génériques. La généricité de ces fonctions permet de pouvoir s'adapter facilement à d'autres algorithmes. Nous souhaitons dans le cadre de ce stage utiliser les fonctions élémentaires développées l'an dernier afin de valider leur adaptabilité à d'autres algorithmes que l'AES pour lequel elles ont été conçues et donc les utiliser dans la réalisation matérielle des algorithmes finalistes de la compétition SHA-3.

Les fonctions cryptographiques ont été développées dans l'environnement Stratus de l'équipe CIAN du LIP6 qui permet entre autre de concevoir des générateurs matériels fortement paramétrables. Il faudra donc dans le cadre de ce stage développer un générateur Stratus pour les fonctions de hachage déterminées et l'utiliser pour évaluer les performances de l'algorithme sur FPGA et/ou ASIC.

Les étapes du travail seront :

1.   Etudes des différents algorithmes finalistes de la compétition SHA-3

2.   Etudes des opérateurs qui ont été développés

3.   Sélection des algorithmes à implanter

4.   Conception matérielle des algorithmes sélectionnés

5.   Validation et étude des performances

Connaissances requises

Notions de cryptographie, langage Python, langage de description Stratus souhaitable

Encadrant

Rémunération

Ce stage sera rémunéré 416€/mois pendant toute la durée du stage (6 mois) sous réserve d'accord de financement (demande en cours)

LIP6 LIP6-SoC LIP6 CNRS UPMC