เรียนรู้เกี่ยวกับบทบาทของ EIP-4337 ในการสรุปบัญชีในบทความนี้
ในโพสต์นี้ เราจะได้รับแนวคิดที่สมบูรณ์เกี่ยวกับบทบาทของ EIP-4337 ในการสรุปบัญชี

แนะนำ
ในโพสต์นี้ เราจะได้รับแนวคิดที่สมบูรณ์เกี่ยวกับบทบาทของ EIP-4337 ในการสรุปบัญชี
แนะนำ
ข้อเสนอนี้รวมถึงการเปลี่ยนแปลงเพื่อหลีกเลี่ยงการเปลี่ยนแปลงโปรโตคอลชั้นฉันทามติ แทนที่จะอาศัยโครงสร้างพื้นฐานชั้นที่สูงขึ้น มีจุดมุ่งหมายเพื่อให้บรรลุเป้าหมายดังต่อไปนี้:
นามธรรมของบัญชี: อนุญาตให้ผู้ใช้ใช้กระเป๋าเงินสัญญาอัจฉริยะที่มีตรรกะการตรวจสอบตามอำเภอใจแทน EOA เป็นบัญชีหลัก
การกระจายอำนาจ: การอนุญาตให้ Binder เข้าร่วมในกระบวนการที่ครอบคลุมการลบบัญชีของกิจกรรมของผู้ใช้ ผู้ใช้ไม่จำเป็นต้องรู้ที่อยู่การสื่อสารโดยตรงของผู้เข้าร่วมใดๆ เพื่อประมวลผลกิจกรรมใดๆ ที่เกิดขึ้นในพูลหน่วยความจำทั่วไป
ชำระค่าธรรมเนียมการทำธุรกรรม: ชำระค่าธรรมเนียมการทำธุรกรรมโดยใช้โทเค็น ERC-20 ช่วยให้นักพัฒนาสามารถชำระค่าธรรมเนียมสำหรับผู้ใช้ของตน และกรณีการใช้งานที่คล้ายกับ EIP-3074 สำหรับการทำธุรกรรมที่ได้รับการสนับสนุน
งาน
ด้านล่างนี้คือคุณลักษณะใหม่บางส่วนในข้อเสนอนี้ การดำเนินการทั้งหมดเกิดขึ้นในพูลหน่วยความจำแบบเพียร์ทูเพียร์ ผู้ใช้ไม่ต้องกังวลเกี่ยวกับสัญญากระเป๋าเงินของพวกเขาที่จะออก เนื่องจากกระเป๋าเงินมีอยู่ในที่อยู่ CREATE2 ที่กำหนดไว้ และถ้ากระเป๋าเงินไม่มีอยู่ UserOperation จะสร้างให้โดยอัตโนมัติ ขณะนี้ผู้ใช้สามารถกำหนดเบี้ยประกันภัยคงที่และค่าธรรมเนียมรวมสูงสุด และคาดว่าจะรวมค่าธรรมเนียมดังกล่าวอย่างรวดเร็วและเรียกเก็บอย่างสมเหตุสมผล การดำเนินการของผู้ใช้ที่ผ่านการตรวจสอบการแอบอ้างเป็นการรับประกันว่าจะมีอยู่จนกว่าผู้ส่งจะมีการเปลี่ยนแปลงสถานะอื่น ซึ่งจะทำให้ผู้โจมตีต้องจ่ายเงิน 7500+ ก๊าซต่อผู้ส่ง

งาน

