คำอธิบายโดยละเอียดของการพิสูจน์ความรู้เป็นศูนย์ (ZKP)

กลาง11/28/2023, 11:05:05 AM
Zero-Knowledge Proof (ZKP) เป็นวิธีการเข้ารหัสที่ช่วยให้ฝ่ายหนึ่ง (เรียกว่าผู้พิสูจน์) สามารถพิสูจน์ให้อีกฝ่ายหนึ่ง (เรียกว่าผู้ตรวจสอบ) ว่าข้อความนั้นเป็นจริง โดยไม่ต้องเปิดเผยข้อมูลอื่นใด โซลูชัน ZKP ที่ได้รับความนิยม ได้แก่ zk-SNARKS, zk-STARKS, PLONK และ Bulletproofs บทความนี้จะแนะนำโซลูชัน ZKP ทั้งสี่ประเภทนี้และวิเคราะห์ข้อดีและข้อเสีย

พื้นหลัง

Zero-Knowledge Proof (ZKP) เป็นเทคโนโลยีการเข้ารหัสที่นำมาใช้ครั้งแรกในบทความเรื่อง "The Knowledge Complexity Of Interactive Proof Systems" ในช่วงต้นทศวรรษ 1980 โดย S.Goldwasser, S.Micali และ C.Rackoff เดิมทีคิดว่าเป็นแบบจำลองทางทฤษฎี โดยมีเป้าหมายเพื่อจัดการกับความท้าทายในการตรวจสอบความถูกต้องของข้อความทางคณิตศาสตร์โดยไม่ต้องเปิดเผยหลักฐานใดๆ แนวคิดนี้ได้รับความสนใจอย่างกว้างขวางในโลกวิชาการสำหรับการท้าทายขอบเขตของเทคนิคการเข้ารหัสแบบดั้งเดิม และนำเสนอแนวทางใหม่ในการจัดการข้อมูลที่ละเอียดอ่อน

เมื่อเวลาผ่านไป ZKP พัฒนาจากแนวคิดทางทฤษฎีเชิงนามธรรมไปเป็นโปรโตคอลที่เป็นรูปธรรมซึ่งสามารถรวมเข้ากับการใช้งานต่างๆ ได้ ในช่วงต้นศตวรรษที่ 21 ด้วยการเติบโตอย่างรวดเร็วของอินเทอร์เน็ตและการสื่อสารดิจิทัล ศักยภาพของ ZKP จึงเริ่มถูกสำรวจในโลกแห่งความเป็นจริง โดยเฉพาะอย่างยิ่งกับการเพิ่มขึ้นของบล็อกเชนและสกุลเงินดิจิทัล ZKP แสดงให้เห็นถึงความสามารถในการปรับปรุงความเป็นส่วนตัวและความปลอดภัย ในขณะเดียวกันก็รักษาประสิทธิภาพของธุรกรรมและการประมวลผลข้อมูล

ปัจจุบัน ZKP ไม่เพียงแต่เป็นประเด็นร้อนในการวิจัยด้านการเข้ารหัสเท่านั้น แต่ยังถูกรวมเข้ากับแพลตฟอร์มและแอปพลิเคชันบล็อกเชนต่างๆ อีกด้วย ตัวอย่างเช่น แอปพลิเคชันของ zk-SNARKs บน Ethereum Layer2 นำเสนอธุรกรรมแบบไม่เปิดเผยตัวตนโดยไม่เปิดเผยรายละเอียดธุรกรรม การเปลี่ยนแปลงจากทฤษฎีไปสู่การใช้งานจริงนี้ไม่เพียงแต่พิสูจน์คุณค่าในทางปฏิบัติของ ZKP แต่ยังผลักดันการสำรวจปฏิสัมพันธ์ทางดิจิทัลที่มีประสิทธิภาพและปลอดภัยยิ่งขึ้นอีกด้วย ด้วยความก้าวหน้าทางเทคโนโลยีอย่างต่อเนื่อง ZKP มีบทบาทสำคัญในการปกป้องความเป็นส่วนตัว รับรองความปลอดภัยของข้อมูล และสร้างระบบดิจิทัลที่น่าเชื่อถือ

ความหมายและหลักการของ ZKP

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

แผนภาพแนวคิดการพิสูจน์ความรู้เป็นศูนย์ (ที่มา: ChainLink)

หลักการสำคัญของ Zero-Knowledge Proofs (ZKP) สามารถกำหนดได้ด้วยคุณลักษณะ 3 ประการต่อไปนี้:

  • ความสมบูรณ์: หากข้อความเป็นจริง ผู้พิสูจน์ที่ซื่อสัตย์สามารถผ่านการทดสอบของผู้ตรวจสอบได้เสมอ
  • ความสมบูรณ์: หากข้อความเป็นเท็จ ผู้พิสูจน์ที่หลอกลวงจะมีโอกาสเพียงเล็กน้อยเท่านั้นที่จะทำให้ผู้ตรวจสอบเข้าใจผิดว่าข้อความดังกล่าวเป็นความจริง
  • ความรู้เป็นศูนย์: หากข้อความเป็นจริง ผู้ตรวจสอบจะไม่เรียนรู้ข้อมูลเพิ่มเติมอื่นใดนอกจากข้อเท็จจริงที่ว่าข้อความนั้นถูกต้อง กล่าวอีกนัยหนึ่ง กระบวนการตรวจสอบไม่ได้เปิดเผยข้อมูลใดๆ ที่สามารถนำมาใช้สร้างหลักฐานได้

หลักการของ ZKP มักเข้าใจได้จากตัวอย่างง่ายๆ: หากฉันต้องการพิสูจน์ให้บุคคล A ทราบว่าฉันมีหมายเลขโทรศัพท์ของบุคคล B ฉันไม่จำเป็นต้องเปิดเผยหมายเลขของ B กับ A โดยตรง แต่ฉันสามารถพิสูจน์ได้โดยการโทรไปยังหมายเลขของ B . เมื่อเชื่อมต่อสายแล้ว ก็แสดงว่าฉันมีหมายเลขของ B จริงๆ โดยไม่เปิดเผยข้อมูลใดๆ เกี่ยวกับหมายเลขนั้น

ในการใช้งานจริง ZKP มักต้องใช้โครงสร้างทางคณิตศาสตร์ที่ซับซ้อน เช่น สมการพหุนาม เส้นโค้งวงรี หรือการท้าทายทางคณิตศาสตร์อื่นๆ ความปลอดภัยของโครงสร้างเหล่านี้ขึ้นอยู่กับความยากในการคำนวณของปัญหา เช่น การแยกตัวประกอบหรือลอการิทึมแบบไม่ต่อเนื่อง ด้วยความก้าวหน้าของการเข้ารหัส ทำให้มีการใช้งาน ZKP ที่หลากหลาย เช่น zk-SNARKs และ zk-STARKs ซึ่งให้การปกป้องความเป็นส่วนตัวที่มีประสิทธิภาพในบริบทที่แตกต่างกัน โดยเฉพาะอย่างยิ่งในด้านบล็อกเชนและสกุลเงินดิจิทัล

รูปแบบพื้นฐานของการพิสูจน์ความรู้เป็นศูนย์ประกอบด้วยองค์ประกอบสามประการ: พยาน การท้าทาย และการตอบสนอง

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

ความท้าทาย: ผู้ตรวจสอบจะสุ่มเลือกคำถามอื่นจากชุดและขอให้ผู้พิสูจน์คำตอบ

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

ในตัวอย่างการโทรที่กล่าวมาข้างต้น “ฉัน” เป็นพยานที่ไม่เต็มใจที่จะเปิดเผยข้อมูล ในขณะที่ A เป็นผู้ตรวจสอบ และความท้าทายที่เกิดขึ้นคือ “พิสูจน์ว่า 'ฉัน' มีหมายเลขของ B” กระบวนการตอบกลับเกี่ยวข้องกับ "ฉัน" โดยเชื่อมต่อการโทรไปยังหมายเลขของ B เพื่อพิสูจน์ว่าฉันได้รับหมายเลขนั้นจริงๆ

เหตุใดจึงจำเป็นต้องมี ZKP

ตามที่กล่าวไว้ก่อนหน้านี้ Zero-Knowledge Proofs (ZKP) มอบข้อได้เปรียบที่สำคัญในขอบเขตของการคุ้มครองความเป็นส่วนตัวโดยธรรมชาติ ในยุคที่ข้อมูลล้นหลามในปัจจุบัน ข้อมูลส่วนบุคคลมักถูกจัดเก็บไว้ในแพลตฟอร์มของบุคคลที่สาม ซึ่งเพิ่มความเสี่ยงต่อการละเมิดข้อมูล นอกจากนี้ เนื่องจากอุปสรรคทางเทคนิคและความล่าช้าในการคว่ำบาตรทางกฎหมาย ความปลอดภัยของข้อมูลจึงขึ้นอยู่กับข้อจำกัดทางจริยธรรมเป็นส่วนใหญ่ ทำให้เป็นเรื่องยากสำหรับผู้ใช้ในการควบคุมข้อมูลส่วนตัวของตนอย่างแท้จริง การถือกำเนิดของเทคโนโลยี ZKP มอบโซลูชันที่ทั้งปกป้องความเป็นส่วนตัวและเพิ่มประสิทธิภาพในการตรวจสอบและความปลอดภัย

