Table des mati`eres
Introduction 41 Corps Finis 5
1.1 A la recherche de Corps Finis . . . . . . . . . . . . . . . . . . . . 51.1.1 Op´erations sur les corps . . . . . . . . . . . . . . . . . . 61.1.2 Existence et unicit´e . . . . . . . . . . . . . . . . . . . . . 61.1.3 Corps binaires . . . . . . . . . . . . . . . . . . . . . . . 61.2 Op´erations sur les corps binaires . . . . . . . . . . . . . . . . . . 8
2 Introduction aux Courbes Elliptiques 9
2.1 Courbes Elliptiques . . . . . . . . . . . . . . . . . . . . . . . . . 92.2 Loi de groupe . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.3 Addition et Multiplication de points . . . . . . . . . . . . . . . . 132.3.1 Algorithmes de base d’addition, n´egation et doublement . 142.3.2 Algorithmes de base de multiplication . . . . . . . . . . . 15
3 ECDSA 17
3.1 Elliptic Curve Discrete Logarithm Problem . . . . . . . . . . . . 173.2 G´en´eration de clefs . . . . . . . . . . . . . . . . . . . . . . . . . 183.3 Sch´ema de signature . . . . . . . . . . . . . . . . . . . . . . . . 203.4 ECDSA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4 Impl´ementation et Optimisations 23
4.1 Structures de donn´ees . . . . . . . . . . . . . . . . . . . . . . . . 234.1.1 Description des classes . . . . . . . . . . . . . . . . . . . 234.2 Optimisations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264.2.1 Coordonn´ees projectives . . . . . . . . . . . . . . . . . . 264.2.2 Multiplication de points inconnus . . . . . . . . . . . . . 284.2.3 Repr´esentation Non Adjacent Form (NAF) . . . . . . . . 292