การขยายตัวของ Ethereum Layer 2 ทำไม V God ถึงชอบการยกเลิก ZK?
หมายเหตุบรรณาธิการ: บทความนี้มาจากข้อมูล Babbitt (รหัส: bitcoin8btc)หมายเหตุบรรณาธิการ: บทความนี้มาจาก
ข้อมูล Babbitt (รหัส: bitcoin8btc)
ข้อมูล Babbitt (รหัส: bitcoin8btc)
, ผู้แต่ง: Vitalik Buterin, แปล: ฟรีและง่าย, เผยแพร่โดยได้รับอนุญาต
คุณสมบัติที่มีค่าที่สุดประการหนึ่งของแอปพลิเคชันบล็อกเชนจำนวนมากคือความไม่ไว้วางใจ: แอปพลิเคชันสามารถทำงานต่อไปได้ตามที่ตั้งใจไว้โดยไม่ต้องพึ่งพาตัวแสดงบางตัวเพื่อให้ทำงานในลักษณะใดรูปแบบหนึ่ง (แม้ว่าความสนใจของพวกเขาอาจเปลี่ยนแปลงและกระตุ้นให้พวกเขาทำงานในลักษณะที่แตกต่างออกไป แบบที่คาดไม่ถึงในอนาคต) แอปพลิเคชั่น Blockchain ไม่เคยไว้ใจได้อย่างสมบูรณ์ แต่บางแอปพลิเคชั่นก็อยู่ใกล้กว่าแอปพลิเคชั่นอื่น ๆ หากเรากำลังมุ่งไปสู่การลดความไว้วางใจให้เหลือน้อยที่สุด เราต้องสามารถเปรียบเทียบระดับความไว้วางใจต่างๆ ได้
ประการแรก คำจำกัดความง่ายๆ ของความไว้วางใจของฉันคือ: ความไว้วางใจคือการใช้สมมติฐานใด ๆ เกี่ยวกับพฤติกรรมของผู้อื่น ก่อนเกิดโรคระบาด หากคุณเดินไปตามถนนโดยไม่ได้แน่ใจว่าคุณอยู่ห่างจากคนแปลกหน้า 2 เมตร แล้วจู่ๆ พวกเขาก็ไม่ยอมชักมีดออกมาแทงคุณ เป็นเรื่องของความเชื่อใจ ทั้งสองฝ่ายเชื่อว่าไม่ค่อยมีคน ความวิกลจริตอย่างเต็มที่ที่จะเชื่อว่าผู้ที่ใช้ระบบกฎหมายจะยังคงให้มาตรการที่เข้มงวดกับพฤติกรรมดังกล่าว เมื่อคุณรันโค้ดที่เขียนโดยคนอื่น คุณสามารถวางใจได้ว่าพวกเขาเขียนโค้ดนั้นอย่างตรงไปตรงมา (ไม่ว่าจะด้วยความเหมาะสมหรือผลประโยชน์ทางการเงินในการรักษาชื่อเสียง) หรืออย่างน้อยก็มีคนตรวจสอบมากพอและพบว่า ช่องโหว่ การไม่ปลูกอาหารของคุณเองถือเป็นการแสดงความไว้วางใจ: คุณต้องวางใจว่าคนจำนวนมากพอที่จะตระหนักว่าพวกเขาสนใจที่จะปลูกอาหารเพื่อที่พวกเขาจะได้ขายให้คุณ คุณสามารถไว้ใจคนที่มีขนาดต่างกันได้ และความเชื่อใจก็มีหลายแบบ
สำหรับการวิเคราะห์โปรโตคอลบล็อกเชน ฉันมักจะแบ่งความน่าเชื่อถือออกเป็นสี่มิติ:
คุณต้องประพฤติตัวตามความคาดหวังของคุณกี่คน?
กี่คน?
คนเหล่านี้ต้องการแรงจูงใจอะไรในพฤติกรรม? พวกเขาต้องการความเห็นแก่ผู้อื่นหรือเพียงแค่แสวงหาผลกำไร? พวกเขาต้องการการประสานงานหรือไม่?
ระบบจะล้มเหลวมากเพียงใดหากสมมติฐานเหล่านี้ถูกละเมิด?
ตอนนี้ เรามาเน้นที่สองตัวแรกกัน เราสามารถวาดกราฟได้:
ยิ่งสีเขียวในภาพมากเท่าไหร่ก็ยิ่งดีเท่านั้น มาสำรวจหมวดหมู่ความน่าเชื่อถือโดยละเอียดเพิ่มเติม:
1 จาก 1: มีนักแสดงเพียงคนเดียว และระบบจะทำงานได้อย่างถูกต้องก็ต่อเมื่อนักแสดงคนนั้นประพฤติตัวตามที่คุณคาดหวัง นี่คือรูปแบบ "รวมศูนย์" แบบดั้งเดิม และนี่คือสิ่งที่เราหวังว่าจะพยายามแทนที่
N of N: โลกดิสโทเปียที่คุณพึ่งพานักแสดงจำนวนมาก และพวกเขาทั้งหมดต้องทำงานตามที่คาดไว้เพื่อให้ทุกอย่างทำงานได้ และถ้าหนึ่งในนั้นล้มเหลว ก็หมายความว่าไม่มีบุคลากรสำรองN/2 จาก N: นี่คือวิธีการทำงานของบล็อกเชน หากผู้ขุดส่วนใหญ่ (หรือผู้ตรวจสอบความถูกต้องของ PoS) มีความซื่อสัตย์ บล็อกเชนก็จะทำงานได้ โปรดทราบว่ายิ่ง N มีค่ามากเท่าใด N/2 ของ N ก็จะยิ่งมีค่ามากขึ้นเท่านั้น บล็อกเชนที่มีผู้ขุด/ผู้ตรวจสอบจำนวนน้อยที่มีอำนาจเหนือเครือข่ายนั้นมีความน่าสนใจน้อยกว่าบล็อกเชนที่มีผู้ขุด/ผู้ตรวจสอบความถูกต้องจำนวนมาก ที่กล่าวว่าเราต้องการเพิ่มระดับความปลอดภัยนี้จากการโจมตี 51% ที่อาจเกิดขึ้น1 จาก N: มีผู้เข้าร่วมจำนวนมาก ตราบใดที่มีอย่างน้อยหนึ่งคนทำงานตามที่คุณคาดหวัง ระบบจะทำงานได้ตามปกติ ระบบใด ๆ ที่ใช้หลักฐานการฉ้อโกงจัดอยู่ในหมวดหมู่นี้ เช่นเดียวกับการตั้งค่าที่เชื่อถือได้ แม้ว่าโดยปกติแล้ว N จะเล็กกว่าในกรณีนี้ โปรดทราบว่าคุณต้องการให้ N มีขนาดใหญ่ที่สุด!
ตรวจสอบความพร้อมใช้งานของข้อมูล
นอกเหนือจาก"0 of N"ตกอยู่ในหมวดนี้"1 of N"นอกเหนือจาก"N/2 of N"หรือ"1 of 1"แบบจำลองในทุกหมวดหมู่นอกเหนือจาก จริง ๆ แล้วสามารถพิจารณาได้ว่าเป็น "ความน่าเชื่อถือ" แต่มีความแตกต่างกันมาก การไว้วางใจว่าบุคคลใดบุคคลหนึ่ง (หรือองค์กร) จะทำงานตามที่คาดไว้นั้นแตกต่างอย่างมากจากการไว้วางใจให้ผู้อื่นทำในสิ่งที่คุณคาดหวัง อาจกล่าวได้ว่า"0 of N"กว่า"1 of 1"หรือ"few of N"ใกล้กับ
. ในขณะที่แบบจำลอง "1 ใน 1" อาจรู้สึกเหมือนเป็นแบบจำลอง "1 ใน 1" ราวกับว่าคุณไว้วางใจนักแสดงคนเดียว ความจริงนั้นแตกต่างออกไปมาก: ในแบบจำลอง "1 ใน 1" หากนักแสดงที่คุณร่วมงานด้วยหายตัวไปหรือมีปัญหา คุณสามารถเปลี่ยนไปใช้นักแสดงคนอื่นได้ในขณะที่อยู่
ในระบบแบบจำลอง การพบสถานการณ์นี้หมายความว่าระบบเสร็จสิ้นแล้ว โดยเฉพาะอย่างยิ่ง โปรดทราบว่าแม้ความถูกต้องของซอฟต์แวร์ที่คุณกำลังใช้งานมักจะขึ้นอยู่กับ
เชื่อถือโมเดลเพื่อให้แน่ใจว่าหากมีข้อบกพร่องในโค้ด จะมีคนพบและแก้ไข
ความแตกต่างที่สำคัญอีกประการหนึ่ง: ระบบจะล้มเหลวได้อย่างไรหากสมมติฐานด้านความน่าเชื่อถือของคุณเสียหาย ในบล็อกเชน ความล้มเหลวที่พบบ่อยที่สุดสองประเภทคือความล้มเหลวด้านความสดและความล้มเหลวด้านความปลอดภัย ความล้มเหลวที่เรียกว่า liveness หมายความว่าคุณไม่สามารถทำสิ่งที่คุณต้องการได้ชั่วคราว (เช่น ถอนเหรียญ รับธุรกรรมที่อยู่ในบล็อก อ่านข้อมูลจากบล็อกเชน) ในทางกลับกัน ความล้มเหลวด้านความปลอดภัยเกิดขึ้นเมื่อกิจกรรมบางอย่างเกิดขึ้นที่ระบบพยายามป้องกันอยู่ (เช่น บล็อกเชนมีบล็อกที่ไม่ถูกต้อง)
ต่อไปนี้คือตัวอย่างโมเดลความน่าเชื่อถือสำหรับโปรโตคอล Blockchain Layer 2 บางตัว ในหมู่พวกเขา "N ขนาดเล็ก" หมายถึงชุดของผู้เข้าร่วมของระบบ Layer 2 ในขณะที่ "Big N" หมายถึงผู้เข้าร่วมของ blockchain และฉันคิดว่าชุมชนของโปรโตคอล Layer 2 นั้นเล็กกว่าหลักเสมอ โซ่นั่นเอง ฉันยังจำกัดการใช้คำว่า "ความล้มเหลวในการมีชีวิต" เฉพาะในสถานการณ์ที่เหรียญติดอยู่เป็นเวลานาน ไม่สามารถใช้ระบบได้อีกต่อไป แต่การนำออกเกือบจะในทันทีไม่ถือเป็นความล้มเหลวของกิจกรรม
Channels (รวมถึง state channel และ Lightning Network): live trust เป็นแบบจำลอง "1 ใน 1" (คู่สัญญาของคุณสามารถหยุดเงินของคุณชั่วคราว แม้ว่าความเสี่ยงนี้จะลดลงหากคุณกระจายเหรียญไปยังคู่สัญญาหลายๆ ราย) ความน่าเชื่อถือด้านความปลอดภัยเป็นของ โมเดล "N/2 of big N" (บล็อกเชน 51% การโจมตีสามารถขโมยเหรียญของคุณได้);
Plasma (สมมติว่าเป็นโอเปอเรเตอร์แบบรวมศูนย์): ความน่าเชื่อถือที่ใช้งานอยู่ในโมเดล "1 ใน 1" (โอเปอเรเตอร์สามารถหยุดเงินของคุณชั่วคราว) ความน่าเชื่อถือด้านความปลอดภัยเป็นของโมเดล "N/2 ของ big N" (บล็อกเชน 51% การโจมตี );
พลาสมา (สมมติว่าตัวดำเนินการกึ่งกระจายศูนย์ เช่น DPOS): ความน่าเชื่อถือที่ใช้งานอยู่ในโมเดล "N/2 ของ N ขนาดเล็ก" และความน่าเชื่อถือด้านความปลอดภัยเป็นของโมเดล "N/2 ของ N ขนาดใหญ่"ภาพรวมในแง่ดี: ความน่าเชื่อถือที่ใช้งานอยู่เป็นของโมเดล "1 จาก 1" หรือ "N/2 ของ N ขนาดเล็ก" (ขึ้นอยู่กับประเภทของผู้ให้บริการ) และความน่าเชื่อถือด้านความปลอดภัยเป็นของโมเดล "N/2 ของ N ขนาดใหญ่"การยกเลิก ZK: ความน่าเชื่อถือที่ใช้งานอยู่ในโมเดล "1 ของ N ขนาดเล็ก" (หากผู้ดำเนินการไม่รวมการทำธุรกรรมของคุณ คุณสามารถถอนเหรียญได้ หากผู้ดำเนินการไม่สามารถรวมการถอนของคุณได้ทันที พวกเขาจะไม่สามารถสร้างแบทช์เพิ่มเติมได้ คุณสามารถใช้อะไรก็ได้ โหนดเต็มของระบบการยกเลิกเพื่อถอนเงินด้วยตัวคุณเอง) การยกเลิก ZK ไม่มีความเสี่ยงต่อความล้มเหลวด้านความปลอดภัย
การยกเลิก ZK (ด้วยการปรับปรุงการสกัดแสง): ไม่มีความเสี่ยงจากความล้มเหลวของกิจกรรม ไม่มีความเสี่ยงจากความล้มเหลวด้านความปลอดภัย;
สุดท้าย มีคำถามเกี่ยวกับสิ่งจูงใจ: ผู้เข้าร่วมที่คุณไว้วางใจต้องเห็นแก่ผู้อื่นมากพอที่จะประพฤติตนตามที่คาดไว้ หรือเห็นแก่ผู้อื่นเพียงเล็กน้อย หรือมีเหตุผลเพียงพอหรือไม่ การค้นหาการฉ้อฉลพิสูจน์ให้เห็นว่า "ค่าเริ่มต้น" นั้นค่อนข้างเห็นแก่ผู้อื่น แม้ว่ามันจะเห็นแก่ผู้อื่นมากน้อยเพียงใดนั้นขึ้นอยู่กับความซับซ้อนของการคำนวณ (เปรียบเทียบ


