Contents

ทำไม ERC-4337 (Account Abstraction Using Alt Mempool) จะเปลี่ยน Ethereum ไปสู่ Mass Adoption

Original photo by Zoltan Tasi on Unsplash

Original photo by Zoltan Tasi on Unsplash


Originally published in my Medium.

This article summarizes my thought on the ERC-4337 written in the Thai language. I may re-write this article in English in the future.

Disclaimer:

เนื้อหาที่คุณกำลังอ่านเป็นการรวบรวม และปะติดปะต่อโดยใช้เวลาไม่ถึงหนึ่งวันในการ research ของผม ดังนั้นบทความนี้ไม่ควรถูกใช้เป็น reference ใดๆ เพราะข้อมูลอาจไม่ถูกต้อง 100% ครับ 👌

ที่สำคัญ บทความนี้ไม่ควรใช้ในการตัดสินใจลงทุนหรืออะไรทั้งสิ้น หลายๆส่วนเกิดจากการมโน หรือ bias ขึ้นมาครับ 😼


Table of contents


.    .    .

At a glance


เมื่อพูดถึงการ adoption ของ blockchain หนึ่งในอุปสรรคที่ใหญ่ที่สุดคือการจัดการ private key ของ user

เราต่างทราบกันดีว่าการจัดการ private key สำหรับ wallet ของ user นั้น เป็นเรื่องที่ยากมาก โอกาสที่ key จะสูญหายหรือถูกขโมยโดย hacker หรือ malware เป็นเรื่องที่พบเห็นได้อยู่บ่อยๆ ☠️

ถึงแม้เราจะใช้ hardware wallet มาช่วยปกป้อง private key แต่ความเสี่ยงจากการใช้งาน รวมถึงการเซตอัพ hardware wallet อย่างไม่ถูกวิธีก็ยังมีอยู่

นอกจากนี้ การทำ transaction โดยใช้ hardware wallet มา sign transaction นั้นก็ไม่ใช่เรื่องง่ายและสะดวกนัก (อย่างน้อยก็กับคน 90+% บนโลก) 🤯

นั่นจึงเป็นคำตอบของคำถามที่ว่า “ทำไมเรายังไม่ warp? 🤑” เฮ้ย… ไม่ใช่

นั่นจึงเป็นคำตอบของคำถามที่ว่า “ทำไม blockchain จึงไม่ mass adoption สักที ?


.    .    .

What is ERC-4337? (in short, probably)


ERC-4337 เป็น standard proposal ตัวนึง (ยังอยู่ในสถานะ draft) นำเสนอโดย Vitalik และผองเพื่อน

Proposal ตัวนี้นำเสนอวิธีการ abstract account เพื่อแก้ปัญหาการ adoption ของ Ethereum

Idea คือ ให้มองว่า user wallet สามารถเป็น smart contract ได้ โดยที่ wallet จะต้องมีวิธีการ prove เพื่อยื่นยันว่า request ที่ส่งมายัง wallet เพื่อทำ transaction ถูกส่งมาจากเจ้าของ wallet ตัวจริงเท่านั้น 🤔

ในส่วนรายละเอียดกระบวนการ prove user ตรงนี้ถูกมองเป็น abstract layer พูดง่ายๆก็คือ เราจะใช้วิธีไหนมา prove ก็ได้ เช่น การสแกนลายนิ้วมือ (biometrics), OAuth 2.0, multisig, social recovery หรือ private key เหมือนเดิมก็ยังได้ 💪

ยังมีรายละเอียดอื่นๆอีก ขอไม่ลงลึกนะครับ แต่บางส่วนจะถูกขยายเพิ่มเติมด้านล่าง

Figure 1. Overview of UserOperation lifecycle (Image courtesy of Vitalik Buterin)

Figure 1. Overview of UserOperation lifecycle (Image courtesy of Vitalik Buterin)


.    .    .

Will the emergence of ERC-4337 lead to the centralized Ethereum?


หนึ่งในคำถามที่ผมได้ยิน และคิดว่าหลายๆคนกำลังเข้าใจผิด คือ

" การเปลี่ยนจาก private key ไปใช้พวก fingerprint authen หรือ social recovery ทำให้ Ethereum กลายเป็น centralized blockchain??? "


ก่อนอื่นเลย ต้องเข้าใจก่อนว่า ERC-4337 ถูกเสนอขึ้นมาโดยไม่ require การปรับเปลี่ยน core หลักของ Ethereum (ไม่ต้องปรับเปลี่ยนอะไรใน consensus-layer protocol)

