ออกจากเกมสำหรับ EVM validiums: การกลับมาของ Plasma

กลาง3/1/2024, 6:59:34 AM
บทความนี้ให้คำอธิบายโดย Vitalik เกี่ยวกับการทำงานของ Plasma, ความท้าทายที่ NFT เผชิญ, ความท้าทายที่ EVM เผชิญ และวิธีที่ Proof of Validity สามารถบรรเทาปัญหาต่างๆ เหล่านี้ได้

ขอขอบคุณเป็นพิเศษสำหรับ Karl Floersch, Georgios Konstantopoulos และ Martin Koppelmann สำหรับคำติชม บทวิจารณ์ และการอภิปราย

Plasma เป็นโซลูชันการปรับขนาดบล็อคเชนระดับหนึ่งที่อนุญาตให้ข้อมูลและการคำนวณทั้งหมด ยกเว้นการฝาก การถอนเงิน และการรูทของ Merkle ถูกเก็บไว้นอกเครือข่าย นี่เป็นการเปิดประตูสู่ความสามารถในการขยายขนาดที่มากขึ้น ซึ่งไม่ถูกจำกัดด้วยความพร้อมของข้อมูลแบบออนไลน์ Plasma ได้ รับการประดิษฐ์ขึ้นครั้งแรกในปี 2017 และมีการทำซ้ำหลายครั้งในปี 2018 โดยเฉพาะอย่างยิ่ง Minimal Viable Plasma, Plasma Cash, Plasma Cashflow และ Plasma Prime น่าเสียดายที่ Plasma ส่วนใหญ่ถูกแทนที่ด้วย Rollups ด้วยเหตุผลหลักที่เกี่ยวข้องกับ (i) ค่าใช้จ่ายในการจัดเก็บข้อมูลฝั่งไคลเอ็นต์ขนาดใหญ่ และ (ii) ข้อจำกัดพื้นฐานของ Plasma ที่ทำให้ <a href="https://medium .com/@kelvinfichter/why-is-evm-on-plasma-hard-bf2d99c48df7">ยากที่จะสรุปนอกเหนือจากการชำระเงิน

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

โพสต์นี้จะอธิบายว่าแนวคิดของพลาสมาสามารถขยายออกไปเพื่อทำสิ่งนั้นได้อย่างไร

ภาพรวม: วิธีการทำงานของพลาสมา

Plasma เวอร์ชันที่ง่ายที่สุดในการทำความเข้าใจคือ Plasma Cash Plasma Cash ทำงานโดยถือว่าแต่ละเหรียญเป็น NFT แยกกัน และติดตามประวัติที่แยกกันสำหรับแต่ละเหรียญ Plasma chain มีผู้ปฏิบัติงานซึ่งรับผิดชอบในการสร้างและเผยแพร่บล็อกอย่างสม่ำเสมอ ธุรกรรมในแต่ละบล็อกจะถูกจัดเก็บเป็น Merkle tree แบบกระจัดกระจาย: หากธุรกรรมโอนกรรมสิทธิ์ของ coin k รายการนั้นจะปรากฏในตำแหน่ง k ของแผนผัง เมื่อผู้ดำเนินการ Plasma chain สร้างบล็อกใหม่ พวกเขาจะเผยแพร่รากของ Merkle tree ไปยัง chain และส่งสาขา Merkle ให้กับผู้ใช้แต่ละรายโดยตรงซึ่งสอดคล้องกับเหรียญที่ผู้ใช้นั้นเป็นเจ้าของ

