EIP-7702: Giải pháp cuối cùng cho trừu tượng hóa tài khoản Ethereum và phát triển tương lai

Phân tích sâu về quá khứ và tương lai của trừu tượng hóa tài khoản Ethereum

Lời nói đầu

Bài viết được chia thành hai mô-đun lớn:

Phần trên bắt đầu từ đề xuất AA đầu tiên vào năm 2015, hệ thống đã tổng hợp nội dung các đề xuất EIP chính cho đến nay, xem xét lịch sử các đề xuất AA và đánh giá tổng hợp những ưu nhược điểm của từng phương án.

Phần dưới tập trung so sánh tình hình phản hồi thị trường không tốt sau khi EIP4337 được đưa ra, phân tích sâu về EIP7702 sắp được đưa vào bản nâng cấp phiên bản tiếp theo của Ethereum, đề xuất này một khi được hợp nhất sẽ thay đổi toàn diện hình thái ứng dụng trên chuỗi.

EIP-7702 có ý nghĩa lịch sử, hãy cùng tìm hiểu chi tiết.

1. Bối cảnh trừu tượng hóa tài khoản

1.1 Ý nghĩa của trừu tượng hóa tài khoản

Người sáng lập Ethereum, Vitalik, đã cập nhật lộ trình phát triển ETH vào cuối năm 2023, nhưng thiết lập liên quan đến trừu tượng hóa tài khoản không có sự thay đổi. Mô hình chính hiện đang chuyển từ EIP-4337 sang giai đoạn tiếp theo VoluntaryEOA Conversion( chuyển đổi tự nguyện tài khoản EOA).

1.2 Trạng thái thị trường của trừu tượng hóa tài khoản

Sau một năm rưỡi phát triển, tổng số tài khoản EIP4337 trên các chuỗi chính chỉ có 12 triệu, trong đó số địa chỉ hoạt động trên mạng chính Ethereum chỉ có 6,764, chênh lệch lớn so với số lượng địa chỉ EOA và CA. Số lượng địa chỉ độc lập trên mạng chính Ethereum đã đạt 270 triệu, có thể thấy EIP4337 gần như không có sự phát triển thực chất trên mạng chính.

Tuy nhiên, điều này không ảnh hưởng đến giá trị cốt lõi của AA. Thiết kế của EIP4337 ngay từ đầu đã định sẵn không thể giải quyết vấn đề tương thích với mạng chính, nhưng đã được ứng dụng rộng rãi trên các chuỗi L2 khác nhau. Trong đó, số lượng người dùng hoạt động hàng tháng trên chuỗi Base và Polygon lần lượt đạt 1 triệu và 3 triệu vào tháng 7, thể hiện kết quả không tồi.

Do đó, thiết kế EIP4337 bản thân không có vấn đề gì, tình hình hiện tại xuất phát từ sự khác biệt giữa mạng chính và L2, chúng cần áp dụng các giải pháp phù hợp khác nhau.

Phân tích sâu về quá khứ và tương lai của lĩnh vực trừu tượng hóa tài khoản Ethereum

2. Tài khoản trừu tượng là gì?

Trừu tượng hóa tài khoản về bản chất giải quyết vấn đề tách quyền sở hữu.

Trong kiến trúc EVM có hai loại tài khoản: tài khoản bên ngoài ( EOA ) và tài khoản hợp đồng ( Contract Account ). Quyền sở hữu và quyền ký của EOA thực sự được giữ bởi cùng một chủ thể. Người nắm giữ khóa riêng không chỉ có "quyền sở hữu tài khoản", mà còn có thể "ký chuyển nhượng tất cả tài sản".

Đây là do cấu trúc giao dịch của tài khoản Ethereum quyết định. Trong cấu trúc giao dịch tiêu chuẩn thực sự không có trường From, việc chuyển tiền được thực hiện thông qua tham số VRS ( chữ ký của người dùng ) được phản giải để lấy địa chỉ From.

Hiệu ứng cốt lõi của EIP4337 là thêm Địa chỉ Người gửi vào trường giao dịch, từ đó đạt được sự tách biệt giữa khóa riêng và địa chỉ bị thao tác.