เมื่อเปรียบเทียบกับเทคโนโลยีการเข้ารหัสอื่นๆ ZKP มีข้อดีหลายประการ:

  • การคุ้มครองความเป็นส่วนตัว: ZKP อนุญาตให้บุคคลและสถาบันพิสูจน์ความจริงของข้อมูลบางอย่างโดยไม่ต้องเปิดเผยเนื้อหาที่แท้จริงของข้อมูล ตัวอย่างเช่น สามารถใช้เพื่อพิสูจน์ว่าบุคคลนั้นมีคุณสมบัติตรงตามข้อกำหนดด้านอายุ โดยไม่เปิดเผยอายุหรือวันเกิดที่แท้จริง
  • การรักษาความปลอดภัยขั้นสูง: เนื่องจาก ZKP ไม่ต้องการการเปิดเผยข้อมูลที่ละเอียดอ่อน จึงลดความเสี่ยงของการรั่วไหลของข้อมูล แม้ว่าการสกัดกั้นจะเกิดขึ้นในระหว่างกระบวนการพิสูจน์ แต่ก็ไม่มีการเปิดเผยข้อมูลที่สำคัญ
  • การฉ้อโกงที่ลดลง: ในธุรกรรมทางการเงิน สามารถใช้ ZKP เพื่อตรวจสอบความถูกต้องของธุรกรรมโดยไม่ต้องเปิดเผยรายละเอียดเฉพาะเจาะจง ซึ่งจะช่วยลดโอกาสในการฉ้อโกงได้
  • ประสิทธิภาพ: ZKP บางประเภท เช่น zk-SNARK นั้นสร้างและตรวจสอบได้รวดเร็วมาก ซึ่งเป็นประโยชน์สำหรับระบบที่ต้องประมวลผลธุรกรรมจำนวนมากหรือการดำเนินการตรวจสอบ
  • ความสามารถในการทำงานร่วมกัน: ZKP จัดให้มีกรอบการทำงานทั่วไปสำหรับการตรวจสอบระหว่างระบบและโดเมนที่แตกต่างกัน ช่วยให้สามารถตรวจสอบและแบ่งปันข้อมูลระหว่างระบบต่างๆ ได้อย่างปลอดภัย
  • ความสามารถในการปรับขนาด: ด้วยวิวัฒนาการของเทคโนโลยีคอมพิวเตอร์ การนำ ZKP ไปใช้มีประสิทธิภาพและปรับขนาดได้มากขึ้น ซึ่งหมายความว่าสามารถนำไปใช้งานในระบบขนาดใหญ่ขึ้นได้
  • การปฏิบัติตามกฎระเบียบ: ในสภาพแวดล้อมด้านกฎระเบียบในปัจจุบันที่ต้องการการคุ้มครองความเป็นส่วนตัวของผู้บริโภค ZKP สามารถช่วยบริษัทต่างๆ ตรวจสอบและประมวลผลข้อมูลโดยไม่ละเมิดกฎหมายความเป็นส่วนตัว
  • การควบคุมผู้ใช้: ZKP ปรับปรุงการควบคุมข้อมูลของผู้ใช้ เนื่องจากสามารถเลือกจำนวนข้อมูลที่จะเปิดเผยได้
  • การกระจายอำนาจ: ในบล็อกเชนและเทคโนโลยีแบบกระจาย ZKP นำเสนอเครื่องมือความเป็นส่วนตัวที่ทรงพลังสำหรับการกระจายอำนาจ ทำให้ผู้ใช้สามารถทำธุรกรรมและโต้ตอบได้โดยไม่ต้องพึ่งพาหน่วยงานกลาง

ไม่ว่าจะเป็นใน Web 2.0 แบบดั้งเดิมหรือโดเมน Web 3.0 ที่เกิดขึ้นใหม่ โอกาสในการประยุกต์ใช้งานของ ZKP นั้นกว้างขวาง

ประเภทของ Zero-Knowledge Proofs (ZKP)

มีการใช้งานการพิสูจน์ความรู้แบบศูนย์หลายวิธี เช่น zk-SNARKs, zk-STARKs, PLONK และ Bulletproofs แต่ละประเภทมีข้อดีและข้อเสียในแง่ของขนาดการพิสูจน์ เวลาในการพิสูจน์ และเวลาการตรวจสอบ บทความนี้มุ่งเน้นไปที่การแนะนำสี่ประเภทที่ใช้บ่อยที่สุดในสถานการณ์แอปพลิเคชัน

zk-SNARK

zk-SNARKs ซึ่งย่อมาจาก “Zero-Knowledge Succinct Non-Interactive Argument of Knowledge” เป็นเครื่องมือเข้ารหัสที่ใช้ในการพิสูจน์ว่ามีคนรู้ข้อมูลชิ้นหนึ่งโดยไม่เปิดเผยข้อมูลใดๆ ใน zk-SNARK “ความรู้เป็นศูนย์” หมายความว่าผู้พิสูจน์สามารถพิสูจน์ได้ว่าข้อความนั้นเป็นจริงโดยไม่ต้องให้ข้อมูลใดๆ นอกเหนือจากความถูกต้อง “ความกระชับ” หมายถึง การพิสูจน์ที่มีขนาดเล็กและความรวดเร็วของกระบวนการตรวจสอบ “แบบไม่โต้ตอบ” หมายถึงเมื่อมีการสร้างหลักฐานขึ้น ใครก็ตามก็สามารถตรวจสอบได้โดยไม่ต้องมีปฏิสัมพันธ์ระหว่างผู้พิสูจน์และผู้ตรวจสอบอีกต่อไป ส่วนประกอบหลักของ zk-SNARK ประกอบด้วย:

  • การตั้งค่าที่เชื่อถือได้: ในระหว่างการเริ่มต้นระบบ จำเป็นต้องสร้างคู่ของคีย์สาธารณะ/ส่วนตัว (พารามิเตอร์) กระบวนการนี้จะต้องดำเนินการโดยบุคคลที่เชื่อถือได้ เนื่องจากความปลอดภัยของระบบอาจถูกบุกรุกได้หากคีย์ส่วนตัวรั่วไหล
  • การสร้างหลักฐาน: ผู้พิสูจน์ทราบข้อมูลลับแต่ไม่ต้องการเปิดเผยต่อผู้ตรวจสอบ พวกเขาใช้ข้อมูลลับนี้และพารามิเตอร์สาธารณะเพื่อสร้างหลักฐานที่เพียงพอแสดงให้เห็นว่าพวกเขารู้ความลับโดยไม่เปิดเผยรายละเอียดใด ๆ เกี่ยวกับมัน
  • กระบวนการตรวจสอบ: เมื่อผู้ตรวจสอบได้รับหลักฐานแล้ว พวกเขาสามารถใช้พารามิเตอร์สาธารณะเพื่อตรวจสอบความถูกต้องได้ หากผู้พิสูจน์สร้างหลักฐานที่ถูกต้อง กระบวนการตรวจสอบจะแสดงผลว่า "ใช่" มิฉะนั้นจะ "ไม่ใช่"

zk-SNARK ใช้ในสถานการณ์การรักษาความเป็นส่วนตัวต่างๆ เช่น สกุลเงินดิจิทัลที่มีธุรกรรมที่ไม่เปิดเผยตัวตน ระบบการลงคะแนนที่ปลอดภัย การรับรองความถูกต้องและการแบ่งปันข้อมูลแบบรักษาความเป็นส่วนตัว และเทคโนโลยีการขยายขนาดบล็อกเชน

zk-STARK

zk-STARKs หรือ “อาร์กิวเมนต์ความรู้แบบโปร่งใสที่ปรับขนาดได้เป็นศูนย์ความรู้” อนุญาตให้ฝ่ายหนึ่ง (ผู้พิสูจน์) พิสูจน์ให้อีกฝ่ายหนึ่ง (ผู้ตรวจสอบ) ทราบว่าตนทราบข้อมูลบางอย่างโดยไม่ต้องเปิดเผยข้อมูลนั้นเอง zk-STARK ต่างจาก zk-SNARK ตรงที่ไม่ต้องการกระบวนการตั้งค่าที่เชื่อถือได้ ซึ่งหมายความว่าพวกเขาไม่ได้พึ่งพาการรักษาความลับของข้อมูลส่วนตัวบางอย่าง ซึ่งเป็นคุณลักษณะที่มักถือว่ามีความสำคัญต่อการรักษาความปลอดภัย เนื่องจากการตั้งค่าที่เชื่อถือได้อาจเป็นช่องโหว่ของระบบได้