สมมติว่านี่คือแผนผังธุรกรรมสามรายการสุดท้ายใน Plasma Cash chain จากนั้น สมมติว่าต้นไม้ก่อนหน้านี้ทั้งหมดถูกต้อง เรารู้ว่าปัจจุบันอีฟเป็นเจ้าของเหรียญ 1 เดวิดเป็นเจ้าของเหรียญ 4 และจอร์จเป็นเจ้าของเหรียญ 6

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

  1. การเผยแพร่บล็อกที่ไม่ถูกต้อง (เช่น ผู้ดำเนินการรวมธุรกรรมที่ส่งเหรียญ 1 จากเฟรดไปยังเฮอร์ไมโอนี่ แม้ว่าเฟรดจะไม่ได้เป็นเจ้าของเหรียญในขณะนั้นก็ตาม)
  2. การเผยแพร่บล็อกที่ไม่พร้อมใช้งาน (เช่น ผู้ดำเนินการไม่ส่งสาขา Merkle ของ Bob ให้กับหนึ่งในบล็อก ป้องกันไม่ให้เขาพิสูจน์ให้คนอื่นเห็นว่าเหรียญของเขายังคงใช้ได้และยังไม่ได้ใช้)

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

  1. ไม่ใช่เจ้าของคนล่าสุด: ธุรกรรมในภายหลังที่ลงนามโดยผู้ออกโดยโอนเหรียญของผู้ออกให้บุคคลอื่น
  2. การใช้จ่ายสองเท่า: ธุรกรรมที่โอนเหรียญจากเจ้าของคนก่อนไปยังบุคคลอื่น ซึ่งรวมอยู่ก่อนธุรกรรมที่โอนเหรียญไปยังผู้ออก
  3. ประวัติไม่ถูกต้อง: ธุรกรรมที่โอนเหรียญมาก่อน (ภายใน 7 วันที่ผ่านมา) ที่ไม่มีการใช้จ่ายที่สอดคล้องกัน ผู้ออกสามารถตอบสนองโดยระบุการใช้จ่ายที่สอดคล้องกัน ถ้าไม่ทำ ทางออกจะล้มเหลว

ด้วยกฎเหล่านี้ ใครก็ตามที่เป็นเจ้าของ coin k จำเป็นต้องดูสาขา Merkle ทั้งหมดของตำแหน่ง k ในแผนภูมิประวัติศาสตร์ทั้งหมดในช่วงสัปดาห์ที่ผ่านมา เพื่อให้แน่ใจว่าพวกเขาเป็นเจ้าของ coin k จริงๆ และสามารถออกจากมันได้ พวกเขาจำเป็นต้องจัดเก็บสาขาทั้งหมดที่มีการโอนสินทรัพย์ เพื่อให้สามารถตอบสนองต่อความท้าทายและออกอย่างปลอดภัยด้วยเหรียญของพวกเขา

การสรุปโทเค็นแบบใช้ร่วมกันได้

การออกแบบข้างต้นใช้ได้กับ NFT อย่างไรก็ตาม สิ่งที่พบได้ทั่วไปมากกว่า NFT คือโทเค็นที่เปลี่ยนได้ เช่น ETH และ USDC วิธีหนึ่งในการนำ Plasma Cash ไปใช้กับโทเค็นที่ใช้งานได้คือการสร้างเหรียญขนาดเล็กแต่ละเหรียญ (เช่น 0.01 ETH) NFT แยกต่างหาก น่าเสียดายที่ค่าน้ำมันในการออกจะสูงเกินไปหากเราทำเช่นนี้

ทางออกหนึ่งคือการเพิ่มประสิทธิภาพโดยถือว่าเหรียญที่อยู่ติดกันหลายเหรียญเป็นหน่วยเดียว ซึ่งสามารถโอนหรือออกทั้งหมดในคราวเดียว มีสองวิธีในการทำเช่นนี้:

  1. ใช้ Plasma Cash เกือบจะเหมือนเดิม แต่ใช้อัลกอริธึมแฟนซีเพื่อคำนวณแผนผัง Merkle ของวัตถุจำนวนมากอย่างรวดเร็วหากวัตถุที่อยู่ติดกันจำนวนมากเหมือนกัน นี่ไม่ใช่เรื่องยากที่จะทำอย่างน่าประหลาดใจ คุณสามารถดู การใช้งานหลามได้ที่นี่
  2. ใช้ Plasma Cashflow ซึ่งแสดงเหรียญที่อยู่ติดกันหลายเหรียญเป็นวัตถุชิ้นเดียว

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

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

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

มีเทคนิคมากมายในการทำเช่นนี้ ในทุกกรณี เป้าหมายคือเพื่อติดตามแนวคิดบางประการเกี่ยวกับสิ่งที่เป็น “เหรียญเดียวกัน” ในช่วงเวลาที่แตกต่างกันในประวัติศาสตร์ เพื่อป้องกันไม่ให้ “เหรียญเดียวกัน” ถูกถอนออกสองครั้ง

ความท้าทายกับภาพรวมของ EVM

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

