Cảnh báo rủi ro: Đề phòng huy động vốn bất hợp pháp dưới danh nghĩa 'tiền điện tử' và 'blockchain'. — Năm cơ quan bao gồm Ủy ban Giám sát Ngân hàng và Bảo hiểm
Tìm kiếm
Đăng nhập
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt
BTC
ETH
HTX
SOL
BNB
Xem thị trường
Một bài viết 20.000 từ: Cuộc tranh luận về bảo mật của Rollups
Foresight News
特邀专栏作者
2023-10-19 13:00
Bài viết này có khoảng 19016 từ, đọc toàn bộ bài viết mất khoảng 28 phút
Bảo mật người dùng và bảo mật chuỗi chéo thực sự là hai mặt của cùng một đồng xu, Rollup chỉ cho phép chuỗi cung cấp các quy tắc xác nhận và bảo mật của nó có thể đạt đến bảo mật của chuỗi chính.

Tiêu đề ban đầu: Do Rollups Kế thừa Bảo mật?

Tác giả gốc: Jon Charbonneau

Biên soạn gốc: Frank, Tin tức tầm nhìn xa

giới thiệu

Yêu hay ghét nó, Twitter có lẽ sẽ không bao giờ ngừng tranh luận về việc L2 hay Rollup kế thừa bảo mật.

Mặc dù hầu hết các cuộc tranh luận đều là những cuộc chiến về ngữ nghĩa khó phân biệt, nhưng nếu bạn có thể thu hẹp nó lại, thì những điểm cơ bản sẽ có giá trị vì chúng đi vào trọng tâm của câu hỏi khi nào, ở đâu và tại sao Rollup lại có ý nghĩa.

L2 có thể mở rộng có loại bỏ sự cần thiết của L1 không? Có thể biến L1 như Solana thành L2 được không?

Những lập luận này phần lớn tập trung vào các vấn đề an toàn. Thật không may, định nghĩa về bảo mật ở đây rất khó nắm bắt. Chúng ta thường sử dụng thuật ngữ này một cách lỏng lẻo và hầu hết mọi người đều có ý tưởng sơ bộ về những gì chúng ta đang nói đến nhưng không hoàn toàn chắc chắn. Chúng tôi sẽ phân tích chi tiết về bảo mật trên các kiến ​​trúc khác nhau tại đây.

Định nghĩa từ thông dụng

Rollup

Tôi đã sử dụng nó trước đâyMustafaĐịnh nghĩa sau đây về: “Bản tổng hợp là một blockchain xuất bản các khối của nó sang một blockchain khác và kế thừa sự đồng thuận và tính khả dụng của dữ liệu (DA) của blockchain đó.”

Sau đây làJames PrestwichMột định nghĩa tổng quát hơn được đưa ra: Rollup là một cách để chọn tham gia một cơ chế đồng thuận khác và giữ lại trạng thái superset thông qua chức năng chuyển đổi trạng thái tùy chỉnh.

Cả hai đều không yêu cầu cầu nối xác thực và khả năng xây dựng cầu nối chuỗi chéo với các giả định về độ tin cậy tối thiểu là lợi ích chính của Rollup, nhưng điều quan trọng là phải phân tích chúng riêng lẻ.

Chúng ta có thể xem xét các tiêu chí Tổng hợp sau:

  • Rollup là một hệ thống có trạng thái (chẳng hạn như blockchain) có nguồn gốc bằng cách chạy chức năng chuyển đổi trạng thái tùy chỉnh (STF) trên dữ liệu đầu vào trên chuỗi chính (lớp DA).

  • Tất cả dữ liệu đầu vào (tức là dữ liệu giao dịch hoàn chỉnh hoặc sự khác biệt về trạng thái) được sử dụng để lấy trạng thái được xác nhận cuối cùng (tức là Tổng hợp) của chuỗi từ xa đều được xác nhận trên chuỗi chính.

  • Vì trạng thái tổng hợp bắt nguồn từ hàm chuyển đổi trạng thái (STF) chạy trên dữ liệu trên chuỗi chính, nên tính hợp lệ của quá trình tổng hợp phụ thuộc vào tính hợp lệ của chuỗi chính. Sau đó, nút Rollup phải xác minh đầy đủ tính đồng thuận và tính hợp lệ của chuỗi chính (hoặc đưa ra giả định đa số trung thực về chuỗi chính);

Nút Rollup xác định trạng thái của Rollup trên kết quả đồng thuận của chuỗi chính bằng cách áp dụng chức năng chuyển đổi trạng thái (STF) của chính nó (chẳng hạn như chuỗi chính xác nhận thứ tự và tính sẵn có của các khối dữ liệu).

Cầu chéo

Cầu nối chuỗi chéo là một hệ thống cho phép hai chuỗi khối giao tiếp với nhau. Chuỗi A (chuỗi mục tiêu) cần được thuyết phục rằng có điều gì đó đã xảy ra trên chuỗi B (chuỗi nguồn) và ngược lại. Lý tưởng nhất là chúng tôi muốn giao tiếp này diễn ra hai chiều, với các thuộc tính bảo mật liên quan chặt chẽ (ví dụ: độ tin cậy cao rằng thông báo là hợp lệ, chuỗi nguồn sẽ không bị thu hồi, v.v.).

Về cơ bản, một cầu nối chuỗi chéo hoạt động như một “người quan sát” đối với một chuỗi khối khác (giống như bất kỳ người dùng thông thường nào khác). Cầu nối chuỗi chéo thực hiện một quy tắc xác nhận nhất định theo đó nó bị thuyết phục về trạng thái của chuỗi được kết nối (ví dụ: có bao nhiêu khối Ethereum phải vượt qua trước khi đầu vào chuyển khoản có thể được chấp nhận).

  • Các cầu nối chuỗi chéo truyền thống thường chạy các nút ánh sáng xác thực đồng thuận trên chuỗi của chuỗi nguồn (tức là họ tin tưởng bất kỳ điều gì được ký kết bởi sự đồng thuận đa số);

  • Cầu nối chuỗi chéo có thể cung cấp các thuộc tính bảo mật mạnh hơn bằng cách hoạt động như các nút ánh sáng của trình xác thực đầy đủ (tức là thêm Lấy mẫu tính khả dụng của dữ liệu (DAS) + Bằng chứng xác thực/thất bại). Ví dụ: trình xác thực của chuỗi có thể cần chạy trên tất cả các nút ánh sáng DAS được kết nối với chuỗi, đây là một giải pháp thay thế nhẹ hơn so với việc yêu cầu trình xác thực chạy các nút đầy đủ được kết nối với chuỗi;

  • Cầu nối chuỗi chéo Rollup cũng có thể duy trì hoạt động và khả năng chống tổ chức lại của chuỗi chính (vì Rollup phải chia sẻ sự đồng thuận của chuỗi chính);

Cầu từ chuỗi chính→Cuộn lên

Hướng này rất đơn giản vì nút Rollup sẽ xác minh hoàn toàn chuỗi chính.

Các nút cuộn lên biết mọi thứ xảy ra trên chuỗi chính, vì vậy chúng biết khi nào các giao dịch cầu nối chuỗi chéo xảy ra. Các nút đầy đủ của Ethereum Rollup hiện tại cũng phải chạy các nút đầy đủ cho chính lớp cơ sở Ethereum.

Lưu ý rằng các nút Rollup cũng có thể được thay đổi để chạy các nút ánh sáng xác thực đầy đủ của chuỗi chính của chúng nếu được hỗ trợ. Hãy xem xét một ví dụ giả định trong đó Ethereum đã thực hiện đầy đủ quá trình nâng cấp sau:

  • Ethereum thực thi các khối với bằng chứng hợp lệ (nghiên cứu zkEVM trên lớp cơ sở đang diễn ra);

  • Ethereum đã triển khai DAS hoàn chỉnh, vì vậy các nút có thể lấy mẫu DA;

  • Lớp thực thi Ethereum xuất bản dữ liệu của nó dưới dạng các đốm màu cho lớp dữ liệu, giống như bất kỳ Bản tổng hợp nào khác trên Ethereum (ví dụ: dữ liệu lớp thực thi của Celestia sẽ được xuất bản lên lớp DA của nó, vì vậy nút DAS sẽ kiểm tra dữ liệu Tổng hợp và tính khả dụng của chính Celestia của lớp thực thi);

  • Ethereum cung cấp đầy đủ bằng chứng về sự đồng thuận thay vì dựa vào các ủy ban đồng bộ hóa (ví dụ: thông qua việc tích hợp các trình xác nhận, tổng hợp chữ ký tốt hơn, có thể có bằng chứng về sự đồng thuận của ZK, v.v.);

Bây giờ, giả sử bạn muốn chạy một nút đầy đủ cho một Rollup dựa trên Ethereum, để tuân theo chuỗi Rollup hợp lệ, bạn phải hiểu chuỗi chuẩn Ethereum, yêu cầu kiểm tra tính đồng thuận và tính hợp lệ của chính Ethereum:

  • Sự đồng thuận của Ethereum – bất kỳ ứng dụng khách nút nhẹ nào cũng có thể theo dõi sự đồng thuận được ký dưới dạng blockchain, tiêu đề khối;

  • Lớp thực thi DA của riêng Ethereum – Các nút cuộn lên lấy mẫu lớp DA của Ethereum, kiểm tra tính khả dụng của dữ liệu Cuộn lên và dữ liệu lớp thực thi của chính Ethereum (lưu ý rằng các nút DAS vẫn đưa ra một số giả định bổ sung về các nút đầy đủ, chúng ta sẽ xem sau);

  • Tính hợp lệ ở trạng thái riêng của Ethereum—với zkEVM, mọi khối Ethereum đều có chứng chỉ hợp lệ;

Các nút tổng hợp phải kiểm tra tính hợp lệ trạng thái và DA của lớp thực thi của chính Ethereum, vì đây là các điều kiện hợp lệ của các khối Ethereum. Nút Rollup cần biết rằng nó không chỉ theo dõi Ethereum được ký đồng thuận mà còn là tiêu đề khối hợp lệ. Ví dụ: họ có thể vô tình theo dõi một khối Ethereum được ký theo sự đồng thuận nhưng không hợp lệ (ví dụ: nó đã tạo ra một lượng lớn ETH).

Nếu lớp thực thi cơ sở tự xuất bản dữ liệu của mình lên lớp DA (giống như các bản tổng hợp khác) và thêm bằng chứng xác thực hoặc lỗi, thì nó sẽ trở thành một bản tổng hợp tích hợp sẵn.

Từ Rollup → Cầu xích chính

Hướng đi này phức tạp vì chuỗi chính không biết trạng thái của Rollup và STF theo mặc định (nghĩa là các nút Ethereum không cần chạy các nút Rollup). Để làm cho chuỗi chính tin tưởng vào trạng thái của Rollup, bạn có thể triển khai logic của Rollup trong hợp đồng thông minh được triển khai trên chuỗi chính (nghĩa là hợp đồng cầu nối xác minh của rollup). Hợp đồng thông minh kiểm tra tính hợp lệ của trạng thái DA và Rollup.

Một lần nữa, cây cầu xuyên chuỗi này là tùy chọn. Hợp đồng thông minh trên chuỗi chính được sử dụng để làm cho tất cả các nút chuỗi chính tin vào tính hợp lệ của Rollup, cho phép giao tiếp hai chiều với các giả định đáng tin cậy.

Bản tổng hợp, bộ đồng xử lý và ý định

Như đã thảo luận, Rollups cũng lưu một số trạng thái của riêng chúng (trạng thái của Rollup) ngoài trạng thái của chuỗi chính của chúng (ví dụ: trạng thái của Ethereum). Vậy CoW Swap có trạng thái riêng và không thuộc trạng thái Ethereum không? Nếu vậy thì nó có vẻ giống như một Rollup. Nếu không thì nó có thể là Bộ đồng xử lý.

Tuy nhiên, ngay cả vấn đề này cũng không đơn giản như người ta tưởng:

Thay vào đó, bạn có thể nghĩ rằng yếu tố khác biệt là sự tồn tại của trạng thái:

Nếu CoW Swap cho phép những người tham gia cụ thể cung cấp cho người dùng các xác nhận trước nhanh chóng (nhanh hơn thời gian chặn của Ethereum) và cam kết các đơn đặt hàng bao gồm xử lý hàng loạt - bởi vì thời gian xử lý hàng loạt của Ethereum nhanh hơn hầu hết những gì người dùng muốn là lâu hơn, thì đó cũng là một Rollup Hiện nay?

