บทความเพื่อทำความเข้าใจแผนการขยายของ Ethereum: หลักการทำงานของ Rollup
หมายเหตุบรรณาธิการ: บทความนี้มาจากCrypto Valley สด (รหัส: cryptovalley)หมายเหตุบรรณาธิการ: บทความนี้มาจาก
Crypto Valley สด (รหัส: cryptovalley)
, ผู้แต่ง: Ed felten, แปล: Li Hanbo, ทำซ้ำโดย Odaily โดยได้รับอนุญาต
Arbitrum Rollup เป็นโปรโตคอลนอกเครือข่ายที่ควบคุมโดยสัญญา Ethereum บนเครือข่าย นักพัฒนา dapp มีชุดสัญญาที่เขียนด้วย Solidity และนักพัฒนารวบรวมสัญญาเหล่านี้ไว้ในเครื่องเสมือน (VM) ของ Arbitrum เพื่อรันบน Arbitrum Rollup คุณต้องการให้พวกเขาทำงานอย่างรวดเร็ว
พื้นฐานของการโรลอัพ
ผู้เข้าร่วมโปรโตคอลสามารถทำการยืนยันที่โต้แย้งได้ (DA) ซึ่งอ้างว่าเริ่มต้นจากสถานะแฮชภายใต้เงื่อนไขเบื้องต้นทางเทคนิคบางประการ เครื่องเสมือนสามารถดำเนินการขั้นตอนการคำนวณตามจำนวนที่ระบุเพื่อรับสถานะใหม่ที่ระบุ สถานะถูกแฮช และเครื่องเสมือนทำการชำระเงินที่ระบุและปล่อยเหตุการณ์บันทึกที่ระบุในระหว่างการคำนวณ DA อาจถูกต้อง (เช่น ของจริง) หรือไม่ถูกต้อง ฝ่ายที่ทำ DA จะต้องวางเงินมัดจำเพื่อความถูกต้องของ DA (เพิ่มเติมเกี่ยวกับเงินเดิมพันและวิธีการทำงานด้านล่าง)
ดังที่แสดงในแผนภาพด้านบน การยืนยันที่โต้แย้งได้จะสร้างจุดตัดสินใจเชิงตรรกะที่ในที่สุดโปรโตคอลจะแก้ไขได้ หาก DA ถูกต้อง ระบบจะเข้าสู่สถานะใหม่ที่มุมบนขวา พร้อมแฮชสถานะใหม่ และผลข้างเคียง (การชำระเงินและบันทึก) ที่ระบุใน DA หรือในสาขาอื่น DA ไม่ถูกต้อง ถูกปฏิเสธและสถานะไม่เปลี่ยนแปลง
ชื่อเรื่องรอง"โปรโตคอลอนุญาโตตุลาการเก่า"โปรโตคอล Arbitrum ดั้งเดิมประมวลผลการยืนยันที่โต้แย้งได้ทีละรายการ พรรคจะเสนอ DA จากนั้นจะมีช่วงท้าทายที่ทุกคนสามารถท้าทาย DA ได้ หากไม่มีใครคัดค้าน DA จะได้รับการยืนยัน มิฉะนั้น โปรโตคอลข้อพิพาทจะถูกเรียกใช้ และ DA จะถูกยกเลิก (เพื่อความปลอดภัยในกรณีที่ผู้เสนอและผู้ท้าชิงสมรู้ร่วมคิดกัน
ผลการโต้แย้ง)
นี่เป็นเรื่องง่าย แต่มีข้อเสียสองประการ ประการแรก เนื่องจากสามารถดำเนินการได้ครั้งละหนึ่งคดี อัตราที่ VM สามารถดำเนินการได้จะถูกจำกัด โดยพื้นฐานแล้ว ความคืบหน้าจะต้องหยุดลงในแต่ละช่วงการท้าทาย ประการที่สอง บุคคลที่ประสงค์ร้ายสามารถแช่แข็งเครื่องเสมือนโดยจงใจท้าทาย DA ทั้งหมดที่สร้างขึ้นสำหรับเครื่องเสมือนนั้น สิ่งนี้จะทำให้ผู้โจมตีเสียเงินเดิมพันหลายชุด แต่ถ้าพวกเขาเต็มใจที่จะจ่ายในราคานี้ พวกเขาก็สามารถดำเนินการต่อไปได้เป็นเวลานานในบางกรณีเป็นอย่างน้อย
ใหม่และปรับปรุง"วางท่อ"ข้อความ"วางท่อ"。
ผลลัพธ์สุดท้ายที่ไม่น่าเชื่อถือ
มันเกิดขึ้นได้อย่างไร? มาเจาะลึกโปรโตคอลใหม่กัน...
คำอธิบายภาพ
stake
ชื่อเรื่องรอง
ส่วนที่สำคัญอีกประการหนึ่งของโปรโตคอลคือการปักหลัก ทุกคนสามารถวางเดิมพันบนตารางในต้นไม้ คุณกำลังยืนยันว่าในที่สุดสี่เหลี่ยมจัตุรัสจะได้รับการยืนยันโดยโปรโตคอล กล่าวอีกนัยหนึ่ง คุณกำลังยืนยันว่าคุณได้เลือกสาขาที่ถูกต้องสำหรับทุกๆ DA บนเส้นทางจากสถานะปัจจุบันไปยังช่องสี่เหลี่ยมที่คุณกำลังเดิมพัน หากคุณผิด คุณสามารถคาดหวังที่จะสูญเสียเงินเดิมพันของคุณ
ข้อความ"การดำเนินการเดิมพันไม่สามารถยกเลิกได้ คุณสามารถย้ายเงินเดิมพันของคุณไปทางขวา -- เลือกขึ้นหรือลงที่จุดสาขาแต่ละจุด -- แต่คุณไม่สามารถย้ายเงินเดิมพันของคุณไปทางซ้ายได้ เนื่องจากนั่นจะเป็นการยกเลิกข้อผูกพันในการเดิมพันที่คุณทำไว้ก่อนหน้านี้"ฝ่ายที่ทำการยืนยันที่โต้แย้งได้จะต้องอยู่ใน DA's
DA ถูกต้อง"ทายาทไปปักหลัก โดยทั่วไปแล้ว พวกเขาสามารถตอบสนองความต้องการนี้ได้โดยการย้ายเดิมพันที่มีอยู่ไปทางขวา วางไว้บนตารางลำดับที่ต้องการ ในบางกรณีหากไม่สามารถทำได้ พวกเขาอาจวางเงินเดิมพันเพิ่มเติมในช่องที่ต้องการ แต่ระวัง พวกเขาจะเดิมพันในสองเส้นทางที่ไม่เห็นด้วย ดังนั้นพวกเขาจะลงเอยด้วยการสูญเสียอย่างน้อยหนึ่งในสองเดิมพัน - ความขัดแย้งในตัวเองนั้นไม่ฉลาด) )"รายละเอียดเพิ่มเติมเกี่ยวกับการเดิมพัน: หากช่องที่คุณวางเดิมพันได้รับการยืนยันและกลายเป็นประวัติที่ยอมรับได้ คุณสามารถเลือกรับเดิมพันคืนได้ ซึ่งหมายความว่าหากคุณทายถูก คุณสามารถวางเดิมพันไว้และรอระบบ
ตามทัน"คุณแล้วคุณจะได้รับเงินเดิมพันของคุณคืน"ณ จุดนี้ คุณอาจกังวลว่า dendrogram ของความเป็นไปได้จะมีขนาดใหญ่มากและ 'ไม่ชัดเจน' สิ่งนี้ไม่สามารถเกิดขึ้นได้ในทางปฏิบัติเพราะจะต้องมีหลายฝ่ายในการเดิมพันผลลัพธ์ที่ไม่สอดคล้องกัน มีเพียงหนึ่งในนั้นเท่านั้นที่สามารถถูกได้ และคนอื่นๆ ทุกคนจะสูญเสียเดิมพัน น่าจะมากกว่านี้
ห่วงโซ่ของ DA อย่างมีประสิทธิภาพ ทีละรายการ และการเดิมพันทั้งหมดอยู่ในผลลัพธ์เดียวกัน
ระยะเวลาการเดิมพัน
เราต้องการให้ระบบตัดสินใจเกี่ยวกับการยืนยันที่โต้แย้งได้แต่ละรายการก่อนที่จะใช้เวลานานเกินไป ดังนั้น เมื่อมีการเพิ่ม DA ในห่วงโซ่ การสร้างจุดสาขา จะมีกำหนดเวลาที่เกี่ยวข้องกับ DA นั้น กำหนดเส้นตายนี้เพียงพอแล้วในอนาคต หากคุณเลือกที่จะทำเช่นนี้ คุณจะมีเวลาตรวจสอบว่า DA นั้นถูกต้องหรือไม่ และรับธุรกรรมในเครือข่ายเพื่อเดิมพันผลลัพธ์ของ DA นี้ หากมีผู้ต้องการวางเดิมพันเพื่อหรือต่อต้านความถูกต้องของ DA นี้ จะต้องดำเนินการภายในกำหนดเวลา (หลังจากกำหนดเส้นตายแล้ว ยังสามารถแนะนำความสนใจได้ แต่จะไม่เกี่ยวข้องกับการตัดสินใจหรือต่อต้าน DA) เมื่อถึงเส้นตาย ความสนใจทั้งหมดที่เกี่ยวข้องกับการตัดสินใจเรียกร้องจะได้รับการแจ้งให้ทราบ
ข้อพิพาท
หากอลิซและบ็อบอยู่คนละสถานที่ แสดงว่ามีหนึ่งในสองสิ่งที่เป็นจริง อาจมีเส้นทางไปทางขวาจากเส้นทางหนึ่งไปยังอีกเส้นทางหนึ่ง -- หมายความว่าการอ้างสิทธิ์ของพวกเขาสอดคล้องกัน -- หรือไม่มีเส้นทางดังกล่าว ถ้าไม่มีทางเดินขวาเชื่อมระหว่างสี่เหลี่ยมของอลิซกับบ็อบ พวกเขาก็ต้องไม่เห็นด้วยในบางสิ่ง จะมีจุดขัดแย้งระหว่างพวกเขาเสมอ - DA ที่ไม่ซ้ำกันซึ่งหนึ่งในนั้นเดิมพันว่า DA ใช้งานได้และอีกอันไม่ได้ผล
เมื่อใดก็ตามที่เกิดข้อพิพาทระหว่างสองฝ่าย ระบบสามารถเริ่มต้นโปรโตคอลการระงับข้อพิพาทแบบโต้ตอบระหว่างสองฝ่ายได้ ฉันไม่มีพื้นที่สำหรับอธิบายโปรโตคอลการระงับข้อพิพาทที่นี่ - แค่บอกว่าเป็นโปรโตคอลแบบโต้ตอบสองขั้นตอนคล้ายกับที่เราอธิบายไว้ในเอกสารอนุญาโตตุลาการอื่นๆ
ผลของข้อตกลงการระงับข้อพิพาทจะพบว่าฝ่ายใดฝ่ายหนึ่งไม่ถูกต้อง ฝ่ายนั้นจะเสียผลประโยชน์ เสาจะถูกปัดออกจากโซ่ที่อยู่บน บางส่วนจะตกเป็นของอีกฝ่ายในข้อพิพาทและส่วนที่เหลือจะถูกทำลาย
ข้อพิพาทหลายรายการสามารถดำเนินการได้ในเวลาเดียวกัน แต่นักพนันแต่ละคนสามารถเข้าร่วมในข้อพิพาทได้สูงสุดครั้งละหนึ่งรายการเท่านั้น การโต้แย้งแต่ละครั้งจะลดปริมาณความขัดแย้งในระบบลง เนื่องจากการเดิมพันของผู้แพ้จะถูกลบออก ฝ่ายที่แพ้การเดิมพันสามารถเดิมพันใหม่ได้หากต้องการ แต่การเดิมพันใหม่จะไม่สามารถส่งผลกระทบต่อ DA ที่พ้นระยะเวลาการเดิมพันไปแล้ว ผลกระทบของสิ่งนี้คือหลังจากระยะเวลาการเดิมพันของ DA ผ่านไป ข้อพิพาทจะค่อยๆ ขจัดความไม่ลงรอยกันใดๆ เกี่ยวกับวิธีจัดการกับ DA นั้น
ตรวจสอบผลลัพธ์
เมื่อเส้นตายการเดิมพันของ DA ผ่านไป การเดิมพันตามเวลาที่เหลือทั้งหมด (ก่อนเส้นตายการเดิมพัน) จะอยู่ในสาขาเดียวกันของ DA นั้น และระบบสามารถยืนยันผลลัพธ์ของ DA นั้นได้ DA ได้รับการยอมรับหรือปฏิเสธ และสถานะปัจจุบันจะย้ายไปยังกล่องที่เกี่ยวข้องทางด้านขวาของ DA
หาก DA ได้รับการยืนยันว่าถูกต้อง เช่น การชำระเงิน จะมีผลกับห่วงโซ่ นี่คือสถานะของเครื่องเสมือนที่ก้าวไปข้างหน้า
โดยทั่วไปแล้ว ฝ่ายต่างๆ จะดำเนินการอย่างตรงไปตรงมาเพราะพวกเขาไม่ต้องการเสียเงินเดิมพันโดยการเดิมพันตามคำกล่าวอ้างที่เป็นเท็จ เฉพาะ DA ที่ถูกต้องเท่านั้นที่จะถูกยืนยัน และไม่มีใครจะเดิมพันในสาขาที่ไม่ถูกต้องของ DA ใด ๆ ในเชนเดียว ในกรณีนี้ แต่ละ DA สามารถยืนยันได้ทันทีหลังจากหมดระยะเวลาการเดิมพัน
ทำไมมันไม่น่าเชื่อถือ
คุณสมบัติที่สำคัญของ Arbitrum Rollup คือมันไม่น่าเชื่อถือ - ฝ่ายที่ซื่อสัตย์สามารถบังคับให้เครื่องเสมือนทำงานได้อย่างถูกต้องและดำเนินการต่อไป เพื่อดูว่าเหตุใด ลองนึกภาพว่าอลิซเดิมพันกับกิ่งจริงของ DA ทุกต้นเสมอ และถ้าต้นไม้ว่างเปล่า เธอยืนยัน DA
เนื่องจากอลิซกำลังปักหลักอยู่บนต้นไม้จริง เธอจึงชนะทุกข้อโต้แย้งที่เธอได้รับ หากผู้อื่นไม่เห็นด้วยกับอลิซ พวกเขาอาจ (ก) เสียผลประโยชน์ในข้อพิพาทที่ไม่เกี่ยวข้องกับบุคคลที่สาม หรือ (ข) ลงเอยด้วยการโต้เถียงกับอลิซและเสียเดิมพันให้กับเธอ ไม่ว่าในกรณีใด ทุกคนที่ไม่เห็นด้วยกับอลิซจะสูญเสียเดิมพันในที่สุด การเดิมพันที่เห็นด้วยกับอลิซเท่านั้นที่จะอยู่รอด ดังนั้นในที่สุดเส้นทางของอลิซบนต้นไม้จะเป็นเส้นทางเดียวที่มีเดิมพันทันเวลา -- และเส้นทางของอลิซจะได้รับการยืนยัน
เนื่องจากระบบในลักษณะนี้ไม่น่าไว้วางใจ หากอลิซเดิมพันในช่องสี่เหลี่ยม และเธอรู้ว่าเส้นทางไปยังช่องนั้นเป็นของจริง อลิซจึงมั่นใจได้ว่าช่องที่เธออยู่จะได้รับการยืนยันในที่สุด สำหรับอลิซ เส้นทางนั้นดูเหมือนจะเป็นที่สุด
แม้ว่าคุณจะไม่ได้เดิมพันบนเส้นทาง หากคุณเห็นคนหลายคนเดิมพันบนนั้น และคุณเชื่อว่าอย่างน้อยหนึ่งคนในนั้นเป็นคนซื่อสัตย์ คุณก็มั่นใจได้ว่าเส้นทางนั้นจะได้รับการยืนยันในที่สุด -- สำหรับคุณเท่านั้น เส้นทางคือเส้นทางสุดท้าย
ประโยชน์ของการไม่ไว้วางใจตอนจบ
เหตุใดความไม่ไว้วางใจในผลลัพธ์จึงมีค่า ตัวอย่างคลาสสิกมาจากการอภิปรายก่อนหน้านี้เกี่ยวกับโปรโตคอลการยกเลิกอื่นๆ สมมติว่าเครื่องเสมือนต้องการจ่ายเงินให้อลิซ เหตุการณ์การชำระเงินอยู่ในเส้นทางที่ซื่อสัตย์ แต่จะใช้เวลาสักครู่ก่อนที่การบล็อกที่การชำระเงินจะเกิดขึ้นจะได้รับการยืนยันบนเครือข่าย
ข้อความ"ผลลัพธ์ของความไม่เชื่อใจคือการให้อลิซมีวิธีรับเงินทันที หาก Bob มีเงินจ่ายทันที เขาสามารถให้เงินกับ Alice ได้ทันที เพื่อแลกกับที่ Alice จะกำหนดการชำระเงินที่ยังไม่ยืนยันในอนาคตให้กับ Bob (บวกค่าธรรมเนียมขั้นต่ำที่จ่ายให้กับ Bob) Bob ต้องการทำเช่นนี้ก็ต่อเมื่อเขาแน่ใจได้ว่าการชำระเงินจะเกิดขึ้นจริง บ๊อบสามารถตัดสินสิ่งนี้ได้โดยการเดิมพันในผลลัพธ์ที่ซื่อสัตย์ จากนั้นเขาจะมีความมั่นใจอย่างเต็มที่ว่าการชำระเงินจะเกิดขึ้นในที่สุด ไม่ใช่แค่ Bob เท่านั้นที่ทำเช่นนี้ได้ ใครก็ตามที่มีเงินทุนก็สามารถให้เขายืมได้ ใครก็ตามที่มีเงินทุนสามารถให้เงินกับอลิซและคนอื่นๆ เช่นเธอได้ให้ยืมเงินด้วยวิธีเดียวกัน คนเหล่านี้สามารถแข่งขันกันเองโดยเสนอค่าธรรมเนียมที่ต่ำกว่า ทำให้อลิซได้รับเงินทันที"ประเด็นสำคัญอยู่ที่ความมีชีวิตของกลไกตลาดนั้นขึ้นอยู่กับผลของความไม่ไว้วางใจ ถ้า
สิ่งนี้เป็นจริงไม่เพียง แต่สำหรับการชำระเงินเท่านั้น แต่ยังรวมถึงสิ่งอื่น ๆ ที่เครื่องเสมือนทำ หากเครื่องเสมือนต้องส่งรายการบันทึกเพื่อแจ้งว่ามีบางอย่างเกิดขึ้น ผลลัพธ์ที่ไม่น่าเชื่อถือหมายความว่าใครก็ตามสามารถดำเนินการด้วยความมั่นใจว่ารายการบันทึกจะได้รับการยืนยันบนเครือข่าย
การโจมตีล่าช้า
การโจมตีล่าช้า
เนื่องจากระบบนี้ไม่น่าเชื่อถือ ผู้ไม่หวังดีจึงไม่สามารถบังคับผลลัพธ์ที่ไม่ถูกต้องได้ สิ่งที่พวกเขาทำได้คือชะลอความคืบหน้า การทำเช่นนั้นทำให้พวกเขาต้องเสียสละเงินเดิมพัน ซึ่งอาจมีค่าใช้จ่ายสูงหากเงินเดิมพันมีนัยสำคัญ
ลองจินตนาการว่าใครบางคนมีแรงจูงใจที่จะโจมตีแบบหน่วงเวลา และพวกเขาเต็มใจที่จะเสียสละเดิมพัน ความเสียหายที่เลวร้ายที่สุดที่พวกเขาสามารถทำได้คืออะไร?
สิ่งแรกที่ควรทราบคือผู้กระทำไม่ดีไม่สามารถขัดขวางฝ่ายที่ซื่อสัตย์ไม่ให้สร้างเส้นทางที่ซื่อสัตย์ต่อไปได้ และพวกเขาไม่สามารถขัดขวางฝ่ายที่ซื่อสัตย์จากการได้รับความเชื่อมั่นที่ไม่ไว้วางใจในกระบวนการสรุปสาขาที่ซื่อสัตย์
จะเกิดอะไรขึ้นหากผู้โจมตีวางเดิมพันหลายรายการในผลลัพธ์ปลอม จากนั้นการเดิมพันเหล่านี้จะต้องชนะทีละรายการในข้อพิพาท หากมีคนหลายคนวางเดิมพันในผลลัพธ์ที่เที่ยงตรง คนเหล่านั้นสามารถโต้เถียงกับผู้โจมตีได้ในขณะที่พยายามล้มเดิมพันของผู้โจมตี และโปรดทราบว่าทุกคนจะเข้าใจสิ่งที่เกิดขึ้น และหลายคนต้องการมีส่วนร่วม เดิมพันกับผลลัพธ์ที่แท้จริง เพื่อที่พวกเขาจะได้เข้าร่วมความคลั่งไคล้ในการให้อาหารที่ใช้ข้อพิพาทเพื่อชิงเงินเดิมพันจากผู้โจมตี หากมีคน K เดิมพันในด้านที่ซื่อสัตย์ ผู้โจมตีจะใช้เงินเดิมพัน K เพื่อซื้อระยะเวลาการโต้แย้งหนึ่งช่วง หากผู้โจมตีเดิมพันมากขึ้น ก็จะดึงดูดการเดิมพันที่ซื่อสัตย์มากขึ้น นี่เป็นไดนามิกที่ไม่ดีสำหรับผู้โจมตี
การเพิ่มประสิทธิภาพ
การปรับให้เหมาะสมต่างๆ สามารถทำได้เพื่อลดปริมาณการทำบัญชีบนเครือข่ายที่จำเป็นในการดำเนินการโปรโตคอล ลดต้นทุนก๊าซบนเชน และทำให้ง่ายต่อการจัดฉากการป้อนอาหารที่มีประโยชน์ต่อผู้โจมตีแฝง ฉันจะไม่เจาะลึกถึงการเพิ่มประสิทธิภาพเหล่านี้ที่นี่ โพสต์นี้ยาวพอ
ทางข้างหน้า
ชื่อระดับแรก