ความท้าทายอีกประการหนึ่งคือ EVM ไม่ได้พยายามจำกัดการพึ่งพา ETH ที่ถืออยู่ในบัญชี A ที่บล็อก N อาจมาจากที่ใดก็ได้ในบล็อก N-1 เพื่อที่จะออกจากสถานะที่สอดคล้องกัน EVM Plasma chain จะต้องมีเกมทางออก ซึ่งในกรณีร้ายแรง ใครบางคนที่ต้องการออกโดยใช้ข้อมูลจากบล็อก N อาจต้องจ่ายค่าธรรมเนียมเพื่อเผยแพร่สถานะบล็อก N ทั้งหมดบนเชน : ค่าน้ำมันเป็นเงินหลายล้านดอลลาร์ Plasma Scheme ที่ใช้ UTXO ไม่มีปัญหานี้: ผู้ใช้แต่ละคนสามารถออกจากสินทรัพย์ของตนได้จากบล็อกใดก็ตามที่เป็นบล็อกล่าสุดที่พวกเขามีข้อมูล

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

การพิสูจน์ความถูกต้องสามารถบรรเทาปัญหาเหล่านี้ได้อย่างไร

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

นอกจากนี้ การถอนเงินจากสถานะล่าสุด (ในกรณีทั่วไปที่ผู้ปฏิบัติงานพูดตามตรง การถอนเงินทั้งหมดจะมาจากสถานะล่าสุด) จะไม่อยู่ภายใต้ความท้าทายของเจ้าของที่ไม่ล่าสุด และดังนั้นใน Plasma chain ที่ได้รับการพิสูจน์ความถูกต้องแล้ว การถอนเงินจะไม่อยู่ภายใต้ความท้าทายใดๆ เลย ซึ่งหมายความว่าในกรณีปกติ การถอนเงินสามารถทำได้ทันที!

การขยายไปยัง EVM: กราฟ UTXO แบบขนาน

ในกรณี EVM การพิสูจน์ความถูกต้องยังช่วยให้เราทำสิ่งที่ชาญฉลาดได้อีกด้วย โดยสามารถใช้กราฟ UTXO แบบขนานสำหรับโทเค็น ETH และ ERC20 และพิสูจน์ความเท่าเทียมกันของ SNARK ระหว่างกราฟ UTXO และสถานะ EVM เมื่อคุณมีสิ่งนั้นแล้ว คุณสามารถใช้งานระบบพลาสมา "ปกติ" บนกราฟ UTXO ได้

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

ขยายไปสู่ EVM: สถานะทั้งหมดออก

มีแผนการที่ง่ายกว่าที่เสนอเพื่อสร้าง "plasma EVM" เช่น Plasma Free และก่อนหน้านั้น โพสต์นี้ตั้งแต่ปี 2019. ในรูปแบบเหล่านี้ ทุกคนสามารถส่งข้อความบน L1 เพื่อบังคับให้ผู้ปฏิบัติงานรวมธุรกรรมหรือทำให้สาขาเฉพาะของรัฐพร้อมใช้งานได้ หากผู้ปฏิบัติงานไม่ทำเช่นนี้ ห่วงโซ่จะเริ่มคืนบล็อก ห่วงโซ่จะหยุดการย้อนกลับเมื่อมีคนโพสต์สำเนาฉบับเต็มของทั้งสถานะหรืออย่างน้อยข้อมูลทั้งหมดที่ผู้ใช้ตั้งค่าสถานะว่าอาจหายไป การถอนเงินอาจต้องมีการโพสต์ค่าหัว ซึ่งจะจ่ายส่วนแบ่งของผู้ใช้รายนั้นจากค่าน้ำมันของบุคคลที่โพสต์ข้อมูลจำนวนมากเช่นนี้

โครงการเช่นนี้มีจุดอ่อนที่ไม่อนุญาตให้ถอนออกทันทีในกรณีปกติ เนื่องจากมีความเป็นไปได้ที่ห่วงโซ่จะต้องคืนสถานะล่าสุดอยู่เสมอ

ขีดจำกัดของแผนพลาสมา EVM

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

ลองพิจารณากรณีของ CDP (สถานะหนี้ที่มีหลักประกัน) ซึ่งเป็นสัญญาอัจฉริยะที่ผู้ใช้มีเหรียญที่ถูกล็อคไว้และสามารถปล่อยออกมาได้เมื่อผู้ใช้ชำระหนี้เท่านั้น สมมติว่าผู้ใช้มี 1 ETH (~$2,000 ณ เวลาที่เขียนบทความนี้) ถูกล็อคไว้ใน CDP พร้อมด้วยหนี้ 1,000 DAI ตอนนี้ Plasma chain หยุดเผยแพร่บล็อก และผู้ใช้ปฏิเสธที่จะออก ผู้ใช้ไม่สามารถออกได้เลย ขณะนี้ ผู้ใช้มีตัวเลือกฟรี: หากราคาของ ETH ลดลงต่ำกว่า $1,000 พวกเขาก็จะเดินจากไปและลืมเรื่อง CDP และหากราคาของ ETH ยังคงสูงกว่า พวกเขาก็จะอ้างสิทธิ์ในที่สุด โดยเฉลี่ยแล้ว ผู้ใช้ที่ประสงค์ร้ายดังกล่าวจะได้รับเงินจากการทำเช่นนี้