Chris GoesChủ đề này đã được thảo luận trong một bài phát biểu tại Hội nghị thượng đỉnh về tính mô-đun. Đầu tiên, ông đưa ra định nghĩa gần đúng về ý định (Ý định): Cam kết về chức năng ưu tiên đối với một không gian trạng thái hệ thống nhất định.

Lưu ý những điểm tương đồng giữa độ phân giải một phần (ý định phù hợp) và sắp xếp tổng hợp. Nhà điều hành lấy tin nhắn đã ký ngoài chuỗi của người dùng → xuất bản dữ liệu kết quả lên chuỗi chính.

  • Các ứng dụng dựa trên mục đích - các thay đổi trạng thái kết quả được giải quyết trên chuỗi (ví dụ: trong ví dụ Hoán đổi CoW, ứng dụng nằm trên chuỗi cơ bản, do đó mã thông báo được đổi ở đó);

  • Ứng dụng tổng hợp - sử dụng dữ liệu được gửi tới chuỗi chính để tính toán các thay đổi trạng thái do Rollup tạo ra;

Kiến trúc tập trung vào mục đích và kiến ​​trúc tập trung vào tổng hợp đạt được các mục tiêu tương tự từ các hướng đối lập nhau. Cách tiếp cận tập trung vào mục đích giải quyết rộng rãi vấn đề này từ góc độ người dùng và ứng dụng, còn cách tiếp cận tập trung vào tổng hợp giải quyết rộng rãi vấn đề này từ góc độ của các chuỗi khối khác nhau.

Ở đây, việc thiết lập ranh giới phân biệt cụ thể không quan trọng. Hơn nữa, chúng tôi nhận thấy rằng Rollup thực sự không khác mấy so với các ứng dụng mà chúng tôi quen sử dụng với tính năng so khớp ý định ngoài chuỗi!

Bạn dựa vào những người tham gia ngoài chuỗi (người sắp xếp so với người giải/người điền, v.v.) để có một số đảm bảo yếu hơn, chẳng hạn như cung cấp khả năng thực thi tốt nhất và trải nghiệm người dùng tốt → xác định kết quả dựa trên dữ liệu được đăng lên chuỗi chính. Tuy nhiên, họ không giữ tiền của bạn an toàn.

Khi việc tính toán ngoài chuỗi có thể kiểm chứng ngày càng trở nên quan trọng, ranh giới giữa hai điều này có thể trở nên mờ nhạt:

Nếu bạn muốn trình giải quyết ý định hoặc trình sắp xếp tổng hợp ít được tin cậy hơn...

Chuỗi khối mô-đun so với chuỗi khối nguyên khối

Chuỗi khối nguyên khối (còn gọi là chuỗi khối tích hợp) thường được định nghĩa là một chuỗi tích hợp theo chiều dọc tất cả các chức năng cốt lõi (tức là đồng thuận, DA và thực thi). Họ chịu trách nhiệm hoàn toàn về vấn đề bảo mật của chính mình, trong đó Solana và Cosmos Hub là những ví dụ điển hình.

Các lớp DA (chẳng hạn như Ethereum và Celestia) thường được gọi là các chuỗi khối mô-đun vì chúng thuê Rollup thực hiện việc thực thi, nhưng điều này không hoàn toàn chính xác. Họ cũng chịu trách nhiệm độc lập về sự đồng thuận, DA và việc thực thi của chính họ.

Ngay cả việc thực thi Celestia cũng sẽ bị hạn chế (ví dụ: chuyển khoản, đặt cược, chuỗi chéo). Tương tự như vậy, nếu ai đó khởi chạy Rollup trên Solana, nó sẽ không trở thành một chuỗi khối mô-đun một cách kỳ diệu.

Vì vậy, khi bạn nghe mọi người gọi các chuỗi như Ethereum hay Celestia là chuỗi khối mô-đun, hãy nhận ra rằng đây là một sự khác biệt thực tế hơn là một sự phân biệt kỹ thuật nghiêm ngặt. Cả hai thường tối ưu hóa kiến ​​trúc của mình để hỗ trợ Rollup. Những bản tổng hợp này dự kiến ​​sẽ xử lý phần lớn việc thực hiện giao dịch trong phạm vi của chúng.

Ngay cả Rollup cũng không nhất thiết phải hoàn toàn mô-đun - trình sắp xếp Rollup có thể đạt được sự đồng thuận về thứ tự giao dịch, cung cấp DA và thực hiện các giao dịch trước khi chuỗi chính thực hiện bất kỳ hoạt động nào. Đây là cách người dùng nhận được xác nhận trước. Chuỗi chính sau đó cung cấp một cam kết cuối cùng khác, một lần nữa nêu rõ DA và sự đồng thuận về chuỗi giao dịch Rollup.

Rollups và “Chuỗi tích hợp”

Vì mục đích của chúng tôi, sự khác biệt quan trọng hơn là cuộn lên hoặc không cuộn lên. Trạng thái cuối cùng của chuỗi có bắt nguồn từ dữ liệu được xuất bản lên chuỗi chính riêng biệt (tức là lớp DA) không?

Mặc dù ngày nay chúng ta liên kết DAS và bằng chứng hợp lệ/không thành công với Tổng hợp truyền thống, nhưng chúng ta nên lưu ý rằng đây là những khái niệm khác nhau về mặt logic. Về lý thuyết, bất kỳ chuỗi tích hợp nào (chẳng hạn như chuỗi ứng dụng Cosmos điển hình) đều có thể được nâng cấp để thêm DAS và bằng chứng xác thực mà không cần xuất bản dữ liệu của nó lên các chuỗi chính bên ngoài khác như Ethereum. Các nút sẽ lấy mẫu riêng lẻ và kiểm tra bằng chứng của chuỗi.

Vitalik trong tàn cuộc(Endgame) nói về sự khác biệt này:

Bạn có thể nhận thấy rằng việc thêm DAS + bằng chứng xác thực/thất bại vào một blockchain lớn truyền thống (chuỗi tích hợp) có thể trông giống như một bản tổng hợp được lưu giữ! Tương tự như vậy, một bản tổng hợp có khả năng mở rộng và chiếm ưu thế có thể trở nên thành công đến mức nó chỉ cần hợp nhất với chuỗi chính của nó để phù hợp với bản tổng hợp.

Những ranh giới mờ nhạt ở giới hạn.

Do đó, nếu bạn tin rằng DAS + bằng chứng hợp lệ/không thành công là kết quả cuối cùng thì việc tổng hợp một số loại là không thể tránh khỏi. Có sự khác biệt hợp lệ giữa hai cách tiếp cận trong hình trên:

  • Rollups, còn được gọi là mô-đun hóa - xây dựng các chuỗi độc lập về mặt logic, xuất bản dữ liệu lên chuỗi chính của nó (lớp DA) và sử dụng lại sự đồng thuận của chuỗi chính;

  • Blockchain tích hợp còn được gọi là blockchain nguyên khối - tích hợp mọi thứ vào một giao thức với sự đồng thuận của riêng nó và không xuất bản dữ liệu lên một chuỗi chính riêng biệt (ngay cả khi lớp DA và lớp thực thi theo một nghĩa nào đó là độc lập về mặt logic). một phần của thỏa thuận chia sẻ);

Khi thảo luận về Rollup trong báo cáo này, chúng tôi sẽ đề cập đến chuỗi trước (tức là không phải chuỗi tích hợp với DAS + bằng chứng xác thực/không thành công, có thể được gọi là Rollup tích hợp).

Mặc dù Rollup truyền thống không độc quyền về DAS hoặc bằng chứng (tức là các chuỗi khối lớn được tích hợp có thể thêm chúng), xin lưu ý rằng chúng tôi đang bỏ qua nhiều chi tiết kỹ thuật ở đây và bạn không thể chỉ chọn Solana và quyết định Ồ, tôi đoán hôm nay chúng ta sẽ Thêm DAS.

Điều này đòi hỏi phải tái cấu trúc cơ bản giao thức để bắt đầu tiếp cận những gì chúng ta thấy Ethereum và Celestia đang làm:

Việc thay đổi cách mã hóa dữ liệu để hỗ trợ DAS sẽ đồng nghĩa với việc làm chậm tốc độ mã hóa và lan truyền khối, bắt đầu tiến gần hơn đến lớp DA truyền thống:

Vì lý do này, chúng tôi đã thấy các nhóm xây dựng như sau:

  • Lớp DA chuyên dụng (chẳng hạn như Danksharding, Celestia của Ethereum, v.v.) - khối chậm + DAS;

  • Trình sắp xếp được chia sẻ (ví dụ: Espresso, Astria hoặc thậm chí Solana) - thực tế chỉ là một lớp DA nhanh, không cần DAS;

Tuy nhiên, nếu thời gian của các khối nhanh và DAS bị tách biệt thì chúng không hẳn là không tương thích. Ví dụ: bạn có thể tưởng tượng một chuỗi như Solana cung cấp hai con đường khác nhau:

  • Đường dẫn nhanh - tiếp tục thực hiện các giao dịch và truyền bá dữ liệu nhanh nhất có thể (giống như ngày hôm nay);

  • Đường dẫn chậm - Mã hóa dữ liệu sau thực tế theo cách có thể được lấy mẫu không đồng bộ, cung cấp cho các nút DAS sự đảm bảo rằng chúng hơi chậm so với sự đồng thuận;

Anatoly trên podcastbàn luậnNhìn vào cách Eclipse kết hợp Ethereum, Celestia và Solana, nhìn từ đầu bên kia, bạn có thể tưởng tượng lớp DA thêm một đường dẫn nhanh hơn trước khi cung cấp dữ liệu để lấy mẫu:

Việc cung cấp hai đường dẫn trong cùng một giao thức lớp cơ sở giúp nội bộ hóa thứ tự chia sẻ nhanh một cách hiệu quả, cho phép tạo ra các thiết kế thú vị dựa trên Rollup. Lưu ý rằng đây vẫn là một ý tưởng mang tính khám phá cao vào thời điểm này.

Xác nhận quy tắc

Với kiến ​​thức nền tảng này trong tay, giờ đây chúng ta có thể bắt đầu phân tích các thuộc tính bảo mật của các kiến ​​trúc khác nhau này.

Đầu tiên, các nút tương tác với bất kỳ blockchain nào bằng cách chạy Quy tắc xác nhận:

Quy tắc xác nhận đề cập đến một thuật toán do nút chạy, cho biết một khối nhất định có được xác nhận hay không. Trong trường hợp này, theo một số giả định nhất định, chủ yếu liên quan đến đồng bộ hóa mạng và tỷ lệ chia sẻ trung thực, khi đáp ứng các điều kiện này, Khối sẽ được đảm bảo sẽ không bao giờ được tổ chức lại.

Có thể có bất kỳ số lượng quy tắc xác thực nào cho một chuỗi nhất định:

  • Bạn cần đợi bao nhiêu khối trước khi giao dịch Bitcoin được xác nhận? 1 ? 6? 10?

  • Bạn sử dụng LMD GHOST để xác nhận các khối dựa trên sổ cái có sẵn của Ethereum hay bạn đợi tiện ích cuối cùng (Casper FFG) xác nhận?

  • Bạn chạy các nút đầy đủ để xác thực trực tiếp từng khối hay chỉ các nút nhẹ kiểm tra chữ ký đồng thuận?

  • Bạn vừa hỏi Infura phải không?

Vì mỗi quy tắc xác nhận có thể đưa ra các giả định rất khác nhau nên chúng có thể có các thuộc tính bảo mật rất khác nhau ngay cả khi tương tác với cùng một chuỗi:

Sự khác biệt rất tinh tế nhưng quan trọng:

Bảo mật = bảo mật + hoạt động

Bây giờ hãy cùng tìm hiểu xem Rollup có “kế thừa bảo mật” từ chuỗi chính của nó hay không.

Kế thừa, có lẽ rõ ràng hơn, Rollup luôn thuê thay vì kế thừa bất cứ thứ gì trong chuỗi chính của nó, nó trả chi phí liên tục cho các tài nguyên (DA) đã tiêu thụ và một trong hai bên có thể chọn kết thúc mối quan hệ. Nhưng đó không phải là phần thú vị của câu hỏi.

