Vitalik提出Epoch and slot方案:为ETH提供更快交易确认时间,提升终端用户体验

Tác giả gốc | Vitalik

Biên dịch | Odaily hành tinh báo cáo sao Hải Nam

Một trong những thuộc tính quan trọng của trải nghiệm người dùng blockchain tốt là thời gian xác nhận giao dịch nhanh chóng. Hiện nay, Ethereum đã có nhiều cải tiến so với 5 năm trước. Nhờ vào EIP-1559 và việc chuyển đổi sang PoS (The Merge), thời gian khối ổn định, giao dịch được gửi trên L1 thường có thể được xác nhận trong khoảng 5-20 giây, tương đương trải nghiệm thanh toán bằng thẻ tín dụng. Tuy nhiên, việc cải thiện trải nghiệm người dùng hơn nữa là có giá trị, một số ứng dụng thậm chí yêu cầu độ trễ chỉ trong vài trăm mili giây hoặc thậm chí ngắn hơn. Bài viết này sẽ thảo luận về một số lựa chọn thực tế về Ethereum (cải thiện thời gian xác nhận giao dịch).

Tổng quan về ý tưởng và công nghệ hiện có

Độ tin cậy cuối cùng của một khe cắm

Hiện tại, Ethereum sử dụng kiến trúc Slot và Epoch trong thuật toán đồng thuận Gasper. Mỗi 12 giây sẽ có một Slot, một phần của người xác thực sẽ bỏ phiếu cho đầu mối chuỗi, và trong 32 Slot (tương đương 6,4 phút), tất cả người xác thực đều có cơ hội bỏ phiếu một lần. Những phiếu bỏ này sau đó được chuyển đổi thành tin nhắn tương tự như thuật toán đồng thuận PBFT, và sau hai Epoch (tương đương 12,8 phút), đảm bảo một sự tin cậy kinh tế rất mạnh gọi là tính cuối cùng.

Trong vài năm qua, chúng tôi ngày càng không hài lòng với phương pháp hiện tại. Lý do chính là phương pháp này rất phức tạp, có nhiều lỗi tương tác giữa cơ chế bỏ phiếu từ ngăn đến ngăn và cơ chế độc lập Epoch đến Epoch, thứ hai 12,8 phút quá lâu, không ai muốn chờ đợi lâu như vậy.

Single Slot Finaty (SSF) thay thế kiến trúc này bằng cơ chế tương tự như Tendermint để đạt được sự nhất quán cuối cùng, trong đó khối N được xác định cuối cùng trước khi khối N+1 được tạo ra. Sự khác biệt chính giữa SSF và Tendermint là chúng tôi giữ lại cơ chế rò rỉ không hoạt động, cho phép chuỗi tiếp tục hoạt động và khôi phục khi hơn 1/3 số xác thực viên bị ngắt kết nối.

Thách thức chính với tính cuối cùng của một khe cắm là điều đó có nghĩa là mỗi Ethereum thế chấp cần xuất bản hai tin nhắn cứ sau 12 giây, đây là một tải trọng đáng kể trên chuỗi. Có một số ý tưởng thông minh để giảm bớt vấn đề này, bao gồm cả đề xuất SSF quỹ đạo gần đây. Mặc dù điều này tăng tốc đáng kể "tính cuối cùng" để cải thiện trải nghiệm người dùng, nhưng nó không thay đổi thực tế là người dùng phải đợi 5-20 giây.

Vitalik提出Epoch and slot方案:为ETH提供更快交易确认时间,提升终端用户体验

Xác nhận trước Rollup

Trong vài năm qua, Ethereum đã luôn tuân theo một con đường tập trung vào rollup, thiết kế lớp cơ bản của Ethereum (L1) để hỗ trợ tính khả dụng dữ liệu và các tính năng khác, sau đó các tính năng này có thể được sử dụng bởi các giao thức L2 (như rollups, validiums và plasmas) để cung cấp tính bảo mật cùng cấp với Ethereum trên quy mô lớn hơn cho người dùng.

Điều này dẫn đến sự phân biệt chú ý trong hệ sinh thái Ethereum: Ethereum L1 tập trung vào tính không thể kiểm duyệt, đáng tin cậy, ổn định và duy trì và cải thiện một số chức năng cốt lõi của tầng cơ sở, trong khi L2 tập trung vào việc tiếp cận trực tiếp người dùng thông qua văn hóa và công nghệ khác nhau. Nhưng nếu đi theo con đường này, một vấn đề không thể tránh được đã xuất hiện: L2 mong muốn cung cấp cho người dùng thời gian xác nhận nhanh hơn 5-20 giây.