อีกตัวอย่างหนึ่งคือระบบความเป็นส่วนตัว เช่น เงินสดทอร์นาโดหรือ พูลความเป็นส่วนตัว พิจารณาระบบความเป็นส่วนตัวที่มีผู้ฝากห้าราย:

ZK-SNARK ในระบบความเป็นส่วนตัวจะเก็บการเชื่อมโยงระหว่างเจ้าของเหรียญที่เข้ามาในระบบและเจ้าของเหรียญที่ออกมาซ่อนไว้

สมมติว่ามีเพียงสีส้มเท่านั้นที่ถูกถอนออก และ ณ จุดนั้นตัวดำเนินการลูกโซ่พลาสม่าหยุดการเผยแพร่ข้อมูล สมมติว่าเราใช้วิธีกราฟ UTXO ด้วยกฎเข้าก่อน-ออกก่อน ดังนั้นแต่ละเหรียญจะจับคู่กับเหรียญที่อยู่ด้านล่าง จากนั้น Orange สามารถถอนเหรียญที่ผสมไว้ล่วงหน้าและหลังผสมได้ และระบบจะรับรู้ว่ามันเป็นเหรียญสองเหรียญที่แยกจากกัน หากสีน้ำเงินพยายามถอนเหรียญที่ผสมไว้ล่วงหน้า สถานะล่าสุดของ Orange จะเข้ามาแทนที่ ในขณะเดียวกัน สีน้ำเงินก็ไม่มีข้อมูลในการถอนเหรียญหลังผสม

สิ่งนี้สามารถแก้ไขได้หากคุณอนุญาตให้ผู้ฝากอีกสี่รายถอนสัญญาความเป็นส่วนตัว (ซึ่งจะเข้ามาแทนที่เงินฝาก) จากนั้นนำเหรียญออกจาก L1 อย่างไรก็ตาม การนำกลไกดังกล่าวไปใช้จริงต้องใช้ความพยายามเพิ่มเติมในส่วนของผู้ที่พัฒนาระบบความเป็นส่วนตัว

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

ตำแหน่ง Uniswap LP มีปัญหาคล้ายกัน: หากคุณซื้อขาย USDC สำหรับ ETH ในตำแหน่ง Uniswap คุณสามารถลองถอน USDC ก่อนการซื้อขายและ ETH หลังการซื้อขายได้ หากคุณสมรู้ร่วมคิดกับผู้ดำเนินการ Plasma chain ผู้ให้บริการสภาพคล่องและผู้ใช้รายอื่นจะไม่สามารถเข้าถึงสถานะหลังการซื้อขาย ดังนั้นพวกเขาจึงไม่สามารถถอน USDC หลังการซื้อขายได้ ต้องใช้ตรรกะพิเศษเพื่อป้องกันสถานการณ์เช่นนี้

ข้อสรุป

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

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

ข้อสงวนสิทธิ์:

  1. บทความนี้พิมพ์ซ้ำจาก [vitalik] ลิขสิทธิ์ทั้งหมดเป็นของผู้เขียนต้นฉบับ [Vitalik Buterin] หากมีการคัดค้านการพิมพ์ซ้ำนี้ โปรดติดต่อทีมงาน Gate Learn แล้วพวกเขาจะจัดการโดยเร็วที่สุด
  2. การปฏิเสธความรับผิด: มุมมองและความคิดเห็นที่แสดงในบทความนี้เป็นเพียงของผู้เขียนเท่านั้น และไม่ถือเป็นคำแนะนำในการลงทุนใดๆ
  3. การแปลบทความเป็นภาษาอื่นดำเนินการโดยทีมงาน Gate Learn เว้นแต่จะกล่าวถึง ห้ามคัดลอก แจกจ่าย หรือลอกเลียนแบบบทความที่แปลแล้ว

