I. Zero-Knowledge (ZK) | โดย Learning Bits

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

ลอนดอน

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

แนวคิดที่ทำให้เกิดสถานการณ์ข้างต้นเรียกว่า Zero-Knowledge (ZK) — เนื่องจากคุณสามารถแบ่งปันคุณลักษณะที่เป็นศูนย์เกี่ยวกับตัวคุณนอกเหนือจากที่คุณได้ระบุไว้แล้ว ตัวอย่าง:หากคุณต้องการซื้อไวน์ คุณสามารถสร้าง Zero Knowledge Proof (ZKP) ที่คุณอายุมากกว่า 18 ปีได้ คุณส่งหลักฐานนี้ไปยังบริษัทไวน์ และบริษัทจะตรวจสอบหลักฐานและขายให้คุณผ่านคณิตศาสตร์และเวทมนตร์ ไวน์. คุณไม่จำเป็นต้องเปิดเผยชื่อ สัญชาติของคุณ แม้กระทั่งวันเดือนปีเกิดของคุณ ฟังดูดีใช่ไหม?

ขอให้สนุกกับการอ่าน!

ดังนั้น… ZKP คืออะไร

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

กล่าวอีกนัยหนึ่ง ZKP เป็นวิธีที่ดีมากในการแบ่งปันข้อมูลให้น้อยที่สุดเท่าที่จะเป็นไปได้จาก A (ผู้พิสูจน์) ถึง B (ผู้ตรวจสอบ)¹

หรือพูดง่ายๆ ก็คือ ฝ่ายต่างๆ สามารถตรวจสอบความจริงของคำแถลงที่คุณพูดได้โดยที่พวกเขาไม่สามารถเข้าถึงข้อมูลที่ประกอบคำกล่าวของคุณ

คุณรู้หรือเปล่าว่า..?

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

ตัวอย่างเช่นหากคุณต้องการพิสูจน์ให้เพื่อนๆ เห็นว่าคุณมีผู้ติดตามมากกว่า 1,000 คนบน Twitter ขั้นตอนต่อไปคือสร้าง ZKP ให้มากกว่าจำนวนผู้ติดตามทั้งหมดในบัญชีของคุณและแบ่งปันกับเพื่อนของคุณ เพื่อนของคุณจะรู้ว่าผลลัพธ์นั้นถูกต้องเพราะการพิสูจน์ถูกสร้างขึ้นจากข้อมูลที่เป็นจริงอย่างปฏิเสธไม่ได้ เช่น

  1. คุณไม่สามารถปลอมแปลง/ประดิษฐ์จำนวนผู้ติดตาม Twitter ที่คุณมี
  2. ข้อมูลมาจากแหล่งที่เชื่อถือได้ (เช่น Twitter) และไม่ใช่แค่จากความคิดของใครบางคน

กรณีการใช้งานเพิ่มเติม

นี่เป็นเพียงไม่กี่วิธีที่ Zero Knowledge Proofs สามารถนำไปใช้ในชีวิตจริงได้:

Giphy.com

✔️ การเงิน: ING Bank³ ต้องการใช้ ZKP เพื่อให้ลูกค้าพิสูจน์ข้อเท็จจริงบางอย่างเกี่ยวกับตนเองโดยไม่ต้องเปิดเผยข้อมูลจริง ตัวอย่างเช่น หากมีคนต้องการกู้เงิน พวกเขาสามารถทำได้โดยพิสูจน์ว่ารายได้ของพวกเขาอยู่ในช่วงที่ธนาคารยอมรับ

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

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

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

โดยสรุป ต่อไปนี้คือตัวอย่างเพิ่มเติมเกี่ยวกับสิ่งที่คุณทำได้และไม่สามารถทำได้กับ ZKP:

แย่

OutDID ใช้ ZKP อย่างไร

ตัวอย่างข้างต้นอาจสะท้อนวิธีแก้ปัญหาของเราดังต่อไปนี้: เราใช้หนังสือเดินทาง (แหล่งข้อมูลที่ตรวจสอบแล้วเช่น Twitter) ซึ่งให้ข้อมูลเช่นวันเดือนปีเกิด สัญชาติ ฯลฯ (เป็นจำนวนผู้ติดตามบน Twitter) บนพื้นฐานของข้อมูลที่คุณ สามารถสร้างหลักฐาน เช่น มีอายุเกิน 18 ปี เป็นพลเมืองสหรัฐฯ เป็นต้น (หรือมีผู้ติดตามมากกว่า 1,000 คนบน Twitter)

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

ความท้าทายเล็กๆ

ตอนนี้คุณรู้แล้วว่า ZKP คืออะไร บอกเราในความคิดเห็นว่าทำไมเราไม่สามารถใช้เทคโนโลยีนี้ในตัวอย่างกับกางเกงจากบทนำ :)

และอย่าลืม…

สโลแกนของ Bitcoin

ฝากติดตามกันด้วยนะครับ

ครั้งหนึ่งเป็นส่วนตัว เป็นส่วนตัวตลอดไป คุณอยู่ใน?

เว็บไซต์ | โทรเลข | ลิงค์ดิน | ทวิตเตอร์ | ปานกลาง ❤

Giphy.com

ทรัพยากร:

  1. https://link.springer.com/content/pdf/10.1007/BF02351717.pdf
  2. https://www.blockchain-council.org/blockchain/zero-knowledge-proof-protocol/
  3. https://www.ingwb.com/en/insights/distributed-ledger-technology/ing-launches-major-addition-to-blockchain-technology
  4. https://www.rand.org/blog/2022/09/elon-musk-may-have-a-point-about-bots-on-twitter.html
  • https://www.youtube.com/watch?v=fOGdb1CTu5c
  • https://ethereum.org/en/zero-knowledge-proofs/
  • https://polygon.technology/blog/a-gentle-introduction-to-zero-knowledge-proofs