Đề xuất Cải tiến Ethereum (EIP) 3074 là một nâng cấp giao thức quan trọng, nhằm tăng cường khả năng trừu tượng hóa tài khoản trên Ethereum, cho phép người dùng ủy quyền cho các hợp đồng bên ngoài thực hiện giao dịch thay họ. Đề xuất này bổ sung hai mã vận hành mới: AUTH và AUTHCALL, giúp hợp đồng thông minh thực hiện thao tác thay mặt Tài khoản Sở hữu Ngoại vi (EOA) của người dùng sau khi nhận được ủy quyền đã ký. Nhờ đó, trải nghiệm người dùng trên Ethereum được cải thiện rõ rệt, giảm sự phức tạp trong giao dịch và mở ra các tính năng nâng cao như giao dịch không phí gas và gom nhiều giao dịch.
Bối cảnh: Nguồn gốc của EIP 3074
EIP 3074 được các nhà phát triển Ethereum Sam Wilson, Ansgar Dietrichs và Matt Garnett giới thiệu vào cuối năm 2020. Đề xuất này xuất phát từ nhu cầu ngày càng lớn trong cộng đồng Ethereum về trừu tượng hóa tài khoản và mô hình giao dịch linh hoạt hơn. Trước EIP-3074, mô hình giao dịch của Ethereum khá cứng nhắc, buộc người dùng phải tự khởi tạo giao dịch từ tài khoản sở hữu ngoại vi và trả phí gas, làm hạn chế nhiều trường hợp sử dụng và cải thiện trải nghiệm người dùng.
Ethereum liên tục chịu áp lực nâng cao trải nghiệm và giảm rào cản gia nhập. Mô hình truyền thống yêu cầu người dùng hiểu phí gas, quản lý khóa riêng và trực tiếp tương tác với blockchain, gây khó khăn cho người mới. EIP-3074 là một phần trong hành trình nghiên cứu dài hơi về trừu tượng hóa tài khoản, được cộng đồng Ethereum thảo luận nhiều năm, với mục tiêu giúp người dùng tương tác blockchain dễ dàng, trực quan hơn.
Trong lịch sử phát triển của Ethereum, EIP-3074 là bước tiến kỹ thuật quan trọng, mang lại phương thức cải tiến từng bước bằng cách mở rộng mô hình tài khoản hiện tại thay vì thay đổi hoàn toàn. Cách tiếp cận này giúp đề xuất duy trì tương thích với các mô hình bảo mật và hạ tầng hiện hữu, đồng thời mang lại những cải tiến chức năng đáng kể.
Cơ chế hoạt động: EIP 3074 vận hành như thế nào
EIP-3074 giới thiệu hai mã vận hành mới phối hợp để kích hoạt trừu tượng hóa tài khoản:
- AUTH: Xác thực chữ ký người dùng và trả về địa chỉ người ký. Khi hợp đồng gọi mã này, nó kiểm tra tính hợp lệ của chữ ký và xác nhận danh tính người ký.
- AUTHCALL: Cho phép hợp đồng đã xác thực qua AUTH thực hiện thao tác thay mặt tài khoản sở hữu ngoại vi của người dùng. Hợp đồng có thể sử dụng quyền của người dùng để chuyển tiền hoặc tương tác với hợp đồng khác.
Quy trình hoạt động gồm các bước:
- Người dùng tạo chữ ký với quyền và giới hạn cụ thể.
- Người dùng gửi chữ ký cho hợp đồng invoker.
- Hợp đồng invoker xác thực chữ ký và lấy địa chỉ người dùng qua AUTH.
- Sau khi xác thực thành công, invoker có thể thực hiện các thao tác thay mặt người dùng thông qua AUTHCALL.
- Các thao tác này được ghi nhận trên blockchain là do tài khoản EOA của người dùng thực hiện, dù thực tế do hợp đồng tiến hành.
Thiết kế nổi bật của EIP-3074 là mô hình phân quyền. Người dùng kiểm soát chi tiết phạm vi quyền cấp cho hợp đồng invoker, gồm hợp đồng nào được truy cập, số tiền chuyển và thời gian hiệu lực. Kiểm soát này đảm bảo người dùng vẫn giữ mức bảo mật và tự chủ tài khoản cao khi ủy quyền cho hợp đồng.
EIP-3074 còn ngăn tái sử dụng chữ ký giữa các hợp đồng khác nhau bằng cách tích hợp dữ liệu phục hồi người ký và địa chỉ hợp đồng vào chữ ký, từ đó loại bỏ rủi ro bảo mật tiềm ẩn.
Rủi ro và thách thức của EIP 3074
Dù mang lại nhiều cải tiến, EIP-3074 vẫn đối mặt các rủi ro và thách thức:
- Rủi ro bảo mật
- Tái sử dụng chữ ký: Chữ ký thiết kế kém có thể bị hợp đồng độc hại lợi dụng
- Cấp quyền quá mức: Người dùng có thể vô tình cấp quyền rộng cho invoker
- Giả mạo giao diện: Ứng dụng độc hại có thể lừa người dùng ký ủy quyền nguy hiểm
- Thách thức kỹ thuật
- Tương thích với ví và ứng dụng hiện tại
- Xây dựng, áp dụng tiêu chuẩn chữ ký
- Yêu cầu thay đổi phần mềm node, client
- Trải nghiệm người dùng
- Mô hình phân quyền phức tạp khó giải thích cho người dùng phổ thông
- Thách thức thiết kế giao diện yêu cầu chữ ký
- Đảm bảo người dùng hiểu rõ quyền đã cấp
- Tác động mạng lưới
- Ảnh hưởng hiệu suất mạng, kích thước khối
- Cạnh tranh, phối hợp với các đề xuất trừu tượng hóa tài khoản khác
Việc triển khai EIP-3074 cần đồng thuận cộng đồng và kiểm toán bảo mật kỹ lưỡng. Do mang lại chức năng có thể thay đổi mô hình giao dịch cơ bản của Ethereum, tác động lâu dài cần được đánh giá kỹ. Các nhà nghiên cứu bảo mật cảnh báo nếu không có biện pháp bảo vệ phù hợp, AUTH và AUTHCALL có thể bị khai thác, do đó cần có cơ chế bảo mật đầy đủ khi triển khai cuối cùng.
Các nhóm phát triển Ethereum cần cân bằng đổi mới và bảo mật, đảm bảo EIP-3074 mang lại cải tiến chức năng mà không phát sinh lỗ hổng mới.
EIP-3074 đánh dấu bước tiến lớn trong quá trình phát triển Ethereum, hướng tới nền tảng blockchain linh hoạt, thân thiện hơn. Cơ chế trừu tượng hóa tài khoản giúp giải quyết các vấn đề như phí gas phức tạp, quy trình giao dịch rườm rà. Với nhà phát triển, EIP-3074 mở ra nhiều khả năng mới để xây dựng ứng dụng phi tập trung tinh vi, thân thiện hơn. Về lâu dài, các cải tiến này là yếu tố then chốt để Ethereum được chấp nhận rộng rãi, giảm rào cản cho người mới và tạo nền tảng kỹ thuật cho các trường hợp sử dụng đổi mới. Khi hệ sinh thái Ethereum tiếp tục phát triển, các đề xuất như EIP-3074 sẽ góp phần định hình tương lai blockchain toàn diện, hiệu quả hơn.