0Pricing
Cryptology Academy · บทเรียน

Learning With Errors: ปัญหาที่ยากต่อการแก้

ทำความเข้าใจปัญหา LWE และ SIS สมมติฐานด้านความยากของปัญหาเหล่านี้ และเหตุผลที่ต้านทานการโจมตีด้วยควอนตัม

Learning With Errors: ปัญหาที่ยากต่อการแก้ เป็นบทเรียน Cryptology Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Cryptology Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Cryptology Academy มีบทเรียนทั้งหมด 4 บทเรียน

นิยามปัญหา LWE

ปัญหาการเรียนรู้ที่มีความผิดพลาด (LWE) ถูกนำเสนอโดย Oded Regev ในปี 2005 เพื่อเป็นรากฐานของการเข้ารหัสลับหลังยุคควอนตัม เมื่อกำหนดเมทริกซ์สุ่ม A เหนือ Z_q และเวกเตอร์ b = As + e เป้าหมายคือการค้นหาเวกเตอร์ลับ s เวกเตอร์ e คือความผิดพลาดขนาดเล็กที่สุ่มจากการแจกแจงแบบเกาส์เซียนไม่ต่อเนื่อง ทำให้ปัญหานี้แก้ได้ยากในทางคำนวณ

โครงสร้างเมทริกซ์ LWE

ในปัญหา LWE, A คือเมทริกซ์สุ่มขนาด m x n ที่สุ่มอย่างสม่ำเสมอเหนือ Z_q โดย q เป็นมอดูลัสจำนวนเฉพาะ s เป็นเวกเตอร์มิติ n และ e เป็นเวกเตอร์ความผิดพลาดขนาดเล็ก ซึ่งสมาชิกแต่ละตัวสุ่มมาจากการแจกแจงแบบเกาส์เซียนที่มีช่วงแคบ แม้ผู้โจมตีจะทราบโครงสร้างของ A ก็ยังไม่สามารถใช้ข้อมูลนั้นแยกแยะ b ออกจากเวกเตอร์สุ่มแบบสม่ำเสมอได้

LWE แบบตัดสินใจเทียบกับแบบค้นหา

LWE มีการกำหนดรูปแบบมาตรฐานอยู่สองแบบ LWE แบบค้นหาคือการกู้คืนค่าลับ s เมื่อได้รับตัวอย่างจำนวนมาก (A, b) ส่วน LWE แบบตัดสินใจคือการแยกแยะตัวอย่าง (A, As + e) ออกจากคู่สุ่มแบบสม่ำเสมอ (A, u) รูปแบบทั้งสองมีความเทียบเท่ากันในเวลาเชิงพหุนาม กล่าวคือ อัลกอริทึมที่แก้รูปแบบหนึ่งได้สามารถแปลงให้แก้อีกรูปแบบหนึ่งได้

การแจกแจงความผิดพลาดแบบเกาส์เซียนไม่ต่อเนื่อง

พจน์ความผิดพลาดใน LWE สุ่มมาจากการแจกแจงแบบเกาส์เซียนไม่ต่อเนื่องบนจำนวนเต็ม โดยกำหนดพารามิเตอร์ด้วยส่วนเบี่ยงเบนมาตรฐาน sigma ค่า sigma ที่มีขนาดเล็กทำให้ e มีขนาดสั้นเมื่อเทียบกับ q และทำให้ b ดูเกือบเหมือน As mod q หาก sigma เป็นศูนย์ก็จะไม่มีความผิดพลาด และระบบจะแก้ได้ด้วยการกำจัดแบบเกาส์เซียน ดังนั้นความผิดพลาดจึงเป็นองค์ประกอบสำคัญที่ทำให้ปัญหานี้ยาก

การลดรูปจากกรณีเลวร้ายที่สุดเป็นกรณีเฉลี่ย