zk-STARK ทำงานบนแนวคิดจากสาขาทางคณิตศาสตร์หลายสาขา รวมถึงฟังก์ชันแฮช การคำนวณพหุนาม และทฤษฎีการแก้ไขข้อผิดพลาด พวกเขาใช้โครงสร้างที่เรียกว่า “อาร์กิวเมนต์โปร่งใสที่ปรับขนาดได้เป็นศูนย์ความรู้” ช่วยให้สร้างหลักฐานได้โดยไม่ต้องมีการตั้งค่าที่เชื่อถือได้ แอปพลิเคชันที่มีศักยภาพของ zk-STARK นั้นคล้ายคลึงกับแอปพลิเคชันของ zk-SNARK แต่เนื่องจากความสามารถในการปรับขนาดและความโปร่งใส จึงเหมาะอย่างยิ่งสำหรับแอปพลิเคชันขนาดใหญ่ รวมถึงสกุลเงินดิจิทัลที่รักษาความเป็นส่วนตัว เทคโนโลยีความสามารถในการปรับขนาดบล็อกเชน และการตรวจสอบความปลอดภัยในการประมวลผลแบบคลาวด์ .

พลองค์

PLONK ไม่ใช่ตัวย่อ หมายถึงนามสกุลของผู้สร้าง ได้รับการออกแบบมาเพื่อมอบโซลูชัน ZKP ที่เป็นสากลและมีประสิทธิภาพ โดยเฉพาะอย่างยิ่งในแอปพลิเคชันบล็อกเชน เช่น สัญญาอัจฉริยะ และธุรกรรมที่ได้รับการคุ้มครองความเป็นส่วนตัว หัวใจหลักของ PLONK คือการใช้เทคนิค "การซ่อนแบบโฮโมมอร์ฟิก" ซึ่งช่วยให้สามารถดำเนินการทางคณิตศาสตร์กับข้อมูลได้โดยไม่ต้องเปิดเผยข้อมูลต้นฉบับ ใช้อัลกอริธึมพิเศษ - โครงการความมุ่งมั่นแบบพหุโนเมียล - เพื่อสร้างข้อพิสูจน์ ช่วยให้ผู้พิสูจน์พิสูจน์สามารถพิสูจน์ได้อย่างมีประสิทธิภาพว่าพวกเขามีผลการคำนวณที่ถูกต้องสำหรับชุดข้อมูล

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

กันกระสุน

กันกระสุนเป็นโซลูชั่น ZKP ที่เพิ่งเปิดตัว ไม่ต้องการการตั้งค่าที่เชื่อถือได้ และได้รับการออกแบบมาโดยเฉพาะสำหรับการสร้างการพิสูจน์ช่วงและการพิสูจน์ทางคณิตศาสตร์บางประเภท เสนอโดย Benedikt Bunz, Jonathan Bootle, Dan Boneh และคนอื่นๆ ในปี 2017 Bulletproofs ทำงานบนโครงสร้างทางคณิตศาสตร์ที่ซับซ้อน เช่น การเข้ารหัสแบบโฮโมมอร์ฟิก และการเข้ารหัสแบบเส้นโค้งวงรี พวกเขาใช้ประโยชน์จากชุดเทคนิคทางคณิตศาสตร์เพื่อให้ผู้พิสูจน์สามารถสร้างการพิสูจน์ช่วงที่มีประสิทธิภาพสำหรับตัวเลขโดยไม่ต้องเปิดเผยค่าที่แน่นอน โดยเฉพาะอย่างยิ่งในโดเมนสกุลเงินดิจิทัล สามารถใช้เพื่อพิสูจน์ว่ามูลค่าธุรกรรมอยู่ในช่วงที่กฎหมายกำหนดโดยไม่เปิดเผยมูลค่าธุรกรรมจริง

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

กรณีศึกษา

มาทำความเข้าใจเทคโนโลยี Zero-Knowledge Proof (ZKP) ที่แตกต่างกันทั้งสี่นี้กันดีกว่า—zk-SNARKs, zk-STARKs, PLONK และ Bulletproofs—ผ่านการเทียบเคียงแผนที่สมบัติ

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

zk-SNARKs: คุณสร้างปริศนาจิ๊กซอว์ที่ซับซ้อนของแผนที่สมบัติ คุณเลือกชิ้นส่วนเล็กๆ ที่สำคัญของปริศนานี้ (หลักฐาน) แล้วแสดงให้อีกฝ่ายเห็น ซึ่งเพียงพอที่จะโน้มน้าวพวกเขาว่าคุณรู้วิธีประกอบปริศนาที่สมบูรณ์ กล่าวคือ ตำแหน่งของสมบัติ โดยไม่เปิดเผยปริศนาทั้งหมด อย่างไรก็ตาม ในการดำเนินการนี้ คุณต้องมีเครื่องหมายพิเศษจากเครื่องพิมพ์ที่เชื่อถือได้เพื่อพิสูจน์ว่าชิ้นส่วนปริศนาของคุณเป็นของแท้

zk-STARKs: คุณแสดงส่วนหนึ่งของแผนที่ขุมทรัพย์ให้อีกฝ่ายเห็น โดยบอกพวกเขาว่าพวกเขาสามารถใช้แว่นขยายพิเศษ (อัลกอริธึมการตรวจสอบ) เพื่อสุ่มตรวจสอบรายละเอียดของแผนที่เพื่อยืนยันว่ามันชี้ไปที่สมบัติจริงๆ โดยไม่จำเป็นต้องรู้ ตำแหน่งที่แน่นอนของสมบัติ แว่นขยายนี้ทรงพลังมากจนแม้แต่เทคโนโลยีในอนาคต (คอมพิวเตอร์ควอนตัม) ก็ไม่สามารถไขความลับของแผนที่สมบัติของคุณได้

PLONK: คราวนี้ คุณสร้างชุดปริศนา โดยแต่ละปริศนาจะชี้ไปยังตำแหน่งของสมบัติ คุณนำเสนอวิธีการสากลในการตรวจสอบคำตอบของปริศนาเหล่านี้ (การตั้งค่าสากล) แก่อีกฝ่าย ซึ่งเพียงพอสำหรับพวกเขาที่จะเชื่อว่าคุณรู้คำตอบทั้งหมดโดยไม่ต้องไขปริศนาทีละข้อ

กันกระสุน: คุณตัดสินใจที่จะพิสูจน์ว่าคุณทราบระยะโดยประมาณของตำแหน่งของสมบัติโดยไม่เปิดเผยตำแหน่งที่แน่นอน คุณจัดเตรียมชุดวิธีแก้ปัญหาทางคณิตศาสตร์ที่แสดงให้เห็นช่วงตำแหน่งของสมบัติ วิธีการของคุณไม่จำเป็นต้องใช้มาร์กเกอร์หรือเทคนิคการพิมพ์พิเศษใดๆ ซึ่งหมายความว่าไม่มีข้อกำหนดการเชื่อถือเบื้องต้น

ในการเปรียบเทียบนี้:

  • zk-SNARK ต้องการความไว้วางใจในแหล่งที่มาของชิ้นส่วนปริศนาของคุณ (การตั้งค่าที่เชื่อถือได้) แต่ให้หลักฐานที่มีขนาดเล็กมากและรวดเร็วในการตรวจสอบ
  • zk-STARK ไม่ต้องการความไว้วางใจจากแหล่งใดๆ ทำให้การพิสูจน์มีความแข็งแกร่งยิ่งขึ้น และเหมาะสำหรับการรักษาความปลอดภัยในระยะยาวและภัยคุกคามในอนาคต
  • PLONK นำเสนอวิธีการตรวจสอบที่มีประสิทธิภาพแบบใช้ครั้งเดียวและใช้งานได้หลายครั้ง ซึ่งหมายความว่าคุณต้องพยายามเพียงครั้งเดียวเพื่อพิสูจน์หลายครั้งว่าคุณทราบตำแหน่งของสมบัติ
  • กันกระสุนทำให้คุณสามารถพิสูจน์ข้อมูลเกี่ยวกับระยะตำแหน่งของสมบัติได้โดยไม่ต้องมีข้อกำหนดความน่าเชื่อถือเบื้องต้น แม้ว่าประสิทธิภาพของการสร้างและการตรวจสอบหลักฐานอาจไม่ตรงกับสองประการแรกก็ตาม

แต่ละวิธีมีข้อดีข้อเสียในการใช้งานจริง และตัวเลือกจะขึ้นอยู่กับสถานการณ์การใช้งานเฉพาะและความต้องการด้านความปลอดภัย

การเปรียบเทียบแบบแผน ZKP ต่างๆ อย่างง่ายๆ