Đến nay, ít nhất trong lý thuyết, việc tạo ra mạng lưới "Sắp xếp phi tập trung" của riêng mình là trách nhiệm của L2. Một nhóm nhỏ người xác thực có thể ký tên cho một khối mỗi vài trăm mili giây và thế chấp tài sản của họ vào những khối này. Cuối cùng, các phần mềm đầu cuối của các khối L2 này sẽ được phát hành lên L1.

Vitalik提出Epoch and slot方案:为ETH提供更快交易确认时间,提升终端用户体验

Nhưng Nhóm xác thực L2 có thể 'lừa dối': họ có thể ký một khối B1 trước, sau đó ký một khối B2 xung đột và đưa lên chuỗi trước B1. Nhưng nếu họ làm như vậy, họ sẽ bị kiểm tra và mất tài sản thế chấp. Trên thực tế, chúng ta đã thấy các trường hợp thực tế của phiên bản tập trung, nhưng mặt khác, rollup tiến triển chậm trong việc phát triển mạng lưới sắp xếp phi tập trung. Bạn có thể nói rằng yêu cầu tất cả L2 đều thực hiện sắp xếp phi tập trung là không công bằng: chúng ta đang yêu cầu rollup thực hiện công việc gần giống như tạo ra một L1 mới. Do đó, Justin Drake luôn đẩy mạnh một phương pháp để tất cả L2 (cũng như L1) đều có thể sử dụng một cơ chế xác nhận trước chung trên Ethereum: Xác nhận cơ bản.

Xác nhận cơ bản

Phương pháp xác nhận trước dựa trên giả định rằng những người đề xuất Ethereum liên quan đến MEV là những người tham gia phức tạp. Phương pháp dựa trên việc xác nhận trước thông qua khuyến khích những người đề xuất phức tạp này chấp nhận trách nhiệm cung cấp dịch vụ xác nhận trước để tận dụng sự phức tạp này.

Vitalik提出Epoch and slot方案:为ETH提供更快交易确认时间,提升终端用户体验

Phương pháp cơ bản của phương pháp này là tạo ra một giao thức chuẩn hóa, người dùng có thể cung cấp thêm phí để đảm bảo giao dịch sẽ được bao gồm trong khối tiếp theo và có cam kết về kết quả thực hiện giao dịch đó. Nếu người đề xuất vi phạm bất kỳ cam kết nào đối với bất kỳ người dùng nào, họ có thể bị phạt.

Như đã mô tả, cam kết được cung cấp cho giao dịch L1 dựa trên xác nhận trước. Nếu rollups được coi là 'dựa trên', tất cả các khối L2 đều là giao dịch L1, do đó cơ chế tương tự có thể được sử dụng để cung cấp cam kết trước cho bất kỳ L2 nào.

Chúng ta đang thực sự nhìn vào cái gì?

Giả sử chúng tôi thực hiện được sự cuối cùng của từng khe. Chúng tôi sử dụng công nghệ tương tự như Orbit để giảm số lượng người xác thực ký cho mỗi khe, nhưng không giảm quá nhiều, để chúng tôi cũng có thể tiến triển trong mục tiêu quan trọng là giảm thiểu thế chấp tối thiểu 32 ETH. Thời gian khe (slot time) có thể tăng lên 16 giây, sau đó chúng tôi sử dụng xác nhận trước rollup hoặc xác nhận trước cơ bản, để cung cấp xác nhận nhanh hơn cho người dùng. Cuối cùng, chúng tôi thu được cái gì: một kiến trúc epoch-slot.

Vitalik提出Epoch and slot方案:为ETH提供更快交易确认时间,提升终端用户体验

Vitalik提出Epoch and slot方案:为ETH提供更快交易确认时间,提升终端用户体验

Có một lý do triết học sâu sắc tại sao kiến trúc epoch-and-slot dường như khó tránh khỏi: so với việc đạt được sự đồng thuận tối đa về mặt 'cuối cùng kinh tế' về một vấn đề nào đó, thì thời gian cần thiết để đạt được sự đồng thuận xấp xỉ cần ít hơn.

Một nguyên nhân đơn giản là số lượng nút. Mặc dù vì việc tổng hợp BLS và ZK-STARKs sắp xuất hiện, thời gian phi tập trung/độ tin cậy tuyệt đối tuy cũ nhưng hiện nay không thể bỏ qua các lý do sau:

  • "Nhận thức chung gần đúng" chỉ yêu cầu một số lượng nhỏ các nút, trong khi tính cuối cùng về kinh tế yêu cầu hầu hết các nút.
  • Khi số lượng nút vượt qua một mức độ nào đó, bạn sẽ cần mất nhiều thời gian hơn để thu thập chữ ký.

