Từ 4337 đến 7702: Giải thích sâu sắc về quá khứ và tương lai của bản tóm tắt tài khoản Ethereum

avatar
十四君
4tháng trước
Bài viết có khoảng 9825từ,đọc toàn bộ bài viết mất khoảng 13 phút
EIP7702 lần này đã lật đổ quá nhiều và không thể phá vỡ các quy tắc ẩn trên nhiều mặt.

Lời nói đầu

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

Trong nửa đầu, bắt đầu từ đề xuất AA đầu tiên vào năm 2015, chúng tôi sẽ sắp xếp một cách có hệ thống các nội dung chính của các đề xuất EIP cho đến nay. Chúng tôi hy vọng sẽ khai quật được lịch sử của các đề xuất lịch sử của AA và đánh giá toàn diện những ưu điểm và nhược điểm của từng kế hoạch.

Trong nửa sau, chúng tôi tập trung so sánh phản hồi về suy thoái thị trường sau khi EIP 4337 được đề xuất, sau đó tiến hành phân tích chuyên sâu về EIP 7702, sắp được đưa vào phiên bản nâng cấp Ethereum tiếp theo sau khi đề xuất này được đưa ra. được sáp nhập, nó sẽ thay đổi hoàn toàn hình thức ứng dụng trên chuỗi .

EIP-7702 có những thay đổi mang tính thời đại, mời các bạn nghe thầy Shishi giải thích chi tiết

1. Nền trừu tượng của tài khoản

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

Người sáng lập Định vị Ethereum Vitalik đã cập nhật lại lộ trình phát triển ETH vào cuối năm 2023, nhưng cài đặt trừu tượng hóa tài khoản vẫn không được thay đổi. Mô hình chủ đạo ngày nay cũng đã bước vào giai đoạn tiếp theo từ EIP-4337, VoluntaryEOA Transform (chuyển đổi tự nguyện tài khoản EOA).

Từ 4337 đến 7702: Giải thích sâu sắc về quá khứ và tương lai của bản tóm tắt tài khoản Ethereum https://x.com/VitalikButerin/status/1741190491578810445

Hơn một năm kể từ khi ra mắt EIP 4337 (tại WalletCon ở Denver vào ngày 1 tháng 3 năm 2023, đã chính thức thông báo rằng hợp đồng cốt lõi của ERC-4337 do các nhà phát triển Ethereum Foundation thiết kế và triển khai đã vượt qua quá trình kiểm toán của OpenZeppelin và được coi là đã vượt qua vòng kiểm toán của OpenZeppelin. được chính thức ra mắt nút lịch sử).

Nó luôn được người dùng công nhận rộng rãi, nhưng không được sử dụng rộng rãi. Trong môi trường thị trường đầy mâu thuẫn như vậy, sự phát triển của EIP-7702 đã được nâng cao rất nhiều và thậm chí còn được xác nhận rằng nó sẽ được tích hợp trong bản nâng cấp tiếp theo.

1.2 Hiện trạng thị trường trừu tượng hóa tài khoản

Không dài dòng nữa, chúng ta hãy chỉ nhìn vào dữ liệu.