ก่อนที่จะเปรียบเทียบ เราต้องเข้าใจเกณฑ์ในการประเมิน ZKP ก่อน:

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

ตอนนี้ เรามาเปรียบเทียบ zk-SNARKs, zk-STARKs, PLONK และ Bulletproofs ตามตัวบ่งชี้เหล่านี้ และหารือเกี่ยวกับข้อดีข้อเสีย

zk-SNARK

ข้อดี

  • ขนาดพิสูจน์: เล็กมาก ทำให้เหมาะสำหรับสภาพแวดล้อมที่มีแบนด์วิธจำกัด
  • เวลาในการตรวจสอบ: การตรวจสอบที่รวดเร็ว เหมาะสำหรับสถานการณ์ที่ต้องการการตอบสนองอย่างรวดเร็ว
  • ความเป็นสากล: ใช้ได้กับการคำนวณที่ซับซ้อนต่างๆ

ข้อเสีย

  • เวลาพิสูจน์และการใช้หน่วยความจำ: การสร้างหลักฐานอาจใช้เวลานานและใช้หน่วยความจำมาก
  • การตั้งค่าที่เชื่อถือได้: ต้องมีขั้นตอนการตั้งค่าที่เชื่อถือได้เริ่มต้น หากถูกบุกรุก ความปลอดภัยของระบบก็ตกอยู่ในความเสี่ยง
  • การรักษาความปลอดภัยหลังควอนตัม: โครงสร้างส่วนใหญ่ไม่ปลอดภัยหลังควอนตัม

zk-STARK

ข้อดี

  • ไม่มีการตั้งค่าที่เชื่อถือได้: ขจัดความจำเป็นในการตั้งค่าที่เชื่อถือได้ ช่วยเพิ่มความปลอดภัยของระบบ
  • การรักษาความปลอดภัยหลังควอนตัม: ต้านทานการโจมตีจากคอมพิวเตอร์ควอนตัม
  • ขนาดพิสูจน์: แม้ว่าจะใหญ่กว่า zk-SNARK แต่ยังคงสามารถจัดการได้ภายใต้เงื่อนไขบางประการ

ข้อเสีย

  • ขนาดพิสูจน์: ใหญ่กว่า zk-SNARK ซึ่งอาจลดประสิทธิภาพการจัดเก็บและการส่งผ่านข้อมูล
  • เวลาพิสูจน์: อาจช้ากว่า zk-SNARK โดยเฉพาะในการคำนวณที่ซับซ้อน

พลองค์

ข้อดี

  • ความเป็นสากล: ชุดพารามิเตอร์หนึ่งชุดใช้กับการพิสูจน์ที่แตกต่างกันหลายรายการ ช่วยลดการทำงานซ้ำซ้อน
  • ขนาดการพิสูจน์: ค่อนข้างเล็ก แม้ว่าจะใหญ่กว่า zk-SNARKs ก็ตาม
  • ความสามารถในการอัปเดต: อัปเดตและบำรุงรักษาได้ง่าย

ข้อเสีย

  • การตั้งค่าที่เชื่อถือได้: แม้ว่าจะเข้มงวดน้อยกว่า zk-SNARKs' แต่ก็ยังจำเป็นต้องมีการตั้งค่า
  • การรักษาความปลอดภัยหลังควอนตัม: ในทำนองเดียวกัน โครงสร้างส่วนใหญ่ไม่ปลอดภัยหลังควอนตัม

กันกระสุน

ข้อดี

  • ไม่มีการตั้งค่าที่เชื่อถือได้: ไม่จำเป็นต้องตั้งค่าที่เชื่อถือได้ ซึ่งช่วยลดความเสี่ยงด้านความปลอดภัย
  • ขนาดการพิสูจน์: ขนาดการพิสูจน์จะขยายอย่างช้าๆ ตามความซับซ้อนของข้อความ
  • เวลาในการตรวจสอบ: รวดเร็วสำหรับการพิสูจน์ช่วง

ข้อเสีย

  • เวลาพิสูจน์: การสร้างการพิสูจน์อาจใช้เวลานานกว่า
  • ขนาดการพิสูจน์: แม้ว่าจะเล็กกว่า แต่ก็ยังใหญ่กว่า zk-SNARKs ในการพิสูจน์ที่ใหญ่กว่า
  • การรักษาความปลอดภัยหลังควอนตัม: ไม่ได้ออกแบบมาโดยเฉพาะสำหรับสภาพแวดล้อมหลังควอนตัม

กรณีการใช้งานของ ZKP ใน Web3

ใน Web3 มีกรณีการสมัคร ZKP มากมาย และเราได้เลือกกรณีทั่วไปสองกรณีเพื่อการศึกษา

การปรับขนาดบล็อคเชน - Ethereum Layer2

zk-Rollups เป็นโซลูชันเลเยอร์ 2 ที่รวมธุรกรรมนอกเครือข่ายนับร้อยหรือหลายพันรายการและสร้างหลักฐาน zk-SNARK หลักฐานนี้พร้อมกับข้อมูลธุรกรรมจะถูกส่งไปยังเครือข่ายหลักของ Ethereum ช่วยให้สามารถตรวจสอบความถูกต้องของธุรกรรมโดยไม่ต้องมีห่วงโซ่หลักประมวลผลแต่ละธุรกรรม จึงช่วยลดค่าธรรมเนียมและเพิ่มปริมาณงาน zk-Sync Era และ Starknet ได้นำเทคโนโลยี zk-rollup มาใช้ และ Polygon เพิ่งเปิดตัว Polygon zk-EVM โดยใช้ zk-rollups

การสาธิตการใช้งาน zk-SNARKs ในเลเยอร์ 2 (ที่มา: Simon Brown)

ความเป็นส่วนตัวของข้อมูล - หลักฐานการสำรองการแลกเปลี่ยน

หลักฐานการสำรองการแลกเปลี่ยนหมายถึงการตรวจสอบยอดคงเหลือที่ถือโดยการแลกเปลี่ยนสกุลเงินดิจิทัลหรือสถาบันการเงินอื่น ๆ เพื่อให้แน่ใจว่าสินทรัพย์ที่บันทึกไว้ตรงกับสินทรัพย์จริงที่ถืออยู่ ในตอนแรก Exchange ใช้ Merkle Tree และบริษัทตรวจสอบบุคคลที่สามสำหรับการตรวจสอบนี้ แต่กระบวนการนี้อาศัยบุคคลที่สามและอาจรั่วไหลข้อมูลส่วนตัวของผู้ใช้ เช่น ยอดคงเหลือในบัญชี ตลาดแลกเปลี่ยนอย่าง Gate.io กำลังใช้เทคโนโลยี zk-SNARKs สำหรับการพิสูจน์การจอง การเข้ารหัสข้อมูลผู้ใช้ และรับหมายเลขสินทรัพย์ของผู้ใช้ผ่านวงจร zk-SNARK ดังนั้นจึงออกรายงานการพิสูจน์การจองที่สมบูรณ์

บทสรุป

โซลูชั่นที่หลากหลายของเทคโนโลยีพิสูจน์ความรู้เป็นศูนย์เน้นศักยภาพอันทรงพลังใน Web3 ตั้งแต่การปกป้องความเป็นส่วนตัวของข้อมูลไปจนถึงการปรับขนาดบล็อกเชน ZKP มีความสำคัญต่อการสร้างโครงสร้างพื้นฐาน Web3 ที่ปลอดภัยและมีประสิทธิภาพ แม้ว่าแนวทางที่แตกต่างกันจะมีข้อดีและข้อจำกัดต่างกัน แต่แนวทางเหล่านี้กลับชี้ไปที่อนาคตดิจิทัลที่น่าเชื่อถือและได้รับการปกป้องความเป็นส่วนตัวมากขึ้น เมื่อเทคโนโลยีก้าวหน้า ความท้าทายในการเพิ่มประสิทธิภาพและความปลอดภัยด้วย ZKP จะค่อยๆ ได้รับการแก้ไข ซึ่งบ่งชี้ถึงบทบาทที่สำคัญมากขึ้นในโลกดิจิทัล

ผู้เขียน: Wayne
นักแปล: Piper
ผู้ตรวจทาน: Piccolo、Edward、Elisa、Ashley He、Joyce
* ข้อมูลนี้ไม่ได้มีวัตถุประสงค์เป็นคำแนะนำทางการเงินหรือคำแนะนำอื่นใดที่ Gate.io เสนอหรือรับรอง
* บทความนี้ไม่สามารถทำซ้ำ ส่งต่อ หรือคัดลอกโดยไม่อ้างอิงถึง Gate.io การฝ่าฝืนเป็นการละเมิดพระราชบัญญัติลิขสิทธิ์และอาจถูกดำเนินการทางกฎหมาย

