Tiêu đề gốc: Kỷ nguyên và vị trí hoàn toàn: cách giúp người dùng Ethereum có thời gian xác nhận giao dịch nhanh hơn
Tác giả gốc: Vitalik Buterin
Bản tổng hợp gốc: Luffy, Tin tức tầm nhìn xa
Một tính năng thiết yếu 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. Ethereum ngày nay đã đạt được tiến bộ vượt bậc so với 5 năm trước. Nhờ thời gian tạo khối ổn định sau khi sáp nhập EIP-1559 và PoS, các giao dịch do người dùng gửi trên L1 có thể nhận được trong vòng 5-20 giây. kinh nghiệm thanh toán thẻ Tuy nhiên, trải nghiệm người dùng Ethereum vẫn cần cải thiện hơn nữa, vì một số ứng dụng yêu cầu độ trễ giao dịch hàng trăm mili giây hoặc thậm chí ít hơn. Bài viết này sẽ giới thiệu một số giải pháp thiết thực để tăng tốc thời gian xác nhận giao dịch Ethereum.
Sự đồng thuận Gasper của Ethereum hiện áp dụng kiến trúc slot và epoch. Cứ sau 12 giây (độ dài của một vị trí), một tập hợp con người xác thực sẽ bỏ phiếu cho khối mới nhất của chuỗi khối. Trong vòng 32 vị trí (6,4 phút, một kỷ nguyên có 32 vị trí), tất cả người xác thực sẽ có cơ hội bỏ phiếu một lần. Những phiếu bầu này sau đó được diễn giải lại dưới dạng thông điệp trong thuật toán đồng thuận giống PBFT, cung cấp một đảm bảo kinh tế rất nghiêm ngặt được gọi là tính hữu hạn sau hai kỷ nguyên (12,8 phút).
Trong vài năm qua, chúng tôi ngày càng không hài lòng với cách tiếp cận này. Những lý do chính là: (i) phức tạp, có nhiều lỗi tương tác giữa cơ chế bỏ phiếu theo từng vị trí và cơ chế quyết định cuối cùng theo từng kỷ nguyên; (ii) 12,8 phút là quá dài và không ai muốn chờ đợi; dài thế.
Tính hữu hạn của một vị trí (SSF) thay thế kiến trúc này bằng một cơ chế tương tự như cơ chế đồng thuận Tendermint, trong đó khối N được hoàn thành trước khi khối N+1 được tạo. Sự khác biệt chính so với Tendermint là chúng tôi giữ lại cơ chế "rò rỉ không hoạt động", cho phép chuỗi khối tiếp tục chạy và phục hồi nếu hơn 1/3 số trình xác thực ngoại tuyến.

