Những thay đổi về giao thức và nhóm đặt cược có thể cải thiện sự phân cấp và giảm chi phí đồng thuận

Nâng caoJan 11, 2024
Vitalik đã đề xuất một số tối ưu hóa cho cơ chế đặt cược Ethereum hiện tại, cung cấp đường dẫn tham chiếu để giảm hơn nữa tải trọng tập trung và đồng thuận trên Ethereum.
Những thay đổi về giao thức và nhóm đặt cược có thể cải thiện sự phân cấp và giảm chi phí đồng thuận

Đặc biệt cảm ơn Mike Neuder, Justin Drake và những người khác đã phản hồi và đánh giá. Xem thêm: các bài đăng trước đây về các chủ đề tương tự của<a href="https://notes.ethereum.org/ @mikeneuder /goldilocks">Mike Neuder, Dankrad Feistarixon.eth .

Hiện trạng Ethereum có thể được mô tả là bao gồm một phần lớn đặt cược hai tầng mới nổi. Bằng cách đặt cược hai tầng, ý tôi ở đây là một mô hình đặt cược trong đó có hai loại người tham gia:

  1. Các nhà khai thác nút, những người điều hành các nút và dùng danh tiếng của họ hoặc một số vốn cố định của riêng họ làm tài sản thế chấp
  2. Những người được ủy quyền, những người đưa ra một số lượng ETH, không có cam kết tối thiểu và không có yêu cầu nghiêm ngặt để tham gia theo bất kỳ cách nào khác ngoài việc mang theo tài sản thế chấp của họ

Việc đặt cược hai tầng mới nổi này phát sinh thông qua hành động của một phần lớn người đặt cược tham gia vào nhóm đặt cược cung cấp mã thông báo đặt cược thanh khoản (LST), ví dụ: Bể bơi tên lửaLido.

Hiện trạng có hai nhược điểm chính:

  • Rủi ro tập trung trong các nhà khai thác nút. Các cơ chế lựa chọn người vận hành nút trong nhóm đặt cược hiện tại không được phân quyền nhiều hoặc có các sai sót khác.
  • Gánh nặng lớp đồng thuận không cần thiết. Ethereum L1 xác minh ~800.000 chữ ký mỗi kỷ nguyên và với<a href="https://notes.ethereum.org/ @vbuterin /single_slot_finality">một tính hữu hạn của vị trí có thể tăng lên 800.000 mỗi vị trí. Đây là một tải lớn. Hơn nữa, do tỷ trọng đặt cược thanh khoản lớn nên mạng không nhận được đầy đủ lợi ích khi đảm nhận tải này. Nếu mạng có thể được phân cấp và an toàn ở mức chấp nhận được mà không yêu cầu mỗi người đặt cược phải đăng nhập vào từng vị trí, thì chúng ta có thể dựa vào giải pháp đó khó hơn nhiều và giảm số lượng chữ ký trên mỗi vị trí xuống, ví dụ như vậy. 10.000.

Bài đăng này sẽ mô tả các giải pháp khả thi cho cả hai vấn đề này. Nó sẽ đặc biệt ở góc độ sau: giả sử rằng chúng ta coi như chắc chắn rằng hầu hết vốn được nắm giữ bởi những người không sẵn sàng tự mình chạy các nút đặt cược ở dạng hiện tại, ký tin nhắn vào mọi vị trí và khóa tiền gửi của họ và buộc họ phải cắt giảm . Họ có thể có vai trò gì khác để đóng góp một cách có ý nghĩa vào quá trình phân cấp và bảo mật của mạng?

Ngày nay, việc đặt cược hai tầng hoạt động như thế nào?

Hai nhóm đặt cược phi tập trung phổ biến nhất hiện nay, Lido và RocketPool, đều đang tạo ra hệ sinh thái đặt cược hai tầng mới nổi. Trong trường hợp của Lido, các cấp độ là:

  • Các nhà khai thác nút: những nhà khai thác này được chọn bằng cách bỏ phiếu trong Lido DAO, do đó chủ sở hữu LDO rất hiệu quả
  • Người đại diện: những người nắm giữ stETH. stETH được tạo khi ai đó gửi ETH vào hệ thống hợp đồng thông minh Lido, hệ thống này cho phép các nhà khai thác nút đặt cược nó (nhưng, vì<a href="https://notes.ethereum.org/ @launchpad /withdrawals-faq">việc rút tiền thông tin xác thực được liên kết với địa chỉ ETH của hợp đồng thông minh, họ không thể tự mình lấy nó)

Trong trường hợp của Rocket Pool, các cấp độ là:

  • Người vận hành nút: bất kỳ ai cũng có thể trở thành nhà điều hành nút bằng cách gửi khoản tiền gửi 8 ETH, cộng với số lượng mã thông báo RPL
  • Người đại diện: những người nắm giữ rETH. rETH được tạo khi ai đó gửi ETH vào hệ thống hợp đồng thông minh Rocket Pool, hệ thống này cho phép các nhà khai thác nút đặt cọc (nhưng không tự mình lấy nó)

Vai trò của người đại diện

Trong các hệ thống này (hoặc các hệ thống mới được kích hoạt bởi các thay đổi giao thức tiềm năng trong tương lai), một câu hỏi quan trọng cần đặt ra là: từ góc độ của giao thức, mục đích của việc có người ủy quyền là gì?

Để biết tại sao câu hỏi này lại có ý nghĩa, chúng ta hãy xem xét thế giới sau đây. Thay đổi giao thức được đề xuất trong bài đăng gần đây này nhằm giới hạn hình phạt giảm xuống còn 2 ETH đã được triển khai. Rocket Pool giảm khoản tiền gửi của nhà điều hành nút xuống còn 2 ETH để đáp lại. Thị phần của Rocket Pool tăng lên 100% (không chỉ giữa những người đặt cược mà còn giữa những người nắm giữ ETH: khi rETH trở nên không có rủi ro, hầu hết tất cả những người nắm giữ ETH đều trở thành người nắm giữ rETH hoặc nhà điều hành nút).