Trong Ethereum ngày nay, vị trí 12 giây được chia thành ba vị trí phụ: Khối Phát hành và Phân phối, Bằng chứng và Tổng hợp Bằng chứng. Nếu số lượng provers giảm đáng kể, chúng ta có thể giảm nó xuống còn hai khe phụ và sử dụng thời gian khe 8 giây. Một yếu tố khác, thực tế hơn, lớn hơn là "chất lượng" của Nút. Một yếu tố lớn hơn nữa là "chất lượng" của Nút. Nếu chúng ta cũng có thể dựa vào một tập hợp con các Nút chuyên biệt để đạt được giao thức gần đúng (và vẫn sử dụng toàn bộ Người xác thực để xác định độ cuối cùng), chúng ta có thể giảm nó xuống còn khoảng 2 giây.

Do đó theo tôi, kiến trúc epoch-and-slot dường như là đúng, nhưng không phải tất cả các kiến trúc epoch-and-slot đều bình đẳng, việc khám phá không gian thiết kế một cách toàn diện hơn là có giá trị. Hướng nghiên cứu đáng xem xét không phải là sự kết hợp chặt chẽ như Gasper, mà là có sự tập trung mạnh mẽ hơn giữa hai cơ chế.

L2 nên làm gì?

Theo tôi, L2 hiện tại có ba chiến lược hợp lý:

  • Về mặt kỹ thuật và tinh thần "dựa trên". Đó là, chúng tối ưu hóa các thuộc tính kỹ thuật của lớp cơ sở của Ethereum và các giá trị của nó (phân cấp cao, kháng kiểm duyệt, v.v.). Ở dạng đơn giản nhất, bạn có thể coi những rollups này là "mảnh thương hiệu", nhưng chúng cũng có thể tham vọng hơn, thử nghiệm rất nhiều với các thiết kế máy ảo mới và các cải tiến kỹ thuật khác.
  • Trở thành một "máy chủ với khung cơ sở dữ liệu blockchain" và tận dụng tối đa nó. Nếu bạn bắt đầu từ máy chủ, sau đó thêm bằng chứng hợp lệ STARK để đảm bảo máy chủ tuân theo các quy tắc; đảm bảo quyền thoát của người dùng hoặc giao dịch bắt buộc; tự do lựa chọn tập thể, thông qua việc thoát hàng loạt được phối hợp hoặc thông qua thay đổi phiếu bầu của người sắp xếp, bạn đã nhận được hầu hết lợi ích của việc đưa lên chuỗi, đồng thời vẫn giữ lại hiệu suất của máy chủ.
  • Phương pháp điều hòa: Một chuỗi nhanh có 100 nút, Ethereum cung cấp tính tương thích và an ninh bổ sung. Đây là lộ trình thực tế của nhiều dự án L2 hiện tại.

Đối với một số ứng dụng như ENS, lưu trữ khóa riêng tư và một số giao thức thanh toán, thời gian khối 12 giây là đủ. Đối với các ứng dụng không phù hợp, cấu trúc epoch-and-slot là giải pháp duy nhất. Trong ba trường hợp, "epoch" là SSF của Ethereum, nhưng slot trong ba trường hợp trên không giống nhau:

  • Kiến trúc epoch-and-slot nguyên gốc của Ethereum
  • Xác nhận trước máy chủ
  • Ủy ban xác nhận trước

Một vấn đề then chốt là chúng ta có thể làm tốt đến đâu trong lớp 1? Đặc biệt là nếu nó trở nên rất tốt, thì cảm giác của ý nghĩa lớp 3 sẽ không còn lớn nữa. Bởi vì tất cả các giải pháp dựa trên "dựa vào" đều không áp dụng cho dữ liệu off-chain như plasmas và validiums, vì vậy lớp 2 sẽ tồn tại mãi mãi. Nếu một kiến trúc epoch-and-slot nguyên bản của Ethereum có thể giảm xuống thời gian slot 1 giây, thì không gian của lớp 3 sẽ trở nên nhỏ hơn nhiều.

Hôm nay, chúng ta còn rất xa với câu trả lời cuối cùng cho những vấn đề này. Một vấn đề then chốt là: người đề xuất khối sẽ trở nên phức tạp đến đâu, điều này vẫn là một lĩnh vực tồn tại một mức độ không chắc chắn khá lớn. Thiết kế như Orbit SSF rất mới lạ, vì vậy việc sử dụng Orbit SSF ví dụ như một phần của không gian thiết kế của epoch-and-slot vẫn đáng để khám phá đầy đủ. Càng nhiều lựa chọn chúng ta có, chúng ta có thể làm tốt hơn cho người dùng L1 và L2, chúng ta có thể đơn giản hóa công việc của các nhà phát triển L2.

Xem bản gốc
  • Phần thưởng
  • Bình luận
  • Chia sẻ
Bình luận
Không có bình luận