Tác giả: 0xNatalie Nguồn: ChainFeeds
Sau hơn 3 năm tích cực và cải tiến, tại cuộc họp ACDE lần thứ 183 của Ethereum, EIP-3074 đã nhận được sự ủng hộ rộng rãi từ cộng đồng Ethereum và chính thức được đưa vào đợt hard fork Ethereum tiếp theo. EIP-3074 được đề xuất bởi nhà nghiên cứu Ethereum Sam Wilson, nhà phát triển Go Ethereum Matt Garnett và những người khác. Cốt lõi của nó là cho phép mọi tài khoản thuộc sở hữu bên ngoài (EOA) hoạt động giống như một ví hợp đồng thông minh mà không cần triển khai Hợp đồng bổ sung, không cần di chuyển thủ công. Như Paradigm CTO Georgios Konstantopoulos đã nói: “Trải nghiệm người dùng ví sẽ được cải thiện gấp 10 lần”. Vậy EIP-3074 thực hiện điều này như thế nào? Sự khác biệt so với ERC-4337 là gì?
EIP-3074 là bản nâng cấp lên EVM
Tài khoản thuộc sở hữu bên ngoài (EOA) của người dùng Một loại tài khoản trên Ethereum trực tiếp kiểm soát và quản lý là tài khoản được tạo bởi ví ghi nhớ thường được sử dụng của chúng tôi, chẳng hạn như MetaMask. EIP-3074 giới thiệu hai hướng dẫn Máy ảo Ethereum mới: AUTH và AUTHCALL, cho phép EOA kết nối hợp đồng thông minh và chuyển quyền kiểm soát giao dịch sang hợp đồng thông minh.
Lệnh AUTH: được sử dụng để xác minh chữ ký ECDSA và đặt biến ngữ cảnh dựa trên chữ ký kết quả "được ủy quyền"
. Nếu chữ ký hợp lệ và địa chỉ của người ký khớp với địa chỉ được ủy quyền đã cho thì "ủy quyền
" được đặt thành địa chỉ được ủy quyền. Bằng cách này, lệnh AUTH cho phép hợp đồng thông minh thực hiện các hoạt động thay mặt cho EOA, từ đó cho phép ủy quyền kiểm soát ủy quyền.
Lệnh AUTHCALL: tương tự như lệnh CALL hiện có, được sử dụng để thực hiện cuộc gọi bên ngoài. Sự khác biệt là AUTHCALL sẽ sử dụng địa chỉ ủy quyền được đặt trước đó thông qua lệnh AUTH làm địa chỉ người gọi. Điều này có nghĩa là AUTHCALL sẽ sử dụng EOA được ủy quyền làm người gửi chứ không phải bản thân hợp đồng.
Quy trình tổng thể là: người dùng ký vào thông báo ủy quyền, hợp đồng Invoker nhận và xác minh nó, và hợp đồng Invoker sử dụng hướng dẫn AUTH và AUTHCALL để hoàn thành EOA Danh tính gửi giao dịch, thực hiện giao dịch thay mặt người dùng mà không sử dụng trực tiếp khóa riêng của người dùng và sau đó trả về kết quả cho người dùng.
Sự khác biệt so với ERC-4337
ERC-4337 ở cấp độ giao thức và không yêu cầu Mục tiêu chính của việc thay đổi lớp đồng thuận là đạt được Tính trừu tượng của tài khoản, cho phép các hợp đồng thông minh trực tiếp sở hữu tiền và có các chức năng tương tự như tài khoản Ethereum. Điều đó có nghĩa là, tài khoản hợp đồng thông minh có tính năng EOA chủ động bắt đầu giao dịch.
EIP-3074 cần được triển khai thông qua hard fork của Ethereum. Mục tiêu chính là cung cấp các chức năng EOA tương tự như hợp đồng thông minh và ủy quyền kiểm soát EOA cho hợp đồng thông minh, cho phép hợp đồng thông minh thực hiện các giao dịch thay mặt người dùng và hỗ trợ các chức năng như giao dịch hàng loạt và giao dịch được tài trợ (tức là phí gas do bên thứ ba trả để thực hiện giao dịch). Mặc dù nó làm cho EOA có chức năng của ví hợp đồng thông minh nhưng tài khoản vẫn là EOA. Nếu chìa khóa bị đánh cắp có nghĩa là nó đã bị mất hoàn toàn. (Trừ khi có hợp đồng đặc biệt được thiết lập riêng để khôi phục tài khoản)
Tại sao điều này lại quan trọng?
Trong thời đại có nhiều chuỗi, việc hỗ trợ ERC-4337 cho mỗi chuỗi đòi hỏi rất nhiều công việc phát triển. Tuy nhiên, giao dịch di chuyển do EIP-7377 đề xuất cho phép người dùng EOA di chuyển tài khoản của họ sang hợp đồng thông minh, yêu cầu người dùng gửi giao dịch di chuyển theo cách thủ công. Ngược lại, EIP-3074 cho phép EOA hoạt động như một hợp đồng thông minh, có thể được sử dụng trực tiếp trên tất cả các chuỗi và không yêu cầu người dùng di chuyển thủ công.
So với các đề xuất khác, ưu điểm của EIP-3074 là đơn giản, hiệu quả và không yêu cầu các quy trình bổ sung để cho phép người dùng tận hưởng các chức năng của hợp đồng thông minh. Trước đây, cộng đồng Ethereum sẽ lo lắng về các vấn đề bảo mật kỹ thuật của EIP-3074. Sau khi cải tiến và thử nghiệm, cộng đồng đã hỗ trợ rộng rãi việc thêm EIP-3074 vào bản nâng cấp Ethereum tiếp theo, điều này sẽ có tác động đến nhiều lĩnh vực trong hệ sinh thái Ethereum. .
Ví dụ: trong lĩnh vực DeFi, chức năng giao dịch hàng loạt của EIP-3074 sẽ cải thiện đáng kể hiệu quả của các nhà cung cấp và nhà giao dịch thanh khoản, đồng thời giảm chi phí tham gia. Ngoài ra, bằng cách ủy quyền cho tài khoản người dùng thực hiện giao dịch, ứng dụng DeFi có thể đóng vai trò là nhà tài trợ và trả phí gas cho người dùng, từ đó hạ thấp ngưỡng cho người dùng sử dụng các sản phẩm DeFi và thúc đẩy ứng dụng DeFi trên quy mô lớn.
Trong lĩnh vực trò chơi toàn chuỗi, thông qua EIP-3074, người dùng có thể cấp quyền vận hành tài khoản cho bên thứ ba (Invoker) thông qua ủy quyền, do đó tránh được cần Giao dịch yêu cầu người dùng xác nhận trên chuỗi và tự trả phí gas. Nhà phát triển trò chơi hoặc các bên thứ ba khác có thể thay mặt người dùng thực hiện giao dịch và người dùng chỉ cần ủy quyền một lần, giúp đơn giản hóa quy trình giao dịch và cải thiện độ mượt mà của trò chơi.
Rủi ro tiềm ẩn
Trong các giao dịch Ethereum, người xác thực nút cần biết chính xác chi tiết giao dịch trong để xử lý chúng một cách chính xác. Chỉ bằng cách này mới có thể đảm bảo tính bảo mật và ổn định của mạng. Trong EIP-3074, hợp đồng thông minh được phép thực hiện các giao dịch thay mặt EOA. Khi nói đến các giao dịch được tài trợ, việc tương tác với các hợp đồng hoặc tài khoản khác có thể thay đổi trạng thái tài khoản trước và sau khi giao dịch được thực hiện, gây khó khăn cho người xác thực nút dự đoán chính xác kết quả giao dịch, gây ảnh hưởng, dẫn đến rủi ro bảo mật mạng không thống nhất.
Ngoài ra, mặc dù người dùng có thể ủy quyền cho bên thứ ba vận hành tài khoản thông qua chữ ký nhưng điều này cũng có nghĩa là bên thứ ba (Invoker) có thể vận hành tài khoản của người dùng ở một mức độ nhất định. , điều này có thể dẫn đến các vấn đề bảo mật tiềm ẩn. Nếu quyền của bên thứ ba bị lạm dụng hoặc bị hack, tiền và thông tin cá nhân của người dùng có thể gặp rủi ro.