คำอธิบายโดยละเอียดของการพิสูจน์ความรู้เป็นศูนย์ (ZKP)

กลาง11/28/2023, 11:05:05 AM
Zero-Knowledge Proof (ZKP) เป็นวิธีการเข้ารหัสที่ช่วยให้ฝ่ายหนึ่ง (เรียกว่าผู้พิสูจน์) สามารถพิสูจน์ให้อีกฝ่ายหนึ่ง (เรียกว่าผู้ตรวจสอบ) ว่าข้อความนั้นเป็นจริง โดยไม่ต้องเปิดเผยข้อมูลอื่นใด โซลูชัน ZKP ที่ได้รับความนิยม ได้แก่ zk-SNARKS, zk-STARKS, PLONK และ Bulletproofs บทความนี้จะแนะนำโซลูชัน ZKP ทั้งสี่ประเภทนี้และวิเคราะห์ข้อดีและข้อเสีย

พื้นหลัง

Zero-Knowledge Proof (ZKP) เป็นเทคโนโลยีการเข้ารหัสที่นำมาใช้ครั้งแรกในบทความเรื่อง "The Knowledge Complexity Of Interactive Proof Systems" ในช่วงต้นทศวรรษ 1980 โดย S.Goldwasser, S.Micali และ C.Rackoff เดิมทีคิดว่าเป็นแบบจำลองทางทฤษฎี โดยมีเป้าหมายเพื่อจัดการกับความท้าทายในการตรวจสอบความถูกต้องของข้อความทางคณิตศาสตร์โดยไม่ต้องเปิดเผยหลักฐานใดๆ แนวคิดนี้ได้รับความสนใจอย่างกว้างขวางในโลกวิชาการสำหรับการท้าทายขอบเขตของเทคนิคการเข้ารหัสแบบดั้งเดิม และนำเสนอแนวทางใหม่ในการจัดการข้อมูลที่ละเอียดอ่อน

เมื่อเวลาผ่านไป ZKP พัฒนาจากแนวคิดทางทฤษฎีเชิงนามธรรมไปเป็นโปรโตคอลที่เป็นรูปธรรมซึ่งสามารถรวมเข้ากับการใช้งานต่างๆ ได้ ในช่วงต้นศตวรรษที่ 21 ด้วยการเติบโตอย่างรวดเร็วของอินเทอร์เน็ตและการสื่อสารดิจิทัล ศักยภาพของ ZKP จึงเริ่มถูกสำรวจในโลกแห่งความเป็นจริง โดยเฉพาะอย่างยิ่งกับการเพิ่มขึ้นของบล็อกเชนและสกุลเงินดิจิทัล ZKP แสดงให้เห็นถึงความสามารถในการปรับปรุงความเป็นส่วนตัวและความปลอดภัย ในขณะเดียวกันก็รักษาประสิทธิภาพของธุรกรรมและการประมวลผลข้อมูล

ปัจจุบัน ZKP ไม่เพียงแต่เป็นประเด็นร้อนในการวิจัยด้านการเข้ารหัสเท่านั้น แต่ยังถูกรวมเข้ากับแพลตฟอร์มและแอปพลิเคชันบล็อกเชนต่างๆ อีกด้วย ตัวอย่างเช่น แอปพลิเคชันของ zk-SNARKs บน Ethereum Layer2 นำเสนอธุรกรรมแบบไม่เปิดเผยตัวตนโดยไม่เปิดเผยรายละเอียดธุรกรรม การเปลี่ยนแปลงจากทฤษฎีไปสู่การใช้งานจริงนี้ไม่เพียงแต่พิสูจน์คุณค่าในทางปฏิบัติของ ZKP แต่ยังผลักดันการสำรวจปฏิสัมพันธ์ทางดิจิทัลที่มีประสิทธิภาพและปลอดภัยยิ่งขึ้นอีกด้วย ด้วยความก้าวหน้าทางเทคโนโลยีอย่างต่อเนื่อง ZKP มีบทบาทสำคัญในการปกป้องความเป็นส่วนตัว รับรองความปลอดภัยของข้อมูล และสร้างระบบดิจิทัลที่น่าเชื่อถือ

ความหมายและหลักการของ ZKP

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

แผนภาพแนวคิดการพิสูจน์ความรู้เป็นศูนย์ (ที่มา: ChainLink)

หลักการสำคัญของ Zero-Knowledge Proofs (ZKP) สามารถกำหนดได้ด้วยคุณลักษณะ 3 ประการต่อไปนี้:

  • ความสมบูรณ์: หากข้อความเป็นจริง ผู้พิสูจน์ที่ซื่อสัตย์สามารถผ่านการทดสอบของผู้ตรวจสอบได้เสมอ
  • ความสมบูรณ์: หากข้อความเป็นเท็จ ผู้พิสูจน์ที่หลอกลวงจะมีโอกาสเพียงเล็กน้อยเท่านั้นที่จะทำให้ผู้ตรวจสอบเข้าใจผิดว่าข้อความดังกล่าวเป็นความจริง
  • ความรู้เป็นศูนย์: หากข้อความเป็นจริง ผู้ตรวจสอบจะไม่เรียนรู้ข้อมูลเพิ่มเติมอื่นใดนอกจากข้อเท็จจริงที่ว่าข้อความนั้นถูกต้อง กล่าวอีกนัยหนึ่ง กระบวนการตรวจสอบไม่ได้เปิดเผยข้อมูลใดๆ ที่สามารถนำมาใช้สร้างหลักฐานได้

หลักการของ ZKP มักเข้าใจได้จากตัวอย่างง่ายๆ: หากฉันต้องการพิสูจน์ให้บุคคล A ทราบว่าฉันมีหมายเลขโทรศัพท์ของบุคคล B ฉันไม่จำเป็นต้องเปิดเผยหมายเลขของ B กับ A โดยตรง แต่ฉันสามารถพิสูจน์ได้โดยการโทรไปยังหมายเลขของ B . เมื่อเชื่อมต่อสายแล้ว ก็แสดงว่าฉันมีหมายเลขของ B จริงๆ โดยไม่เปิดเผยข้อมูลใดๆ เกี่ยวกับหมายเลขนั้น

ในการใช้งานจริง ZKP มักต้องใช้โครงสร้างทางคณิตศาสตร์ที่ซับซ้อน เช่น สมการพหุนาม เส้นโค้งวงรี หรือการท้าทายทางคณิตศาสตร์อื่นๆ ความปลอดภัยของโครงสร้างเหล่านี้ขึ้นอยู่กับความยากในการคำนวณของปัญหา เช่น การแยกตัวประกอบหรือลอการิทึมแบบไม่ต่อเนื่อง ด้วยความก้าวหน้าของการเข้ารหัส ทำให้มีการใช้งาน ZKP ที่หลากหลาย เช่น zk-SNARKs และ zk-STARKs ซึ่งให้การปกป้องความเป็นส่วนตัวที่มีประสิทธิภาพในบริบทที่แตกต่างกัน โดยเฉพาะอย่างยิ่งในด้านบล็อกเชนและสกุลเงินดิจิทัล

รูปแบบพื้นฐานของการพิสูจน์ความรู้เป็นศูนย์ประกอบด้วยองค์ประกอบสามประการ: พยาน การท้าทาย และการตอบสนอง

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

ความท้าทาย: ผู้ตรวจสอบจะสุ่มเลือกคำถามอื่นจากชุดและขอให้ผู้พิสูจน์คำตอบ

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

ในตัวอย่างการโทรที่กล่าวมาข้างต้น “ฉัน” เป็นพยานที่ไม่เต็มใจที่จะเปิดเผยข้อมูล ในขณะที่ A เป็นผู้ตรวจสอบ และความท้าทายที่เกิดขึ้นคือ “พิสูจน์ว่า 'ฉัน' มีหมายเลขของ B” กระบวนการตอบกลับเกี่ยวข้องกับ "ฉัน" โดยเชื่อมต่อการโทรไปยังหมายเลขของ B เพื่อพิสูจน์ว่าฉันได้รับหมายเลขนั้นจริงๆ

เหตุใดจึงจำเป็นต้องมี ZKP

ตามที่กล่าวไว้ก่อนหน้านี้ Zero-Knowledge Proofs (ZKP) มอบข้อได้เปรียบที่สำคัญในขอบเขตของการคุ้มครองความเป็นส่วนตัวโดยธรรมชาติ ในยุคที่ข้อมูลล้นหลามในปัจจุบัน ข้อมูลส่วนบุคคลมักถูกจัดเก็บไว้ในแพลตฟอร์มของบุคคลที่สาม ซึ่งเพิ่มความเสี่ยงต่อการละเมิดข้อมูล นอกจากนี้ เนื่องจากอุปสรรคทางเทคนิคและความล่าช้าในการคว่ำบาตรทางกฎหมาย ความปลอดภัยของข้อมูลจึงขึ้นอยู่กับข้อจำกัดทางจริยธรรมเป็นส่วนใหญ่ ทำให้เป็นเรื่องยากสำหรับผู้ใช้ในการควบคุมข้อมูลส่วนตัวของตนอย่างแท้จริง การถือกำเนิดของเทคโนโลยี ZKP มอบโซลูชันที่ทั้งปกป้องความเป็นส่วนตัวและเพิ่มประสิทธิภาพในการตรวจสอบและความปลอดภัย

