Cryptography Reference
In-Depth Information
2 . Note that the
Algorithm 22 gives the Lagrange-Gauss algorithm for lattices in
Z
computation of µ is as an exact value in
Q
. All other arithmetic is exact integer arithmetic.
Lemma 17.1.5 Algorithm 22 terminates and outputs a Lagrange-Gauss reduced basis for
the lattice L.
Exercise 17.1.6 Prove Lemma 17.1.5 .
Example 17.1.7 We run the Lagrange-Gauss algorithm on b 1 =
(1 , 5) and b 2 =
(6 , 21).
In the first step, µ
=
111 / 26
4 . 27 and so we update b 2 =
b 2
4 b 1 =
(2 , 1). We then
swap b 1 and b 2 so that the values in the loop are now b 1 =
(2 , 1) and b 2 =
(1 , 5). This time,
µ
=
7 / 5
=
1 . 4 and so we set b 2 =
b 2
b 1 =
(
1 , 4). Since
b 2
>
b 1
the algorithm
halts and outputs
{
(2 , 1) , (
1 , 4)
}
.
Algorithm 22 Lagrange-Gauss lattice basis reduction
INPUT: Basis b 1 , b 2 ∈ Z
2 for a lattice L
OUTPUT: Basis ( b 1 , b 2 )for L such that
b i =
λ i
2
1: B 1 =
b 1
2: µ
=
b 1 , b 2
/B 1
3: b 2 =
b 2
µ
b 1
4: B 2 =
2
5: while B 2 <B 1 do
6:
b 2
Swap b 1 and b 2
B 1 =
B 2
7:
µ
=
b 1 , b 2
/B 1
8:
b 2 =
b 2
µ
b 1
9:
2
B 2 =
b 2
10:
11: end while
12: return ( b 1 , b 2 )
Exercise 17.1.8 Run the Lagrange-Gauss reduction algorithm on the basis
{
(3 , 8) , (5 , 14)
}
.
Lemma 17.1.9 Let b 1 , b 2 be the initial vectors in an iteration of the Lagrange-Gauss
algorithm and suppose b 1 =
m b 1 and b 2 =
b 2
b 1 are the vectors that will be considered
b 1
2 <
2 / 3 , except perhaps for the last two
in the next step of the algorithm. Then
b 1
iterations.
Proof Note that m
=
µ
=
b 1 , b 2
/
b 1 , b 1 =
b 1 , b 2
/
b 1 , b 1 +
where
|
|≤
1 / 2.
Hence
b 1 , b 2
b 1 =−
b 1 , b 1 =
2 .
b 1 , b 2
/
b 1 , b 1 +
b 1 , b 1 =−
b 1
 
Search WWH ::




Custom Search