คำเตือนความเสี่ยง: ระวังความเสี่ยงจากการระดมทุนที่ผิดกฎหมายในนาม 'สกุลเงินเสมือน' 'บล็อกเชน' — จากห้าหน่วยงานรวมถึงคณะกรรมการกำกับดูแลการธนาคารและการประกันภัย
ข่าวสาร
ค้นพบ
ค้นหา
เข้าสู่ระบบ
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt
BTC
ETH
HTX
SOL
BNB
ดูตลาด
支付商大厂放大招:Alchemy新发布的模块化账户会为Web3引流吗?
jk
Odaily资深作者
2024-02-23 08:54
บทความนี้มีประมาณ 6425 คำ การอ่านทั้งหมดใช้เวลาประมาณ 10 นาที
内含在链上玩猜词游戏Wordle的入口。

ข้อความต้นฉบับมาจาก Alchemys Hello, Modular Account》 เรียบเรียงโดย Odaily jk.

Alchemy ประกาศเปิดตัวบัญชีแบบโมดูลาร์ซึ่งเป็นการใช้งานบัญชีสัญญาแบบเริ่มต้นใหม่ล่าสุดที่ออกแบบมาเพื่อความเข้ากันได้ของ ERC-4337 และ ERC-6900 บัญชีโมดูลาร์ช่วยให้นักพัฒนาที่สร้างบน Ethereum L2 มีระบบรักษาความปลอดภัยระดับองค์กร ต้นทุนที่ดีที่สุดในระดับเดียวกัน และความสามารถในการปรับขนาดบัญชีที่แข็งแกร่ง

เริ่มตอนนี้เลยบัญชีแบบแยกส่วน และอ่านต่อเพื่อเรียนรู้เพิ่มเติม

ทำไมต้องเลือกบัญชีสัญญา?

ระบบนิเวศ Web3 มีการเติบโตอย่างที่ไม่เคยมีมาก่อนในช่วงไม่กี่ปีที่ผ่านมา แต่อุปสรรคที่ดื้อรั้นที่สุดประการหนึ่งในการขยายระบบนิเวศของเรายังคงอยู่:

ประสบการณ์การใช้งานที่ไม่ดี

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

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

imagine-a-world

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

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

eoa-vs-ca

ข้อมูลเบื้องต้นเกี่ยวกับความแตกต่างระหว่างบัญชีภายนอกและบัญชีสัญญาอัจฉริยะ

ด้วยการใช้บัญชีอัจฉริยะแทน EOA คุณกำลัง ทำให้เป็นนามธรรม ไปสู่ผู้มีบทบาทที่มีความหลากหลายมากขึ้นในการจัดการธุรกรรมและกิจกรรมบนบล็อกเชน

บัญชีอัจฉริยะมีความยืดหยุ่นไม่จำกัดในการทำงานผ่าน EOA บัญชีอัจฉริยะแต่ละบัญชีสามารถมีกฎและการกำหนดค่าที่แตกต่างกันตามที่กำหนดไว้ในโค้ด

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

เพื่อแสดงให้เห็นนามธรรมเพิ่มเติม เราได้ยกตัวอย่างง่ายๆ ไว้ด้านล่าง:

email example of abstraction

ตัวอย่างการแยกอีเมล อีเมลแบบไดนามิกช่วยให้คุณสามารถกำหนดเวลาการส่ง ปรับแต่งข้อความ ใช้บัญชีร่วม MFA ฯลฯ

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

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

เหตุใดจึงเลือกบัญชีสัญญาแบบโมดูลาร์

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

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

เมื่อหลายบัญชีเริ่มใช้ปลั๊กอินหลายตัว - เช่นERC-6900 กำหนด - ซึ่งจะช่วยลดการล็อคอินของผู้ขายสำหรับการดำเนินการบัญชีออนไลน์ ผู้ใช้ได้รับการปกป้องจากความล้มเหลวจุดเดียว และสามารถอัปเดตบัญชีของตนให้มีการใช้งานที่แตกต่างกันได้หากจำเป็นหรือต้องการ ในขณะที่ยังคงรักษาฟังก์ชันการทำงานส่วนใหญ่ที่มีอยู่ผ่านปลั๊กอินที่ติดตั้งในบัญชีของตน

บนเสาทั้งสองนี้ -ในแง่ของการใช้ซ้ำและการทำงานร่วมกัน นักพัฒนาสามารถใช้ประโยชน์จากระบบนิเวศแบบเปิดของบัญชีโมดูลาร์และปลั๊กอินเพื่อเร่งการพัฒนาผ่านความก้าวหน้าสะสมในฟังก์ชันบัญชีและประสบการณ์ผู้ใช้แบบออนไลน์