Giả sử rằng chủ sở hữu rETH nhận được lợi nhuận là 3% (bao gồm cả phần thưởng trong giao thức và phí ưu tiên + MEV) và người vận hành nút nhận được lợi nhuận là 4%. Giả sử tổng nguồn cung ETH là 100 triệu.

Đây là cách toán học diễn ra. Để tránh phải xử lý lãi kép, chúng ta sẽ xem xét lợi nhuận hàng ngày thay vì hàng năm, sao cho số hạng bậc hai trở nên đủ nhỏ để có thể bỏ qua:

Bây giờ chúng ta hãy xem xét một thế giới khác. Rocket Pool không tồn tại. Khoản tiền gửi tối thiểu của mỗi người đặt cược giảm xuống còn 2 ETH và tổng số ETH đặt cược được giới hạn ở mức 6,25 triệu. Ngoài ra, lợi nhuận của toán tử nút giảm xuống 1%. Hãy làm phép tính:

Bây giờ, chúng ta hãy xem xét hai tình huống từ góc độ chi phí tấn công. Trong trường hợp đầu tiên, những kẻ tấn công sẽ không đăng ký với tư cách là người ủy quyền: người được ủy quyền không có quyền lực nên không có ích gì. Do đó, họ sẽ dồn toàn bộ ETH của mình vào việc đăng ký làm nhà khai thác nút. Để có được 1/3 tổng số tiền đặt cược, họ sẽ cần phải bỏ vào 2,08 triệu ETH (công bằng mà nói thì vẫn còn khá nhiều! ví dụ: xem<a href="https://notes.ethereum.org/ @vbuterin /single_slot_finality#Idea-1-super-committees">cái này thảo luận về các siêu ủy ban, một đề xuất mở rộng quy mô đặt cược cũng sẽ giảm chi phí tấn công xuống một giá trị tương tự). Trong trường hợp thứ hai, những kẻ tấn công sẽ chỉ đặt cược và để nhận được 1/3 tổng số tiền đặt cược, chúng cần phải bỏ vào… 2,08 triệu ETH.

Từ cả góc độ kinh tế đặt cược và góc độ chi phí tấn công, kết quả cuối cùng trong cả hai trường hợp đều hoàn toàn giống nhau. Tỷ lệ trong tổng nguồn cung ETH do nhà điều hành nút nắm giữ tăng 0,00256% mỗi ngày và tỷ lệ trong tổng nguồn cung ETH do nhà điều hành không phải nút nắm giữ giảm 0,00017% mỗi ngày. Chi phí tấn công là 2,08 triệu ETH. Do đó, có cảm giác như trong mô hình này, việc ủy quyền trở thành một cỗ máy Rube Goldberg vô nghĩa: chúng tôi cũng có thể loại bỏ người trung gian và giảm đáng kể phần thưởng đặt cược cũng như tổng giới hạn ETH đặt cược xuống còn 6,25 triệu.

Mục đích của lập luận này không phải là ủng hộ việc giảm phần thưởng đặt cược xuống 4 lần và giới hạn tổng số ETH đặt cược xuống còn 6,25 triệu. Đúng hơn, nó chỉ ra một đặc tính quan trọng mà một hệ thống đặt cược hoạt động tốt nên có: cụ thể là, những người được ủy quyền nên làm điều gì đó thực sự quan trọng. Hơn nữa, sẽ không sao nếu người được ủy quyền được thúc đẩy hành động đúng đắn ở mức độ lớn bởi áp lực và lòng vị tha của cộng đồng; xét cho cùng, đó là động lực chính thúc đẩy mọi người tham gia theo những cách tăng cường bảo mật phi tập trung (nhưng nỗ lực cao hơn) thay vì những cách đe dọa an ninh tập trung (nhưng tốn ít nỗ lực hơn) ngày nay.

Nếu người được ủy quyền có thể có một vai trò có ý nghĩa thì vai trò đó có thể là gì?

Tôi thấy hai loại câu trả lời:

  • Lựa chọn đại biểu: đại biểu có thể chọn nhà khai thác nút mà họ ủy quyền cổ phần của mình. Những người vận hành nút sẽ có “trọng số” trong sự đồng thuận tỷ lệ thuận với tổng số cổ phần được ủy quyền cho họ. Lựa chọn đại biểu ngày nay đã tồn tại ở dạng giới hạn, theo nghĩa là người nắm giữ rETH hoặc stETH có thể rút ETH của họ và chuyển sang một nhóm khác, nhưng tính khả dụng thực tế của lựa chọn đại biểu có thể được cải thiện đáng kể.
  • Tham gia đồng thuận: người ủy quyền có thể được cung cấp tùy chọn đảm nhận vai trò đồng thuận, điều này sẽ “nhẹ hơn” so với đặt cược toàn bộ và không phải chịu thời gian rút tiền dài và giảm thiểu rủi ro, nhưng vẫn có chức năng kiểm tra các nhà khai thác nút. Nhiều người được ủy quyền sẽ không muốn làm điều này và muốn giao diện đơn giản nhất là giữ ERC20 và không làm gì khác, nhưng một số người sẽ chọn tùy chọn này.

Mở rộng quyền lựa chọn đại biểu

Có ba cách để mở rộng quyền lựa chọn đại biểu:

  • Công cụ bỏ phiếu tốt hơn trong nhóm
  • Cạnh tranh nhiều hơn giữa các nhóm
  • Phái đoàn được tôn trọng

