Gitter und Kryptographie - Goethe-Universität
Gitter und Kryptographie - Goethe-Universität
Gitter und Kryptographie - Goethe-Universität
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
3.2. REDUKTIONSVERFAHREN FÜR DIE EUKLIDISCHE NORM 27<br />
Algorithmus 3.2.1 Gauß-Reduktionsverfahren für die Euklidische Norm<br />
EINGABE :<br />
<strong>Gitter</strong>basis b 1 , b 2 ∈ R n mit ‖b 1 ‖ ≤ ‖b 2 ‖<br />
WHILE |µ 2,1 | > 1 2 DO /∗ µ2,1 = b⊤ 1 b 2‖b 1‖ −2 ∗/<br />
1. b 2 := b 2 · sign(µ 2,1 ) /∗ wir erreichen µ 2,1 ≥ 0 ∗/<br />
2. b 2 := b 2 − ⌈µ 2,1 ⌋b 1<br />
3. IF ‖b 1 ‖ > ‖b 2 ‖ THEN vertausche b 1 <strong>und</strong> b 2<br />
AUSGABE : Reduzierte Basis b 1 , b 2<br />
Eine R<strong>und</strong>e der Schritte 1. 2. 3. sichert in Schritt 1. durch Vorzeichenwahl von b 2 dass<br />
µ 2,1 ≥ 0, reduziert in Schritt 2. gemäß b 2 := b 2 − ⌈µ 2,1 ⌋b 1 <strong>und</strong> vertauscht in Schritt 3. sofern<br />
nicht schon ‖b 1 ‖ ≤ ‖b 2 ‖ gilt. Nach Schritt 1. gilt stets ‖b 1 ‖ ≤ ‖b 2 ‖ <strong>und</strong> µ 2,1 ≥ 0. Die Schritte 2.<br />
3. lauten bei Vertauschung in Matrizenschreibweise<br />
[ ]<br />
−⌈µ2,1 ⌋ 1<br />
[b 1 , b 2 ] := [b 1 , b 2 ]<br />
.<br />
1 0<br />
In Schritt 3. wird bis auf die letzte R<strong>und</strong>e notwendigerweise vertauscht.<br />
Zu gegebener reduzierten Ausgabebasis b 1 , b 2 <strong>und</strong> R<strong>und</strong>enzahl k der Gauß-Reduktion identifizieren<br />
wir eine minimale Eingabebasis, welche in k R<strong>und</strong>en auf b 1 , b 2 reduziert wird. Die Minimalität<br />
der Basis bedeutet, dass ihre Vektoren minimale Länge haben. Eine solche Eingabebasis<br />
heißt eine minimale k-te Vorgängerbasis zu b 1 , b 2 .<br />
Satz 3.2.1<br />
1. Zur reduzierten Basis b 1 , b 2 <strong>und</strong> R<strong>und</strong>enzahl k ist [b 1 , b 2 ] A k minimale k-te Vorgängerbasis<br />
[ ] [ ] k−2 [ ]<br />
0 1 0 1 0 1<br />
mit A k = def .<br />
1 1 1 2 1 1<br />
2. Algorithmus 3.2.1 macht zur Eingabe b 1 , b 2 höchstens log √<br />
1+ 2<br />
(‖b 1 ‖ /λ 2 ) + 2.54 R<strong>und</strong>en.<br />
Wohlgeordnete Basis. Eine Basis b 1 , b 2 heißt wohlgeordnet wenn ‖b 1 ‖ ≤ ‖b 1 − b 2 ‖ < ‖b 2 ‖.<br />
Dies ist für die Euklidischen Norm äquivalent zu 0 < µ 2,1 ≤ 1 2 , ‖b 1‖ < ‖b 2 ‖. In Schritt 1. wird<br />
also eine wohlgeordnete Basis erzeugt, es sei denn die Basis ist schon reduziert. Offenbar gelten<br />
folgende Aussagen.<br />
Lemma 3.2.2<br />
Für jede nicht reduzierte Basis mit ‖b 1 ‖ ≤ ‖b 2 ‖ ist genau eine der Basen b 1 , ±b 2 wohlgeordnet.<br />
Lemma 3.2.3<br />
Wendet man die Schritte 2. 3. an auf zwei aquivalente Basen b 1 , b 2 <strong>und</strong> b ′ 1, b ′ 2, so bleibt die<br />
Äquivalenz erhalten.<br />
Wegen Lemma 3.2.3 gibt es zu gegebener reduzierten Basis eine minimale k-te Vorgängerbasis,<br />
bei deren Reduktion das Vorzeichen von b 2 in Schritt 1. nie verändert wird. Dies folgt aus dem<br />
Lemma, weil äquivalente Basen in der Länge der Vektoren gleich sind.<br />
Die Gauß-Reduktion mit k R<strong>und</strong>en erzeugt in Schritt 1. eine Folge wohlgeordneter Basen<br />
(b k+1 , b k+2 ), (b k , b k+1 ), . . . , (b 2 , b 3 ) <strong>und</strong> schließlich die reduzierte Basis (b 1 , b 2 ). Bleibt das Vor-