ออกจากเกมสำหรับ EVM validiums: การกลับมาของ Plasma

กลาง3/1/2024, 6:59:34 AM
บทความนี้ให้คำอธิบายโดย Vitalik เกี่ยวกับการทำงานของ Plasma, ความท้าทายที่ NFT เผชิญ, ความท้าทายที่ EVM เผชิญ และวิธีที่ Proof of Validity สามารถบรรเทาปัญหาต่างๆ เหล่านี้ได้

ขอขอบคุณเป็นพิเศษสำหรับ Karl Floersch, Georgios Konstantopoulos และ Martin Koppelmann สำหรับคำติชม บทวิจารณ์ และการอภิปราย

Plasma เป็นโซลูชันการปรับขนาดบล็อคเชนระดับหนึ่งที่อนุญาตให้ข้อมูลและการคำนวณทั้งหมด ยกเว้นการฝาก การถอนเงิน และการรูทของ Merkle ถูกเก็บไว้นอกเครือข่าย นี่เป็นการเปิดประตูสู่ความสามารถในการขยายขนาดที่มากขึ้น ซึ่งไม่ถูกจำกัดด้วยความพร้อมของข้อมูลแบบออนไลน์ Plasma ได้ รับการประดิษฐ์ขึ้นครั้งแรกในปี 2017 และมีการทำซ้ำหลายครั้งในปี 2018 โดยเฉพาะอย่างยิ่ง Minimal Viable Plasma, Plasma Cash, Plasma Cashflow และ Plasma Prime น่าเสียดายที่ Plasma ส่วนใหญ่ถูกแทนที่ด้วย Rollups ด้วยเหตุผลหลักที่เกี่ยวข้องกับ (i) ค่าใช้จ่ายในการจัดเก็บข้อมูลฝั่งไคลเอ็นต์ขนาดใหญ่ และ (ii) ข้อจำกัดพื้นฐานของ Plasma ที่ทำให้ <a href="https://medium .com/@kelvinfichter/why-is-evm-on-plasma-hard-bf2d99c48df7">ยากที่จะสรุปนอกเหนือจากการชำระเงิน

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

โพสต์นี้จะอธิบายว่าแนวคิดของพลาสมาสามารถขยายออกไปเพื่อทำสิ่งนั้นได้อย่างไร

ภาพรวม: วิธีการทำงานของพลาสมา

Plasma เวอร์ชันที่ง่ายที่สุดในการทำความเข้าใจคือ Plasma Cash Plasma Cash ทำงานโดยถือว่าแต่ละเหรียญเป็น NFT แยกกัน และติดตามประวัติที่แยกกันสำหรับแต่ละเหรียญ Plasma chain มีผู้ปฏิบัติงานซึ่งรับผิดชอบในการสร้างและเผยแพร่บล็อกอย่างสม่ำเสมอ ธุรกรรมในแต่ละบล็อกจะถูกจัดเก็บเป็น Merkle tree แบบกระจัดกระจาย: หากธุรกรรมโอนกรรมสิทธิ์ของ coin k รายการนั้นจะปรากฏในตำแหน่ง k ของแผนผัง เมื่อผู้ดำเนินการ Plasma chain สร้างบล็อกใหม่ พวกเขาจะเผยแพร่รากของ Merkle tree ไปยัง chain และส่งสาขา Merkle ให้กับผู้ใช้แต่ละรายโดยตรงซึ่งสอดคล้องกับเหรียญที่ผู้ใช้นั้นเป็นเจ้าของ