Việc bỏ phiếu trong các nhóm ngày nay không thực sự tồn tại: trong Rocket Pool, bất kỳ ai cũng có thể trở thành nhà điều hành nút và ở Lido, chính những người nắm giữ LDO sẽ bỏ phiếu chứ không phải những người nắm giữ ETH. Lido có một đề xuất về quản trị kép LDO + stETH, điều này sẽ giúp những người nắm giữ stETH có tiếng nói theo nghĩa là họ có thể kích hoạt một tiện ích chặn các phiếu bầu mới và do đó ngăn chặn việc thêm hoặc xóa các nhà khai thác nút. Điều đó nói lên rằng, điều này còn hạn chế và có thể mạnh hơn nhiều.

Sự cạnh tranh giữa các nhóm tồn tại ngày nay, nhưng còn yếu. Thách thức chính là mã thông báo đặt cược của nhóm đặt cược nhỏ hơn (i) kém thanh khoản hơn, (ii) khó tin cậy hơn và (iii) ít được ứng dụng hỗ trợ hơn.

Chúng ta có thể cải thiện hai vấn đề đầu tiên bằng cách giới hạn các hình phạt chém ở mức nhỏ hơn, chẳng hạn như. 2 hoặc 4 ETH. Số ETH còn lại (không thể chia nhỏ) sau đó có thể được gửi và rút một cách an toàn ngay lập tức, tạo LST dựa trên chuyển đổi hai chiều ETH đó với ETH ngay cả đối với các nhóm nhỏ nhất. Chúng tôi có thể cải thiện vấn đề thứ ba bằng cách tạo hợp đồng phát hành trung tâm cho LST - hơi giống với ERC-4337ERC-6900 cho ví, để chúng tôi có thể đảm bảo rằng mọi mã thông báo đặt cược được phát hành thông qua hợp đồng đó đều an toàn. Các ứng dụng (ví dụ: phiên bản RAI hỗ trợ ETH đặt cược) có thể được khuyến khích mạnh mẽ để hỗ trợ tất cả các mã thông báo đặt cược được phát hành thông qua cơ quan đăng ký này.

Ủy quyền được quy định hiện không tồn tại trong giao thức nhưng có khả năng có thể được giới thiệu. Nó sẽ liên quan đến logic tương tự như các ý tưởng ở trên, nhưng được triển khai ở cấp độ giao thức. Xem bài đăng này để biết những ưu và nhược điểm của việc cất giữ mọi thứ.

Tất cả những ý tưởng này đều là sự cải tiến so với hiện trạng, nhưng có giới hạn về mức độ lợi ích mà chúng có thể mang lại. Việc quản lý bỏ phiếu bằng mã thông báo thật tệ hại và cuối cùng thì bất kỳ hình thức lựa chọn đại biểu không được khuyến khích nào cũng chỉ là một loại bỏ phiếu bằng mã thông báo; đây là nguyên nhân chính khiến tôi khó chịu với bằng chứng cổ phần được ủy quyền kể từ đầu. Do đó, việc nghĩ đến việc tạo điều kiện cho các hình thức tham gia đồng thuận mạnh mẽ hơn có vẻ cũng có giá trị.

Sự tham gia đồng thuận

Có những giới hạn đối với cách tiếp cận hiện tại đối với việc đặt cược một mình, ngay cả khi không tính đến các vấn đề hiện tại xung quanh việc đặt cược thanh khoản. Giả sử tính hữu hạn của một vị trí, các ước tính tốt nhất của chúng tôi đề xuất giới hạn ~ 100k - 1M chữ ký BLS có thể được xử lý trên mỗi vị trí và điều đó giả định thời gian của vị trí tăng đáng kể. Ngay cả khi chúng tôi sử dụng SNARK đệ quy để tổng hợp chữ ký, trách nhiệm ký kết (cho mục đích cắt giảm) yêu cầu phải có một trường bit về những người đã tham gia cho mỗi chữ ký. Nếu Ethereum trở thành một mạng quy mô toàn cầu, thì thậm chí bằng cách nào đó sử dụng toàn bộ danksharding để lưu trữ các bitfield cũng sẽ không đủ: 16 MB mỗi khe sẽ chỉ hỗ trợ ~64 triệu người đặt cọc.

Ở đây, từ góc độ đó, cũng có giá trị trong việc chia đặt cược thành một cấp có thể cắt nhỏ có độ phức tạp cao hơn, hoạt động ở mọi vị trí nhưng có lẽ chỉ có 10.000 người tham gia và một cấp có độ phức tạp thấp hơn đôi khi chỉ được gọi để tham gia. Cấp độ phức tạp thấp hơn có thể được miễn hoàn toàn việc cắt giảm hoặc có thể ngẫu nhiên cung cấp cho những người tham gia cơ hội tạm thời (tức là. đối với một vài vị trí) gửi tiền và có thể bị cắt giảm.

Trong thực tế, điều này có thể được thực hiện bằng cách<a href="https://notes.ethereum.org/ @mikeneuder /eip-7251-faq">gây quỹ giới hạn số dư của trình xác thực và sau đó triển khai ngưỡng số dư (ví dụ: 2048 ETH) để xác định trình xác nhận hiện tại nào có cấp độ phức tạp cao hơn và thấp hơn.