Sau một năm rưỡi phát triển, EIP 4337 chỉ có 1.200 địa chỉ W trong bộ sưu tập các tài khoản chuỗi chính thống. Điều đáng ngạc nhiên nhất là trên mạng chính Ethereum, chỉ có 6.764 địa chỉ hoạt động. Có lẽ kích thước thống kê là khác nhau. Vấn đề, nhưng ít nhất nó rất khác so với số lượng địa chỉ của EOA và CA Bạn phải biết rằng số lượng địa chỉ độc lập trên mạng chính Ethereum đã lên tới 270 triệu (nguồn dữ liệu: https://etherscan.io/chart/. Địa chỉ).

Có thể nói rằng EIP 4337 trên mạng chính không có sự phát triển đáng kể nào.

Từ 4337 đến 7702: Giải thích sâu sắc về quá khứ và tương lai của bản tóm tắt tài khoản Ethereum

Nguồn dữ liệu: https://dune.com/niftytable/account-abstraction)

Tuy nhiên, điều này không làm mất đi giá trị thiết yếu của AA, bởi vì ngay từ đầu thiết kế EIP 4337 đã được định sẵn rằng nó không thể hoạt động tốt khi đối mặt với các vấn đề tương thích nghiêm trọng về phía trước trên mạng chính, cùng với nhiều L2 khác nhau. chuỗi lớp Thường được nhúng trong AA gốc, số lượng địa chỉ của EIP 4337 đã bùng nổ trên L2. Số người dùng hoạt động hàng tháng của chuỗi cơ sở và chuỗi đa giác trong tháng 7 lần lượt là 100 W và 300 W, khá ấn tượng.

Vì vậy, không phải thiết kế của EIP 4337 là sai. Nó có nhiều ưu điểm. Chúng tôi sẽ tóm tắt một cách có hệ thống sau. Tình hình hiện tại là do sự khác biệt giữa mạng chính và L2. giải pháp.

2. Việc trừu tượng hóa tài khoản là gì?

Việc trừu tượng hóa tài khoản nghe có vẻ khó hiểu nhưng thực chất nó giải quyết được vấn đề phân chia quyền tài sản.

Có hai loại tài khoản trong kiến trúc EVM (tức là Máy ảo Ethereum), tài khoản bên ngoài (EOA) và tài khoản hợp đồng (Tài khoản hợp đồng). Quyền sở hữu và quyền chữ ký của tài khoản bên ngoài thực sự được nắm giữ bởi cùng một cá nhân. đơn vị. Người nắm giữ chìa khóa riêng không chỉ có “quyền sở hữu” tài khoản mà còn có quyền “ký và chuyển nhượng toàn bộ tài sản”.

Điều này được xác định bởi cấu trúc giao dịch của tài khoản Ethereum

Như có thể thấy từ cấu trúc trong hình bên dưới, trên thực tế, không có bên Từ nào trong các giao dịch tiêu chuẩn của Ethereum. Vậy nếu tôi thực hiện chuyển tiền, tôi sẽ tiêu tiền từ địa chỉ cụ thể nào? Trên thực tế, địa chỉ From được giải mã thông qua tham số VRS của nó (tức là chữ ký người dùng).

Điều này liên quan đến các khái niệm như mã hóa bất đối xứng như ECDSA và các hàm ngưỡng một chiều. Nói tóm lại, mật mã được sử dụng để đảm bảo an ninh. Tất nhiên, điều này cũng gây ra tình trạng khó xử về địa chỉ EOA của việc sáp nhập quyền sở hữu hiện tại. .

Tác dụng cốt lõi của EIP 4337 là thêm trường Địa chỉ người gửi vào trường giao dịch, từ đó tách khóa riêng khỏi địa chỉ được vận hành.

Từ 4337 đến 7702: Giải thích sâu sắc về quá khứ và tương lai của bản tóm tắt tài khoản Ethereum

Vậy tại sao việc phân chia quyền tài sản lại quan trọng đến vậy?

Bởi vì thiết kế tài khoản bên ngoài (EOA) sẽ phát sinh nhiều vấn đề hơn:

  • Khóa riêng rất khó bảo vệ: người dùng mất khóa riêng (mất, hacker tấn công, bẻ khóa mật mã) đồng nghĩa với việc mất tất cả tài sản của họ.

  • Ít thuật toán chữ ký: Giao thức gốc chỉ có thể sử dụng thuật toán xác minh chữ ký và chữ ký ECDSA để xác minh giao dịch.

  • Quyền chữ ký cao: Không có chữ ký đa chữ ký gốc (đa chữ ký chỉ có thể cộng tác thông qua hợp đồng thông minh) và mọi thao tác đều có thể được thực hiện bằng một chữ ký duy nhất.

  • Phí giao dịch chỉ có thể được thanh toán qua ETH và giao dịch hàng loạt không được hỗ trợ.

  • Rò rỉ quyền riêng tư trong giao dịch: Giao dịch một-một giúp dễ dàng phân tích thông tin cá nhân của chủ tài khoản.

Những hạn chế về sự hấp dẫn khiến người dùng bình thường khó sử dụng Ethereum:

Đầu tiên, để sử dụng bất kỳ ứng dụng nào trên Ethereum, người dùng phải nắm giữ ether (và chịu rủi ro biến động giá ether).

Thứ hai, người dùng cần phải xử lý logic chi phí phức tạp Các khái niệm về giá Gas, giới hạn Gas và chặn giao dịch (Nonce order) quá phức tạp đối với người dùng.

Cuối cùng, mặc dù nhiều ví hoặc ứng dụng blockchain 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ả thực tế của chúng là rất nhỏ.

Do đó, cách để phá vỡ tình trạng này là thực hiện trừu tượng hóa tài khoản và tách quyền sở hữu (Chủ sở hữu) và quyền chữ ký (Người ký), để có thể giải quyết từng vấn đề trên. Trên thực tế, có rất nhiều kế hoạch mang tính lịch sử, cuối cùng chúng sẽ hội tụ về hai con đường.

3. Xem lại lịch sử đề xuất AA

Từ 4337 đến 7702: Giải thích sâu sắc về quá khứ và tương lai của bản tóm tắt tài khoản Ethereum

Dường như có nhiều đề xuất EIP để giải quyết vấn đề, nhưng trong phân tích cuối cùng, có hai ý tưởng cốt lõi. Do đó, các vấn đề được xem xét trong mọi EIP trước đây chưa được thông qua cũng đã hội tụ thành giải pháp cho giải pháp hiện tại.

3.1 Lộ trình đầu tiên là thay đổi địa chỉ EOA thành địa chỉ CA

Ngay từ ngày 15 tháng 11 năm 2015, xung quanh EIP-101, Vitalik đã đề xuất một cấu trúc mới sử dụng hợp đồng làm tài khoản. Thay đổi địa chỉ để chỉ có mã và không gian lưu trữ, thay đổi phí xử lý để hỗ trợ thanh toán bằng ERC 20, thay đổi mã thông báo gốc thành giống ERC 20 để lưu trữ số dư thông qua các hợp đồng được biên dịch trước (có thể có các chức năng như ủy quyền khấu trừ), hợp lý hóa các trường giao dịch chỉ đến, startgas, dữ liệu và mã. Bây giờ có vẻ như đó chỉ đơn giản là một thay đổi theo kiểu Đại nhảy vọt, sẽ thay đổi đáng kể thiết kế cơ bản để mỗi địa chỉ tài khoản có logic mã riêng (trên thực tế, đây chính xác là những gì EIP-7702 đang cố gắng đạt được hiện nay). ). Các chức năng khác cũng có thể được bắt nguồn, chẳng hạn như

  • Cho phép giao dịch sử dụng nhiều thuật toán mã hóa hơn, đồng thời phương thức xác thực chữ ký có thể được quy định cụ thể bằng Mã nội bộ của từng địa chỉ.

  • Nó có khả năng chống lại các cuộc tấn công lượng tử vì mã có đặc tính nâng cấp.

  • Hãy để Ethereum có các đặc điểm chức năng tương tự như hợp đồng ERC 20 và tác dụng cốt lõi là ủy quyền khấu trừ, do đó không cần thiết phải mất tiền bản địa.

  • Cải thiện không gian tùy chỉnh tài khoản, tương thích với phục hồi xã hội, hỗ trợ sbt, truy xuất khóa, v.v.