ขอแนะนำบัญชีแบบโมดูลาร์

modular-account

บัญชีแบบโมดูลาร์

บัญชีโมดูลาร์ของ Alchemy เป็นบัญชีระดับองค์กรที่ออกแบบมาเพื่อปรับขนาดตามขนาดผู้ใช้และรักษาความเข้ากันได้ในอนาคตผ่านการพัฒนาอย่างต่อเนื่องของระบบนิเวศที่เป็นนามธรรมของบัญชี

สามารถปรับขนาดได้และมีรูปแบบการรักษาความปลอดภัยที่แข็งแกร่งเพื่อให้แน่ใจว่าผู้ใช้จะได้รับประสบการณ์ที่ราบรื่นและน่าเชื่อถือ เราจัดส่งบัญชีแบบแยกส่วนพร้อมกับปลั๊กอินสองตัวที่อำนวยความสะดวกให้กับประสบการณ์ผู้ใช้ที่สำคัญและการปรับปรุงความปลอดภัย: ปลั๊กอินแบบหลายเจ้าของและปลั๊กอินคีย์เซสชัน รวมถึงการให้การสนับสนุน SDK เพื่อทำให้การรวมและการพัฒนาง่ายขึ้น บัญชีโมดูลาร์ v1.0 เข้ากันได้กับ ERC-4337 v 0.6 และ ERC-6900 v 0.7

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

การสาธิตบัญชีแบบแยกส่วน: คุ้มค่ากับคำพูด

worth of words onchain zk wordle game

เกมคำศัพท์ที่พิสูจน์ความรู้เป็นศูนย์แบบออนไลน์

ตัวอย่างที่เน้นประสบการณ์ผู้ใช้อันทรงพลังและคุณลักษณะด้านความปลอดภัยที่บัญชีโมดูลาร์มอบให้คือเกมที่เราสร้างขึ้น - มีบางอย่างที่จะพูดคุย Worth of Words เป็นเกมคำศัพท์สไตล์ Wordle Battle Royale ที่ผู้เล่นแข่งขันกันเองเพื่อเดาคำศัพท์ลับของพวกเขา เกมนี้ใช้คุณสมบัติต่อไปนี้เพื่อมอบประสบการณ์การเล่นเกมที่เหมือน Web2:

  • เมื่อใช้บัญชีโมดูลาร์กับปลั๊กอินคีย์เซสชัน ผู้ใช้จะต้องลงชื่อเข้าใช้เพียงครั้งเดียวเพื่อเปิดเกมใหม่ จากนั้นอนุญาตให้เบราว์เซอร์ลงนามธุรกรรมในนามของพวกเขาอย่างปลอดภัยระหว่างการเล่นเกมเพื่อประสบการณ์ที่ปราศจากธุรกรรม

  • ERC-4337 ผู้จัดการแก๊ส สรุปก๊าซจากประสบการณ์ผู้ใช้

  • Rundler ของ Alchemy ซึ่งถ่ายทอดการดำเนินการของผู้ใช้ไปยังเครือข่ายพื้นฐาน

  • การพิสูจน์ความรู้เป็นศูนย์ ซ่อนคำพูดไว้บนห่วงโซ่

ที่นี่เรียนรู้เพิ่มเติมเกี่ยวกับสิ่งที่คุณพูดหมายถึงบางสิ่งบางอย่าง

หมายเหตุ: Yan Youwu เป็นงานแปลโดยบรรณาธิการของ Odaily ไม่ใช่งานแปลอย่างเป็นทางการ

การวิเคราะห์เชิงลึกของเทคโนโลยี

modular account technical deep dive diagram

แผนภูมิการอภิปรายเชิงลึกเกี่ยวกับเทคโนโลยีบัญชีแบบแยกส่วน

บัญชีโมดูลาร์ใช้โหมดพร็อกซี UUPSUpgradeable และปลั๊กอินเป็นสัญญาแบบซิงเกิลตัน

การเปิดตัวบัญชีโมดูลาร์ครั้งแรกประกอบด้วยหลายองค์ประกอบ:

บัญชีหลัก

บัญชีพื้นฐานรองรับฟังก์ชันการลบบัญชีหลัก รวมถึงการลบแก๊สและการดำเนินการเป็นชุด คุณสมบัติรวมถึงการสนับสนุนสำหรับ:

- ERC-4337 บัญชีนามธรรมสำหรับการต่อต้านการเซ็นเซอร์

- ERC-165 สำหรับการตรวจจับอินเทอร์เฟซมาตรฐาน