Dưới đây là một số ý tưởng về cách hoạt động của những vai trò đặt cược nhỏ này:

  • Mỗi vị trí, 10000 người đặt cược nhỏ được chọn ngẫu nhiên và họ có thể đăng nhập vào những gì họ nghĩ là người đứng đầu của vị trí đó. Quy tắc lựa chọn ngã ba LMD GHOST được chạy bằng cách sử dụng các cổ phần nhỏ làm đầu vào. Nếu lựa chọn phân nhánh do người đặt cược nhỏ điều khiển và lựa chọn phân nhánh do nhà điều hành nút điều khiển khác nhau, thì ứng dụng khách của người dùng sẽ không chấp nhận bất kỳ khối nào là đã hoàn tất và hiển thị lỗi. Điều này buộc cộng đồng phải hòa giải tình hình.
  • Người được ủy quyền có thể gửi một giao dịch tuyên bố với mạng rằng họ đang trực tuyến và sẵn sàng đóng vai trò là người đặt cọc nhỏ trong giờ tiếp theo. Để một tin nhắn (chặn hoặc chứng thực) từ một nút được tính, cả nút và người được ủy quyền được chọn ngẫu nhiên đều phải đăng xuất.
  • Người được ủy quyền có thể gửi một giao dịch tuyên bố với mạng rằng họ đang trực tuyến và sẵn sàng đóng vai trò là người đặt cọc nhỏ trong giờ tiếp theo. Mỗi kỷ nguyên, 10 người ủy quyền ngẫu nhiên được chọn làm nhà cung cấp danh sách đưa vào và 10000 người khác được chọn làm người bỏ phiếu. Đây là k vị trí được chọn trước và có cửa sổ k vị trí để xuất bản thông báo trên chuỗi xác nhận rằng chúng đang trực tuyến. Mỗi nhà cung cấp danh sách bao gồm đã chọn đã được xác nhận có thể xuất bản một danh sách bao gồm và một khối không hợp lệ trừ khi đối với mỗi danh sách bao gồm, nó (i) nó chứa các giao dịch trong danh sách bao gồm đó hoặc (ii) nó chứa phiếu bầu từ 1/2 số phiếu được chọn cử tri cho thấy rằng danh sách bao gồm không có sẵn.

Các vai trò đặt cược nhỏ này đều có điểm chung là chúng không liên quan đến việc tham gia tích cực vào từng vị trí, không thể bị cắt (và do đó có rủi ro quản lý khóa rất thấp) và rất “nhẹ nhàng” theo nghĩa là chúng thậm chí không yêu cầu nút đầy đủ để chạy. Chỉ xác minh lớp đồng thuận là đủ. Do đó, chúng có thể được triển khai thông qua các ứng dụng hoặc plugin trình duyệt chủ yếu là thụ động và có chi phí tính toán rất thấp, yêu cầu phần cứng hoặc yêu cầu bí quyết kỹ thuật, thậm chí không cần giả định những tiến bộ kỹ thuật như ZK-EVM.

Tất cả các vai trò đặt cược nhỏ này đều có một mục tiêu chung: chúng ngăn chặn phần lớn 51% các nhà khai thác nút tham gia kiểm duyệt giao dịch. Điều thứ nhất và thứ hai cũng ngăn cản đa số tham gia vào việc đảo ngược mục đích cuối cùng. Phần thứ ba tập trung trực tiếp hơn vào kiểm duyệt, mặc dù nó dễ bị tổn thương hơn trước khả năng đa số nhà điều hành nút cũng sẽ chọn kiểm duyệt các thông báo xác nhận của nhà cung cấp danh sách đưa vào.

Những ý tưởng này được viết từ góc độ của một giải pháp đặt cược hai tầng được quy định cụ thể được triển khai trong giao thức, nhưng chúng cũng có thể được triển khai dưới dạng các tính năng của nhóm đặt cược. Dưới đây là một số ý tưởng triển khai cụ thể:

Kết luận

Nếu thực hiện đúng, việc điều chỉnh thiết kế đặt cược có thể giải quyết hai con chim bằng một hòn đá:

  1. Mang đến cho những người không có đủ nguồn lực hoặc khả năng đặt cược một mình ngày hôm nay một cơ hội tham gia đặt cược để nắm giữ nhiều quyền lực hơn trong tay họ: cả (i) quyền chọn nút nào họ đang hỗ trợ và (ii) quyền tham gia tích cực vào sự đồng thuận theo một cách nào đó nhẹ hơn hoạt động của nút đặt cược đầy đủ nhưng vẫn có ý nghĩa. Không phải tất cả những người tham gia sẽ chọn một hoặc cả hai lựa chọn, nhưng bất kỳ lựa chọn nào cũng sẽ cải thiện đáng kể mọi thứ so với hiện trạng.
  2. Giảm số lượng chữ ký mà lớp đồng thuận Ethereum cần xử lý trong mỗi vị trí, ngay cả trong chế độ cuối cùng một vị trí, xuống con số nhỏ hơn như ~ 10.000. Điều này cũng sẽ hỗ trợ phân cấp, bằng cách giúp mọi người chạy nút xác thực dễ dàng hơn nhiều.

Đối với nhiều giải pháp trong số này, có nhiều lớp trừu tượng khác nhau nơi giải pháp cho vấn đề có thể tồn tại: quyền được cấp cho người dùng trong giao thức nhóm đặt cược, lựa chọn của người dùng giữa các giao thức nhóm đặt cược và lưu trữ trong giao thức. Lựa chọn này cần được xem xét cẩn thận và việc lưu giữ khả thi ở mức tối thiểu, giảm thiểu cả độ phức tạp của giao thức và mức độ thay đổi đối với tính kinh tế của giao thức trong khi vẫn đạt được mục tiêu mong muốn, nói chung là tốt nhất.

Tuyên bố từ chối trách nhiệm:

  1. Bài viết này được in lại từ [ <a href="https://notes.ethereum.org/@vbuterin/stake_2023_10"> notes.ethereum.org ]. Tất cả bản quyền thuộc về tác giả gốc [notes.ethereum.org]. Nếu có ý kiến phản đối việc tái bản này, vui lòng liên hệ với nhóm Gate Learn , họ sẽ xử lý kịp thời.
  2. Tuyên bố miễn trừ trách nhiệm pháp lý: Các quan điểm và ý kiến trình bày trong bài viết này chỉ là của tác giả và không cấu thành bất kỳ lời khuyên đầu tư nào.
  3. Việc dịch bài viết sang các ngôn ngữ khác được thực hiện bởi nhóm Gate Learn. Trừ khi được đề cập, việc sao chép, phân phối hoặc đạo văn các bài viết đã dịch đều bị cấm.

