การเข้ารหัสแบบโฮโมมอร์ฟิกเต็มรูปแบบ (Fully Homomorphic Encryption หรือ FHE) ทำให้แอปพลิเคชันคำนวณบนข้อมูลที่เข้ารหัสได้โดยไม่ต้องถอดรหัสก่อน ผลลัพธ์ยังคงอยู่ในรูปเข้ารหัส จึงทำให้ FHE มีประโยชน์เมื่อข้อมูลอ่อนไหวต้องเป็นความลับตลอดการประมวลผล

Zero-Knowledge (ZK) Proofs มีจุดประสงค์ที่ต่างออกไป คือเปิดให้ฝ่ายหนึ่งพิสูจน์ว่าข้อความหรือการคำนวณหนึ่งถูกต้อง โดยไม่เปิดเผยข้อมูลส่วนตัวที่เป็นพื้นฐาน ZK proof มักใช้กับข้อมูลรับรองส่วนบุคคล การตรวจสอบ rollup การพิสูจน์เงินสำรอง และกรณีอื่น ๆ ที่การตรวจสอบความถูกต้องสำคัญกว่าการเก็บการคำนวณทั้งหมดไว้ในรูปเข้ารหัส

ความแตกต่างหลักอยู่ที่ FHE ปกป้องข้อมูลระหว่างการประมวลผล ส่วน ZK proof ตรวจสอบผลลัพธ์โดยไม่เปิดเผยอินพุตที่เป็นความลับ ระบบบล็อกเชนที่เน้นความเป็นส่วนตัวบางแห่งนำทั้งสองเทคโนโลยีมาใช้ร่วมกัน เพราะทั้งสองแก้ปัญหาคนละส่วนของโจทย์เดียวกัน

FHE (Fully Homomorphic Encryption) คืออะไร?

FHE เป็นวิธีการทางวิทยาการเข้ารหัสที่ให้การคำนวณเกิดขึ้นบนข้อมูลที่เข้ารหัสได้โดยตรง ข้อมูลยังคงเข้ารหัสอยู่ระหว่างการประมวลผล และผลลัพธ์สุดท้ายสามารถถอดรหัสออกมาได้เท่ากับผลที่ผลิตจากข้อมูลต้นฉบับ

ในแอปพลิเคชันบล็อกเชน FHE รองรับยอดคงเหลือที่เข้ารหัส การลงคะแนนแบบส่วนตัว หรือสถานะแอปพลิเคชันที่เป็นความลับ โดยไม่เปิดเผยค่าที่แท้จริงต่อ validator หรือผู้เข้าร่วมรายอื่น ระบบยังต้องมีกฎที่ชัดเจนสำหรับการจัดการคีย์ อำนาจในการถอดรหัส และการเข้าถึงผลลัพธ์สุดท้าย

Zero-Knowledge (ZK) Proofs คืออะไร?

Zero-Knowledge (ZK) Proofs เปิดให้ฝ่ายหนึ่งพิสูจน์ว่าข้อความหรือการคำนวณหนึ่งถูกต้อง โดยไม่เปิดเผยข้อมูลส่วนตัวที่ใช้สร้าง proof ผู้พิสูจน์ (prover) สร้าง proof ขึ้นมา ส่วนผู้ตรวจสอบ (verifier) ตรวจสอบกับกฎที่กำหนดไว้ล่วงหน้า

ZK proof ใช้ได้กับการตรวจสอบตัวตนแบบส่วนตัว การยืนยันธุรกรรม ความถูกต้องของ rollup และการพิสูจน์เงินสำรองหรือความสามารถในการชำระหนี้ ความเป็นส่วนตัวขึ้นอยู่กับการออกแบบแอปพลิเคชัน เพราะอินพุต ผลลัพธ์ หรือรายละเอียดธุรกรรมบางส่วนอาจยังเปิดเผยต่อสาธารณะ

FHE กับ ZK Proofs: ประเด็นสำคัญที่ต่างกันคืออะไร?

FHE และ ZK แก้ปัญหาคนละส่วนของการคำนวณที่เป็นความลับ หากมองทั้งสองเป็นสิ่งทดแทนกัน อาจทำให้ด้านความเป็นส่วนตัวหรือด้านความถูกต้องถูกมองข้ามไป

มิติFully Homomorphic Encryption (FHE)Zero-Knowledge (ZK) Proofs
จุดประสงค์หลักคำนวณบนข้อมูลที่ยังเข้ารหัสอยู่ตลอดกระบวนการโดยตรงพิสูจน์ว่าข้อความหนึ่งถูกต้องโดยไม่เปิดเผย witness
ผลลัพธ์ให้ผลลัพธ์ที่เข้ารหัส ซึ่งต้องมีช่องทางถอดรหัสที่ได้รับอนุญาตให้ proof ที่กะทัดรัดและผลลัพธ์สาธารณะบางส่วนที่เลือกไว้
รูปแบบการคำนวณผู้คำนวณ (evaluator) แปลง ciphertext ด้วยการดำเนินการเข้ารหัสที่รองรับProver เข้ารหัสการคำนวณลงใน circuit หรือ virtual machine
การตรวจสอบการถอดรหัสที่ถูกต้องเผยผลลัพธ์ข้อความธรรมดาที่คำนวณได้Verifier ตรวจสอบ proof โดยไม่ต้องคำนวณซ้ำทั้งหมด
ต้นทุนด้านประสิทธิภาพการดำเนินการบน ciphertext และการทำ bootstrapping สร้าง overhead ในการประมวลผลสูงการสร้าง proof ใช้ทรัพยากรมาก แต่การตรวจสอบยังคงเบา
การพึ่งพาคีย์การกำกับดูแลคีย์ถอดรหัสกลายเป็นทางเลือกสำคัญในการออกแบบระบบTrusted setup หรือสมมติฐานของ proof ขึ้นอยู่กับ scheme ที่เลือก