เมื่อเปรียบเทียบกับเทคโนโลยีการเข้ารหัสอื่นๆ ZKP มีข้อดีหลายประการ:

  • การคุ้มครองความเป็นส่วนตัว: ZKP อนุญาตให้บุคคลและสถาบันพิสูจน์ความจริงของข้อมูลบางอย่างโดยไม่ต้องเปิดเผยเนื้อหาที่แท้จริงของข้อมูล ตัวอย่างเช่น สามารถใช้เพื่อพิสูจน์ว่าบุคคลนั้นมีคุณสมบัติตรงตามข้อกำหนดด้านอายุ โดยไม่เปิดเผยอายุหรือวันเกิดที่แท้จริง
  • การรักษาความปลอดภัยขั้นสูง: เนื่องจาก ZKP ไม่ต้องการการเปิดเผยข้อมูลที่ละเอียดอ่อน จึงลดความเสี่ยงของการรั่วไหลของข้อมูล แม้ว่าการสกัดกั้นจะเกิดขึ้นในระหว่างกระบวนการพิสูจน์ แต่ก็ไม่มีการเปิดเผยข้อมูลที่สำคัญ
  • การฉ้อโกงที่ลดลง: ในธุรกรรมทางการเงิน สามารถใช้ ZKP เพื่อตรวจสอบความถูกต้องของธุรกรรมโดยไม่ต้องเปิดเผยรายละเอียดเฉพาะเจาะจง ซึ่งจะช่วยลดโอกาสในการฉ้อโกงได้
  • ประสิทธิภาพ: ZKP บางประเภท เช่น zk-SNARK นั้นสร้างและตรวจสอบได้รวดเร็วมาก ซึ่งเป็นประโยชน์สำหรับระบบที่ต้องประมวลผลธุรกรรมจำนวนมากหรือการดำเนินการตรวจสอบ
  • ความสามารถในการทำงานร่วมกัน: ZKP จัดให้มีกรอบการทำงานทั่วไปสำหรับการตรวจสอบระหว่างระบบและโดเมนที่แตกต่างกัน ช่วยให้สามารถตรวจสอบและแบ่งปันข้อมูลระหว่างระบบต่างๆ ได้อย่างปลอดภัย
  • ความสามารถในการปรับขนาด: ด้วยวิวัฒนาการของเทคโนโลยีคอมพิวเตอร์ การนำ ZKP ไปใช้มีประสิทธิภาพและปรับขนาดได้มากขึ้น ซึ่งหมายความว่าสามารถนำไปใช้งานในระบบขนาดใหญ่ขึ้นได้
  • การปฏิบัติตามกฎระเบียบ: ในสภาพแวดล้อมด้านกฎระเบียบในปัจจุบันที่ต้องการการคุ้มครองความเป็นส่วนตัวของผู้บริโภค ZKP สามารถช่วยบริษัทต่างๆ ตรวจสอบและประมวลผลข้อมูลโดยไม่ละเมิดกฎหมายความเป็นส่วนตัว
  • การควบคุมผู้ใช้: ZKP ปรับปรุงการควบคุมข้อมูลของผู้ใช้ เนื่องจากสามารถเลือกจำนวนข้อมูลที่จะเปิดเผยได้
  • การกระจายอำนาจ: ในบล็อกเชนและเทคโนโลยีแบบกระจาย ZKP นำเสนอเครื่องมือความเป็นส่วนตัวที่ทรงพลังสำหรับการกระจายอำนาจ ทำให้ผู้ใช้สามารถทำธุรกรรมและโต้ตอบได้โดยไม่ต้องพึ่งพาหน่วยงานกลาง

ไม่ว่าจะเป็นใน Web 2.0 แบบดั้งเดิมหรือโดเมน Web 3.0 ที่เกิดขึ้นใหม่ โอกาสในการประยุกต์ใช้งานของ ZKP นั้นกว้างขวาง

ประเภทของ Zero-Knowledge Proofs (ZKP)

มีการใช้งานการพิสูจน์ความรู้แบบศูนย์หลายวิธี เช่น zk-SNARKs, zk-STARKs, PLONK และ Bulletproofs แต่ละประเภทมีข้อดีและข้อเสียในแง่ของขนาดการพิสูจน์ เวลาในการพิสูจน์ และเวลาการตรวจสอบ บทความนี้มุ่งเน้นไปที่การแนะนำสี่ประเภทที่ใช้บ่อยที่สุดในสถานการณ์แอปพลิเคชัน

zk-SNARK

zk-SNARKs ซึ่งย่อมาจาก “Zero-Knowledge Succinct Non-Interactive Argument of Knowledge” เป็นเครื่องมือเข้ารหัสที่ใช้ในการพิสูจน์ว่ามีคนรู้ข้อมูลชิ้นหนึ่งโดยไม่เปิดเผยข้อมูลใดๆ ใน zk-SNARK “ความรู้เป็นศูนย์” หมายความว่าผู้พิสูจน์สามารถพิสูจน์ได้ว่าข้อความนั้นเป็นจริงโดยไม่ต้องให้ข้อมูลใดๆ นอกเหนือจากความถูกต้อง “ความกระชับ” หมายถึง การพิสูจน์ที่มีขนาดเล็กและความรวดเร็วของกระบวนการตรวจสอบ “แบบไม่โต้ตอบ” หมายถึงเมื่อมีการสร้างหลักฐานขึ้น ใครก็ตามก็สามารถตรวจสอบได้โดยไม่ต้องมีปฏิสัมพันธ์ระหว่างผู้พิสูจน์และผู้ตรวจสอบอีกต่อไป ส่วนประกอบหลักของ zk-SNARK ประกอบด้วย:

  • การตั้งค่าที่เชื่อถือได้: ในระหว่างการเริ่มต้นระบบ จำเป็นต้องสร้างคู่ของคีย์สาธารณะ/ส่วนตัว (พารามิเตอร์) กระบวนการนี้จะต้องดำเนินการโดยบุคคลที่เชื่อถือได้ เนื่องจากความปลอดภัยของระบบอาจถูกบุกรุกได้หากคีย์ส่วนตัวรั่วไหล
  • การสร้างหลักฐาน: ผู้พิสูจน์ทราบข้อมูลลับแต่ไม่ต้องการเปิดเผยต่อผู้ตรวจสอบ พวกเขาใช้ข้อมูลลับนี้และพารามิเตอร์สาธารณะเพื่อสร้างหลักฐานที่เพียงพอแสดงให้เห็นว่าพวกเขารู้ความลับโดยไม่เปิดเผยรายละเอียดใด ๆ เกี่ยวกับมัน
  • กระบวนการตรวจสอบ: เมื่อผู้ตรวจสอบได้รับหลักฐานแล้ว พวกเขาสามารถใช้พารามิเตอร์สาธารณะเพื่อตรวจสอบความถูกต้องได้ หากผู้พิสูจน์สร้างหลักฐานที่ถูกต้อง กระบวนการตรวจสอบจะแสดงผลว่า "ใช่" มิฉะนั้นจะ "ไม่ใช่"

zk-SNARK ใช้ในสถานการณ์การรักษาความเป็นส่วนตัวต่างๆ เช่น สกุลเงินดิจิทัลที่มีธุรกรรมที่ไม่เปิดเผยตัวตน ระบบการลงคะแนนที่ปลอดภัย การรับรองความถูกต้องและการแบ่งปันข้อมูลแบบรักษาความเป็นส่วนตัว และเทคโนโลยีการขยายขนาดบล็อกเชน

zk-STARK

zk-STARKs หรือ “อาร์กิวเมนต์ความรู้แบบโปร่งใสที่ปรับขนาดได้เป็นศูนย์ความรู้” อนุญาตให้ฝ่ายหนึ่ง (ผู้พิสูจน์) พิสูจน์ให้อีกฝ่ายหนึ่ง (ผู้ตรวจสอบ) ทราบว่าตนทราบข้อมูลบางอย่างโดยไม่ต้องเปิดเผยข้อมูลนั้นเอง zk-STARK ต่างจาก zk-SNARK ตรงที่ไม่ต้องการกระบวนการตั้งค่าที่เชื่อถือได้ ซึ่งหมายความว่าพวกเขาไม่ได้พึ่งพาการรักษาความลับของข้อมูลส่วนตัวบางอย่าง ซึ่งเป็นคุณลักษณะที่มักถือว่ามีความสำคัญต่อการรักษาความปลอดภัย เนื่องจากการตั้งค่าที่เชื่อถือได้อาจเป็นช่องโหว่ของระบบได้

