Podstawa Learning With Errors (LWE)
Zrozumieć trudny problem LWE, na którym opierają się schematy HE
Podstawa Learning With Errors (LWE) to bezpłatna lekcja Cryptology Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Cryptology Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Cryptology Academy zawiera 4 lekcji w sumie.
Intuicja dotycząca trudnego problemu
Learning With Errors (LWE) autorstwa Regeva (2005): mając wiele zaszumionych równań liniowych nad Z_q, należy znaleźć tajny wektor s. Szum e jest niewielki, ale uniemożliwia eliminację Gaussa. Bez szumu układ jest łatwy do rozwiązania; nawet przy minimalnym szumie staje się obliczeniowo trudny.
Definicja LWE
Tajny wektor s ∈ Z_q^n. Przeciwnik otrzymuje próbki (a_i, b_i), gdzie a_i ∈ Z_q^n jest losowe, a b_i =
Dlaczego szum jest niezbędny
Bez szumu: b_i =
Trudność LWE
Regev udowodnił, że LWE redukuje się do problemów kratowych w najgorszym przypadku (SIVP, GapSVP) za pomocą redukcji kwantowej. Oznacza to, że jeśli LWE zostanie złamane, rozwiązanych zostanie wiele trudnych problemów kratowych — jednak nie jest znany żaden algorytm kwantowy dla problemów kratowych. LWE jest bezpieczne postkwantowo.
Ring-LWE (RLWE)
RLWE zastępuje Z_q^n pierścieniem Z_q[x]/(f(x)) dla wielomianu cyklotomicznego f. Jedna próbka RLWE koduje n równań, co zapewnia znacznie większą wydajność. RLWE stanowi podstawę Kyber (KEM), Dilithium (podpis) oraz schematów HE BFV/BGV/CKKS.
Parametry LWE
Bezpieczeństwo zależy od: n (wymiar, zazwyczaj 512–2048), q (moduł, 1024–2^60), σ (odchylenie standardowe szumu). Większe n oraz mniejszy stosunek σ/q oznaczają większą trudność. Standardy postkwantowe NIST wykorzystują n=256 (wymiar modułu) oraz k modułów (k=2,3,4).
Szyfrowanie LWE
Klucz publiczny: (A, b=As+e). Szyfrowanie bitu m: wybierz losowe r i oblicz szyfrogram (u=A^T r, v = b^T r + m*q/2). Odszyfrowanie: v - s^T u = e^T r + m*q/2 ≈ m*q/2. Zaokrąglij do najbliższej wartości m. Szum e sprawia, że szyfrogram ukrywa m podczas szyfrowania.
Decyzyjne LWE
Decyzyjne LWE: rozróżnienie (a, As+e) od (a, u), gdzie u jest jednostajnie losowe. Przy założeniu trudności LWE rozkłady te są obliczeniowo nierozróżnialne. Stanowi to podstawę bezpieczeństwa semantycznego — dla przeciwników bez tajnego klucza szyfrogramy wyglądają jak losowy szum.
Ataki z użyciem redukcji krat
Najlepsze znane ataki wykorzystują redukcję krat BKZ (Block Korkine-Zolotarev). Złożoność jest podwykładnicza, ale nie wielomianowa. BKZ-β wymaga 2^{0.292β} operacji. Dla LWE-512 bezpieczeństwo wynosi około 128 bitów w przypadku ataku BKZ. Nie jest znane żadne przyspieszenie kwantowe dla BKZ.
Module-LWE
Module-LWE (używane w Kyber) jest RLWE nad modułami o randze k. Zapewnia elastyczność: k=2 dla 512-bitowego poziomu bezpieczeństwa, k=3 dla 768-bitowego, k=4 dla 1024-bitowego. Bezpieczeństwo i wydajność skalują się wraz z k. NIST wybrał Kyber (przemianowany na ML-KEM) jako standard PQC.
Porównanie z RSA/ECC
Bezpieczeństwo RSA/ECC opiera się na faktoryzacji liczb całkowitych i logarytmie dyskretnym (podatnych na ataki kwantowe z użyciem algorytmu Shora). Bezpieczeństwo LWE opiera się na problemach kratowych w najgorszym przypadku (nie jest znane żadne przyspieszenie kwantowe). Rozmiary kluczy: klucze LWE mają około 1 KB, a RSA-2048 — 256 bajtów. LWE zajmuje więcej miejsca, ale jest bezpieczne w erze komputerów kwantowych.
Szybkie sprawdzenie
Co sprawia, że rozwiązanie LWE jest trudne nawet przy dużej liczbie próbek?
Podsumowanie
LWE: znalezienie tajnego s na podstawie zaszumionych równań liniowych — problem trudny dla komputerów kwantowych. RLWE wykorzystuje pierścienie wielomianów w celu zwiększenia wydajności. Stanowi podstawę Kyber, Dilithium i schematów HE. Dalej: schematy HE BGV i BFV do operacji na liczbach całkowitych.
Często zadawane pytania
Czy lekcja „Podstawa Learning With Errors (LWE)” jest bezpłatna?
Tak — pełny tekst „Podstawa Learning With Errors (LWE)” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Cryptology Academy, przejdź na CoddyKit PRO. Kurs Cryptology Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Podstawa Learning With Errors (LWE)”?
Zrozumieć trudny problem LWE, na którym opierają się schematy HE Ćwiczysz Cryptology Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Cryptology Academy?
Nie wymagamy żadnego doświadczenia. Cryptology Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.
Ile czasu zajmuje lekcja „Podstawa Learning With Errors (LWE)”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Cryptology Academy?
Tak. Każda lekcja Cryptology Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Czym jest szyfrowanie homomorficzne?
- Podstawa Learning With Errors (LWE)
- Schematy BGV i BFV do operacji na liczbach całkowitych
- CKKS do przybliżonych obliczeń i uczenia maszynowego