Regev พิสูจน์การลดรูปที่น่าทึ่งไว้ว่า การแก้ตัวอย่าง LWE ในกรณีเฉลี่ยนั้นยากอย่างน้อยเท่ากับการแก้ตัวอย่างปัญหาเวกเตอร์สั้นที่สุด (SVP) ในกรณีเลวร้ายที่สุดบนแลตทิซ ซึ่งหมายความว่า หากคุณทำลาย LWE ได้อย่างมีประสิทธิภาพ คุณก็จะแก้ปัญหาแลตทิซใด ๆ ได้อย่างมีประสิทธิภาพเช่นกัน ยังไม่มีอัลกอริทึมแบบคลาสสิกหรือแบบควอนตัมที่รู้จักซึ่งสามารถแก้ SVP ในกรณีเลวร้ายที่สุดได้ภายในเวลาเชิงพหุนาม

ความทนทานต่อควอนตัมของ LWE

ต่างจาก RSA และการเข้ารหัสด้วยเส้นโค้งวงรี ยังไม่มีอัลกอริทึมควอนตัมที่รู้จักซึ่งให้การเร่งความเร็วแบบเลขชี้กำลังต่อ LWE อัลกอริทึมของ Grover ให้การเร่งความเร็วได้มากที่สุดในระดับกำลังสอง และอัลกอริทึมควอนตัมด้านแลตทิซที่ดีที่สุด (รูปแบบต่าง ๆ ของ BKZ) ก็ไม่สามารถทำลาย LWE ได้เมื่อเลือกพารามิเตอร์อย่างเหมาะสม จึงทำให้ LWE เป็นรากฐานที่แข็งแกร่งสำหรับความมั่นคงปลอดภัยหลังยุคควอนตัม

พารามิเตอร์ความมั่นคงปลอดภัยของ LWE

ความมั่นคงปลอดภัยของ LWE ขึ้นอยู่กับพารามิเตอร์สามตัว ได้แก่ มิติ n (ความยาวของค่าลับ) มอดูลัส q และส่วนเบี่ยงเบนมาตรฐานของความผิดพลาด sigma ค่า n ที่ใหญ่ขึ้นและอัตราส่วน q/sigma ที่เล็กลงจะเพิ่มความมั่นคงปลอดภัย สำหรับความมั่นคงปลอดภัยหลังยุคควอนตัมระดับ 128 บิต ค่าที่ใช้โดยทั่วไปคือ n = 1024, q ประมาณ 12289 และ sigma ประมาณ 3.2 เครื่องมือประเมินแลตทิซของ Albrecht และคณะใช้สำหรับประเมินความมั่นคงปลอดภัยในเชิงรูปธรรม

ปัญหา SIS

ปัญหาคำตอบจำนวนเต็มสั้น (SIS) เป็นสมมติฐานความยากบนแลตทิซที่เกี่ยวข้องกัน ซึ่งใช้สำหรับลายเซ็น เมื่อกำหนดเมทริกซ์สุ่ม A เหนือ Z_q ให้ค้นหาเวกเตอร์ x ที่ไม่เป็นศูนย์และมีขนาดสั้น ซึ่งเป็นไปตาม Ax = 0 mod q SIS เป็นพื้นฐานของฟังก์ชันแฮชและโครงร่างลายเซ็นในโลกของแลตทิซ และทำงานเสริมกับ LWE ซึ่งเป็นพื้นฐานของการเข้ารหัสและการห่อหุ้มกุญแจ

โครงร่างการเข้ารหัสที่อาศัย LWE

โครงร่างการเข้ารหัส LWE แบบง่ายทำงานดังนี้ กุญแจสาธารณะคือ (A, b = As + e) และกุญแจลับคือ s ในการเข้ารหัสบิต m ผู้ส่งจะคำนวณ (u, v) = (A^T r, b^T r + m * floor(q/2)) โดยใช้เวกเตอร์ไบนารีสุ่ม r การถอดรหัสจะคำนวณ v - s^T u แล้วปัดค่าเพื่อกู้คืน m โครงร่างนี้มีความมั่นคงปลอดภัยแบบ IND-CPA ภายใต้สมมติฐาน LWE

