บทความโลดโผนเช่น นี้ เกี่ยวกับคอมพิวเตอร์ควอนตัมแม้ในปี 2016 สร้างความไม่แน่นอนด้านความปลอดภัยของข้อมูลในกรณีที่คอมพิวเตอร์ควอนตัมมีพลังงานเพียงพอ บทความนี้จะพยายามให้ความกระจ่างเกี่ยวกับสถานการณ์
คอมพิวเตอร์ควอนตัมคืออะไร?
การคำนวณควอนตัมเป็นการนำหลักการกลศาสตร์ควอนตัมมาประยุกต์ใช้ในการคำนวณ โดยเฉพาะอย่างยิ่ง การคำนวณควอนตัมใช้ประโยชน์จากสถานะควอนตัมของอนุภาคย่อยของอะตอม เช่น การซ้อนและการพัวพันเพื่อสร้างคอมพิวเตอร์ควอนตัม เมื่อนำไปใช้กับคอมพิวเตอร์ควอนตัมที่มีกำลังเพียงพอ อัลกอริธึมเฉพาะสามารถคำนวณได้เร็วกว่าคอมพิวเตอร์ทั่วไป และแม้แต่แก้ปัญหาที่เทคโนโลยีคอมพิวเตอร์ในปัจจุบันเข้าถึงไม่ได้ ส่งผลให้มีดอกเบี้ยเพิ่มขึ้นจาก รัฐบาล และอุตสาหกรรมทั่วโลกเพื่อพัฒนาคอมพิวเตอร์ควอนตัม ฟิลด์นี้ยังอยู่ในช่วงเริ่มต้น แต่การพัฒนากำลังได้รับแรงฉุดและมีคอมพิวเตอร์ควอนตัมที่ใช้งานได้อยู่แล้วแม้ว่าจะอ่อนแอมากในตอนนี้
SSL.com มีไฟล์ SSL /TLS ใบรับรองเซิร์ฟเวอร์ สำหรับเว็บไซต์ HTTPS
คอมพิวเตอร์คลาสสิกและควอนตัม
การคำนวณควอนตัมมีอิทธิพลต่อการเข้ารหัสอย่างไร
“ในปี 1994 Peter Shor จาก Bell Laboratories แสดงให้เห็นว่าคอมพิวเตอร์ควอนตัม ซึ่งเป็นเทคโนโลยีใหม่ที่ใช้ประโยชน์จากคุณสมบัติทางกายภาพของสสารและพลังงานในการคำนวณสามารถแก้ปัญหาแต่ละอย่างได้อย่างมีประสิทธิภาพ ส่งผลให้ระบบเข้ารหัสคีย์สาธารณะทั้งหมดตามสมมติฐานดังกล่าวไม่มีศักยภาพ ดังนั้นคอมพิวเตอร์ควอนตัมที่ทรงพลังเพียงพอจะทำให้การสื่อสารสมัยใหม่หลายรูปแบบ ตั้งแต่การแลกเปลี่ยนคีย์ไปจนถึงการเข้ารหัสไปจนถึงการรับรองความถูกต้องทางดิจิทัล ตกอยู่ในอันตราย”
คอมพิวเตอร์ควอนตัมจะมาเร็ว ๆ นี้หรือไม่
อะไรที่พวกเราสามารถทำได้?
เมื่อเทคโนโลยีคอมพิวเตอร์ควอนตัมที่แพร่หลายมาถึง เราจะต้องพร้อมด้วยการต้านทานควอนตัม PKI. มีหลายโครงการที่กำลังดำเนินการเพื่อบรรลุเป้าหมายนี้และเทคโนโลยีที่เสนอมากมายที่สามารถให้แนวทางแก้ไขได้ ด้านล่างนี้ เราจะพยายามสรุปเทคโนโลยีที่มีแนวโน้มมากที่สุด และให้ทบทวนสั้น ๆ เกี่ยวกับโครงการที่อยู่ระหว่างดำเนินการเพื่อสร้างการเข้ารหัสหลังควอนตัม พร้อมกับความท้าทายที่รออยู่ข้างหน้า
ครอบครัวของอัลกอริธึมหลังควอนตัม
การวิจัยในช่วง 15-20 ปีที่ผ่านมาได้พิสูจน์แล้วว่าอัลกอริธึมสามารถต้านทานการโจมตีควอนตัมได้ ด้านล่างนี้ เราให้คำอธิบายสั้น ๆ เกี่ยวกับกลุ่มอัลกอริธึมที่มีแนวโน้มมากที่สุด ซึ่งสามารถให้โซลูชันสำหรับการรักษาความปลอดภัยในโลกหลังควอนตัม
การเข้ารหัสตามรหัส
การเข้ารหัสแบบใช้รหัสใช้รหัสการแก้ไขข้อผิดพลาดเพื่อสร้างการเข้ารหัสคีย์สาธารณะ มันถูกเสนอครั้งแรกโดย Robert McEliece ในปี 1978 และเป็นหนึ่งในอัลกอริธึมการเข้ารหัสแบบอสมมาตรที่เก่าแก่และได้รับการวิจัยมากที่สุด รูปแบบลายเซ็นสามารถสร้างขึ้นตามโครงการ Niederreiter ซึ่งเป็นรูปแบบคู่ของโครงการ McEliece ระบบเข้ารหัสของ McEliece ได้ต่อต้านการเข้ารหัสลับจนถึงตอนนี้ ปัญหาหลักของระบบเดิมคือขนาดคีย์ส่วนตัวและสาธารณะที่มีขนาดใหญ่
การเข้ารหัสตามแฮช
การเข้ารหัสตามแฮช แสดงถึงแนวทางการเข้ารหัสหลังควอนตัมที่มีแนวโน้มสำหรับลายเซ็นดิจิทัล ฟังก์ชันแฮชคือฟังก์ชันที่จับคู่สตริงที่มีความยาวตามอำเภอใจกับสตริงที่มีความยาวคงที่ พวกเขาเป็นหนึ่งในรูปแบบการเข้ารหัสคีย์สาธารณะที่เก่ากว่า และการประเมินความปลอดภัยจากการโจมตีแบบคลาสสิกและแบบควอนตัมนั้นเป็นที่เข้าใจกันดี ฟังก์ชันแฮชเป็นหนึ่งในเครื่องมือเข้ารหัสที่ใช้กันอย่างแพร่หลายที่สุดอยู่แล้ว เป็นที่ทราบกันดีว่าพวกเขาสามารถใช้เป็นเครื่องมือเดียวในการสร้างการเข้ารหัสคีย์สาธารณะเป็นเวลานาน นอกจากนี้ การเข้ารหัสแบบแฮชยังมีความยืดหยุ่นและสามารถตอบสนองความคาดหวังด้านประสิทธิภาพที่แตกต่างกัน ข้อเสีย รูปแบบลายเซ็นแบบแฮชนั้นส่วนใหญ่เป็นการเก็บสถานะ ซึ่งหมายความว่าคีย์ส่วนตัวจะต้องได้รับการอัปเดตหลังจากใช้งานทุกครั้ง มิฉะนั้นจะไม่รับประกันความปลอดภัย มีแผนแฮชแบบไร้สัญชาติ แต่ต้องใช้ลายเซ็นที่ยาวขึ้น เวลาดำเนินการที่สำคัญกว่า และผู้ลงนามจำเป็นต้องติดตามข้อมูลบางอย่าง เช่น จำนวนครั้งที่คีย์ถูกใช้เพื่อสร้างลายเซ็น
การเข้ารหัสแบบ Lattice
การเข้ารหัสแบบ Lattice-based เป็นกรณีเฉพาะของการเข้ารหัสแบบอิงตามปัญหาชุดย่อยและเปิดตัวครั้งแรกในปี 1996 โดย Ajtai เป็นคำทั่วไปสำหรับการเข้ารหัสดั้งเดิมที่สร้างขึ้นโดยใช้โครงตาข่าย โครงสร้างเหล่านี้บางส่วนดูเหมือนจะทนทานต่อการโจมตีทั้งควอนตัมและคอมพิวเตอร์แบบคลาสสิก นอกจากนี้ยังมีคุณสมบัติที่น่าสนใจอื่นๆ เช่น ปัญหาความแข็งที่แย่ที่สุด นอกจากนี้ ยังนำเสนอความเรียบง่ายและความเท่าเทียม และใช้งานได้หลากหลายมากพอที่จะสร้างแผนการเข้ารหัสที่แข็งแกร่ง สุดท้าย พวกเขาเป็นเพียงกลุ่มของอัลกอริธึมที่มีพื้นฐานทั้งสามประเภทที่จำเป็นในการสร้างโครงสร้างพื้นฐานคีย์สาธารณะหลังควอนตัม: การเข้ารหัสคีย์สาธารณะ การแลกเปลี่ยนคีย์ และลายเซ็นดิจิทัล
การเข้ารหัสหลายตัวแปร
การเข้ารหัสแบบหลายตัวแปรหมายถึงการเข้ารหัสคีย์สาธารณะซึ่งมีคีย์สาธารณะแสดงถึงแผนที่พหุนามพหุตัวแปรและไม่เชิงเส้น (ปกติคือกำลังสอง) การแก้ปัญหาระบบเหล่านี้ได้รับการพิสูจน์แล้วว่าเป็น NP-complete ดังนั้นจึงทำให้อัลกอริธึมตระกูลนี้เป็นตัวเลือกที่ดีสำหรับการเข้ารหัสหลังควอนตัม ในปัจจุบัน แผนการเข้ารหัสแบบหลายตัวแปรได้รับการพิสูจน์แล้วว่ามีประสิทธิภาพน้อยกว่าแบบแผนอื่นๆ เนื่องจากต้องใช้คีย์สาธารณะจำนวนมากและใช้เวลาในการถอดรหัสที่ยาวนาน ในทางกลับกัน มันกลับกลายเป็นว่าเหมาะสมกว่าสำหรับการสร้างแบบแผนลายเซ็น เนื่องจากมีขนาดลายเซ็นที่สั้นที่สุดในบรรดาอัลกอริธึมหลังควอนตัม แม้ว่าจะมีคีย์สาธารณะที่ค่อนข้างใหญ่
การเข้ารหัสตามไอโซเจนี
การเข้ารหัสแบบอิงไอโซเจนีใช้แผนที่ระหว่างเส้นโค้งวงรีเพื่อสร้างการเข้ารหัสคีย์สาธารณะ อัลกอริธึมที่เป็นตัวเลือกสำหรับการเข้ารหัสหลังควอนตัมคือการแลกเปลี่ยนคีย์ Diffie-Hellman Supersingular isogeny (SIDH) ที่เปิดตัวในปี 2011 ทำให้โครงการนี้เป็นโครงการล่าสุดในบรรดาผู้สมัคร SIDH ต้องการหนึ่งในคีย์ที่เล็กที่สุดในบรรดาแผนการแลกเปลี่ยนคีย์ที่เสนอ และสนับสนุนความลับในการส่งต่อที่สมบูรณ์แบบ อย่างไรก็ตาม อายุยังน้อยหมายความว่ามีรูปแบบไม่มากนักตามแนวคิดนี้ และไม่มีการตรวจสอบช่องโหว่ที่เป็นไปได้มากนัก
โครงการสำหรับการเข้ารหัสหลังควอนตัม
มีคณะทำงานหลากหลายสำหรับแผนการเข้ารหัสหลังควอนตัม เช่น เปิดโครงการ Quantum Safe (OQS) และ ENISA. อย่างไรก็ตาม ความคิดริเริ่มที่สอดคล้องกันมากที่สุดคือ โครงการสร้างมาตรฐานการเข้ารหัสลับหลังควอนตัมของ NIST ที่ดำเนินการมาตั้งแต่ปี 2017 ตามชื่อที่บอกไว้ โปรเจ็กต์นี้มีจุดมุ่งหมายในการเลือกรูปแบบการเข้ารหัสที่เหมาะสมซึ่งจะเป็นมาตรฐานอุตสาหกรรมในยุคหลังควอนตัม กระบวนการนี้เริ่มต้นด้วยอัลกอริธึมของผู้สมัคร 69 รายการ โดย 26 รายการผ่านเข้าสู่การประเมินรอบที่สอง ในเดือนกรกฎาคม 2020 ได้มีการประกาศรายชื่อผู้เข้ารอบที่ 3 ดังตารางด้านล่าง มีผู้เข้ารอบสุดท้ายเจ็ดคนและผู้สมัครทางเลือกอีกแปดคนโดยรวม ในตารางมีการระบุว่าพวกเขาได้รับการพิจารณาสำหรับการเข้ารหัสหรือโครงร่างลายเซ็น ตระกูลอัลกอริธึม และปัญหาที่ยากซึ่งอ้างอิงถึง
| โครงการ | กฎหมาย/SIg | ครอบครัว | ปัญหาหนักใจ |
| รอบที่ 3 เข้ารอบ | |||
| คลาสสิก McEliece | Inc | รหัสตาม | การถอดรหัสรหัสไบนารี Goppa แบบสุ่ม |
| คริสตัล-Kyber | Inc | Lattice-Based | โมดูล Cyclotomic-LWE |
| สพท | Inc | Lattice-Based | ปัญหา Cyclotomic NTRU |
| กระบี่ | Inc | Lattice-Based | โมดูล Cyclotomic-LWR |
| คริสตัล-ไดลิเธียม | Sig | Lattice-Based | Cyclotomic Module-LWE และ Module-SIS |
| เหยี่ยวนกเขา | Sig | Lattice-Based | ไซโคลโทมิกริง-SIS |
| รุ้ง | Sig | หลายตัวแปรตาม | ประตูกับดักน้ำมันและน้ำส้มสายชู |
| รอบที่ 3 ผู้สมัครสำรอง | |||
| BIKE | Inc | รหัสตาม | การถอดรหัสรหัสกึ่งวงจร |
| กองบัญชาการ | Inc | รหัสตาม | รูปแบบการเข้ารหัสของ Ring-LWE |
| โฟรโด-KEM | Inc | Lattice-Based | แอลดับบลิว |
| NTRU-นายกรัฐมนตรี | Inc | Lattice-Based | ปัญหา Non-cyclotomic NTRU หรือ Ring-LWE |
| SIKE | Inc | อิงจากไอโซเจนี | ปัญหา isogeny กับคะแนนพิเศษ |
| GemMSS | Sig | หลายตัวแปรตาม | ประตูกล 'สนามใหญ่' |
| ปิกนิก | Sig | การเข้ารหัสสมมาตร | ความต้านทานพรีอิมเมจของบล็อกไซเฟอร์ |
| สฟิงส์+ | Sig | แบบแฮช | ความต้านทานพรีอิมเมจของฟังก์ชันแฮช |
การประเมินอัลกอริธึมขึ้นอยู่กับเกณฑ์สามข้อที่แสดงด้านล่าง
- ความปลอดภัย: นี่คือเกณฑ์ที่สำคัญที่สุด NIST ได้กำหนดปัจจัยหลายประการเพื่อพิจารณาในการประเมินความปลอดภัยจากอัลกอริทึมของผู้สมัครแต่ละราย นอกเหนือจากการต่อต้านควอนตัมของอัลกอริธึมแล้ว NIST ยังได้กำหนดพารามิเตอร์ความปลอดภัยเพิ่มเติมซึ่งไม่ได้เป็นส่วนหนึ่งของระบบนิเวศการรักษาความปลอดภัยทางไซเบอร์ในปัจจุบัน สิ่งเหล่านี้เป็นความลับในการส่งต่อที่สมบูรณ์แบบ การต่อต้านการโจมตีช่องด้านข้าง และการต้านทานการโจมตีแบบหลายปุ่ม
- ต้นทุนและประสิทธิภาพ: อัลกอริทึมจะได้รับการประเมินตามเมตริกประสิทธิภาพ เช่น ขนาดคีย์ ประสิทธิภาพในการคำนวณของการดำเนินการและการสร้างคีย์สาธารณะและส่วนตัว และความล้มเหลวในการถอดรหัส
- อัลกอริทึมและลักษณะการใช้งาน: สมมติว่าอัลกอริทึมมีความปลอดภัยและประสิทธิภาพโดยรวมที่ดี พวกเขาจะได้รับการประเมินโดยพิจารณาจากความยืดหยุ่น ความเรียบง่าย และความง่ายในการนำไปใช้ (เช่น การมีอยู่หรือไม่ของทรัพย์สินทางปัญญาที่ครอบคลุมอัลกอริทึม)
ความคล่องตัวในการเข้ารหัส
สรุป