Là một hệ thống phân tán, Lớp 1 yêu cầu chi phí liên lạc cao để đạt được sự đồng thuận và một lượng lớn phép tính cũng sẽ tiêu tốn xăng đắt đỏ. Do đó, như một phần mở rộng của Layer1, thiết kế của Layer2 có thể cải thiện hiệu quả của Layer1 một cách hiệu quả. Nhưng từ góc độ này, thiết kế của Lớp 2 vẫn gặp phải một vấn đề lớn giống như Lớp 1, đó là làm thế nào để cân bằng giữa mức độ phân quyền và hiệu quả.
zkRollup là một giải pháp mở rộng Lớp 2 rất hứa hẹn, được thực hiện bằng cách di chuyển các tính toán ra khỏi chuỗi và cung cấp bằng chứng không kiến thức cho chuỗi Lớp 1. Trong giải pháp để hiện thực hóa zkRollup, hệ thống FOX áp dụng cấu trúc chính hiện tại và chủ yếu có hai loại nút, đó là Sequencer và Folder. Nói một cách đơn giản, Sequencer chịu trách nhiệm sắp xếp và đóng gói các giao dịch do người dùng gửi và cập nhật trạng thái trên chuỗi Lớp 2. Thư mục chịu trách nhiệm tạo bằng chứng cho các giao dịch được đóng gói bởi Sequencer và gửi chúng đến Lớp 1.
Một câu hỏi thú vị là liệu các nút Lớp 2 có nên được phân cấp hay không và nếu có thì làm thế nào để thiết kế các ưu đãi để đảm bảo điều này. Bởi vì có thể hình dung rằng bản chất của hiệu quả thấp của Lớp 1 là để đạt được sự phân cấp, mỗi nút cần thực hiện một lượng lớn tính toán và giao tiếp. Tuy nhiên, hệ thống Lớp 2 được sử dụng để tách riêng quá trình tính toán, nếu mô hình phi tập trung hoàn toàn tương đương với Lớp 1 vẫn được sử dụng trong phần này, nó sẽ gây ra tắc nghẽn Lớp 2 vì lý do tương tự, vì vậy cần phải đánh đổi được làm ở đây.
Thiết kế của cơ chế khuyến khích nhằm khuyến khích các nút tham gia bảo trì hệ thống Lớp 2 bằng cách điều chỉnh cách các nút Lớp 2 nhận phí khuyến khích và cân bằng phí trả cho các nút Lớp 2. Về bản chất, nguồn phí khuyến khích mà các nút Lớp 2 nhận được cũng giống như nguồn của Ethereum, xuất phát từ phí gas được trả bởi người dùng gửi giao dịch. Bài viết này sẽ thảo luận về hệ thống FOX, cách các nút FOX tham gia vào hệ thống để thu phí giao dịch và lý do để làm như vậy.
Vai trò của Khí
Đầu tiên, hãy xem lại vai trò của phí Gas trong hệ thống Ethereum. Tài nguyên máy tính của Lớp 1 là có hạn. Khi người dùng gửi giao dịch, họ sẽ chỉ định phí gas giao dịch. Phí gas về cơ bản liên quan đến mức độ phức tạp của thao tác thực hiện giao dịch. Trên cơ sở này, người dùng sẵn sàng trả một phí gas cao hơn có thể nhận được thực hiện giao dịch ưu tiên cao hơn. Các ưu đãi dành cho người khai thác đến từ tổng phí gas của các khối được đóng gói. Ngoài ra, cơ chế phí Gas cũng có thể ngăn chặn hiệu quả các hợp đồng độc hại (chẳng hạn như vòng lặp vô hạn) và giới hạn kích thước khối, điều này đảm bảo tính bảo mật ở một mức độ nhất định.
Do đó, có thể thấy rằng việc sử dụng hợp lý phí Gas thực chất là việc lập lịch trình và phân bổ hợp lý tài nguyên máy tính trên chuỗi, đồng thời đây cũng là trò chơi nhiều bên giữa các bên dự án, thợ đào và người dùng. Một thiết kế tốt về cơ chế khuyến khích và việc sử dụng cũng như phân phối phí là rất quan trọng đối với hoạt động của hệ thống.
Quy trình giao dịch trên chuỗi
Khi người dùng gửi giao dịch đến nhóm giao dịch trong hệ thống FOX, một khoản phí sẽ được thêm vào để thúc đẩy nút FOX và sau đó nút Sequencer trong hệ thống sẽ lấy giao dịch từ nhóm giao dịch để đóng gói và phân loại, trong đó mỗi giao dịch được đóng gói cấu thành các khối Lớp 2 và Sequencer cần thực hiện các phép tính giao dịch và truyền kết quả tính toán đến hợp đồng FOX Lớp 1, đồng thời Sequencer cũng cần lưu trữ dữ liệu giao dịch trong ZK-Ringer để đảm bảo tính khả dụng của dữ liệu. Sau đó, kết quả sắp xếp và kết quả tính toán của Sequencer sẽ được chuyển đến nút Thư mục và Thư mục sẽ tính toán chính xác bằng chứng (bao gồm cả phần tổng hợp bằng chứng) và chuyển nó đến hợp đồng Lớp1. Trong quá trình này, kết quả thực hiện giao dịch của Sequencer sẽ được cập nhật trực tiếp lên Lớp 2 sau khi thực hiện xong và nút thời gian khi giao dịch thực sự được đồng thuận bởi Lớp 1 có thể được coi là sau khi bằng chứng của Thư mục được xác minh.
Có thể thấy rằng trong quá trình này, phí xử lý ban đầu do người dùng đính kèm bao gồm một số mục đích:
Phí xử lý trả cho Sequencer
Phí xử lý trả cho Thư mục
Phí gas cho Sequencer gửi kết quả giao dịch lên Layer1
Sequencer tính phí lưu trữ thông tin trong ZK-Ringer
Phí Gas cho Thư mục gọi hợp đồng
Muốn vậy, chúng ta cần sắp xếp các cơ chế cụ thể để thúc đẩy tất cả các bên tham gia.
Cơ chế khuyến khích của FOX
Mô hình khuyến khích của FOX tương đối mới. Đầu tiên, để cân bằng các vấn đề về phân cấp và hiệu quả, chúng tôi phân chia vai trò của các nút thành các nút Sequencer chịu trách nhiệm sắp xếp và thực hiện các giao dịch và các nút Thư mục chịu trách nhiệm tạo và tổng hợp bằng chứng về tính chính xác của việc thực hiện giao dịch. Nút Thư mục của FOX áp dụng mô hình phi tập trung, có nghĩa là bất kỳ công cụ khai thác FOX nào cũng có thể truy cập mạng dưới dạng trình tạo bằng chứng. Để khuyến khích nhiều nút hơn tham gia, Thư mục gửi thành công bằng chứng chính xác cho hợp đồng Lớp 1 có thể nhận được phần thưởng mã thông báo. Đồng thời, để tránh lãng phí sức mạnh tính toán, chúng tôi chỉ ra rằng không chỉ người gửi bằng chứng đầu tiên mới có thể nhận được phần thưởng mà trong khoảng thời gian và cửa sổ số lượng sau khi người gửi bằng chứng đầu tiên gửi thành công (các thông số cụ thể ở đây sẽ thay đổi theo điều kiện hệ thống), tất cả những người xác nhận chính xác đều có thể được khen thưởng.
Hình 1: Phiên bản gốc của mô hình khuyến khích
Tuy nhiên, theo cơ chế này, một Folder độc hại sẽ có cách tấn công rất xảo quyệt.
Khi một Thư mục độc hại, được ký hiệu là Adv, hoàn thành việc tạo bằng chứng, một mặt, nó sẽ gửi bằng chứng cho hợp đồng Người xác minh ở Lớp 1 để xác minh và mặt khác, nó thông đồng với một số nút (hoặc các nút do Thư mục kiểm soát) và sẽ tiết lộ bằng chứng tính toán cho các nút này và sau đó họ có thể gửi trực tiếp bằng chứng do Adv tính toán mà không cần tính toán riêng và cũng có thể nhận được một phần phần thưởng và họ không phải trả bất kỳ sức mạnh tính toán nào trong quá trình này. Nói cách khác, Adv thu được nhiều lợi ích với ít sức mạnh tính toán hơn và khiến các nút khác khó cạnh tranh để giành được Adv ngay cả khi chúng tạo ra bằng chứng chính xác.
Hình 2: Phương thức tấn công của Folder độc hại
Trong cuộc tấn công này, lý do của vấn đề là Trình xác minh không thể phân biệt liệu mỗi chứng chỉ có được tạo độc lập bởi Thư mục hay không, vì giá trị chứng chỉ là như nhau. Để tránh sự cố này, chúng tôi cần thêm thông tin địa chỉ duy nhất của Thư mục vào chứng chỉ do Thư mục gửi để chứng chỉ do mỗi Thư mục gửi chỉ có thể được tạo độc lập bởi chính nó và không thể được gửi bởi các nút khác.
Phương pháp kết hợp thông tin này rất thông minh, sử dụng Fiat-Shamir heuristic (độc giả có thể tham khảo bài viết trước của FOX "Làm thế nào để chuyển đổi bằng chứng tương tác thành bằng chứng không tương tác? Fiat-Shamir Heuristic!" để biết chi tiết kỹ thuật). Được tính theo quy trình tạo bằng chứng, một trong các bước, người chứng minh, tức là Thư mục cần tạo giá trị thử thách ngẫu nhiên thông qua hàm băm và chỉ cần thêm địa chỉ của Thư mục vào đầu vào của hàm băm này, để giá trị thách thức và Thư mục tương ứng với địa chỉ và vẫn là một số ngẫu nhiên mà Thư mục không thể dự đoán và kiểm soát.
Nói rõ tính bảo mật của phương pháp này yêu cầu sử dụng các khái niệm về hàm ngẫu nhiên an toàn về mặt lý thuyết trong mật mã và tính không thể phân biệt, v.v., mà chúng tôi sẽ không thảo luận chi tiết ở đây. Nói một cách đơn giản, có thể coi rằng do tính bảo mật của chính hàm băm và tính bảo mật của cấu trúc heuristic Fiat-Shamir, việc thêm một giá trị cố định làm tiền đề của hàm băm sẽ không phá hủy tính không thể đoán trước của đầu ra, vì vậy bảo mật thuật toán zkp ban đầu vẫn được đảm bảo.
Theo cách này, mỗi Thư mục phải tạo bằng chứng một cách độc lập và không thể sử dụng trực tiếp kết quả của các nút khác, do đó đạt được mục tiêu của chúng tôi.
Hình 3: Lược đồ khuyến khích sửa đổi
Phần kết luận
Từ góc độ vai trò quan trọng của phí nút, bài viết này giới thiệu mối liên hệ giữa phí và cách thúc đẩy các nút tham gia bảo trì hệ thống, đồng thời chỉ ra rằng một cơ chế khuyến khích tốt có thể duy trì bảo mật hệ thống một cách hiệu quả. Trên cơ sở này, chúng tôi đã thảo luận chi tiết về cơ chế khuyến khích dành cho Thư mục Lớp 2 được FOX áp dụng và giải thích tính hợp lý của phương pháp này cũng như cách sử dụng phương pháp phỏng đoán Fiat-Shamir một cách khéo léo để đạt được điều này.
người giới thiệu
"Chuyên sâu|Lặp lại và Cạnh tranh - Con đường mở rộng Lớp 2 của Ethereum" Viện Nghiên cứu Chuỗi khối Guosheng
Xem bản gốc
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
Nói về cơ chế khuyến khích của Lớp 2: một cách sử dụng tuyệt vời khác của Fiat-Shamir heuristic trong FOX
Lời nói đầu
Là một hệ thống phân tán, Lớp 1 yêu cầu chi phí liên lạc cao để đạt được sự đồng thuận và một lượng lớn phép tính cũng sẽ tiêu tốn xăng đắt đỏ. Do đó, như một phần mở rộng của Layer1, thiết kế của Layer2 có thể cải thiện hiệu quả của Layer1 một cách hiệu quả. Nhưng từ góc độ này, thiết kế của Lớp 2 vẫn gặp phải một vấn đề lớn giống như Lớp 1, đó là làm thế nào để cân bằng giữa mức độ phân quyền và hiệu quả.
zkRollup là một giải pháp mở rộng Lớp 2 rất hứa hẹn, được thực hiện bằng cách di chuyển các tính toán ra khỏi chuỗi và cung cấp bằng chứng không kiến thức cho chuỗi Lớp 1. Trong giải pháp để hiện thực hóa zkRollup, hệ thống FOX áp dụng cấu trúc chính hiện tại và chủ yếu có hai loại nút, đó là Sequencer và Folder. Nói một cách đơn giản, Sequencer chịu trách nhiệm sắp xếp và đóng gói các giao dịch do người dùng gửi và cập nhật trạng thái trên chuỗi Lớp 2. Thư mục chịu trách nhiệm tạo bằng chứng cho các giao dịch được đóng gói bởi Sequencer và gửi chúng đến Lớp 1.
Một câu hỏi thú vị là liệu các nút Lớp 2 có nên được phân cấp hay không và nếu có thì làm thế nào để thiết kế các ưu đãi để đảm bảo điều này. Bởi vì có thể hình dung rằng bản chất của hiệu quả thấp của Lớp 1 là để đạt được sự phân cấp, mỗi nút cần thực hiện một lượng lớn tính toán và giao tiếp. Tuy nhiên, hệ thống Lớp 2 được sử dụng để tách riêng quá trình tính toán, nếu mô hình phi tập trung hoàn toàn tương đương với Lớp 1 vẫn được sử dụng trong phần này, nó sẽ gây ra tắc nghẽn Lớp 2 vì lý do tương tự, vì vậy cần phải đánh đổi được làm ở đây.
Thiết kế của cơ chế khuyến khích nhằm khuyến khích các nút tham gia bảo trì hệ thống Lớp 2 bằng cách điều chỉnh cách các nút Lớp 2 nhận phí khuyến khích và cân bằng phí trả cho các nút Lớp 2. Về bản chất, nguồn phí khuyến khích mà các nút Lớp 2 nhận được cũng giống như nguồn của Ethereum, xuất phát từ phí gas được trả bởi người dùng gửi giao dịch. Bài viết này sẽ thảo luận về hệ thống FOX, cách các nút FOX tham gia vào hệ thống để thu phí giao dịch và lý do để làm như vậy.
Vai trò của Khí
Đầu tiên, hãy xem lại vai trò của phí Gas trong hệ thống Ethereum. Tài nguyên máy tính của Lớp 1 là có hạn. Khi người dùng gửi giao dịch, họ sẽ chỉ định phí gas giao dịch. Phí gas về cơ bản liên quan đến mức độ phức tạp của thao tác thực hiện giao dịch. Trên cơ sở này, người dùng sẵn sàng trả một phí gas cao hơn có thể nhận được thực hiện giao dịch ưu tiên cao hơn. Các ưu đãi dành cho người khai thác đến từ tổng phí gas của các khối được đóng gói. Ngoài ra, cơ chế phí Gas cũng có thể ngăn chặn hiệu quả các hợp đồng độc hại (chẳng hạn như vòng lặp vô hạn) và giới hạn kích thước khối, điều này đảm bảo tính bảo mật ở một mức độ nhất định.
Do đó, có thể thấy rằng việc sử dụng hợp lý phí Gas thực chất là việc lập lịch trình và phân bổ hợp lý tài nguyên máy tính trên chuỗi, đồng thời đây cũng là trò chơi nhiều bên giữa các bên dự án, thợ đào và người dùng. Một thiết kế tốt về cơ chế khuyến khích và việc sử dụng cũng như phân phối phí là rất quan trọng đối với hoạt động của hệ thống.
Quy trình giao dịch trên chuỗi
Khi người dùng gửi giao dịch đến nhóm giao dịch trong hệ thống FOX, một khoản phí sẽ được thêm vào để thúc đẩy nút FOX và sau đó nút Sequencer trong hệ thống sẽ lấy giao dịch từ nhóm giao dịch để đóng gói và phân loại, trong đó mỗi giao dịch được đóng gói cấu thành các khối Lớp 2 và Sequencer cần thực hiện các phép tính giao dịch và truyền kết quả tính toán đến hợp đồng FOX Lớp 1, đồng thời Sequencer cũng cần lưu trữ dữ liệu giao dịch trong ZK-Ringer để đảm bảo tính khả dụng của dữ liệu. Sau đó, kết quả sắp xếp và kết quả tính toán của Sequencer sẽ được chuyển đến nút Thư mục và Thư mục sẽ tính toán chính xác bằng chứng (bao gồm cả phần tổng hợp bằng chứng) và chuyển nó đến hợp đồng Lớp1. Trong quá trình này, kết quả thực hiện giao dịch của Sequencer sẽ được cập nhật trực tiếp lên Lớp 2 sau khi thực hiện xong và nút thời gian khi giao dịch thực sự được đồng thuận bởi Lớp 1 có thể được coi là sau khi bằng chứng của Thư mục được xác minh.
Có thể thấy rằng trong quá trình này, phí xử lý ban đầu do người dùng đính kèm bao gồm một số mục đích:
Muốn vậy, chúng ta cần sắp xếp các cơ chế cụ thể để thúc đẩy tất cả các bên tham gia.
Cơ chế khuyến khích của FOX
Mô hình khuyến khích của FOX tương đối mới. Đầu tiên, để cân bằng các vấn đề về phân cấp và hiệu quả, chúng tôi phân chia vai trò của các nút thành các nút Sequencer chịu trách nhiệm sắp xếp và thực hiện các giao dịch và các nút Thư mục chịu trách nhiệm tạo và tổng hợp bằng chứng về tính chính xác của việc thực hiện giao dịch. Nút Thư mục của FOX áp dụng mô hình phi tập trung, có nghĩa là bất kỳ công cụ khai thác FOX nào cũng có thể truy cập mạng dưới dạng trình tạo bằng chứng. Để khuyến khích nhiều nút hơn tham gia, Thư mục gửi thành công bằng chứng chính xác cho hợp đồng Lớp 1 có thể nhận được phần thưởng mã thông báo. Đồng thời, để tránh lãng phí sức mạnh tính toán, chúng tôi chỉ ra rằng không chỉ người gửi bằng chứng đầu tiên mới có thể nhận được phần thưởng mà trong khoảng thời gian và cửa sổ số lượng sau khi người gửi bằng chứng đầu tiên gửi thành công (các thông số cụ thể ở đây sẽ thay đổi theo điều kiện hệ thống), tất cả những người xác nhận chính xác đều có thể được khen thưởng.
Hình 1: Phiên bản gốc của mô hình khuyến khích
Tuy nhiên, theo cơ chế này, một Folder độc hại sẽ có cách tấn công rất xảo quyệt.
Khi một Thư mục độc hại, được ký hiệu là Adv, hoàn thành việc tạo bằng chứng, một mặt, nó sẽ gửi bằng chứng cho hợp đồng Người xác minh ở Lớp 1 để xác minh và mặt khác, nó thông đồng với một số nút (hoặc các nút do Thư mục kiểm soát) và sẽ tiết lộ bằng chứng tính toán cho các nút này và sau đó họ có thể gửi trực tiếp bằng chứng do Adv tính toán mà không cần tính toán riêng và cũng có thể nhận được một phần phần thưởng và họ không phải trả bất kỳ sức mạnh tính toán nào trong quá trình này. Nói cách khác, Adv thu được nhiều lợi ích với ít sức mạnh tính toán hơn và khiến các nút khác khó cạnh tranh để giành được Adv ngay cả khi chúng tạo ra bằng chứng chính xác.
Hình 2: Phương thức tấn công của Folder độc hại
Trong cuộc tấn công này, lý do của vấn đề là Trình xác minh không thể phân biệt liệu mỗi chứng chỉ có được tạo độc lập bởi Thư mục hay không, vì giá trị chứng chỉ là như nhau. Để tránh sự cố này, chúng tôi cần thêm thông tin địa chỉ duy nhất của Thư mục vào chứng chỉ do Thư mục gửi để chứng chỉ do mỗi Thư mục gửi chỉ có thể được tạo độc lập bởi chính nó và không thể được gửi bởi các nút khác.
Phương pháp kết hợp thông tin này rất thông minh, sử dụng Fiat-Shamir heuristic (độc giả có thể tham khảo bài viết trước của FOX "Làm thế nào để chuyển đổi bằng chứng tương tác thành bằng chứng không tương tác? Fiat-Shamir Heuristic!" để biết chi tiết kỹ thuật). Được tính theo quy trình tạo bằng chứng, một trong các bước, người chứng minh, tức là Thư mục cần tạo giá trị thử thách ngẫu nhiên thông qua hàm băm và chỉ cần thêm địa chỉ của Thư mục vào đầu vào của hàm băm này, để giá trị thách thức và Thư mục tương ứng với địa chỉ và vẫn là một số ngẫu nhiên mà Thư mục không thể dự đoán và kiểm soát.
Nói rõ tính bảo mật của phương pháp này yêu cầu sử dụng các khái niệm về hàm ngẫu nhiên an toàn về mặt lý thuyết trong mật mã và tính không thể phân biệt, v.v., mà chúng tôi sẽ không thảo luận chi tiết ở đây. Nói một cách đơn giản, có thể coi rằng do tính bảo mật của chính hàm băm và tính bảo mật của cấu trúc heuristic Fiat-Shamir, việc thêm một giá trị cố định làm tiền đề của hàm băm sẽ không phá hủy tính không thể đoán trước của đầu ra, vì vậy bảo mật thuật toán zkp ban đầu vẫn được đảm bảo.
Theo cách này, mỗi Thư mục phải tạo bằng chứng một cách độc lập và không thể sử dụng trực tiếp kết quả của các nút khác, do đó đạt được mục tiêu của chúng tôi.
Hình 3: Lược đồ khuyến khích sửa đổi
Phần kết luận
Từ góc độ vai trò quan trọng của phí nút, bài viết này giới thiệu mối liên hệ giữa phí và cách thúc đẩy các nút tham gia bảo trì hệ thống, đồng thời chỉ ra rằng một cơ chế khuyến khích tốt có thể duy trì bảo mật hệ thống một cách hiệu quả. Trên cơ sở này, chúng tôi đã thảo luận chi tiết về cơ chế khuyến khích dành cho Thư mục Lớp 2 được FOX áp dụng và giải thích tính hợp lý của phương pháp này cũng như cách sử dụng phương pháp phỏng đoán Fiat-Shamir một cách khéo léo để đạt được điều này.
người giới thiệu
"Chuyên sâu|Lặp lại và Cạnh tranh - Con đường mở rộng Lớp 2 của Ethereum" Viện Nghiên cứu Chuỗi khối Guosheng