Bảo mật, từ bây giờ chúng tôi sẽ tập trung vào bảo mật. Tính bảo mật của thuật toán bao gồm sự an toàn và tính sống động:

  • An toàn (sẽ không có điều gì xấu xảy ra), trạng thái cuối cùng được xác định bởi hai nút chức năng sẽ không bao giờ xung đột;

  • Sự sống động (những điều tốt đẹp cuối cùng sẽ xảy ra), tất cả các nút hoạt động sẽ có một khoảng thời gian giới hạn để hoàn thành phản ánh trạng thái mới phù hợp cho các giao dịch được đưa vào;

Tuyệt vời khi sử dụng Sreeramkhung, chúng ta có thể phân tách chúng thành năm thuộc tính cùng nhau đảm bảo sự an toàn của các quy tắc xác nhận:

Hãy xem xét một ví dụ về chuỗi tích hợp giả định với DAS + bằng chứng xác thực/thất bại. Dữ liệu của nó không được xuất bản lên bất kỳ chuỗi chính bên ngoài nào khác. Để đơn giản, chúng tôi giả định tính hữu hạn ngay lập tức (ví dụ: Tendermint), do đó, không có sự khác biệt nào có thể sử dụng được giữa sổ cái có thể sử dụng và sổ cái cuối cùng (ví dụ: Gasper của Ethereum).

Chúng ta sẽ xem xét ba quy tắc xác nhận có thể được sử dụng để theo dõi một chuỗi bằng cách sử dụng các loại nút khác nhau:

  • Nút ánh sáng của Trình xác thực đồng thuận - Xác thực bằng chứng về sự đồng thuận (tức là tin tưởng vào sự đồng thuận trung thực của đa số).

  • Nút ánh sáng của trình xác thực đầy đủ - xác minh sự đồng thuận + kiểm tra DA (sử dụng DAS) + xác minh tính hợp lệ của trạng thái (sử dụng bằng chứng xác thực/không thành công);

  • Nút đầy đủ - xác minh sự đồng thuận + xác minh trực tiếp DA (tải xuống tất cả dữ liệu) và tính hợp lệ (thực hiện tất cả các giao dịch và tính toán trạng thái);

Xác nhận rằng quy tắc có thuộc tính bảo mật, nhưng chuỗi thì không

Để nhấn mạnh lại điểm này, chúng ta nói một cách thông tục về việc một chuỗi được an toàn, nhưng trên thực tế, đó là các quy tắc xác thực gắn liền với các thuộc tính bảo mật.

Hãy xem xét một số ví dụ.

định lý CAP

Là một nền tảng,định lý CAPHãy cho chúng tôi biết rằng không có sổ cái nào có thể thỏa mãn cả hai điều kiện cùng một lúc:

  • Khả năng thích ứng (còn gọi là tính khả dụng động) - vẫn hoạt động với sự tham gia năng động (tức là nếu phần lớn các nút ngoại tuyến);

  • Tính hữu hạn (hay còn gọi là tính nhất quán) - giữ an toàn trong các phân vùng mạng;

Các giao thức đồng thuận thường được chia thành hai phần, mỗi phần đáp ứng một trong các điều kiện trên:

  • Giao thức chuỗi dài nhất - Các giao thức này (ví dụ: Đồng thuận Satoshi của Bitcoin) đảm bảo tính tồn tại ngay cả khi số lượng nút tham gia tích cực thay đổi (tức là chúng có khả năng thích ứng), tuy nhiên chúng không an toàn trong các phân vùng mạng (tức là không có tính hữu hạn);

  • Các giao thức loại BFT - Các giao thức đồng thuận cổ điển (chẳng hạn như PBFT) đạt được tính hữu hạn nhưng không có khả năng thích ứng;

Quy tắc xác nhận bitcoin

Sự đồng thuận của Bitcoin không cung cấp bất kỳ quyết định cuối cùng cứng rắn nào về mặt kinh tế.

Các nút quan sát chuỗi dài nhất trong chế độ xem cục bộ của họ và mỗi người dùng có thể tự do áp dụng bất kỳ quy tắc xác nhận nào họ thích (ví dụ: chấp nhận các khối có >k xác nhận). Tiêu chuẩn là chờ xác nhận 6 khối, nhưng điều đó tùy thuộc vào bạn.

Đối với các giao dịch có giá trị cao hơn, việc chờ đợi lâu hơn là điều hợp lý. Có sự cân bằng giữa thời gian chờ đợi và sự an toàn (tức là khả năng tổ chức lại).

Quy tắc xác nhận Ethereum

Sự đồng thuận PoS của Ethereum (Gasper) thoạt nhìn dường như tránh được định lý CAP. Tuy nhiên, nó triển khai cả hai thuộc tính vì nó chứa hai sổ cái lồng nhau:

  • Sổ cái có sẵn động - an toàn và tích cực với sự tham gia năng động nếu mạng không bị phân vùng;

  • Sổ cái tiền tố cuối cùng - luôn an toàn và bảo mật. Nếu mạng không được phân vùng và có đủ nút tham gia thì mạng vẫn hoạt động;

Gasper thuộc họ giao thức lên và xuống (ebb-and-flow, còn được gọi là sổ cái kép hoặc quy tắc xác nhận kép). Thiết kế sổ cái kép nằm ngoài phạm vi của định lý CAP (tức là nó giả định một quy tắc xác nhận duy nhất). Khi phân vùng mạng, sổ cái cuối cùng sẽ tụt hậu so với sổ cái thích ứng, nhưng nó sẽ bắt kịp khi mạng sửa chữa.

Điều này cho phép giải quyết sự cân bằng giữa khả năng thích ứng và tính hữu hạn ở cấp độ người dùng thay vì ở cấp độ toàn hệ thống. Đây là một tính năng của giao thức chuỗi dài nhất điểm kiểm tra được đề xuất bởi định lý blockchain CAP trong việc cho phép người dùng dựa vào khả năng thích ứng và tính hữu hạn. Các giao thức này cung cấp cho người dùng cá nhân sự lựa chọn giữa tính hữu hạn và khả năng thích ứng thay vì áp đặt nó lên toàn bộ cấp độ hệ thống.

Gasper đưa ra rõ ràng hai quy tắc xác nhận khác nhau, ánh xạ tới hai sổ cái được đề cập ở trên:

  • Quy tắc có sẵn động - khả năng thích ứng được đảm bảo. Tôn trọng tiêu đề khối của chuỗi dài nhất.LMD GHOSTlà quy tắc lựa chọn nhánh được sử dụng để xác định cây con nặng nhất;

  • Quy tắc quyết toán - Đảm bảo tính cuối cùng. Các khối tôn trọng được xác nhận bởi các tiện ích cuối cùng.Casper FFGNó là tiện ích cuối cùng được áp dụng cho các quy tắc lựa chọn nhánh;

Như đã thảo luận trong bài báo:

Quy tắc thích ứng lạc quan hơn luôn xác nhận các khối được đánh dấu là cuối cùng theo quy tắc thận trọng hơn và có thể xác nhận nhiều khối hơn với mức độ tham gia khác nhau. Khách hàng (người dùng) quyết định giữa các quy tắc xác nhận dựa trên sở thích cá nhân Lựa chọn địa phương được thực hiện giữa các khối và người khai thác tuân theo quy tắc đề xuất chặn cố định phù hợp với hai quy tắc xác nhận này.

Điều này cho phép tất cả các nút (trung thực) trong hệ thống:

  • Thực hiện theo cơ chế đề xuất khối chung;

  • Nhưng các nút khác nhau có thể chọn các quy tắc xác nhận khác nhau;

Người xác nhận sẽ tiếp tục mở rộng chuỗi dài nhất (khai thác các khối mới ở độ cao ngày càng tăng) bất kể có sự tham gia hay không, nhưng các điểm kiểm tra mới sẽ chỉ xảy ra khi có đủ sự tham gia.

Chuỗi dài nhất (chứa điểm kiểm tra mới nhất) có thể luân phiên giữa các chuỗi khác nhau (tức là sắp xếp lại các khối chưa hoàn thành), nhưng các điểm kiểm tra được đảm bảo nằm trên một chuỗi duy nhất bất kể điều kiện mạng (tức là tính hữu hạn).

Bảo mật của người dùng phụ thuộc vào các quy tắc xác nhận mà họ tuân theo. Có sự cân bằng giữa xác nhận khối nhanh và đảm bảo an ninh mạnh mẽ hơn. Người dùng bán cà phê có thể thích hoạt động hơn bảo mật, nhưng người dùng bán du thuyền có thể thích sự an toàn hơn hoạt động.

Ngoài ra còn có một số phương pháp phỏng đoán quy tắc xác nhận trung gian khác mà các nút Ethereum có thể áp dụng cho các mục đích thực tế. Thay vì sử dụng các khối k đơn giản làm quy tắc xác nhận thích ứng như Bitcoin, chúng ta có thể thêm các phương pháp phỏng đoán khác bao gồm các giả định về đồng bộ hóa mạng và tính trung thực của trình xác thực.

Đây chính xác là những gì Quy tắc xác nhận giao thức đồng thuận Ethereum》, đề xuất các quy tắc xác nhận với các thuộc tính sau:

  • Trong điều kiện lý tưởng - quy tắc sẽ xác nhận các khối mới ngay sau vị trí của chúng;

  • Trong điều kiện mạng chính điển hình - quy tắc này sẽ có thể xác nhận hầu hết các khối mới trong vòng một phút;

Quy tắc xác nhận này không thay thế cho quyết định cuối cùng về mặt kinh tế. Đúng hơn, nó cung cấp một phương pháp phỏng đoán hữu ích cho những người dùng tin rằng việc đồng bộ hóa mạng sẽ được duy trì trong tương lai gần. Hãy so sánh hai:

Hãy xem xét một số ví dụ, giả sử bạn đặt giá thầu để bán một chiếc du thuyền với giá 2,5 triệu đô la bằng ETH. Dưới đây là một số quy tắc xác nhận có thể có:

  • Các nút đầy đủ + chờ kết quả cuối cùng - ngay cả phần lớn các trình xác thực độc hại cũng không thể lừa bạn chấp nhận các khối không hợp lệ (ví dụ: tạo ETH giả). Nếu họ trả cho bạn 2,5 triệu đô la bằng ETH và sau đó cố gắng tổ chức lại khối cuối cùng, họ sẽ phải chịu chi phí rất lớn (ít nhất một phần ba số cổ phần có thể bị cắt giảm một cách trừng phạt);

  • Các nút đầy đủ + chờ một khối - hầu hết các trình xác thực độc hại vẫn không thể lừa bạn chấp nhận một khối không hợp lệ, tuy nhiên, họ có thể gửi cho bạn 2,5 triệu đô la ETH trong một khối hợp lệ, để lại trên du thuyền và sau đó tổ chức lại khối ngay lập tức, tức là có thể nếu có đủ trọng lượng cọc hoặc điều kiện mạng kém, họ không bị phạt bằng cách cắt;

  • Light Node Client - Một ủy ban đồng bộ hóa độc hại có thể nói dối bạn mà không bị phạt và người mua có thể đi du thuyền (lưu ý rằng ủy ban đồng bộ hóa này là duy nhất đối với Ethereum như một tập hợp con của sự đồng thuận, những người khác có nhiều chuỗi PoS hơn được hỗ trợ bởi nút ánh sáng hiệu quả khách hàng có thể kiểm tra tất cả các phiếu đồng thuận ngay cả với một số lượng nhỏ người xác nhận);

  • MetaMask - Bạn vừa tin tưởng Infura, người mà bạn mua du thuyền từ các nhân viên của Infura đã hứa rằng họ có thể đi du thuyền vào cuối tuần, vì vậy họ đã nói dối bạn và bạn nghĩ rằng bạn có 2,5 triệu đô la ETH, sau đó bạn giao chìa khóa;

Quy tắc xác nhận tổng hợp