Nguyên nhân mà việc tách quyền sở hữu lại quan trọng như vậy là do thiết kế EOA sẽ phát sinh ra nhiều vấn đề:

  1. Khó bảo vệ khóa riêng: Mất khóa riêng có nghĩa là mất tất cả tài sản.

  2. Thuật toán ký duy nhất: Giao thức gốc chỉ có thể sử dụng thuật toán ECDSA để xác thực giao dịch.

  3. Quyền ký quá cao: không có đa chữ ký gốc, chỉ cần một chữ ký là có thể thực hiện bất kỳ thao tác nào.

  4. Phí giao dịch chỉ có thể thanh toán bằng ETH, không hỗ trợ giao dịch hàng loạt.

  5. Rò rỉ thông tin giao dịch: Giao dịch một đối một dễ dàng phân tích thông tin người nắm giữ tài khoản.

Những hạn chế này khiến người dùng bình thường khó sử dụng Ethereum:

Đầu tiên, việc sử dụng ứng dụng Ethereum phải nắm giữ ETH và chịu rủi ro biến động giá.

Thứ hai, người dùng cần xử lý các logic phí phức tạp, như Gas price, Gas limit, khái niệm giao dịch bị tắc.

Cuối cùng, mặc dù nhiều ví blockchain cố gắng nâng cao trải nghiệm người dùng thông qua tối ưu hóa sản phẩm, nhưng hiệu quả vẫn hạn chế.

Do đó, điểm đột phá nằm ở việc thực hiện trừu tượng hóa tài khoản, tách biệt quyền sở hữu (Owner) và quyền ký (Signer), từ đó dần dần giải quyết các vấn đề nêu trên.

Trong lịch sử có nhiều phương án, cuối cùng chỉ còn lại hai hướng.

Phân tích sâu về quá khứ và tương lai của lĩnh vực trừu tượng hóa tài khoản Ethereum

3. Sắp xếp lại bối cảnh các đề xuất lịch sử AA

Giải pháp cho vấn đề dường như có rất nhiều đề xuất EIP, nhưng cuối cùng chỉ có hai ý tưởng cốt lõi. Mỗi vấn đề mà các EIP chưa được thông qua xem xét đều tập trung vào điểm đột phá của giải pháp hiện tại.

3.1 Loại đường đi đầu tiên: Chuyển đổi địa chỉ EOA thành địa chỉ CA

Vào ngày 15 tháng 11 năm 2015, Vitalik đã đề xuất cấu trúc mới cho tài khoản dưới dạng hợp đồng trong EIP-101. Thay đổi địa chỉ thành chỉ có mã và không gian lưu trữ, hỗ trợ thanh toán phí giao dịch bằng ERC20, thông qua hợp đồng được biên dịch trước để chuyển đổi token gốc thành loại lưu trữ giống ERC20, và rút gọn các trường giao dịch thành to, startgas, data và code.

Giải pháp này có thể phát sinh nhiều chức năng:

  1. Giao dịch có thể sử dụng nhiều thuật toán mã hóa hơn, được chỉ định phương pháp xác thực bởi Code bên trong địa chỉ.

  2. Có khả năng chống lại các cuộc tấn công lượng tử, vì mã có thể được nâng cấp

  3. Giúp ETH có chức năng tương tự như hợp đồng ERC20, như ủy quyền khấu trừ.

  4. Nâng cao không gian tùy chỉnh của tài khoản, tương thích với khôi phục xã hội, hỗ trợ SBT, tìm lại khóa và các tính năng khác.

Nguyên nhân không thể tiếp tục thúc đẩy rất đơn giản, bước đi quá lớn, không xem xét kỹ lưỡng vấn đề xung đột hash giao dịch hiện tại và các rủi ro về an ninh. Nhưng mỗi ý tưởng ưu điểm đã trở thành một trong những chức năng cốt lõi của EIP4337 và EIP7702 tiếp theo.

Sau đó còn một loạt các EIP cố gắng hoàn thiện logic này:

EIP-859: trừu tượng hóa tài khoản chuỗi chính (2018-01-30)

