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

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

Embed Size (px)

Citation preview

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

Untersuchung des NTRU – Algorithmus für die Tauglichkeitzur Hardwareakzeleration von Kryptoverfahren im Bereich

skalierbarer Sicherheit

Danijel Vollstädt

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

0. zugrundeliegende Arbeiten 1 / 38

Fachbereich Informatik, Arbeitsbereich TAMS

S. Witt, P. Hartmann (Studienarbeit)Vergleichende Analyse und VHDL-basierte Implementation vonZufallsgeneratoren auf Chipkarten, Universität Hamburg, 2001

M. BöttgerKomplexitätsabschätzung von hardwareakzelerierten Attacken aufECC-Kryptoverfahren, Universität Hamburg, 2002

F. BohnsackUntersuchung von Elliptischen Kurven für die Tauglichkeit zurHardwareakzeleration von Kryptoverfahren, Universität Hamburg,1997

S. GorrKonzeption, Evaluierung und Implementation eines Akzelerators für Elliptische Kurven, Universität Hamburg, 2000

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

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

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

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

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

1. Motivation 3 / 38

Anwendungsgebiete

•Chipkarten

z.B. Schipaß, Fahrkarten, Parkhauskarten

•Dongle

z.B. Softwareschutz, Internetzugang

•Handy

z.B. Authentifizierung, Gesprächsverschlüsselung

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

Schickt den Kofferzum Empfänger

Schickt den Kofferzum Absender

Entfernt daseigene Schloß

Entfernt daseigene Schloß

1. Motivation 4 / 38

Prinzip des Diffie-Hellman-Schlüsselaustauschs

Absender Empfänger

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

1. Motivation 5 / 38

Schlüssellängenvergleich von RSA, ECC und NTRU

RSA – Rivest Shamir AdlemanECC – Elliptic Curve CryptographyNTRU – Number Theory Research Unit

100

1000

10000

20

00

20

05

20

10

20

15

20

20

20

25

20

30

Jahr

Sc

hlü

ss

elb

reit

e [

Bit

]

ECC

NTRU

RSA

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

1. Motivation 6 / 38

0

500

1000

1500

2000

2500

112 168 196 263 503 1024 2048

Bitbreite der Verschlüsselung

Ve

rsc

hlü

ss

elu

ng

sze

it (

ms

) ECC

NTRU

RSA

1

100

10000

112 168 196 263 503 1024 2048

Bitbreite der Verschlüsselung

Ve

rsc

hlü

ss

elu

ng

sze

it (

ms

)

ECC

NTRU

RSA

Die Verschlüsselungszeiten im Vergleich

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

1. Motivation 7 / 38

Die Entschlüsselungszeiten im Vergleich

0

50

100

150

200

250

300

350

112 168 196 263 503 1024 2048

Bitbreite der Entschlüsselung

En

tsc

hlü

ss

elu

ng

sze

it (

ms

)

ECC

NTRU

RSA

1

100

10000

112 168 196 263 503 1024 2048

Bitbreite der Entschlüsselung

En

tsc

hlü

ss

elu

ng

sze

it (

ms

)

ECC

NTRU

RSA

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

2. mathematische Grundlagen 8 / 38

Übersicht

1. Motivation

2. mathematische Grundlagen

3. intuitives Beispiel

4. binäres Beispiel

5. Komponenten

6. Syntheseergebnisse

7. Ergebnisse und Ausblick

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

Arithmetik in Polynomringen: Addition

;5N 32q

)()()()( 3232 1225520818 xxxxxxxbxa

(mod )q32 323323 xxx 223 x

23123 x

maximaler Polynomgrad: N-1maximaler Koeffizientengrad: q-1

(mod q)

2. mathematische Grundlagen 9 / 38

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

Arithmetik in Polynomringen: Multiplikation

;5N 32q

)()()()( 4323 159112633 xxxxxxxbxa (mod q)

)5432 1327149 xxxxx

39x 414x( )765 1327 xxx