Những thay đổi về giao thức và nhóm đặt cược có thể cải thiện sự phân cấp và giảm chi phí đồng thuận

Nâng caoJan 11, 2024
Vitalik đã đề xuất một số tối ưu hóa cho cơ chế đặt cược Ethereum hiện tại, cung cấp đường dẫn tham chiếu để giảm hơn nữa tải trọng tập trung và đồng thuận trên Ethereum.
Những thay đổi về giao thức và nhóm đặt cược có thể cải thiện sự phân cấp và giảm chi phí đồng thuận

Đặc biệt cảm ơn Mike Neuder, Justin Drake và những người khác đã phản hồi và đánh giá. Xem thêm: các bài đăng trước đây về các chủ đề tương tự của<a href="https://notes.ethereum.org/ @mikeneuder /goldilocks">Mike Neuder, Dankrad Feistarixon.eth .

Hiện trạng Ethereum có thể được mô tả là bao gồm một phần lớn đặt cược hai tầng mới nổi. Bằng cách đặt cược hai tầng, ý tôi ở đây là một mô hình đặt cược trong đó có hai loại người tham gia:

  1. Các nhà khai thác nút, những người điều hành các nút và dùng danh tiếng của họ hoặc một số vốn cố định của riêng họ làm tài sản thế chấp
  2. Những người được ủy quyền, những người đưa ra một số lượng ETH, không có cam kết tối thiểu và không có yêu cầu nghiêm ngặt để tham gia theo bất kỳ cách nào khác ngoài việc mang theo tài sản thế chấp của họ

Việc đặt cược hai tầng mới nổi này phát sinh thông qua hành động của một phần lớn người đặt cược tham gia vào nhóm đặt cược cung cấp mã thông báo đặt cược thanh khoản (LST), ví dụ: Bể bơi tên lửaLido.

Hiện trạng có hai nhược điểm chính:

  • Rủi ro tập trung trong các nhà khai thác nút. Các cơ chế lựa chọn người vận hành nút trong nhóm đặt cược hiện tại không được phân quyền nhiều hoặc có các sai sót khác.
  • Gánh nặng lớp đồng thuận không cần thiết. Ethereum L1 xác minh ~800.000 chữ ký mỗi kỷ nguyên và với<a href="https://notes.ethereum.org/ @vbuterin /single_slot_finality">một tính hữu hạn của vị trí có thể tăng lên 800.000 mỗi vị trí. Đây là một tải lớn. Hơn nữa, do tỷ trọng đặt cược thanh khoản lớn nên mạng không nhận được đầy đủ lợi ích khi đảm nhận tải này. Nếu mạng có thể được phân cấp và an toàn ở mức chấp nhận được mà không yêu cầu mỗi người đặt cược phải đăng nhập vào từng vị trí, thì chúng ta có thể dựa vào giải pháp đó khó hơn nhiều và giảm số lượng chữ ký trên mỗi vị trí xuống, ví dụ như vậy. 10.000.

Bài đăng này sẽ mô tả các giải pháp khả thi cho cả hai vấn đề này. Nó sẽ đặc biệt ở góc độ sau: giả sử rằng chúng ta coi như chắc chắn rằng hầu hết vốn được nắm giữ bởi những người không sẵn sàng tự mình chạy các nút đặt cược ở dạng hiện tại, ký tin nhắn vào mọi vị trí và khóa tiền gửi của họ và buộc họ phải cắt giảm . Họ có thể có vai trò gì khác để đóng góp một cách có ý nghĩa vào quá trình phân cấp và bảo mật của mạng?

Ngày nay, việc đặt cược hai tầng hoạt động như thế nào?

Hai nhóm đặt cược phi tập trung phổ biến nhất hiện nay, Lido và RocketPool, đều đang tạo ra hệ sinh thái đặt cược hai tầng mới nổi. Trong trường hợp của Lido, các cấp độ là:

  • Các nhà khai thác nút: những nhà khai thác này được chọn bằng cách bỏ phiếu trong Lido DAO, do đó chủ sở hữu LDO rất hiệu quả
  • Người đại diện: những người nắm giữ stETH. stETH được tạo khi ai đó gửi ETH vào hệ thống hợp đồng thông minh Lido, hệ thống này cho phép các nhà khai thác nút đặt cược nó (nhưng, vì<a href="https://notes.ethereum.org/ @launchpad /withdrawals-faq">việc rút tiền thông tin xác thực được liên kết với địa chỉ ETH của hợp đồng thông minh, họ không thể tự mình lấy nó)

Trong trường hợp của Rocket Pool, các cấp độ là:

  • Người vận hành nút: bất kỳ ai cũng có thể trở thành nhà điều hành nút bằng cách gửi khoản tiền gửi 8 ETH, cộng với số lượng mã thông báo RPL
  • Người đại diện: những người nắm giữ rETH. rETH được tạo khi ai đó gửi ETH vào hệ thống hợp đồng thông minh Rocket Pool, hệ thống này cho phép các nhà khai thác nút đặt cọc (nhưng không tự mình lấy nó)

Vai trò của người đại diện

Trong các hệ thống này (hoặc các hệ thống mới được kích hoạt bởi các thay đổi giao thức tiềm năng trong tương lai), một câu hỏi quan trọng cần đặt ra là: từ góc độ của giao thức, mục đích của việc có người ủy quyền là gì?

Để biết tại sao câu hỏi này lại có ý nghĩa, chúng ta hãy xem xét thế giới sau đây. Thay đổi giao thức được đề xuất trong bài đăng gần đây này nhằm giới hạn hình phạt giảm xuống còn 2 ETH đã được triển khai. Rocket Pool giảm khoản tiền gửi của nhà điều hành nút xuống còn 2 ETH để đáp lại. Thị phần của Rocket Pool tăng lên 100% (không chỉ giữa những người đặt cược mà còn giữa những người nắm giữ ETH: khi rETH trở nên không có rủi ro, hầu hết tất cả những người nắm giữ ETH đều trở thành người nắm giữ rETH hoặc nhà điều hành nút).