- UUPSUpgradeable ใช้สำหรับการอัปเกรดบัญชี และร่วมมือกับ ERC-7201 เพื่อให้ได้รับการอัปเกรดการต้านทานข้อขัดแย้งในการจัดเก็บข้อมูลที่ปลอดภัย

- การดำเนินการที่ทริกเกอร์โดยปลั๊กอิน ดำเนินการตรรกะตามบริบทของบัญชีเมื่อมีการเรียกที่มาจากปลั๊กอินที่อนุญาต

- ติดตั้งและถอนการติดตั้งปลั๊กอินที่รองรับ ERC-6900 ไม่ใช่แค่ของ Alchemy

- ดูฟังก์ชันต่างๆ เพื่อรับการกำหนดค่าปลั๊กอินของบัญชี รวมถึงฟังก์ชันการดำเนินการที่ติดตั้ง ฟังก์ชันการตรวจสอบ และ hooks

- รับประกันคำสั่งซื้อที่แข็งแกร่งสำหรับการดำเนินการปลั๊กอิน

- รับโทเค็น ERC-721, ERC-777 และ ERC-1155 หากไม่มีการติดตั้งตัวรับโทเค็น บัญชีสัญญาจะไม่สามารถรับสินทรัพย์ดิจิทัลผ่านวิธี `safeTransfer` ที่เป็นมาตรฐานของ OpenZeppelin

โรงงานบัญชี

สัญญาโรงงานบัญชีที่สร้างอินสแตนซ์บัญชีแบบโมดูลาร์ใหม่ ผู้ใช้สามารถระบุพารามิเตอร์เหล่านี้ได้ และใช้เพื่อระบุที่อยู่ที่กำหนด ใช้ CREATE 2 เพื่อสร้างที่อยู่ที่ไม่เป็นจริงสำหรับผู้ใช้โดยการรวม Salt ที่ให้ไว้และเจ้าของบัญชีที่กำหนด

ในการใช้งานจริง เราคาดว่าผู้ใช้บางรายจะได้รับที่อยู่ที่ได้รับมอบหมายให้รับสินทรัพย์ก่อนที่จะนำไปใช้จริงกับที่อยู่ที่ได้รับมอบหมาย

ปลั๊กอินบัญชี

การเปิดตัวครั้งแรกประกอบด้วย ERC-6900 สองตัวที่เข้ากันได้กับเสียบเข้าไป

ปลั๊กอินที่มีเจ้าของหลายราย

ปลั๊กอินที่มีเจ้าของหลายรายรองรับบัญชี EOA หนึ่งบัญชีขึ้นไปหรือสัญญาที่สอดคล้องกับ ERC-1271 ในฐานะเจ้าของบัญชี ปลั๊กอินนี้:

- รองรับการตรวจสอบลายเซ็น ECDSA (การตรวจสอบลายเซ็น EOA มาตรฐาน)

- รองรับการตรวจสอบลายเซ็น ERC-1271 (การตรวจสอบลายเซ็นเจ้าของสัญญามาตรฐาน)

- รองรับเจ้าของที่เท่าเทียมกันหลายคนที่มีสิทธิ์การเข้าถึงรูทบัญชีเดียวกัน

- ใช้ EIP-712 ช่วยให้ลูกค้าลงนามคำแนะนำในรูปแบบที่มีโครงสร้างและอ่านง่าย

- เพิ่มความสามารถในการดำเนินการของผู้ใช้และการตรวจสอบรันไทม์ให้กับฟังก์ชันเนทิฟของบัญชีแบบแยกส่วน ได้แก่:

- ติดตั้งปลั๊กอินและถอนการติดตั้งปลั๊กอิน

  - upgradeToAndCall

- ดำเนินการและดำเนินการแบทช์

ปลั๊กอินคีย์เซสชัน

ปลั๊กอินคีย์เซสชันอนุญาตให้เพิ่มคีย์เซสชันเพื่อดำเนินการจำกัดต่างๆ ในนามของบัญชีภายใต้กฎที่กำหนดไว้ล่วงหน้า ในขณะที่ให้การรักษาความปลอดภัยแบบออนไลน์ พวกเขาปรับปรุงประสบการณ์ผู้ใช้และเปิดใช้งานพฤติกรรม เช่น ประสบการณ์ปลอดธุรกรรมและระบบอัตโนมัติของบัญชี คีย์เซสชันจะใช้เฉพาะในบริบทของ UserOperation เท่านั้น ปลั๊กอินรองรับ:

- การหมุนเวียนคีย์เพื่ออัปเดตคีย์โดยยังคงรักษาสิทธิ์เอาไว้

- กฎความถูกต้อง/ช่วงเวลาที่จำกัดการเข้าถึงคีย์เซสชันในช่วงเวลาที่กำหนด