Giống như bất kỳ chuỗi nào, các nút tương tác với Rollup bằng các quy tắc xác thực khác nhau. Các quy tắc xác nhận mạnh nhất của Rollup sẽ được hoàn thiện cùng với sự đồng thuận của chuỗi chính của nó. Trình sắp xếp thứ tự tổng hợp có thể hiển thị các quy tắc xác nhận yếu hơn để có trải nghiệm người dùng tốt hơn (tức là cung cấp xác nhận trước nhanh chóng cho người dùng thiếu kiên nhẫn), nhưng người dùng cũng có thể chờ đợi sự bảo mật hoàn toàn của các quy tắc xác nhận chuỗi chính.

Một quy trình giao dịch tổng hợp điển hình đại khái như sau:

  • Người dùng gửi giao dịch đến trình sắp xếp thứ tự;

  • Trình sắp xếp thứ tự sắp xếp các giao dịch và đưa ra xác nhận trước;

  • STF xác định được áp dụng cho các giao dịch đã đặt hàng để tính toán trạng thái tổng hợp mới;

  • Cam kết trạng thái Tổng hợp được cập nhật và dữ liệu giao dịch liên quan cuối cùng cũng được xuất bản lên chuỗi chính;

Sau khi dữ liệu giao dịch được xuất bản lên chuỗi chính:

  • Nút đầy đủ cuộn lên - trực tiếp xác minh xem trạng thái chuỗi được đề xuất có chính xác hay không;

  • Các nút ánh sáng cuộn lên (bao gồm cả cầu xác minh) - không thể xác minh trực tiếp;

  • Những người quan sát khác nhau của cùng một Bản tổng hợp sử dụng các quy tắc xác nhận khác nhau nên họ đưa ra ý kiến ​​cuối cùng của mình vào những thời điểm khác nhau:

  • Giả sử dữ liệu giao dịch đầy đủ được công bố (không chỉ khác biệt về trạng thái);

  • Như đã đề cập trước đây, các nút Rollup cũng phải chạy các nút đầy đủ của chuỗi chính hoặc các nút ánh sáng của trình xác thực đầy đủ (hoặc sử dụng các nút ánh sáng của trình xác thực đồng thuận để đưa ra các giả định đa số trung thực). Các nút nhẹ Rollup có thể chạy dưới dạng phần mềm bổ sung hoặc ngầm trong nút chuỗi chính (tức là hợp đồng cầu nối chuỗi chéo trên chuỗi chính xác minh Rollup);

Người dùng cũng có thể xác nhận giao dịch nhanh hơn bằng cách tin cậy vào xác nhận trước của trình sắp xếp thứ tự, ngay cả trước khi chuỗi chính nhận được dữ liệu. Bảo mật có thể thất bại nếu trình sắp xếp chuỗi hoạt động sai. Sau đó, khi dữ liệu nằm trên chuỗi chính (và bạn đã kiểm tra tính hợp lệ của DA+), chỉ một lỗi chuỗi chính (chẳng hạn như tổ chức lại Ethereum) sẽ ảnh hưởng đến bảo mật của bạn.

Do đó, ngay cả một trình sắp xếp tập trung cũng sẽ không thực sự làm giảm tính bảo mật của Rollup. Bạn luôn nhận được bảo mật phù hợp với các quy tắc xác nhận bạn cần. Cho dù quá trình tổng hợp có thiết kế dựa trên trình sắp xếp thứ tự hay thiết kế khác, bạn đều có thể sử dụng các quy tắc xác nhận tương tự (chẳng hạn như chờ chuỗi chính hoàn tất và kiểm tra tính hợp lệ của quá trình tổng hợp). Giả sử triển khai đúng cách (ví dụ: buộc đưa giao dịch vào chuỗi chính), bạn có thể đạt được các thuộc tính bảo mật tương tự trong cùng khung thời gian trong khi vẫn giữ nguyên những thứ khác.

Tương tự như vậy, bạn có thể tưởng tượng các nhà sản xuất khối Ethereum L1 cung cấp xác nhận trước do thời gian tạo khối chậm, điều này sẽ không làm cho Ethereum kém an toàn hơn chút nào. Bạn chỉ cần quyết định xem có nên sử dụng quy tắc xác nhận khác (kém an toàn hơn) hay không cho đến khi trình xác thực Ethereum hoàn tất mức độ bảo mật cao hơn.

Ý tưởng xác nhận trước rất phù hợp với logic của Gasper như Vitalik đã mô tả:

Nguyên tắc chung là bạn muốn cung cấp cho người dùng càng nhiều sự đồng thuận càng tốt: nếu có > 2/3 thì chúng ta sẽ đạt được sự đồng thuận thường xuyên, còn nếu có< 2/3, thì không có lý do gì để trì hoãn và không cung cấp bất cứ thứ gì, vì rõ ràng chuỗi có thể sẽ tiếp tục phát triển bất chấp mức độ bảo mật tạm thời thấp hơn của các khối mới. Nếu một ứng dụng riêng lẻ không hài lòng với mức độ bảo mật thấp hơn thì có thể bỏ qua các khối này cho đến khi chúng được hoàn thiện.

Đặt tất cả những điều này lại với nhau, chúng ta có một vùng nhất quán khi tất cả các quy tắc xác nhận đều đồng ý về cùng một trạng thái của sổ cái cùng một lúc:

Xác nhận quy tắc - Bảo mật và khả năng truy cập

Nếu quy tắc xác nhận của bạn là tin cậy một trình sắp xếp chuỗi duy nhất do SBF điều hành thay vì tin tưởng một trình sắp xếp chuỗi phi tập trung bao gồm các trình xác thực có uy tín nhất trên thế giới, thì bạn có thể gặp phải tình trạng bảo mật kém hơn, lỗi khả năng tồn tại và Tổ chức lại là một lỗi an toàn.

Ngoài ra, bạn có thể đợi các quy tắc xác nhận (chuỗi chính) mạnh hơn có sẵn. Sau đó, tất cả những điều khác đều như nhau, trình sắp xếp chuỗi không đáng tin cậy sẽ không ảnh hưởng đến bảo mật của bạn. Nếu bạn bán cà phê, bạn có thể đi ngay, nhưng nếu bạn bán du thuyền, bạn sẽ cần kiểm tra kỹ xác nhận của chuỗi chính.

Tuy nhiên, chúng tôi không thể hoàn toàn bỏ qua tính bảo mật có thể thấp hơn của quy tắc xác thực tin tưởng một người ngẫu nhiên chạy trình sắp xếp riêng biệt nếu mọi người thực sự sử dụng nó để bán du thuyền của họ. Thiết kế chính xác dựa trên việc cân bằng mức độ cam kết lũy tiến cần thiết cho một trường hợp sử dụng nhất định vào thời điểm nào.

Một lần nữa, điều này chạm đến sự chỉ trích thực sự đối với các chuỗi khối thông lượng cao như Solana. Mọi người thực sự có thể sử dụng những quy tắc xác thực nào? Bạn có thể có các điều kiện bảo mật tốt để chạy nút đầy đủ Solana, nhưng hầu hết mọi người có thể không truy cập được các quy tắc xác nhận (tức là tùy thuộc vào yêu cầu tài nguyên và/hoặc chi phí).

Xác minh trực tiếp (tức là không chỉ tin tưởng vào số đông trung thực) là đặc tính cốt lõi của các hệ thống này. Vì vậy, đối với một quy tắc xác thực nhất định, chúng tôi thực sự quan tâm đến hai khía cạnh - bảo mật và khả năng truy cập:

Tóm tắt:

  • Người dùng tương tác với bất kỳ chuỗi nào thông qua các quy tắc xác nhận;

  • Một chuỗi có thể có số lượng quy tắc xác nhận bất kỳ;

  • Bảo mật là thuộc tính của các quy tắc xác thực, không phải của chính chuỗi;

  • Chúng tôi quan tâm đến tính bảo mật và khả năng tiếp cận các quy tắc xác nhận cho một chuỗi nhất định;

Trên thực tế, khi chúng tôi nói rằng một chuỗi nhất định là an toàn, chúng tôi đang cố gắng truyền đạt khái niệm rằng các quy tắc xác nhận liên quan của nó đều an toàn và có thể truy cập được.

Rollups và bảo mật chuỗi tích hợp

1. Chuỗi tích hợp có bằng chứng xác thực DAS+

Bây giờ chúng ta thấy rằng tính bảo mật liên quan đến DA và tính hợp lệ của trạng thái có thể được kiểm tra trực tiếp thông qua mật mã (DAS + Hiệu lực/Bằng chứng lỗi) mà không cần đưa ra các giả định chắc chắn về nhà điều hành chuỗi. Bất kỳ giao thức nào cũng có thể thực hiện những điều này về mặt kỹ thuật. Các nút đầy đủ cũng có thể kiểm tra DA và tính hợp lệ của trạng thái mà không cần các giả định bên ngoài.

Bây giờ hãy tập trung vào các thuộc tính khác - tính sống động và khả năng chống lại việc tổ chức lại. Như chúng ta đã thấy trước đây, những điều này có thể không thành công cho dù bạn chạy quy tắc xác thực nào. Hãy xem xét chuỗi tích hợp của DAS+ bằng chứng xác thực + tính hữu hạn của một khe PoS:

Việc chọn các quy tắc xác nhận mạnh đặc biệt hiệu quả đối với một tập hợp con các lỗi bảo mật, trong đó ngay cả phần lớn các trình xác thực độc hại cũng không thể đánh lừa các nút đầy đủ hoặc các nút ánh sáng của trình xác thực đầy đủ tin vào:

  • Dữ liệu không có sẵn thực sự có sẵn;

  • hoặc chuyển đổi trạng thái không hợp lệ là hợp lệ;

Cho dù Ethereum có 1 trình xác thực hay vô số trình xác thực, các nút đầy đủ ít nhiều tin tưởng vào DA hoặc tính hợp lệ của một khối mà chúng đảm bảo bằng cách kiểm tra. Các nút ánh sáng của trình xác thực đầy đủ có thể được kiểm tra theo cách đơn giản hơn (nhưng lưu ý rằng DAS đưa ra một số giả định bổ sung mà chúng ta sẽ thảo luận sau).

Tuy nhiên, trình xác thực đa số độc hại có thể ngăn sổ cái phát triển, kiểm duyệt bạn hoặc tổ chức lại chuỗi (lỗi nào xảy ra tùy thuộc vào quy tắc xác nhận). DAS + ZK không thể cứu bạn. Khả năng chống lại việc tổ chức lại và sự tồn tại luôn phụ thuộc ở một mức độ nào đó vào các đặc tính cơ bản khác nhau của một chuỗi nhất định (ví dụ: các nhà điều hành đáng tin cậy, khuyến khích kinh tế, đồng thuận xã hội, v.v.).

Điều ít rõ ràng hơn là tính sống động và khả năng chống tổ chức lại vẫn là đặc tính của một quy tắc xác nhận nhất định, vì mọi nút đều phải chịu các cuộc tấn công giống như trong bảng trên. Bất kể các quy tắc xác nhận ở đây là gì, chúng đều có cùng một sự đảm bảo.

Tuy nhiên, điều này lại trở nên rõ ràng khi bạn loại bỏ giả định về tính hữu hạn của một khe. Trong Gasper của Ethereum, bạn sẽ lại có các đặc tính kháng cự và tồn tại khác nhau tùy thuộc vào sổ cái bạn theo dõi (tức là sổ cái chuỗi dài nhất hiện có hoặc sổ cái cuối cùng của điểm kiểm tra). Hầu hết các trình xác thực độc hại sẽ gây ra các lỗi bảo mật khác nhau tùy thuộc vào quy tắc xác thực bạn chạy.

Bất chấp điều đó, vấn đề là cấu trúc cơ bản của chuỗi ở đây rất quan trọng. Bạn cần những nhà điều hành mạnh mẽ, các động lực kinh tế và sự đồng thuận xã hội để duy trì hoạt động của chuỗi và chống lại việc tái tổ chức. Ngoài ra, các giao thức đồng thuận sổ cái kép như Ethereum cung cấp cho người dùng sự linh hoạt có giá trị để tự tính toán tính khả dụng và tính hữu hạn dựa trên nhu cầu của họ.

2. Sử dụng DAS + Bản tổng hợp bằng chứng hợp lệ