Cố gắng giải quyết vấn đề triển khai Code, cốt lõi là nếu hợp đồng của bên giao dịch chưa được triển khai thì sử dụng tham số code kèm theo giao dịch để thực hiện triển khai. Cũng đã đề xuất mã vận hành PAYGAS mới, như một dấu phân cách giữa phần xác thực và phần thực thi trong tham số giao dịch.

Mặc dù lúc đó không có kết quả, nhưng đã trở thành một trong những logic cốt lõi của EIP7702. Mỗi giao dịch của EIP7702 có thể kết hợp cấu trúc giao dịch đặc biệt kèm theo mã, cho phép địa chỉ EOA có khả năng hợp đồng trong giao dịch này.

EIP-7702: thiết lập mã tài khoản EOA (2024-05-07)

Đây là EIP cốt lõi mà bài viết này sẽ thảo luận tiếp theo, được Vitalik đề xuất như là một phương án thay thế cho EIP-3074. EIP-3074 đã bị bỏ, EIP-7702 xác định sẽ được đưa vào trong hard fork ETH Prague/Electra sắp tới.

3.2 Lộ trình thứ hai: Để địa chỉ EOA điều khiển địa chỉ CA

EIP-3074: Thêm mã lệnh AUTH và AUTHCALL (2020-10-15)

Trong EVM, thêm hai mã lệnh mới AUTH và AUTHCALL, cho phép EOA ủy quyền cho hợp đồng gọi các hợp đồng khác thay thế cho danh tính EOA thông qua hai opcode này.

EOA có thể gửi giao dịch đã ký ( đến hợp đồng đáng tin cậy ) được gọi là Invoker (, hợp đồng Invoker này có thể sử dụng mã thao tác AUTH và AUTHCALL thay thế cho EOA để gửi giao dịch.

EIP-4337: Sử dụng bộ nhớ giao dịch để thực hiện trừu tượng hóa tài khoản )2021-09-29(

Được thiết kế dựa trên cảm hứng từ MEV, giá trị cốt lõi là hoàn toàn tránh thay đổi giao thức lớp đồng thuận.

Đề xuất đối tượng giao dịch mới UserOperation, người dùng sẽ gửi đối tượng này đến pool bộ nhớ, từ đó các bundlers sẽ đóng gói hàng loạt và giao cho các thợ mỏ thực hiện giao dịch hợp đồng, về bản chất là đưa giao dịch cơ sở và hoạt động tài khoản lên thực hiện ở cấp độ hợp đồng.

EIP-5189: Thông qua người bảo lãnh để vận hành tài khoản trừu tượng )2022-06-29(

Tối ưu hóa logic EIP4337, thông qua việc thiết lập cơ chế ủng hộ phạt tiền để ngăn chặn tấn công DoS làm tắc nghẽn.

) 3.3 Các đề xuất khác hỗ trợ trừu tượng hóa tài khoản

EIP-2718: bao bì loại giao dịch mới ###2020-06-13(

Đề xuất đã Final, định nghĩa loại giao dịch mới như là bì thư cho các loại giao dịch sẽ được thêm vào trong tương lai.

Khi giới thiệu loại giao dịch mới, được phân biệt bằng mã hóa cụ thể, chỉ cần tương thích ngược mà không cần tương thích tiến. Ví dụ phổ biến nhất là EIP1559, phân biệt phí giao dịch, sử dụng mã hóa loại giao dịch mới, không ảnh hưởng đến loại giao dịch legacy ban đầu.

EIP-3607: hạn chế địa chỉ EOA triển khai hợp đồng )2021-06-10(

Giải pháp bổ sung trên đường AA, ngăn chặn xung đột giữa địa chỉ triển khai hợp đồng và địa chỉ EOA. Kiểm soát phương pháp tạo hợp đồng, không cho phép triển khai mã vào địa chỉ đã là EOA. Rủi ro này rất nhỏ, địa chỉ Ethereum dài 160 bit, mặc dù có phương pháp sử dụng khóa riêng để va chạm với khóa riêng của địa chỉ hợp đồng được chỉ định, nhưng ước tính cần một năm thời gian với toàn bộ sức mạnh tính toán của Bitcoin.

) 3.4 Làm thế nào để hiểu quá trình phát triển của trừu tượng hóa tài khoản?