FHE และ ZK Proofs ทำงานต่างกันอย่างไร?

- FHE: ข้อมูลยังคงเข้ารหัสระหว่างการคำนวณ แอปพลิเคชันสามารถอัปเดตยอดคงเหลือ การลงคะแนน หรือสถานะส่วนตัวอื่น ๆ ที่เข้ารหัสไว้ โดยไม่เปิดเผยค่าที่แท้จริง ระบบยังต้องมีกฎสำหรับคีย์ถอดรหัส การเข้าถึงที่ได้รับอนุญาต และการกู้คืนหากคีย์สูญหายหรือถูก compromise

- ZK Proofs: Prover แสดงว่าอินพุตส่วนตัวเป็นไปตามชุดกฎที่กำหนด โดยไม่เปิดเผยอินพุตเหล่านั้น Verifier ตรวจสอบ proof ที่ได้แทนการคำนวณซ้ำทั้งหมด proof ยืนยันเฉพาะกฎที่ถูกเขียนลงในระบบ ดังนั้นตรรกะของ circuit ที่ผิดพลาดยังอาจสร้าง proof ที่ถูกต้องสำหรับเงื่อนไขที่ผิดได้

โครงการ FHE และ ZK ที่พบบ่อยมีอะไรบ้าง?

โครงการ FHE ที่พบบ่อย

1. Zama: พัฒนาเครื่องมือ FHE และโครงสร้างพื้นฐานบล็อกเชนสำหรับ smart contract ที่เป็นความลับและแอปพลิเคชัน onchain ที่เข้ารหัส

2. Fhenix: สร้างโครงสร้างพื้นฐานบล็อกเชนที่ใช้ FHE เพื่อรองรับการทำงานของ smart contract แบบเข้ารหัส

3. Inco: เน้นการประมวลผลที่เป็นความลับสำหรับแอปพลิเคชันบล็อกเชน โดยใช้สถานะที่เข้ารหัสด้วย FHE

โครงการ ZK ที่พบบ่อย

1. zkSync: ใช้ zero-knowledge proof เพื่อขยาย Ethereum ด้วยการตรวจสอบธุรกรรม offchain เป็นชุด

2. Starknet: ใช้ STARK proof เพื่อตรวจสอบการคำนวณและขยายการทำงานของ smart contract บน Ethereum

3. Aztec: เน้นแอปพลิเคชันบล็อกเชนที่รักษาความเป็นส่วนตัวด้วยเทคโนโลยี zero-knowledge proof

FHE และ ZK Proofs มีความเสี่ยงหรือข้อแลกเปลี่ยนอะไรบ้าง?

- ความเสี่ยงของ FHE: การคำนวณบนข้อมูลที่เข้ารหัสใช้ทรัพยากรมากกว่าการคำนวณปกติอย่างมีนัยสำคัญ ciphertext ขนาดใหญ่ การประมวลผลที่ช้าลง การจัดการคีย์ และอำนาจในการถอดรหัส ล้วนเพิ่มต้นทุนและความซับซ้อน

- ความเสี่ยงของ ZK: การสร้าง proof ต้องใช้ circuit และซอฟต์แวร์เฉพาะทาง บั๊กใน circuit, compiler, สัญญาตรวจสอบ (verifier contract) หรือกระบวนการ setup อาจกระทบความเป็นส่วนตัวหรือความถูกต้อง ขณะที่ metadata สาธารณะอาจยังเปิดเผยข้อมูลได้

ทั้งสองเทคโนโลยีขึ้นอยู่กับการนำไปใช้และการออกแบบแอปพลิเคชันที่ถูกต้องเป็นอย่างมาก ไม่ใช่แค่ตัววิทยาการเข้ารหัสเท่านั้น

เทคโนโลยีความเป็นส่วนตัวแบบใดเหมาะกับแอปพลิเคชันบล็อกเชน?

- FHE: เหมาะกับแอปพลิเคชันที่ต้องประมวลผลข้อมูลส่วนตัวอย่างต่อเนื่อง เช่น ยอดคงเหลือที่เป็นความลับ การประมูลแบบส่วนตัว และการลงคะแนนที่เข้ารหัส

- ZK Proofs: เหมาะกับการพิสูจน์ว่าเงื่อนไขหรือการคำนวณหนึ่งถูกต้องโดยไม่เปิดเผยข้อมูลที่เป็นพื้นฐาน เช่น การตรวจสอบตัวตน การตรวจสอบ rollup การพิสูจน์เงินสำรอง หรือการตรวจสอบคุณสมบัติแบบส่วนตัว

- ใช้ทั้งสองแบบ: ระบบบางแห่งผนวก FHE และ ZK proof เข้าด้วยกัน เพื่อให้ข้อมูลยังเข้ารหัสระหว่างการคำนวณ ขณะที่ proof ยืนยันว่าอินพุตและกระบวนการเป็นไปตามกฎที่กำหนด

แนวคิดที่เกี่ยวข้อง

1. ZK Rollup คืออะไร?

2. Private Key คืออะไร?

3. Smart Contract คืออะไร?

อ่านเพิ่มเติม

1. Succinct (PROVE) เครือข่าย ZKP แบบกระจายศูนย์คืออะไร และเทรดบน BingX ได้อย่างไร?

2. AZTEC Privacy Layer 2 zkRollup บน Ethereum คืออะไร และซื้อได้อย่างไร?

3. โครงการคริปโต Zero-Knowledge (ZK) ชั้นนำปี 2026 มีอะไรบ้าง?

4. Zama (ZAMA) เลเยอร์ "HTTPZ" สำหรับ smart contract ที่เป็นความลับคืออะไร?