Giả sử rằng chủ sở hữu rETH nhận được lợi nhuận là 3% (bao gồm cả phần thưởng trong giao thức và phí ưu tiên + MEV) và người vận hành nút nhận được lợi nhuận là 4%. Giả sử tổng nguồn cung ETH là 100 triệu.

Đây là cách toán học diễn ra. Để tránh phải xử lý lãi kép, chúng ta sẽ xem xét lợi nhuận hàng ngày thay vì hàng năm, sao cho số hạng bậc hai trở nên đủ nhỏ để có thể bỏ qua:

Bây giờ chúng ta hãy xem xét một thế giới khác. Rocket Pool không tồn tại. Khoản tiền gửi tối thiểu của mỗi người đặt cược giảm xuống còn 2 ETH và tổng số ETH đặt cược được giới hạn ở mức 6,25 triệu. Ngoài ra, lợi nhuận của toán tử nút giảm xuống 1%. Hãy làm phép tính:

Bây giờ, chúng ta hãy xem xét hai tình huống từ góc độ chi phí tấn công. Trong trường hợp đầu tiên, những kẻ tấn công sẽ không đăng ký với tư cách là người ủy quyền: người được ủy quyền không có quyền lực nên không có ích gì. Do đó, họ sẽ dồn toàn bộ ETH của mình vào việc đăng ký làm nhà khai thác nút. Để có được 1/3 tổng số tiền đặt cược, họ sẽ cần phải bỏ vào 2,08 triệu ETH (công bằng mà nói thì vẫn còn khá nhiều! ví dụ: xem<a href="https://notes.ethereum.org/ @vbuterin /single_slot_finality#Idea-1-super-committees">cái này thảo luận về các siêu ủy ban, một đề xuất mở rộng quy mô đặt cược cũng sẽ giảm chi phí tấn công xuống một giá trị tương tự). Trong trường hợp thứ hai, những kẻ tấn công sẽ chỉ đặt cược và để nhận được 1/3 tổng số tiền đặt cược, chúng cần phải bỏ vào… 2,08 triệu ETH.

Từ cả góc độ kinh tế đặt cược và góc độ chi phí tấn công, kết quả cuối cùng trong cả hai trường hợp đều hoàn toàn giống nhau. Tỷ lệ trong tổng nguồn cung ETH do nhà điều hành nút nắm giữ tăng 0,00256% mỗi ngày và tỷ lệ trong tổng nguồn cung ETH do nhà điều hành không phải nút nắm giữ giảm 0,00017% mỗi ngày. Chi phí tấn công là 2,08 triệu ETH. Do đó, có cảm giác như trong mô hình này, việc ủy quyền trở thành một cỗ máy Rube Goldberg vô nghĩa: chúng tôi cũng có thể loại bỏ người trung gian và giảm đáng kể phần thưởng đặt cược cũng như tổng giới hạn ETH đặt cược xuống còn 6,25 triệu.

Mục đích của lập luận này không phải là ủng hộ việc giảm phần thưởng đặt cược xuống 4 lần và giới hạn tổng số ETH đặt cược xuống còn 6,25 triệu. Đúng hơn, nó chỉ ra một đặc tính quan trọng mà một hệ thống đặt cược hoạt động tốt nên có: cụ thể là, những người được ủy quyền nên làm điều gì đó thực sự quan trọng. Hơn nữa, sẽ không sao nếu người được ủy quyền được thúc đẩy hành động đúng đắn ở mức độ lớn bởi áp lực và lòng vị tha của cộng đồng; xét cho cùng, đó là động lực chính thúc đẩy mọi người tham gia theo những cách tăng cường bảo mật phi tập trung (nhưng nỗ lực cao hơn) thay vì những cách đe dọa an ninh tập trung (nhưng tốn ít nỗ lực hơn) ngày nay.

Nếu người được ủy quyền có thể có một vai trò có ý nghĩa thì vai trò đó có thể là gì?

Tôi thấy hai loại câu trả lời:

  • Lựa chọn đại biểu: đại biểu có thể chọn nhà khai thác nút mà họ ủy quyền cổ phần của mình. Những người vận hành nút sẽ có “trọng số” trong sự đồng thuận tỷ lệ thuận với tổng số cổ phần được ủy quyền cho họ. Lựa chọn đại biểu ngày nay đã tồn tại ở dạng giới hạn, theo nghĩa là người nắm giữ rETH hoặc stETH có thể rút ETH của họ và chuyển sang một nhóm khác, nhưng tính khả dụng thực tế của lựa chọn đại biểu có thể được cải thiện đáng kể.
  • Tham gia đồng thuận: người ủy quyền có thể được cung cấp tùy chọn đảm nhận vai trò đồng thuận, điều này sẽ “nhẹ hơn” so với đặt cược toàn bộ và không phải chịu thời gian rút tiền dài và giảm thiểu rủi ro, nhưng vẫn có chức năng kiểm tra các nhà khai thác nút. Nhiều người được ủy quyền sẽ không muốn làm điều này và muốn giao diện đơn giản nhất là giữ ERC20 và không làm gì khác, nhưng một số người sẽ chọn tùy chọn này.

Mở rộng quyền lựa chọn đại biểu

Có ba cách để mở rộng quyền lựa chọn đại biểu:

  • Công cụ bỏ phiếu tốt hơn trong nhóm
  • Cạnh tranh nhiều hơn giữa các nhóm
  • Phái đoàn được tôn trọng