- ข้อจำกัดที่อยู่สัญญาภายนอก การจำกัดที่อยู่สัญญาภายนอกที่คีย์เซสชันสามารถเรียกได้ ข้อจำกัดนี้อาจเป็นรายการอนุญาต รายการปฏิเสธ หรือไม่ใช่ทั้งสองอย่าง

- ข้อจำกัดวิธีการทำสัญญาภายนอก การจำกัดวิธีการทำสัญญาภายนอกที่คีย์เซสชันสามารถเรียกได้

- วงเงินการใช้จ่าย ERC-20 (ยอดรวมสำหรับหนึ่งคีย์หรือรีเฟรชตามช่วงเวลา)

- ขีดจำกัดการใช้จ่าย ETH/โทเค็นดั้งเดิม (ยอดรวมสำหรับหนึ่งคีย์ หรือรีเฟรชตามช่วงเวลา)

- ขีดจำกัดการใช้จ่ายของแก๊ส (สำหรับจำนวนคีย์ทั้งหมด หรือรีเฟรชตามช่วงเวลา) ตามค่าเริ่มต้น จะไม่มีการตั้งค่าขีดจำกัด และคีย์เซสชันที่ได้รับอนุญาตให้ดำเนินการใดๆ สามารถใช้ก๊าซได้ไม่จำกัด

- การอนุญาต ERC-721 ซึ่งสามารถนำไปใช้ผ่านข้อจำกัดวิธีการทำสัญญา (เช่น การอนุญาต safeTransferFrom (ที่อยู่ ที่อยู่ uint 256)) รวมถึงข้อจำกัดด้านที่อยู่

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

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

ห้องสมุดบัญชี

ไลบรารีบัญชีรองรับบัญชีแบบโมดูลาร์และปลั๊กอินผ่านโค้ดที่นำมาใช้ซ้ำได้ซึ่งใช้ฟังก์ชันการทำงานเฉพาะ

โครงสร้างข้อมูล

  • LinkedListSetLib ใช้ คอลเลกชันรายการที่เชื่อมโยง โดยที่องค์ประกอบต่างๆ จะถูกจัดเก็บโดยการแมปองค์ประกอบหนึ่งไปยังองค์ประกอบถัดไป ซึ่งจะช่วยให้ O(1) เพิ่ม ลบ และรวมการดำเนินการในขณะที่ยังคงรักษาความสามารถในการนับของคอลเลกชันออนไลน์ได้ การตั้งค่านี้กำหนดให้คอลเลกชันป้องกันไม่ให้เพิ่มค่าที่ซ้ำกัน ป้องกันการเพิ่มค่าศูนย์ และรักษาค่าพิเศษเป็น แมวมอง ที่ระบุจุดเริ่มต้นและจุดสิ้นสุดของรายการ เพื่อให้บรรลุเป้าหมายนี้ ขนาดข้อมูลที่ผู้ใช้สามารถใช้ได้จึงถูกลดขนาดลงเหลือสูงสุด 30 ไบต์

  • นอกเหนือจากการสนับสนุนการดำเนินการที่มีประสิทธิภาพเหล่านี้แล้ว ไลบรารียังสนับสนุนการดำเนินการลบที่มีประสิทธิภาพน้อยกว่าซึ่งไม่จำเป็นต้องมีความรู้แบบเดิม ซึ่งจะลัดเลาะไปตามรายการที่เชื่อมโยงเพื่อค้นหาองค์ประกอบที่จะลบออก

  • นอกจากนี้ รายการยังรองรับ แฟล็ก ซึ่งถือได้ว่าเป็นค่าพิเศษที่แนบมากับรายการ ซึ่งคล้ายกับแผนที่ย่อยสำหรับแต่ละองค์ประกอบภายในคอลเลกชัน มี 14 บิตสำหรับค่าแฟล็ก โดยสองบิตต่ำสุดที่สงวนไว้สำหรับการใช้งาน Sentinel และการเพิ่มประสิทธิภาพการแวะผ่านรายการ

  • AssociatedLinkedListSetLib เกือบจะเหมือนกับ LinkedListSetLib ยกเว้นว่ารายการจะถูกบันทึกไว้ในที่เก็บข้อมูลที่เกี่ยวข้องกับบัญชี ไลบรารีนี้มีวัตถุประสงค์เพื่อใช้โดยปลั๊กอิน หากปลั๊กอินต้องการเข้าถึงหรืออัปเดตค่าเหล่านี้ระหว่างการตรวจสอบ ERC-4337 จะต้องบันทึกค่าในที่เก็บข้อมูลที่เกี่ยวข้องกับบัญชี

  • CountableLinkedListSetLib ขยาย LinkedListSetLib เพื่ออนุญาตให้เพิ่มค่าได้หลายครั้ง ติดตามสิ่งนี้โดยใช้ไบต์บน (8 บิต) ของบิตแฟล็กที่มีอยู่ 14 บิต และรองรับการเพิ่มรายการได้สูงสุด 256 ครั้ง ไม่มีเวอร์ชันของไลบรารีนี้อยู่ในร้านค้าที่เกี่ยวข้อง

  • ประเภทและค่าคงที่ทั่วไปที่ใช้โดยไลบรารีเหล่านี้ถูกกำหนดไว้ใน Constants.sol

  • PluginStorageLib เป็นไลบรารีระดับล่างที่ให้ยูทิลิตี้สำหรับการรับช่องจัดเก็บข้อมูลในที่เก็บข้อมูลที่เกี่ยวข้องกับที่อยู่ โดยใช้ข้อมูลอินพุตในปริมาณที่แตกต่างกันเป็นคีย์

