Une note sur l’encodage et le hachage sur les courbes elliptiques et hyperelliptiques

Sur la construction de fonctions de hachage sur les courbes (hyper)elliptiques

Cryptographie

 La cryptologie [MVO96] est une science des mathématiques qui étudie la sécurité de l’information et des communications ; elle se subdivise en deux branches : * la cryptographie : une science qui s’intéresse à la conception de schémas et protocoles qui permettent de garantir la sécurité de l’information et des communications en présence d’un potentiel adversaire. Le mot cryptographie vient des mots grecs kryptós qui signifie «caché, secret» et gráfein qui signifie «écrire» ; * la cryptanalyse : une science qui étudie les attaques contre les schémas cryptographiques. Une hypothèse fondamentale en cryptanalyse a été formulée par A. Kerkho

Une note sur l’encodage et le hachage sur les courbes elliptiques et hyperelliptiques 

 Introduction Pour hacher sur la Jacobienne d’une courbe (hyper)elliptique, nous avons besoin d’une fonction qui associe de manière déterministe un élément d’un corps fini Fq à un point de la courbe. Une telle fonction est appelée un encodage. Nous avons besoin de fonctions d’encodage sur des Courbes (Hyper)Elliptiques pour globalement deux raisons : 1. représentation de points : si un encodage f est presque-injectif (il est injectif quand il est restreint à un certain sous-ensemble de Fq, voir [BHKL13]) et inversible (on peut trouver une antécédent pour n’importe quel élément de l’ensemble des images), il peut être utilisé pour représenter chaque point de l’ensemble des images par une chaîne de bits uniforme aléatoire, comme ce que Bernstein et al. ont fait dans Elligator(1 et 2) [BHKL13]. 2. hachage indi 4. Une note sur l’encodage et le hachage sur les courbes elliptiques et hyperelliptiques 3 ‚ pour le modèle d’intersection de Jacobi (Jacobi Intersection model) au2 ` v2 “ 1, bv2 ` w2 “ 1 : He et al. (2018) [HYW17]. 

Etat de l’art sur le hachage sur les courbes (hyper)elliptiques 

Par une fonction de hachage dans une courbe (hyper)elliptique, nous entendons une fonction H : t0, 1u˚ Ñ JpFqq, qui envoie une chaîne de bits à un élément de la Jacobienne JpFqq de la courbe. Mais pourquoi définir de telles fonctions ? Simplement parce que de nombreux schémas basés sur des courbes elliptiques nécessitent de hacher dans le groupe de points d’une courbe elliptique. Par exemple, Boneh et Franklin [BF01] en 2001 ont été parmi les premiers à exiger un hachage dans les courbes elliptiques .

La Construction H “ f ˝ h1 ` f ˝ h2 [Brier et al.(2010 )] Brier et al. [BCI`10], en utilisant la notion d’encodage admissible, ont montré que la construction Hpmq “ fph1pmqq ` fph2pmqq est indiqué.

Table des matières

1 Introduction et Synthèse de nos travaux
1.1 Cryptographie
1.1.1 Échange de clefs Différentielle
I Hachage sur les courbes hyperelliptiques
2 Sur le hachage indifférentielle
2.3 Encodages presque injectifs et inversibles sur deux familles de courbes hy perelliptiques
2.3.1 Encoding presque-injectif sur H1
2.3.2 Encodage presque-injectif sur H2
2.4 Applications : Hachage indifférentielle
3 Formules unifiées pour certains encodages déterministes presque-injectifs sur des courbes hyperelliptiques
3.1 Introduction
3.2 Nouveaux encodages presque-injectifs et inversibles sur des courbes hyperelliptiques
3.2.1 Encodage presque-injectif en genre g “ 3
3.2.2 Encodage presque-injectif en genre g “ 4
3.2.3 Encodage presque-injectif en genre g “ 5
3.2.4 Encodage presque-injectif en genre g “ 1 utilisant notre technique
3.3 Formules unifiées pour les cinq encodages
3.4 Encodages presque-injectifs sur Hg, g P t6, 7, 8, 9u
3.5 Conclusion
3.6 Implémentation de notre encodage unifié Âg (Section 3.3) avec SageMath [Dev17] disponible sur GitHub[Sec18]
4 Une note sur l’encodage et le hachage sur les courbes elliptiques et hyperelliptiques
4.1 Introduction
4.2 Etat de l’art des encodages sur les courbes (hyper)elliptiques
4.2.1 Encodages sur les courbes elliptiques
4.2.2 Encodages sur les courbes hyperelliptiques
4.2.3 Analyses sommaires et comparatives
4.3 Etat de l’art sur le hachage sur les courbes (hyper)elliptiques
4.3.1 Méthode Try-and-increment (21 )
4.3.2 La Construction H “ f ˝ h
4.3.3 La Construction H “ f ˝ h1 ` h2G
4.3.4 La Construction H “ f ˝ h1 ` f ˝ h2
4.3.5 Généralisation de H “ f ˝ h1 ` f ˝ h2
4.4 Formules unifiées pour le hachage sur des courbes (hyper)elliptiques
4.5 Conclusion
II SimulaMath : un logiciel de calcul
5 Le logiciel SimulaMath
5.1 Introduction
5.2 Étude comparative
5.3 SimulaMath et l’analyse
5.4 SimulaMath et les courbes elliptiques
5.5 Codes linéaires et SimulaMath
5.6 SimulaMath et l’algèbre linéaire
5.7 SimulaMath et Graphiques 2D et 3D
5.8 SimulaMath et les probabilités
5.9 SimulaMath et autres domaines
5. Conclusion
Conclusion générale et Perspectives de recherche
III Annexes
A Généralités sur la théorie algébrique des nombres
A.1 Groupes et Anneaux
A.1.1 Groupes
A.1.2 Anneaux
A.1.3 Localisation
A.2 Corps et Espaces vectoriels
A.2.1 Corps
A.2.2 Espaces vectoriels
A.3 Extension de corps
A.3.1 Définitions et propriétés
A.3.2 Extensions algébriques et normales, Corps de nombres
A.3.3 Extensions séparables et inséparables
A.3.4 Extension galoisienne
A.3.5 Norme et Trace
A.4 Extensions cyclotomiques
A.5 Caractères sur des groupes abéliens finis
A.5.1 Résidus quadratiques et symboles de Legendre et de Jacobi
A.5.2 Caractères sur les corps finis
A.6 Racine carrée et carré dans un corps fini
B Généralités sur les variétés, les courbes elliptiques et hyperelliptiques
B.1 Variétés
B.3.3 Courbes elliptiques sur corps fini
B.3.4 Di

projet fin d'etudeTélécharger le document complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *