EIP-7702

Trung cấp

EIP-7702 là gì?

EIP-7702 là một đề xuất được thiết kế để tăng cường chức năng của các Tài khoản thuộc sở hữu bên ngoài (EOA). EOA là các tài khoản cơ bản trên mạng lưới Ethereum, có thể gửi giao dịch và tương tác với hợp đồng thông minh. Tuy nhiên, các tài khoản này thiếu một số chức năng có trên một số ví tiền mã hoá như xử lý giao dịch theo lô và tài trợ gas.
Mục đích của EIP-7702 là tạm thời cho phép các EOA này hoạt động như tài khoản hợp đồng thông minh trong một giao dịch, qua đó giới thiệu các tính năng vốn dành riêng cho ví hợp đồng thông minh. EIP-7702 được tạo ra để giải quyết một số mặt hạn chế và chỉ trích đối với EIP-3074.

Mặc dù hiện chưa đi vào hoạt động nhưng EIP-7702 đã nhận được sự ủng hộ đáng kể từ cộng đồng và nhiều người cho rằng đề xuất này có thể thay thế đề xuất EIP-3074. Nếu điều này xảy ra, EIP-7702 có thể được triển khai trong bản nâng cấp Ethereum Pectra, dự kiến vào cuối năm 2024.

EIP-7702 hoạt động như thế nào?

EIP-7702 giới thiệu một kiểu giao dịch mới trên mạng lưới Ethereum bao gồm một trường đặc biệt gọi là contract_code. Nhờ đó, EOA được cung cấp một số thuộc tính của hợp đồng thông minh trong thời gian diễn ra giao dịch. Hãy cùng xem cơ chế này hoạt động như thế nào.

Chuẩn bị giao dịch

Người dùng bắt đầu bằng cách chuẩn bị giao dịch, bao gồm các thông tin thông thường như địa chỉ đích, giới hạn gas và bất kỳ dữ liệu nào cần gửi. Ngoài những thông tin này, giao dịch còn bao gồm một đoạn mã hợp đồng thông minh đặc biệt trong trường contract_code. Mã này định rõ các chức năng hợp đồng thông minh tạm thời sẽ được gán cho EOA.

Ủy quyền 

Sau đó, người dùng ký vào giao dịch. Chữ ký này rất quan trọng vì nó xác thực giao dịch và bao gồm một danh sách ủy quyền. Danh sách này nêu chi tiết contract_code và các điều kiện để thực thi mã này. Về cơ bản, mã này xác minh và cho phép gán tạm thời mã hợp đồng thông minh cho EOA.

Thực thi

Khi giao dịch được gửi đến Ethereum, mạng lưới sẽ xử lý giao dịch đó bằng cách tạm thời gán contract_code đã chỉ định cho EOA. Trong giai đoạn này, giao dịch được xử lý như thể EOA là một hợp đồng thông minh, sử dụng các chức năng do contract_code cung cấp.

Đảo ngược

Sau khi giao dịch hoàn tất, mạng lưới Ethereum sẽ tự động xóa contract_code tạm thời khỏi EOA. EOA trở về trạng thái ban đầu, mất đi chức năng hợp đồng thông minh tạm thời.

Ví dụ về giao hàng

Giả sử Bob là tài xế giao hàng, lái một chiếc xe bình thường chỉ có thể chở những kiện hàng nhỏ. Một ngày nọ, Bob nhận được yêu cầu giao một kiện hàng lớn hơn. Vì vậy, thay vì từ chối đơn hàng, Bob quyết định thuê thêm một thùng hàng để lắp vào xe. Bob giao hàng và trả lại thùng hàng cho cửa hàng cho thuê, sau đó quay lại chiếc xe bình thường.

Trong ví dụ này:

  • Chiếc xe bình thường là EOA.

  • Thùng hàng tạm thời chính là contract_code cung cấp các chức năng bổ sung.
  • Chuyến giao hàng chính là giao dịch.

  • Việc thuê và trả lại thùng hàng thể hiện tính chất tạm thời của contract_code, vốn chỉ hoạt động trong quá trình giao dịch.

Lợi ích của EIP-7702

Mức độ bảo mật

Bằng cách tự động xóa mã hợp đồng tạm thời sau khi giao dịch, EIP-7702 giúp giảm bớt nguy cơ xảy ra hành vi trái phép. Điều này đảm bảo rằng cơ chế tăng cường chỉ hoạt động trong quá trình giao dịch, hạn chế các lỗ hổng bảo mật tiềm ẩn.

Sự linh hoạt

EIP-7702 sẽ cung cấp nhiều công dụng khác nhau, chẳng hạn như xử lý giao dịch theo lô, trong đó nhiều hành động có thể được kết hợp thành một giao dịch duy nhất. Đề xuất này cũng sẽ hỗ trợ tài trợ gas, cho phép một tài khoản thanh toán phí giao dịch của tài khoản khác.

Việc sử dụng ví thông minh

Bằng cách cho phép EOA tạm thời hoạt động như hợp đồng thông minh, EIP-7702 có thể khuyến khích việc sử dụng các tính năng ví thông minh mà không phát sinh rủi ro bảo mật liên quan đến những thay đổi vĩnh viễn đối với EOA.

Tổng kết

EIP-7702 là đề xuất giải quyết những mặt hạn chế của EOA bằng cách tạm thời cấp cho EOA chức năng hợp đồng thông minh. Việc này có thể tăng cường bảo mật bằng cách giới hạn thời gian hoạt động của hợp đồng thông minh bằng thời gian của một giao dịch. Đề xuất này cũng có thể tăng tính linh hoạt bằng cách xử lý giao dịch theo lô, tài trợ gas và các tính năng khác.

Mặc dù tương lai vẫn chưa chắc chắn nhưng mức độ ủng hộ đáng kể EIP-7702 cho thấy khả năng cao đề xuất này sẽ được đưa vào bản nâng cấp Ethereum Pectra sắp tới, dự kiến vào cuối năm 2024.