Lý do không tiếp tục tiến lên cũng rất đơn giản. Rõ ràng là tốc độ quá lớn. Về vấn đề xung đột băm giao dịch hiện tại và các rủi ro bảo mật, nó đã bị gác lại vì chưa được xem xét đầy đủ. đã trở thành chức năng cốt lõi của EIP 4337 và EIP 7702. one tiếp theo.

Sau đó, có một loạt EIP cố gắng cải thiện logic này:

EIP-859: Tóm tắt tài khoản chuỗi chính--30-01-2018

Cố gắng giải quyết vấn đề triển khai Mã, chức năng cốt lõi là nếu hợp đồng của bên giao dịch không được triển khai, tham số mã gắn liền với giao dịch sẽ được sử dụng để thực hiện triển khai ví hợp đồng. Thứ hai, mã hoạt động PAYGAS mới cũng được đề xuất. Ngoài việc thanh toán gas, nó còn trở thành một giao dịch. Dấu phân cách giữa phần xác minh và phần thực hiện của các tham số giao dịch. Mặc dù nó đã kết thúc vô ích vào thời điểm đó nhưng hiện tại nó đã trở thành một trong những logic cốt lõi của EIP 7702. Mỗi giao dịch của EIP 7702 được kết hợp với một cấu trúc giao dịch đặc biệt và có thể đi kèm với một số mã nhất định, do đó địa chỉ EOA có khả năng hợp đồng. trong giao dịch này.

