Gaussian Sampling in Lattice-Based Cryptography
Résumé
Although rather recent, lattice-based cryptography has stood out on numerous
points, be it by the variety of constructions that it allows, by its expected resistance
to quantum computers, of by its efficiency when instantiated on some classes of
lattices.
One of the most powerful tools of lattice-based cryptography is Gaussian sampling.
At a high level, it allows to prove the knowledge of a particular lattice basis without
disclosing any information about this basis. It allows to realize a wide array of
cryptosystems. Somewhat surprisingly, few practical instantiations of such schemes
are realized, and the algorithms which perform Gaussian sampling are seldom studied.
The goal of this thesis is to fill the gap between the theory and practice of
Gaussian sampling. First, we study and improve the existing algorithms, by both
a statistical analysis and a geometrical approach. We then exploit the structures
underlying many classes of lattices and apply the ideas of the fast Fourier transform
to a Gaussian sampler, allowing us to reach a quasilinear complexity instead of
quadratic.
Finally, we use Gaussian sampling in practice to instantiate a signature scheme
and an identity-based encryption scheme. The first one yields signatures that are
the most compact currently obtained in lattice-based cryptography, and the second
one allows encryption and decryption that are about one thousand times faster than
those obtained with a pairing-based counterpart on elliptic curves.
Bien que relativement récente, la cryptographie à base de réseaux euclidiens
s’est distinguée sur de nombreux points, que ce soit par la richesse des constructions
qu’elle permet, par sa résistance supposée à l’avènement des ordinateurs quantiques
ou par la rapidité dont elle fait preuve lorsqu’instanciée sur certaines classes de
réseaux.
Un des outils les plus puissants de la cryptographie sur les réseaux est le Gaussian
sampling. À très haut niveau, il permet de prouver qu’on connaît une base particulière
d’un réseau, et ce sans dévoiler la moindre information sur cette base. Il permet de
réaliser une grande variété de cryptosystèmes. De manière quelque peu surprenante,
on dispose de peu d’instanciations pratiques de ces schémas cryptographiques, et les
algorithmes permettant d’effectuer du Gaussian sampling sont peu étudiés.
Le but de cette thèse est de combler le fossé qui existe entre la théorie et la
pratique du Gaussian sampling. Dans un premier temps, nous étudions et améliorons
les algorithmes existants, à la fois par une analyse statistique et une approche
géométrique. Puis nous exploitons les structures sous-tendant de nombreuses classes
de réseaux, ce qui nous permet d’appliquer à un algorithme de Gaussian sampling les
idées de la transformée de Fourier rapide, passant ainsi d’une complexité quadratique
à quasilinéaire.
Enfin, nous utilisons le Gaussian sampling en pratique et instancions un schéma
de signature et un schéma de chiffrement basé sur l’identité. Le premier fournit des
signatures qui sont les plus compactes obtenues avec les réseaux à l’heure actuelle,
et le deuxième permet de chiffrer et de déchiffrer à une vitesse près de mille fois
supérieure à celle obtenue en utilisant un schéma à base de couplages sur les courbes
elliptiques.
Domaines
Cryptographie et sécurité [cs.CR]
Loading...