5 questions to test your understanding
Classical cryptography (RSA, DH) relies on average-case hardness assumptions that have no connection to worst-case complexity. Lattice cryptography has worst-case to average-case reductions. Why is this a significant theoretical advantage?
The Shortest Vector Problem (SVP) asks for the shortest nonzero vector in a lattice. The best known algorithms for exact SVP run in time 2^{O(n)}, while the best approximation algorithms achieve factors of 2^{O(n log log n / log n)}. What does this imply for parameter selection in lattice crypto?
The Short Integer Solution (SIS) problem asks: given a random matrix A in Z_q^{n x m}, find a short nonzero vector x such that Ax = 0 mod q. This is the basis for lattice-based hash functions and signatures.
All NIST post-quantum standards are based on lattice problems. Why did lattices dominate over code-based, multivariate, and isogeny-based alternatives?
A lattice in R^n is generated by a 'good' basis (short, nearly orthogonal vectors) or a 'bad' basis (long, nearly parallel vectors). Both generate the same lattice. Why is the gap between good and bad bases useful for cryptography?