EIP-7702: Đặt mã tài khoản EOA 2024-05-07

Đây cũng là EIP cốt lõi của cơ chế được thảo luận sau trong bài viết này. EIP-7702 được Vitalik công bố thay thế cho EIP-3074 (2024-05-07). Do đó, EIP-3074 bị loại bỏ và EIP-7702 được xác định sẽ được đưa vào hard fork ETH Praha/Electra (Pectra) sắp tới. Chúng tôi sẽ mở rộng chi tiết bên dưới.

3.2 Cách thứ hai là để địa chỉ EOA điều khiển địa chỉ CA

EIP-3074: Thêm mã hoạt động AUTH và AUTHCALL--2020-10-15

Hai OpCodes AUTH và AUTHCALL mới được thêm vào EVM, cho phép EOA gọi các hợp đồng khác thông qua hai hợp đồng ủy quyền opcode này thay vì danh tính của EOA. Kết hợp với hình bên dưới, tóm lại, một EOA có thể gửi một tin nhắn đã ký (giao dịch) đến một hợp đồng mà nó tin tưởng (gọi là Invoker). Hợp đồng Invoker này có thể sử dụng mã hoạt động AUTH và AUTHCALL để thay thế EOA này và gửi giao dịch này. buôn bán.

EIP-4337: Sử dụng nhóm bộ nhớ giao dịch để triển khai tính năng trừu tượng hóa tài khoản--2021-09-29

Tôi đã viết nhiều bài về vấn đề này để phân tích sâu về cơ chế của nó. Bạn có thể đọc thêm:

Nói tóm lại, thiết kế của anh ấy được lấy cảm hứng từ MEV, giá trị cốt lõi của nó là có thể tránh hoàn toàn những thay đổi về giao thức lớp đồng thuận.

eip 4337 đề xuất một đối tượng giao dịch mới UserOperation. Người dùng gửi đối tượng này đến nhóm bộ nhớ, sau đó các gói đóng gói và phân phối hợp đồng theo đợt từ thứ nguyên thợ mỏ để thực hiện giao dịch. mức hợp đồng để thực hiện.

EIP-5189: Vận hành tài khoản tóm tắt thông qua người chứng thực — 29-06-2022

Điều này có thể được coi là tối ưu hóa logic của EIP 4337. Khi đối mặt với Bundler độc hại, nó ngăn chặn các cuộc tấn công chặn DoS bằng cách thiết lập cơ chế chứng thực hình phạt quỹ.

3.3 Các đề xuất hỗ trợ AA khác

EIP-2718: Gói phong bì cho các loại giao dịch mới--2020-06-13

Đây là đề xuất cuối cùng. Nó xác định một loại giao dịch mới như một phong bì cho các loại giao dịch mới trong tương lai. Hiệu quả thực sự là khi một loại giao dịch mới được giới thiệu, mã hóa cụ thể sẽ được sử dụng để phân biệt đó là loại giao dịch nào, do đó nó chỉ cần khả năng tương thích ngược chứ không cần khả năng tương thích về phía trước. Ví dụ phổ biến nhất là EIP 1559, phân biệt phí giao dịch và 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 cũ ban đầu.