Bây giờ hãy sửa đổi ví dụ này một chút:

  • Ví dụ trước - chuỗi tích hợp với DAS + bằng chứng về tính hợp lệ, hãy tưởng tượng lấy Solana ngày nay nhưng thêm bằng chứng DAS +;

  • Ví dụ mới - Rollup được triển khai trên chuỗi chính bên ngoài (ví dụ: Ethereum) với bằng chứng về tính hợp lệ + DAS (lưu ý rằng Ethereum DAS chưa trực tuyến), Rollup có bộ trình tự phân cấp có thể đạt được sự đồng thuận nhanh chóng được xác nhận trước;

Bạn sẽ nhận thấy rằng Rollup có hai loại quy tắc xác nhận hoàn toàn riêng biệt cho các khung thời gian khác nhau (tức là bạn hoạt động dựa trên sự đồng thuận trước của trình sắp xếp thứ tự hay chờ sự đồng thuận cuối cùng của chuỗi chính), bây giờ chúng ta hãy xem xét từng đường dẫn.

Đường đi nhanh - trước sự đồng thuận của chuỗi chính

Các nút tổng hợp có thể dựa vào xác nhận của trình sắp xếp thứ tự (trước khi xuất bản lên chuỗi chính), chúng tôi cho rằng chúng có thể chạy các nút tổng hợp sau:

  • Nút ánh sáng của trình xác thực đồng thuận tổng hợp - tin tưởng vào đa số trung thực trong sự đồng thuận của trình sắp xếp tổng hợp;

  • Nút ánh sáng của trình xác thực tổng hợp đầy đủ - chạy DAS trên nguồn cấp dữ liệu của trình sắp xếp thứ tự + kiểm tra bằng chứng hợp lệ trước khi xuất bản bất cứ thứ gì lên Ethereum;

  • Nút đầy đủ tổng hợp - tải xuống tất cả dữ liệu từ nguồn cấp dữ liệu của trình sắp xếp thứ tự và thực hiện tất cả các giao dịch để trực tiếp kiểm tra DA và tính hợp lệ;

Về mặt kỹ thuật, trình sắp xếp Rollup có thể tạo điều kiện thuận lợi cho DAS và cung cấp bằng chứng về tính hợp lệ trước khi xuất bản lên chuỗi chính, nhưng trên thực tế, điều này sẽ không xảy ra. Các nút ánh sáng của trình xác thực đầy đủ thường được thiết kế để kiểm tra những thông tin này thông qua chuỗi chính, nhưng tôi cho rằng bằng chứng DAS+ trực tiếp sẽ cho phép so sánh giữa táo và táo rõ ràng hơn với chuỗi tích hợp.

Bảng sau đây cho thấy những thay đổi so với ví dụ về chuỗi tích hợp:

  • Dựa vào trình sắp xếp tổng hợp để đạt được tính sống động và khả năng chống tổ chức lại, thay vì tích hợp bộ trình xác thực của chuỗi;

  • Chỉ các thuộc tính hoạt động cuối cùng mới bị xóa, bởi vì chỉ có khoảng thời gian trước khi có sự đồng thuận của chuỗi chính mới được xem ở đây (các thuộc tính hoạt động cuối cùng này sẽ đến từ chuỗi chính sau);

Nội dung đã xóa được hiển thị bằng gạch ngang màu đỏ và nội dung đã thêm được hiển thị bằng đường màu xanh lam:

Đường dẫn chậm - chờ đợi sự đồng thuận của chuỗi chính

Để tăng cường bảo mật, các nút có thể chờ sự đồng thuận từ chuỗi chính (ví dụ: Ethereum) và đây là lúc nó phát huy tác dụng rõ ràng hơn, tức là các nút cuộn cũng nên chạy các nút chuỗi chính:

  • Nút ánh sáng xác thực đồng thuận chuỗi chính - tin tưởng vào sự đồng thuận trung thực của đa số chuỗi chính;

  • Nút ánh sáng xác thực đầy đủ của chuỗi chính - Kiểm tra bằng chứng hợp lệ của chuỗi chính + chạy DAS trên chuỗi chính (bao gồm Dữ liệu cuộn + dữ liệu chuỗi chính);

  • Nút đầy đủ của chuỗi chính - tải xuống tất cả dữ liệu chuỗi chính (bao gồm kiểm tra dữ liệu Tổng hợp) + thực hiện tất cả các giao dịch chuỗi chính để trực tiếp kiểm tra tính hợp lệ;

  • Xin lưu ý rằng tính hợp lệ trạng thái của Bản tổng hợp có thể được xác minh thông qua hai đường dẫn khác nhau:

  • Bên ngoài chuỗi chính (chạy thêm phần mềm nút Rollup) - Rollup không cần chuỗi chính của nó để xác minh trạng thái hoặc STF, không cần triển khai cầu nối xác minh, thay vào đó bằng chứng Rollup có thể được kiểm tra thông qua một phương thức khác (chẳng hạn như nhận Bằng chứng tổng hợp thông qua p2p), Điều này yêu cầu chạy phần mềm nút Rollup bổ sung để xác minh bằng chứng (tức là nút ánh sáng Rollup);

  • Nội bộ của chuỗi chính (triển khai nút Rollup bên trong chuỗi chính) - Đây là tiêu chuẩn ngày nay. Logic trình xác thực nút ánh sáng Rollup được triển khai trong chính chuỗi chính (nghĩa là hợp đồng cầu nối tích hợp của Rollup). Kể từ Rollup này nút trình xác nhận nằm trong chuỗi chính. Nó chạy trong STF, vì vậy việc xác minh STF của chuỗi chính cũng có nghĩa là xác minh STF của Rollup;

Nếu chúng tôi nhận được một chuỗi chính có thể chứng minh không có kiến ​​thức (chẳng hạn như Ethereum L1 zkEVM) + tất cả các Bản tổng hợp chứng minh trạng thái của chúng bên trong chuỗi chính → chúng tôi nhận đượcTầm nhìn của Vitalik về bằng chứng về điểm kỳ dị. Xác thực bằng chứng không có kiến ​​thức cho Ethereum có nghĩa là xác thực tất cả các chuỗi khác và các nút xác thực được triển khai nội bộ của chúng:

Để đơn giản, ở đây chúng tôi giả định rằng tính hợp lệ trạng thái của Rollup được xác minh trong chính chuỗi chính (ví dụ: Rollup có cầu nối tích hợp với chuỗi chính), vì vậy chúng tôi có thể bỏ qua nhu cầu chạy phần mềm nút Rollup bổ sung bên ngoài giao thức một cách rõ ràng.

Những thay đổi so với bảng tổng hợp Đường dẫn nhanh trước đó như sau:

Đạt được nhờ chuỗi chính buộc bao gồm giao dịch hoặc buộc thay thế trình sắp xếp/trình chứng nhận, ở đây chúng tôi gọi đó là hoạt động cuối cùng, bởi vì từ góc độ Rollup, đó là một con đường chậm, nhưng từ góc độ của chuỗi chính, điều này có thể được coi là hoạt động thời gian thực.

Rollup và blockchain tích hợp

Bây giờ chúng ta có thể thấy các thay đổi về thuộc tính bảo mật liên quan đến việc tích hợp blockchain và Rollup:

  • Tính hợp lệ của DA và trạng thái - Nếu được triển khai, bằng chứng hợp lệ của DAS + có thể cung cấp các đảm bảo bảo mật hiện hành bất kể chuỗi được tích hợp hay tổng hợp truyền thống. Trên thực tế, những công nghệ này ngày nay bị Rollup thống trị;

  • Sự sống động Kháng chiến tái tổ chức - Chuỗi khối tích hợp xử lý những vấn đề này một cách độc lập trong mọi tình huống. Ngược lại, Rollup cung cấp lựa chọn xác nhận quy tắc trong các khoảng thời gian khác nhau. Bạn có thể sử dụng các quy tắc xác nhận kém an toàn hơn (đồng thuận trình tự tin cậy) để nhận được đảm bảo nhanh chóng hoặc chờ các quy tắc xác nhận an toàn hơn (chờ đồng thuận chuỗi chính);

Hoạt động và khả năng chống tái hợp

Các thuộc tính này không thể được đảm bảo bằng mật mã và bạn có thể dễ gặp phải lỗi bảo mật ngay cả khi thực hiện các quy tắc xác nhận (ví dụ: chạy nút đầy đủ hay nút nhẹ).

Không có nút đầy đủ hoặc bằng chứng ZK nào có thể bảo vệ bạn khỏi lỗi hoạt động hoặc tổ chức lại nếu người vận hành hoàn toàn mất quyền kiểm soát.

Những thuộc tính này đạt được thông qua các nhà điều hành mạnh mẽ và phi tập trung, cơ chế chống kiểm duyệt, sự đồng thuận ủng hộ hoạt động, chi phí tái tổ chức cao, sự đồng thuận xã hội mạnh mẽ, v.v. So sánh những điều này một cách khách quan thường là một thách thức.

Làm thế nào để bạn đo lường sự phân cấp của nhà điều hành và sự đồng thuận xã hội? Không có ai trả lời đúng. Đây được cho là những khía cạnh khó thiết kế nhất và chúng thực sự rất độc đáo đối với một chuỗi nhất định.

Điều quan trọng là chúng tôi thấy rằng Rollup có thể ủy quyền khả năng chống tổ chức lại và khả năng hoạt động cho chuỗi chính và các quy tắc xác nhận được sử dụng trên Rollup có thể có các thuộc tính bảo mật giống như khi chúng được chạy trên chuỗi chính trong cùng khung thời gian.

Các chuỗi thậm chí có thể chọn thuộc tính nào để ủy quyền cho chuỗi nào và các loại kiến ​​trúc L2 khác nhau (chẳng hạn như tính hợp lệ, tối ưu hóa và chuỗi bên) có thể tiếp thu các tập hợp con thuộc tính bảo mật khác nhau. Ví dụ:

  • Khả năng chống lại việc tổ chức lại - Rollup có thể ủy quyền khả năng chống lại việc tổ chức lại cho Ethereum và quy tắc lựa chọn nhánh của nó là chọn chuỗi chuẩn dựa trên nội dung được xác nhận bởi sự đồng thuận của Ethereum. Nếu Ethereum tổ chức lại, Rollup cũng vậy.

  • Tính sống động - Tuy nhiên, nếu Rollup thiếu cơ chế bắt buộc đưa vào và thay thế nhà điều hành bắt buộc, người dùng Rollup vẫn sẽ không nhận được thuộc tính tính sống động của Ethereum;

Bản tổng hợp cũng có thể cung cấp cho người dùng một lối thoát khỏi Bản tổng hợp nhưng vẫn có khả năng kiểm duyệt người dùng và ngăn tiền gửi vào Bản tổng hợp (ví dụ: đây là cách Loopring hoạt động). Nếu khoản tiền gửi không được xử lý sau một khoảng thời gian, người dùng có thể rút tiền bị khóa khỏi hợp đồng L1.

Điều này nhấn mạnh tầm quan trọng của các cơ chế như vậy.

Tính sẵn có của dữ liệu và tính hợp lệ của trạng thái

Không giống như khả năng chống lại sự tồn tại và tổ chức lại, các nút có thể đảm bảo tính hợp lệ của DA và trạng thái mà không đưa ra bất kỳ giả định ngưỡng lớn nào (hoặc không thực hiện đánh đổi bảo mật giữa hai bên). Các nhà sản xuất khối đa số độc hại có thể gây ra lỗi hoạt động và tổ chức lại, nhưng chúng sẽ không gây ra lỗi DA hoặc tính hợp lệ cho các nút đầy đủ hoặc các nút ánh sáng của trình xác nhận đầy đủ.

Tuy nhiên, các nút ánh sáng của trình xác thực đồng thuận tất nhiên bị ảnh hưởng bởi tính hợp lệ của trạng thái đa số trung thực và lỗi DA. Họ chỉ tin tất cả những gì sự đồng thuận nói. Đó là lý do tại sao DA và tính hợp lệ của trạng thái là những yếu tố giúp cho các quy tắc xác thực bảo mật có thể truy cập được và thực sự hữu ích. Đây thường là sự khác biệt lớn về mặt ý thức hệ giữa Rollup truyền thống và các chuỗi khối lớn hơn ít chú trọng đến việc xác minh người dùng.

