Sie sind auf Seite 1von 60

Master-Kolloquium

Komplexitatstheoretische Betrachtungen von


gitterbasierten Kryptografiesystemen
Patrick Vogt
Hochschule RheinMain

4. September 2013

Master-Kolloquium

Ubersicht
1 Einf
uhrung
2 Grundlagen
3 Berechnungsprobleme in Gittern
4 Komplexit
at der Gitterprobleme
5 Gitterbasierte Kryptografieverfahren
6 Fazit

Master-Kolloquium

Einf
uhrung

Einfuhrung

Master-Kolloquium

Einf
uhrung

Asymmetrische Kryptografie
Alice

Bob
verschl
usselt Nachricht mit
Bobs
offentlichen Schl
ussel
sendet verschl
usselte Nachricht an Bob

entschl
usselt Nachricht mit
seinem privaten Schl
ussel

Abbildung : Die Ver- und Entschl


usselung mithilfe eines asymmetrischen
Kryptografieverfahrens.

Master-Kolloquium

Einf
uhrung

Einwegfunktionen mit Falltur

Zentraler Baustein eines asymmetrischen Krpytografieverfahrens ist


eine Einwegfunktion mit Fallt
ur.
D.h.:
x f (x) - relativ leicht.

f (x) x - relativ schwierig (ohne Fallt


urinformation).

Beispiele (u. a.):


Telefonbuch
Primfaktorzerlegung

Master-Kolloquium

Einf
uhrung

Post-Quantum Kryptografie

RSA basiert auf der Primfaktorzerlegung


mithilfe eines Quantumcomputers in P l
osbar.
(Noch nicht effiziente) Alternativen:
Hash-basierte Kryptografie
Codebasierte Kryptografie
Gitterbasierte Kryptografie
Warum schon heute nach Nachfolger(n) suchen?

Master-Kolloquium

Grundlagen

Grundlagen

Master-Kolloquium

Grundlagen

Gittertheorie: Einfuhrung
L(~b1 , ~b2 , . . . , ~bn ) =def {x1~b1 +x2~b2 + +xn~bn }, x1 , x2 , . . . , xn Z

~b 0
2

~b 0
1

~b2

~0

~b1

Lineare H
ulle: span(L(B)) = span(B) =def {B~q : ~q Rn } .
8

Master-Kolloquium

Grundlagen

Gittertheorie: Aquivalenz
Gitter k
onnen in Relation stehen:

~b 0
2
~b2
~0

~b1

L(B)

~0

~b 0
1

L(B 0 )

Aquivalent,
wenn L(B) L(B 0 ) und L(B 0 ) L(B)
oder B = B 0 U mit U Znn und | det(U)| = 1.

Master-Kolloquium

Grundlagen

Gittertheorie: Grundmasche
P(B) =def {s1~b1 + s2~b2 + + sn~bn }, s1 , s2 , . . . , sn [0, 1)

~b2

P(B)

~0

~b1

10

Master-Kolloquium

Grundlagen

Gittertheorie: Grundmasche
P(B) =def {s1~b1 + s2~b2 + + sn~bn }, s1 , s2 , . . . , sn [0, 1)

P(B 0 )
~b 0
2

~b 0
1

~b2
P(B)
~0

~b1

11

Master-Kolloquium

Grundlagen

Gittertheorie: Grundmasche

Die Grundmasche hat folgende Eigenschaften:


sie enthalt stets genau einen Gittervektor
sie spannt gemeinsam mit allen Gittervektoren die lineare
H
ulle des Gittes auf
p
sie hat das Volumen | det(B T B)|
Das Volumen der Grundmasche wird auch als Gitterdeterminante
det(L(B)) bezeichnet.

12

Master-Kolloquium

Grundlagen

Gittertheorie: Satz von Blichfeldt

Satz
F
ur jedes Gitter L(B) und jede Teilmenge S span(B) gilt:
Wenn S das Volumen vol(S) > det(L) besitzt, so m
ussen
mindestens zwei unterschiedliche Vektoren ~q1 , ~q2 S existieren,
sodass ~q1 ~q2 (L\{~0}) ist.
Beweis.
(siehe Thesis)

13

Master-Kolloquium

Grundlagen

Gittertheorie: Satz von Minkowski