ผู้ใช้ส่งออบเจ็กต์ UserOperation ซึ่งจะสรุปวัตถุประสงค์ของผู้ใช้ ตลอดจนลายเซ็นและข้อมูลอื่นๆ เพื่อการตรวจสอบ นักขุดหรือตัวประสานที่ใช้บริการต่างๆ เช่น Flashbots สามารถรวมออบเจกต์ UserOperation เข้าเป็นธุรกรรมรวมชุดเดียว ซึ่งสามารถรวมไว้ในบล็อก Ethereum ได้ Binders ชำระค่าใช้จ่ายสำหรับธุรกรรมแบบรวมเป็น ETH และได้รับการชดเชยด้วยค่าธรรมเนียมที่ชำระสำหรับการดำเนินการ UserOperation แต่ละครั้ง ตัวยึดจะใช้ตรรกะลำดับความสำคัญต้นทุนเพื่อเลือกอ็อบเจ็กต์ UserOperation ที่จะรวม
เพื่อลดความซับซ้อนของตรรกะของกระเป๋าเงิน ตรรกะของสัญญาอัจฉริยะที่ซับซ้อนส่วนใหญ่ที่จำเป็นในการรักษาความปลอดภัยจะถูกดำเนินการภายนอกกระเป๋าเงิน ในสัญญาสากลที่เรียกว่าจุดเริ่มต้น ฟังก์ชัน validateUserOp และการดำเนินการนั้นคาดว่าจะมี gated ด้วย required(msg.sender == ENTRY POINT) เพื่อให้เฉพาะจุดเข้าใช้งานที่เชื่อถือได้เท่านั้นที่เรียกให้กระเป๋าเงินดำเนินการหรือชำระค่าธรรมเนียม หลังจากตรวจสอบความสำเร็จของ userrop โดยใช้ UserOperation ด้วย calldata แล้ว จุดเริ่มต้นจะทำการเรียกไปยังกระเป๋าเงินตามอำเภอใจ ซึ่งจะทำเพื่อป้องกันกระเป๋าเงินจากการถูกโจมตี
ถ้าการตรวจสอบความถูกต้องของ UserOperation ถูกจำลองสำเร็จ UserOperation จะรับประกันได้จนกว่าสถานะภายในของบัญชีผู้ส่งจะเปลี่ยนไป
เริ่มต้นการทำธุรกรรม
เราสามารถอนุญาตให้ผู้พัฒนาแอปพลิเคชันชำระค่าธรรมเนียมในนามของผู้ใช้ และอนุญาตให้ผู้ใช้ชำระค่าธรรมเนียมด้วยโทเค็น ERC20 รับโทเค็น ERC20 ผ่านสัญญาในฐานะตัวกลาง และใช้ ETH ในการชำระเงิน
สำหรับกรณีการใช้งาน 1: Paymaster ตรวจสอบว่าลายเซ็นของผู้ริเริ่มมีอยู่ใน paymasterData ซึ่งบ่งชี้ว่าผู้เริ่มต้นพร้อมที่จะชำระเงินสำหรับ UserOperation หากลายเซ็นถูกต้อง Paymaster จะยอมรับและค่าธรรมเนียมการดำเนินการของผู้ใช้จะถูกหักออกจากส่วนแบ่งของผู้เริ่มต้น
ข้อได้เปรียบ
สำหรับการใช้งานกรณีที่ 2: Paymaster ตรวจสอบว่ากระเป๋าเงินต้นทางมียอดคงเหลือ ERC20 เพียงพอที่จะจ่าย UserOperation หรือไม่ หากใช่ Paymaster ยอมรับและชำระค่าธรรมเนียม ETH จากนั้นจึงขอรับโทเค็น ERC20 ในภายหลัง
ข้อได้เปรียบ
ความยืดหยุ่นของตรรกะการดำเนินการ: กระเป๋าเงินจะสามารถเพิ่มตรรกะที่กำหนดเองให้กับขั้นตอนการดำเนินการได้
ข้อบกพร่อง
ความสามารถในการอัปเกรดกระเป๋าเงิน: กระเป๋าเงินจะสามารถเปลี่ยนรหัสสาธารณะหรืออัปเกรดรหัสได้
ข้อบกพร่อง
ธุรกรรมครั้งละหนึ่งรายการ: บัญชีไม่สามารถจัดคิวและส่งธุรกรรมหลายรายการไปยัง Mempool
Source:https://medium.datadriveninvestor.com/account-abstraction-eip-4337-40a94d5b6d2c
บทความนี้มาจากชุมชนการเงินแบบกระจายศูนย์และทำซ้ำโดยได้รับอนุญาต