Theo thứ tự, đây thường là các phương pháp ưa thích để cân bằng giữa bảo mật và khả năng truy cập:

  • Làm cho DAS và các bằng chứng về tính hiệu quả được phổ biến rộng rãi;

  • Nếu bạn không có DAS và/hoặc bằng chứng về tính hợp lệ, hãy làm cho nút đầy đủ có thể truy cập rộng rãi (tức là yêu cầu tài nguyên thấp, dễ chạy, v.v.);

  • Nếu bạn không có DAS và/hoặc bằng chứng hợp lệ và về cơ bản không thể truy cập được các nút đầy đủ thì hãy làm cho các nút ánh sáng của trình xác thực đồng thuận có thể truy cập rộng rãi và có được sự đồng thuận trung thực, trung thực của đa số;

  • Thăm Infura;

Lưu ý rằng 2 (nút đầy đủ) thực sự là an toàn nhất. Việc xác minh ZK rất đơn giản, nhưng các nút DAS đưa ra một số giả định bổ sung mà các nút đầy đủ không làm được. Tuy nhiên, chúng cung cấp khả năng bảo mật gần giống như các nút đầy đủ với một phần yêu cầu về tài nguyên và chúng có khả năng mở rộng.

Full node chỉ cần tải toàn bộ dữ liệu xuống nên chắc chắn 100%. Chỉ khi mọi thứ đã có sẵn thì họ mới ký vào khối. Không có giả định nào được đưa ra về các bên bên ngoài.

Mục tiêu của DAS là đạt được mức độ bảo mật gần như tốt như một nút đầy đủ, với yêu cầu tài nguyên thấp hơn đáng kể (tức là quy mô cao hơn). Bài viết này vềMức độ bảo mật sẵn có của dữ liệu nút nhẹbài viết của đề cập đến điều này rất tốt.

Nói tóm lại, bạn thường đưa ra một số giả định xung quanh tính đồng bộ của mạng và liệu có đủ nút để tái tạo lại dữ liệu hay không. Nếu một nhà sản xuất khối thù địch giữ lại bất kỳ dữ liệu nào, ngay cả một nhóm nhỏ các nút ánh sáng trung thực cũng có thể cùng nhau xây dựng lại khối. Ngoài ra còn có một số giả định về việc tiết lộ chia sẻ có chọn lọc, trong đó các nhà sản xuất khối đối nghịch có thể giả mạo riêng lẻ một số lượng nhỏ nút ánh sáng, nhưng không phải chung.

Các giả định “một số ít N” này (ví dụ: một số ít nút trung thực có thể đảm bảo bảo mật DAS) rất thuận lợi so với các giả định “N/2” thô điển hình (ví dụ: 51% nhà sản xuất khối có thể gây ra việc tổ chức lại). Vitalik đang ởmô hình niềm tinCó một giới thiệu tốt về điều này trong bài viết này.

Nói chung, DA và tính hợp lệ của trạng thái không được Rollup ủy quyền giống như cách hoạt động và khả năng chống lại việc tổ chức lại. DA và tính hợp lệ của trạng thái có thể được người dùng xác minh trực tiếp, trong khi các thuộc tính khác phụ thuộc nhiều hơn vào những người tham gia đồng thuận của chuỗi và các ưu đãi của họ.

Hãy xem lại ví dụ trước về việc xác minh bằng chứng tổng hợp:

  • Để xuất bản bằng chứng ZK của Rollup lên hợp đồng thông minh Ethereum, bạn chạy nút đầy đủ Ethereum để ngầm xác minh bằng chứng;

  • Gửi chứng chỉ ZK của Rollup tới nút ánh sáng Rollup của tôi để trực tiếp xác minh chứng chỉ;

Trong cả hai trường hợp, bạn được đảm bảo hiệu quả. Bất kể bạn kiểm tra ở đâu, bạn không thể chắc chắn về tính hợp lệ của nó. Ethereum không thực sự “thực thi” tính hiệu quả giống như cách mà các nút Ethereum “thực thi” các đặc tính kháng lại tổ chức hoặc tính sống động. Sức đề kháng và sức sống phụ thuộc phần lớn vào việc bạn nhận được chúng từ ai.

Xem xét tổng hợp dựa trên chuỗi lừa đảo:

  • Quy tắc lựa chọn ngã ba của Rollup là tuân theo đầu chuỗi được xác nhận bởi chuỗi gian lận → nếu chuỗi gian lận được tổ chức lại, Rollup cũng sẽ được tổ chức lại;

  • Cơ chế bao gồm bắt buộc và xóa trình tự sắp xếp của Rollup được thực thi thông qua hợp đồng cầu nối chuỗi chéo trên chuỗi lừa đảo → nếu sổ cái của chuỗi lừa đảo dừng thì sổ cái của Rollup cũng sẽ dừng. Nếu chuỗi lừa đảo muốn kiểm duyệt danh sách của bạn thì bạn sẽ bị kiểm duyệt;

Rollup có thể hiển thị các quy tắc xác nhận có cùng thuộc tính bảo mật như chuỗi chính của chúng và chúng có thể nhận được các thuộc tính này nhanh nhất nhanh như sự đồng thuận của chuỗi máy chủ của chúng (trong thực tế, tốc độ này thường chậm hơn tùy thuộc vào tần suất Rollup xuất bản lên chuỗi chính) .

Rollup cũng có thể cung cấp các quy tắc xác nhận lỏng lẻo hơn đường dẫn hạnh phúc (tức là trình tự sắp xếp) để có trải nghiệm người dùng tốt hơn, nhưng chúng vẫn giữ lại dự phòng giao dịch khi không thành công. Nếu trình sắp xếp chuỗi của bạn bị dừng, bạn có thể tiếp tục di chuyển. Tuy nhiên, điều này sẽ không xảy ra nếu chuỗi của bạn hoàn toàn dựa vào bộ trình xác thực của riêng bạn (tức là dưới dạng chuỗi tích hợp).

Việc chọn chuỗi chính của Rollup một cách khôn ngoan sẽ có tác động cụ thể đến các thuộc tính bảo mật. Điều đặc biệt có giá trị là sử dụng một chuỗi chính có sức sống mạnh mẽ (tăng trưởng sổ cái + CR) và khả năng chống lại việc tổ chức lại.

Các giả định bảo mật khác nhau cho các khoảng thời gian khác nhau

Hãy xem xét một ví dụ đơn giản. Chuỗi X đang quyết định nên triển khai dưới dạng Rollup trên chuỗi chính hiện có hay dưới dạng chuỗi khối tích hợp của riêng nó.

Rollup có các đặc điểm sau:

  • thời gian chặn 10 giây;

  • Có thể hỗ trợ các nút ánh sáng DAS

  • Có thể cung cấp các quy tắc xác nhận bảo mật cao liên quan đến tính tồn tại và khả năng chống lại việc tổ chức lại (chẳng hạn như trình xác thực đáng tin cậy phi tập trung, v.v.);

Chuỗi khối tích hợp có các đặc điểm sau:

  • Thời gian tạo khối là 1 giây;

  • Các nút ánh sáng DAS và bằng chứng xác thực có thể được triển khai, cho dù nó được khởi chạy dưới dạng chuỗi khối tích hợp hay dưới dạng Bản tổng hợp;

  • Chẳng hạn như triển khai một trình sắp xếp tập trung - nó sẽ cung cấp các quy tắc xác nhận mức độ an toàn thấp liên quan đến khả năng tồn tại và khả năng chống tổ chức lại;

  • Nếu bạn triển khai sự đồng thuận phi tập trung của riêng mình (dưới dạng bộ trình tự tổng hợp được xác nhận trước hoặc dưới dạng bộ trình xác thực chuỗi tích hợp), nó sẽ cung cấp các quy tắc xác nhận an toàn vừa phải liên quan đến tính tồn tại và khả năng chống tổ chức lại;

Bảng bên dưới trình bày trực quan đơn giản hóa các đảm bảo bảo mật tốt nhất mà người dùng có thể có trong nhiều cách triển khai khác nhau (tức là họ sử dụng các quy tắc xác nhận mạnh nhất hiện có). Đặc biệt, chúng tôi tập trung ở đây vào khả năng tồn tại và khả năng chống tái tổ hợp (vì chúng tôi giả định rằng chuỗi sẽ chỉ triển khai DAS + bằng chứng về tính hợp lệ trong hai trường hợp này):

Bảo mật cuối cùng của Rollup cao hơn bảo mật thời gian thực của nó vì chuỗi chính không thể cung cấp cho chúng tôi sự đảm bảo nhanh hơn thời gian chặn của chính nó. Ngay cả khi bạn có thể kiểm tra xem các xác nhận trước của trình sắp xếp chuỗi có phải là các chuyển đổi trạng thái hợp lệ hay không, bạn cũng không thể đảm bảo hoàn toàn tính hữu hạn của chúng trước khi cuối cùng chúng đến được lớp DA.

Nhưng như chúng ta đã thấy, việc triển khai chuỗi chính mạnh mẽ theo phương thức tổng hợp có thể nâng cao tính bảo mật. Họ có thể thuê bảo mật theo tốc độ của chuỗi chính của họ. Về cơ bản, không có cách nào để có được tất cả thuộc tính bảo mật của chuỗi chính nhanh hơn sự đồng thuận của chính chuỗi chính.

Tuy nhiên, người dùng thường thiếu kiên nhẫn. Do đó, Rollup thường sẽ cung cấp xác nhận trước nhanh hơn nhưng với độ đảm bảo thấp hơn trong giai đoạn này. Rollup có thể chọn thiết kế trình tự cân bằng:

  • Chức năng thực tế và hiệu quả. Ví dụ: trình tuần tự tập trung có thể cung cấp khả năng xác nhận trước nhanh chóng và giảm chi phí hoạt động;

  • Bảo đảm mạnh mẽ. Ví dụ: một bộ trình tự sắp xếp cực kỳ phi tập trung có thể mang lại khả năng hiển thị theo thời gian thực tốt hơn, nhưng với chi phí vận hành và độ trễ cao hơn (trong trường hợp cực đoan nhất, bạn sẽ chỉ để lớp DA xử lý Sắp xếp tổng hợp, chọn không hiển thị con đường nhanh hơn);

Thật thú vị, bạn có thể lập luận rằng các cuộn được sắp xếp L1 kém sinh động hơn các trình sắp xếp tập trung, tùy thuộc vào thang thời gian của bạn. Cho đến nay, chúng ta đã thảo luận về tính sống động, kết hợp nó với một loại khái niệm thời gian hữu hạn. Tuy nhiên, điều này hoàn toàn mang tính tương đối và chủ quan. Tương đối với cái gì? Cần bao nhiêu thời gian?

Bản tổng hợp tuần tự L1 thuần túy sẽ chỉ được bao gồm ở tốc độ các phần L1 (ví dụ: 10 giây) và bạn không có đảm bảo về tính sống động giữa các phần đó trong khi thế giới xung quanh bạn đang thay đổi. Vì vậy, nó phụ thuộc vào điểm chuẩn của bạn:

  • Nếu đường cơ sở = các hoạt động bên trong Tổng hợp, thì Tổng hợp tuần tự L1 có thể mang lại khả năng hoạt động tốt hơn. Không ai khác trên chuỗi phải cam kết cho đến khi chuỗi chính được xác nhận, vì vậy tất cả các bạn đều bình đẳng;

  • Nếu Đường cơ sở = Hoạt động bên ngoài Tổng hợp - Tổng hợp với xác nhận trước mềm có thể mang lại khả năng hoạt động tốt hơn. Xác nhận trước chỉ là một tùy chọn miễn phí, bạn vẫn quay lại đảm bảo chuỗi chính ở tốc độ chuỗi chính, nhưng trong thời gian chờ đợi, bạn nhận được sự đảm bảo yếu hơn. Nếu bạn không tin tưởng họ, chỉ cần đợi chuỗi chính xác nhận. Thế giới không bị đóng băng giữa các khối Ethereum và giá cũ giữa các khối dài có thể không được chấp nhận đối với nhiều ứng dụng;

Nếu bạn cố gắng triển khai tổng số dựa trên thực mà không có xác nhận trước thì thậm chí có khả năng việc xác nhận trước vẫn sẽ xảy ra. Có động cơ tài chính để những người tham gia (chẳng hạn như người xây dựng và người xác nhận Ethereum) tự thực hiện cam kết này. Đây chính xác là lý do tại sao có cuộc thảo luận về cách các nhà xây dựng Ethereum và các bên liên quan đang cố gắng cung cấp các xác nhận trước nhanh chóng ở lớp cơ sở.

