Account Abstraction là gì? Thêm một thuật ngữ, một bước cải tiến nữa đằng sau thị trường Cryptocurrency nói riêng và lĩnh vực Blockchain nói chung. Điều này chứng mình rằng, lĩnh vực Blockchain đang phát triển mạnh mẽ và ngày càng hoàn thiện hơn. Hãy cùng izyCrypto tìm hiểu Account Abstraction là gì? Nó mang đến những cải tiến gì cho người dùng trong mạng lưới Blockchain?
Account Abstraction là gì?
Account Abstraction là một khái niệm được đề cập bởi Vitalik Buterin cho mạng lưới Ethereum. Vitalik cũng đã đề xuất một số ý tưởng cho việc triển khai Account Abstraction và được xem là mục tiêu dài hạn cho các Developers trên Ethereum.
Theo định nghĩa đơn giản, thì Account Abstraction là một tài khoản trừu tượng. Nghe cái tên thôi là đã thấy trừu tượng và khó hiểu rồi phải không nào! Đầu tiền chúng ta cứ hiểu đơn giản Account Abstraction là một bước để chuyển hóa tài khoản người dùng trong mạng lưới Blockchain, thành tài khoản smart contract (hợp đồng thông minh), được lập trình sẵn để hoàn thành một số công việc trong các giao dịch (transaction), như là trả phí, xác thực giao dịch, …
Tại sao lại cần sự ra đời của Account Abstraction?
Trước khi tìm hiểu kỹ hơn về Account Abstraction, chúng ta sẽ cùng tìm hiểu 2 loại Ethereum Account hiện tại, đó là Externally-owned Accounts (EOA) và Contract Accounts (CA).
Externally-owned Accounts (EOA) và Contract Accounts (CA)
- Externally-owned Account (EOA): là một tài khoản Ethereum được khởi tạo bằng các ví phần mềm (Software Wallet: Metamask, Trust, …). Tài khoản này được quản lý bởi 1 cặp mã hóa công khai và cá nhân (Public and Private Keys). Những người sở hữu Private Keys thì mới có thể thực hiện được những giao dịch trên Blockchain. EOA không thể thực hiện các Smart Contract mà chỉ có thể thực hiện các giao dịch cơ bản như chuyển tiền và nhận token.
- Contract Account (CA): là tài khoản Ethereum được triển khai dưới dạng hợp đồng thông minh (Smart Contract) và được kiểm soát bằng logic dưới dạng mã code (thay vì khóa riêng tư). Tài khoản CA không thể tự khởi tạo các giao dịch trên blockchain. Thay vào đó, các tài khoản này chỉ có thể nhận thông điệp từ EOA và thực hiện các hành động đã được định trước trong Smart Contract. Nhìn chung, CA là một phần không thể thiếu của các dApp và hệ thống blockchain.
Cả 2 loại tài khoản trên đều có thể chuyển, nhận, giữ ETH và các token trong mạng lưới ETH, và đều có khả năng tương tác với các smart contract khác.
Tuy nhiên, cả 2 cũng sẽ có những sự khác nhau
EOA | CA |
Tạo tài khoản đơn giản và miễn phí | Tạo smart contract phức tạp hơn và cần có phí |
Có thể tự khởi tạo giao dịch | Chỉ thực hiện giao dịch khi nhận thông tin từ EOA |
Giao dịch giữa 2 tài khoản EOA chỉ có thể thực hiện với ETH | Thực hiện được giao dịch các token khác trong mạng lưới Ethereum |
Vấn đề hiện tại là gì?
Như vậy đứng dưới góc độ người dùng trong một mạng lưới Blockchain, tài khoản mà chúng ta sử dụng và tương tác trực tiếp đó là EOA. Nhưng sẽ có nhiều vấn đề với tài khoản EAO đối với trải nghiệm người dùng:
- Việc lưu giữ và quản lý Private Key dễ dẫn đến việc bị tấn công hoặc bị mất và không thể khôi phục lại tài sản của mình.
- Khả năng bảo mật kém với việc sử dụng Private Key làm chữ ký (sign) để mở các giao dịch.
- Bắt buộc có ETH trong ví để làm phí gas cho các giao dịch
- Phí gas trong các giao dịch không được tối ưu
Account Abstraction sẽ giải quyết những vấn đề nào?
Việc triển khai Account Abstraction (AA) nhằm tăng cường trải nghiệm người dùng khi tương tác với blockchain Ethereum qua ví, Dapps và DeFi. AA là một base layer trên Ethereum, với smart contract sẽ quyết định việc tài khoản nào có thể tự trả phí gas và cách thức trả phí gas.
Tức là, ví của người dùng sẽ được biến thành một smart contract, kết hợp các ưu điểm của hai loại ví EOA và CA ở trên, giúp người dùng dễ dàng và tiện lợi hơn trong việc sử dụng. Cụ thể AA sẽ giải quyết được các vấn đề của ví EOA đối với người dùng:
- Tạo ví hợp đồng thông minh sử dụng các loại xác minh chữ ký khác ngoài ECDSA.
- Tạo ví hợp đồng thông minh bao gồm các tính năng như xác minh multisig, khôi phục xã hội (social recovery), giảm nguy cơ mất hoặc bị đánh cắp tài sản.
- Cải thiện hiệu quả sử dụng phí gas của các DeFi protocols bằng cách ngăn chặn các giao dịch không đáp ứng điều kiện cao cấp được đưa vào chuỗi.
- Giúp người dùng có thể sử dụng một loại token khác để trả phí thay vì bắt buộc phải sử dụng ETH.
Giải thích đơn giản nhất về sự tiện lợi của AA là, giả sử bạn muốn tạo một ví nhằm lưu trữ ETH hay các token trên mạng lưới Ethereum. Bạn sẽ dùng Ví phần mềm là Metamask để khởi tạo địa chỉ ví (được xem là Public Key), đồng thời một Private Key được tạo ra để có thể xác minh quyền sở hữu ví trong các giao dịch. Nhưng với Account Abstraction, các hợp đồng thông minh (smart contract) sẽ thay Private Key xác minh quyền sở hữu ví và các giao dịch dựa trên các khóa ký duyệt đơn giản hơn (là một chuỗi ký tự đơn giản). Bên cạnh đó, các hợp đồng thông minh này còn có thể lấy lại quyền truy cập Ví khi bị mất khóa ký duyệt, dựa trên cơ chế Social Recover Wallet. Ngoài ra với Account Abstraction, khi bạn chuyển bất kỳ token nào trong mạng lưới Ethereum, sẽ không cần có ETH để là phí gas nữa.
Lời kết
Trên đây là những mô tả một cách đơn giản và dễ hiểu nhất nhằm giúp bạn trả lời câu hỏi “Account Abstraction là gì?” Tất nhiên để Account Abstraction có thể chính thức được đưa vào mạng lưới Ethereum, cộng đồng các nhà phát triển Ethereum cần phải giải quyết rất nhiều vấn đề. Cụ thể:
- Thay đổi cấu trúc của Ethereum Virtual Machine (EVM) để hỗ trợ việc truy cập tài khoản thông qua một địa chỉ văn bản thay vì chỉ có thể truy cập bằng private key như trước đây.
- Thay đổi giao thức để cho phép đăng ký địa chỉ văn bản và ánh xạ nó với địa chỉ tài khoản trên blockchain.
- Cập nhật các client Ethereum (như Geth và Parity) để hỗ trợ Account Abstraction và cung cấp các API mới cho phép truy cập tài khoản thông qua địa chỉ văn bản.
Account Abstraction sẽ là giải pháp giúp nâng trải nghiệm người dùng trên các Ví blockchain. Đây là tiền đề để hướng đến việc mass adoption và phổ biến hóa các ứng dụng trên web3.
- Website: https://izycrypto.com/
- Facebook Group: https://www.facebook.com/groups/congdongizycrypto
- Youtube: https://www.youtube.com/@izycrypto68
- Zalo: (chia sẻ kiến thức nền tảng): https://zalo.me/g/golhnn080
- Telegram (chia sẻ kiến thức chuyên sâu): https://t.me/+IfGLkVuU0GpmZTU1
- Tiktok: https://www.tiktok.com/@izycrypto