Folgerung
F
ur jedes Gitter L(B) und jede beliebige konvexe Menge
S span(B), die symmetrisch um den Ursprung des Gitters L ist,
gilt:
Wenn vol(S) > 2n det(L) ist, dann enthalt S mindestens einen
Gittervektor ~v (S L\{~0}).

14

Master-Kolloquium

Grundlagen

Gittertheorie: Satz von Minkowski


Beweis.

15

Master-Kolloquium

Grundlagen

Gittertheorie: Satz von Minkowski


Beweis.

S0

16

Master-Kolloquium

Grundlagen

Gittertheorie: Satz von Minkowski


Beweis.

~0
S0

17

Master-Kolloquium

Grundlagen

Gittertheorie: Satz von Minkowski


Beweis.

~q1
~0
S0

18

Master-Kolloquium

Grundlagen

Gittertheorie: Satz von Minkowski


Beweis.

~q1

~q2
~0
S0

19

Master-Kolloquium

Grundlagen

Gittertheorie: Satz von Minkowski


Beweis.

2~q1
~q1

~q2
~0
S0

20

Master-Kolloquium

Grundlagen

Gittertheorie: Satz von Minkowski


Beweis.

2~q1
~q1

~q2
~0

2~q2

S0

21

Master-Kolloquium

Grundlagen

Gittertheorie: Satz von Minkowski


Beweis.

2~q1
~q1

~q2
~0

2~q2

S0

22

Master-Kolloquium

Grundlagen

Gittertheorie: Satz von Minkowski


Beweis.

2~q1
~q1

~q2
~0

2~q2

S0

23

Master-Kolloquium

Grundlagen

Gittertheorie: Satz von Minkowski


Beweis.

2~q1
~q1

~q2

~q1 ~q2
~0

2~q2

S0

24

Master-Kolloquium

Grundlagen

Gittertheorie: Satz von Minkowski


Beweis.

2~q1
~q1

~q2

~q1 ~q2
~0

2~q2

S0

25

Master-Kolloquium

Grundlagen

Satz von Minkwoski

~b2
~0

~b1

26

Master-Kolloquium

Grundlagen

Distanzen und Langen in Gittern


Distanz von Gittervektoren abhangig von induzierter Norm.
p-Norm f
ur ein Vektor ~v Rm bzw. haufige Spezialfalle:
`1 (~v ) = k~v k1 =

m
X

|vi | (Summennorm)

i=1

v
u m
uX
2
`2 (~v ) = k~v k = t
|vi |2 (Euklidische Norm)
i=1
m

