Title:
1Ãœber die Sicherheit von HFE, HFEv- und Quartz
- Nicolas T. Courtois Magnus Daum Patrick Felke
2Ãœberblick
- Basic HFE
- Ver-/Entschlüsseln mit HFE
- Signieren/Verifizieren mit HFE
- Perturbationen
- Parameter
- HFE Hidden Field Equations
- Lösen von HFE-Systemen mit der Hilfe von
Gröbner-Basis Algorithmen - Ergebnisse unserer Simulationen
- Zusammenfassung
3HFEHidden Field Equations
4Basic HFE
Einwegfunktion mit Hintertür
Hintertür
5Basic HFE Beispiel
6Basic HFE Beispiel
7Basic HFE Beispiel
Verschlüsseln
8Basic HFE Beispiel
Entschlüsseln
9Basic HFE Beispiel
Signieren
10Basic HFE Beispiel
Verifizieren
11Perturbationen
12Perturbationen
- Kleine Modifikationen auf der multivariaten Seite
des Kryptosystems, die dazu dienen, die
algebraische Struktur unkenntlich zu machen - z.B. (Hinzufügen zufälliger Polynome)
Public Key(nach Mischen mit S und T)
13Perturbationen
- Kleine Modifikationen auf der multivariaten Seite
des Kryptosystems, die dazu dienen, die
algebraische Struktur unkenntlich zu machen - z.B. - (Weglassen einiger Polynome)
Public Key
14Perturbationen
- Kleine Modifikationen auf der multivariaten Seite
des Kryptosystems, die dazu dienen, die
algebraische Struktur unkenntlich zu machen - z.B. v (Hinzufügen von Variablen)
Public Key
(nach Mischen mit S und T)
15Perturbationen
- Perturbationen können kombiniert
werden,beispielsweise zu HFEv- Systemen - Perturbierte Systeme sind angeblich sicherer
- Alle für die Praxis vorgeschlagenen HFE Systeme
nutzen Perturbationen - (z.B. basiert Quartz auf einem HFEv- System und
SFlash auf einem HFE-- System)
16Parameter
Perturbationen und geheimer Schlüssel
- q Größe des kleineren endlichen Körpers K
- h Erweiterungsgrad von L (d.h. Lqh)
- d Grad des versteckten Polynoms ?
- Anzahl der hinzugefügten/entfernten
Polynome/Variablen
17Parameters of HFE
- q size of smaller finite field K
- h extension degree of L (i.e. Lqh)
- d degree of hidden polynomial ?
- r number of removed equations (-)
- v number of added variables (v)
- mh-r number of equations in the public key
- nhv number of variables in the public key
18Ãœberblick
- Buchberger Algorithmus
- Probleme
- Spezialfall HFE
- Was ist HFE?
- Lösen von HFE-Systemen mit der Hilfe von
Gröbner-Basis Algorithmen - Ergebnisse unserer Simulationen
- Zusammenfassung
19Allgemeiner Ansatz Beispiel
/
Signieren
Entschlüsseln
20Allgemeiner Ansatz Beispiel
21Allgemeiner Ansatz Probleme
- Grad der Ausgabepoly-nome kann sehr groß werden
- Buchberger Algorithmus hat exponentielle worst
case Komplexität - Berechnen alle Lösungen im algebraischen
Abschluss
22Anwendung auf HFE Systeme
- HFE Systeme sind sehr speziell
- über einem sehr kleinen, endlichen Körper
definiert - Polynome haben sehr kleinen Grad
- benötigen nur Lösungen im Grundkörper
- verstecktes Polynom kleinen Grades (Hintertür)
23Lösungen im Grundkörper
24Lösungen im Grundkörper
- Vorteile
- berechnen nur wirklich benötigte Informationen
- Grad der beteiligten Polynome ist nach oben
beschränkt
25Anwendung auf HFE Systeme
- HFE Systeme sind sehr speziell
- über einem sehr kleinen, endlichen Körper
definiert - nur quadratische Polynome
- benötigen nur Lösungen im Grundkörper
- verstecktes Polynom kleinen Grades
26Polynom kleinen Grades
- Grad des versteckten Polynoms beeinflußt stark
die Anzahl der Relationen zwischen den Polynomen
im multivariaten System - Laufzeiten des Buchberger-Algorithmus sind stark
abhängig von dlogq(d)e - logq(d)ltltndeutlich einfacher zu lösen als
zufällige quadratische Gleichungssysteme
27Anwendung auf HFE Systeme
- HFE Systeme sind sehr speziell
- über einem sehr kleinen, endlichen Körper
definiert - nur quadratische Polynome
- benötigen nur Lösungen im Grundkörper
- verstecktes Polynom kleinen Grades
28Anwendung auf HFE Systeme
- Mit Hilfe stark optimierter Varianten des
Buchberger Algorithmus könnte es möglich sein,
einfache HFE Systeme zu lösen. - Beste bekannte Attacke auf Basic HFE
- Faugères Algorithmus F5/2 (April 2002)
- (erfolgreiche Attacke auf HFE challenge 1
(h80, d96) in 96h auf einer 833 MHz Alpha
Workstation) - Für perturbierte HFE Systeme
- Keine durchführbaren Attacken bekannt
- Algorithmen wie F5/2 können (ohne größere
Modifika-tionen) auch auf solche Systeme
angewendet werden
29Ãœberblick
- Entschlüsselung bei HFE- Systemen
- Signieren bei HFEv- Systemen
- Was ist HFE?
- Lösen von HFE-Systemen mit der Hilfe von
Gröbner-Basis Algorithmen - Ergebnisse unserer Simulationen
- Zusammenfassung
30Simulationen
- durchgeführt in SINGULAR
- Gewählte Parameter
- Endlicher Körper K F2
- h 2 15,19,21
- HFE Systeme mit d 2 5,9,17 und zufällig
erzeugte quadratische Systeme - Erste Versuchsreihe
- Entschlüsselung
- Perturbationen und -( jeweils zwischen 0
und 5 Polynome entfernt bzw. hinzugefügt )
31Simulationen Entschlüsselung
32Simulationen Entschlüsselung
Perturbationen verändern das Verhältnis von
Gleichungen zu Variablen und die Größe der
betrachteten Systeme und haben allein dadurch
einen Einfluß auf die benötigte Zeit
33Was wollen wir messen?
- Wie gut wird die Hintertür durch Anwendung von
Perturbationen versteckt ? - Wie sehr können Perturbationen bewirken, dass ein
HFE-System mit Hintertür wie ein zufälliges
System (ohne Hintertür) erscheint ? - 0 R 1
- Zufälligkeit Sicherheit
34Simulationen Entschlüsselung
Hinzufügen / Weglassen einiger Polynome erhöht
die Sicherheit von HFE Systemen merklich
35Simulationen
- durchgeführt in SINGULAR
- Gewählte Parameter
- Endlicher Körper K F2
- h 2 15,19,21
- HFE Systeme mit d 2 5,9,17 und zufällig
erzeugte quadratische Systeme - Erste Versuchsreihe
- Entschlüsselung
- Perturbationen und -( jeweils zwischen 0
und 5 Polynome entfernt bzw. hinzugefügt )
- Zweite Versuchsreihe
- Signieren
- Perturbationen v und -( jeweils 0 bis 3
Polynome entfernt und zwischen 0 und 5
Variablen hinzugefügt )
36Spezielle Situation beim Signieren
- Es genügt, eine der Lösungen des Systems zu
finden. - Gröbnerbasis Algorithmen liefern automatisch alle
Lösungen gleichzeitig. - Komplexität scheint mit steigender Zahl an
Lösungen ebenfalls deutlich zu wachsen - - und v erhöhen die Zahl der Lösungen
37Spezielle Situation beim Signieren
- ! Lösungsanzahl künstlich reduzieren
- Fixiere einige Variablen, so dass die erwartete
Anzahl der Lösungen des Systems 1 beträgt - Versuche das so erhaltene System zu lösen
- Wenn es nicht lösbar war, wiederhole dies
solange, bis eine Lösung gefunden ist
38Simulationen Signieren
h15, d5, q2
39Simulationen Signieren
- R hängt im Wesentlichen von der Gesamtzahl vr
der angewendeten Perturbationen ab. - - kann die Gesamtzeit sogar verringern.
- ! sinnvoll mehr v zu benutzen
- d sehr klein, d.h. Rltlt1vr Perturbationen
bewirken mindestens eine Steigerung der
Komplexität um ungefähr qvr. - Um so kleiner R, desto stärker die Auswirkung der
Perturbationen.
40Conclusions for Quartz
- Faugères attack computes a Gröbner Basis,
- so applying our results to his attack gives
- For Quartz with d129 and vr7 his attack will
- probably need
. - For Quartz with d257 we estimate a complexity
of
41Zusammenfassung
- HFE kann mit Hilfe von Gröbnerbasis-Algorithmen
angegriffen werden - Komplexität ist sehr groß
- Komplexität dieser Angriffe/Sicherheit kann
erhöht werden durch - Erhöhung des Grades des versteckten Polynoms
- Anwendung von Perturbationen
42Vielen Dank !Fragen ?!?