การประยุกต์ใช้ที่สร้างบน LWE

LWE ทำให้เกิดโครงสร้างการเข้ารหัสลับหลากหลายรูปแบบ นอกเหนือจากการเข้ารหัสพื้นฐาน ซึ่งรวมถึงการเข้ารหัสแบบโฮโมมอร์ฟิกอย่างสมบูรณ์ (FHE) การเข้ารหัสตามเอกลักษณ์ (IBE) การเข้ารหัสตามแอตทริบิวต์ (ABE) และโปรโตคอลแลกเปลี่ยนกุญแจ CRYSTALS-Kyber (ปัจจุบันคือ ML-KEM และกำหนดมาตรฐานเป็น FIPS 203) เป็นโครงร่างที่อาศัย LWE ซึ่งถูกนำไปใช้งานจริงมากที่สุด

LWE ในการใช้งานจริง

การเข้ารหัสลับที่อาศัย LWE กำลังเข้าสู่ระบบที่ใช้งานจริงอยู่แล้ว Google และ Cloudflare ได้ทดลองใช้ TLS โดยใช้ Kyber ในช่วงปี 2018-2020 Chrome และ Firefox เพิ่มการรองรับ ML-KEM-768 ในการจับคู่ TLS แบบผสมในปี 2024 โปรโตคอล Signal เพิ่มชั้นการป้องกันหลังยุคควอนตัม (PQXDH) โดยใช้ ML-KEM-1024 เพื่อรักษาความลับไปข้างหน้า และปกป้องความลับของข้อความระยะยาวจากคอมพิวเตอร์ควอนตัมในอนาคต

ตรวจสอบความยากของ LWE

ข้อความใดอธิบายหลักประกันด้านความยากของปัญหา LWE ได้ดีที่สุด

ประเด็นสำคัญของ LWE

LWE เป็นหนึ่งในสมมติฐานความยากหลังยุคควอนตัมที่ได้รับการศึกษามากที่สุด โดยมีการลดรูปจากปัญหาแลตทิซในกรณีเลวร้ายที่สุดที่แข็งแกร่ง พารามิเตอร์สามตัวของ LWE (n, q, sigma) ควบคุมสมดุลระหว่างความมั่นคงปลอดภัยกับประสิทธิภาพ LWE ทนทานต่อการโจมตีด้วยควอนตัมและเป็นพื้นฐานของโครงร่างที่ NIST กำหนดมาตรฐานไว้ การทำความเข้าใจ LWE เป็นประตูสู่การเข้ารหัสลับบนแลตทิซสมัยใหม่ทั้งหมด รวมถึง ML-KEM และ ML-DSA

คำถามที่พบบ่อย

บทเรียน “Learning With Errors: ปัญหาที่ยากต่อการแก้” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “Learning With Errors: ปัญหาที่ยากต่อการแก้” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Cryptology Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Cryptology Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “Learning With Errors: ปัญหาที่ยากต่อการแก้”

ทำความเข้าใจปัญหา LWE และ SIS สมมติฐานด้านความยากของปัญหาเหล่านี้ และเหตุผลที่ต้านทานการโจมตีด้วยควอนตัม คุณปฏิบัติ Cryptology Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Cryptology Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Cryptology Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน

บทเรียน “Learning With Errors: ปัญหาที่ยากต่อการแก้” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Cryptology Academy นี้ได้ไหม

ได้ บทเรียน Cryptology Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. Learning With Errors: ปัญหาที่ยากต่อการแก้
  2. NTRU: ประวัติ การออกแบบ และความปลอดภัย
  3. Ring-LWE และโครงสร้างแลตทิซแบบโมดูลาร์
  4. การพิสูจน์ความปลอดภัยและการลดรูปในโครงสร้างแลตทิซ
← กลับไปที่ Cryptology Academy