Có một lưu ý quan trọng cuối cùng ở đây. Giả sử người dùng Rollup có thể quay trở lại hoạt động tương tự như chuỗi chính, giả sử bạn có thể buộc đưa vào hoàn toàn theo tốc độ của các khối chuỗi chính (ví dụ: nếu người đặt hàng Rollup đang kiểm duyệt bạn, bạn có thể buộc đưa vào các giao dịch trên chuỗi chính ô ether tiếp theo khối).

Trong thực tế thường có độ trễ ngắn. Nếu bạn cho phép đưa vào bắt buộc ngay lập tức, bạn có thể bộc lộ MEV kiểm duyệt có lợi cũng như những vấn đề phức tạp khác. Tuy nhiên, có những thiết kế có thể cung cấp sự đảm bảo về tính sống động gần như theo thời gian thực từ chuỗi chính (ví dụ: có thể ở mức nhiều khối chuỗi chính thay vì một).

Bất kể quy mô thời gian chính xác, việc hấp thụ hoạt động cuối cùng của chuỗi chính là rất mạnh mẽ và việc sử dụng chuỗi chính mạnh làm cơ chế phối hợp sẽ mang lại các mối đe dọa đáng tin cậy và quyền thoát ra. Việc chỉ phơi bày mối đe dọa đáng tin cậy này khiến cho việc ngăn chặn hành vi nguy hiểm ngay từ đầu là rất khó xảy ra.

Ví dụ: nếu người dùng có cơ chế đáng tin cậy để buộc thoát hoặc thậm chí buộc xóa một toán tử thì trình sắp xếp tổng hợp tập trung không thể trích xuất tiền thuê từ người dùng theo ý muốn và khóa họ lại. Đây là Chris Goes vềChi phí chuyển đổi MEV cao và chơi game chậmMột lĩnh vực chung được thảo luận trong bài thuyết trình.

Tất nhiên, sự sống động bất ngờ cũng có thể xảy ra, trong trường hợp đó đường dẫn dự phòng này lại có thể rất có giá trị.

Bằng chứng không bảo vệ chuỗi, chúng bảo vệ người dùng

Sau tất cả những điều này, chúng ta có thể thấy rằng đối với một quy tắc xác thực nhất định, việc bảo vệ những người quan sát (người dùng) khác nhau của Bản tổng hợp sẽ chính xác hơn là bảo vệ chính Bản tổng hợp. Tính bảo mật của Rollup không tồn tại dưới dạng một biện pháp cụ thể duy nhất.

Tất nhiên, đảm bảo an toàn cho người quan sát là điều tối quan trọng, vì tất cả chúng ta đều là người quan sát của chuỗi! Chuỗi là bất cứ điều gì người quan sát nó nói. Nếu bạn không thể quan sát nó một cách an toàn, bạn phải tin tưởng người khác (chẳng hạn như người xác nhận) sẽ cho bạn biết sự thật về nó. Nhưng chúng tôi không muốn tin tưởng, chúng tôi muốn xác minh → chúng tôi muốn bằng chứng.

Để hiểu lý do tại sao điều quan trọng là phải phân biệt giữa chuỗi bảo vệ bằng chứng và người quan sát chuỗi bảo vệ bằng chứng, hãy xem xét những điều sau:

  • Nút ánh sáng - Nút ánh sáng tổng hợp sẽ an toàn hơn nếu có bằng chứng, chúng không cần phải tin vào tính xác thực của lời nói của bất kỳ ai;

  • Nút đầy đủ - Các nút đầy đủ tổng hợp không an toàn ít nhiều nếu chúng có bằng chứng, bạn có thể bắt đầu Tổng hợp mà không cần cầu nối tích hợp hoặc thậm chí bất kỳ bằng chứng nào (tổng hợp bi quan), nếu bạn bắt đầu gửi bằng chứng hợp lệ, các nút đầy đủ Bảo mật nút sẽ không tăng hoặc giảm;

Bằng chứng bổ sung tính bảo mật cho những người quan sát chuỗi (tức là các nút nhẹ), những người không thể trực tiếp kiểm tra tính hợp lệ của nó. Chúng tôi không muốn người dùng phải chạy các nút đầy đủ mạnh mẽ, vì vậy những chứng chỉ này rất quan trọng.

Bằng chứng đảm bảo an toàn cho cầu Rollup

Cầu xác minh của Rollup là một người quan sát cực kỳ quan trọng! Bằng chứng đảm bảo sự an toàn của cây cầu!

Giống như bất kỳ nút ánh sáng thông thường nào, bridge không thể trực tiếp kiểm tra tính hợp lệ của việc tổng hợp. Thay vì tin tưởng vào số đông trung thực, chúng ta bảo vệ những cây cầu bằng bằng chứng. Giao thức đồng thuận của Cơ sở dữ liệu A (lớp DA) sắp xếp các đốm màu dữ liệu và sau đó cầu xác minh sẽ kiểm tra độc lập tính hợp lệ của các bản cập nhật tương ứng trong Cơ sở dữ liệu B (Cuộn lên):

Cây cầu là người quan sát chuỗi khác và mọi tài sản do nó tạo ra luôn đi kèm với giả định bảo mật về các quy tắc xác nhận của cây cầu tương ứng. Tính bảo mật của các quy tắc xác nhận của nó có thể có tác động trên phạm vi rộng. Đó là lý do tại sao việc xây dựng các cầu nối an toàn lại rất quan trọng (hoặc lý tưởng nhất là giảm nhu cầu về quá nhiều cầu nối bằng cách mở rộng quy mô thực thi chuỗi đơn ngay từ đầu).

Nếu bạn chạy một nút đầy đủ cho chuỗi, kẻ độc hại không thể lừa bạn chấp nhận chuyển đổi trạng thái không hợp lệ. Tuy nhiên, nếu một bên độc hại có các quy tắc xác nhận khác, nó vẫn có thể giả mạo bridge. Nếu bạn giữ tài sản được đảm bảo bằng tài sản thế chấp trong bridge, tiền của bạn có thể không được đảm bảo. Theo nghĩa này, những sai sót về an ninh trong những cây cầu lừa dối là lây lan.

Hãy xem xét một kịch bản giả định cũ về Terra:

  • Terra có bộ trình xác thực riêng, mã thông báo gốc của nó là LUNA và có thể phát hành UST gốc;

  • Osmosis có bộ xác thực riêng và mã thông báo gốc của nó là OSMO.

  • Chúng tôi có một cầu nối IBC Terra ←→ Thẩm thấu tiêu chuẩn, trong đó mỗi bên chạy các nút ánh sáng trình xác thực đồng thuận của chuỗi khác (tức là mỗi bên của cầu dựa vào phần lớn bộ trình xác thực của chuỗi kia);

  • Bạn với tư cách là người dùng chạy nút đầy đủ của riêng mình cho mỗi chuỗi;

  • Chúng tôi gọi UST về Thẩm thấu được bắc cầu thông qua IBC osmoUST;

  • Chúng tôi gọi OSMO trên Terra được bắc cầu thông qua IBC terraOSMO;

  • Bạn có terraOSMO trên Terra;

  • Bạn đang thực hiện LP trong nhóm osmoUST/OSMO trên Thẩm thấu;