ประเภทและเครื่องมือการแปลง

  • FunctionReferenceLib จัดเตรียมประเภทค่าที่ผู้ใช้กำหนดซึ่งออกแบบมาเพื่อบันทึกที่อยู่ปลั๊กอินและรหัสฟังก์ชันสำหรับการเรียกใช้ฟังก์ชันปลั๊กอิน

  • CastLib มีฟังก์ชันยูทิลิตี้สำหรับการแปลงเป็นและจากข้อมูลประเภทต่างๆ รวมถึงค่าคอลเลกชัน ตัวชี้ฟังก์ชัน และที่อยู่

การตรวจสอบ

เราได้นำกลยุทธ์การรักษาความปลอดภัยแบบหลายขั้นตอนมาใช้ Spearbit ดำเนินการตรวจสอบความปลอดภัยของโปรโตคอลบัญชีโมดูลาร์ในช่วงต้นของกระบวนการพัฒนา จากนั้น Spearbit และ Quantstamp ได้ตรวจสอบโปรโตคอลเวอร์ชันปัจจุบันอย่างอิสระ ไม่มีการระบุช่องโหว่ที่สำคัญในการตรวจสอบอย่างใดอย่างหนึ่ง

สามารถรับรายงานได้ที่ Spearbit และQuantstampรับ. เรารู้สึกตื่นเต้นที่ได้เป็นพันธมิตรกับ Spearbit และ Quantstamp เพื่อเสนอราคาและบริการพิเศษให้กับทีมที่ต้องการพัฒนาบนบัญชีแบบโมดูลาร์และระบบนิเวศ ERC-6900 ที่กว้างขึ้น

โมเดลความปลอดภัยและการอนุญาต

เรามาสำรวจประเด็นสำคัญสี่ประการที่เน้นรูปแบบความปลอดภัยและการอนุญาตของบัญชีโมดูลาร์กัน

รายการปลั๊กอิน

คุณลักษณะรายการปลั๊กอินเป็นส่วนสำคัญของ ERC-6900 และบัญชีแบบโมดูลาร์ ซึ่งได้รับแรงบันดาลใจจากระบบสิทธิ์ของระบบปฏิบัติการ Android ปลั๊กอิน ERC-6900 ทั้งหมดจำเป็นต้องจัดเตรียมรายการฟังก์ชันการดำเนินการ ฮุค และการร้องขอสิทธิ์ที่จำเป็นสำหรับปลั๊กอินในการทำงาน สิ่งนี้สามารถแสดงให้ผู้ใช้เห็นก่อนที่บัญชีจะติดตั้งปลั๊กอินและให้สิทธิ์ที่ร้องขอเหล่านี้ ซึ่งจะกำหนดสิทธิ์ ณ เวลาติดตั้ง เพื่อป้องกันพฤติกรรมรันไทม์ที่ไม่คาดคิด

โทรและ DelegateCall

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

กระบวนการเรียกบัญชีแบบโมดูลาร์

แผนภาพด้านล่างแสดงเส้นทางการโทรผ่านบัญชีโมดูลาร์ โฟลว์ทางด้านซ้ายคือพาธ UserOperation สำหรับการโทรจากจุดเข้าใช้งาน ERC-4337 และโฟลว์ทางด้านขวาคือพาธรันไทม์สำหรับการโทรจากแหล่งอื่นทั้งหมด รวมถึงสัญญาอื่นๆ

modular account call flow diagram

ความสามารถในการอัพเกรด

