Tổng quan
Account abstraction là gì
Account abstraction hay AA là một loại tài khoản Ethereum cho phép chuyển đổi các tài khoản thành các hợp đồng thông minh với logic riêng, chúng có thể tự xác định các giao dịch có hợp lệ hay không? Và thực hiện trả phí giao dịch và khởi tạo giao dịch.
Trong thuật ngữ máy tính, các tài khoản này được coi là trừu tượng, do đó có tên là tài khoản trừu tượng.
Điều này có nghĩa là một tài khoản duy nhất sẽ không còn được sử dụng cho mọi mục đích. Giống như tách “đối tượng” đang nắm giữ mã thông báo (tài khoản) khỏi “đối tượng” được sử dụng để ủy quyền / cho phép trao đổi mã thông báo (người ký).
Điều này cho phép mỗi người dùng có một loại tài khoản đáp ứng nhu cầu cá nhân của họ.
Đối với những người dùng muốn sử dụng thuật toán xác minh chữ ký khác với ECDSA, sử dụng nhiều khóa để ủy quyền giao dịch, thay đổi người ký tài khoản hàng tuần, họ có thể viết một tài khoản riêng để thực hiện những việc đó.
Trên thực tế, khái niệm trừu tượng hóa tài khoản không phải là mới, Vitalik đã đề cập đến AA trong đề xuất EIP-86 2017 của Ethereum, nhưng vì nó yêu cầu quá nhiều thay đổi giao thức để thực hiện. Tiếp theo, Vitalik cập nhật lên phiên bản nâng cao EIP-2938 và phiên bản mới nhất, EIP- 4337 để triển khai dễ dàng hơn.
Hai dự án đã chính thức công bố việc áp dụng tính năng trừu tượng hóa tài khoản là dự án layer 2 là StarkNet và zkSync phiên bản 2.0.
Ethereum Account là gì?
Hiện tại, EOA là loại tài khoản được người dùng tương tác chính và cũng có ảnh hưởng nhiều nhất đến người dùng. Ngoài ra, tất cả các giao dịch trên Ethereum cũng được bắt đầu từ ví EOA.
Mỗi ví EOA sẽ được tạo bởi một cặp khóa mật mã: khóa công khai và khóa riêng tư. Hai loại khóa này được sử dụng để chứng minh rằng một giao dịch đã được ký bởi người gửi và để ngăn chặn việc giả mạo. Khóa cá nhân là một công cụ cho phép người dùng ký các giao dịch, do đó cho phép người dùng kiểm soát các tài sản nằm trong tài khoản đó.
Nói cách khác, người dùng chưa bao giờ thực sự sở hữu tiền điện tử, mà thay vào đó, họ nắm giữ các khóa cá nhân để truy cập vào các khoản tiền vẫn còn trên sổ cái Ethereum.
Điều gì xảy ra nếu user đánh mất Private key hoặc người khác có nó?
Cơ chế tài khoản và người ký thực sự đã được tin tặc sử dụng để đánh cắp tài sản của người dùng trong quá khứ. Một câu hỏi khác là nếu người dùng mất khóa cá nhân, điều gì sẽ xảy ra?
Khóa riêng tư cũng là tài khoản của người dùng, mất khóa cá nhân đồng nghĩa với việc mất tài khoản và tất cả các mã thông báo trong tài khoản đó. Trong trường hợp này, người dùng gần như không có cách nào để khôi phục, hàng triệu đô la đã bị mất hoặc bị đánh cắp vì những lý do liên quan đến khóa cá nhân.
Mục đích sử dụng
Mục đích của việc triển khai AA là cải thiện đáng kể trải nghiệm người dùng trong việc tương tác với chuỗi khối Ethereum thông qua ví, Dapps, DeFi. Phần trừu tượng hóa tài khoản cũng đóng vai trò là lớp cơ sở trên Ethereum để quyết định khi nào một tài khoản có thể thanh toán phí gas của chính nó và cách thanh toán tiền gas. Đặc biệt, AA giúp giải quyết các hạn chế ngăn cản sự phát triển trong một số lĩnh vực chính:
- Tạo ví hợp đồng thông minh sử dụng các loại xác minh chữ ký khác với ECDSA (Schnorr, BLS …).
- 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 mạng xã hội, giảm nguy cơ mất mát hoặc trộm cắp tài sản.
- Hệ thống bảo vệ quyền riêng tư như tornado.cash.
- Cải thiện hiệu quả phí gas của các giao thức DeFi bằng cách ngăn các giao dịch không đáp ứng các điều kiện cao cấp xâm nhập vào chuỗi.
- Cho phép người dùng sử dụng mã thông báo khác để thanh toán phí thay vì bị buộc phải sử dụng ETH (ví dụ: chuyển đổi mã thông báo này thành ETH cần thiết để thanh toán phí gas trong thời gian thực).
Account abstraction hoạt động như thế nào?
Nhược điểm của ERC-4337
Tiêu chuẩn ERC-4337 có thể tương tác với hầu hết các chuẩn ERC khác nhưng có một vài vấn đề như sau:
- Người dùng hiện tại không thể nâng cấp nếu không chuyển tất cả nội dung sang một tài khoản hoàn toàn mới.
- Yêu cầu chi phí gas bổ sung (~ 42.000 gwei cho UserOperation cơ bản so với ~ 21.000 cho giao dịch thông thường).
- Tận dụng lợi thế của các kỹ thuật chống kiểm duyệt giao thức như crLists, vì chúng sẽ nhắm mục tiêu đến các giao dịch và bỏ qua UserOperation.
Kết luận
Qua bài viết trên, coinviet đã giới thiệu các bạn về thuật ngữ Account abstraction và những điểm nổi bật của nó.
Hy vọng những thông tin trên hữu ích và chúc các bạn thành công!