23.2 Lattice Reduction

23.2.1 Two-Dimensional Lattices

Let v1, v2 form the basis of a two-dimensional lattice. Our first goal is to replace this basis with what will be called a reduced basis.

If v1>v2, then swap v1 and v2, so we may assume that v1v2. Ideally, we would like to replace v2 with a vector v2 perpendicular to v1. As in the Gram-Schmidt process from linear algebra, the vector

v2=v2v1v2v1v1v1(23.1)

is perpendicular to v1. But this vector might not lie in the lattice. Instead, let t be the closest integer to (v1v2)/(v1v1) (for definiteness, take 0 to be the closest integer to ±12, and ±1 to be closest to ±32, etc.). Then we replace the basis {v1, v2} with the basis

{v1, v2tv1}.

We then repeat the process with this new ...

Get Introduction to Cryptography with Coding Theory, 3rd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.