En 2005, Regev [1] a introduit le problème d'apprentissage avec erreurs (LWE), une généralisation du problème de parité d'apprentissage avec erreur. L'hypothèse de la dureté de ce problème pour certains choix de paramètres sous-tend désormais les preuves de sécurité pour une multitude de cryptosystèmes post-quantiques dans le domaine de la cryptographie sur réseau. Les versions "canoniques" de LWE sont décrites ci-dessous.
Préliminaires:
Soit le groupe additif de réels modulo 1, c'est-à-dire prenant des valeurs dans . Pour les entiers positifs et , un vecteur "secret" , une distribution de probabilité on , soit soit la distribution sur obtenue en choisissant uniformément à aléatoire, dessinant un terme d'erreur et sortie.
Soit la "discrétisation" de . Autrement dit, nous dessinons d'abord un échantillon partir de puis nous sortons . Ici, indique l'arrondi à la valeur intégrale la plus proche, afin que nous puissions voir comme .
Dans le cadre canonique, nous considérons que la distribution d'erreur est gaussienne. Pour tout , la fonction de densité d'une distribution de probabilité gaussienne à 1 dimension sur est donnée par . Nous écrivons comme raccourci pour la discrétisation de
Définition LWE:
Dans la version de recherche nous recevons échantillons de , que nous pouvons voir comme des équations linéaires "bruyantes" (Remarque: ):
où l'erreur dans chaque équation est tirée indépendamment d'une gaussienne discrète (centrée) de largeur . Notre objectif est de récupérer . (Notez que, sans erreur, nous pouvons résoudre ce problème avec l'élimination gaussienne, mais en présence de cette erreur, l'élimination gaussienne échoue de façon spectaculaire.)
Dans la version de décision , nous avons accès à un oracle qui renvoie des échantillons lorsqu'il est interrogé. On nous promet que les échantillons proviennent tous de ou de la distribution uniforme . Notre objectif est de distinguer ce qui est le cas.
On pense que les deux problèmes sont lorsque .
Lien avec la théorie de la complexité:
Il est connu (voir [1], [2] pour plus de détails) que LWE correspond à la résolution d'un problème de BDD (Bounded Distance Decoding) sur le double réseau d'une instance GapSVP. Un algorithme de temps polynomial pour LWE impliquerait un algorithme de temps polynomial pour approximer certains problèmes de réseau tels que SIVP et SVP dans où est un petit facteur polynomial (disons, ).
Limites algorithmiques actuelles
Lorsque pour strictement inférieur à 1/2, Arora et Ge [3] donnent un algorithme de temps sous-exponentiel pour LWE. L'idée est que, à partir de propriétés bien connues de la gaussienne, en tirant des termes d'erreur, ce petit s'inscrit dans un cadre de "bruit structuré", sauf avec une probabilité exponentiellement faible. Intuitivement dans ce cadre, chaque fois que nous aurions reçu 1 échantillon, nous recevons un bloc de échantillons avec la promesse que pas plus d'une fraction constante ne contient d'erreur. Ils utilisent cette observation pour «linéariser» le problème et énumérer l'espace d'erreur.
Supposons que nous ayons à la place un accès à un oracle . Lors d'une requête, premières requêtes pour obtenir un échantillon . Si été tiré de , alors renvoie un échantillon où représente la "direction" (ou "signe" évalué par ) du terme d'erreur . Si été tiré au hasard, alors renvoie . (Alternativement, nous pourrions considérer le cas où le bit est choisi de manière adversaire lorsque est tiré uniformément au hasard.)
Soit comme avant, sauf que maintenant pour une constante suffisamment grande , disons. (Ceci permet de garantir que l'erreur absolue dans chaque équation reste inchangée.) Définissez les problèmes d'apprentissage avec erreur signée (LWSE) et comme avant, sauf que nous avons maintenant le conseil supplémentaire pour le signe de chaque terme d'erreur.
Les deux versions de LWSE sont-elles beaucoup plus faciles que leurs homologues LWE?
Par exemple
1. Existe-t-il un algorithme de temps sous-exponentiel pour LWSE?
2. Qu'en est-il d'un algorithme polynomial basé sur, disons, une programmation linéaire?
En plus de la discussion ci-dessus, ma motivation est un intérêt à explorer les options algorithmiques pour LWE (dont nous avons actuellement relativement peu de choix). En particulier, la seule restriction connue pour fournir de bons algorithmes pour le problème est liée à l' ampleur des termes d'erreur. Ici, l'ampleur reste la même, mais la plage d'erreur dans chaque équation est désormais "monotone" d'une certaine manière. (Un dernier commentaire: je ne connais pas cette formulation du problème apparaissant dans la littérature; elle semble originale.)
Références:
[1] Regev, Oded. «On Lattices, Learning with Errors, Random Linear Codes, and Cryptography», dans JACM 2009 (à l'origine au STOC 2005) ( PDF )
[2] Regev, Oded. «Le problème de l'apprentissage avec des erreurs», sondage invité au CCC 2010 ( PDF )
[3] Arora, Sanjeev et Ge, Rong. «Nouveaux algorithmes d'apprentissage en présence d'erreurs», à ICALP 2011 ( PDF )
la source