Ngày nay, các blockchain dựa trên Ethereum hỗ trợ hai loại tài khoản:
Externally-owned accounts (EOAs): các tài khoản được kiểm soát thông qua quyền sở hữu một khóa riêng tư
Smart contract accounts: các tài khoản được kiểm soát bởi mã (code) được triển khai lên mạng
Trong lịch sử, các tài khoản EOA bị hạn chế về mặt chức năng: người dùng có thể gửi và nhận các giao dịch blockchain được ký bởi khóa riêng tư của họ và không có gì hơn.
Ngược lại, các tài khoản smart contract cho phép khả năng gần như vô hạn, bao gồm:
Batch calls: gửi nhiều giao dịch cùng một lúc
Gas fee sponsorship: giao dịch không phí cho người dùng
Arbitrary signing keys: sử dụng nhiều cơ chế chữ ký khác nhau (P256, BLS, v.v.)
Advanced ACLs: gán quyền sử dụng chi tiết và kiểm soát thời hạn truy cập
Account Abstraction tìm cách xóa nhòa ranh giới giữa EOA và smart contract account bằng cách cho phép người dùng thay thế tài khoản EOA của họ bằng các chức năng có thể lập trình được.
Ritual Chain là một trong những blockchain đầu tiên hỗ trợ EIP-7702: Set EOA account code, một phương pháp triển khai account abstraction hàng đầu, ban đầu được đề xuất bởi Vitalik Buterin.
EIP-7702 bổ sung một loại giao dịch mới, SetCodeTx, cho phép tài khoản EOA ủy quyền một smart contract làm implementation của nó.
Nhờ vậy, ngoài các chức năng EOA thông thường, người dùng cũng có thể sử dụng các chức năng lập trình của smart contract giống như thể một hợp đồng được triển khai tại chính địa chỉ EOA của họ. Điều này được thực hiện bằng cách ký và gửi một giao dịch đến address(self).

