I had some questions regarding the basics of lattice-based cryptography I was hoping someone could answer:
- What are the advantages of using a parallelepiped vs a grid?
Does a parallelepiped grant us something that a standard grid does not?
I only ask as I never see anyone use a standard grid when discussing lattice-based cryptographic scheme.
- What minimum lattice-size (X * Y) must we use in order to ensure a secure implementation?
In other words, must our lattice / grid be 100 x 100 in order to be secure, or must we use a larger lattice / grid (ex 1000 x 1000 or 10,000 x 10,000)?
How do we determine the length of our shortest vector?
How do we determine the lengths of our basis vectors?
Can the origin of our shortest vector be located anywhere on the lattice / grid, or are certain places less secure than others?
In other words, would placing the origin of our shortest vector at the origin of our lattice be more or less secure than placing the origin of our shortest vector at some other location?
- What is the most secure way to choosing the random point, used in the CVP (Closest Vector Problem) lattice-based cryptographic scheme?
In other words, would choosing the random point at the origin of our lattice / grid be more or less secure than choosing some other location on our lattice / grid?