` (~v ) = k~v k = lim k~v kp = max |vi | (Maximumsnorm)


p

i=1

27

Master-Kolloquium

Grundlagen

Die Konstanten 1 , 2 , . . . , n heien sukzessive Minima (des


Gitters) und 1 entspricht dem k
urzesten Vektor (im Gitter).

1
2
~0

Folgerung
Sei L ein Gitter, so gilt: 1 <

p
n
det(L) .
28

Master-Kolloquium

Grundlagen

Gram-Schmidt Orthogonalisierung
Satz
Die Basisvektoren ~b1 , ~b2 , . . . , ~bn Rm des Gitters L(~b1 , ~b2 , . . . , ~bn )
konnen durch
~oi = ~bi

i1
X

p~oj (~bi ) , p~oj (~bi ) =

j=1

h~bi , ~oj i
~oj und i {1, 2, . . . , n},
h~oj , ~oj i

in eine Orthogonalbasis ~o1 , ~o2 , . . . , ~on (von Rm ) transformiert


werden.
Beweis.
(siehe bel. Lineare Algebra-Buch)
29

Master-Kolloquium

Berechnungsprobleme in Gittern

Berechnungsprobleme in Gittern

30

Master-Kolloquium

Berechnungsprobleme in Gittern

Effiziente Gitterprobleme - u. a.:


MEMBERSHIP
LENGTH
DISTANCE

~b 0
2

~b 0
1

~b2

~0

~b1

31

Master-Kolloquium

Berechnungsprobleme in Gittern

Das Closest Vector Problem (CVP)


Gegegeben: Basis B Qmn mit m n, Vektor ~q span(B).
Gesucht: Vektor ~v L, sodass k~q ~v k minimal.

~b2

~q
~b1

~v

~0

Im allgemeinen Fall ein schwieriges Problem.

32

Master-Kolloquium

Berechnungsprobleme in Gittern

CVP-Approximation

1
2
3
4
5

Eingabe : Basis B Qmn mit m n und Vektor ~q span(B).


Ausgabe : Gittervektor ~v L.
Berechne r1 , r2 , . . . , rn R, sodass ~q = r1~b1 + r2~b2 + + rn~bn .
~v ~0
for i = 1, 2, . . . , n do
~v ~v + bri e ~bi
end for

33

Master-Kolloquium

Berechnungsprobleme in Gittern

Babais ROUNDING OFF PROCEDURE

~q

~v

~b2
~0

~b1

34

Master-Kolloquium

Berechnungsprobleme in Gittern

Babais ROUNDING OFF PROCEDURE

~v

~q
~b 0
2

~b 0
1

~0

35

Master-Kolloquium

Berechnungsprobleme in Gittern

Das Shortest Vector Problem (SVP)


Gegegeben: Basis B Qmn mit m n.
Gesucht: Vektor ~v L, sodass k~v k = 1 .

~b2

~b1

~v
1
~0

Im allgemeinen Fall auch ein schwieriges Problem.

36

Master-Kolloquium

Berechnungsprobleme in Gittern

SVP-Approximation
Idee: lange nichtorthogonale Basisvektoren
kurze orthogonale Basisvektoren.
Langenreduziertheit
Basisvektoren ~b1 , ~b2 , . . . , ~bn , Gram-Schmidt Basisvektoren
~o1 , ~o2 , . . . , ~on und 0 < j < i n:


h~b , ~o i 1
i j


h~oj , ~oj i 2
. . . aquivalent zu . . .
k~bi k k~bi ~oj k
37

Master-Kolloquium

Berechnungsprobleme in Gittern

Langenreduktion

Eingabe : Basisvektoren ~b1 , ~b2 , . . . , ~bn Qm und Gram-Schmidt


Basisvektoren ~o1 , ~o2 , . . . , ~on Qm
Ausgabe : Langenreduzierte Basis ~b10 , ~b20 , . . . , ~bn0 Qm
1
2
3
4
5

for i = 2, 3, . . . , n do
for j = (i 1),(i 2),
 . . . , 1 do
~bi ~bi

h~bi ,~oj i
h~oj ,~oj i

~bj

end for
end for

38

Master-Kolloquium

Berechnungsprobleme in Gittern

SVP-Approximation
Idee: Erweiterung der Langenreduziertheit um eine
Langenbegrenzung.
LLL-Reduziertheit . . .
. . . enthalt neben Langenreduziertheit noch:

2


h~bi , ~oi1 i
3


~oi1 k~oi1 k2
~oi +


h~oi1 , ~oi1 i
4
. . . aquivalent zu . . .

3
k~oi k2
4

h~bi , ~oi1 i
h~oi1 , ~oi1 i

!2
k~oi1 k2

39

Master-Kolloquium

Berechnungsprobleme in Gittern

1
2
3
4
5
6
7
8
9
10
11
12
13

Eingabe : Basisvektoren ~b1 , ~b2 , . . . , ~bn Qm .


Ausgabe : LLL-reduzierte Basisvektoren ~b10 , ~b20 , . . . , ~bn0 Qm .
i 2
~o1 ~b1
while i n do
for j = (i 1), (i 2), . . . , 1 do
j
m
~bi = ~bi h~bi , ~oj i/h~oj , ~oj i ~bj
end for

2


if ~oi + h~bi , ~oi1 i/h~oi1 , ~oi1 i~oi1 43 k~oi1 k2 then
i i +1
else
tausche ~bi1 mit ~bi
i max(i 1, 2)
end if
end while

40

Master-Kolloquium

Berechnungsprobleme in Gittern

Einbettungstechnik (CVPn SVPn+1 )


~b1

~q
~e

~0

~b2

~v

~e

~b1

~q

41

Master-Kolloquium

Komplexit
at der Gitterprobleme

Komplexitat der Gitterprobleme

42

Master-Kolloquium

Komplexit
at der Gitterprobleme

Komplexitatstheoretische Analyse (Zusammenfassung)


Komplexitatstheoretische Ergebnisse (u. a.):
CVP ist NP-hart
SVP ist NP-hart (offen f
ur beliebige Norm)
SVP ist NP-hart (unter randomisierten Reduktionen)
Miklos Ajtai hat 1996 folgende Reduktion gezeigt:
Satz
Sei m, n, q N mit n log(q) < m < 2nq 4 und q O(nc ), wobei
c > 0 eine Konstante ist, dann erzeugt die Menge {~v : M~v 0
mod q}, wobei M Zqnm mit m n eine bestimmte Klasse von
Gittern L(B), in denen SIVPnp(n) pt 1SVPm mit (n) O(nd ),
wobei d eine Konstante ist, gilt.
43

Master-Kolloquium

Gitterbasierte Kryptografieverfahren

Gitterbasierte Kryptografieverfahren

44

Master-Kolloquium

Gitterbasierte Kryptografieverfahren

GGH-Kryptografieverfahren

~0

45

Master-Kolloquium

Gitterbasierte Kryptografieverfahren

GGH-Kryptografieverfahren

~b1
~0

~b2

46

Master-Kolloquium

Gitterbasierte Kryptografieverfahren

GGH-Kryptografieverfahren

~b 0
2

~b 0
1

~b1
~0

~b2

47

Master-Kolloquium

Gitterbasierte Kryptografieverfahren

GGH-Kryptografieverfahren

~b 0
2

~b 0
1
~v

~b1
~0

~b2

48

Master-Kolloquium

Gitterbasierte Kryptografieverfahren

GGH-Kryptografieverfahren

~b 0
2

~b 0
1
~r
~v

~b1
~0

~b2

49

Master-Kolloquium

Gitterbasierte Kryptografieverfahren

GGH-Kryptografieverfahren

~b 0
2

~b 0
1
~r
~v

~b1
~0

~b2

50

Master-Kolloquium

Gitterbasierte Kryptografieverfahren

GGH-Kryptografieverfahren

~b 0
2

~b 0
1
~v

~r ~q

~b1
~0

~b2

51

Master-Kolloquium

Gitterbasierte Kryptografieverfahren

GGH-Signaturverfahren

~0

52

Master-Kolloquium

Gitterbasierte Kryptografieverfahren

GGH-Signaturverfahren

~0

53

Master-Kolloquium

Gitterbasierte Kryptografieverfahren

GGH-Signaturverfahren

~0

54

Master-Kolloquium

Gitterbasierte Kryptografieverfahren

GGH-Signaturverfahren

~0

55

Master-Kolloquium

Gitterbasierte Kryptografieverfahren

GGH-Signaturverfahren

~0

56

Master-Kolloquium

Gitterbasierte Kryptografieverfahren

Idee: honest-verifier perfect zero-knowledge interactive proof system


Sei (B, ~q , d) eine Instanz von GapCVP(n) mit B Qmn ,
~q span(B), d Q und ~
w L(B) : k~
w ~q k > (n) d.
ZK-Protokoll
1

Verifier wahlt zufallig ein {0, 1}, einen zufalligen


Gittervektor ~v L(B) in einer sehr groen Kugel und

gleichverteilt zufallig einen Fehlervektor ~r (innerhalb einer


Kugel mit Radius (n)d
v + ~q + ~r an den
2 ). Sendet x =def ~
Prover.

Prover antwortet mit = 0, wenn


~
w L(B) : k~
w ~x k < k(~
w + ~v ) ~x k, sonst mit = 1.

Verifier akzeptiert, gdw. = .


57

Master-Kolloquium

Fazit

Fazit

58

Master-Kolloquium

Fazit

Interessanter Post-Quantum Kandidat


Eigenschaft der beweisbaren Sicherheit einzigartig

Heute: Komplexere Gitter - NTRU (Zyklische Gitter) und


LWE (Ideale Gitter) - die (nicht offensichtlich) Gitter als
Grundlage verwenden
(Noch) viele offene Fragen bzgl. Komplexitat von
Gitterproblemen und im Besonderen der Gitterbasisreduktion

59

Master-Kolloquium

Vielen Dank fur die Aufmerksamkeit.

60

Das könnte Ihnen auch gefallen