Đầu tiên cần hiểu giá trị sau khi chuyển đổi thành CA, cơ bản chính là hiệu ứng thực tế của EIP-4337:

Nhưng nhược điểm cốt lõi của EIP-4337 là trái ngược với nguyên tắc động cơ nhân loại.

Có vẻ tốt hơn, nhưng lại rơi vào vòng lặp phát triển thị trường. Nhiều Dapp không tương thích, người dùng không muốn sử dụng địa chỉ CA, việc sử dụng CA thậm chí còn có chi phí giao dịch cao hơn. Quá phụ thuộc vào tính tương thích của chính Dapp.

Do đó, đến nay vẫn chưa phổ biến trên mạng chính của Ethereum.

Chi phí là tiêu chí đo lường quan trọng nhất của người dùng, phải giảm chi phí.

Để thực sự giảm Gas, cần phải thực hiện nâng cấp phân nhánh mềm cho chính Ethereum, sửa đổi việc tính toán Gas hoặc tiêu thụ Gas của mã lệnh, v.v. Nếu đã cần phân nhánh mềm, tại sao không xem xét trực tiếp EIP-7702?

![Sâu sắc phân tích quá khứ và tương lai của lĩnh vực trừu tượng hóa tài khoản Ethereum]###https://img-cdn.gateio.im/webp-social/moments-3503a168bb61430839419efb40e130de.webp(

4. Phân tích toàn diện EIP-7702

) 4.1 EIP-7702 là gì

Thông qua việc phân biệt loại giao dịch mới, cho phép EOA tạm thời có chức năng hợp đồng thông minh trong một giao dịch, hỗ trợ giao dịch hàng loạt, giao dịch không Gas và quản lý quyền tùy chỉnh, và không cần giới thiệu mã opCode EVM mới.

Người dùng không cần triển khai hợp đồng thông minh để có được hầu hết các khả năng AA, thậm chí có thể cung cấp khả năng cho bên thứ ba khởi tạo giao dịch thay cho người dùng, chỉ cần ký thông tin ủy quyền thay vì cung cấp khóa riêng.

4.2 Cấu trúc dữ liệu

Định nghĩa loại giao dịch mới 0x04, TransactionPayload là kết quả của việc mã hóa RLP của các nội dung sau:

rlp###[chain_id, nonce, max_priority_fee_per_gas, max_fee_per_gas, gas_limit, destination, value, data, access_list, authorization_list, signature_y_parity, signature_r, signature_s](

Thêm đối tượng authorization_list, lưu trữ mã mà người ký muốn thực hiện trong EOA. Người dùng ký giao dịch đồng thời ký mã hợp đồng sẽ thực hiện, tồn tại dưới dạng danh sách hai chiều, có thể lưu trữ nhiều thông tin hoạt động cùng một lúc.

authorization_list = [[chain_id, địa chỉ, nonce, y_parity, r, s], ...]

) 4.3 vòng đời giao dịch

4.3.1 Giai đoạn xác thực

Khi giao dịch bắt đầu, đối với mỗi tuple [chain_id, address, nonce, y_parity, r, s] trong authorization_list:

  1. Khôi phục địa chỉ người ký từ chữ ký r, s bằng ecrecover.

  2. Xác minh chuỗi ID ### để ngăn chặn việc phát lại chuỗi phân nhánh (.

  3. Xác minh mã người ký authority có trống hay không hoặc đã được ủy quyền.

  4. Xác minh nonceauthority người ký ) để ngăn chặn việc phát lại chữ ký authority (.

  5. Đặt mã người ký authority là 0xef0100 || địa chỉ.

  6. Tăng nonce người ký authority) để ngăn chặn việc phát lại chữ ký cục bộ(.

  7. Thêm tài khoản người ký authority vào danh sách địa chỉ đã truy cập.

)# 4.3.2 Giai đoạn thực hiện thao tác

"Phiên bản "mới" chỉ thay đổi hành vi triển khai mã.

Không còn đặt mã tài khoản là contract_code, mà lấy mã từ trường address của authorization_list và đặt làm mã tài khoản.