Khi Terra sụp đổ, giá LUNA giảm mạnh và cuối cùng, theo lý thuyết, lợi nhuận của một bộ trình xác thực độc hại sẽ vượt quá giá trị của LUNA đã đặt cọc. Trình xác thực Terra có thể ký các khối không hợp lệ và thực hiện những việc sau:

  • Mint giả UST → Chuỗi chéo tới Osmosis để đúc osmoUST, sử dụng nó để làm cạn kiệt tất cả các cặp giao dịch osmoUST (ví dụ: rút tất cả OSMO khỏi nhóm osmoUST/OSMO;

  • Đúc terraOSMO giả → chuỗi chéo tới Osmosis để rút tất cả tài sản thế chấp OSMO gốc bị khóa trên Osmosis để hỗ trợ terraOSMO, tất cả terraOSMO còn lại trên Terra giờ đây sẽ không còn được hỗ trợ;

  • Chà, bảo mật không thành công ở đây:

  • Nút đầy đủ (tôi) - Nút đầy đủ của tôi nhận ra các khối Terra là không hợp lệ và từ chối chúng, trình xác thực Terra không thể lấy cắp các vị trí terraOSMO hoặc osmoUST/OSMO LP của tôi;

  • Light Node (Bridge) - Cây cầu chỉ kiểm tra xem sự đồng thuận của Terra đã ký các khối hay chưa (không kiểm tra các chuyển đổi trạng thái hợp lệ), do đó, nó không từ chối chúng và trình xác thực Terra có thể đánh cắp tài sản thế chấp OSMO hỗ trợ terraOSMO của tôi và từ osmoUST/OSMO sử dụng hết OSMO trong nhóm (để lại một loạt osmoUST vô giá trị);

Cây cầu sử dụng các quy tắc xác nhận với các giả định tin cậy mạnh mẽ hơn.

Người xác thực Terra không thể đánh cắp số lượng lớn tài sản của Terra từ các nút đầy đủ (chúng không thể bị lừa) và họ sẽ từ chối các khối này. Tuy nhiên, các trình xác thực có thể giả mạo các ứng dụng khách nhẹ của trình xác thực đồng thuận (bao gồm cả cầu nối), đó là lý do tại sao các lỗi đồng thuận có thể ảnh hưởng đến tài sản chuỗi chéo.

Lưu ý rằng điều quan trọng là những lỗi này không lây lan sang phần còn lại của chuỗi, tức là lỗi này lây lan đến các tài sản Osmosis tiếp xúc với tuyến đường Terra Bridge, nhưng không có lỗi bảo mật nào trong chính chuỗi Osmosis.

Tuy nhiên, rõ ràng là chúng tôi muốn kết nối mọi thứ (nói chung là giao tiếp giữa các chuỗi) và sẽ thật tệ nếu bị hạn chế sử dụng nội dung gốc trên chuỗi chính của chúng, chúng tôi cần các chuỗi để giao tiếp an toàn và kết nối giữa các chuỗi.

Là một thử nghiệm tư duy, giải pháp đơn giản nhất là yêu cầu mọi người dùng chạy một nút đầy đủ cho mỗi chuỗi và điều này bao gồm cả chính cầu nối chuỗi chéo. Hãy nhớ rằng chúng tôi đã thấy một số cầu nối nút đầy đủ được nhúng một chiều:

  • Các bản tổng hợp Ethereum hiện yêu cầu các nút của họ chạy các nút đầy đủ của Ethereum và các bản tổng hợp này chia sẻ sự đồng thuận của Ethereum;

  • Namada (một chuỗi Tendermint riêng biệt, không phải chuỗi Rollup) sẽ yêu cầu các nút của nó chạy các nút đầy đủ của Ethereum, tuy nhiên Namada không đồng ý với sự đồng thuận của Ethereum (tức là nó sẽ không xuất bản dữ liệu lên Ethereum hoặc lấy trạng thái của nó dựa trên điều này);

Điều này hoạt động với các nút đầy đủ của Ethereum, nhưng điều này rõ ràng là không mở rộng được. Bạn không thể bắt đầu để mọi chuỗi Cosmos chỉ chạy một nút đầy đủ trên mọi chuỗi Cosmos khác. Những cầu nối toàn nút hai chiều này không mở rộng quy mô mà chỉ làm tăng yêu cầu về phần cứng.

May mắn thay, có một tùy chọn có thể mở rộng hơn. Chúng tôi có thể triển khai các cầu nối để xác minh đầy đủ tính hợp lệ trạng thái và DA của một chuỗi khác (ngoài việc vẫn kiểm tra sự đồng thuận).

Hiệu lực của trạng thái - Mặc dù IBC hiện đang làm việc với các bằng chứng đồng thuận truyền thống, nhưng nó có thể được sửa đổi để thêm bằng chứng về tính hợp lệ được kết nối chuỗi và giờ đây, cầu nối không thể bị đánh lừa bởi các chuyển đổi trạng thái không hợp lệ. Điều này sẽ ngăn chặn chính xác cuộc tấn công được mô tả trước đó, bằng cách từ chối các khối của trình xác thực Terra là không hợp lệ nếu cây cầu có thể xác minh tính hợp lệ của quá trình chuyển đổi trạng thái.

Điều này trông rất giống với cách cầu nối Rollup trên Ethereum kiểm tra bằng chứng Rollup, ngoại trừ ở đây nó cũng có thể là hai chiều.

DA - Ngoài ra, một chuỗi có thể yêu cầu các nút của nó chạy các nút ánh sáng DAS được kết nối với chuỗi. Ví dụ: bạn có thể có hai chuỗi Cosmos yêu cầu trình xác thực riêng của chúng để chạy các nút ánh sáng DAS của chuỗi khác (nếu mỗi chuỗi triển khai ứng dụng khách ánh sáng DAS mà các chuỗi đó hiện không hỗ trợ). Khi điều này được thực hiện, giờ đây mỗi chuỗi có thể biết tính hợp lệ và DA của nhau mà không cần phải chạy một nút đầy đủ.

Với Rollup, theo định nghĩa, bạn sở hữu tất cả dữ liệu trên chuỗi chính, vì vậy các cầu nối ở đó có thể truy cập dữ liệu đó. Mặt khác, các nút cuộn lại chạy các nút chuỗi chính.

Chuỗi phụ thuộc và chuỗi độc lập

Bây giờ chúng ta hãy xem lại năm thuộc tính bảo mật của chúng tôi, trong bối cảnh Cầu xác thực tổng hợp xem xét Rollup trên Ethereum:

  • Tăng trưởng sổ cái - Trình xác thực Ethereum có thể buộc sổ cái của Rollup tiếp tục phát triển (ví dụ: buộc bao gồm các giao dịch);

  • Khả năng chống kiểm duyệt - Trình xác thực Ethereum có thể buộc người vận hành Rollup không bị kiểm duyệt vô thời hạn (ví dụ: buộc đưa vào giao dịch hoặc thay thế trình sắp xếp thứ tự);

  • Phản đối việc tổ chức lại - Việc Rollup phản đối việc tổ chức lại có liên quan đến Ethereum. Nếu Ethereum tổ chức lại thì tất cả các Bản tổng hợp trên Ethereum sẽ được tổ chức lại;

  • Tính khả dụng của dữ liệu - DA của Rollup được đảm bảo vì Rollup theo định nghĩa được lấy từ dữ liệu được xác nhận bởi sự đồng thuận của chuỗi chính (nơi chứa hợp đồng Rollup), Rollup và chuỗi chính chia sẻ sự đồng thuận hợp nhất và DA là điều kiện hợp lệ của chính Ethereum, vì vậy Nếu dữ liệu không có sẵn thì bản thân khối Ethereum không hợp lệ. Cây cầu có thể truy cập dữ liệu trên chuỗi chính mà không cần thêm các giả định về độ tin cậy;

  • Hiệu lực của trạng thái - Hợp đồng sẽ kiểm tra bằng chứng hợp lệ của quá trình chuyển đổi trạng thái Rollup (hoặc đợi cửa sổ thử thách vượt qua), điều này chứng tỏ rằng cập nhật trạng thái được khai báo là kết quả hợp lệ của việc áp dụng STF của Rollup trên dữ liệu tương ứng được xác nhận trên chuỗi chính ;

Lưu ý rằng tính bảo mật của cầu nối được tối đa hóa không chỉ bằng cách gắn các quy tắc xác nhận siêu mạnh vào chuỗi (ví dụ: cầu nối trình xác thực đầy đủ vào chuỗi có bộ trình xác thực siêu đáng tin cậy). Nếu cây cầu có các giả định bảo mật giống như chuỗi chính, bạn sẽ có được mức độ bảo mật tối đa khi chuyển tài sản gốc qua các chuỗi.

Vitalik cung cấp một ví dụ minh họa hữu ích:

“Bạn chuyển 100 ETH đến một cây cầu trên Solana, nhận 100 Solana-WETH, sau đó Ethereum bị tấn công 51%. Kẻ tấn công gửi một loạt ETH của mình vào Solana-WETH, và ngay sau đó được Solana xác nhận Tiếp tục giao dịch từ phía Ethereum. Hợp đồng Solana-WETH hiện không còn được hỗ trợ đầy đủ và có thể 100 Solana-WETH của bạn hiện chỉ có giá trị 60 ETH. Ngay cả với một cầu nối hoàn hảo dựa trên ZK-SNARK xác thực đầy đủ sự đồng thuận, nó vẫn dễ bị tấn công Các cuộc tấn công 51% như thế này.

Do đó, việc nắm giữ tài sản gốc Ethereum trên Ethereum hoặc nắm giữ tài sản gốc Solana trên Solana luôn an toàn hơn so với việc nắm giữ tài sản gốc Ethereum trên Solana hoặc nắm giữ tài sản gốc Solana trên Ethereum. Trong trường hợp này, Ethereum không chỉ đề cập đến chuỗi cơ sở mà còn đề cập đến bất kỳ L2 thích hợp nào được xây dựng trên chuỗi cơ sở đó.

Nếu Ethereum bị tấn công 51% và phục hồi, Arbitrum và Optimism cũng sẽ phục hồi, do đó, các ứng dụng cuộn chéo lưu trạng thái trên Arbitrum và Optimism được đảm bảo duy trì tính nhất quán ngay cả khi Ethereum bị tấn công 51%. Nếu Ethereum không bị tấn công 51% thì không có cách nào để tiến hành cuộc tấn công 51% tương ứng vào Arbitrum và Optimism. Do đó, việc nắm giữ tài sản được phát hành dựa trên Sự lạc quan của Arbitrum vẫn hoàn toàn an toàn.

Bạn có thể thay thế Solana bằng bất kỳ chuỗi nào bạn muốn - thậm chí là một chuỗi giả định mà bạn tin tưởng hơn các trình xác thực của Ethereum, về cơ bản là khi bạn đang nói về việc di chuyển một tài sản qua sổ cái hồ sơ của nó (ví dụ: ETH từ Ethereum) Khi tạo chuỗi, mọi giả định về an toàn đều được phụ gia, và luôn có khả năng một chuỗi được kết nối có thể được tổ chức lại hoặc gặp sự cố về khả năng tồn tại.

Tuy nhiên, các chuỗi có sự đồng thuận hợp nhất (tức là các chuỗi tổng hợp chia sẻ sự đồng thuận của chuỗi chính của chúng) có thể bỏ qua các giả định bảo mật bổ sung này. Các cầu nối chuỗi chéo giữa các khu vực khác nhau này có thể có cùng đặc tính kháng hoạt động và tái tổ hợp cuối cùng giống như chính xương sống. Sự đồng thuận được chia sẻ giảm thiểu các giả định về niềm tin xuyên chuỗi trong vùng bảo mật chung này.

Bạn có quyền quyết định đâu là giả định bảo mật hợp lý. Trên thực tế, chưa bao giờ có sự thất bại về đồng thuận tương tự giữa các chuỗi lớn. Điều này là hiển nhiên và tốn kém, nhưng nó có thể là một giả định mạnh mẽ hơn để kết nối các chuỗi yếu hơn.

Việc liên kết chuỗi Rollup với chuỗi chính cũng có một số nhược điểm. Hãy so sánh hai kịch bản chuỗi chéo, trong cả hai trường hợp, chúng ta có hai chuỗi được bắc cầu qua các chuỗi bằng cách sử dụng trình xác thực đầy đủ hai chiều:

  • Phụ thuộc - Chuỗi từ xa (tức là Rollup) chia sẻ sự đồng thuận của chuỗi chính (tức là lớp DA) và lấy trạng thái riêng của nó từ dữ liệu trên chuỗi chính. Chuỗi từ xa phải phân nhánh cùng với chuỗi chính và xác định trạng thái cuối cùng của nó dựa trên trên chuỗi chính.sex;

  • Độc lập - Các chuỗi này có sự đồng thuận độc lập của riêng mình và chúng không lấy được trạng thái riêng dựa trên dữ liệu trên các chuỗi khác. Họ không chia sẻ mối quan hệ chuỗi từ xa (tức là Rollup) ←→ chuỗi chính (tức là lớp DA). Chúng không tập hợp lại với nhau và không phụ thuộc vào hoạt động của nhau;

  • Điều thú vị là có những ưu và nhược điểm sau:

  • Xấu - Việc sắp xếp lại chuỗi của bạn với các chuỗi khác hoặc gặp trục trặc về hoạt động lúc đầu nghe có vẻ bất lợi, tại sao chuỗi của tôi lại gặp vấn đề vì chuỗi của bạn bị hỏng?

  • Tốt - đây thực sự là một lợi ích quan trọng nếu sự phân kỳ này gây ra vấn đề nghiêm trọng trên chuỗi của bạn (ví dụ: nếu bạn có một số lượng lớn tài sản chuỗi chéo từ chuỗi nguồn, thì việc tổ chức lại từ góc độ cầu nối chuỗi chéo của bạn, để lại tài sản thế chấp không được hỗ trợ), chuỗi và các cầu nối chuỗi chéo của nó cần phải nhất quán với nhau;

Tương tự như vậy, có những tác động tích cực và tiêu cực tiềm tàng của việc khóa tài khoản và trục lợi quá mức, điều này nêu bật lý do tại sao lớp cơ sở trung lập và chống kiểm duyệt lại quan trọng đến vậy:

  • Tốt - Chuỗi chính tốt có thể bảo vệ người dùng Rollup khỏi các toán tử Rollup trích xuất quá nhiều giá trị từ họ, từ đó thực thi quyền thoát;

  • Xấu - Chuỗi chính kém có thể tùy tiện tăng giá và lấy giá trị đó từ Rollup và chính người dùng của nó;

  • Ngoài ra còn có một số điểm kém hiệu quả với bằng chứng gửi + chạy DAS theo cả hai hướng thay vì chia sẻ chuỗi chính chung:

  • Bạn không muốn yêu cầu các nút của mình chạy các nút ánh sáng DAS trên một loạt chuỗi khác và phải thêm chuỗi mới theo cách thủ công, việc chạy DAS trên một lớp DA được chia sẻ khổng lồ sẽ hiệu quả hơn nhiều;

  • Việc mỗi chuỗi xác minh hai chiều bằng chứng hợp lệ cho nhiều chuỗi khác nhau là không hiệu quả, tuy nhiên, về mặt lý thuyết có thể tổng hợp các bằng chứng trên nhiều chuỗi để toàn bộ cụm chuỗi chỉ cần xuất bản một bằng chứng duy nhất cho chuỗi;

Ở đây có sự đánh đổi và lợi ích, nhưng cũng hãy nhớ rằng các tài sản thú vị có sự phụ thuộc rất lớn vào đường dẫn, trong đó, nếu bạn muốn sử dụng một loạt tài sản gốc Ethereum (bao gồm cả những tài sản trong Rollup của nó), thì hãy root chuỗi của bạn trong Ethereum và những cây cầu xuyên chuỗi của nó có ý nghĩa.

Tóm lại là

An toàn kế thừa tổng hợp là một cách viết tắt hay, nhưng hãy nhớ rằng đây là những điểm chính thể hiện ý nghĩa thực sự của chúng tôi:

  • Rollup trả tiền thuê cho chuỗi chính của nó (ví dụ: Ethereum) cho các tài nguyên mà nó tiêu thụ (DA);

  • Rollup có thể hiển thị các quy tắc xác nhận có thuộc tính bảo mật cao như chuỗi chính (tức là người dùng có thể nhận được các đảm bảo bảo mật tương tự như khi vận hành trên chính chuỗi chính);

  • Người dùng có được các thuộc tính bảo mật chuỗi chính này với tốc độ đồng thuận của chuỗi chính;

  • Nếu người dùng Rollup muốn xác nhận nhanh hơn chuỗi chính cung cấp, họ có thể sử dụng các quy tắc xác nhận để đưa ra các giả định bảo mật tạm thời bổ sung;

  • Người quan sát (tức là người dùng) tương tác với Rollup thông qua các quy tắc xác nhận. Cầu nối xác minh với các giả định về độ tin cậy tối thiểu là người quan sát (tùy chọn nhưng rất có giá trị);

Bây giờ, hãy xem xét

Sự an toàn
chuỗi chéo
Chào mừng tham gia cộng đồng chính thức của Odaily
Nhóm đăng ký
https://t.me/Odaily_News
Tài khoản chính thức
https://twitter.com/OdailyChina