Phân tích sâu về lịch sử và tương lai của trừu tượng hóa tài khoản Ethereum
Lời giới thiệu
Bài viết được chia thành hai phần 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 chính của các đề xuất EIP cho đến nay, hy vọng thông qua góc nhìn lịch sử để khám phá quá trình phát triển của các đề xuất AA và đánh giá toàn diện những ưu nhược điểm của từng phương án.
Phần dưới sẽ tập trung so sánh phản ứng lạnh nhạt của thị trường sau khi EIP4337 được ra mắt, phân tích sâu về EIP7702 sắp được đưa vào bản nâng cấp tiếp theo của Ethereum. Nếu đề xuất này được hợp nhất, nó sẽ hoàn toàn thay đổi hình thái ứng dụng trên chuỗi.
EIP-7702 có ý nghĩa lịch sử, hãy cùng nhau thảo luận 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ại lộ trình phát triển ETH vào cuối năm 2023, trong đó các thiết lập về trừu tượng hóa tài khoản vẫn giữ nguyên. Mô hình chính hiện tại đang chuyển từ EIP-4337 sang giai đoạn tiếp theo "chuyển đổi tài khoản EOA tự nguyện".
Hơn một năm sau khi EIP4337 được ra mắt, vào ngày 1 tháng 3 năm 2023 tại WalletCon ở Denver, chính thức thông báo rằng hợp đồng cốt lõi ERC-4337 được phát triển bởi các nhà phát triển của Quỹ Ethereum đã được kiểm toán bởi OpenZeppelin, được coi là một mốc lịch sử chính thức (, thị trường đang ở trong trạng thái mâu thuẫn khi người dùng công nhận rộng rãi nhưng không sử dụng rộng rãi. Trong bối cảnh này, tiến độ EIP-7702 đã được đẩy nhanh đáng kể và đã được xác định sẽ được hợp nhất trong lần nâng cấp tiếp theo.
) 1.2 Thị trường hiện tại 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 của EIP4337 trên các chuỗi chính chỉ là 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ố địa chỉ độc lập trên mạng chính Ethereum đã đạt 270 triệu. Có thể nói 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 từ đầu đã định sẵn là khó có thể giải quyết vấn đề tương thích ngược nghiêm trọng của mạng chính. Khi các loại chuỗi L2 phổ biến tích hợp AA gốc, số lượng địa chỉ EIP4337 trên L2 đã bùng nổ, trong đó, số người dùng hoạt động hàng tháng của chuỗi Base và Polygon vào tháng 7 lần lượt đạt 1 triệu và 3 triệu, thể hiện khá tốt.
Do đó, không phải là EIP4337 thiết kế sai, nó có nhiều ưu điểm, chúng tôi sẽ tóm tắt hệ thống sau. Tình trạng 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 các giải pháp phù hợp với từng bên.
2. Trừu tượng hóa tài khoản là gì?
Trừu tượng hóa tài khoản về cơ bản giải quyết vấn đề tách bạch quyền sở hữu.
Có hai loại tài khoản trong kiến trúc EVM: tài khoả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 tài khoản ngoài thực chất được nắm giữ bởi cùng một thực thể. Người nắm giữ khóa riêng không chỉ sở hữu "quyền sở hữu" tài khoản mà còn có quyền "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. Từ cấu trúc giao dịch, có thể thấy rằng giao dịch chuẩn của Ethereum không có trường From. Thực tế, địa chỉ From được giải mã ngược lại thông qua tham số VRS ) mà người dùng ký (.
Điều này liên quan đến các khái niệm như ECDSA và hàm ngưỡng một chiều, không mở rộng ở đây. Tóm lại, ở đây sự an toàn được đảm bảo bởi mật mã, điều này cũng gây ra khó khăn trong việc hợp nhất quyền sở hữu địa chỉ EOA hiện tại.
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ỉ được thao tác.
Lý do quan trọng của việc tách biệt quyền sở hữu là, thiết kế tài khoản bên ngoài )EOA( sẽ phát sinh nhiều vấn đề hơn:
Khó bảo vệ khóa riêng: Người dùng mất khóa riêng ), tấn công của hacker, và bẻ khóa mật mã ( có nghĩa là mất tất cả tài sản.
Thuật toán ký duy nhất: Xác thực giao dịch giao thức gốc chỉ có thể sử dụng thuật toán ký và xác thực ECDSA.
Quyền ký quá cao: Không có đa ký gốc ), đa ký chỉ có thể được thực hiện thông qua hợp đồng thông minh (, ký đơn có thể thực hiện bất kỳ thao tác nào.
Phí giao dịch chỉ có thể thanh toán bằng ETH, không hỗ trợ giao dịch hàng loạt.
Rò rỉ quyền riêng tư giao dịch: Giao dịch một-một dễ dàng phân tích thông tin riêng tư của người nắm giữ tài khoản.
Những hạn chế này khiến người dùng thông thường khó sử dụng Ethereum:
Trước tiên, khi sử dụng bất kỳ ứng dụng nào trên Ethereum, người dùng phải sở hữu Ether ) và chịu rủi ro biến động giá (.
Thứ hai, người dùng cần xử lý logic phí phức tạp, giá Gas, giới hạn Gas, tắc nghẽn giao dịch ) thứ tự Nonce ( và các khái niệm này quá phức tạp đối với người dùng.
Cuối cùng, mặc dù nhiều ví blockchain hoặc ứng dụng cố gắng cải thiện 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ế.
Vì vậy, điểm đột phá nằm ở việc thực hiện trừu tượng hóa tài khoản, tách rời 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 được đưa ra, cuối cùng tụ họp lại thành 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])https://img-cdn.gateio.im/webp-social/moments-cecbf67df71971d38b0a927be5e4c4d9.webp(
3. Sắp xếp bối cảnh đề xuất AA lịch sử
) 3.1 Lộ trình đầ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 một cấu trúc mới cho tài khoản như là hợp đồng trong EIP-101. Địa chỉ được thay đổi thành chỉ có mã và không gian lưu trữ, thay đổi phí giao dịch hỗ trợ thanh toán bằng ERC20, thông qua hợp đồng biên soạn, chuyển đổi token gốc thành loại ERC20 với số dư ### có các chức năng như ủy quyền trừ tiền (, và giản lược các trường giao dịch thành to, startgas, data và code.
Đề xuất này có thể được coi là một cuộc cách mạng kiểu Đại Nhảy Vọt, sẽ thay đổi đáng kể thiết kế cơ bản, khiến mỗi địa chỉ tài khoản đều có "logic" của riêng mình ) cũng chính là hiệu ứng mà EIP-7702 hiện tại muốn đạt được (.
Nó còn có thể phát sinh các chức năng khác, chẳng hạn như:
Giao dịch sử dụng nhiều thuật toán mã hóa hơn, có thể được chỉ định phương pháp xác thực và kiểm tra chữ ký bởi mã nội bộ của từng địa chỉ.
Có tính năng chống tấn công lượng tử, vì mã có thể được nâng cấp
Để Ether có các chức năng và đặc điểm giống như hợp đồng ERC20, hiệu ứng cốt lõi là thực hiện ủy quyền trừ tiền, không cần tiêu tốn đồng coin gốc.
Nâng cao không gian tùy chỉnh của tài khoản, tương thích với phục hồi xã hội, hỗ trợ SBT, khôi phục khóa, v.v.
Nguyên nhân không thể tiếp tục tiến hành rất đơn giản, rõ ràng là bước đi quá lớn, đối với vấn đề xung đột hash giao dịch hiện tại và những rủi ro về an ninh không được xem xét kỹ lưỡng, vì vậy đã bị gác lại. Nhưng mỗi ưu điểm đều trở thành một trong những chức năng cốt lõi của EIP4337 và EIP7702 sau này.
Sau đó còn có một loạt 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, vai trò chính 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 việc triển khai ví hợp đồng. Thứ hai, còn đề xuất opcode PAYGAS mới, ngoài việc thanh toán gas, cũng 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ù không thể triển khai vào thời điểm đó, nhưng điều này đã trở thành một trong những logic cốt lõi của EIP7702 hiện nay. Mỗi giao dịch của EIP7702 kết hợp với cấu trúc giao dịch đặc biệt, có thể đính kèm một đoạn mã nhất định, từ đó 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 cũng là EIP cốt lõi của cơ chế thảo luận trong bài viết này, được Vitalik đề xuất như một giải pháp thay thế cho EIP-3074. Do đó, EIP-3074 đã bị loại bỏ, EIP-7702 được xác định sẽ được đưa vào phân nhánh cứng ETH Prague/Electra)Pectra( sắp tới, nội dung cụ thể chúng ta sẽ mở rộng sau.
) 3.2 Lộ trình thứ hai: Để địa chỉ EOA điều khiển địa chỉ CA
EIP-3074: Thêm mã vận hành AUTH và AUTHCALL ###2020-10-15(
Trong EVM, thêm hai OpCode mới AUTH và AUTHCALL, cho phép EOA ủy quyền cho hợp đồng thông qua hai opcode này để gọi các hợp đồng khác thay cho danh tính EOA.
Tóm lại, EOA có thể gửi các giao dịch đã ký ) tới hợp đồng mà nó tin tưởng ( được gọi là Invoker ), hợp đồng Invoker này có thể sử dụng mã vận hành AUTH và AUTHCALL thay thế giao dịch do EOA gửi.
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 của nó là có thể hoàn toàn tránh được sự thay đổi trong giao thức lớp đồng thuận.
EIP4337 đề xuất đối tượng giao dịch mới là UserOperation, người dùng sẽ gửi đối tượng này vào bể nhớ, được các bundler đóng gói hàng loạt từ góc độ thợ mỏ để thực hiện giao dịch hợp đồng, về bản chất là đưa giao dịch nền tảng và hoạt động tài khoản lên tầng hợp đồng để thực hiện.
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)
Đây là tối ưu hóa logic EIP4337, nhằm ngăn chặn các cuộc tấn công DoS bằng cách thiết lập cơ chế bảo đảm người ủng hộ thông qua việc thiết lập hình phạt tài chính đối với Bundler độc hại.
( 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###
Đây là một đề xuất đã được Final, định nghĩa loại giao dịch mới, như là một phong bì cho các loại giao dịch mới trong tương lai.
Kết quả cuối cùng là, khi giới thiệu loại giao dịch mới, thông qua mã hóa đặc biệt để phân biệt các loại giao dịch, chỉ cần tương thích ngược, 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, mà không ảnh hưởng đến loại giao dịch legacy ban đầu.
EIP-3607: Cấm địa chỉ EOA triển khai hợp đồng (2021-06-10)
Đây là giải pháp bổ sung trên đường AA, nhằm ngăn chặn xung đột giữa địa chỉ triển khai hợp đồng và địa chỉ EOA. Nó sẽ kiểm soát phương pháp tạo hợp đồng, cấm hệ thống triển khai mã lên địa chỉ đã là địa chỉ EOA. Rủi ro này thực sự rất nhỏ, vì đị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 ra khóa riêng của địa chỉ hợp đồng đã chỉ định, nhưng theo ước tính sức mạnh tính toán toàn mạng Bitcoin, cũng cần một năm thời gian.
( 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 sang CA
Về cơ bản, đó chính là hiệu ứng thực tế của EIP-4337, nó có thể đạt được:
Tuy nhiên, nhược điểm cốt lõi của EIP-4337 là đi ngược lại nguyên tắc động cơ con người.
Nó có vẻ tốt hơn, nhưng đã rơi vào vòng luẩn quẩn của sự phát triển thị trường, nhiều Dapp vẫn chưa tương thích, người dùng không muốn sử dụng địa chỉ CA, thậm chí việc sử dụng CA sẽ có chi phí giao dịch cao hơn trong bối cảnh chuyển khoản thông thường, phí giao dịch tăng gấp đôi, cũng quá phụ thuộc vào tính tương thích của chính Dapp.
Do đó, vẫn chưa được phổ biến trên mạng chính của Ethereum.
Chi phí là tiêu chí quan trọng nhất của người dùng, phải giảm chi phí.
Nhưng để thực sự giảm GAS, cần phải tiến hành nâng cấp phân tách mềm trên chính Ethereum, điều chỉnh các mô-đun như tính toán GAS hoặc tiêu thụ GAS của mã hoạt động. Nếu đã muốn phân tách mềm, sao không xem xét EIP-7702 ngay từ đầu?
![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-65d1ef9656425666ee30c38bbb63e769.webp###
4. Phân tích toàn diện EIP-7702
( 4.1 EIP-7702 là gì
Nó phân biệt thông qua 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 duy nhất, từ đó 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 trong kinh doanh, mà không cần phải đưa vào mã lệnh EVM mới ) ảnh hưởng đến khả năng tương thích ngược (.
Nó cho phép người dùng có được hầu hết các khả năng AA mà không cần triển khai hợp đồng thông minh, thậm chí có thể cung cấp khả năng cho bên thứ ba khởi xướng giao dịch thay cho người dùng mà không cần người dùng cung cấp khóa riêng, chỉ cần ký thông tin ủy quyền.
) 4.2 cấu trúc dữ liệu
Nó định nghĩa loại giao dịch mới 0x04, nội dung TransactionPayload của loại giao dịch này là kết quả tuần tự hóa RLP của các nội dung sau:
Điều quan trọng là trong đó đã thêm đối tượng authorization_list, lưu trữ mã mà người ký muốn thực hiện trong EOA của họ. Người dùng ký giao dịch đồng thời cũng ký mã hợp đồng sẽ được thực hiện, nó tồn tại dưới dạng danh sách hai chiều, cho thấy có thể lưu trữ hàng loạt thông tin hoạt động, thực hiện các thao tác hàng loạt.
Trong giai đoạn bắt đầu thực hiện giao dịch, đối với từng tuple [chain_id, address, nonce, y_parity, r, s] trong authorization_list:
Từ chữ ký r, s sử dụng ecrecover để khôi phục địa chỉ của người ký ( lưu ý rằng đây là cơ chế của Ethereum, vì vậy EIP này không thay đổi thuật toán ký ).
authority = ecrecover###keccak###MAGIC || rlp([chain_id, địa chỉ, nonce])(, y_parity, r, s]( tương tự như địa chỉ từ việc giải mã chữ ký trước đó, ở đây là địa chỉ ký riêng cho danh sách này(
Xác minh chuỗi ID) chống lại việc phát lại chuỗi phân nhánh).
Xác minh xem mã của người ký authority có trống hay đã ủy thác ( chưa.
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.
EIP-7702: Đột phá lớn trong trừu tượng hóa tài khoản Ethereum
Phân tích sâu về lịch sử và tương lai của trừu tượng hóa tài khoản Ethereum
Lời giới thiệu
Bài viết được chia thành hai phần 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 chính của các đề xuất EIP cho đến nay, hy vọng thông qua góc nhìn lịch sử để khám phá quá trình phát triển của các đề xuất AA và đánh giá toàn diện những ưu nhược điểm của từng phương án.
Phần dưới sẽ tập trung so sánh phản ứng lạnh nhạt của thị trường sau khi EIP4337 được ra mắt, phân tích sâu về EIP7702 sắp được đưa vào bản nâng cấp tiếp theo của Ethereum. Nếu đề xuất này được hợp nhất, nó sẽ hoàn toàn thay đổi hình thái ứng dụng trên chuỗi.
EIP-7702 có ý nghĩa lịch sử, hãy cùng nhau thảo luận 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ại lộ trình phát triển ETH vào cuối năm 2023, trong đó các thiết lập về trừu tượng hóa tài khoản vẫn giữ nguyên. Mô hình chính hiện tại đang chuyển từ EIP-4337 sang giai đoạn tiếp theo "chuyển đổi tài khoản EOA tự nguyện".
Hơn một năm sau khi EIP4337 được ra mắt, vào ngày 1 tháng 3 năm 2023 tại WalletCon ở Denver, chính thức thông báo rằng hợp đồng cốt lõi ERC-4337 được phát triển bởi các nhà phát triển của Quỹ Ethereum đã được kiểm toán bởi OpenZeppelin, được coi là một mốc lịch sử chính thức (, thị trường đang ở trong trạng thái mâu thuẫn khi người dùng công nhận rộng rãi nhưng không sử dụng rộng rãi. Trong bối cảnh này, tiến độ EIP-7702 đã được đẩy nhanh đáng kể và đã được xác định sẽ được hợp nhất trong lần nâng cấp tiếp theo.
) 1.2 Thị trường hiện tại 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 của EIP4337 trên các chuỗi chính chỉ là 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ố địa chỉ độc lập trên mạng chính Ethereum đã đạt 270 triệu. Có thể nói 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 từ đầu đã định sẵn là khó có thể giải quyết vấn đề tương thích ngược nghiêm trọng của mạng chính. Khi các loại chuỗi L2 phổ biến tích hợp AA gốc, số lượng địa chỉ EIP4337 trên L2 đã bùng nổ, trong đó, số người dùng hoạt động hàng tháng của chuỗi Base và Polygon vào tháng 7 lần lượt đạt 1 triệu và 3 triệu, thể hiện khá tốt.
Do đó, không phải là EIP4337 thiết kế sai, nó có nhiều ưu điểm, chúng tôi sẽ tóm tắt hệ thống sau. Tình trạng 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 các giải pháp phù hợp với từng bên.
2. Trừu tượng hóa tài khoản là gì?
Trừu tượng hóa tài khoản về cơ bản giải quyết vấn đề tách bạch quyền sở hữu.
Có hai loại tài khoản trong kiến trúc EVM: tài khoả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 tài khoản ngoài thực chất được nắm giữ bởi cùng một thực thể. Người nắm giữ khóa riêng không chỉ sở hữu "quyền sở hữu" tài khoản mà còn có quyền "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. Từ cấu trúc giao dịch, có thể thấy rằng giao dịch chuẩn của Ethereum không có trường From. Thực tế, địa chỉ From được giải mã ngược lại thông qua tham số VRS ) mà người dùng ký (.
Điều này liên quan đến các khái niệm như ECDSA và hàm ngưỡng một chiều, không mở rộng ở đây. Tóm lại, ở đây sự an toàn được đảm bảo bởi mật mã, điều này cũng gây ra khó khăn trong việc hợp nhất quyền sở hữu địa chỉ EOA hiện tại.
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ỉ được thao tác.
Lý do quan trọng của việc tách biệt quyền sở hữu là, thiết kế tài khoản bên ngoài )EOA( sẽ phát sinh nhiều vấn đề hơn:
Khó bảo vệ khóa riêng: Người dùng mất khóa riêng ), tấn công của hacker, và bẻ khóa mật mã ( có nghĩa là mất tất cả tài sản.
Thuật toán ký duy nhất: Xác thực giao dịch giao thức gốc chỉ có thể sử dụng thuật toán ký và xác thực ECDSA.
Quyền ký quá cao: Không có đa ký gốc ), đa ký chỉ có thể được thực hiện thông qua hợp đồng thông minh (, ký đơn có thể thực hiện bất kỳ thao tác nào.
Phí giao dịch chỉ có thể thanh toán bằng ETH, không hỗ trợ giao dịch hàng loạt.
Rò rỉ quyền riêng tư giao dịch: Giao dịch một-một dễ dàng phân tích thông tin riêng tư của người nắm giữ tài khoản.
Những hạn chế này khiến người dùng thông thường khó sử dụng Ethereum:
Trước tiên, khi sử dụng bất kỳ ứng dụng nào trên Ethereum, người dùng phải sở hữu Ether ) và chịu rủi ro biến động giá (.
Thứ hai, người dùng cần xử lý logic phí phức tạp, giá Gas, giới hạn Gas, tắc nghẽn giao dịch ) thứ tự Nonce ( và các khái niệm này quá phức tạp đối với người dùng.
Cuối cùng, mặc dù nhiều ví blockchain hoặc ứng dụng cố gắng cải thiện 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ế.
Vì vậy, điểm đột phá nằm ở việc thực hiện trừu tượng hóa tài khoản, tách rời 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 được đưa ra, cuối cùng tụ họp lại thành 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])https://img-cdn.gateio.im/webp-social/moments-cecbf67df71971d38b0a927be5e4c4d9.webp(
3. Sắp xếp bối cảnh đề xuất AA lịch sử
) 3.1 Lộ trình đầ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 một cấu trúc mới cho tài khoản như là hợp đồng trong EIP-101. Địa chỉ được thay đổi thành chỉ có mã và không gian lưu trữ, thay đổi phí giao dịch hỗ trợ thanh toán bằng ERC20, thông qua hợp đồng biên soạn, chuyển đổi token gốc thành loại ERC20 với số dư ### có các chức năng như ủy quyền trừ tiền (, và giản lược các trường giao dịch thành to, startgas, data và code.
Đề xuất này có thể được coi là một cuộc cách mạng kiểu Đại Nhảy Vọt, sẽ thay đổi đáng kể thiết kế cơ bản, khiến mỗi địa chỉ tài khoản đều có "logic" của riêng mình ) cũng chính là hiệu ứng mà EIP-7702 hiện tại muốn đạt được (.
Nó còn có thể phát sinh các chức năng khác, chẳng hạn như:
Giao dịch sử dụng nhiều thuật toán mã hóa hơn, có thể được chỉ định phương pháp xác thực và kiểm tra chữ ký bởi mã nội bộ của từng địa chỉ.
Có tính năng chống tấn công lượng tử, vì mã có thể được nâng cấp
Để Ether có các chức năng và đặc điểm giống như hợp đồng ERC20, hiệu ứng cốt lõi là thực hiện ủy quyền trừ tiền, không cần tiêu tốn đồng coin gốc.
Nâng cao không gian tùy chỉnh của tài khoản, tương thích với phục hồi xã hội, hỗ trợ SBT, khôi phục khóa, v.v.
Nguyên nhân không thể tiếp tục tiến hành rất đơn giản, rõ ràng là bước đi quá lớn, đối với vấn đề xung đột hash giao dịch hiện tại và những rủi ro về an ninh không được xem xét kỹ lưỡng, vì vậy đã bị gác lại. Nhưng mỗi ưu điểm đều trở thành một trong những chức năng cốt lõi của EIP4337 và EIP7702 sau này.
Sau đó còn có một loạt 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, vai trò chính 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 việc triển khai ví hợp đồng. Thứ hai, còn đề xuất opcode PAYGAS mới, ngoài việc thanh toán gas, cũng 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ù không thể triển khai vào thời điểm đó, nhưng điều này đã trở thành một trong những logic cốt lõi của EIP7702 hiện nay. Mỗi giao dịch của EIP7702 kết hợp với cấu trúc giao dịch đặc biệt, có thể đính kèm một đoạn mã nhất định, từ đó 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 cũng là EIP cốt lõi của cơ chế thảo luận trong bài viết này, được Vitalik đề xuất như một giải pháp thay thế cho EIP-3074. Do đó, EIP-3074 đã bị loại bỏ, EIP-7702 được xác định sẽ được đưa vào phân nhánh cứng ETH Prague/Electra)Pectra( sắp tới, nội dung cụ thể chúng ta sẽ mở rộng sau.
) 3.2 Lộ trình thứ hai: Để địa chỉ EOA điều khiển địa chỉ CA
EIP-3074: Thêm mã vận hành AUTH và AUTHCALL ###2020-10-15(
Trong EVM, thêm hai OpCode mới AUTH và AUTHCALL, cho phép EOA ủy quyền cho hợp đồng thông qua hai opcode này để gọi các hợp đồng khác thay cho danh tính EOA.
Tóm lại, EOA có thể gửi các giao dịch đã ký ) tới hợp đồng mà nó tin tưởng ( được gọi là Invoker ), hợp đồng Invoker này có thể sử dụng mã vận hành AUTH và AUTHCALL thay thế giao dịch do EOA gửi.
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 của nó là có thể hoàn toàn tránh được sự thay đổi trong giao thức lớp đồng thuận.
EIP4337 đề xuất đối tượng giao dịch mới là UserOperation, người dùng sẽ gửi đối tượng này vào bể nhớ, được các bundler đóng gói hàng loạt từ góc độ thợ mỏ để thực hiện giao dịch hợp đồng, về bản chất là đưa giao dịch nền tảng và hoạt động tài khoản lên tầng hợp đồng để thực hiện.
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)
Đây là tối ưu hóa logic EIP4337, nhằm ngăn chặn các cuộc tấn công DoS bằng cách thiết lập cơ chế bảo đảm người ủng hộ thông qua việc thiết lập hình phạt tài chính đối với Bundler độc hại.
( 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###
Đây là một đề xuất đã được Final, định nghĩa loại giao dịch mới, như là một phong bì cho các loại giao dịch mới trong tương lai.
Kết quả cuối cùng là, khi giới thiệu loại giao dịch mới, thông qua mã hóa đặc biệt để phân biệt các loại giao dịch, chỉ cần tương thích ngược, 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, mà không ảnh hưởng đến loại giao dịch legacy ban đầu.
EIP-3607: Cấm địa chỉ EOA triển khai hợp đồng (2021-06-10)
Đây là giải pháp bổ sung trên đường AA, nhằm ngăn chặn xung đột giữa địa chỉ triển khai hợp đồng và địa chỉ EOA. Nó sẽ kiểm soát phương pháp tạo hợp đồng, cấm hệ thống triển khai mã lên địa chỉ đã là địa chỉ EOA. Rủi ro này thực sự rất nhỏ, vì đị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 ra khóa riêng của địa chỉ hợp đồng đã chỉ định, nhưng theo ước tính sức mạnh tính toán toàn mạng Bitcoin, cũng cần một năm thời gian.
( 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 sang CA
Về cơ bản, đó chính là hiệu ứng thực tế của EIP-4337, nó có thể đạt được:
Tuy nhiên, nhược điểm cốt lõi của EIP-4337 là đi ngược lại nguyên tắc động cơ con người.
Nó có vẻ tốt hơn, nhưng đã rơi vào vòng luẩn quẩn của sự phát triển thị trường, nhiều Dapp vẫn chưa tương thích, người dùng không muốn sử dụng địa chỉ CA, thậm chí việc sử dụng CA sẽ có chi phí giao dịch cao hơn trong bối cảnh chuyển khoản thông thường, phí giao dịch tăng gấp đôi, cũng quá phụ thuộc vào tính tương thích của chính Dapp.
Do đó, vẫn chưa được phổ biến trên mạng chính của Ethereum.
Chi phí là tiêu chí quan trọng nhất của người dùng, phải giảm chi phí.
Nhưng để thực sự giảm GAS, cần phải tiến hành nâng cấp phân tách mềm trên chính Ethereum, điều chỉnh các mô-đun như tính toán GAS hoặc tiêu thụ GAS của mã hoạt động. Nếu đã muốn phân tách mềm, sao không xem xét EIP-7702 ngay từ đầu?
![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-65d1ef9656425666ee30c38bbb63e769.webp###
4. Phân tích toàn diện EIP-7702
( 4.1 EIP-7702 là gì
Nó phân biệt thông qua 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 duy nhất, từ đó 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 trong kinh doanh, mà không cần phải đưa vào mã lệnh EVM mới ) ảnh hưởng đến khả năng tương thích ngược (.
Nó cho phép người dùng có được hầu hết các khả năng AA mà không cần triển khai hợp đồng thông minh, thậm chí có thể cung cấp khả năng cho bên thứ ba khởi xướng giao dịch thay cho người dùng mà không cần người dùng cung cấp khóa riêng, chỉ cần ký thông tin ủy quyền.
) 4.2 cấu trúc dữ liệu
Nó định nghĩa loại giao dịch mới 0x04, nội dung TransactionPayload của loại giao dịch này là kết quả tuần tự 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](
Điều quan trọng là trong đó đã thêm đối tượng authorization_list, lưu trữ mã mà người ký muốn thực hiện trong EOA của họ. Người dùng ký giao dịch đồng thời cũng ký mã hợp đồng sẽ được thực hiện, nó tồn tại dưới dạng danh sách hai chiều, cho thấy có thể lưu trữ hàng loạt thông tin hoạt động, thực hiện các thao tác hàng loạt.
authorization_list = [[chain_id, address, nonce, y_parity, r, s], ...]
) 4.3 Chu kỳ giao dịch
4.3.1 Giai đoạn xác minh
Trong giai đoạn bắt đầu thực hiện giao dịch, đối với từng tuple [chain_id, address, nonce, y_parity, r, s] trong authorization_list:
Từ chữ ký r, s sử dụng ecrecover để khôi phục địa chỉ của người ký ( lưu ý rằng đây là cơ chế của Ethereum, vì vậy EIP này không thay đổi thuật toán ký ). authority = ecrecover###keccak###MAGIC || rlp([chain_id, địa chỉ, nonce])(, y_parity, r, s]( tương tự như địa chỉ từ việc giải mã chữ ký trước đó, ở đây là địa chỉ ký riêng cho danh sách này(
Xác minh chuỗi ID) chống lại việc phát lại chuỗi phân nhánh).
Xác minh xem mã của người ký authority có trống hay đã ủy thác ( chưa.