Séminaire de Cryptographie

Accueil     Présentation     Archives

Jean-Charles Faugère


Les Bases de Gröbner attaquent HFE

HFE (Hidden Fields Equations) est un cryptosystème à clef publique n'utilisant pas la théorie des nombres (comme RSA) mais des opérations sur les polynômes à coefficient dans un corps fini. Ce cryptosystème a été proposé par Jacques Patarin à Eurocrypt 96 en améliorant les idées de Matsumoto et Imai. Ce cryptosystème semblait très prometteur car il peut servir à générer des signatures très courtes: 128, 100 ou même 80 bits.

L'idée de HFE est de prendre un polynôme univarié secret à coefficient dans GF(2^n) puis d'exprimer ce polynôme sur GF(2). On obtient ainsi un système algébrique en n variables (la clef publique).

Retrouver le message original connaissant la clef secrète est «facile» puisque cela revient à résoudre un problème univarié. En revanche avec seulement la clef publique cela devient un problème très difficile puisqu'il s'agit de résoudre un système algébrique.

Plusieurs cryptographes ont proposé des méthodes «nouvelles» pour résoudre ou étudier la complexité des systèmes algébriques sur les corps finis (Patarin, Shamir, Courtois, ...).

Nous montrons dans cet exposé comment les nouveaux algorithmes (F5) de base de Gröbner permettent de:

1) dériver très facilement un algorithme spécialisé très efficace pour les corps finis.

2) casser assez facilement le Challenge proposé par J. Patarin (le challenge est un exemple réaliste en taille 80 bits).

3) mener une étude de complexité expérimentale pour les systèmes HFE. Par exemple si le degré du polynôme secret est < 129 la complexité du calcul est seulement $n^8$.

4) établir des bornes de complexité théorique très précises pour les systèmes algébriques dans un corps fini et en particulier l'équivalent de la borne de Macaulay $1 + \sum_i (d_i -1)$. (travail en collaboration avec B. Salvy et M. Bardet).

Ces bornes théoriques sont particulièrement utiles pour comprendre la distinction entre un système aléatoire (difficile) et un système provenant de HFE (plus facile).