บัญชีโมดูลาร์ได้รับการออกแบบมาเพื่อความเข้ากันได้ในอนาคตในแง่ของการอัพเกรดและข้อขัดแย้งในการจัดเก็บข้อมูล โดยเฉพาะ:

  • ด้วยการใช้โหมดการจัดเก็บข้อมูลเริ่มต้น EIP-7201 จึงไม่มีความเสี่ยงที่จะเกิดข้อขัดแย้งในการจัดเก็บข้อมูลเมื่ออัปเกรดเป็นและจากบัญชีแบบโมดูลาร์

  • การเปลี่ยนแปลงเวอร์ชันเล็กน้อยสำหรับบัญชีโมดูลาร์จะใช้สคีมาพื้นที่เก็บข้อมูลที่สืบทอดมาเพื่อป้องกันข้อขัดแย้งในการจัดเก็บข้อมูล ในขณะที่เวอร์ชันหลักที่เผยแพร่สำหรับบัญชีโมดูลาร์จะใช้ช่องจัดเก็บข้อมูลที่แตกต่างกัน

เกณฑ์มาตรฐาน

บัญชีโมดูลาร์มอบต้นทุนที่ดีที่สุดในอุตสาหกรรมให้กับผู้ใช้บน Ethereum Rollups รวมถึง Arbitrum, Base และ Optimism ในขณะที่เรายังคงผลักดันสิ่งที่จำเป็นเพื่อนำผู้ใช้กระแสหลักเข้าสู่เครือข่ายออนไลน์การเปลี่ยนแปลงหลักสามประการบัญชีแบบโมดูลาร์มุ่งหวังที่จะมอบฐานดั้งเดิมที่ได้รับการปรับปรุงให้เหมาะสมสำหรับอนาคตที่เน้นการสะสมรวม

vitalik three transitions diagram

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

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

*LightAccount ไม่ใช่บัญชีแบบโมดูลาร์ แต่ถูกเพิ่มเข้ามาเพื่ออ้างอิงถึงบัญชีอัจฉริยะที่ดีที่สุดในอุตสาหกรรม

**ปลั๊กอินคีย์เซสชัน ERC-6900 ให้การควบคุมความปลอดภัยที่มีประสิทธิภาพมากกว่าผลิตภัณฑ์อื่นๆ

โปรดทราบว่ามีการแลกเปลี่ยนแบบผกผันระหว่างการปรับให้เหมาะสมสำหรับ Rollups และการปรับให้เหมาะสมสำหรับ Layer 1 Ethereum และ Sidechains เกณฑ์มาตรฐานเหล่านี้บันทึกประสิทธิภาพที่วัดได้ภายในระบบนิเวศแบบรวม

โปรแกรม Bug Bounty

นอกจากการเปิดตัวบัญชีแบบโมดูลาร์แล้ว เรายังประกาศการเปิดตัวโปรแกรมรางวัล Bug Bounty ของ Alchemy สู่สาธารณะอีกด้วย รางวัลข้อบกพร่องเป็นองค์ประกอบสำคัญของกล่องเครื่องมือรักษาความปลอดภัย และเรารู้สึกตื่นเต้นที่ได้ร่วมเป็นพันธมิตรและให้รางวัลแก่นักวิจัยด้านความปลอดภัยของระบบนิเวศที่ค้นพบโอกาสในการทำให้โปรโตคอลโดยรวมแข็งแกร่งขึ้น

ตั้งแต่วันนี้เป็นต้นไป ทุกคนสามารถรายงานช่องโหว่สำหรับแพ็คเกจใดๆ ในบัญชีโมดูลาร์ที่เผยแพร่ผ่านแพลตฟอร์มรางวัลบั๊กที่โฮสต์โดย HackerOne ของเรา เพื่อเรียนรู้เกี่ยวกับโปรแกรม Bug Bountyสำหรับข้อมูลเพิ่มเติม โปรดดูภาพรวมของ HackerOne

SDK บัญชีแบบโมดูลาร์ PluginGen

การเล่นแร่แปรธาตุAccountKitรวมถึง aa-sdk เป็น SDK สำหรับนักพัฒนาที่ใช้กันอย่างแพร่หลายที่สุดสำหรับการพัฒนาบัญชีอัจฉริยะ ซึ่งสรุปค่าใช้จ่ายและความซับซ้อนในการสร้างบัญชีอัจฉริยะ ตั้งแต่วันนี้เป็นต้นไป AccountKit จะให้การสนับสนุนระดับเฟิร์สคลาสสำหรับบัญชีแบบโมดูลาร์ รวมถึงปลั๊กอินสำหรับเจ้าของหลายรายและคีย์เซสชันSDK เวอร์ชัน 3.0ลดความซับซ้อนของค่าใช้จ่ายในการสร้างและส่ง UserOperations การจัดการที่อยู่ที่ไม่เป็นจริง การอัปเกรดเป็นบัญชีโมดูลาร์ และการใช้คุณลักษณะขั้นสูง เช่น เซสชันผู้ใช้