Thiết kế sơ đồ cuối cùng một ô blockquote>
Thách thức chính với SSF là nó dường như ngụ ý rằng mỗi người đặt cược Ethereum cần xuất bản hai tin nhắn cứ sau 12 giây, đây là một vấn đề lớn đối với blockchain. Có một số ý tưởng thú vị để giảm thiểu điều này, bao gồm đề xuất Orbit SSF gần đây (https://ethresear.ch/t/orbit-ssf-solo-stake-friend-validator-set-management-for-ssf/19928). Mặc dù vậy, giải pháp này có thể cải thiện đáng kể trải nghiệm người dùng bằng cách tăng tốc độ "cuối cùng" nhưng không rút ngắn thời gian người dùng cần chờ 5-20 giây.
Xác nhận trước Rollup
Trong vài năm qua, Ethereum đã đi theo Rollup lộ trình tập trung thiết kế lớp cơ sở Ethereum (L1) xung quanh việc hỗ trợ tính khả dụng của dữ liệu và các tính năng khác. Các tính năng này được sử dụng bởi các giao thức L2 như Rollup (cũng như Validiums và Plasmas), có thể cung cấp cho người dùng mức độ bảo mật tương tự như Ethereum, nhưng quy mô giao dịch của chúng lớn hơn nhiều so với L1.
Điều này tạo ra sự tách biệt các mối quan tâm trong hệ sinh thái Ethereum: Ethereum L1 có thể tập trung vào khả năng chống kiểm duyệt, độ tin cậy, tính ổn định cũng như duy trì và cải thiện một số chức năng cơ bản Core nhất định, đồng thời L2 có thể tập trung vào trải nghiệm người dùng với sự cân bằng về văn hóa và kỹ thuật khác nhau. Nhưng nếu bạn đi theo con đường này, sẽ có một vấn đề không thể tránh khỏi: L2 tập trung phục vụ những người dùng muốn xác nhận nhanh hơn, trong vòng 5-20 giây.
Cho đến nay, việc tạo ra mạng lưới "sắp xếp phi tập trung" của riêng mình đã trở thành trách nhiệm không thể trốn tránh của L2. Có lẽ cứ sau vài trăm mili giây, các khối được ký bởi một nhóm nhỏ người xác thực mà họ đặt cọc mã thông báo của mình. Cuối cùng, tiêu đề khối của các khối L2 này sẽ được xuất bản lên L1.
Bộ xác thực L2 có thể gian lận: họ có thể ký khối B1 trước, sau đó ký khối B2 xung đột với B1 và gửi nó vào chuỗi trước B1. Nhưng nếu làm vậy, họ sẽ bị phạt và mất tiền đặt cọc. Chúng tôi đã thấy các phiên bản tập trung của phương pháp này trong thực tế, nhưng Rollup đã chậm phát triển mạng lưới đặt hàng phi tập trung. Bạn có thể lập luận rằng việc yêu cầu L2 thực hiện phân loại phi tập trung là một thỏa thuận thô: nó tương đương với việc yêu cầu Rollup thực hiện công việc tương tự như tạo một L1 hoàn toàn mới. Vì một số lý do, nhà nghiên cứu Justin Drake của Ethereum Foundation đã và đang quảng bá một cách để cung cấp cho tất cả các L2 (cũng như L1) quyền truy cập vào cơ chế xác nhận trước Ethereum được chia sẻ: xác nhận trước dựa trên.
Xác nhận trước dựa trê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 sẽ có liên quan đến MEV trở thành những tác nhân rất phức tạp (xem Đây lời giải thích của tôi về MEV, cũng xem đề xuất). Phương pháp xác nhận trước dựa trên khai thác sự phức tạp này và khuyến khích những người đề xuất phức tạp này cung cấp dịch vụ xác nhận trước.
Ý tưởng cơ bản là tạo ra một giao thức chuẩn hóa mà qua đó người dùng có thể cung cấp với một khoản phí bổ sung, bạn sẽ nhận được đảm bảo ngay lập tức rằng giao dịch của bạn sẽ được đưa vào khối tiếp theo và nhận được thông báo về kết quả thực hiện giao dịch đó. Nếu người đề xuất vi phạm lời hứa với bất kỳ người dùng nào, họ sẽ bị trừng phạt.
Như đã đề cập ở trên, cơ chế xác nhận trước dựa trên cơ sở này sẽ cung cấp sự bảo vệ cho các giao dịch L1. Nếu Bản tổng hợp là "Bản tổng hợp dựa trên" (Lưu ý: Bản tổng hợp dựa trên được Justin Drake đề xuất vào tháng 3 năm 2023 và là Bản tổng hợp trong đó việc đặt hàng được hoàn thành hoàn toàn bởi L1), thì 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 xác nhận trước cho bất kỳ L2 nào.
Thực ra chúng ta đang thấy gì?
Giả sử chúng ta triển khai tính chất cuối cùng của một vị trí. Chúng tôi sử dụng công nghệ như Orbit để giảm số lượng người xác thực ký vào từng vị trí, nhờ đó chúng tôi cũng có thể giảm số tiền cam kết tối thiểu là 32 ETH, một mũi tên trúng hai con chim. Do đó, thời gian của slot có thể tăng dần lên 16 giây. Sau đó, chúng tôi sử dụng xác nhận trước tổng hợp hoặc xác nhận trước dựa trên để cung cấp sự đảm bảo nhanh hơn cho người dùng. Bây giờ chúng ta nhận được gì? Một kiến trúc kỷ nguyên và khe cắm.
Meme "chúng là cùng một biểu đồ" đã bị lạm dụng quá nhiều, vì vậy tôi sẽ chỉ đặt một biểu đồ cũ mà tôi đã tạo vài năm trước cùng với biểu đồ xác nhận trước L2 Together , để mô tả kiến trúc slot-and-epoch của Gasper, tôi hy vọng tôi có thể giải thích nó một cách rõ ràng.
Có một lý do triết học sâu sắc giải thích tại sao mọi người chắc chắn phải sử dụng kiến trúc thời đại và thời điểm: việc đạt được thỏa thuận gần đúng về điều gì đó về cơ bản là mất ít thời gian hơn so với việc đạt được thỏa thuận về điều gì đó với mức độ "cuối cùng về kinh tế" lớn nhất.
Lý do đơn giản là số lượng nút. Mặc dù sự phân cấp/thời gian quyết toán lũy tiến/sự đánh đổi chi phí chung hiện nay trông khiêm tốn hơn nhờ tính năng tổng hợp BLS được tối ưu hóa cực cao và ZK-STARK trong tương lai gần, nhưng về cơ bản, quan điểm sau đây vẫn đúng:
· "Tính nhất quán gần đúng" chỉ yêu cầu một số lượng nhỏ các nút, trong khi tính hữu hạn về mặt kinh tế đòi hỏi một phần đáng kể của tất cả các nút.
· Khi số lượng nút vượt quá một quy mô nhất định, bạn cần dành nhiều thời gian hơn để thu thập chữ ký.
Trong Ethereum hiện tại, vị trí 12 giây được chia thành ba vị trí phụ để (i) xuất bản và phân phối khối, (ii ) Chứng minh (iii) Chứng minh sự tổng hợp Nếu số lượng người chuẩn ít hơn nhiều, chúng ta có thể giảm số lượng này xuống còn hai vị trí phụ và có thời gian là 8 giây. Một yếu tố khác thực sự quan trọng hơn là “chất lượng” của nút. Nếu chúng tôi 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 thỏa thuận gần đúng (và vẫn sử dụng bộ trình xác thực đầy đủ để đạt được kết quả cuối cùng), thì chúng tôi có thể giảm thời gian này xuống còn ~2 giây một cách hợp lý.
Vì vậy, tôi nghĩ (i) kiến trúc slot-and-epoch rõ ràng là chính xác, nhưng (ii) không phải tất cả các kiến trúc slot-and-epoch đều giống nhau , chúng ta cần khám phá không gian thiết kế một cách đầy đủ hơn. Đặc biệt, những kịch bản không đan xen chặt chẽ như của Gasper rất đáng để khám phá.
L2 nên làm gì?
Theo tôi, hiện tại L2 có thể áp dụng 3 chiến lược hợp lý:
· Liệu có nên trình độ kỹ thuật hay trình độ tâm linh đều phải có “cơ sở”. Nói cách khác, L2 là kênh phân phối tốt hơn cho các thuộc tính kỹ thuật của lớp cơ sở Ethereum và giá trị của nó (tính phân cấp cao, khả năng chống kiểm duyệt, v.v.). Ở dạng đơn giản nhất, bạn có thể coi những bản tổng hợp này là "các phân đoạn có thương hiệu", nhưng chúng cũng có thể tham vọng hơn nhiều và chúng thử nghiệm rất nhiều thiết kế máy ảo mới cũng như các cải tiến kỹ thuật khác.
· Trở thành "máy chủ có giàn giáo blockchain" và tận dụng tối đa nó. Nếu bạn bắt đầu với máy chủ, hãy thêm (i) bằng chứng về tính hợp lệ của STARK để đảm bảo rằng máy chủ tuân thủ các quy tắc, (ii) đảm bảo quyền rút lui hoặc ép buộc giao dịch của người dùng và có thể (iii) quyền tự do lựa chọn tập thể, cho dù thông qua lối ra Quy mô lớn được phối hợp hoặc khả năng thay đổi thứ tự thông qua bỏ phiếu, thì bạn đã đạt được rất nhiều lợi ích trên chuỗi trong khi vẫn giữ được phần lớn hiệu quả của máy chủ.
· Một sự thỏa hiệp: một chuỗi khối 100 nút nhanh dựa trên Ethereum để có thêm khả năng tương tác và bảo mật. Đây thực tế là lộ trình hiện tại của nhiều dự án L2.
Đối với một số ứng dụng (chẳng hạn như ENS, kho khóa và một số trường hợp thanh toán), thời gian chặn là 12 giây là đủ. Đối với các ứng dụng yêu cầu thời gian xác nhận ngắn hơn, giải pháp duy nhất là kiến trúc khe và kỷ nguyên. Trong cả ba trường hợp, "epoch" là SSF của Ethereum (có lẽ chúng ta có thể định nghĩa lại từ viết tắt để có nghĩa khác hơn là "single slot", ví dụ: nó có thể là "Secure Speedy Finality"). Nhưng trong ba trường hợp trên, "khe cắm" là khác nhau:
· Kiến trúc khe và kỷ nguyên gốc của Ethereum
· Tiền máy chủ xác nhận
· Xác nhận trước của ủy ban
Một câu hỏi quan trọng là liệu chúng ta có thể xếp thứ gì đó vào danh mục (1) Nó đã hoạt động tốt như thế nào không? Đặc biệt, nếu nó thực sự tốt thì loại (3) dường như ít có ý nghĩa hơn. Danh mục (2) sẽ luôn tồn tại vì mọi thứ “dựa trên” đều không áp dụng cho dữ liệu ngoài chuỗi L2, chẳng hạn như Plasma và Validium. Nhưng nếu kiến trúc slot và epoch gốc của Ethereum có thể được rút ngắn thời gian “khe” (tức là xác nhận trước) xuống còn 1 giây, thì không gian cho danh mục (3) sẽ trở nên nhỏ hơn nhiều.
Ngày nay, chúng ta vẫn chưa có được câu trả lời cuối cùng cho những câu hỏi này. Những người đề xuất chặn sẽ trở nên phức tạp như thế nào? Vẫn còn sự không chắc chắn đáng kể về câu trả lời cho câu hỏi quan trọng này. Các thiết kế như Orbit SSF rất mới lạ, do đó không gian thiết kế của các giải pháp khe và kỷ nguyên như Orbit SSF đòi hỏi phải khám phá nhiều hơn. Càng có nhiều lựa chọn, chúng tôi càng có thể làm tốt hơn cho người dùng trên L1 và L2, đồng thời chúng tôi càng tạo điều kiện dễ dàng hơn cho các nhà phát triển L2.
Liên kết gốc
Chào mừng bạn tham gia cộng đồng chính thức của BlockBeats:
Nhóm Telegram đăng ký: https://t.me/theblockbeats
Nhóm Telegram thảo luận: https://t.me/BlockBeats_App
Tài khoản Twitter chính thức: https://twitter.com/BlockBeatsAsia