EIP-3607: Tạo địa chỉ EOA cho các hợp đồng không thể triển khai--2021-06-10

Đây là giải pháp bổ sung trên đường dẫn AA nhằm ngăn chặn xung đột giữa địa chỉ triển khai hợp đồng và địa chỉ EOA. Anh ta sẽ kiểm soát phương thức tạo hợp đồng để hệ thống không cho phép triển khai mã đến một địa chỉ đã là địa chỉ EOA. Rốt cuộc, rủi ro này là rất nhỏ, địa chỉ Ethereum dài 160 bit. Mặc dù có một 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 vẫn sẽ mất một năm nếu tính đầy đủ. sức mạnh tính toán của Bitcoin.

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

Đầu tiên bạn cần hiểu giá trị của việc chuyển đổi sang CA

Về cơ bản, đó là tác dụng thực tế của EIP-4337, anh ta có thể đạt được

Từ 4337 đến 7702: Giải thích sâu sắc về quá khứ và tương lai của bản tóm tắt tài khoản Ethereum

Tuy nhiên, thiếu sót cốt lõi của EIP-4337 là nó vi phạm các nguyên tắc về động lực của con người.

Tưởng chừng tốt hơn nhưng lại rơi vào vòng phát triển thị trường vô tận. Nhiều Dapp không tương thích nên người dùng không sẵn sàng sử dụng địa chỉ CA, thậm chí sử dụng CA còn có chi phí giao dịch cao hơn (các kịch bản chuyển khoản thông thường cũng sẽ tính phí giao dịch). double) và nó cũng phụ thuộc quá nhiều vào khả năng tương thích của chính Dapp.

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

Chi phí là tiêu chí quan trọng nhất đối với người dùng và chi phí phải giảm.

Nhưng để thực sự giảm GAS, bản thân Ethereum phải thực hiện nâng cấp fork mềm, sửa đổi cách tính GAS hoặc sửa đổi mức tiêu thụ GAS của opcode và các mô-đun khác. Tuy nhiên, vì cần phải có fork mềm, tại sao không xem xét trực tiếp EIP-7702?

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

4.1 EIP-7702 là gì

Nó được phân biệt bởi các loại giao dịch mới, cho phép EOA tạm thời có chức năng của hợp đồng thông minh trong một giao dịch duy nhất, từ đó hỗ trợ các giao dịch hàng loạt, giao dịch không tốn gas, quản lý quyền tùy chỉnh, v.v. trong doanh nghiệp mà không cần phải giới thiệu một opCode EVM mới (ảnh hưởng đến khả năng tương thích về phía trước).

Nó cho phép người dùng tận dụng hầu hết các khả năng của AA mà không cần triển khai hợp đồng thông minh và thậm chí có thể cung cấp cho bên thứ ba khả năng thực hiện giao dịch thay mặt người dùng. Nó không yêu cầu người dùng cung cấp khóa riêng tư, chỉ có thông tin ủy quyền chữ ký.

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

Anh ta xác định loại giao dịch mới 0x 04, có TransactionPayload là kết quả tuần tự hóa được mã hóa RLP của nội dung sau

Từ 4337 đến 7702: Giải thích sâu sắc về quá khứ và tương lai của bản tóm tắt tài khoản Ethereum

Điều quan trọng là đối tượng Author_list được thêm vào để lưu trữ mã mà người ký muốn thực thi trong EOA của mình. Khi người dùng ký giao dịch, anh ta cũng ký mã hợp đồng để thực thi. chỉ ra rằng nhiều thông tin thao tác có thể được lưu trữ theo đợt, thực hiện các thao tác hàng loạt.

Từ 4337 đến 7702: Giải thích sâu sắc về quá khứ và tương lai của bản tóm tắt tài khoản Ethereum

4.3 Vòng đời giao dịch

4.3.1 Giai đoạn xác minh