นอกจากนี้ รุ่นนี้ยังรวมถึงPluginGenซึ่งสามารถสร้างคลาสไคลเอนต์สำหรับการใช้และใช้ประโยชน์จากปลั๊กอินโดยอัตโนมัติ โดยรับข้อมูลสำหรับปลั๊กอิน ERC-6900 ใด ๆ จากรายการปลั๊กอิน สิ่งนี้ทำให้สามารถเขียนโปรแกรมฝั่งไคลเอ็นต์ของประสบการณ์ผู้ใช้ตามสถานะบัญชีผู้ใช้

ใช้เครื่องมือ PluginGen เช่นเดียวกับใน aa-sdk ง่ายพอๆ กับการเพิ่ม PluginGenConfig ที่อธิบายปลั๊กอินของคุณและเรียกใช้ `yarn create`:

มองไปสู่อนาคต

การทำซ้ำระบบนิเวศบัญชีแบบโมดูลาร์

เราหวังว่าจะทำงานร่วมกับชุมชน ERC-6900 ต่อไปเพื่อพัฒนาระบบนิเวศที่แข็งแกร่งของปลั๊กอินและบัญชีที่ไม่ได้รับอนุญาต เรารู้สึกตื่นเต้นที่จะได้ดำเนินการตามแนวคิดที่กว้างขึ้น ซึ่งรวมถึง:

- สร้างขึ้นจากโมเดลความปลอดภัยที่สร้างแนวคิดเรื่องการอนุญาตระดับแอปพลิเคชันโดยเป็นการผสมผสานระหว่างการอนุญาตระดับปลั๊กอิน คล้ายคลึงกับ web2 เมื่อติดตั้งแอปพลิเคชันเช่น WhatsApp ระบบปฏิบัติการจะขอชุดสิทธิ์ ชุดสิทธิ์นี้เป็นสิทธิ์ที่แอปพลิเคชันต้องการ เช่น WhatsApp เพื่อให้ทำงานได้อย่างถูกต้อง เช่น ตำแหน่ง กล้อง ไมโครโฟน รายชื่อติดต่อ ฯลฯ .

เมื่อพิจารณาถึงรูปแบบการรักษาความปลอดภัยที่มีอยู่เกี่ยวกับการอนุญาตแบบปลั๊กอิน เราต้องการสำรวจว่าสิ่งนี้สามารถขยายไปยังชุดการอนุญาตระดับแอปพลิเคชันได้อย่างไร

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

- ทำงานร่วมกับทีมเพื่อพัฒนาระบบนิเวศปลั๊กอินที่ทำงานร่วมกันได้อย่างรวดเร็ว เราได้เห็นทีมพัฒนาหลายทีมเริ่มทำงานแล้ว และเราหวังว่าจะได้เห็นกรณีการใช้งานแบบใดที่ระบบนิเวศจะเกิดขึ้นได้

การปลดล็อคประสบการณ์ผู้ใช้และความปลอดภัยของผู้ใช้สามารถทำได้มากผ่านปลั๊กอินที่ออกแบบมาอย่างดีซึ่งสามารถเพิ่มลงในบัญชีที่มีอยู่ได้

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

ลดต้นทุนผู้ใช้ด้วยบัญชีอัจฉริยะและ L2

คำวิพากษ์วิจารณ์ที่พบบ่อยที่สุดอย่างหนึ่งที่เราได้ยินเกี่ยวกับบัญชีอัจฉริยะคือต้นทุน เมื่อระบบนิเวศของบัญชีอัจฉริยะเติบโตขึ้น เรารู้สึกตื่นเต้นที่ได้ร่วมงานกับชุมชนเพื่อพิสูจน์ว่าบัญชีอัจฉริยะให้การทำธุรกรรมที่ถูกกว่าสำหรับผู้ใช้ปลายทางมากกว่า EOA ในปัจจุบัน

มีวิธีการวิจัยหลายวิธีในการลดต้นทุนเหล่านี้ แต่บางวิธีที่เราจับตามองอย่างใกล้ชิดในปี 2024 ได้แก่:

การบีบอัดข้อมูลการโทร

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

การรวมลายเซ็น

