Craig Gentry พิสูจน์ให้เห็นว่ามันเป็นไปได้ในปี 2009 หลังจากที่นักเข้ารหัสลับตั้งคำถามกันมานานกว่าสามทศวรรษว่ามันจะมีอยู่จริงได้หรือไม่ แนวคิดคือ: คุณเข้ารหัสข้อมูลของคุณ ส่งมอบให้คนอื่น พวกเขาประมวลผลข้อมูลนั้น ส่งผลลัพธ์กลับมา และเมื่อคุณถอดรหัสผลลัพธ์นั้น มันถูกต้อง บุคคลที่ทำการประมวลผลไม่เคยเห็นข้อมูลของคุณเลย ไม่ใช่เวอร์ชันที่ผ่านการลบข้อมูล ไม่ใช่แฮช ค่าพื้นฐานจริงๆ ไม่เคยถูกเปิดเผย แม้แต่เพียงเสี้ยววินาที นั่นคือการเข้ารหัสแบบ Fully Homomorphic — รูปแบบการเข้ารหัสที่ให้บุคคลที่สามประมวลผลข้อมูลของคุณได้โดยไม่ต้องถอดรหัสเลย
แล้ว FHE (Fully Homomorphic Encryption) คืออะไร? นี่ไม่ใช่กลอุบาย มันเป็นคุณสมบัติทางคณิตศาสตร์ของระบบการเข้ารหัสบางประเภท คุณส่งกล่องที่ล็อกให้ใครบางคน พวกเขาจัดเรียงเนื้อหาภายใน คุณปลดล็อกมัน และการจัดเรียงนั้นถูกต้อง พวกเขาไม่เคยมีกุญแจ
ก่อนที่จะเข้าสู่วิธีการทำงานของ FHE ควรระบุให้ชัดเจนถึงปัญหาที่มันแก้ไข เพราะแนวทางส่วนใหญ่ในการ "ประมวลผลข้อมูลที่ละเอียดอ่อน" ล้วนเกี่ยวข้องกับการแลกเปลี่ยนที่ผู้คนเรียนรู้ที่จะยอมรับโดยไม่ตั้งคำถาม
แนวทางมาตรฐาน: เข้ารหัสข้อมูลขณะจัดเก็บและขณะส่ง ถอดรหัสก่อนประมวลผล ผู้ให้บริการคลาวด์ ผู้ให้บริการวิเคราะห์ข้อมูล บริการ ML ของคุณ — ทั้งหมดล้วนต้องการข้อมูลแบบ plaintext เพื่อทำงาน คุณต้องมอบความไว้วางใจให้พวกเขาโดยจำเป็น วิธีนี้ใช้ได้จนกว่าจะไม่ได้ผล: การละเมิด คำสั่งศาล ภัยคุกคามจากภายใน นโยบายการเข้าถึงที่ตั้งค่าผิดพลาด
Trusted Execution Environments (TEEs) เช่น Intel SGX สร้างพื้นที่หน่วยความจำที่ได้รับการป้องกันซึ่งแม้แต่ระบบปฏิบัติการก็ไม่สามารถอ่านได้ การประมวลผลที่ละเอียดอ่อนเกิดขึ้นภายใน enclave นี่มีประโยชน์อย่างแท้จริง แต่คุณกำลังไว้วางใจผู้ผลิตฮาร์ดแวร์และเดิมพันว่าการพัฒนา enclave ไม่มีข้อบกพร่องที่สามารถถูกโจมตีได้ SGX มีหลายกรณี
Differential privacy เพิ่มสัญญาณรบกวนทางสถิติที่ปรับเทียบแล้วลงในผลการค้นหา ซึ่งจำกัดว่าผู้โจมตีสามารถอนุมานเกี่ยวกับบุคคลได้มากเพียงใดจากผลลัพธ์รวม มันปกป้องการรวมข้อมูล ไม่ใช่การประมวลผลบันทึกรายบุคคล
FHE เป็นแนวทางเดียวที่ข้อมูลไม่ถูกถอดรหัสบนเซิร์ฟเวอร์เลย และหลักฐานความปลอดภัยไม่ต้องการความไว้วางใจในฮาร์ดแวร์หรือบุคคลที่สามใดๆ การรับประกันเป็นทางคณิตศาสตร์
ระบบ FHE กำหนดการดำเนินการทางคณิตศาสตร์โดยตรงบน ciphertexts การบวกแบบ Homomorphic และการคูณแบบ Homomorphic บนค่าที่เข้ารหัสจะให้ผลลัพธ์ เมื่อถอดรหัสแล้ว เหมือนกับการดำเนินการเหล่านั้นบน plaintexts ต้นฉบับ
สองการดำเนินการฟังดูจำกัด แต่ไม่ใช่ การบวกและการคูณบน binary fields ให้ AND และ XOR gates ซึ่งให้วงจรดิจิทัลที่ไม่จำกัด ฟังก์ชันใดๆ ที่คอมพิวเตอร์สามารถคำนวณได้สามารถแสดงในรูปของสองการดำเนินการนี้ นั่นคือสะพานเชื่อมจาก "คณิตศาสตร์บนตัวเลขที่เข้ารหัส" ไปสู่ "การประมวลผลโดยพลการบนข้อมูลที่เข้ารหัส"
ปัญหาเชิงโครงสร้างคือสัญญาณรบกวน การดำเนินการ FHE แต่ละครั้งนำข้อผิดพลาดเล็กน้อยเข้าสู่ ciphertext ข้อผิดพลาดสะสม ดำเนินการมากพอและสัญญาณรบกวนจะท่วม signal — ciphertext กลายเป็นสิ่งที่ไม่สามารถถอดรหัสได้ ข้อมูลเชิงลึกของ Gentry คือ bootstrapping: การประเมินวงจรถอดรหัสแบบ homomorphic บน ciphertext ที่มีสัญญาณรบกวนเพื่อสร้าง ciphertext ใหม่ที่มีสัญญาณรบกวนต่ำพร้อมค่า plaintext เดียวกัน กล่าวอีกนัยหนึ่ง คุณรันการถอดรหัสภายในการเข้ารหัส สัญญาณรบกวนรีเซ็ตโดยไม่เคยเปิดเผยข้อมูล
ระบบที่จัดการจำนวนการดำเนินการที่จำกัดก่อนที่สัญญาณรบกวนจะเป็นอันตรายถึงชีวิตเรียกว่า leveled หรือ somewhat homomorphic Bootstrapping คือสิ่งที่ทำให้ได้คำว่า "fully" ใน FHE
สำหรับแอปพลิเคชันส่วนใหญ่ FHE ยังคงช้าเกินไป แอปพลิเคชันที่ทำงานอยู่ในปัจจุบันมีโปรไฟล์ร่วมกัน: ความลึกของวงจรที่จำกัด ความละเอียดอ่อนสูงของข้อมูล และฝ่ายหนึ่งที่สามารถรับต้นทุนการประมวลผลเพื่อแลกกับการรับประกันความเป็นส่วนตัวทางคณิตศาสตร์
Private ML inference เหมาะสมที่สุดอย่างชัดเจน ไคลเอนต์มีข้อมูลนำเข้าที่ละเอียดอ่อน เซิร์ฟเวอร์มีโมเดลที่เป็นกรรมสิทธิ์ FHE ให้เซิร์ฟเวอร์ประเมินโมเดลบนข้อมูลนำเข้าที่เข้ารหัสและส่งคืนผลลัพธ์ที่เข้ารหัส ไม่มีฝ่ายใดเปิดเผยสิ่งที่พวกเขาปกป้อง Zama จัดส่งสิ่งนี้สำหรับสถาปัตยกรรมโมเดลเฉพาะ ความลึกของวงจรสามารถคาดการณ์ได้และจัดการได้
การวิเคราะห์จีโนมแบบส่วนตัว เป็นงาน benchmark มาตั้งแต่ iDASH เริ่มจัดการแข่งขันจีโนมิกส์เข้ารหัสในปี 2014 การให้คะแนนความเสี่ยงโรค การศึกษาความสัมพันธ์ทั่วจีโนม และการจัดลำดับลำดับนิวคลีโอไทด์ ล้วนมีโครงสร้าง FHE ข้อมูลจีโนมเป็นหนึ่งในไม่กี่ประเภทข้อมูลที่ความเสี่ยงด้านความเป็นส่วนตัวทั้งถาวรและขยายไปถึงผู้คนที่ไม่เคยยินยอมแบ่งปันสิ่งใดเลย
การค้นหาทางการเงินที่เป็นความลับ ครอบคลุมการค้นหาช่วง การค้นหาฐานข้อมูลที่เข้ารหัส และการให้คะแนนการฉ้อโกงบนประวัติธุรกรรมที่เข้ารหัส งานเหล่านี้ทำงานไม่บ่อยพอ และข้อมูลละเอียดอ่อนพอ ที่ค่าใช้จ่ายในการประมวลผลยอมรับได้
ความลับของ Blockchain เป็นพื้นที่ที่มีการเคลื่อนไหว Smart contracts ดำเนินการสาธารณะบน chain โดยค่าเริ่มต้น ระบบที่ใช้ TFHE ให้คุณรันตรรกะสัญญาบนสถานะที่เข้ารหัส ซึ่งเปิดใช้งานสิ่งต่างๆ เช่น การประมูลแบบส่วนตัว การลงคะแนนแบบเป็นความลับ และกลไกการประมูลแบบปิดผนึกที่ความถูกต้องสามารถตรวจสอบได้สาธารณะแต่ข้อมูลนำเข้าไม่ถูกเปิดเผย โครงการ fhEVM ของ Zama มุ่งเป้าหมายนี้โดยเฉพาะ
ความปลอดภัยของ FHE ลดรูปลงสู่ความยากของ Learning With Errors (LWE) และตัวแปร ring ของมัน (RLWE) ปัญหาเหล่านี้ถามว่า: กำหนดสมการเชิงเส้นโดยประมาณจำนวนมากบน ring หรือ lattice จงกู้คืนความลับ ไม่มีอัลกอริทึม polynomial-time ที่ทราบสำหรับทั้งคู่ บนฮาร์ดแวร์คลาสสิกหรือควอนตัม
สิ่งนี้ทำให้ FHE อยู่ในตระกูลการเข้ารหัสลับหลังควอนตัม การกำหนดมาตรฐานหลังควอนตัมของ NIST สร้างบนปัญหาตระกูล LWE ซึ่งทำให้สมมติฐานพื้นฐานได้รับการตรวจสอบและความเชื่อมั่นเพิ่มเติม อย่างไรก็ตาม LWE อยู่ภายใต้การโจมตีอย่างจริงจังมาน้อยกว่า 20 ปี RSA และ elliptic curves มีประวัติการวิเคราะห์การเข้ารหัสที่ล้มเหลวมากกว่า 40 ปีอยู่เบื้องหลัง ระดับความเชื่อมั่นสูงแต่ไม่เหมือนกัน
พารามิเตอร์ควบคุมความปลอดภัย ดีกรีของพหุนาม ขนาดโมดูลัส และการกระจายสัญญาณรบกวนต้องถูกเลือกเพื่อทำให้อินสแตนซ์ LWE ยากในระดับความปลอดภัยที่ต้องการ คอนโซเชียม HomomorphicEncryption.org เผยแพร่ชุดพารามิเตอร์ที่แนะนำ การใช้ค่าเริ่มต้นของไลบรารีที่ได้รับการตรวจสอบกับคำแนะนำเหล่านี้เป็นที่นิยมอย่างมากกว่าการกำหนดค่าแบบกำหนดเอง
บริบทการแข่งขัน
FHE เป็นหนึ่งในเทคโนโลยีการประมวลผลที่รักษาความเป็นส่วนตัวหลายประเภท และพวกมันถูกใช้ร่วมกันมากขึ้นแทนที่จะเป็นตัวแทน
Secure multi-party computation (MPC) กระจายการประมวลผลไปยังหลายฝ่าย ไม่มีฝ่ายใดเห็นข้อมูลนำเข้าทั้งหมด มักเร็วกว่า FHE สำหรับฟังก์ชันเฉพาะและเหมาะสมตามธรรมชาติเมื่อฝ่ายต่างๆ ถูกกำหนดไว้ล่วงหน้า FHE ทำงานกับเซิร์ฟเวอร์ที่ไม่น่าไว้วางใจเพียงตัวเดียว
Zero-knowledge proofs (ZKPs) ให้ฝ่ายหนึ่งพิสูจน์ว่าคำกล่าวเป็นความจริงโดยไม่เปิดเผย witness ZKPs พิสูจน์; FHE ประมวลผล พวกมันเสริมซึ่งกันและกัน และระบบจริงใช้ทั้งคู่: FHE สำหรับการประมวลผลแบบส่วนตัว ZKPs สำหรับการตรวจสอบว่าการประมวลผลทำอย่างถูกต้อง
โปรโตคอลไฮบริดที่รวม FHE และ MPC เป็นพื้นที่วิจัยที่มีการเคลื่อนไหว ไม่มีเทคโนโลยีใดเพียงอย่างเดียวที่ตอบสนองทุกข้อกำหนด การรวมกันสามารถให้ประสิทธิภาพที่ดีกว่าและการรับประกันที่แข็งแกร่งกว่าแต่ละเทคโนโลยีต่างหาก