Việc bỏ phiếu trong các nhóm ngày nay không thực sự tồn tại: trong Rocket Pool, bất kỳ ai cũng có thể trở thành nhà điều hành nút và ở Lido, chính những người nắm giữ LDO sẽ bỏ phiếu chứ không phải những người nắm giữ ETH. Lido có một đề xuất về quản trị kép LDO + stETH, điều này sẽ giúp những người nắm giữ stETH có tiếng nói theo nghĩa là họ có thể kích hoạt một tiện ích chặn các phiếu bầu mới và do đó ngăn chặn việc thêm hoặc xóa các nhà khai thác nút. Điều đó nói lên rằng, điều này còn hạn chế và có thể mạnh hơn nhiều.

Sự cạnh tranh giữa các nhóm tồn tại ngày nay, nhưng còn yếu. Thách thức chính là mã thông báo đặt cược của nhóm đặt cược nhỏ hơn (i) kém thanh khoản hơn, (ii) khó tin cậy hơn và (iii) ít được ứng dụng hỗ trợ hơn.

Chúng ta có thể cải thiện hai vấn đề đầu tiên bằng cách giới hạn các hình phạt chém ở mức nhỏ hơn, chẳng hạn như. 2 hoặc 4 ETH. Số ETH còn lại (không thể chia nhỏ) sau đó có thể được gửi và rút một cách an toàn ngay lập tức, tạo LST dựa trên chuyển đổi hai chiều ETH đó với ETH ngay cả đối với các nhóm nhỏ nhất. Chúng tôi có thể cải thiện vấn đề thứ ba bằng cách tạo hợp đồng phát hành trung tâm cho LST - hơi giống với ERC-4337ERC-6900 cho ví, để chúng tôi có thể đảm bảo rằng mọi mã thông báo đặt cược được phát hành thông qua hợp đồng đó đều an toàn. Các ứng dụng (ví dụ: phiên bản RAI hỗ trợ ETH đặt cược) có thể được khuyến khích mạnh mẽ để hỗ trợ tất cả các mã thông báo đặt cược được phát hành thông qua cơ quan đăng ký này.

Ủy quyền được quy định hiện không tồn tại trong giao thức nhưng có khả năng có thể được giới thiệu. Nó sẽ liên quan đến logic tương tự như các ý tưởng ở trên, nhưng được triển khai ở cấp độ giao thức. Xem bài đăng này để biết những ưu và nhược điểm của việc cất giữ mọi thứ.

Tất cả những ý tưởng này đều là sự cải tiến so với hiện trạng, nhưng có giới hạn về mức độ lợi ích mà chúng có thể mang lại. Việc quản lý bỏ phiếu bằng mã thông báo thật tệ hại và cuối cùng thì bất kỳ hình thức lựa chọn đại biểu không được khuyến khích nào cũng chỉ là một loại bỏ phiếu bằng mã thông báo; đây là nguyên nhân chính khiến tôi khó chịu với bằng chứng cổ phần được ủy quyền kể từ đầu. Do đó, việc nghĩ đến việc tạo điều kiện cho các hình thức tham gia đồng thuận mạnh mẽ hơn có vẻ cũng có giá trị.

Sự tham gia đồng thuận

Có những giới hạn đối với cách tiếp cận hiện tại đối với việc đặt cược một mình, ngay cả khi không tính đến các vấn đề hiện tại xung quanh việc đặt cược thanh khoản. Giả sử tính hữu hạn của một vị trí, các ước tính tốt nhất của chúng tôi đề xuất giới hạn ~ 100k - 1M chữ ký BLS có thể được xử lý trên mỗi vị trí và điều đó giả định thời gian của vị trí tăng đáng kể. Ngay cả khi chúng tôi sử dụng SNARK đệ quy để tổng hợp chữ ký, trách nhiệm ký kết (cho mục đích cắt giảm) yêu cầu phải có một trường bit về những người đã tham gia cho mỗi chữ ký. Nếu Ethereum trở thành một mạng quy mô toàn cầu, thì thậm chí bằng cách nào đó sử dụng toàn bộ danksharding để lưu trữ các bitfield cũng sẽ không đủ: 16 MB mỗi khe sẽ chỉ hỗ trợ ~64 triệu người đặt cọc.

Ở đây, từ góc độ đó, cũng có giá trị trong việc chia đặt cược thành một cấp có thể cắt nhỏ có độ phức tạp cao hơn, hoạt động ở mọi vị trí nhưng có lẽ chỉ có 10.000 người tham gia và một cấp có độ phức tạp thấp hơn đôi khi chỉ được gọi để tham gia. Cấp độ phức tạp thấp hơn có thể được miễn hoàn toàn việc cắt giảm hoặc có thể ngẫu nhiên cung cấp cho những người tham gia cơ hội tạm thời (tức là. đối với một vài vị trí) gửi tiền và có thể bị cắt giảm.

Trong thực tế, điều này có thể được thực hiện bằng cách<a href="https://notes.ethereum.org/ @mikeneuder /eip-7251-faq">gây quỹ giới hạn số dư của trình xác thực và sau đó triển khai ngưỡng số dư (ví dụ: 2048 ETH) để xác định trình xác nhận hiện tại nào có cấp độ phức tạp cao hơn và thấp hơn.

