Learning with errors (LWE) ist ein Problem aus dem Bereich der Kryptographie, das in verschiedenen kryptographischen Anwendungen eingesetzt wird. Es wurde erstmals von Oded Regev im Jahr 2005 eingeführt. Regev wurde 2018 für seine Arbeit zum LWE-Problem und zur gitterbasierten Kryptographie mit dem Gödel-Preis ausgezeichnet.
Das LWE-Problem bezieht sich auf die Schwierigkeit, aus linearen Gleichungen mit additivem Zufallsfehler einen unbekannten Geheimvektor zu rekonstruieren.
Im Detail: Angenommen, wir haben eine Matrix und einen Vektor , der durch Multiplikation von mit einem unbekannten Vektor und der Addition eines Fehlervektors entstanden ist. Die Aufgabe besteht nun darin, den Vektor aus und zu rekonstruieren. Es ergibt sich also folgende Gleichung:
Alle Operationen werden im Körper mit Primzahl durchgeführt, also im Restklassenring modulo . Demnach gilt also und sowie mit .
Die Matrix-Vektor-Gleichung kann auch als ein lineares Gleichungssystem betrachtet werden. sei hierzu die Dimension des Geheimvektors und die Anzahl der Gleichungen bzw. die Dimension der Vektoren und . Die -Matrix bestehe aus den Zeilenvektoren :
Wäre bekannt, dass der Nullvektor ist, könnte das Gleichungssystem aus vielen Gleichungen in Polynomialzeit mit einem Verfahren wie dem Gauß-Verfahren effizient gelöst werden, um zu erhalten. Durch die Addition des Fehlervektors wird das Problem aber deutlich schwerer; bekannte Algorithmen zur Lösung laufen in Exponentialzeit .
Für ein konkretes Learning-with-errors-Problem mit einer Primzahl und einer Wahrscheinlichkeitsverteilung werden die Vektoren zufällig unabhängig gleichverteilt aus ausgewählt und die Fehlerterme werden zufällig unabhängig nach der Wahrscheinlichkeitsverteilung , typischerweise einer diskreten Gaußverteilung, ausgewählt.
Das LWE-Problem wird in der Kryptographie in verschiedenen Verfahren eingesetzt, insbesondere für die Konstruktion von Verschlüsselungs- und Signaturverfahren. Der Grund dafür liegt in der Annahme, dass das LWE-Problem schwer genug ist, um als Basis für kryptographische Verfahren genutzt zu werden, aber gleichzeitig effizient genug, um in der Praxis eingesetzt zu werden.
Ein bekanntes Anwendungsgebiet von LWE ist die Entwicklung von Public-Key-Kryptographie-Systemen, wie z. B. den „Learning with Errors Key Exchange“ (LWE-KEX) oder „Learning with Errors Encryption“ (LWE-E). Diese Verfahren sind besonders interessant, da sie im Gegensatz zu traditionellen Public-Key-Kryptographie-Systemen wie RSA oder Diffie-Hellman nicht auf der Faktorisierung großer Zahlen oder dem diskreten Logarithmusproblem basieren. Für LWE-basierte Verfahren sind bislang keine effizienten Quantenalgorithmen bekannt, im Gegensatz zu RSA oder Diffie-Hellman, die durch den Shor-Algorithmus gebrochen werden können.
LWE ist ein vielversprechendes Konzept und ein aktiver Forschungsbereich in der Kryptographie. In der Praxis wird LWE bereits in verschiedenen Anwendungen eingesetzt, etwa innerhalb des Bereichs der Post-Quanten-Kryptographie und als Basis für sichere Datenübertragung.
Im Rahmen der Post-Quanten-Kryptographie-Standardisierung des NIST wurden 2024 das Schlüsselkapselungsverfahren CRYSTALS-Kyber und das digitale Signaturverfahren CRYSTALS-Dilithium standardisiert. Beide Verfahren basieren auf dem mit LWE verwandten Problem Module Learning with errors (M-LWE).
Regev beschreibt 2009 bereits ein Learning-with-errors-basiertes Public-Key-Kryptosystem, bei dem ein privater und ein öffentlicher Schlüssel generiert werden, um dann zu ver- und entschlüsseln. Dabei dient als Sicherheitsparameter, der die Dimension des Geheimvektors und damit das Sicherheitsniveau des Systems bestimmt. Davon abhängig wird



LPN kann als Spezialfall von LWE mit und einer Bernoulli-verteilten Fehlerkomponente aufgefasst werden, wobei ein Fehlerterm mit Wahrscheinlichkeit gleich ist.
Ring-LWE ist eine Variante von LWE, die statt mit Vektoren über mit Polynomen über einem geeigneten Polynomring arbeitet.
Module-LWE ist eine Variante von LWE und eine Verallgemeinerung von Ring-LWE. Statt einzelner Polynomringe werden Modulstrukturen verwendet. Ein Modul ist wiederum eine algebraische Struktur, die Ringe und Vektorräume generalisiert.

Gegeben sei ein Gitter und ein Zielpunkt. Es soll der Gitterpunkt gefunden werden, der am nächsten am Zielpunkt liegt. (Siehe Abbildung)
Man kann die Gleichung des LWE-Problems
in diesem Kontext wie folgt betrachten: Die Matrix enthält die Basisvektoren eines Gitters als Zeilen. beschreibt einen Gitterpunkt als die Linearkombination der Basisvektoren mit den Koeffizienten aus . ist der Zielpunkt, der nahe an einem Gitterpunkt liegt. Mit LWE soll der Vektor gefunden werden, der durch Linearkombination der Basisvektoren den zu nächsten Gitterpunkt ergibt.