zk-STARK ทำงานบนแนวคิดจากสาขาทางคณิตศาสตร์หลายสาขา รวมถึงฟังก์ชันแฮช การคำนวณพหุนาม และทฤษฎีการแก้ไขข้อผิดพลาด พวกเขาใช้โครงสร้างที่เรียกว่า “อาร์กิวเมนต์โปร่งใสที่ปรับขนาดได้เป็นศูนย์ความรู้” ช่วยให้สร้างหลักฐานได้โดยไม่ต้องมีการตั้งค่าที่เชื่อถือได้ แอปพลิเคชันที่มีศักยภาพของ zk-STARK นั้นคล้ายคลึงกับแอปพลิเคชันของ zk-SNARK แต่เนื่องจากความสามารถในการปรับขนาดและความโปร่งใส จึงเหมาะอย่างยิ่งสำหรับแอปพลิเคชันขนาดใหญ่ รวมถึงสกุลเงินดิจิทัลที่รักษาความเป็นส่วนตัว เทคโนโลยีความสามารถในการปรับขนาดบล็อกเชน และการตรวจสอบความปลอดภัยในการประมวลผลแบบคลาวด์ .

พลองค์

PLONK ไม่ใช่ตัวย่อ หมายถึงนามสกุลของผู้สร้าง ได้รับการออกแบบมาเพื่อมอบโซลูชัน ZKP ที่เป็นสากลและมีประสิทธิภาพ โดยเฉพาะอย่างยิ่งในแอปพลิเคชันบล็อกเชน เช่น สัญญาอัจฉริยะ และธุรกรรมที่ได้รับการคุ้มครองความเป็นส่วนตัว หัวใจหลักของ PLONK คือการใช้เทคนิค "การซ่อนแบบโฮโมมอร์ฟิก" ซึ่งช่วยให้สามารถดำเนินการทางคณิตศาสตร์กับข้อมูลได้โดยไม่ต้องเปิดเผยข้อมูลต้นฉบับ ใช้อัลกอริธึมพิเศษ - โครงการความมุ่งมั่นแบบพหุโนเมียล - เพื่อสร้างข้อพิสูจน์ ช่วยให้ผู้พิสูจน์พิสูจน์สามารถพิสูจน์ได้อย่างมีประสิทธิภาพว่าพวกเขามีผลการคำนวณที่ถูกต้องสำหรับชุดข้อมูล

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

กันกระสุน

กันกระสุนเป็นโซลูชั่น ZKP ที่เพิ่งเปิดตัว ไม่ต้องการการตั้งค่าที่เชื่อถือได้ และได้รับการออกแบบมาโดยเฉพาะสำหรับการสร้างการพิสูจน์ช่วงและการพิสูจน์ทางคณิตศาสตร์บางประเภท เสนอโดย Benedikt Bunz, Jonathan Bootle, Dan Boneh และคนอื่นๆ ในปี 2017 Bulletproofs ทำงานบนโครงสร้างทางคณิตศาสตร์ที่ซับซ้อน เช่น การเข้ารหัสแบบโฮโมมอร์ฟิก และการเข้ารหัสแบบเส้นโค้งวงรี พวกเขาใช้ประโยชน์จากชุดเทคนิคทางคณิตศาสตร์เพื่อให้ผู้พิสูจน์สามารถสร้างการพิสูจน์ช่วงที่มีประสิทธิภาพสำหรับตัวเลขโดยไม่ต้องเปิดเผยค่าที่แน่นอน โดยเฉพาะอย่างยิ่งในโดเมนสกุลเงินดิจิทัล สามารถใช้เพื่อพิสูจน์ว่ามูลค่าธุรกรรมอยู่ในช่วงที่กฎหมายกำหนดโดยไม่เปิดเผยมูลค่าธุรกรรมจริง

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

กรณีศึกษา

มาทำความเข้าใจเทคโนโลยี Zero-Knowledge Proof (ZKP) ที่แตกต่างกันทั้งสี่นี้กันดีกว่า—zk-SNARKs, zk-STARKs, PLONK และ Bulletproofs—ผ่านการเทียบเคียงแผนที่สมบัติ

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

zk-SNARKs: คุณสร้างปริศนาจิ๊กซอว์ที่ซับซ้อนของแผนที่สมบัติ คุณเลือกชิ้นส่วนเล็กๆ ที่สำคัญของปริศนานี้ (หลักฐาน) แล้วแสดงให้อีกฝ่ายเห็น ซึ่งเพียงพอที่จะโน้มน้าวพวกเขาว่าคุณรู้วิธีประกอบปริศนาที่สมบูรณ์ กล่าวคือ ตำแหน่งของสมบัติ โดยไม่เปิดเผยปริศนาทั้งหมด อย่างไรก็ตาม ในการดำเนินการนี้ คุณต้องมีเครื่องหมายพิเศษจากเครื่องพิมพ์ที่เชื่อถือได้เพื่อพิสูจน์ว่าชิ้นส่วนปริศนาของคุณเป็นของแท้

zk-STARKs: คุณแสดงส่วนหนึ่งของแผนที่ขุมทรัพย์ให้อีกฝ่ายเห็น โดยบอกพวกเขาว่าพวกเขาสามารถใช้แว่นขยายพิเศษ (อัลกอริธึมการตรวจสอบ) เพื่อสุ่มตรวจสอบรายละเอียดของแผนที่เพื่อยืนยันว่ามันชี้ไปที่สมบัติจริงๆ โดยไม่จำเป็นต้องรู้ ตำแหน่งที่แน่นอนของสมบัติ แว่นขยายนี้ทรงพลังมากจนแม้แต่เทคโนโลยีในอนาคต (คอมพิวเตอร์ควอนตัม) ก็ไม่สามารถไขความลับของแผนที่สมบัติของคุณได้

PLONK: คราวนี้ คุณสร้างชุดปริศนา โดยแต่ละปริศนาจะชี้ไปยังตำแหน่งของสมบัติ คุณนำเสนอวิธีการสากลในการตรวจสอบคำตอบของปริศนาเหล่านี้ (การตั้งค่าสากล) แก่อีกฝ่าย ซึ่งเพียงพอสำหรับพวกเขาที่จะเชื่อว่าคุณรู้คำตอบทั้งหมดโดยไม่ต้องไขปริศนาทีละข้อ

กันกระสุน: คุณตัดสินใจที่จะพิสูจน์ว่าคุณทราบระยะโดยประมาณของตำแหน่งของสมบัติโดยไม่เปิดเผยตำแหน่งที่แน่นอน คุณจัดเตรียมชุดวิธีแก้ปัญหาทางคณิตศาสตร์ที่แสดงให้เห็นช่วงตำแหน่งของสมบัติ วิธีการของคุณไม่จำเป็นต้องใช้มาร์กเกอร์หรือเทคนิคการพิมพ์พิเศษใดๆ ซึ่งหมายความว่าไม่มีข้อกำหนดการเชื่อถือเบื้องต้น

ในการเปรียบเทียบนี้:

  • zk-SNARK ต้องการความไว้วางใจในแหล่งที่มาของชิ้นส่วนปริศนาของคุณ (การตั้งค่าที่เชื่อถือได้) แต่ให้หลักฐานที่มีขนาดเล็กมากและรวดเร็วในการตรวจสอบ
  • zk-STARK ไม่ต้องการความไว้วางใจจากแหล่งใดๆ ทำให้การพิสูจน์มีความแข็งแกร่งยิ่งขึ้น และเหมาะสำหรับการรักษาความปลอดภัยในระยะยาวและภัยคุกคามในอนาคต
  • PLONK นำเสนอวิธีการตรวจสอบที่มีประสิทธิภาพแบบใช้ครั้งเดียวและใช้งานได้หลายครั้ง ซึ่งหมายความว่าคุณต้องพยายามเพียงครั้งเดียวเพื่อพิสูจน์หลายครั้งว่าคุณทราบตำแหน่งของสมบัติ
  • กันกระสุนทำให้คุณสามารถพิสูจน์ข้อมูลเกี่ยวกับระยะตำแหน่งของสมบัติได้โดยไม่ต้องมีข้อกำหนดความน่าเชื่อถือเบื้องต้น แม้ว่าประสิทธิภาพของการสร้างและการตรวจสอบหลักฐานอาจไม่ตรงกับสองประการแรกก็ตาม

แต่ละวิธีมีข้อดีข้อเสียในการใช้งานจริง และตัวเลือกจะขึ้นอยู่กับสถานการณ์การใช้งานเฉพาะและความต้องการด้านความปลอดภัย

การเปรียบเทียบแบบแผน ZKP ต่างๆ อย่างง่ายๆ

