Việc trừu tượng hóa tài khoản thể hiện sự thay đổi cơ bản trong cách người dùng tương tác với chuỗi khối Ethereum. Không giống như các phương pháp truyền thống, cách tiếp cận đổi mới này nhằm mục đích hợp lý hóa các tương tác bằng cách đơn giản hóa sự phức tạp liên quan đến các ứng dụng phi tập trung. Mục tiêu chính là tạo ra trải nghiệm trực quan và liền mạch hơn cho người dùng khi điều hướng hệ sinh thái phi tập trung. Hôm nay, hãy cùng Danchoitienao tìm hiểu về chủ đề thú vị này.
Tổng quan về việc trừu tượng hóa tài khoản
Giải mã các giao dịch Blockchain truyền thống
Để hiểu tầm quan trọng của việc trừu tượng hóa tài khoản, điều quan trọng là phải đi sâu vào hoạt động của các giao dịch blockchain truyền thống. Trong mô hình thông thường, khi người dùng muốn tham gia vào các hoạt động phức tạp hơn, chẳng hạn như thực hiện hợp đồng thông minh trên sàn giao dịch phi tập trung (DEX), họ thường nhượng lại quyền kiểm soát ví của mình cho hợp đồng thông minh.
Việc chuyển giao quyền kiểm soát này có nghĩa là hợp đồng thông minh có được quyền đối với tiền của người dùng, cho phép nó thực hiện các hành động cụ thể theo quy định của các điều kiện được đặt ra trong hợp đồng. Thật không may, quá trình này bộc lộ một lỗ hổng thường bị các tác nhân độc hại khai thác, vì người dùng có thể không hiểu đầy đủ tất cả các điều kiện được nhúng trong một hợp đồng thông minh cụ thể.
Những hạn chế của truyền thống
Mặc dù hệ thống truyền thống hoạt động đầy đủ cho các giao dịch tiêu chuẩn nhưng nó đặt ra những hạn chế đối với tiềm năng của hợp đồng thông minh. Cách tiếp cận này cũng làm tăng nguy cơ vi phạm an ninh, khiến người dùng có nguy cơ mất tiền do thiếu nhận thức xung quanh các điều kiện phức tạp trong một hợp đồng thông minh nhất định.
Việc trừu tượng hóa tài khoản nổi lên như một giải pháp cho những thách thức này bằng cách xác định lại mối quan hệ của người dùng với hợp đồng thông minh. Không giống như phương pháp thông thường, nơi quyền kiểm soát được chuyển hoàn toàn sang hợp đồng thông minh, việc trừu tượng hóa tài khoản cho phép người dùng giữ quyền kiểm soát ví của mình ngay cả khi tham gia vào các giao dịch phức tạp.
Giảm thiểu rủi ro bằng cách trừu tượng hóa tài khoản
Về bản chất, việc trừu tượng hóa tài khoản trao quyền cho người dùng bằng cách cung cấp cho họ khả năng hiển thị và kiểm soát tốt hơn đối với tiền của họ trong quá trình thực hiện hợp đồng thông minh. Cách tiếp cận mang tính cách mạng này không chỉ giải quyết các lỗ hổng liên quan đến việc từ bỏ quyền kiểm soát ví mà còn mở ra cánh cửa dẫn đến một tương lai an toàn hơn và lấy người dùng làm trung tâm cho các giao dịch blockchain.
Khi hệ sinh thái blockchain tiếp tục phát triển, việc tích hợp tính năng trừu tượng hóa tài khoản đánh dấu một thời điểm quan trọng trong việc xác định lại động lực giữa người dùng và hợp đồng thông minh. Sự thay đổi mang tính biến đổi này hứa hẹn sẽ nâng cao tính bảo mật và khả năng sử dụng của các giao dịch blockchain, tạo tiền đề cho một bối cảnh phi tập trung linh hoạt hơn và thân thiện với người dùng hơn.
Trừu tượng hóa tài khoản là gì?
Trừu tượng hóa tài khoản của Ethereum
Trong sự phát triển mang tính đột phá của mạng Ethereum, khái niệm Trừu tượng hóa tài khoản (AA) đã chiếm vị trí trung tâm, mang đến cho người dùng sự linh hoạt chưa từng có trong việc quản lý các giao dịch của họ. Đề xuất đổi mới này cho phép chuyển đổi các loại tài khoản truyền thống thành hợp đồng thông minh, mỗi loại được trang bị logic riêng để xác định độc lập tính hợp lệ của giao dịch, xử lý phí giao dịch và bắt đầu giao dịch.
Sự thay đổi mô hình trong tài khoản Ethereum
Trong lĩnh vực khoa học máy tính, những tài khoản này được gọi một cách thích hợp là “trừu tượng”, dẫn đến thuật ngữ Trừu tượng tài khoản. Ý tưởng cốt lõi đằng sau sự thay đổi mô hình này là loại bỏ thói quen sử dụng một tài khoản thông thường cho tất cả các mục đích. Thay vào đó, đề xuất ủng hộ sự tách biệt giữa các thực thể chịu trách nhiệm nắm giữ mã thông báo (tài khoản) và những người ủy quyền hoặc cho phép giao dịch mã thông báo (người ký).
Động thái chiến lược này nhằm mục đích trao quyền cho người dùng khả năng điều chỉnh tài khoản của họ cho phù hợp với nhu cầu cá nhân của họ. Người dùng tìm kiếm các thuật toán xác minh chữ ký thay thế, sử dụng nhiều khóa để ủy quyền giao dịch hoặc thường xuyên thay đổi người ký tài khoản giờ đây có thể tạo các tài khoản riêng biệt để quản lý liền mạch các khía cạnh này.
Hành trình của Vitalik Buterin từ EIP-86 đến EIP-4337
Mặc dù khái niệm Trừu tượng hóa tài khoản không hoàn toàn mới, nhưng người đồng sáng lập Ethereum Vitalik Buterin lần đầu tiên giới thiệu nó trong đề xuất EIP-86 vào năm 2017. Tuy nhiên, đề xuất ban đầu yêu cầu phải thay đổi quy trình rộng rãi, khiến việc triển khai gặp nhiều thách thức. Sau đó, Buterin đã cải tiến khái niệm này với EIP-2938 và phiên bản mới nhất, EIP-4337, đơn giản hóa quy trình triển khai.
Đáng chú ý, hai dự án nổi bật đã chính thức áp dụng ứng dụng Trừu tượng hóa tài khoản: StarkNet và zkSync phiên bản 2.0. Các dự án Lớp 2 này đi đầu trong việc áp dụng phương pháp mang tính biến đổi này, báo hiệu một kỷ nguyên mới trong quá trình phát triển của Ethereum.
Tài khoản Ethereum là gì?
Ethereum hoạt động thông qua mạng lưới các thực thể được gọi là tài khoản Ethereum. Các tài khoản này đóng vai trò then chốt trong việc tạo điều kiện thuận lợi cho các giao dịch và thực hiện hợp đồng thông minh trên mạng Ethereum. Ở đây, chúng tôi đi sâu vào sự phức tạp của hai loại tài khoản Ethereum chính và các đặc điểm độc đáo của chúng.
EOA được kiểm soát bởi các cá nhân sở hữu khóa riêng được liên kết với tài khoản.
Người dùng có thể dễ dàng tạo EOA miễn phí, cho phép thực hiện quy trình bắt đầu đơn giản.
Các khả năng chính bao gồm khả năng gửi, nhận và giữ ETH cũng như các token khác trên mạng Ethereum.
EOA có thể tương tác với các hợp đồng thông minh khác, mặc dù giao dịch giữa hai EOA bị giới hạn ở việc chuyển ETH và mã thông báo.
Tính năng Trừu tượng hóa Tài khoản hoạt động như thế nào?
Trừu tượng hóa tài khoản: Ngoài ví dựa trên hợp đồng
Tầm quan trọng thực sự của việc trừu tượng hóa tài khoản vượt ra ngoài các ví dựa trên hợp đồng, mở ra khả năng tách biệt sự cần thiết đối với các EOA hoặc tài khoản hợp đồng riêng biệt.
Tài khoản thông minh
Cốt lõi của sự tiến bộ này là khái niệm về tài khoản thông minh, các thực thể tự trị có khả năng khởi tạo và thực hiện giao dịch một cách độc lập mà không cần dựa vào EOA. Tính linh hoạt của tài khoản thông minh được thể hiện rõ ở khả năng thực hiện bất kỳ hoạt động tùy chỉnh nào được xác định dưới dạng mã hợp đồng thông minh.
Chức năng của tài khoản thông minh hoặc ví trừu tượng hóa tài khoản rất đơn giản. Thay vì sử dụng các giao dịch truyền thống như EOA, tài khoản thông minh sử dụng các đối tượng chuyên biệt gọi là UserOperations. Các UserOperations này gói gọn các chi tiết của một thao tác sẽ được thực hiện thay mặt cho người dùng.
Alt Mempool
Đối tượng UserOperation bao gồm nhiều thành phần dữ liệu khác nhau, cung cấp thông tin như loại giao dịch, mã thông báo liên quan, giới hạn gas, giá cả ở các bước giao dịch khác nhau, chữ ký giao dịch và siêu dữ liệu có liên quan khác. Khi bắt đầu, mỗi UserOperation được gửi bởi tài khoản thông minh sẽ đi vào khu vực chờ chung được gọi là bộ nhớ thay thế.
Người đóng gói
Sau đó, các yêu cầu này được tổng hợp bởi các gói, giống như các nút chịu trách nhiệm xác minh các giao dịch thông thường. Các gói này tận dụng logic tương tự như các nút khai thác hoặc trình xác thực để ưu tiên các giao dịch, tập trung vào việc trích xuất giá trị tối đa.
Xác minh điểm đầu vào
Sau đó, các UserOperations được nhóm sẽ được định tuyến thông qua một “Điểm nhập” được liệt kê trong danh sách cho phép duy nhất, trong đó mỗi UserOperation riêng lẻ đều trải qua quá trình xác minh và thực thi bằng cách gọi các hàm riêng biệt. Điều làm nên sự khác biệt của UserOperations là tính linh hoạt vốn có của chúng. Vì UserOperations có thể bao gồm logic đa dạng nên người dùng có quyền tự do điều chỉnh trải nghiệm giao dịch của mình dựa trên các yêu cầu và sở thích riêng.
Mục đích của việc trừu tượng hóa tài khoản
Việc triển khai Trừu tượng tài khoản được thiết lập để cách mạng hóa các tương tác trên ví, dApp và DeFi. Tính năng trừu tượng hóa tài khoản đóng vai trò là lớp cơ bản trên Ethereum, quyết định khi nào một tài khoản có thể tự động trang trải phí gas và định hình lại động lực xử lý giao dịch. Vai trò của tính năng Trừu tượng hóa tài khoản trở nên then chốt trong việc khắc phục các hạn chế hiện có, chẳng hạn như:
- XÁC MINH CHỮ KÝ ĐA DẠNG
- TÍNH NĂNG HỢP ĐỒNG THÔNG MINH NÂNG CAO
- BẢO VỆ QUYỀN RIÊNG TƯ
- TỐI ƯU HÓA HIỆU QUẢ PHÍ GAS
- TÍNH LINH HOẠT CỦA MÃ THÔNG BÁO
Tính năng trừu tượng hóa tài khoản cho phép tạo ví hợp đồng thông minh sử dụng các phương pháp xác minh chữ ký ngoài Thuật toán chữ ký số đường cong Elliptic thông thường (ECDSA).
Với sự hỗ trợ cho các phương pháp thay thế như Schnorr và BLS, người dùng có thể trải nghiệm tính bảo mật và tính linh hoạt cao hơn trong việc quản lý tài sản của mình.
Cách hoạt động của Account abstraction
Theo giới thiệu của EIP-2938 trên trang chủ Ethereum, EIP-2938 có thể hoạt động bằng cách đưa ra các protocol changes với một loại giao dịch AA mới yêu cầu 2 mã opcode mới: NONCE và PAYGAS; thay đổi các quy tắc của mempool và extensions để hỗ trợ các ứng dụng nâng cao.
Tuy nhiên cách làm này tương đối phức tạp, Vitalik đã đưa ra phiên bản phát triển ERC-4337 để đạt được account abstraction như những gì EIP-2938 làm được mà không cần các protocol changes.
Người dùng sẽ gửi các messages một cách off-chain được gọi là UserOperation, sau đó sẽ được thu thập và đóng gói hàng loạt thành một giao dịch bởi người đề xuất khối qua module bundler.
Người đề xuất khối có trách nghiệm lọc các hoạt động để đảm bảo rằng chỉ chấp nhận các hoạt động có trả phí. Sẽ có một mempool riêng cho các UserOperation và các node được kết nối với mempool này để thực hiện xác thực chuyên dụng cho ERC-4337 để đảm bảo một UserOperation bất kì luôn được trả phí trước khi chuyển đi.
Chuyển đổi EOA thành smart contract wallet
Để cho phép các tài khoản EOA có thể được nâng cấp lên thành ví ERC-4337, có thể tạo EIP cho phép các EOA thực hiện một thao tác thiết lập mã hợp đồng (contract code). Một khi EOA thực hiện điều này, sự chuyển đổi sẽ không thể bị đảo ngược và kể từ thời điểm đó, tài khoản đó sẽ chỉ có thể hoạt động như một ví hợp đồng thông minh.
Đã có một vài proposal về cách thực hiện quy trình nâng cấp này như giao dịch replace code hay AUTH_USURP (EIP-5003).
Hạn chế của ERC-4337
Nhìn chung, ERC-4337 cũng có thể tương tác với các chuẩn ERC khác, tuy nhiên cũng có một vài yếu điểm:
- Người dùng hiện tại không thể nâng cấp nếu không chuyển toàn bộ tài sản sang một tài khoản hoàn toàn mới.
- Cần chi phí gas bổ sung (~42,000 gwei cho một UserOperation cơ bản so với ~21k cho một giao dịch bình thường).
- Nhận ít lợi ích từ các kĩ thuật chống kiểm duyệt trong giao thức như crLists, vì chúng sẽ nhắm tới mục tiêu là các giao dịch và sẽ bỏ qua UserOperation.
Roadmap dự kiến của Account abstraction
Do phiên bản AA hoàn thiện nhất tới thời điểm hiện tại là ERC-4337 nên bài viết sẽ tập trung vào roadmap của ERC-4337.
Trong short-term
- Đưa ERC-4337 trở thành sản phẩm hoàn thiện. Mở rộng thêm khả năng tổng hợp chữ ký.
- Phát triển ví trình duyệt dễ tiếp cận sử dụng loại ví ERC-4337.
- Khởi động hệ sinh thái ERC-4337 trong các giao thức Layer 2, ở đó phí gas rẻ hơn rất nhiều.
Trong medium-term
- Triển khai Verkle trees (tương tự với Merkle Tree), thêm các EIPs mới để giảm phí gas.
- Thêm các giải pháp tuỳ chọn nâng cấp EOA lên ERC-4337.
- Có thể thêm crList logic.
Trong long-term
- Cân nhắc áp dụng việc chuyển đổi bắt buộc từ EOA.