Khi bắt đầu thực hiện một giao dịch, đối với mỗi bộ [chain_id, address, nonce, y_parity, r, s] của ủy quyền_list:

  1. Sử dụng ecrecover để khôi phục địa chỉ người ký từ chữ ký r và s (lưu ý đây là cơ chế của chính Ethereum nên EIP này không thay đổi thuật toán chữ ký). Authority = ecrecover(keccak(MAGIC || rlp([chain_id, address, nonce])), y_parity, r, s] (Tương tự như cách giải mã chữ ký trước đó để lấy địa chỉ from, những gì thu được ở đây là chữ ký cục bộ địa chỉ cho danh sách này)

  2. Xác minh ID chuỗi (phát lại chuỗi chống phân nhánh).

  3. Xác minh xem mã của người ký thẩm quyền còn trống hay đã được ủy quyền (xác minh xem giao dịch có phải là giao dịch 7702 hợp lệ hay không và cơ chế ủy quyền sẽ được sử dụng để thực hiện giao dịch sau này).

  4. Xác minh nonce của người ký ủy quyền (để ngăn chặn việc phát lại chữ ký của người có thẩm quyền).

  5. Đặt mã của người ký ủy quyền thành địa chỉ 0x ef 0100 || (được sử dụng để bỏ qua chính sách chống va chạm EIP 3607)

  6. Tăng số nonce của người ký có thẩm quyền (để ngăn chặn việc phát lại một phần chữ ký).

  7. Thêm tài khoản người ký có thẩm quyền vào danh sách địa chỉ đã truy cập (chuyển địa chỉ nóng để giảm phí gas cho việc lưu trữ truy vấn)

4.3.2 Giai đoạn vận hành thực hiện

Mã hợp đồng và hướng dẫn vận hành sẽ được thực hiện ở đâu?

Phiên bản mới chỉ thay đổi hành vi liên quan đến việc triển khai mã.

Thay vì đặt mã tài khoản thành mã_hợp đồng, nó lấy địa chỉ mã từ danh sách ủy quyền và đặt mã đó làm mã tài khoản.

Vì vậy, khi mã ủy quyền cần được thực thi, mã sẽ được tải từ địa chỉ được chỉ định trong trường địa chỉ của Author_list và được thực thi trong ngữ cảnh tài khoản của người ký.

Điều này có nghĩa là mã hợp đồng của người dùng thực sự được lưu trữ tại một địa chỉ cụ thể trên chuỗi , thay vì được đưa trực tiếp vào giao dịch.

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

4.4 Giá trị của EIP-7702 là bao nhiêu?

Nó sẽ thay đổi toàn bộ liên kết của ví Web3 và trải nghiệm người dùng cũng sẽ thay đổi đáng kể, bởi vì các giao dịch thông thường do EOA khởi xướng cũng có thể thực hiện nhiều logic tương tự như hợp đồng, chẳng hạn như chuyển hàng loạt. Kịch bản CeFi sẽ ảnh hưởng đến việc nhận dạng giao dịch và thu phí rút tiền. Do sự xuất hiện của nó, nó đã phá vỡ nhiều khuôn mẫu trước đây, chẳng hạn như:

  1. Phá vỡ quy luật bất biến rằng số dư tài khoản chỉ có thể bị giảm bớt bởi các giao dịch bắt nguồn từ tài khoản đó.

  2. Phá vỡ bất biến mà số nonce EOA tăng thêm 1 sau khi bắt đầu thực hiện giao dịch (có thể tăng nhiều giao dịch cùng một lúc).

  3. Logic bảo vệ của việc so sánh giữa tx.origin và msg.sender bị hỏng và nhiều hợp đồng trong quá khứ có nguy cơ gặp rủi ro.

  4. Nó phá vỡ hiện trạng mà bản thân EOA không thể phát hành các sự kiện. Có thể cần phải chú ý đến việc xác định và giám sát một số sự kiện trên chuỗi.

  5. Nó phá vỡ hiện trạng mà các địa chỉ EOA phải thành công trong việc chấp nhận ERC 20, 721, 1155 và các nội dung khác (có thể không thành công do cơ chế gọi lại)

