Untersuchung des NTRU – Algorithmus für die Tauglichkeit

Slides:



Advertisements
Ähnliche Präsentationen
Eine Einführung in das RSA-Verfahren an Beispielen
Advertisements

Mündliche Fachprüfung
Beispiel zum RSA-Algorithmus
Fast Fourier Transformation
Präsentation Der Gruppe: Boll, Barbosa, Blädel Klasse: WG 05 a.
Eine dynamische Menge, die diese Operationen unterstützt,
Kryptographie - ein Exkurs Kodieren/Dekodieren, Verschlüsseln/Entschlüsseln, Chiffrieren/Dechiffrieren zum Zweck der Geheimhaltung, zur Authentifizierung,
Hauptseminar Asymmetrische Verschlüsselung & Zertifikate
Schnelle Matrizenoperationen von Christian Büttner
Asymmetrische Kryptographie
HANDYGMA - kein Geheimnis -
7. Natürliche Binärbäume
Ein Modellansatz zur Beschreibung von Vagheiten
Verschlüsselungsverfahren Gruppe 3/ Judith Neu / Stephanie Czichon
Grundlagen der Kryptologie
Zahlentheorie Algebra und Kryptografie
Public Key Kryptographie mit dem RSA Schema
Elliptische Kurven in der Kryptographie
Algorithmentheorie 04 –Hashing
WS Algorithmentheorie 02 - Polynomprodukt und Fast Fourier Transformation Prof. Dr. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Tobias Lauer.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Prof. Dr. Th. Ottmann.
Kapitel 2 Die rationalen und die irrationalen Zahlen.
Symmetrische und Asymmetrische Verschlüsselung Habilitationsvortrag
V. Algebra und Geometrie
Bit Commitment mit quadratischen Resten Vortrag von Josef Pozny
Ein Public Key Kryptosystem mit perfekten Codes in Graphen.
Wir suchen ‘ mit m = m    ‘ c  ‘ mod 26
(Ron Rivest, Adi Shamit, Leonard Adleman , 1977)
Olaf Müller Fachbereich Mathematik/Informatik Universität Osnabrück
Mathematische Grundlagen und Rechnen mit algebraischen Zahlen
§8 Gruppen und Körper (8.1) Definition: Eine Gruppe G ist eine Menge zusammen mit einer Verknüpfung, die jedem Paar (a,b) von Elementen aus G ein weiteres.
SSL - Verfahren Secure Socket Layer.
Einwegfunktionen mit und ohne „Falltür“
Kryptographie Wie funktioniert Electronic Banking?
1 Übersicht Absicherung Internet Layer Absicherung Transport Layer Absicherung Application Layer.
präsentiert von Ulli, Nina& Kerstin
Kryptograhie Wie funktioniert Electronic Banking?
Zero-Knowledge Protokolle
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Polynome und schnelle Fourier-Transformation
Mehrkriterielle Optimierung mit Metaheuristiken
Fuzzymengen – Was ist das?
Institut für Theoretische Informatik
Institut für Theoretische Informatik
AES – Advanced Encryption Standard
Kurzvortrag für die Lehrerfortbildung
(C) 2003, Hermann Knoll, HTW Chur, Fachhochschule Ostschweiz 1 RSA-Algorithmus 1978 von Ronald Rivest, Adi Shamir und Leonard Adleman erfunden.
ENDLICHE KÖRPER RSA – VERFAHREN.
Fundamente der Computational Intelligence (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich Informatik Lehrstuhl für Algorithm Engineering Wintersemester.
IT-Sicherheit Kapitel 3 - Public Key Kryptographie
HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Algorithmische Probleme in Funknetzwerken VIII Christian Schindelhauer
Michal Olejniczak Pawel Kiedrowski
Projekt Crypt Einfache kryptografische Verfahren
WEP(Wired Equivalent Privacy) Ein veralteter Standard- Verschlüsselungsalgorithmus für WLAN´s Wird aufgrund verschiedener Schwachstellen als unsicher angesehen.
Folie 1 §8 Gruppen und Körper (8.1) Definition: Eine Gruppe G ist eine Menge zusammen mit einer Verknüpfung, die jedem Paar (a,b) von Elementen aus G ein.
Asymmetrische Kryptographie
RSA ist nach seinen Erfindern Rivest, Shamir und Adleman benannt.
Folie Nr. Stand Jänner 2008 RSA ist nach seinen Erfindern Rivest, Shamir und Adleman benannt RSA ist ein asymmetrisches Kryptosystem 
© 2013 TravelTainment Kryptographie in der IT Kryptographische Verfahren und ihre Anwendung in der IT.
Kryptografie und Datensicherheit RSA. Kryptografie und Datensicherheit RSA - Public-Key-Verschlüsselung 1. Attacken auf Public – Key - Verfahren 2. Der.
Kryptografie und Datensicherheit RSA. Kryptografie und Datensicherheit RSA - Public-Key-Verschlüsselung 1. Asymmetrisches Verschlüsselungsverfahren 2.
RSA public key encryption
Aufgabenteil (mit Hilfsmittel)
Wiederholung Größte gemeinsame Teiler Satz von Bezout:
Wiederholung Körper K Eigenschaften von multiplikativen Gruppen
Multivariate Kryptosysteme
 Präsentation transkript:

Untersuchung des NTRU – Algorithmus für die Tauglichkeit zur Hardwareakzeleration von Kryptoverfahren im Bereich skalierbarer Sicherheit Danijel Vollstädt

Fachbereich Informatik, Arbeitsbereich TAMS 0. zugrundeliegende Arbeiten 1 / 38 Fachbereich Informatik, Arbeitsbereich TAMS M. Böttger Komplexitätsabschätzung von hardwareakzelerierten Attacken auf ECC-Kryptoverfahren, Universität Hamburg, 2002 S. Witt, P. Hartmann (Studienarbeit) Vergleichende Analyse und VHDL-basierte Implementation von Zufallsgeneratoren auf Chipkarten, Universität Hamburg, 2001 S. Gorr Konzeption, Evaluierung und Implementation eines Akzelerators für Elliptische Kurven, Universität Hamburg, 2000 F. Bohnsack Untersuchung von Elliptischen Kurven für die Tauglichkeit zur Hardwareakzeleration von Kryptoverfahren, Universität Hamburg,1997

2. mathematische Grundlagen 1. Motivation 2 / 38 Übersicht 1. Motivation 2. mathematische Grundlagen 3. intuitives Beispiel 4. binäres Beispiel 5. Komponenten 6. Syntheseergebnisse 7. Ergebnisse und Ausblick

2. mathematische Grundlagen 1. Motivation 2 / 38 Übersicht 1. Motivation 2. mathematische Grundlagen 3. intuitives Beispiel 4. binäres Beispiel 5. Komponenten 6. Syntheseergebnisse 7. Ergebnisse und Ausblick

Anwendungsgebiete Chipkarten z.B. Schipaß, Fahrkarten, Parkhauskarten 1. Motivation 3 / 38 Anwendungsgebiete Chipkarten z.B. Schipaß, Fahrkarten, Parkhauskarten Dongle z.B. Softwareschutz, Internetzugang Handy z.B. Authentifizierung, Gesprächsverschlüsselung

Prinzip des Diffie-Hellman-Schlüsselaustauschs 1. Motivation 4 / 38 Prinzip des Diffie-Hellman-Schlüsselaustauschs Schickt den Koffer zum Empfänger zum Absender Entfernt das eigene Schloß Absender Empfänger

Schlüssellängenvergleich von RSA, ECC und NTRU 1. Motivation 5 / 38 Schlüssellängenvergleich von RSA, ECC und NTRU RSA – Rivest Shamir Adleman ECC – Elliptic Curve Cryptography NTRU – Number Theory Research Unit

Die Verschlüsselungszeiten 1. Motivation 6 / 38 Die Verschlüsselungszeiten im Vergleich

Die Entschlüsselungszeiten 1. Motivation 7 / 38 Die Entschlüsselungszeiten im Vergleich

2. mathematische Grundlagen Übersicht 1. Motivation 2. mathematische Grundlagen 3. intuitives Beispiel 4. binäres Beispiel 5. Komponenten 6. Syntheseergebnisse 7. Ergebnisse und Ausblick

Arithmetik in Polynomringen: Addition 2. mathematische Grundlagen 9 / 38 Arithmetik in Polynomringen: Addition maximaler Polynomgrad: N-1 maximaler Koeffizientengrad: q-1 (mod q)

Arithmetik in Polynomringen: Multiplikation 2. mathematische Grundlagen 10 / 38 Arithmetik in Polynomringen: Multiplikation (mod q)

Arithmetik in Polynomringen: Multiplikation 2. mathematische Grundlagen 10 / 38 Arithmetik in Polynomringen: Multiplikation (mod q)

Arithmetik in Polynomringen: Multiplikation 2. mathematische Grundlagen 10 / 38 Arithmetik in Polynomringen: Multiplikation (mod q)

Arithmetik in Polynomringen: Multiplikation 2. mathematische Grundlagen 10 / 38 Arithmetik in Polynomringen: Multiplikation (mod q)

Arithmetik in Polynomringen: Multiplikation 2. mathematische Grundlagen 10 / 38 Arithmetik in Polynomringen: Multiplikation (mod q) (mod q)

Arithmetik in Polynomringen: Multiplikation 2. mathematische Grundlagen 10 / 38 Arithmetik in Polynomringen: Multiplikation (mod q)

Arithmetik in Polynomringen: Inversion 2. mathematische Grundlagen 11 / 38 Arithmetik in Polynomringen: Inversion (mod q) Die Inverse zu a(x) ist A(x), bzw. A(x) ist invers zu a(x).

Ring, endlicher Körper, irreduzibles Polynom 2. mathematische Grundlagen 12 / 38 Ring, endlicher Körper, irreduzibles Polynom Definition (Ring) Ein Ring ist ein Tripel für das folgende Regeln gelten: (R,+) ist ein kommutative Gruppe ist ein Halbgruppe die Distributivgesetze gelten Definition (Körper) Ein Körper ist ein Tripel mit folgenden Regeln: ist ein Ring ist eine kommutative Gruppe Ein Polynom mit Das Polynom f(x) heißt irreduzibel über F, Wenn es nicht als Produkt zweier Polynome aus F[x] mit positivem Grad dargestellt werden kann. Definition (irreduzibles Polynom) Sei F ein endlicher Körper. Sei Hast Du die Abkürzung NTRU schon erklärt ?? Satz F[x]/(f(x)) ist ein Körper, wenn f(x) ein irreduzibles Polynom über F[x] ist. In diesem Fall kann das multiplikative Inverse mit dem erweiterten Euklidischen Algorithmus bestimmt werden.

Gibt es immer genau eine Inverse ? 2. mathematische Grundlagen 13 / 38 Gibt es immer genau eine Inverse ? Für jedes existiert genau eine multiplikative Inverse, wenn p prim und f(x) irreduzibel ist. hat nicht immer eine Inverse. hat immer eine Inverse. Hast Du die Abkürzung NTRU schon erklärt ?? Wo ist der Zusammenhang dieser beiden Sätze, wozu brauche ich für den unteren Satz den oberen, Beispiele richtig, Wie begründe ich, ob p prim ist

2. mathematische Grundlagen 3. intuitives Beispiel 14 / 38 Übersicht 1. Motivation 2. mathematische Grundlagen 3. intuitives Beispiel 4. binäres Beispiel 5. Komponenten 6. Syntheseergebnisse 7. Ergebnisse und Ausblick

Bob erzeugt einen öffentlichen Schlüssel 3. intuitives Beispiel 15 / 38 Bob erzeugt einen öffentlichen Schlüssel öffentliche Parameter Bobs geheime Parameter Bob wählt ein Dazu die Inversen: öffentlicher Schlüssel Er wählt zufällig das Polynom: Der öffentliche Schlüssel: mod(q)

Susan verschlüsselt eine Nachricht 3. intuitives Beispiel 16 / 38 Susan verschlüsselt eine Nachricht Susans Verschlüsselung öffentliche Parameter Nachricht von Susan: binär: „111“, entspricht: Sie wählt zufällig das Polynom: Der Polynomgrad ist die Blocklänge !! und berechnet den Cyphertext: mod(q) öffentlicher Schlüssel

Susan verschlüsselt eine Nachricht 3. intuitives Beispiel 16 / 38 Susan verschlüsselt eine Nachricht Susans Verschlüsselung öffentliche Parameter Nachricht von Susan: binär: „111“, entspricht: Sie wählt zufällig das Polynom: und berechnet den Cyphertext: öffentlicher Schlüssel mod(q)

Bob entschlüsselt Susans Nachricht 3. intuitives Beispiel 17 / 38 Bob entschlüsselt Susans Nachricht Susans Cyphertext Bobs Entschlüsselung (mod q) erste Entschlüsselungsgl.:

Bob entschlüsselt Susans Nachricht 3. intuitives Beispiel 17 / 38 Bob entschlüsselt Susans Nachricht Susans Cyphertext Bobs Entschlüsselung erste Entschlüsselungsgl.: (mod q) zweite Entschlüsselungsgl.: (mod p) Susans Nachricht war „111“

Warum funktioniert das Verfahren NTRU ? 3. intuitives Beispiel 18 / 38 Warum funktioniert das Verfahren NTRU ? Verschlüsselung und Schlüsselerzeugung (mod q) erste Entschlüsselungsgleichung (mod q) Hast Du die Abkürzung NTRU schon erklärt ?? Wo ist der Zusammenhang dieser beiden Sätze, wozu brauche ich für den unteren Satz den oberen, Beispiele richtig, Wie begründe ich, ob p prim ist zweite Entschlüsselungsgleichung (mod p)

Warum können r und g zufällig gewählt werden ? 3. intuitives Beispiel 18 / 38 Warum können r und g zufällig gewählt werden ? Verschlüsselung und Schlüsselerzeugung (mod q) erste Entschlüsselungsgleichung (mod q) Hast Du die Abkürzung NTRU schon erklärt ?? Wo ist der Zusammenhang dieser beiden Sätze, wozu brauche ich für den unteren Satz den oberen, Beispiele richtig, Wie begründe ich, ob p prim ist zweite Entschlüsselungsgleichung (mod p) Weil dieser Term als vielfaches von p wegfällt.

Warum bleibt m beim Übergang von mod q zu p erhalten ? 3. intuitives Beispiel 18 / 38 Warum bleibt m beim Übergang von mod q zu p erhalten ? Gilt die Gleichung (mod q) nicht, kann aus (mod p) kein korrektes m resultieren. Verschlüsselung und Schlüsselerzeugung (mod q) erste Entschlüsselungsgleichung (mod q) Wählt man die Werte p, r, g, f und m aus einer Menge, die relativ zu q klein ist, so daß und gilt die Gleichung. Hast Du die Abkürzung NTRU schon erklärt ?? Wo ist der Zusammenhang dieser beiden Sätze, wozu brauche ich für den unteren Satz den oberen, Beispiele richtig, Wie begründe ich, ob p prim ist zweite Entschlüsselungsgleichung (mod p)

Zugrundeliegendes Problem (Trapdoorfunktion) 3. intuitives Beispiel 18 / 38 Zugrundeliegendes Problem (Trapdoorfunktion) Verschlüsselung und Schlüsselerzeugung (mod q) Polynomfaktorisierungsproblem erste Entschlüsselungsgleichung (mod q) Hast Du die Abkürzung NTRU schon erklärt ?? Wo ist der Zusammenhang dieser beiden Sätze, wozu brauche ich für den unteren Satz den oberen, Beispiele richtig, Wie begründe ich, ob p prim ist zweite Entschlüsselungsgleichung (mod p)

2. mathematische Grundlagen 4. binäres Beispiel 19 / 38 Übersicht 1. Motivation 2. mathematische Grundlagen 3. intuitives Beispiel 4. binäres Beispiel 5. Komponenten 6. Syntheseergebnisse 7. Ergebnisse und Ausblick

Binäres Beispiel 4. binäres Beispiel 20 / 38 öffentliche Parameter Bobs geheime Parameter (mod q) Susan verschlüsselt Ihre Botschaft Bob entschlüsselt Susans Nachricht (mod q) (mod p) Bob generiert den Public Key (mod q)

Binäres Beispiel 4. binäres Beispiel 20 / 38 öffentliche Parameter Bobs geheime Parameter Bob generiert den Public Key (mod q) Susan verschlüsselt Ihre Botschaft (mod q) Bob entschlüsselt Susans Nachricht (mod q) (mod p)

Parameterwahl (mod q) Der und der müssen sein. 4. binäres Beispiel 21 / 38 Parameterwahl öffentliche Parameter Bobs geheime Parameter (mod q) Der und der müssen sein. Wählt man die Körper ist die Gleichung immer erfüllt. Die Nachrichtenexpansion ist

2. mathematische Grundlagen 5. Komponenten 22 / 38 Übersicht 1. Motivation 2. mathematische Grundlagen 3. intuitives Beispiel 4. binäres Beispiel 5. Komponenten 6. Syntheseergebnisse 7. Ergebnisse und Ausblick

Die Komponenten von NTRU einen geeigneten Zufallsgenerator arithmetische Operationen mod 2 Verfahren zur Inversenberechnung Multiplikation Hast Du die Abkürzung NTRU schon erklärt ??

Wahl des Zufallsgenerators 5. Komponenten 24 / 38 Wahl des Zufallsgenerators Rang Durchsatz Zellenbedarf Leistungsaufnahme 1 RC4 LFSR 2 BBS 3 4 EC LSFR – Linear Feedback Shift Register S. Witt, P. Hartmann Vergleichende Analyse und VHDL-basierte Implementation von Zufallsgeneratoren auf Chipkarten, Universität Hamburg

Wahlkriterien für LSFR 5. Komponenten 25 / 38 Wahlkriterien für LSFR linearer, geringer Zellenbedarf Qualität der Zufallszahlen gering (Berlekamp-Massey Algorithmus)

Methoden zur Inversenberechnung 5. Komponenten 26 / 38 Methoden zur Inversenberechnung Intuitive Methode Jedes Element des Körpers wird geprüft, ob es das Inverse ist Erweiterter Euklidischer Berechnet die Inverse mithilfe des Algorithmus Euklidischen Algorithmus. Almost Inverse Berechnet die Inverse mithilfe des Algorithm Euklidischen Algorithmus. Dazu werden nur Verschiebe- und Additionsfunktion verwendet.

modulo 2 Multiplizierer 5. Komponenten 27 / 38 modulo 2 Multiplizierer Takte Zellen Serieller Mult. N Superserieller Mult. 1 M. Böttger Komplexitätsabschätzung von hardwareakzelerierten Attacken auf ECC-Kryptoverfahren, Universität Hamburg G. Orlando, C.Paar A Super-Serial Galois Fields Multiplier For FPGAs And Ist Application To Public-Key Algorithms, Nappa Valley/CA

Software oder Hardwarerealisierung ? 5. Komponenten 28 / 38 Software oder Hardwarerealisierung ? Software Hardware Schlüsselerzeugung Invertierer Multiplizierer LSFR -- Verschlüsselung Addierer Entschlüsselung Reduzierer

5. Komponenten 29 / 38 Datenflußgraph der Verschlüsselung

5. Komponenten 30 / 38 Datenflußgraph der Entschlüsselung

2. mathematische Grundlagen 6. Syntheseergebnisse 31 / 38 Übersicht 1. Motivation 2. mathematische Grundlagen 3. intuitives Beispiel 4. binäres Beispiel 5. Komponenten 6. Syntheseergebnisse 7. Ergebnisse und Ausblick

Zellenbedarf des Zufallsgenerators 6. Syntheseergebnisse 32 / 38 Zellenbedarf des Zufallsgenerators

Zellenbedarf der Verschlüsselung 6. Syntheseergebnisse 33 / 38 Zellenbedarf der Verschlüsselung

Zellenbedarf der Entschlüsselung 6. Syntheseergebnisse 34 / 38 Zellenbedarf der Entschlüsselung

2. mathematische Grundlagen 7. Ergebnisse und Ausblick 35 / 38 Übersicht 1. Motivation 2. mathematische Grundlagen 3. intuitives Beispiel 4. binäres Beispiel 5. Komponenten 6. Syntheseergebnisse 7. Ergebnisse und Ausblick

Ergebnisse Wählt man Körper und ,f(x) und g(x) irreduzibel 7. Ergebnisse und Ausblick 36 / 38 Ergebnisse Wählt man Körper und ,f(x) und g(x) irreduzibel mit Grad(f(x)) > 3 Grad(g(x)), erhält man ein binäres NTRU. mit Grad(g(x)) > 1 ist das binäre NTRU bitweise skalierbar.

Ausblick Sicherheit von NTRU und binärem NTRU zu ECC und RSA 7. Ergebnisse und Ausblick 37 / 38 Ausblick Sicherheit von NTRU und binärem NTRU zu ECC und RSA Kann die Sicherheit duch die Verwendung von Ringen statt Körpern erhöht werden ? (Inversenberechnung durch lin. Gleichungssysteme) Welchen Einfluß haben verschiedene irred. Polynome auf die Sicherheit von NTRU ?

Vielen Dank für Ihre Aufmerksamkeit ! 7. Ergebnisse und Ausblick 38 / 38 Vielen Dank für Ihre Aufmerksamkeit !