ประโยชน์หลักคือการลดจำนวนข้อมูลที่จัดเก็บไว้ใน Ethereum ซึ่งจะช่วยลดค่าใช้จ่ายสำหรับผู้ใช้ในการทำธุรกรรมบน L2
** เขียนโดย: **** OneTrueKirk **
เรียบเรียงโดย: อีวอนน์, MarsBit
โพสต์ต้นฉบับจาก OneTrueKirk บน ethresear.ch
นี่เป็นครั้งแรกที่ฉันตั้งกระทู้ที่นี่ ดังนั้นฉันขอโทษหากทำให้ขุ่นเคืองใจคุณในทางใดทางหนึ่ง ฉันได้คิดเกี่ยวกับแนวคิดนี้ (Stateless Rollups) โดยส่วนใหญ่จะเป็นการยกเลิกโดยเฉพาะสำหรับโปรโตคอลการให้ยืมของเรา แต่หวังว่ามันจะสามารถนำไปใช้ได้โดยทั่วไป ข้อเสนอแนะใด ๆ จะได้รับการชื่นชม
TLDR:
เฉพาะรูทสถานะเท่านั้นที่เผยแพร่ ไม่ใช่ข้อมูลการโทร
(หมายเหตุ MarsBit: Calldata คือค่าของส่วนข้อมูลในธุรกรรมสัญญาและไม่สามารถแก้ไขได้)
จะเกิดอะไรขึ้นถ้าแทนที่จะใช้ Ethereum เป็นเลเยอร์ความพร้อมใช้งานของข้อมูล โดยเผยแพร่สถานะทั้งหมดเป็น calldata และเผยแพร่สถานะรูทไปยัง mainnet เท่านั้น ประโยชน์หลักคือการลดจำนวนข้อมูลที่จัดเก็บไว้ใน Ethereum ซึ่งจะช่วยลดค่าใช้จ่ายสำหรับผู้ใช้ในการทำธุรกรรมบน L2 แม้จะใช้ EIP-4844 blobace ก็ไม่ฟรี
ความเสี่ยงหลักคือการโจมตีด้วยการระงับข้อมูล ซึ่งผู้เสนอเผยแพร่สถานะรูทที่ถูกต้อง แต่ระงับข้อมูลทั้งหมดจากโหนดการยกเลิกอื่นๆ เพื่อผูกขาดการผลิตบล็อกในอนาคตหรือจับเงินทุนเป็นตัวประกัน เพื่อป้องกันสิ่งนี้ โหนดที่ซื่อสัตย์ต้องตั้งคำถามกับการอัปเดตสถานะใดๆ ที่ไม่มีเพียร์สามารถให้ข้อมูลได้ การพิสูจน์การฉ้อโกงแบบโต้ตอบแบบอนุญาโตตุลาการสามารถใช้เพื่อบังคับให้ผู้เสนอเปิดเผยสถานะทั้งหมดบน mainnet แต่ก็ยังทำให้การท้าทายล้มเหลวหากรากถูกต้อง ดังนั้นแม้ในกรณีที่ล้มเหลว ค่าใช้จ่ายในการท้าทายจะต่ำ
(หมายเหตุของ MarsBit: Data Withholding Attack หมายถึงผู้โจมตีที่จงใจไม่ส่งคืนข้อมูลทั้งหมดหรือส่งคืนข้อมูลที่ไม่ถูกต้องเมื่อเข้าถึงข้อมูลที่ได้รับการป้องกัน เพื่อให้บรรลุวัตถุประสงค์ในการหลอกลวงหรือทำลาย
หากต้นทุนของความล้มเหลวในการท้าทายต่ำ ผู้เสนอที่ซื่อสัตย์อาจรู้สึกเศร้าใจได้โดยการบังคับให้พวกเขาจ่ายเงินสำหรับการโพสต์ข้อมูลสถานะทั้งหมดของตนไปยัง mainnet เพื่อป้องกันความท้าทาย แม้ว่าพวกเขาจะเผยแพร่ข้อมูลสถานะแบบจุดต่อจุดอย่างถูกต้องก็ตาม ค่าใช้จ่ายในการเริ่มการท้าทายจะต้องเป็นสัดส่วนกับค่าใช้จ่ายในการปกป้องเพื่อให้แน่ใจว่าผู้เสนอที่ซื่อสัตย์จะไม่ถูกโจมตีด้วยวิธีนี้
ในกรณีที่เลวร้ายที่สุด หากผู้โจมตีสามารถใช้เงิน 1 ดอลลาร์เพื่อหักเงินผู้ยื่นข้อเสนอที่ซื่อสัตย์ได้ 1 ดอลลาร์ พวกเขาสามารถบังคับให้ผู้ยื่นข้อเสนอยอมแพ้และขอบล็อกคืนได้ จากนั้นผู้ยื่นข้อเสนอที่ซื่อสัตย์รายใหม่จะสามารถเสนอราคาได้ และเว้นแต่ผู้โจมตีจะสามารถโจมตีซ้ำผู้เสนอที่ซื่อสัตย์ที่มีศักยภาพทั้งหมด ซึ่งรวมถึงทุกคนที่มีเงินทุนด้วย พวกเขาไม่สามารถทำให้เกิดการหยุดทำงานอย่างถาวรได้ เป็นไปได้ที่จะเพิ่มประโยคอื่น ซึ่งค่าใช้จ่ายของความท้าทายจะเพิ่มขึ้นเมื่อเวลาผ่านไปนานเกินไป นับตั้งแต่การบล็อกที่ถูกต้องได้รับการสรุป วิธีนี้เป็นการง่ายที่จะท้าทายผู้เสนอที่ไม่ซื่อสัตย์ แต่เป็นไปไม่ได้ที่จะหยุดการเปลี่ยนสถานะเป็นเวลานาน
หากมองในแง่ดียิ่งขึ้น หากโหนดกระจายข้อมูลระหว่างเพียร์ พวกเขาสามารถตัดสินใจเลือกโซลูชันการสำรองข้อมูลและการเข้าถึงข้อมูลของตนเองได้ และผู้ใช้จะสามารถจัดเก็บข้อมูลที่พวกเขาต้องการสำหรับการเปลี่ยนสถานะของตนเองได้ดีกว่า ในบริบทของแอปพลิเคชันหนึ่งๆ ฉันคิดเกี่ยวกับการเข้ารหัสสถานะการยกเลิกด้วยวิธีที่แตกต่างไปจาก EVM อย่างสิ้นเชิงเพื่อปรับให้เหมาะสมสำหรับสิ่งนี้ สถานะทั้งหมดที่เกี่ยวข้องกับบัญชีผู้ใช้หนึ่งๆ สามารถเข้ารหัสเป็นแฮชเดียวกันได้ ดังนั้นผู้ใช้สามารถตรวจสอบการเปลี่ยนแปลงในบัญชีของตนได้ง่ายขึ้นโดยไม่ต้องทราบสถานะโดยรวม (เช่น ยืนยันว่าคุณได้รับโทเค็นตามจำนวนที่ต้องการโดยไม่ต้องกังวลว่ามาจากไหน) .
##สรุป
ฉันชอบที่จะได้ยินความคิดของคุณและขอขอบคุณลิงก์ไปยังงานที่เกี่ยวข้อง ซึ่งแตกต่างจากการยกเลิกในแง่ดีทั่วไป ในการยกเลิกในแง่ดีนั้นเป็นเรื่องง่ายที่จะตัดสินว่า calldata ที่ส่งมานั้นตรงกับสถานะรูทของเครือข่ายหลักหรือไม่ และทั้งคู่นั้นถูกต้องหรือไม่ แต่เป็นไปไม่ได้ที่จะทราบได้ว่าการอัปเดตนั้นถูกต้องจากสถานะรูทเพียงอย่างเดียว ดังนั้น จำเป็นต้องพิจารณาเศรษฐศาสตร์ของช่วงเวลาที่ท้าทายและความเศร้าโศกอย่างรอบคอบ (เช่น พฤติกรรมที่เป็นอันตราย)