(

2. mathematische Grundlagen 10 / 38

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

Arithmetik in Polynomringen: Multiplikation

;5N 32q

)()()()( 4323 159112633 xxxxxxxbxa (mod q)

432 2714913 xxxx

39x 414x( )765 1327 xxx

( )

2. mathematische Grundlagen 10 / 38

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

Arithmetik in Polynomringen: Multiplikation

;5N 32q

)()()()( 4323 159112633 xxxxxxxbxa (mod q)

432 2714913 xxxx

39x 414x( )765 1327 xxx

( )

2. mathematische Grundlagen 10 / 38

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

Arithmetik in Polynomringen: Multiplikation

;5N 32q

)()()()( 4323 159112633 xxxxxxxbxa (mod q)

432 2714913 xxxx

39x 414x(

( )213271 xx )

2. mathematische Grundlagen 10 / 38

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

Arithmetik in Polynomringen: Multiplikation

;5N 32q

)()()()( 4323 159112633 xxxxxxxbxa (mod q)

432 2714913 xxxx

39x 414x(

( )213271 xx )

)( 432 1381812 xxxx (mod q)

)( 432 198311820 xxxx

2. mathematische Grundlagen 10 / 38

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

Arithmetik in Polynomringen: Multiplikation

;5N 32q

)()()()( 4323 159112633 xxxxxxxbxa (mod q)

)( 432 198311820 xxxx

2. mathematische Grundlagen 10 / 38

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

Arithmetik in Polynomringen: Inversion

;7N 11q

642 323 xxxxa )(65432 2244242 xxxxxxxA )(

63 22222210 xxxxAxa )()( (mod q)1

Die Inverse zu a(x) ist A(x), bzw. A(x) ist invers zu a(x).N

qq xxZZRxaxA /])[/()(),(

2. mathematische Grundlagen 11 / 38

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

Definition (Körper) Ein Körper ist ein Tripel mit folgenden Regeln:• ist ein Ring• ist eine kommutative Gruppe

),,( K)},{\( 0K

),,( K

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

),( R

),,( R

Ein Polynom mit Das Polynom f(x) heißt irreduzibel über F,Wenn es nicht als Produkt zweier Polynome aus F[x] mit positivemGrad dargestellt werden kann.

Definition (irreduzibles Polynom) Sei F ein endlicher Körper. Sei .)deg( 1f

][)( xFxf

2. mathematische Grundlagen 12 / 38

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.

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

Gibt es immer genau eine Inverse ?

Für jedes existiert genau einemultiplikative Inverse, wenn p prim und f(x) irreduzibel ist.

)(/])[/()( xfxZZRxb pp

)/(])[/()( 33 xxZZRxb p hat nicht immer eine Inverse.

)/(])[/()( 147 xxxZZRxb q hat immer eine Inverse.

2. mathematische Grundlagen 13 / 38

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

Übersicht

1. Motivation

2. mathematische Grundlagen

3. intuitives Beispiel

4. binäres Beispiel

5. Komponenten

6. Syntheseergebnisse

7. Ergebnisse und Ausblick

3. intuitives Beispiel 14 / 38

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

Bob erzeugt einen öffentlichen Schlüssel

öffentliche Parameter Bobs geheime Parameter

3N

)/(])[/( 33 xxZZRp

3p7q

)/(])[/( 37 xxZZRq

Bob wählt ein :)( pRxf

12 xxf )(

Dazu die Inversen:

222 xxxFp )(

443 2 xxxFq )(

Er wählt zufällig das Polynom:

xxg )(öffentlicher Schlüssel

344 2 xxxh )(Der öffentliche Schlüssel:

)()()( xgxFqxh mod(q)

344 2 xx

3. intuitives Beispiel 15 / 38

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

Susan verschlüsselt eine Nachricht

öffentliche ParameterSusans Verschlüsselung

3N

)/(])[/( 33 xxZZRp

3p7q

)/(])[/( 37 xxZZRq

öffentlicher Schlüssel

344 2 xxxh )(

Sie wählt zufällig das Polynom:xxr )(

Nachricht von Susan:binär: „111“, entspricht:

111 2 xxxm )(

12 xx

und berechnet den Cyphertext:

)()()()( xmxhxprxe mod(q)

3. intuitives Beispiel 16 / 38

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

Susan verschlüsselt eine Nachricht

öffentliche ParameterSusans Verschlüsselung

3N

)/(])[/( 33 xxZZRp

3p7q

)/(])[/( 37 xxZZRq

öffentlicher Schlüssel

344 2 xxxh )(

Sie wählt zufällig das Polynom:xxr )(

Nachricht von Susan:binär: „111“, entspricht:

111 2 xxxm )(

12 xx

und berechnet den Cyphertext:

)()()()( xmxhxprxe mod(q)

14 2 xx

3. intuitives Beispiel 16 / 38

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

Bob entschlüsselt Susans Nachricht

Susans Cyphertext Bobs Entschlüsselung

14 2 xxxe )(

)()()( xexfxa (mod q)

erste Entschlüsselungsgl.:

3. intuitives Beispiel 17 / 38

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

Bob entschlüsselt Susans Nachricht

Susans Cyphertext Bobs Entschlüsselung

14 2 xxxe )(

)()()( xexfxa (mod q)

erste Entschlüsselungsgl.:

255 2 xx

zweite Entschlüsselungsgl.:

)()()( xaxFxm p (mod p)

12 xx

Susans Nachricht war „111“

3. intuitives Beispiel 17 / 38

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

Verschlüsselung und Schlüsselerzeugung

mhrpe

gFqh

(mod q)

(mod q)

erste Entschlüsselungsgleichung

mfgrp

mfgrp

mfgrpFqf

mfgFqrpf

)(

)(

)(

1

efa

(mod q)

(mod q)

(mod q)

(mod q)(mod q)

zweite Entschlüsselungsgleichung

Fpam

m

mfFp

mfFpgrFpp

Fpmfgrp

)(

)(

(mod p)

(mod p)

(mod p)

(mod p)(mod p)

Warum funktioniert das Verfahren NTRU ?

3. intuitives Beispiel 18 / 38

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

Verschlüsselung und Schlüsselerzeugung

mhrpe

gFqh

(mod q)

(mod q)

erste Entschlüsselungsgleichung

mfgrp

mfgrp

mfgrpFqf

mfgFqrpf

)(

)(

)(

1

efa

(mod q)

(mod q)

(mod q)

(mod q)(mod q)

zweite Entschlüsselungsgleichung

Fpam

m

mfFp

mfFpgrFpp

Fpmfgrp

)(

)(

(mod p)

(mod p)

(mod p)

(mod p)(mod p)

Warum können r und g zufällig gewählt werden ?

Weil dieser Term als vielfachesvon p wegfällt.

3. intuitives Beispiel 18 / 38

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

Verschlüsselung und Schlüsselerzeugung

mhrpe

gFqh

(mod q)

(mod q)

erste Entschlüsselungsgleichung

mfgrp

mfgrp

mfgrpFqf

mfgFqrpf

)(

)(

)(

1

efa

(mod q)

(mod q)

(mod q)

(mod q)(mod q)

zweite Entschlüsselungsgleichung

Fpam

m

mfFp

mfFpgrFpp

Fpmfgrp

)(

)(

(mod p)

(mod p)

(mod p)

(mod p)(mod p)

Warum bleibt m beim Übergang von mod q zu p erhalten ?

Gilt die Gleichungfmgrpfmgrp (mod q)

nicht, kann ausfmgrp (mod p)

kein korrektes m resultieren.

Wählt man die Werte p, r, g, fund m aus einer Menge, die relativ zu q klein ist, so daß

4qmf und ,4

qgrp

gilt die Gleichung.

3. intuitives Beispiel 18 / 38

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

Verschlüsselung und Schlüsselerzeugung

mhrpe

gFqh

(mod q)

(mod q)

erste Entschlüsselungsgleichung

mfgrp

mfgrp

mfgrpFqf

mfgFqrpf

)(

)(

)(

1

efa

(mod q)

(mod q)

(mod q)

(mod q)(mod q)

zweite Entschlüsselungsgleichung

Fpam

m

mfFp

mfFpgrFpp

Fpmfgrp

)(

)(

(mod p)

(mod p)

(mod p)

(mod p)(mod p)

Zugrundeliegendes Problem (Trapdoorfunktion)

Polynomfaktorisierungsproblem

3. intuitives Beispiel 18 / 38

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

Übersicht

1. Motivation

2. mathematische Grundlagen

3. intuitives Beispiel

4. binäres Beispiel

5. Komponenten

6. Syntheseergebnisse

7. Ergebnisse und Ausblick

4. binäres Beispiel 19 / 38

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

Binäres Beispielöffentliche Parameter

)/(][ 1232 xxxZRp

)/(][ 162 xxxZRq

Bobs geheime Parameter2xf

1xFp145 xxFq

xg

Bob generiert den Public Key

gFh q (mod q) 15 x

Bob entschlüsselt Susans Nachricht

efa (mod q) xxxx 345

aFpm (mod p) xx 2

4. binäres Beispiel 20 / 38

mprhe (mod q) 1235 xxxx

Susan verschlüsselt Ihre Botschaft 12 xm

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

100001

010g

011pF

Binäres Beispielöffentliche Parameter Bobs geheime Parameter

)/(][ 11012 xZRp

)/(][ 10000112 xZRq

Bob generiert den Public Key

gFh q (mod q)

Susan verschlüsselt Ihre Botschaft

mprhe (mod q)

Bob entschlüsselt Susans Nachricht

efa (mod q)aFpm (mod p)

100f

110001qF

101111

111010101

4. binäres Beispiel 20 / 38

12 xm

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

Parameterwahlöffentliche Parameter

)/(][ 1232 xxxZRp

)/(][ 162 xxxZRq

Bobs geheime Parameter2xf

1xFp145 xxFq

xg

mfgrp (mod q)

xxxx

xxxxxx

mfgrp

345

2223 111 )()()(

Der und der müssen sein.

)( grpGrad )( mfGrad )(qGrad

Wählt man die Körper ist die Gleichung

immer erfüllt.

))(())(( xpGradxqGrad 3

Die Nachrichtenexpansion ist

.m3

4. binäres Beispiel 21 / 38

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

Übersicht

1. Motivation

2. mathematische Grundlagen

3. intuitives Beispiel

4. binäres Beispiel

5. Komponenten

6. Syntheseergebnisse

7. Ergebnisse und Ausblick

5. Komponenten 22 / 38

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

Die Komponenten von NTRU

•einen geeigneten Zufallsgenerator

•Verfahren zur Inversenberechnung

•arithmetische Operationen mod 2

•Multiplikation

5. Komponenten 23 / 38

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

Wahl des Zufallsgenerators

S. Witt, P. HartmannVergleichende Analyse und VHDL-basierte Implementation vonZufallsgeneratoren auf Chipkarten, Universität Hamburg

Rang Durchsatz Zellenbedarf Leistungsaufnahme

1 RC4 LFSR RC4

2 LFSR BBS LFSR

3 BBS RC4 BBS

4 EC EC EC

LSFR – Linear Feedback Shift Register

5. Komponenten 24 / 38

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

Wahlkriterien für LSFR

•linearer, geringer Zellenbedarf•Qualität der Zufallszahlen gering (Berlekamp-Massey Algorithmus)

5. Komponenten 25 / 38

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

Methoden zur Inversenberechnung

Intuitive Methode Jedes Element des Körpers wird geprüft, ob es das Inverse ist

)( NO 2

Erweiterter Euklidischer Berechnet die Inverse mithilfe des Algorithmus Euklidischen Algorithmus.

))(log( 22NO

Almost Inverse Berechnet die Inverse mithilfe des Algorithm Euklidischen Algorithmus.

Dazu werden nur Verschiebe- undAdditionsfunktion verwendet.

))(log( 22NO

5. Komponenten 26 / 38

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

modulo 2 Multiplizierer

G. Orlando, C.PaarA Super-Serial Galois Fields Multiplier For FPGAs And Ist ApplicationTo Public-Key Algorithms, Nappa Valley/CA

M. BöttgerKomplexitätsabschätzung von hardwareakzelerierten Attacken aufECC-Kryptoverfahren, Universität Hamburg

Takte Zellen

Serieller Mult. N

Superserieller Mult. 1

)(NO21)( NO

5. Komponenten 27 / 38

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

Software oder Hardwarerealisierung ?

Software Hardware

Schlüsselerzeugung

Invertierer

Multiplizierer

LSFR

--

Verschlüsselung --

Addierer

Multiplizierer

LSFR

Entschlüsselung --Multiplizierer

Reduzierer

5. Komponenten 28 / 38

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

Datenflußgraphder

Verschlüsselung

5. Komponenten 29 / 38

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

Datenflußgraphder

Entschlüsselung

5. Komponenten 30 / 38

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

Übersicht

1. Motivation

2. mathematische Grundlagen

3. intuitives Beispiel

4. binäres Beispiel

5. Komponenten

6. Syntheseergebnisse

7. Ergebnisse und Ausblick

6. Syntheseergebnisse 31 / 38

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

Zellenbedarf des Zufallsgenerators

0

500

1000

1500

2000

10 20 30 40 50 60

Bitbreite

Ze

llen

be

da

rf

6. Syntheseergebnisse 32 / 38

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

Zellenbedarf der Verschlüsselung

6. Syntheseergebnisse 33 / 38

0

5000

10000

15000

10 20 30 40 50 60

Bitbreite

Ze

llen

be

da

rf

ECC

NTRU

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

Zellenbedarf der Entschlüsselung

6. Syntheseergebnisse 34 / 38

0

5000

10000

15000

10 20 30 40 50 60

Bitbreite

Ze

llen

be

da

rf

NTRU

ECC

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

Übersicht

1. Motivation

2. mathematische Grundlagen

3. intuitives Beispiel

4. binäres Beispiel

5. Komponenten

6. Syntheseergebnisse

7. Ergebnisse und Ausblick

7. Ergebnisse und Ausblick 35 / 38

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

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.

7. Ergebnisse und Ausblick 36 / 38

)(/])[/( xfxZZRf 2

)(/])[/( xgxZZRg 2

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

Ausblick

•Sicherheit von NTRU und binärem NTRU zu ECC und RSA

•Kann die Sicherheit duch die Verwendung von Ringenstatt Körpern erhöht werden ? (Inversenberechnung durch lin. Gleichungssysteme)

•Welchen Einfluß haben verschiedene irred. Polynome auf dieSicherheit von NTRU ?

7. Ergebnisse und Ausblick 37 / 38

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

Vielen Dank für Ihre Aufmerksamkeit !

7. Ergebnisse und Ausblick 38 / 38