4.5 So sánh giữa EIP-7702 và EIP-4337

1. Ưu điểm của EIP-7702

  • Gas thấp hơn do không cần phải đi qua mô-đun điểm vào, giảm các hoạt động trên chuỗi.

  • Chi phí di chuyển người dùng thấp hơn và không cần phải triển khai trước các hợp đồng trên chuỗi làm chủ đề.

  • So với Eip 4337, cũng sẽ có việc thực thi ủy quyền mã và cũng sẽ có hai phương thức:

Phái đoàn đầy đủ

  • Ủy quyền đầy đủ đề cập đến việc ủy quyền tất cả các quyền cho một hoạt động cho một địa chỉ cụ thể. Ví dụ: người dùng có thể ủy quyền quyền quản lý tất cả mã thông báo ERC-20 cho một địa chỉ hợp đồng thông minh, cho phép hợp đồng thông minh này thực hiện tất cả các hoạt động liên quan thay mặt cho người dùng.

Phái đoàn được bảo vệ

  • Phái đoàn được bảo vệ đề cập đến việc bổ sung một số hạn chế và biện pháp bảo vệ trong quá trình ủy quyền để đảm bảo sự an toàn và khả năng kiểm soát của hoạt động ủy quyền.

  • Ví dụ: người dùng có thể ủy quyền quản lý chỉ một phần mã thông báo ERC-20 của họ cho hợp đồng thông minh hoặc đặt một số hạn chế (chẳng hạn như chi tiêu tối đa hàng ngày là 1% trên tổng số dư của họ).

2. Nhược điểm của EIP-7702

Thiếu sót cốt lõi của nó là bản nâng cấp soft fork, đòi hỏi sự đồng thuận của mọi người để quảng bá nó và những thay đổi là rất lớn, sẽ có tác động rộng rãi đến hệ sinh thái của chuỗi . Dựa trên đánh giá ban đầu của Vua thứ mười bốn, đó. là những thách thức sau, nhưng thách thức cũng là cơ hội thị trường:

  1. Mức độ tự do cực kỳ cao và rất khó bị kiểm tra. Người dùng sẽ cần những chiếc ví đáng tin cậy hơn để cung cấp sự bảo vệ an ninh.

  2. Cấu trúc ban đầu đã thay đổi quá nhiều. Mặc dù được phân biệt bằng các loại giao dịch khác nhau nhưng nhiều cơ sở hạ tầng, đặc biệt là các hợp đồng bất biến trên chuỗi, không thể điều chỉnh trực tiếp.

  3. Khả năng hợp đồng được cung cấp cho các địa chỉ EOA, nhưng không thể giữ lại dung lượng lưu trữ tương ứng.

  4. Chi phí của một giao dịch riêng lẻ cao hơn một chút vì phần Calldata sẽ tăng lên rất nhiều. Tổng chi phí ước tính của cuộc gọi sẽ là 16 (gas) * 15 (byte) = 240 (gas) chi phí dữ liệu cuộc gọi, cộng với chi phí EIP-. 3860 2 * 15 = 30, cộng với chi phí thời gian chạy xấp xỉ là 150. Vì thế chỉ cần chuẩn bị tài khoản dù không làm gì cũng sẽ tăng gas thêm 500.

  5. Nếu người nhận ký mã mà không nhận được chức năng, người gửi có thể gặp phải DoS khi cố gắng gửi tài sản. Vấn đề thực sự là EOA A đã ký một cái gì đó mà lẽ ra nó không nên ký - một tệp có thể phát lại với thiết lập triển khai sai (không nhận()).

  6. Logic rút tiền trên chuỗi có thể không nhất quán. Ví dụ: khi chuyển mã thông báo ERC-20, nếu tài khoản người nhận có mã, hợp đồng mã thông báo sẽ gọi onERC 20 Đã nhận cho tài khoản người nhận. Nếu onERC 20 Đã nhận hoàn nguyên hoặc trả về giá trị không chính xác, quá trình chuyển mã thông báo sẽ hoàn nguyên.

  7. Ngoài ra, nếu EOA có thể phát ra các sự kiện thì liệu có vấn đề gì không? Một số cơ sở hạ tầng có thể cần được chú ý.