Khi thực hiện mã ủy quyền, tải mã từ địa chỉ được chỉ định trong danh sách ủy quyền và thực hiện trong ngữ cảnh tài khoản của người ký.

Mã hợp đồng của người dùng được lưu trữ thực tế tại địa chỉ cụ thể trên chuỗi, không được bao gồm trực tiếp trong giao dịch.

Lệnh thao tác và các tham số liên quan được lưu trữ trong trường dữ liệu của tải giao dịch.

4.4 Giá trị của EIP-7702

Có sự thay đổi trong toàn bộ chuỗi của ví Web3, trải nghiệm người dùng thay đổi lớn. EOA khởi xướng giao dịch thông thường có thể thực hiện nhiều logic giống như thực hiện hợp đồng, chẳng hạn như chuyển khoản hàng loạt. Ảnh hưởng đến việc phân biệt giao dịch trong các tình huống CeFi, phí tập trung gửi và rút tiền.

Đập vỡ nhiều định kiến đã có:

  1. Số dư tài khoản có thể giảm do các giao dịch không xuất phát từ tài khoản đó.

  2. Sau khi bắt đầu thực hiện giao dịch, nonce EOA có thể tăng lên nhiều.

  3. Đánh bại logic bảo vệ so sánh tx.origin và msg.sender, nhiều hợp đồng hiện có có rủi ro.

  4. EOA có thể phát ra sự kiện, ảnh hưởng đến việc nhận diện và lắng nghe một số sự kiện trên chuỗi.

  5. Địa chỉ EOA nhận tài sản ERC20, 721, 1155 có thể thất bại ### do cơ chế callback (.

![Phân tích sâu về quá khứ và tương lai của trừu tượng hóa tài khoản Ethereum])https://img-cdn.gateio.im/webp-social/moments-9d6eae95e3a0983a7b379ce2cfd7945f.webp(

) 4.5 So sánh EIP-7702 và EIP-4337

  1. Ưu điểm của EIP-7702
  • Gas thấp hơn, không cần thông qua mô-đun entrypoint, giảm thao tác trên chuỗi.
  • Chi phí chuyển đổi của người dùng thấp hơn, không cần triển khai hợp đồng trên chuỗi trước.
  • So với EIP4337, cũng có thực hiện ủy quyền mã, có hai cách:

Hoàn toàn ủy thác ### Full Delegation (

  • Thực hiện một thao tác
ETH-1.95%
Xem bản gốc
Trang này có thể chứa nội dung của bên thứ ba, được cung cấp chỉ nhằm mục đích thông tin (không phải là tuyên bố/bảo đảm) và không được coi là sự chứng thực cho quan điểm của Gate hoặc là lời khuyên về tài chính hoặc chuyên môn. Xem Tuyên bố từ chối trách nhiệm để biết chi tiết.
  • Phần thưởng
  • 6
  • Chia sẻ
Bình luận
0/400
TommyTeacher1vip
· 07-21 17:46
Vấn đề cũ lại là không tìm thấy điểm vào sinh thái
Xem bản gốcTrả lời0
SadMoneyMeowvip
· 07-21 17:46
Ôi ôi, lại là một điểm nóng tốn tiền nữa.
Xem bản gốcTrả lời0
LazyDevMinervip
· 07-21 17:46
AA lại bắt đầu làm đường rồi, chưa bao giờ thấy tốt cả.
Xem bản gốcTrả lời0
ForeverBuyingDipsvip
· 07-21 17:43
Lại là một kiểu mới của BTC, chờ thử nghiệm cho tôi biết có được không.
Xem bản gốcTrả lời0
GasFeeWhisperervip
· 07-21 17:34
AA đường đua đã sống quá lâu, 7702 cuối cùng có thể giải quyết được gì?
Xem bản gốcTrả lời0
NFTDreamervip
· 07-21 17:20
AA bây giờ không còn hot nữa, được không?
Xem bản gốcTrả lời0
  • Ghim
Giao dịch tiền điện tử mọi lúc mọi nơi
qrCode
Quét để tải xuống ứng dụng Gate
Cộng đồng
Tiếng Việt
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)