Lời nói đầu
Ý tưởng này là một sự mở rộng của đề xuất thiết kế FOCIL. Nó được tạo ra đồng thời/độc lập với FOCIL, và bắt đầu như một cách để dẫn và sắp xếp các giao dịch với ý định loại bỏ hoàn toàn quy trình xây dựng khỏi thiết kế giao thức. Sau khi trao đổi với một số người, chúng tôi nhận thấy rằng FOCIL đang tiến triển, và sau khi xem xét, thời gian được đề xuất trong thiết kế đó tốt hơn (yêu cầu 1 khe ít hơn và sử dụng một ủy ban lớn hơn) cho việc lựa chọn giao dịch so với ý tưởng này đề xuất.
Ý tưởng này đã được rút gọn để xây dựng trên FOCIL thay vì là một đối thủ cạnh tranh vì họ đã đạt được cùng một mục tiêu. Một số phần của ý tưởng này có thể được tích hợp với FOCIL nhưng nó được cung cấp riêng để tạo điều kiện thuận lợi cho việc thảo luận mục tiêu và không làm mờ đục thiết kế đang diễn ra.
Xin cảm ơn đặc biệt đến Phil Ngo, Nico Flaig, Cayman Nava, Guillaume Ballet, Greg Markou, Gajinder Singh, Navie Chan và nhiều người khác đã dành thời gian giúp hoàn thiện ý tưởng này.
Tóm tắt
Đề xuất này tập trung vào việc sắp xếp các giao dịch. Nó cũng giải quyết các phần thưởng và hình phạt để phù hợp với các ủy ban bao gồm mới và các nhiệm vụ của người đề xuất được cập nhật.
Có hai nhiệm vụ chính, liên quan đến các nhà xây dựng, của quá trình đề xuất cần được giải quyết để tạo điều kiện loại trừ các lực lượng tập trung thông qua các phương tiện kinh tế crypto.
- Lựa chọn các giao dịch để bao gồm
- Sắp xếp các giao dịch
FOCIL là một giải pháp tuyệt vời để giải quyết trọng tâm của hai chủ đề đầu tiên, nhưng nó có thể được tinh chỉnh thêm bằng cách hạn chế các giao dịch được bao gồm trong các khối CHỈ những giao dịch trong danh sách bao gồm. Điều này loại bỏ các động lực kinh tế, thông qua mất quyền hạn, để thêm các giao dịch vào một khối có thể ảnh hưởng tiêu cực đến thứ tự để thu MEV.
Việc sắp xếp sẽ trở thành một quá trình xác định bằng cách sử dụng Danh sách Bao gồm Tổng hợp, được đưa ra thông qua FOCIL, và Seed Bao gồm. Seed Bao gồm là entropy được tạo ra theo từng khe, cụ thể để ngăn chặn các hành vi thông đồng và trích xuất trong quá trình sắp xếp giao dịch.
Bởi vì phần lớn công việc trong quá trình xây dựng khối (bao gồm và sắp xếp các giao dịch trong một khối được đề xuất trên đầu hiện tại) được loại bỏ khỏi người đề xuất, cơ chế phần thưởng nên được cập nhật tương ứng để bù đắp cho các bên cung cấp giá trị cho giao thức.
Thiết kế
Có ba điều cần được tính đến để cung cấp sắp xếp xác định, không thể gian lận. Đặc biệt là sắp xếp mà khả năng dự đoán xác suất là không khả thi để các cuộc tấn công sandwich và mev đa khối bị khuyến khích về mặt kinh tế.
- Thời điểm cắt để các giao dịch không thể được bao gồm trong một khối cho khe N
- Thời gian mà Seed Bao gồm được chọn cho khe N
- Khả năng xác minh của việc ngẫu nhiên hóa các giao dịch trong khe N
Chìa khóa của b启istic sắp xếp là như vậy, hai mục đầu tiên xảy ra theo thứ tự đó. Nếu seed không được biết cho đến sau khi cửa sổ bao gồm đóng lại, b启istic có thể được xây dựng sao cho "khai thác một giao dịch được sắp xếp", để được thực hiện ở một vị trí nhất định trong danh sách giao dịch, là không khả thi.
Mục thứ ba đảm bảo rằng một khi seed được biết, bất kỳ nút nào trên mạng cũng có thể tính toán cùng một thứ tự của các giao dịch để chứng minh sự tuân thủ với giao thức. Nó cũng cho phép đánh giá các phần thưởng và hình phạt cho (không) tuân thủ.
Xem xét về thời gian
Khe N-1
t0: Người đề xuất của khe N chọn một nonce ngẫu nhiên, chuẩn bị và phát tán nó để sử dụng bởi Ủy ban Bao gồm
t9: Thời điểm cắt để Ủy ban IL FOCIL chọn IL từ bộ nhớ cục bộ và phát tán IL riêng lẻ dựa trên đầu đồng thuận của khe N-1, IL bao gồm nonce được băm do người sản xuất trong khe N
Khe N
t0: Nonce bao gồm, được phát tán trong N-1 được mở và sử dụng để tạo Seed Bao gồm. Seed Bao gồm được gửi đến EL để sử dụng làm đối số cho một hàm sắp xếp không thể lặp lại. Một danh sách được sắp xếp được tạo ra đại diện cho một khối đầy đủ của gas, và danh sách giao dịch đó được thực hiện. Khối được tạo chung bởi EL/CL và CL thêm nonce đã mở vào khối trước khi phát hành ra mạng.
t4: Các người xác nhận phải xác minh nonce được mờ/tiết lộ, seed bao gồm và thứ tự giao dịch trong quá trình kiểm tra tính hợp lệ của khối. Các người xác nhận bỏ phiếu về khối hợp lệ tại khe N.
Seed Bao gồm
Mục đích của Seed Bao gồm là cung cấp entropy cho thứ tự giao dịch. Nó nên tương tự như RANDAO sao cho nó sử dụng dữ liệu trên chuỗi có thể chứng minh và được mọi người theo dõi chuỗi biết. Tuy nhiên, RANDAO được làm mới quá ít vì nó dựa trên epoch và không dựa trên khe. Đối với việc sắp xếp theo khe, entropy cũng cần được làm mới theo khe. Chìa khóa để giảm thiểu hành vi trích xuất là seed cần được chọn sau khi cửa sổ bao gồm giao dịch đã đóng ở khe N-1, nhưng trước khi kết thúc khe N-1, để nó có sẵn cho người đề xuất của khe N.
Khi sử dụng giả định rằng đề xuất này được xây dựng trên FOCIL thì nguồn entropy lý tưởng để chọn sẽ là các Danh sách Bao gồm Tổng hợp, những thứ khó khai thác chống lại.
Giải pháp tấn công Seed dựa trên thời gian
Một vector tấn công có thể xảy ra với lược đồ này là chờ đợi để là thành viên ủy ban cuối cùng gửi một IL sẽ mở ra cơ hội để bao gồm nội dung ảnh hưởng đến seed, và do đó là thứ tự cuối cùng. Nó cũng sẽ khuyến khích các trò chơi về thời gian với tác dụng phụ là làm suy giảm việc truyền bá mạng của các danh sách chưa được tổng hợp.
Một giải pháp thay thế là để quá trình tổng hợp IL bao gồm thêm một số entropy bổ sung trong danh sách cuối cùng, chẳng hạn như chữ ký hoặc một nonce.
Giải pháp tấn công Seed do sự thông đồng của Aggregator
Ký danh sách hoặc sử dụng một nonce đơn giản là không đủ, vì nó sẽ mở ra bề mặt tấn công để thành viên ủy ban cuối cùng thông đồng với người đề xuất tiếp theo. Để sự thông đồng hoạt động, thành viên ủy ban thông đồng có thể có quyền truy cập vào khóa của người đề xuất tiếp theo hoặc chỉ đơn giản là phối hợp với người đề xuất tiếp theo để khai thác một giao dịch (và IL với việc bao gồm nó) cho khe N.
Để ngăn chặn cuộc tấn công này, một quá trình tiết lộ nên được sử dụng. Nhiệm vụ đầu tiên của người đề xuất là phát tán một hash đã ký trong khe trước khi đề xuất. Tin nhắn được phát tán cần được công bố rất sớm, trong khoảng 0-2 giây vào khe, tốt nhất là trước khi khối được công bố (thực tế chỉ cần trước khi các danh sách bao gồm chưa được tổng hợp được phát tán vì chúng cần bao gồm nonce trong IL để xác minh).
Việc công bố nonce được mờ trước khi phát tán các danh sách bao gồm chưa được tổng hợp, sau đó tiết lộ, khiến việc thông đồng khai thác một giao dịch trở nên không thể trừ khi toàn bộ ủy ban bao gồm tham gia vào kế hoạch.
Cơ chế tạo và tiết lộ Nonce
Để đảm bảo entropy đầy đủ, người đề xuất sẽ chọn một số byte ngẫu nhiên, có thể trong khoảng 8-32 byte để ngăn chặn đoán brute force trong thời gian được phép, sau đó trộn một số ngẫu nhiên có trạng thái từ RANDAO. Sau đó, ngẫu nhiên sẽ được băm để mờ giá trị thực và hash sẽ được người đề xuất của khe ký, nhưng quan trọng là nó sẽ được phát tán trong khe N-1 để có thể được thêm vào các IL để chứng minh rằng nó đã được nhận trước khi tạo IL.
Trong khe N, người đề xuất, là người tham gia duy nhất nên biết giá trị chưa được mờ cho đến nay, sẽ chuyển nonce cho EL để EL có thể sắp xếp các giao dịch theo các thông số kỹ thuật của giao thức. Giá trị chưa được mờ
Ví dụ về một khối nhất định, phí ưu tiên giao dịch tính bằng gwei là:`[ 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 4, 100 ]`Các phân đoạn có thể được tạo như sau:`[ 1, 1, 1, 1, 1, 1, 1, 1, 1 ]``[ 2, 2, 2, 2, 2, 2, 2 ]``[ 4, 100 ]`
Sắp xếp dựa trên phí ưu tiên (Không giả ngẫu nhiên)
Một khi các bể lưu trữ bộ nhớ được mã hóa đầy đủ, sẽ có thể chuyển sang một heuristic sắp xếp dựa hoàn toàn trên phí ưu tiên. Đây sẽ là tình huống lý tưởng, hoàn toàn dựa vào động lực thị trường để thiết lập giá cho thứ tự thực hiện.
Phần thưởng và Hình phạt
Trong mô hình này, những người tìm kiếm thêm giao dịch vào Danh sách Bao gồm sẽ là những người nhận phần lớn phần thưởng. Người đề xuất khối giờ đây sẽ nghiêm túc tuân theo giao thức và có quyền hạn giảm. Với việc giảm nhiệm vụ, phần lớn phần thưởng đề xuất nên được chuyển sang những người tìm kiếm để tránh lạm phát. Điều này cũng sẽ có lợi ích bổ sung là làm mịn các phần thưởng từ một người đề xuất duy nhất sang toàn bộ Ủy ban IL. Có thể cho rằng người đề xuất tạo và truyền bá Nonce Bao gồm tại N-1 giờ là một điểm lỗi quan trọng vì quá trình đề xuất sẽ phụ thuộc vào họ. Do đó, phần thưởng khối kiếm được trong khe N nên là điều kiện cần của việc truyền bá nonce tại khe N-1.
Cơ chế phần thưởng của FOCIL cũng cần được mở rộng để đáp ứng việc chuyển một phần phần thưởng khối sang những người tìm kiếm để bao gồm các giao dịch mới. Ý tưởng này được nhóm FOCIL tham chiếu nhưng chưa được hoàn thiện và do đó cần được cập nhật ở đây một khi đề xuất đó tiến triển.
Vì Ủy ban IL hiện nắm giữ mảnh ghép quan trọng để lựa chọn giao dịch, nhiệm vụ này giờ đây rất quan trọng. Do đó, sự mâu thuẫn của một thành viên ủy ban nên bị cắt giảm tương tự như tạo ra các xác nhận hoặc khối mâu thuẫn.
Các Giao dịch Còn lại
Hàm ý của việc có nhiều danh sách bao gồm chưa được tổng hợp và tất cả các giao dịch cho một khối được lấy từ việc kết hợp chúng thành một danh sách duy nhất là khả năng nhiều giao dịch hơn được gửi so với có thể chứa trong một khối duy nhất. Điều này có nghĩa là Bể Bao gồm (các giao dịch được gửi bởi các thành viên Ủy ban IL) có thể cần được chèn vào khối tiếp theo. Việc này xảy ra như thế nào vẫn là một lĩnh vực nghiên cứu, nhưng một số đề xuất được đề xuất cho đến nay là:
- Không đảm bảo rằng các giao dịch IL PHẢI được bao gồm. Giống như Danh sách Đề xuất Bao gồm và một heuristic sẽ được sử dụng để bao gồm các giao dịch trong khối có thể tái tạo được. Tất cả các giao dịch không được bao gồm có thể được thêm vào các danh sách khối tiếp theo
- Giới hạn kích thước IL để ngăn ngừa tràn
- Thêm trọng số thời gian để các giao dịch đã chờ đợi để được bao gồm có độ ưu tiên cao hơn trong khối tiếp theo. Điều này có thể được thêm vào phí ưu tiên, chẳng hạn. Nếu một bộ sưu tập lớn các giao dịch phí cao ngăn cản việc bao gồm, trọng số thời gian có thể được tăng lên cho các khối tiếp theo để giúp đẩy giao dịch qua cuối cùng
- Đặt ngưỡng cho việc sắp xếp. Nếu giao dịch có phí ưu tiên rất thấp và không được bao gồm trong vài khối, nó sẽ bị loại khỏi phần tràn
Trong số các đề xuất, cái đầu tiên là dễ nhất và thực tế nhất để thực hiện. Điều duy nhất cần là phát triển heuristic để bao gồm các giao dịch trong danh sách vào khối.
Tương tác với các EIP khác và Lộ trình hiện tại
Account Abstraction
Sẽ có thể để EL bao gồm các giao dịch được tạo bởi AA vào IL khi một danh sách được tạo. Tuy nhiên, có một số tinh tế về phí ưu tiên.
ePBS
Đề xuất này sẽ loại bỏ nhu cầu ePBS và độ phức tạp mà nó thêm vào giao thức
Tách biệt Người đề xuất-Người xác nhận
Cơ hội cho Vé Thực thi và các đề xuất kiểu đấu giá khe khác tạo ra sự tích hợp dọc thêm bởi các nhà xây dựng là một mối lo ngại thực sự. Nếu việc sắp xếp được thực hiện trong giao thức, nó sẽ giảm đáng kể rủi ro này. Điều này sẽ là một lợi ích cho tất cả các đề xuất tách biệt nhiệm vụ người đề xuất khỏi nhiệm vụ người xác nhận, điều này sẽ tăng đáng kể khả năng thực hiện thành công các phát triển giao thức cho phép các máy khách chỉ xác nhận rất nhẹ.
Thảo luận
Đơn giản hóa Giao thức
Các hệ thống càng phức tạp, lý thuyết trò chơi càng khó khi lập kế hoạch và triển khai các giao thức trong hệ thống. Tôi cho rằng việc xây dựng các tiện ích trên các tiện ích khác để giải quyết các vấn đề tạo ra nhiều bề mặt tấn công hơn trong hệ thống mà các tiện ích được thiết kế để bảo vệ. Trong trường hợp xây dựng các giao thức để ngăn chặn MEV/nhà xây dựng/trung chuyển mà không loại bỏ dòng chảy của nhà xây dựng, điều này tạo ra nhiều góc khuất hơn để khai thác. Chúng ta phải giải quyết thiết kế hệ thống hiện tại và tấn công vào nguyên nhân gốc rễ, lựa chọn và sắp xếp các giao dịch mà không cần sự trợ giúp của các giải pháp "ngoài giao thức" không minh bạch.
Bảo tồn các Nguyên tắc Cypherpunk và Bình đẳng trong Giao thức
Hãy làm cho Ethereum trở lại Cypherpunk. Đây là một lời kêu gọi hành động trong cuộc hành hương của chúng ta để trở thành MECA. Để bảo tồn tinh thần đã mang chúng ta đến đây. Các nhà xây dựng và hệ sinh thái đã được xây dựng xung quanh họ không được phép chiếm đoạt L1. Cho phép các tác nhân trích xuất giá trị từ những người tham gia trung thực không chỉ trái ngược với các lý tưởng của blockchain mà còn làm giảm sự chấp nhận của các ngành công nghiệp truyền thống. Blockchain mang Pháp luật đến không gian kỹ thuật số. Ý tưởng rằng một người tham gia duy nhất ở trên giao thức. Khôi phục và bảo tồn điều đó sẽ thu hút sự thử nghiệm với blockchain như là nguồn tin cậy cho các tương tác liên hệ thống.
Thanh toán Phân tầng
Hệ thống tài chính truyền thống được xây dựng trên các lớp cơ sở hạ tầng. Điều này quan trọng cần được nhấn mạnh vì có thể có sự phản đối đáng kể đối với các trao đổi mà đề xuất này giới thiệu. Thời gian thanh toán có thể tăng lên đối với một số người tham gia. Một số giao dịch có thể thất bại vì các nhà xây dựng cung cấp một số mức độ phối hợp giao dịch (với chi phí của MEV). Phí giao dịch có thể tăng lên. L1 không được và không nên được thiết kế để thanh toán ngay lập tức. Sự đồng thuận mất thời gian và sự trao đổi cho tốc độ đó là sự phân cấp và sự bảo mật mà nó mang lại. Các nhà xây dựng sẽ bực bội và nếu các kích thích được điều chỉnh đúng cách vì việc trích xuất giá trị sẽ được chuyển thành các khoản phí ưu tiên. Khối lượng giao dịch sẽ chuyển sang L2. Nhưng đây là những điều lành mạnh cho một lộ trình mở rộng quy mô tập trung vào L2.
Có thể tạo điều kiện cho việc khám phá giá bể thanh khoản, tức là các giao dịch mua/bán rất lớn giữa các LP, qua các L2 và các chuỗi ứng dụng khác như Uniswap rollup sẽ được hưởng lợi từ sự chắc chắn của việc khám phá giá và các cuộc đấu giá trung thực. Sự trao đổi là các giao dịch nhỏ sẽ quá đắt để chạy trên L1. Điều này tương tự như cách hệ thống tài chính hiện tại của chúng ta hoạt động. Cổ phiếu được DTCC nắm giữ thay mặt cho các nhà môi giới vì lợi ích của khách hàng của nhà môi giới. Việc các cá nhân giao dịch các vị trí nhỏ là tốn kém và khó khăn vì sổ lệnh ở cấp độ đó là cho các số