สมมติว่านี่คือแผนผังธุรกรรมสามรายการสุดท้ายใน Plasma Cash chain จากนั้น สมมติว่าต้นไม้ก่อนหน้านี้ทั้งหมดถูกต้อง เรารู้ว่าปัจจุบันอีฟเป็นเจ้าของเหรียญ 1 เดวิดเป็นเจ้าของเหรียญ 4 และจอร์จเป็นเจ้าของเหรียญ 6

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

  1. การเผยแพร่บล็อกที่ไม่ถูกต้อง (เช่น ผู้ดำเนินการรวมธุรกรรมที่ส่งเหรียญ 1 จากเฟรดไปยังเฮอร์ไมโอนี่ แม้ว่าเฟรดจะไม่ได้เป็นเจ้าของเหรียญในขณะนั้นก็ตาม)
  2. การเผยแพร่บล็อกที่ไม่พร้อมใช้งาน (เช่น ผู้ดำเนินการไม่ส่งสาขา Merkle ของ Bob ให้กับหนึ่งในบล็อก ป้องกันไม่ให้เขาพิสูจน์ให้คนอื่นเห็นว่าเหรียญของเขายังคงใช้ได้และยังไม่ได้ใช้)

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

  1. ไม่ใช่เจ้าของคนล่าสุด: ธุรกรรมในภายหลังที่ลงนามโดยผู้ออกโดยโอนเหรียญของผู้ออกให้บุคคลอื่น
  2. การใช้จ่ายสองเท่า: ธุรกรรมที่โอนเหรียญจากเจ้าของคนก่อนไปยังบุคคลอื่น ซึ่งรวมอยู่ก่อนธุรกรรมที่โอนเหรียญไปยังผู้ออก
  3. ประวัติไม่ถูกต้อง: ธุรกรรมที่โอนเหรียญมาก่อน (ภายใน 7 วันที่ผ่านมา) ที่ไม่มีการใช้จ่ายที่สอดคล้องกัน ผู้ออกสามารถตอบสนองโดยระบุการใช้จ่ายที่สอดคล้องกัน ถ้าไม่ทำ ทางออกจะล้มเหลว

ด้วยกฎเหล่านี้ ใครก็ตามที่เป็นเจ้าของ coin k จำเป็นต้องดูสาขา Merkle ทั้งหมดของตำแหน่ง k ในแผนภูมิประวัติศาสตร์ทั้งหมดในช่วงสัปดาห์ที่ผ่านมา เพื่อให้แน่ใจว่าพวกเขาเป็นเจ้าของ coin k จริงๆ และสามารถออกจากมันได้ พวกเขาจำเป็นต้องจัดเก็บสาขาทั้งหมดที่มีการโอนสินทรัพย์ เพื่อให้สามารถตอบสนองต่อความท้าทายและออกอย่างปลอดภัยด้วยเหรียญของพวกเขา

การสรุปโทเค็นแบบใช้ร่วมกันได้

การออกแบบข้างต้นใช้ได้กับ NFT อย่างไรก็ตาม สิ่งที่พบได้ทั่วไปมากกว่า NFT คือโทเค็นที่เปลี่ยนได้ เช่น ETH และ USDC วิธีหนึ่งในการนำ Plasma Cash ไปใช้กับโทเค็นที่ใช้งานได้คือการสร้างเหรียญขนาดเล็กแต่ละเหรียญ (เช่น 0.01 ETH) NFT แยกต่างหาก น่าเสียดายที่ค่าน้ำมันในการออกจะสูงเกินไปหากเราทำเช่นนี้

ทางออกหนึ่งคือการเพิ่มประสิทธิภาพโดยถือว่าเหรียญที่อยู่ติดกันหลายเหรียญเป็นหน่วยเดียว ซึ่งสามารถโอนหรือออกทั้งหมดในคราวเดียว มีสองวิธีในการทำเช่นนี้:

  1. ใช้ Plasma Cash เกือบจะเหมือนเดิม แต่ใช้อัลกอริธึมแฟนซีเพื่อคำนวณแผนผัง Merkle ของวัตถุจำนวนมากอย่างรวดเร็วหากวัตถุที่อยู่ติดกันจำนวนมากเหมือนกัน นี่ไม่ใช่เรื่องยากที่จะทำอย่างน่าประหลาดใจ คุณสามารถดู การใช้งานหลามได้ที่นี่
  2. ใช้ Plasma Cashflow ซึ่งแสดงเหรียญที่อยู่ติดกันหลายเหรียญเป็นวัตถุชิ้นเดียว

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

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

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

มีเทคนิคมากมายในการทำเช่นนี้ ในทุกกรณี เป้าหมายคือเพื่อติดตามแนวคิดบางประการเกี่ยวกับสิ่งที่เป็น “เหรียญเดียวกัน” ในช่วงเวลาที่แตกต่างกันในประวัติศาสตร์ เพื่อป้องกันไม่ให้ “เหรียญเดียวกัน” ถูกถอนออกสองครั้ง

ความท้าทายกับภาพรวมของ EVM

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

