Giao thức Ethereum có thể trong tương lai ( sáu ): thịnh vượng
Trong thiết kế giao thức Ethereum, có nhiều "chi tiết" rất quan trọng đối với sự thành công của Ethereum. Thực tế, khoảng một nửa nội dung liên quan đến các loại cải tiến EVM khác nhau, phần còn lại được cấu thành từ nhiều chủ đề ngách khác nhau, đó chính là ý nghĩa của "phức tạp".
Phồn vinh: Mục tiêu chính
Biến EVM thành "trạng thái cuối cùng" hiệu suất cao và ổn định
Đưa trừu tượng hóa tài khoản vào giao thức, cho phép tất cả người dùng tận hưởng tài khoản an toàn và tiện lợi hơn
Tối ưu hóa chi phí giao dịch, nâng cao khả năng mở rộng đồng thời giảm rủi ro
Khám phá mật mã tiên tiến, giúp Ethereum cải thiện đáng kể trong dài hạn
Cải tiến EVM
Vấn đề gì đã được giải quyết?
Hiện tại EVM khó khăn trong việc phân tích tĩnh, điều này khiến việc tạo ra các triển khai hiệu quả, xác minh chính thức mã và thực hiện mở rộng thêm trở nên khó khăn. Ngoài ra, hiệu suất của EVM thấp, khó có thể thực hiện nhiều hình thức mật mã cao cấp, trừ khi được hỗ trợ một cách rõ ràng thông qua các biên dịch trước.
Nó là gì, hoạt động như thế nào?
Bước đầu tiên trong lộ trình cải tiến EVM hiện tại là định dạng đối tượng EVM (EOF), dự kiến sẽ được đưa vào trong hard fork tiếp theo. EOF là một loạt EIP, xác định một phiên bản mã EVM mới, với nhiều đặc điểm độc đáo, đáng chú ý nhất là:
Mã ( có thể thực thi, nhưng không thể đọc ) từ EVM và dữ liệu ( có thể đọc, nhưng không thể thực thi sự tách biệt giữa )
Cấm chuyển đổi động, chỉ cho phép chuyển đổi tĩnh
Mã EVM không thể quan sát thêm thông tin liên quan đến nhiên liệu
Đã thêm một cơ chế ví dụ rõ ràng mới
Hợp đồng cũ sẽ tiếp tục tồn tại và có thể được tạo ra, mặc dù cuối cùng có thể sẽ dần dần bị loại bỏ hợp đồng cũ ( và thậm chí có thể bị buộc chuyển đổi sang mã EOF ). Hợp đồng mới sẽ được hưởng lợi từ sự cải thiện hiệu quả mà EOF mang lại - trước tiên là thông qua mã byte được thu nhỏ một chút nhờ vào tính năng tiểu quy trình, sau đó là các chức năng mới hoặc giảm chi phí gas đặc biệt của EOF.
Sau khi giới thiệu EOF, việc nâng cấp thêm trở nên dễ dàng hơn, hiện tại phát triển hoàn thiện nhất là mở rộng toán học EVM (EVM-MAX). EVM-MAX tạo ra một tập hợp các thao tác mới đặc biệt cho phép thực hiện phép toán modulo, và đặt chúng vào một không gian bộ nhớ mới không thể truy cập bằng các mã thao tác khác, điều này cho phép sử dụng các tối ưu hóa như phép nhân Montgomery.
Một ý tưởng tương đối mới là kết hợp EVM-MAX với đặc điểm SIMD (Single Instruction Multiple Data) (, SIMD như một khái niệm trong Ethereum đã tồn tại từ lâu, được đề xuất lần đầu bởi Greg Colvin trong EIP-616. SIMD có thể được sử dụng để tăng tốc nhiều hình thức mật mã, bao gồm hàm băm, STARKs 32 bit và mật mã dựa trên lưới, sự kết hợp giữa EVM-MAX và SIMD khiến cho hai loại mở rộng hướng đến hiệu suất này trở thành một cặp tự nhiên.
Một thiết kế tổng hợp EIP sẽ bắt đầu từ EIP-6690, sau đó:
Cho phép )i( bất kỳ số lẻ nào hoặc )ii( bất kỳ số mũ của 2 nào tối đa là 2768 làm mô-đun
Đối với mỗi mã lệnh EVM-MAX ) phép cộng, phép trừ, phép nhân (, thêm một phiên bản, phiên bản này không còn sử dụng 3 hằng số x, y, z, mà sử dụng 7 hằng số: x_start, x_skip, y_start, y_skip, z_start, z_skip, count. Trong mã Python, các mã lệnh này có tác dụng tương tự như:
for i in range)count(:
mem[z_start + z_skip * count] = op)
mem[x_start + x_skip * count],
mem[y_start + y_skip * count]
(
Trong thực tế, điều này sẽ được xử lý theo cách song song.
Có thể thêm XOR, AND, OR, NOT và SHIFT) bao gồm vòng lặp và không vòng lặp(, ít nhất cho số mũ của 2. Đồng thời thêm ISZERO) sẽ đẩy đầu ra vào ngăn xếp chính EVM(, điều này sẽ đủ mạnh để thực hiện mật mã đường cong elliptic, mật mã miền nhỏ) như Poseidon, Circle STARKs(, hàm băm truyền thống) như SHA256, KECCAK, BLAKE( và mật mã dựa trên lưới. Các nâng cấp EVM khác cũng có thể được thực hiện, nhưng cho đến nay vẫn chưa được quan tâm nhiều.
![Vitalik về tương lai có thể của Ethereum (sáu): The Splurge])https://img-cdn.gateio.im/webp-social/moments-c0ed34ee4adbb5c0bb752dcd01c1f7a7.webp(
)# Công việc còn lại và sự cân nhắc
Hiện tại, EOF dự định sẽ được đưa vào trong lần phân tách cứng tiếp theo. Mặc dù luôn có khả năng loại bỏ nó vào phút chót - trong các lần phân tách cứng trước đây đã có chức năng bị loại bỏ tạm thời, nhưng việc làm như vậy sẽ gặp phải rất nhiều thách thức. Việc loại bỏ EOF có nghĩa là bất kỳ nâng cấp nào đối với EVM trong tương lai sẽ phải diễn ra mà không có EOF, mặc dù có thể làm được, nhưng có thể sẽ khó khăn hơn.
Sự cân nhắc chính của EVM là độ phức tạp của L1 và độ phức tạp của cơ sở hạ tầng, EOF là một lượng lớn mã cần được thêm vào việc thực hiện EVM, kiểm tra mã tĩnh cũng tương đối phức tạp. Tuy nhiên, đổi lại, chúng ta có thể đơn giản hóa ngôn ngữ cấp cao, đơn giản hóa việc thực hiện EVM và những lợi ích khác. Có thể nói, lộ trình ưu tiên cho việc cải tiến liên tục Ethereum L1 nên bao gồm và xây dựng trên EOF.
Công việc quan trọng cần thực hiện là triển khai các chức năng tương tự như EVM-MAX cộng với SIMD và tiến hành kiểm tra hiệu suất tiêu thụ gas của các thao tác mã hóa khác nhau.
Làm thế nào để tương tác với các phần khác của lộ trình?
L1 điều chỉnh EVM của nó để L2 cũng có thể dễ dàng thực hiện các điều chỉnh tương ứng, nếu hai bên không thực hiện điều chỉnh đồng bộ, có thể gây ra sự không tương thích, mang lại ảnh hưởng tiêu cực. Ngoài ra, EVM-MAX và SIMD có thể giảm chi phí gas của nhiều hệ thống chứng minh, từ đó làm cho L2 hiệu quả hơn. Nó cũng làm cho việc thay thế nhiều biên dịch trước bằng mã EVM có thể thực hiện cùng một nhiệm vụ trở nên dễ dàng hơn, có thể không ảnh hưởng nhiều đến hiệu suất.
![Vitalik về tương lai có thể của Ethereum (sáu): The Splurge]###https://img-cdn.gateio.im/webp-social/moments-e607936b4195e92945aa6ebd5f969276.webp(
) Trừu tượng hóa tài khoản
Đã giải quyết vấn đề gì?
Hiện tại, giao dịch chỉ có thể được xác thực bằng một cách: chữ ký ECDSA. Ban đầu, trừu tượng hóa tài khoản nhằm vượt qua điều này, cho phép logic xác thực của tài khoản là mã EVM tùy ý. Điều này có thể kích hoạt một loạt các ứng dụng:
Chuyển sang mật mã kháng lượng tử
Thay thế khóa cũ ### được coi là thực hành an toàn được khuyến nghị (
Ví đa chữ ký và ví khôi phục xã hội
Sử dụng một khóa để thực hiện các thao tác có giá trị thấp, sử dụng một khóa khác ) hoặc một nhóm khóa ( để thực hiện các thao tác có giá trị cao.
Cho phép giao thức bảo mật hoạt động mà không cần tiếp sức, giảm đáng kể độ phức tạp của nó và loại bỏ một điểm phụ thuộc trung ương quan trọng.
Kể từ khi trừu tượng hóa tài khoản được đề xuất vào năm 2015, mục tiêu của nó cũng đã mở rộng để bao gồm nhiều "mục tiêu tiện lợi", chẳng hạn như một tài khoản không có ETH nhưng có một số ERC20 có thể sử dụng ERC20 để thanh toán gas.
)# Nó là gì, hoạt động như thế nào?
Cốt lõi của trừu tượng tài khoản là đơn giản: cho phép hợp đồng thông minh khởi xướng giao dịch, không chỉ đơn thuần là EOA. Toàn bộ sự phức tạp đến từ việc thực hiện điều này theo cách thân thiện với việc duy trì mạng lưới phi tập trung và ngăn chặn các cuộc tấn công từ chối dịch vụ.
Một thách thức chính điển hình là vấn đề mất mát đa dạng:
Nếu có 1000 hàm xác thực tài khoản đều phụ thuộc vào một giá trị duy nhất S, và giá trị hiện tại S khiến cho các giao dịch trong bộ nhớ đều hợp lệ, thì một giao dịch đơn lẻ đảo ngược giá trị S có thể làm cho tất cả các giao dịch khác trong bộ nhớ trở nên không hợp lệ. Điều này cho phép kẻ tấn công gửi giao dịch rác đến bộ nhớ với chi phí cực thấp, từ đó làm tắc nghẽn tài nguyên của các nút mạng.
Sau nhiều năm nỗ lực, nhằm mở rộng chức năng trong khi hạn chế rủi ro từ chối dịch vụ ###DoS(, cuối cùng đã đưa ra giải pháp để đạt được "trừu tượng tài khoản lý tưởng": ERC-4337.
Cách hoạt động của ERC-4337 là chia quy trình xử lý các thao tác của người dùng thành hai giai đoạn: xác minh và thực thi. Tất cả các xác minh sẽ được xử lý trước, và tất cả các thực thi sẽ được xử lý sau. Trong nhóm bộ nhớ, chỉ khi giai đoạn xác minh của thao tác người dùng chỉ liên quan đến tài khoản của chính họ và không đọc các biến môi trường mới được chấp nhận. Điều này giúp ngăn chặn các cuộc tấn công từ chối dịch vụ. Ngoài ra, cũng thực hiện các giới hạn gas nghiêm ngặt cho bước xác minh.
ERC-4337 được thiết kế như một tiêu chuẩn giao thức bổ sung )ERC(, vì vào thời điểm đó, các nhà phát triển khách hàng Ethereum tập trung vào việc hợp nhất )Merge(, không có thêm năng lượng để xử lý các chức năng khác. Đó là lý do tại sao ERC-4337 sử dụng một đối tượng được gọi là thao tác người dùng, thay vì giao dịch thông thường. Tuy nhiên, gần đây chúng tôi nhận ra cần phải viết ít nhất một phần nội dung đó vào giao thức.
Hai lý do chính như sau:
EntryPoint là sự kém hiệu quả vốn có của hợp đồng: mỗi gói có chi phí cố định khoảng 100.000 gas, cùng với hàng nghìn gas bổ sung cho mỗi thao tác của người dùng.
Đảm bảo tính cần thiết của thuộc tính Ethereum: như danh sách đã tạo ra chứa đảm bảo cần được chuyển đến người dùng trừu tượng tài khoản.
Ngoài ra, ERC-4337 còn mở rộng hai chức năng:
Đại lý thanh toán ) Paymasters (: cho phép một tài khoản đại diện cho tài khoản khác thanh toán phí, điều này vi phạm quy tắc chỉ có thể truy cập vào tài khoản của người gửi trong giai đoạn xác thực, do đó đã đưa ra các biện pháp xử lý đặc biệt để đảm bảo tính an toàn của cơ chế đại lý thanh toán.
Aggregators): hỗ trợ chức năng tổng hợp chữ ký, như tổng hợp BLS hoặc tổng hợp dựa trên SNARK. Điều này là cần thiết để đạt được hiệu quả dữ liệu cao nhất trên Rollup.
(# Công việc còn lại và sự cân nhắc
Hiện tại, điều chính cần giải quyết là làm thế nào để đưa hoàn toàn trừu tượng tài khoản vào giao thức, gần đây, giao thức trừu tượng tài khoản được ưa chuộng là EIP-7701, đề xuất này thực hiện trừu tượng tài khoản trên EOF. Một tài khoản có thể có một phần mã riêng biệt để xác minh, nếu tài khoản thiết lập phần mã đó, thì phần mã đó sẽ được thực thi trong bước xác minh của giao dịch từ tài khoản đó.
Điều hấp dẫn của phương pháp này là nó cho thấy rõ ràng hai góc độ tương đương của trừu tượng tài khoản địa phương:
Đưa EIP-4337 làm một phần của giao thức
Một loại EOA mới, trong đó thuật toán ký là thực thi mã EVM
Nếu chúng ta bắt đầu từ việc đặt ra giới hạn nghiêm ngặt về độ phức tạp của mã có thể thực thi trong thời gian xác minh - không cho phép truy cập vào trạng thái bên ngoài, thậm chí giới hạn gas được thiết lập ban đầu cũng thấp đến mức không có hiệu quả đối với các ứng dụng chống lượng tử hoặc bảo vệ quyền riêng tư - thì tính an toàn của phương pháp này là rất rõ ràng: chỉ cần thay thế xác minh ECDSA bằng việc thực thi mã EVM cần thời gian tương tự.
Tuy nhiên, theo thời gian, chúng ta cần nới lỏng những ranh giới này, vì việc cho phép các ứng dụng bảo vệ quyền riêng tư hoạt động mà không cần trung gian, cũng như khả năng kháng lượng tử, đều rất quan trọng. Để làm được điều này, chúng ta cần tìm ra những cách linh hoạt hơn để giải quyết rủi ro từ chối dịch vụ )DoS### mà không yêu cầu các bước xác minh phải cực kỳ đơn giản.
Sự cân nhắc chính dường như là "viết nhanh một giải pháp mà ít người hài lòng" so với "chờ đợi lâu hơn, có thể đạt được giải pháp lý tưởng hơn", phương pháp lý tưởng có thể là một phương pháp kết hợp. Một phương pháp kết hợp là viết nhanh một số trường hợp sử dụng và dành nhiều thời gian hơn để khám phá các trường hợp sử dụng khác. Một phương pháp khác là triển khai phiên bản trừu tượng tài khoản tham vọng hơn trên L2 trước tiên. Tuy nhiên, thách thức mà điều này phải đối mặt là đội ngũ L2 cần phải có sự tự tin vào công việc của đề xuất để sẵn sàng thực hiện, đặc biệt là để đảm bảo rằng L1 và/hoặc các L2 khác trong tương lai có thể áp dụng các giải pháp tương thích.
Một ứng dụng khác mà chúng ta cần xem xét rõ ràng là tài khoản lưu trữ khóa, những tài khoản này lưu trữ trạng thái liên quan đến tài khoản trên L1 hoặc L2 chuyên dụng, nhưng có thể được sử dụng trên L1 và bất kỳ L2 tương thích nào. Để thực hiện điều này một cách hiệu quả có thể yêu cầu L2 hỗ trợ các mã thao tác như L1SLOAD hoặc REMOTESTATICCALL, nhưng điều này cũng cần sự hỗ trợ của việc trừu tượng hóa tài khoản trên L2 cho những thao tác này.
(# Nó tương tác như thế nào với các phần khác của lộ trình?
Danh sách bao gồm cần hỗ trợ giao dịch trừu tượng hóa tài khoản, trong thực tế, nhu cầu về danh sách bao gồm và nhu cầu về bộ nhớ phi tập trung thực sự rất giống nhau, mặc dù đối với
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.
12 thích
Phần thưởng
12
5
Chia sẻ
Bình luận
0/400
NeverPresent
· 07-25 21:24
chuyên nghiệp 们天天改 evm Tôi gas什么时候能降啊
Xem bản gốcTrả lời0
GateUser-00be86fc
· 07-23 01:23
Nâng cấp EVM cả ngày chỉ vẽ BTC.
Xem bản gốcTrả lời0
MemeCoinSavant
· 07-23 01:22
dựa trên các cải tiến evm có ý nghĩa thống kê fr fr... tăng giá về tiềm năng meme của eth thật lòng mà nói
Xem bản gốcTrả lời0
Deconstructionist
· 07-23 01:16
Những người nói về trạng thái kết thúc đã sớm ngừng hoạt động.
Lộ trình nâng cấp giao thức Ethereum: Cải tiến EVM, trừu tượng hóa tài khoản và tối ưu hóa 1559
Giao thức Ethereum có thể trong tương lai ( sáu ): thịnh vượng
Trong thiết kế giao thức Ethereum, có nhiều "chi tiết" rất quan trọng đối với sự thành công của Ethereum. Thực tế, khoảng một nửa nội dung liên quan đến các loại cải tiến EVM khác nhau, phần còn lại được cấu thành từ nhiều chủ đề ngách khác nhau, đó chính là ý nghĩa của "phức tạp".
Phồn vinh: Mục tiêu chính
Cải tiến EVM
Vấn đề gì đã được giải quyết?
Hiện tại EVM khó khăn trong việc phân tích tĩnh, điều này khiến việc tạo ra các triển khai hiệu quả, xác minh chính thức mã và thực hiện mở rộng thêm trở nên khó khăn. Ngoài ra, hiệu suất của EVM thấp, khó có thể thực hiện nhiều hình thức mật mã cao cấp, trừ khi được hỗ trợ một cách rõ ràng thông qua các biên dịch trước.
Nó là gì, hoạt động như thế nào?
Bước đầu tiên trong lộ trình cải tiến EVM hiện tại là định dạng đối tượng EVM (EOF), dự kiến sẽ được đưa vào trong hard fork tiếp theo. EOF là một loạt EIP, xác định một phiên bản mã EVM mới, với nhiều đặc điểm độc đáo, đáng chú ý nhất là:
Hợp đồng cũ sẽ tiếp tục tồn tại và có thể được tạo ra, mặc dù cuối cùng có thể sẽ dần dần bị loại bỏ hợp đồng cũ ( và thậm chí có thể bị buộc chuyển đổi sang mã EOF ). Hợp đồng mới sẽ được hưởng lợi từ sự cải thiện hiệu quả mà EOF mang lại - trước tiên là thông qua mã byte được thu nhỏ một chút nhờ vào tính năng tiểu quy trình, sau đó là các chức năng mới hoặc giảm chi phí gas đặc biệt của EOF.
Sau khi giới thiệu EOF, việc nâng cấp thêm trở nên dễ dàng hơn, hiện tại phát triển hoàn thiện nhất là mở rộng toán học EVM (EVM-MAX). EVM-MAX tạo ra một tập hợp các thao tác mới đặc biệt cho phép thực hiện phép toán modulo, và đặt chúng vào một không gian bộ nhớ mới không thể truy cập bằng các mã thao tác khác, điều này cho phép sử dụng các tối ưu hóa như phép nhân Montgomery.
Một ý tưởng tương đối mới là kết hợp EVM-MAX với đặc điểm SIMD (Single Instruction Multiple Data) (, SIMD như một khái niệm trong Ethereum đã tồn tại từ lâu, được đề xuất lần đầu bởi Greg Colvin trong EIP-616. SIMD có thể được sử dụng để tăng tốc nhiều hình thức mật mã, bao gồm hàm băm, STARKs 32 bit và mật mã dựa trên lưới, sự kết hợp giữa EVM-MAX và SIMD khiến cho hai loại mở rộng hướng đến hiệu suất này trở thành một cặp tự nhiên.
Một thiết kế tổng hợp EIP sẽ bắt đầu từ EIP-6690, sau đó:
for i in range)count(: mem[z_start + z_skip * count] = op) mem[x_start + x_skip * count], mem[y_start + y_skip * count] (
Trong thực tế, điều này sẽ được xử lý theo cách song song.
![Vitalik về tương lai có thể của Ethereum (sáu): The Splurge])https://img-cdn.gateio.im/webp-social/moments-c0ed34ee4adbb5c0bb752dcd01c1f7a7.webp(
)# Công việc còn lại và sự cân nhắc
Hiện tại, EOF dự định sẽ được đưa vào trong lần phân tách cứng tiếp theo. Mặc dù luôn có khả năng loại bỏ nó vào phút chót - trong các lần phân tách cứng trước đây đã có chức năng bị loại bỏ tạm thời, nhưng việc làm như vậy sẽ gặp phải rất nhiều thách thức. Việc loại bỏ EOF có nghĩa là bất kỳ nâng cấp nào đối với EVM trong tương lai sẽ phải diễn ra mà không có EOF, mặc dù có thể làm được, nhưng có thể sẽ khó khăn hơn.
Sự cân nhắc chính của EVM là độ phức tạp của L1 và độ phức tạp của cơ sở hạ tầng, EOF là một lượng lớn mã cần được thêm vào việc thực hiện EVM, kiểm tra mã tĩnh cũng tương đối phức tạp. Tuy nhiên, đổi lại, chúng ta có thể đơn giản hóa ngôn ngữ cấp cao, đơn giản hóa việc thực hiện EVM và những lợi ích khác. Có thể nói, lộ trình ưu tiên cho việc cải tiến liên tục Ethereum L1 nên bao gồm và xây dựng trên EOF.
Công việc quan trọng cần thực hiện là triển khai các chức năng tương tự như EVM-MAX cộng với SIMD và tiến hành kiểm tra hiệu suất tiêu thụ gas của các thao tác mã hóa khác nhau.
Làm thế nào để tương tác với các phần khác của lộ trình?
L1 điều chỉnh EVM của nó để L2 cũng có thể dễ dàng thực hiện các điều chỉnh tương ứng, nếu hai bên không thực hiện điều chỉnh đồng bộ, có thể gây ra sự không tương thích, mang lại ảnh hưởng tiêu cực. Ngoài ra, EVM-MAX và SIMD có thể giảm chi phí gas của nhiều hệ thống chứng minh, từ đó làm cho L2 hiệu quả hơn. Nó cũng làm cho việc thay thế nhiều biên dịch trước bằng mã EVM có thể thực hiện cùng một nhiệm vụ trở nên dễ dàng hơn, có thể không ảnh hưởng nhiều đến hiệu suất.
![Vitalik về tương lai có thể của Ethereum (sáu): The Splurge]###https://img-cdn.gateio.im/webp-social/moments-e607936b4195e92945aa6ebd5f969276.webp(
) Trừu tượng hóa tài khoản
Đã giải quyết vấn đề gì?
Hiện tại, giao dịch chỉ có thể được xác thực bằng một cách: chữ ký ECDSA. Ban đầu, trừu tượng hóa tài khoản nhằm vượt qua điều này, cho phép logic xác thực của tài khoản là mã EVM tùy ý. Điều này có thể kích hoạt một loạt các ứng dụng:
Cho phép giao thức bảo mật hoạt động mà không cần tiếp sức, giảm đáng kể độ phức tạp của nó và loại bỏ một điểm phụ thuộc trung ương quan trọng.
Kể từ khi trừu tượng hóa tài khoản được đề xuất vào năm 2015, mục tiêu của nó cũng đã mở rộng để bao gồm nhiều "mục tiêu tiện lợi", chẳng hạn như một tài khoản không có ETH nhưng có một số ERC20 có thể sử dụng ERC20 để thanh toán gas.
)# Nó là gì, hoạt động như thế nào?
Cốt lõi của trừu tượng tài khoản là đơn giản: cho phép hợp đồng thông minh khởi xướng giao dịch, không chỉ đơn thuần là EOA. Toàn bộ sự phức tạp đến từ việc thực hiện điều này theo cách thân thiện với việc duy trì mạng lưới phi tập trung và ngăn chặn các cuộc tấn công từ chối dịch vụ.
Một thách thức chính điển hình là vấn đề mất mát đa dạng:
Nếu có 1000 hàm xác thực tài khoản đều phụ thuộc vào một giá trị duy nhất S, và giá trị hiện tại S khiến cho các giao dịch trong bộ nhớ đều hợp lệ, thì một giao dịch đơn lẻ đảo ngược giá trị S có thể làm cho tất cả các giao dịch khác trong bộ nhớ trở nên không hợp lệ. Điều này cho phép kẻ tấn công gửi giao dịch rác đến bộ nhớ với chi phí cực thấp, từ đó làm tắc nghẽn tài nguyên của các nút mạng.
Sau nhiều năm nỗ lực, nhằm mở rộng chức năng trong khi hạn chế rủi ro từ chối dịch vụ ###DoS(, cuối cùng đã đưa ra giải pháp để đạt được "trừu tượng tài khoản lý tưởng": ERC-4337.
Cách hoạt động của ERC-4337 là chia quy trình xử lý các thao tác của người dùng thành hai giai đoạn: xác minh và thực thi. Tất cả các xác minh sẽ được xử lý trước, và tất cả các thực thi sẽ được xử lý sau. Trong nhóm bộ nhớ, chỉ khi giai đoạn xác minh của thao tác người dùng chỉ liên quan đến tài khoản của chính họ và không đọc các biến môi trường mới được chấp nhận. Điều này giúp ngăn chặn các cuộc tấn công từ chối dịch vụ. Ngoài ra, cũng thực hiện các giới hạn gas nghiêm ngặt cho bước xác minh.
ERC-4337 được thiết kế như một tiêu chuẩn giao thức bổ sung )ERC(, vì vào thời điểm đó, các nhà phát triển khách hàng Ethereum tập trung vào việc hợp nhất )Merge(, không có thêm năng lượng để xử lý các chức năng khác. Đó là lý do tại sao ERC-4337 sử dụng một đối tượng được gọi là thao tác người dùng, thay vì giao dịch thông thường. Tuy nhiên, gần đây chúng tôi nhận ra cần phải viết ít nhất một phần nội dung đó vào giao thức.
Hai lý do chính như sau:
Ngoài ra, ERC-4337 còn mở rộng hai chức năng:
(# Công việc còn lại và sự cân nhắc
Hiện tại, điều chính cần giải quyết là làm thế nào để đưa hoàn toàn trừu tượng tài khoản vào giao thức, gần đây, giao thức trừu tượng tài khoản được ưa chuộng là EIP-7701, đề xuất này thực hiện trừu tượng tài khoản trên EOF. Một tài khoản có thể có một phần mã riêng biệt để xác minh, nếu tài khoản thiết lập phần mã đó, thì phần mã đó sẽ được thực thi trong bước xác minh của giao dịch từ tài khoản đó.
Điều hấp dẫn của phương pháp này là nó cho thấy rõ ràng hai góc độ tương đương của trừu tượng tài khoản địa phương:
Nếu chúng ta bắt đầu từ việc đặt ra giới hạn nghiêm ngặt về độ phức tạp của mã có thể thực thi trong thời gian xác minh - không cho phép truy cập vào trạng thái bên ngoài, thậm chí giới hạn gas được thiết lập ban đầu cũng thấp đến mức không có hiệu quả đối với các ứng dụng chống lượng tử hoặc bảo vệ quyền riêng tư - thì tính an toàn của phương pháp này là rất rõ ràng: chỉ cần thay thế xác minh ECDSA bằng việc thực thi mã EVM cần thời gian tương tự.
Tuy nhiên, theo thời gian, chúng ta cần nới lỏng những ranh giới này, vì việc cho phép các ứng dụng bảo vệ quyền riêng tư hoạt động mà không cần trung gian, cũng như khả năng kháng lượng tử, đều rất quan trọng. Để làm được điều này, chúng ta cần tìm ra những cách linh hoạt hơn để giải quyết rủi ro từ chối dịch vụ )DoS### mà không yêu cầu các bước xác minh phải cực kỳ đơn giản.
Sự cân nhắc chính dường như là "viết nhanh một giải pháp mà ít người hài lòng" so với "chờ đợi lâu hơn, có thể đạt được giải pháp lý tưởng hơn", phương pháp lý tưởng có thể là một phương pháp kết hợp. Một phương pháp kết hợp là viết nhanh một số trường hợp sử dụng và dành nhiều thời gian hơn để khám phá các trường hợp sử dụng khác. Một phương pháp khác là triển khai phiên bản trừu tượng tài khoản tham vọng hơn trên L2 trước tiên. Tuy nhiên, thách thức mà điều này phải đối mặt là đội ngũ L2 cần phải có sự tự tin vào công việc của đề xuất để sẵn sàng thực hiện, đặc biệt là để đảm bảo rằng L1 và/hoặc các L2 khác trong tương lai có thể áp dụng các giải pháp tương thích.
Một ứng dụng khác mà chúng ta cần xem xét rõ ràng là tài khoản lưu trữ khóa, những tài khoản này lưu trữ trạng thái liên quan đến tài khoản trên L1 hoặc L2 chuyên dụng, nhưng có thể được sử dụng trên L1 và bất kỳ L2 tương thích nào. Để thực hiện điều này một cách hiệu quả có thể yêu cầu L2 hỗ trợ các mã thao tác như L1SLOAD hoặc REMOTESTATICCALL, nhưng điều này cũng cần sự hỗ trợ của việc trừu tượng hóa tài khoản trên L2 cho những thao tác này.
(# Nó tương tác như thế nào với các phần khác của lộ trình?
Danh sách bao gồm cần hỗ trợ giao dịch trừu tượng hóa tài khoản, trong thực tế, nhu cầu về danh sách bao gồm và nhu cầu về bộ nhớ phi tập trung thực sự rất giống nhau, mặc dù đối với