Dưới đây là một số ý tưởng về cách hoạt động của những vai trò đặt cược nhỏ này:

  • Mỗi vị trí, 10000 người đặt cược nhỏ được chọn ngẫu nhiên và họ có thể đăng nhập vào những gì họ nghĩ là người đứng đầu của vị trí đó. Quy tắc lựa chọn ngã ba LMD GHOST được chạy bằng cách sử dụng các cổ phần nhỏ làm đầu vào. Nếu lựa chọn phân nhánh do người đặt cược nhỏ điều khiển và lựa chọn phân nhánh do nhà điều hành nút điều khiển khác nhau, thì ứng dụng khách của người dùng sẽ không chấp nhận bất kỳ khối nào là đã hoàn tất và hiển thị lỗi. Điều này buộc cộng đồng phải hòa giải tình hình.
  • Người được ủy quyền có thể gửi một giao dịch tuyên bố với mạng rằng họ đang trực tuyến và sẵn sàng đóng vai trò là người đặt cọc nhỏ trong giờ tiếp theo. Để một tin nhắn (chặn hoặc chứng thực) từ một nút được tính, cả nút và người được ủy quyền được chọn ngẫu nhiên đều phải đăng xuất.
  • Người được ủy quyền có thể gửi một giao dịch tuyên bố với mạng rằng họ đang trực tuyến và sẵn sàng đóng vai trò là người đặt cọc nhỏ trong giờ tiếp theo. Mỗi kỷ nguyên, 10 người ủy quyền ngẫu nhiên được chọn làm nhà cung cấp danh sách đưa vào và 10000 người khác được chọn làm người bỏ phiếu. Đây là k vị trí được chọn trước và có cửa sổ k vị trí để xuất bản thông báo trên chuỗi xác nhận rằng chúng đang trực tuyến. Mỗi nhà cung cấp danh sách bao gồm đã chọn đã được xác nhận có thể xuất bản một danh sách bao gồm và một khối không hợp lệ trừ khi đối với mỗi danh sách bao gồm, nó (i) nó chứa các giao dịch trong danh sách bao gồm đó hoặc (ii) nó chứa phiếu bầu từ 1/2 số phiếu được chọn cử tri cho thấy rằng danh sách bao gồm không có sẵn.

Các vai trò đặt cược nhỏ này đều có điểm chung là chúng không liên quan đến việc tham gia tích cực vào từng vị trí, không thể bị cắt (và do đó có rủi ro quản lý khóa rất thấp) và rất “nhẹ nhàng” theo nghĩa là chúng thậm chí không yêu cầu nút đầy đủ để chạy. Chỉ xác minh lớp đồng thuận là đủ. Do đó, chúng có thể được triển khai thông qua các ứng dụng hoặc plugin trình duyệt chủ yếu là thụ động và có chi phí tính toán rất thấp, yêu cầu phần cứng hoặc yêu cầu bí quyết kỹ thuật, thậm chí không cần giả định những tiến bộ kỹ thuật như ZK-EVM.

Tất cả các vai trò đặt cược nhỏ này đều có một mục tiêu chung: chúng ngăn chặn phần lớn 51% các nhà khai thác nút tham gia kiểm duyệt giao dịch. Điều thứ nhất và thứ hai cũng ngăn cản đa số tham gia vào việc đảo ngược mục đích cuối cùng. Phần thứ ba tập trung trực tiếp hơn vào kiểm duyệt, mặc dù nó dễ bị tổn thương hơn trước khả năng đa số nhà điều hành nút cũng sẽ chọn kiểm duyệt các thông báo xác nhận của nhà cung cấp danh sách đưa vào.

Những ý tưởng này được viết từ góc độ của một giải pháp đặt cược hai tầng được quy định cụ thể được triển khai trong giao thức, nhưng chúng cũng có thể được triển khai dưới dạng các tính năng của nhóm đặt cược. Dưới đây là một số ý tưởng triển khai cụ thể:

Kết luận

Nếu thực hiện đúng, việc điều chỉnh thiết kế đặt cược có thể giải quyết hai con chim bằng một hòn đá:

  1. Mang đến cho những người không có đủ nguồn lực hoặc khả năng đặt cược một mình ngày hôm nay một cơ hội tham gia đặt cược để nắm giữ nhiều quyền lực hơn trong tay họ: cả (i) quyền chọn nút nào họ đang hỗ trợ và (ii) quyền tham gia tích cực vào sự đồng thuận theo một cách nào đó nhẹ hơn hoạt động của nút đặt cược đầy đủ nhưng vẫn có ý nghĩa. Không phải tất cả những người tham gia sẽ chọn một hoặc cả hai lựa chọn, nhưng bất kỳ lựa chọn nào cũng sẽ cải thiện đáng kể mọi thứ so với hiện trạng.
  2. Giảm số lượng chữ ký mà lớp đồng thuận Ethereum cần xử lý trong mỗi vị trí, ngay cả trong chế độ cuối cùng một vị trí, xuống con số nhỏ hơn như ~ 10.000. Điều này cũng sẽ hỗ trợ phân cấp, bằng cách giúp mọi người chạy nút xác thực dễ dàng hơn nhiều.

Đối với nhiều giải pháp trong số này, có nhiều lớp trừu tượng khác nhau nơi giải pháp cho vấn đề có thể tồn tại: quyền được cấp cho người dùng trong giao thức nhóm đặt cược, lựa chọn của người dùng giữa các giao thức nhóm đặt cược và lưu trữ trong giao thức. Lựa chọn này cần được xem xét cẩn thận và việc lưu giữ khả thi ở mức tối thiểu, giảm thiểu cả độ phức tạp của giao thức và mức độ thay đổi đối với tính kinh tế của giao thức trong khi vẫn đạt được mục tiêu mong muốn, nói chung là tốt nhất.

Tuyên bố từ chối trách nhiệm:

  1. Bài viết này được in lại từ [ <a href="https://notes.ethereum.org/@vbuterin/stake_2023_10"> notes.ethereum.org ]. Tất cả bản quyền thuộc về tác giả gốc [notes.ethereum.org]. Nếu có ý kiến phản đối việc tái bản này, vui lòng liên hệ với nhóm Gate Learn , họ sẽ xử lý kịp thời.
  2. Tuyên bố miễn trừ trách nhiệm pháp lý: Các quan điểm và ý kiến trình bày trong bài viết này chỉ là của tác giả và không cấu thành bất kỳ lời khuyên đầu tư nào.
  3. Việc dịch bài viết sang các ngôn ngữ khác được thực hiện bởi nhóm Gate Learn. Trừ khi được đề cập, việc sao chép, phân phối hoặc đạo văn các bài viết đã dịch đều bị cấm.
Bắt đầu giao dịch
Đăng ký và giao dịch để nhận phần thưởng USDTEST trị giá
$100
$5500