ความท้าทายอีกประการหนึ่งคือ EVM ไม่ได้พยายามจำกัดการพึ่งพา ETH ที่ถืออยู่ในบัญชี A ที่บล็อก N อาจมาจากที่ใดก็ได้ในบล็อก N-1 เพื่อที่จะออกจากสถานะที่สอดคล้องกัน EVM Plasma chain จะต้องมีเกมทางออก ซึ่งในกรณีร้ายแรง ใครบางคนที่ต้องการออกโดยใช้ข้อมูลจากบล็อก N อาจต้องจ่ายค่าธรรมเนียมเพื่อเผยแพร่สถานะบล็อก N ทั้งหมดบนเชน : ค่าน้ำมันเป็นเงินหลายล้านดอลลาร์ Plasma Scheme ที่ใช้ UTXO ไม่มีปัญหานี้: ผู้ใช้แต่ละคนสามารถออกจากสินทรัพย์ของตนได้จากบล็อกใดก็ตามที่เป็นบล็อกล่าสุดที่พวกเขามีข้อมูล

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

การพิสูจน์ความถูกต้องสามารถบรรเทาปัญหาเหล่านี้ได้อย่างไร

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

นอกจากนี้ การถอนเงินจากสถานะล่าสุด (ในกรณีทั่วไปที่ผู้ปฏิบัติงานพูดตามตรง การถอนเงินทั้งหมดจะมาจากสถานะล่าสุด) จะไม่อยู่ภายใต้ความท้าทายของเจ้าของที่ไม่ล่าสุด และดังนั้นใน Plasma chain ที่ได้รับการพิสูจน์ความถูกต้องแล้ว การถอนเงินจะไม่อยู่ภายใต้ความท้าทายใดๆ เลย ซึ่งหมายความว่าในกรณีปกติ การถอนเงินสามารถทำได้ทันที!

การขยายไปยัง EVM: กราฟ UTXO แบบขนาน

ในกรณี EVM การพิสูจน์ความถูกต้องยังช่วยให้เราทำสิ่งที่ชาญฉลาดได้อีกด้วย โดยสามารถใช้กราฟ UTXO แบบขนานสำหรับโทเค็น ETH และ ERC20 และพิสูจน์ความเท่าเทียมกันของ SNARK ระหว่างกราฟ UTXO และสถานะ EVM เมื่อคุณมีสิ่งนั้นแล้ว คุณสามารถใช้งานระบบพลาสมา "ปกติ" บนกราฟ UTXO ได้

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

ขยายไปสู่ EVM: สถานะทั้งหมดออก

มีแผนการที่ง่ายกว่าที่เสนอเพื่อสร้าง "plasma EVM" เช่น Plasma Free และก่อนหน้านั้น โพสต์นี้ตั้งแต่ปี 2019. ในรูปแบบเหล่านี้ ทุกคนสามารถส่งข้อความบน L1 เพื่อบังคับให้ผู้ปฏิบัติงานรวมธุรกรรมหรือทำให้สาขาเฉพาะของรัฐพร้อมใช้งานได้ หากผู้ปฏิบัติงานไม่ทำเช่นนี้ ห่วงโซ่จะเริ่มคืนบล็อก ห่วงโซ่จะหยุดการย้อนกลับเมื่อมีคนโพสต์สำเนาฉบับเต็มของทั้งสถานะหรืออย่างน้อยข้อมูลทั้งหมดที่ผู้ใช้ตั้งค่าสถานะว่าอาจหายไป การถอนเงินอาจต้องมีการโพสต์ค่าหัว ซึ่งจะจ่ายส่วนแบ่งของผู้ใช้รายนั้นจากค่าน้ำมันของบุคคลที่โพสต์ข้อมูลจำนวนมากเช่นนี้

โครงการเช่นนี้มีจุดอ่อนที่ไม่อนุญาตให้ถอนออกทันทีในกรณีปกติ เนื่องจากมีความเป็นไปได้ที่ห่วงโซ่จะต้องคืนสถานะล่าสุดอยู่เสมอ

ขีดจำกัดของแผนพลาสมา EVM

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

ลองพิจารณากรณีของ CDP (สถานะหนี้ที่มีหลักประกัน) ซึ่งเป็นสัญญาอัจฉริยะที่ผู้ใช้มีเหรียญที่ถูกล็อคไว้และสามารถปล่อยออกมาได้เมื่อผู้ใช้ชำระหนี้เท่านั้น สมมติว่าผู้ใช้มี 1 ETH (~$2,000 ณ เวลาที่เขียนบทความนี้) ถูกล็อคไว้ใน CDP พร้อมด้วยหนี้ 1,000 DAI ตอนนี้ Plasma chain หยุดเผยแพร่บล็อก และผู้ใช้ปฏิเสธที่จะออก ผู้ใช้ไม่สามารถออกได้เลย ขณะนี้ ผู้ใช้มีตัวเลือกฟรี: หากราคาของ ETH ลดลงต่ำกว่า $1,000 พวกเขาก็จะเดินจากไปและลืมเรื่อง CDP และหากราคาของ ETH ยังคงสูงกว่า พวกเขาก็จะอ้างสิทธิ์ในที่สุด โดยเฉลี่ยแล้ว ผู้ใช้ที่ประสงค์ร้ายดังกล่าวจะได้รับเงินจากการทำเช่นนี้