ก่อนที่จะเปรียบเทียบ เราต้องเข้าใจเกณฑ์ในการประเมิน ZKP ก่อน:

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

ตอนนี้ เรามาเปรียบเทียบ zk-SNARKs, zk-STARKs, PLONK และ Bulletproofs ตามตัวบ่งชี้เหล่านี้ และหารือเกี่ยวกับข้อดีข้อเสีย

zk-SNARK

ข้อดี

  • ขนาดพิสูจน์: เล็กมาก ทำให้เหมาะสำหรับสภาพแวดล้อมที่มีแบนด์วิธจำกัด
  • เวลาในการตรวจสอบ: การตรวจสอบที่รวดเร็ว เหมาะสำหรับสถานการณ์ที่ต้องการการตอบสนองอย่างรวดเร็ว
  • ความเป็นสากล: ใช้ได้กับการคำนวณที่ซับซ้อนต่างๆ

ข้อเสีย

  • เวลาพิสูจน์และการใช้หน่วยความจำ: การสร้างหลักฐานอาจใช้เวลานานและใช้หน่วยความจำมาก
  • การตั้งค่าที่เชื่อถือได้: ต้องมีขั้นตอนการตั้งค่าที่เชื่อถือได้เริ่มต้น หากถูกบุกรุก ความปลอดภัยของระบบก็ตกอยู่ในความเสี่ยง
  • การรักษาความปลอดภัยหลังควอนตัม: โครงสร้างส่วนใหญ่ไม่ปลอดภัยหลังควอนตัม

zk-STARK

ข้อดี

  • ไม่มีการตั้งค่าที่เชื่อถือได้: ขจัดความจำเป็นในการตั้งค่าที่เชื่อถือได้ ช่วยเพิ่มความปลอดภัยของระบบ
  • การรักษาความปลอดภัยหลังควอนตัม: ต้านทานการโจมตีจากคอมพิวเตอร์ควอนตัม
  • ขนาดพิสูจน์: แม้ว่าจะใหญ่กว่า zk-SNARK แต่ยังคงสามารถจัดการได้ภายใต้เงื่อนไขบางประการ

ข้อเสีย

  • ขนาดพิสูจน์: ใหญ่กว่า zk-SNARK ซึ่งอาจลดประสิทธิภาพการจัดเก็บและการส่งผ่านข้อมูล
  • เวลาพิสูจน์: อาจช้ากว่า zk-SNARK โดยเฉพาะในการคำนวณที่ซับซ้อน

พลองค์

ข้อดี

  • ความเป็นสากล: ชุดพารามิเตอร์หนึ่งชุดใช้กับการพิสูจน์ที่แตกต่างกันหลายรายการ ช่วยลดการทำงานซ้ำซ้อน
  • ขนาดการพิสูจน์: ค่อนข้างเล็ก แม้ว่าจะใหญ่กว่า zk-SNARKs ก็ตาม
  • ความสามารถในการอัปเดต: อัปเดตและบำรุงรักษาได้ง่าย

ข้อเสีย

  • การตั้งค่าที่เชื่อถือได้: แม้ว่าจะเข้มงวดน้อยกว่า zk-SNARKs' แต่ก็ยังจำเป็นต้องมีการตั้งค่า
  • การรักษาความปลอดภัยหลังควอนตัม: ในทำนองเดียวกัน โครงสร้างส่วนใหญ่ไม่ปลอดภัยหลังควอนตัม

กันกระสุน

ข้อดี

  • ไม่มีการตั้งค่าที่เชื่อถือได้: ไม่จำเป็นต้องตั้งค่าที่เชื่อถือได้ ซึ่งช่วยลดความเสี่ยงด้านความปลอดภัย
  • ขนาดการพิสูจน์: ขนาดการพิสูจน์จะขยายอย่างช้าๆ ตามความซับซ้อนของข้อความ
  • เวลาในการตรวจสอบ: รวดเร็วสำหรับการพิสูจน์ช่วง

ข้อเสีย

  • เวลาพิสูจน์: การสร้างการพิสูจน์อาจใช้เวลานานกว่า
  • ขนาดการพิสูจน์: แม้ว่าจะเล็กกว่า แต่ก็ยังใหญ่กว่า zk-SNARKs ในการพิสูจน์ที่ใหญ่กว่า
  • การรักษาความปลอดภัยหลังควอนตัม: ไม่ได้ออกแบบมาโดยเฉพาะสำหรับสภาพแวดล้อมหลังควอนตัม

กรณีการใช้งานของ ZKP ใน Web3

ใน Web3 มีกรณีการสมัคร ZKP มากมาย และเราได้เลือกกรณีทั่วไปสองกรณีเพื่อการศึกษา

การปรับขนาดบล็อคเชน - Ethereum Layer2

zk-Rollups เป็นโซลูชันเลเยอร์ 2 ที่รวมธุรกรรมนอกเครือข่ายนับร้อยหรือหลายพันรายการและสร้างหลักฐาน zk-SNARK หลักฐานนี้พร้อมกับข้อมูลธุรกรรมจะถูกส่งไปยังเครือข่ายหลักของ Ethereum ช่วยให้สามารถตรวจสอบความถูกต้องของธุรกรรมโดยไม่ต้องมีห่วงโซ่หลักประมวลผลแต่ละธุรกรรม จึงช่วยลดค่าธรรมเนียมและเพิ่มปริมาณงาน zk-Sync Era และ Starknet ได้นำเทคโนโลยี zk-rollup มาใช้ และ Polygon เพิ่งเปิดตัว Polygon zk-EVM โดยใช้ zk-rollups

การสาธิตการใช้งาน zk-SNARKs ในเลเยอร์ 2 (ที่มา: Simon Brown)

ความเป็นส่วนตัวของข้อมูล - หลักฐานการสำรองการแลกเปลี่ยน

หลักฐานการสำรองการแลกเปลี่ยนหมายถึงการตรวจสอบยอดคงเหลือที่ถือโดยการแลกเปลี่ยนสกุลเงินดิจิทัลหรือสถาบันการเงินอื่น ๆ เพื่อให้แน่ใจว่าสินทรัพย์ที่บันทึกไว้ตรงกับสินทรัพย์จริงที่ถืออยู่ ในตอนแรก Exchange ใช้ Merkle Tree และบริษัทตรวจสอบบุคคลที่สามสำหรับการตรวจสอบนี้ แต่กระบวนการนี้อาศัยบุคคลที่สามและอาจรั่วไหลข้อมูลส่วนตัวของผู้ใช้ เช่น ยอดคงเหลือในบัญชี ตลาดแลกเปลี่ยนอย่าง Gate.io กำลังใช้เทคโนโลยี zk-SNARKs สำหรับการพิสูจน์การจอง การเข้ารหัสข้อมูลผู้ใช้ และรับหมายเลขสินทรัพย์ของผู้ใช้ผ่านวงจร zk-SNARK ดังนั้นจึงออกรายงานการพิสูจน์การจองที่สมบูรณ์

บทสรุป

โซลูชั่นที่หลากหลายของเทคโนโลยีพิสูจน์ความรู้เป็นศูนย์เน้นศักยภาพอันทรงพลังใน Web3 ตั้งแต่การปกป้องความเป็นส่วนตัวของข้อมูลไปจนถึงการปรับขนาดบล็อกเชน ZKP มีความสำคัญต่อการสร้างโครงสร้างพื้นฐาน Web3 ที่ปลอดภัยและมีประสิทธิภาพ แม้ว่าแนวทางที่แตกต่างกันจะมีข้อดีและข้อจำกัดต่างกัน แต่แนวทางเหล่านี้กลับชี้ไปที่อนาคตดิจิทัลที่น่าเชื่อถือและได้รับการปกป้องความเป็นส่วนตัวมากขึ้น เมื่อเทคโนโลยีก้าวหน้า ความท้าทายในการเพิ่มประสิทธิภาพและความปลอดภัยด้วย ZKP จะค่อยๆ ได้รับการแก้ไข ซึ่งบ่งชี้ถึงบทบาทที่สำคัญมากขึ้นในโลกดิจิทัล

ผู้เขียน: Wayne
นักแปล: Piper
ผู้ตรวจทาน: Piccolo、Edward、Elisa、Ashley He、Joyce
* ข้อมูลนี้ไม่ได้มีวัตถุประสงค์เป็นคำแนะนำทางการเงินหรือคำแนะนำอื่นใดที่ Gate.io เสนอหรือรับรอง
* บทความนี้ไม่สามารถทำซ้ำ ส่งต่อ หรือคัดลอกโดยไม่อ้างอิงถึง Gate.io การฝ่าฝืนเป็นการละเมิดพระราชบัญญัติลิขสิทธิ์และอาจถูกดำเนินการทางกฎหมาย
เริ่มตอนนี้
สมัครและรับรางวัล
$100