Đây chỉ là một số thiếu sót được Shishijun tóm tắt dựa trên nội dung đề xuất EIP 7702 hiện tại và các cuộc thảo luận chính thức tương ứng trên diễn đàn. Cuối cùng, nó cần được phân tích đầy đủ dựa trên mã triển khai cuối cùng. Tham khảo như sau:

https://eips.ethereum.org/EIPS/eip-7702

https://ethereum-magicians.org/t/eip-set-eoa-account-code-for-one-transaction/19923

https://github.com/ethereum/EIPs/pull/8527

5. Tóm tắt toàn văn

Bài viết này có vẻ dài nhưng thực tế nội dung văn bản chỉ hơn 6k từ. Nhiều cách diễn giải EIP trước đây liên quan đến nó có thể được mở rộng thông qua các liên kết trong bài viết nên tôi sẽ không quay lại.

Hiện tại, việc trừu tượng hóa tài khoản thực sự chỉ có thể được đặt trong mô-đun thứ sáu, tức là khắc phục mọi thứ, nghĩa là cuối cùng nó cũng đã được triển khai. Hiện tại, tiến độ của EIP 7702 đã được đẩy nhanh hơn rất nhiều, nó sẽ mang lại nhiều thách thức hơn cho bảo mật hệ thống. Đúng như dự đoán, Cuối cùng anh ta sẽ nhận ra điều đó, những sự kiện đột phá như sáp nhập Ethereum và sửa đổi thuật toán đồng thuận có thể xảy ra, vậy còn các loại giao dịch mới thì sao?

Nhưng lần này có quá nhiều sự lật đổ, phá vỡ các quy tắc ẩn không thể có trên nhiều chuỗi và cũng phá vỡ logic ứng dụng của hầu hết các Dapp. Tuy nhiên, nó đã chiếm giữ vững chắc điểm cốt lõi, đó là chi phí cho người dùng thấp hơn. ! So sánh điều này với chi phí giao dịch gần gấp đôi của EIP 4337.

Bản thân người dùng vẫn có địa chỉ EOA và chỉ điều khiển và sử dụng logic CA khi cần thiết nên chi phí lưu giữ thấp. Không cần chuyển đổi danh tính CA trên chuỗi trước khi thực hiện các thao tác, điều đó có nghĩa là người dùng không cần phải đăng ký.

Người dùng có thể dễ dàng sử dụng EOA để thực hiện nhiều giao dịch song song, chẳng hạn như cho phép khấu lưu và thực hiện khấu lưu trong một, giúp giảm chi phí giao dịch cho người dùng, đặc biệt là những giao dịch yêu cầu các bên dự án quản lý cấp doanh nghiệp trên chuỗi, chẳng hạn như sàn giao dịch. , đã thực hiện những tối ưu hóa mang tính đột phá. Khi việc tổng hợp hàng loạt được thực hiện trong hệ sinh thái ban đầu, chi phí trao đổi cơ bản có thể giảm hơn một nửa ngay lập tức, điều này cuối cùng có thể mang lại lợi ích cho người dùng.

Vì vậy, mặc dù đã thay đổi nhiều nhưng về mặt chi phí, nó đáng để nghiên cứu và thích ứng với tất cả các Dapp, vì lần này, người dùng phải đứng về phía EIP 7702.

Bài viết gốc, tác giả:十四君。Tuyển dụng: Nhân viên kinh doanh phần mềm theo dự án report@odaily.email;Vi phạm quy định của pháp luật.

Odaily nhắc nhở, mời đông đảo độc giả xây dựng quan niệm đúng đắn về tiền tệ và khái niệm đầu tư, nhìn nhận hợp lý về blockchain, nâng cao nhận thức về rủi ro; Đối với manh mối phạm tội phát hiện, có thể tích cực tố cáo phản ánh với cơ quan hữu quan.

Đọc nhiều nhất
Lựa chọn của người biên tập