อีกตัวอย่างหนึ่งคือระบบความเป็นส่วนตัว เช่น เงินสดทอร์นาโดหรือ พูลความเป็นส่วนตัว พิจารณาระบบความเป็นส่วนตัวที่มีผู้ฝากห้าราย:

ZK-SNARK ในระบบความเป็นส่วนตัวจะเก็บการเชื่อมโยงระหว่างเจ้าของเหรียญที่เข้ามาในระบบและเจ้าของเหรียญที่ออกมาซ่อนไว้

สมมติว่ามีเพียงสีส้มเท่านั้นที่ถูกถอนออก และ ณ จุดนั้นตัวดำเนินการลูกโซ่พลาสม่าหยุดการเผยแพร่ข้อมูล สมมติว่าเราใช้วิธีกราฟ UTXO ด้วยกฎเข้าก่อน-ออกก่อน ดังนั้นแต่ละเหรียญจะจับคู่กับเหรียญที่อยู่ด้านล่าง จากนั้น Orange สามารถถอนเหรียญที่ผสมไว้ล่วงหน้าและหลังผสมได้ และระบบจะรับรู้ว่ามันเป็นเหรียญสองเหรียญที่แยกจากกัน หากสีน้ำเงินพยายามถอนเหรียญที่ผสมไว้ล่วงหน้า สถานะล่าสุดของ Orange จะเข้ามาแทนที่ ในขณะเดียวกัน สีน้ำเงินก็ไม่มีข้อมูลในการถอนเหรียญหลังผสม

สิ่งนี้สามารถแก้ไขได้หากคุณอนุญาตให้ผู้ฝากอีกสี่รายถอนสัญญาความเป็นส่วนตัว (ซึ่งจะเข้ามาแทนที่เงินฝาก) จากนั้นนำเหรียญออกจาก L1 อย่างไรก็ตาม การนำกลไกดังกล่าวไปใช้จริงต้องใช้ความพยายามเพิ่มเติมในส่วนของผู้ที่พัฒนาระบบความเป็นส่วนตัว

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

ตำแหน่ง Uniswap LP มีปัญหาคล้ายกัน: หากคุณซื้อขาย USDC สำหรับ ETH ในตำแหน่ง Uniswap คุณสามารถลองถอน USDC ก่อนการซื้อขายและ ETH หลังการซื้อขายได้ หากคุณสมรู้ร่วมคิดกับผู้ดำเนินการ Plasma chain ผู้ให้บริการสภาพคล่องและผู้ใช้รายอื่นจะไม่สามารถเข้าถึงสถานะหลังการซื้อขาย ดังนั้นพวกเขาจึงไม่สามารถถอน USDC หลังการซื้อขายได้ ต้องใช้ตรรกะพิเศษเพื่อป้องกันสถานการณ์เช่นนี้

ข้อสรุป

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

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

ข้อสงวนสิทธิ์:

  1. บทความนี้พิมพ์ซ้ำจาก [vitalik] ลิขสิทธิ์ทั้งหมดเป็นของผู้เขียนต้นฉบับ [Vitalik Buterin] หากมีการคัดค้านการพิมพ์ซ้ำนี้ โปรดติดต่อทีมงาน Gate Learn แล้วพวกเขาจะจัดการโดยเร็วที่สุด
  2. การปฏิเสธความรับผิด: มุมมองและความคิดเห็นที่แสดงในบทความนี้เป็นเพียงของผู้เขียนเท่านั้น และไม่ถือเป็นคำแนะนำในการลงทุนใดๆ
  3. การแปลบทความเป็นภาษาอื่นดำเนินการโดยทีมงาน Gate Learn เว้นแต่จะกล่าวถึง ห้ามคัดลอก แจกจ่าย หรือลอกเลียนแบบบทความที่แปลแล้ว
เริ่มตอนนี้
สมัครและรับรางวัล
$100