ดังนั้น ระบบ EOA (Externally-Owned Account) account แบบเก่าที่จัดการ wallet ด้วย private key ยังคง fully supported เช่นเดิมครับ 🥳

ในทางกลับกัน การมาของ proposal ตัวนี้เป็นการเพิ่ม feature ที่ทำให้ developer สามารถต่อยอด use cases ต่างๆได้อย่างไม่รู้จบ

User สามารถเลือกได้ว่ายังอยากจะเก็บ assets ของตัวเองด้วย private key-based wallet (wallet แบบเก่า) หรือจะเก็บด้วย smart contract-based wallet (ERC-4337 แบบใหม่) 🤝

ถ้า concern เรื่อง security ก็เลือกเก็บด้วย private key-based wallet แบบเก่า จบ!!


เพราะฉะนั้น Ethereum ยังคงมีระดับ decentralization ไม่ต่างไปจากเดิม 🦾

Figure 2. Transaction control flow (Image courtesy of the ERC-4337 authors)

Figure 2. Transaction control flow (Image courtesy of the ERC-4337 authors)


.    .    .

Other important features?


นอกจาก account abstraction ซึ่งเป็น core feature ของ proposal แล้ว ยังมี features อื่นๆที่น่าสนใจ ดังนี้ (ขอไม่ลงรายละเอียดเชิงลึก) 🧞‍♂️

  • การจ่ายค่า transaction fee ด้วย ERC-20 token (user จะเป็นคนจ่ายเอง หรือ developer/platform เป็นคน sponsor ค่า fee ให้ user ก็ทำได้)

  • รองรับ atomic multi-operations

  • รองรับ aggregated signature เช่น Schnorr และ BLS algorithms เพื่อเพิ่มประสิทธิภาพในการ process transaction

  • ความสามารถในการอัปเกรด wallet

  • และอื่นๆ


.    .    .

What use cases can we expect to see?


Section นี้ผมมโนล้วนๆนะครับ 🤩 implementation จริง ผมเชื่อว่าจะมีอะไรมากกว่านี้อีกเยอะมาก ขึ้นอยู่กับ creativity ของ developer เลย 🤤

  1. จะมี product ที่เข้ามาจัดการ wallet เพื่อเชื่อมต่อ user กับโลก Ethereum แบบไร้รอยต่อ (seamless)

    โดย wallet แต่ละเจ้าจะสามารถรองรับ authentication schemes ได้หลากหลายรูปแบบ เช่น fingerprint scaning (biometrics), OAuth 2.0, multisig หรือ social recovery เป็นต้น

    ลองจินตนาการว่า user สามารถใช้ Facebook account สำหรับ login เพื่อที่จะทำ transaction บน Ethereum ได้

  2. จะมี DeFi/NFT/GameFi/Metaverse platform ที่รองรับการจ่ายค่า transaction fee แทน user (gasless)

    ** การที่ user จะต้องมี Ether ใน wallet เพื่อทำ transaction เป็นอีกหนึ่งในอุปสรรคของการเกิด mass adoption

  3. User สามารถเลือกที่จะจ่ายค่า transaction fee ด้วย ERC-20 token ที่เขามีได้

    เช่น จ่ายเป็น USDT, SUSHI หรือ token อื่นๆแทน

  4. จะมีแอพที่ถูกพัฒนาขึ้นมาเพื่อปกป้องความเป็นส่วนตัวของผู้ใช้มากขึ้น (privacy-preserving applications)

    เนื่องจากตัว proposal รองรับ arbitrary cryptographic schemes

  5. Use cases อื่นๆอีกมากมาย

    เช่น ระบบจัดการพินัยกรรม (✍️ จะได้ไม่เป็นภาระของลูกหลาน) หรือระบบจัดการกรรมสิทธิ์ เป็นต้น


.    .    .

Final thought


ลองจินตนาการถึง GameFi platform ที่สามารถ authenticate user ด้วย Facebook หรือ Google account ได้

โดยที่ user สามารถจ่ายค่า gas ด้วย ERC-20 token อะไรก็ได้ที่เขามี (หรือแม้แต่ platform เป็นคนจ่ายค่า gas แทน user ก็ทำได้)

แล้ว mass adoption จะไม่เกิดขึ้นได้อย่างไร (มโนแจ่มไหมครับ?? 😎)


.    .    .

References


  1. https://eips.ethereum.org/EIPS/eip-4337

  2. https://medium.com/infinitism/erc-4337-account-abstraction-without-ethereum-protocol-changes-d75c9d94dc4a


.    .    .

Originally published in my Medium.