Account Abstraction (AA) là một phương pháp để biến một tài khoản người dùng thành một hợp đồng thông minh. Giải pháp này giúp đơn giản hóa trải nghiệm người dùng (UX) và cho phép người dùng có thể giữ tài sản an toàn hơn. Starknet và zkSync, hai trong số các ZK-Rollups hàng đầu hiện nay, đã ra mắt với tính năng Account Abstraction (AA) tích hợp sẵn trên nền tảng của họ. Bên cạnh đó, Ethereum cũng đã có giải pháp cho ví AA thông qua EIP-4337.

aa

Các hoạt động gần đây liên quan đến AA trên hệ sinh thái Ethereum cho thấy ​​mức độ ứng dụng và tầm quan trọng của ví AA trong trải nghiệm người dùng thực tế. Bên cạnh Ethereum, NEAR Protocol cũng là một trong những L1 đầu tiên quan tâm đến AA trong thiết kế nền tảng và hạ tầng AA đã có sẵn trên NEAR từ khi mainnet 2020.

Vậy giữa AA của NEAR và Ethereum có những khác biệt đáng kể nào? Hãy cùng GFI tìm hiểu trong nội dung của bài viết hôm nay.

NEAR Account Model

Thực tế, từ những ngày đầu phát triển sản phẩm, NEAR Protocol đã tích hợp AA vào trong hạ tầng của mình. Đối với người dùng bình thường trên Etherum, chủ yếu họ thường sử dụng EOA Wallet cho một số tác vụ đơn giản, thì các ví trên NEAR thực hiện nhiều tác vụ phức tạp hơn như DeleteKey, Stake, Delegate, DeleteAccount, Transfer, AddKey, DeployContract, etc.

Đơn giản định danh công khai

Đối với Ethereum, các tài khoản sẽ được định danh thông qua 1 khóa công khai (Public Key), khóa công khai này là 1 chuỗi dài 64 kí tự được mã hóa từ khóa bí mật (Private Key) có dạng 0x123… . Người dùng cần dùng địa chỉ này để nhận chuyển khoản vào ví khi có nhu cầu.

Thực ra, đối với người dùng crypto lâu năm, mô hình mã hóa này không phải là rào cản lớn. Tuy nhiên, đối với người dùng mới, việc sử dụng các 1 địa chỉ “ngân hàng” dài 64 kí tự là một việc làm không dễ dàng. Nhận thấy vấn đề tồn động, đối với các địa chỉ trên NEAR sẽ có định danh ID ngay khi tạo ra. Theo cách này, tài khoản trên NEAR sẽ có địa chỉ như alice.near thay vì chuỗi dài các ký tự ngẫu nhiên của Ethereum. Việc sử dụng tài khoản ID giúp đơn giản hóa việc đọc và ghi nhớ, dễ dàng hơn cho việc chuyển đổi người dùng truyền thống sang sử dụng các sản phẩm Web3.

account ID

Quyền truy cập qua Access Keys

Đây có thể nói là điểm nổi bật nhất của tài khoản trên NEAR so với Ethereum, cụ thể:

  • Ethereum (hoặc một vài blockchain khác): 1 tài khoản thường sử dụng 1 khóa riêng tư (private key) để kí xác nhận giao dịch.
  • NEAR Protocol: 1 tài khoản có thể sở hữu nhiều cặp khóa công khai/riêng tư khác nhau, mỗi khóa gọi là 1 khóa truy cập (Functioncall Key) được dùng cho một số quyền nhất định.

Điều này sẽ giúp hạn chế khá nhiều rủi ro với các bên thứ ba khi họ có thể truy cập vào ví bạn. Ở trường hợp xấu có thể xảy ra, nếu bên thứ ba như smart contract của giao thức DeFi mới có lỗ hổng bảo mật bị khai thác:

  • Ethereum: Khi họ truy cập vào private key của bạn sẽ gần như chiếm quyền kiểm soát hoàn toàn tài khoản.
  • NEAR Protocol: Hacker chỉ có thể truy cập vào một vài tài sản bạn đã phân quyền trước cho tài khoản của bạn, vì thế họ không thể nào đánh cắp toàn bộ tài sản.

Ngoài ra, người dùng cũng có thể thêm/xóa những cặp khóa bị khai thác bởi các bên thứ ba dễ dàng như việc gỡ bỏ các lớp bảo mật Authenticator trên các sàn giao dịch CEX. Với những điểm ưu việt từ việc sở hữu nhiều Access Key cho một tài khoản, NEAR đã mở ra nhiều ứng dụng thực tế cho các dự án xây dựng trên Blockchain của mình.

Account State

Đối với NEAR, mỗi tài khoản có một trạng thái liên kết gọi là state, nơi nó lưu trữ metadata và tất cả các dữ liệu liên quan đến hợp đồng (contract + storage). Trạng thái của các tài khoản có thể được đọc bởi bất kỳ ai trong mạng, nhưng chỉ tài khoản đó mới có thể thay đổi nó.

Một điểm tương đối khác biệt với Ethereum nữa là mỗi tài khoản trên NEAR đều trả phí cho việc lưu trữ riêng của mình bằng cách khóa một phần số dư tương ứng với không gian đã sử dụng trên mạng lưới.

Có thể hệ thống hóa lại các điểm khác biệt tiêu biểu giữa ví của NEAR và Ethereum như sau:

Ví Ethereum Ví NEAR
Định danh công khai Sử dụng Public Key (0xabc…) Sử dụng Account ID (gfi.near)
Khả năng thực thi Có thể thực thi các chức năng như Functioncall, Delegatecall, Transfer, Deploycontract. Ví có thể thực thi nhiều tác vụ phức tạp hơn như Addkey, Deletekey, Deleteaccount.
Khóa bí mật
(Private Key)
Chỉ có 1 khóa bí mật (0x123…). Bao gồm 2 loại khóa:
– Khóa truy cập toàn bộ account (FullAccess).
– Khóa truy cập 1 tính năng của account (FunctionCall).
Điểm nổi bật – Khóa bí mật dùng chung cho cả tài khoản.
– Tài khoản không cần tạo ra thông qua giao dịch.
– Sử dụng cặp khóa theo nhu cầu phân quyền.
– Account ID phải được tạo ra từ 1 giao dịch trên blockchain.

Tổng kết

Account Abstraction là một trong những thay đổi lớn trong thị trường crypto thời gian qua. Với việc phát triển native công nghệ này trên NEAR Protocol ngay từ khi ra mắt, họ đang có lợi thế cạnh tranh rất lớn về các trải nghiệm người dùng ở thời điểm hiện tại so với các L1 khác như Ethereum, Solana,… Đây có thể sẽ là “ngồi nổ” mang lại nhiều giá trị cho người dùng cũng như toàn bộ hệ sinh thái trên NEAR trong sứ mệnh chuyển đổi người dùng từ Web2 sang Web3.