ฝึกฝน,การรวมลายเซ็นเป็นเทคนิคที่คล้ายกันซึ่งช่วยลดต้นทุนด้านความพร้อมใช้งานของข้อมูลโดยการรวมกลุ่มลายเซ็นให้เป็นค่าใช้จ่ายคงที่เพียงรายการเดียว การอภิปรายส่วนใหญ่ที่นี่เน้นไปที่ลายเซ็น BLSข้างต้น แต่ในทางปฏิบัติสามารถขยายไปยังรูปแบบลายเซ็นอื่น ๆ ผ่านการพิสูจน์ความรู้เป็นศูนย์ เรายินดีเป็นอย่างยิ่งที่ได้เห็นปลั๊กอิน ERC-6900 บางตัวรองรับลายเซ็น BLS รวมถึงฟีเจอร์ต่างๆ เช่น การรวม zk-R 1 หรือ zk-K 1 เพื่อให้ได้ผลลัพธ์ที่คล้ายคลึงกันบนเส้นโค้งรูปไข่ที่ไม่ได้รวมกลุ่ม

Proto-Danksharding

ด้วยความคาดหวังอย่างสูงEIP-4844 ในฐานะที่เป็นส่วนหนึ่งของการฮาร์ดฟอร์ค Dencun เครือข่าย L2 จะสามารถใช้พื้นที่หยดเพื่อออกการโทรข้อมูล L2 แทนที่จะจัดเก็บไว้เป็นการโทรข้อมูล L1 แม้ว่าการประมาณการจะแตกต่างกันไปproto-Dankshardingคาดว่าจะลดต้นทุนการทำธุรกรรมบน L2 ได้อย่างมาก

รับทราบ

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

ขอขอบคุณเป็นพิเศษสำหรับ Yoav Weiss และ Dror Tirosh จากทีม Account Abstraction ของ Ethereum Foundation, Huawei Gu, Daniel Lim, Zhiyu Zhang และ Alokik Bhasin จากทีม Programmable Wallet ของ Circle และ Seungmin Jeon, Sangyeup Kim, Brynn Park และคนอื่นๆ ของ Decipher Global บุคลากรที่ได้ใช้ความพยายามอย่างมีความหมายในการก้าวไปสู่บรรทัดฐาน

นอกจากนี้ เราขอขอบคุณทีมตรวจสอบที่โดดเด่นของเราการรักษาความปลอดภัยเป็นเงื่อนไขพื้นฐานเมื่อต้องจัดการกับบัญชีสัญญาGerard Persoon, Riley Holterhus, Blockdev และ Christos Pap จาก Spearbit และ Nikita Belenkov, Alejandro Padilla, Shih-Hung Wang และ Ruben Koch จาก Quantstamp ต่างขยันขันแข็งในการประเมินและปรับปรุงการใช้งานและสถาปัตยกรรมของบัญชีแบบโมดูลาร์

นอกจากนี้เรายังขอขอบคุณทีมวิศวกรของ a16z crypto โดยเฉพาะ Daejun Park และ Matt Gleason สำหรับเซสชันการตรวจสอบอย่างเป็นทางการในช่วงแรกๆ บนบัญชีอัจฉริยะและการใช้การทำซ้ำบัญชีแบบโมดูลาร์เป็นมาตรฐานการทดสอบ Halmos - ปรับปรุงมาตรการรักษาความปลอดภัยและการพัฒนารอบบัญชีอัจฉริยะที่ปลอดภัยให้ดียิ่งขึ้น กำลังคิด

สุดท้ายนี้ เราขอขอบคุณระบบนิเวศของบัญชีแบบโมดูลาร์ทั้งหมดที่สนับสนุนการสนทนาและการสนทนาที่ขับเคลื่อนการเติบโตของพื้นที่ หลังจากที่ได้ผ่านการทำซ้ำในช่วงแรกๆ และข้อเสนอทางสถาปัตยกรรมโดยร่วมมือกับชุมชนในวงกว้างแล้ว เราอยากจะกล่าวถึงเป็นพิเศษกับบุคลากรที่ Safe, Biconomy, ZeroDev และ Rhinestone ซึ่งมักจะให้มุมมองและข้อเสนอแนะที่ยอดเยี่ยม

ความปลอดภัย
เทคโนโลยี
นามธรรมบัญชี
ยินดีต้อนรับเข้าร่วมชุมชนทางการของ Odaily
กลุ่มสมาชิก
https://t.me/Odaily_News
กลุ่มสนทนา
https://t.me/Odaily_CryptoPunk
บัญชีทางการ
https://twitter.com/OdailyChina
กลุ่มสนทนา
https://t.me/Odaily_CryptoPunk
สรุปโดย AI
กลับไปด้านบน
内含在链上玩猜词游戏Wordle的入口。
ดาวน์โหลดแอพ Odaily พลาเน็ตเดลี่
ให้คนบางกลุ่มเข้าใจ Web3.0 ก่อน
IOS
Android