Để giải quyết vấn đề mở rộng của mạng lớp 1 blockchain, giải pháp Rollup đã ra đời. Kết hợp với công nghệ ZK, ZK Rollup đã trở thành con cưng mới của đường đua Layer 2. Tuy nhiên, đối với hầu hết mọi người, các khái niệm liên quan như ZK, Rollup và EVM có thể có ngưỡng hiểu biết nhất định. Do đó, mục tiêu của báo cáo nghiên cứu này là sắp xếp một cách có hệ thống một loạt các khái niệm về zkEVM Rollup cho bạn bằng ngôn ngữ ngắn gọn và dễ hiểu, phân tích sâu sắc quá trình tiến hóa và trạng thái phát triển của công nghệ zkEVM Rollup, đồng thời diễn giải sinh thái chính. dự án một cách chi tiết. Nó được thiết kế để giúp bạn hiểu đầy đủ và đánh giá xu hướng phát triển của bản nhạc Tổng hợp zkEVM.
PHẦN 1Hiểu về ZK
ZK (hoặc ZKP), tên đầy đủ là Zero-Knowledge Proof, nghĩa là bằng chứng không có kiến thức. bên kia (người xác nhận xác minh) để chứng minh một sự việc mà không tiết lộ thông tin cụ thể của sự việc, tức là một bên (người chứng minh) có thể cho bên kia biết sự việc có chính xác hay không mà không cần tiết lộ bất kỳ "thông tin cụ thể" nào của thực tế, vì vậy công nghệ ZK có thể được sử dụng trong sự riêng tư Lĩnh vực bảo vệ mang đến cho chúng ta rất nhiều chỗ cho trí tưởng tượng.
Tất nhiên, ngoài những lợi ích về bảo vệ quyền riêng tư mà công nghệ ZK có thể mang lại, trong ZK Rollup, công nghệ ZK quan trọng hơn là giải quyết vấn đề "khó xác minh". Quá trình "xác minh" rất quan trọng đối với chuỗi khối, hầu hết quá trình tính toán trong Ethereum là để đáp ứng các yêu cầu xác minh và ZK Rollup có thể giảm đáng kể thời gian xác minh của toàn bộ mạng nút. Ví dụ: nếu một khối mất nhiều thời gian để xác minh rằng nó đáp ứng các quy tắc của toàn bộ mạng khi khối đó được tạo, thì có thể có một người xác minh đầu tiên xác minh khối đó và tạo ra một "bằng chứng" về kết quả tính toán của khối này. và phần còn lại Mục đích của việc xác minh khối có thể đạt được bằng cách nhanh chóng xác minh "bằng chứng" này thay vì khối ban đầu với khối lượng tính toán khổng lồ.
Một giao thức ZK đơn giản được chia thành các bước sau, tạo khóa, bằng chứng và xác minh, và tôi sẽ phân tích từng bước một cho bạn.
01Tạo khóa, bằng chứng và xác minh
Trong ZK, trước tiên chúng ta cần chuyển đổi vấn đề cần xác minh thành biểu thức toán học, sau đó thành đa thức và biểu thị nó dưới dạng một mạch số học. Khi một chương trình được chuyển đổi thành một mạch số học, nó được chia thành các bước riêng lẻ bao gồm các phép tính số học cơ bản như cộng, trừ, v.v. Là một chức năng sẽ được xuất ra, nó có thể được chuyển đổi thành sơ đồ mạch sau, xem Hình 1.
Hình 1 Ví dụ về sơ đồ mạch, có thể nhận thấy mọi thao tác trong mạch được chia thành các thao tác cơ bản đơn giản nhất | Nguồn
Sử dụng mạch này và một số số ngẫu nhiên làm đầu vào, chúng tôi có thể tạo khóa xác minh (pk, khóa xác minh) và khóa xác minh (vk, khóa xác minh) cho quá trình xác minh tiếp theo, sơ đồ nguyên lý được hiển thị trong Hình 2.
Hình 2 Tạo "tham số công cộng"
Hệ thống bằng chứng của chúng tôi cũng yêu cầu hai loại đầu vào - riêng tư và công khai, cùng với khóa bằng chứng để tạo bằng chứng. Trong số đó, thông tin đầu vào riêng tư (nhân chứng) là bí mật mà chúng tôi muốn che giấu và thông tin đầu vào công khai là thông tin có thể được công khai. Ví dụ: trong phương trình X+Y*Z=OUT, X và OUT là đầu vào công khai, trong khi Y và Z có các giá trị mà chúng tôi không muốn công khai cho trình xác thực. Mặc dù giá trị của Y*Z có thể được suy ra dựa trên đầu vào công khai, nhưng giá trị cụ thể của Y và Z vẫn chưa chắc chắn.
Hình 3 Quy trình chứng minh và quy trình xác minh của ZK-SNARK
Khi người xác minh nhận được bằng chứng, nó sẽ sử dụng đầu vào công khai, bằng chứng và khóa xác minh để xác minh bằng chứng và trả về kết quả xác minh (nghĩa là xác minh có thành công hay không).
Sau khi hiểu quy trình trên, chúng ta có thể áp dụng công nghệ xác minh khối này để nhận ra một ZK-SNARK nhỏ, như trong Hình 3. Có nhiều giao thức và phương pháp để thực hiện bằng chứng không kiến thức.SNARK tương đối dễ hiểu và nó cũng là lựa chọn của hầu hết các dự án ở giai đoạn này. Trong đoạn "Từ ZK-SNARK đến ZK-STARK", chúng ta sẽ nói về những ưu điểm và nhược điểm của SNARK.
02Hãy thử một chút SNARK
Hãy lấy bằng chứng không kiến thức về Cây Merkle ghi lại trạng thái tài khoản làm ví dụ để thực hành. Cây Merkle ghi lại địa chỉ và số dư của tài khoản. Khi có giao dịch mới cần cập nhật Merkle Tree, chúng ta cần thực hiện các thao tác sau:
Xác minh rằng người gửi và người nhận giao dịch nằm trên các nút lá của cây.
Xác minh chữ ký của người gửi.
Cập nhật số dư của người gửi và người nhận.
Cập nhật nút gốc của Cây Merkle (tức là Gốc Merkle) và sử dụng nó làm đầu ra cuối cùng.
Trong trường hợp không có bằng chứng về kiến thức bằng không, người xác minh cần lặp lại các bước này để đảm bảo tính chính xác của phép tính. Nhưng sau khi sử dụng bằng chứng không kiến thức, tình hình đã khác. Đầu tiên, chúng ta cần xác định hai loại đầu vào:
Trong quá trình này, chỉ có thông tin giao dịch mới, Merkle Root ban đầu và Merkle Root cập nhật là thông tin đầu vào công khai.
Merkle Tree tự đóng vai trò là nhân chứng (witness) và không cần người xác minh đọc hoặc xử lý.
Thứ hai, chúng ta cần tạo khóa và tính toán mạch. Chúng tôi xây dựng các quy trình tính toán như cập nhật Merkle Tree và xác minh địa chỉ đầu vào và đầu ra vào các mạch tính toán để có được các khóa kiểm chứng và khóa xác minh. Mạch này không liên quan gì đến thông tin giao dịch đầu vào, cũng như với Merkle Root hiện có, bởi vì phương pháp tính toán của Merkle Tree là cố định.
Trong giai đoạn tạo bằng chứng, chúng tôi lấy hai Cây Merkle và thông tin giao dịch làm đầu vào. Trong giai đoạn xác minh, người xác minh có thể đảm bảo độ tin cậy của bản cập nhật mà không cần lấy Merkle Tree, tức là không biết thông tin tài khoản. Mạch giống như một hộp đen đặc, miễn là đầu vào đúng, nó sẽ nhận được đầu ra chính xác.
Bằng cách sử dụng bằng chứng không có kiến thức, những người xác minh khác có thể nhanh chóng xác minh rằng quy trình tạo Merkle Tree là đáng tin cậy, do đó giảm thời gian xác minh lặp lại trên mạng và thông tin của Cây Merkle không cần phải tiết lộ cho người xác minh.
03Từ ZK-SNARK đến ZK-STARK
Giao thức chứng minh được đề cập ở trên là ZK-SNARKs. SNARK là viết tắt của các đối số tri thức không tương tác ngắn gọn, trong đó ngắn gọn đề cập đến tính ngắn gọn của phương pháp này và không tương tác đề cập đến điều đó so với các phương pháp chứng minh khác, SNARK là bằng chứng không tương tác, nghĩa là người xác minh chỉ cần sử dụng bằng chứng được cung cấp bởi người chứng minh Bằng chứng được tạo ra có thể thu được kết quả xác minh. Tuy nhiên, có một số vấn đề với ZK-SNARK. Trong giai đoạn tạo khóa, mạch và số ngẫu nhiên tương đương với một tập hợp các tham số công khai ban đầu và có một vấn đề tập trung không thể tránh khỏi trong quá trình tạo tham số công khai này.
ZK-STARK có một cách tiếp cận khác dựa trên SNARK, trong đó "s" là viết tắt của khả năng mở rộng, điều này chứng tỏ rằng thời gian tạo và thời gian tính toán ban đầu là gần như tuyến tính, trong khi thời gian xác minh là logarit trong phép tính ban đầu, nghĩa là Trong trường hợp tập hợp dữ liệu lớn dưới dạng dữ liệu, thời gian xác minh theo yêu cầu của người xác minh được rút ngắn đáng kể.
Đồng thời, là phiên bản nâng cấp của ZK-SNARK, ZK-STARK không chỉ có thể cải thiện hiệu quả xác minh (hiệu quả lý thuyết là 10 lần) mà còn không phụ thuộc vào đường cong elip hoặc cài đặt đáng tin cậy và không yêu cầu quy trình tạo các tham số công khai ban đầu (chữ cái "T ” là viết tắt của độ trong suốt), giúp loại bỏ nhu cầu thiết lập đáng tin cậy tập trung. Một số nhà phát triển tin rằng hàm băm trong ZK-STARK có thể giúp chống lại các cuộc tấn công lượng tử.
Tuy nhiên, ZK-STARKs ra mắt muộn, công nghệ hiện tại chưa đủ trưởng thành và dựa vào hàm băm, điều này hạn chế tính linh hoạt của nó.ZK-SNARKs vẫn là một thuật toán bằng chứng chung. Một số ví dụ về thuật toán dựa trên STARK bao gồm Fractal, SuperSonic, v.v. và các dự án liên quan bao gồm StarkWare, Polygon Miden, v.v.
PHẦN 2Tìm hiểu Tổng hợp
Ngoài ZK, một khái niệm khác mà chúng ta cần hiểu là Rollup, ý nghĩa của Rollup là giải quyết vấn đề tắc nghẽn của mạng lớp 1.
Lấy Ethereum làm ví dụ, nó hiện đang gặp vấn đề về tắc nghẽn giao dịch. Có hai cách để giải quyết vấn đề này: một là tăng khả năng giao dịch của chính chuỗi khối, chẳng hạn như mở rộng thông lượng của chuỗi khối thông qua các công nghệ như sharding. Một cách tiếp cận khác là thay đổi cách sử dụng chuỗi khối, nghĩa là thực hiện hầu hết các hoạt động ở lớp thứ hai (Lớp 2, sau đây gọi là L2), thay vì trực tiếp trên chuỗi. Trong trường hợp này, một hợp đồng thông minh thường được triển khai trên chuỗi, chỉ chịu trách nhiệm xử lý tiền gửi và rút tiền, đồng thời sử dụng nhiều phương pháp khác nhau để đọc dữ liệu ngoài chuỗi nhằm xác minh rằng mọi thứ xảy ra ngoài chuỗi đều tuân thủ các quy tắc. Điều này tương đương với việc xây dựng một đường cao tốc bên cạnh một con đường nhỏ, tức là thông qua việc mở rộng L2 để giải quyết vấn đề tắc nghẽn.
Hiện tại, ba loại hoặc giải pháp chính để mở rộng L2 là kênh trạng thái, Plasma và Rollup. Chúng là ba mô hình khác nhau, mỗi mô hình đều có ưu điểm và nhược điểm. Tất cả các tiện ích mở rộng L2 có thể được phân loại đại khái thành ba loại này (mặc dù có một số tranh chấp về cách đặt tên, chẳng hạn như hợp lệ), trong đó Rollup có những ưu điểm riêng.
Tổng số và tính khả dụng của dữ liệu
So với các giải pháp mở rộng khác, Rollup có một số ưu điểm nhất định, một trong những ưu điểm trực quan hơn là nó giải quyết được vấn đề về tính khả dụng của dữ liệu Plasma (đã đề cập trong chương "Tính khả dụng của dữ liệu" trong bài viết của ông Darren), và ở đây tôi cũng sẽ thực hiện một số phần bổ sung.
Thực tế là dữ liệu trên chuỗi là rất quan trọng (lưu ý: đặt dữ liệu "trên IPFS" sẽ không hoạt động, vì IPFS không cung cấp xác minh mức độ đồng thuận rằng không có gì đảm bảo rằng dữ liệu nhất định có sẵn, tức là dữ liệu phải được được lưu trữ trong các khối). Trong hai sơ đồ mở rộng của Plasma và Kênh trước đó, dữ liệu và tính toán được đặt hoàn toàn trong mạng lớp thứ hai.Khi mạng lớp thứ hai tương tác với Ethereum, tất cả dữ liệu giao dịch trên chuỗi lớp thứ hai sẽ không được đưa vào. trạng thái Từ quan điểm của máy, tức là không bao gồm mọi thay đổi trạng thái của chuỗi Plasma. Điều này sẽ dẫn đến thực tế là nếu Ethereum bị tách khỏi mạng cấp hai như Plasma, thì nó sẽ không thể khôi phục các thay đổi trạng thái trước đó, do đó, tính khả dụng của dữ liệu Ethereum phụ thuộc rất nhiều vào việc bảo vệ dữ liệu Plasma.
Cơ chế cuộn lên
Để đảm bảo tính sẵn sàng của dữ liệu, thị trường chọn Rollup, vậy Rollup hoạt động như thế nào?
Hình 4 Trạng thái Root trong hợp đồng L1 | Nguồn
Trong thiết kế Rollup, có một hợp đồng Rollup trên chuỗi chính lưu trữ một trạng thái gốc. Gốc trạng thái này có thể được coi là phiên bản nâng cấp của gốc Merkle của Cây Merkle, nơi lưu trữ số dư tài khoản (nghĩa là một loại trạng thái), mã hợp đồng và các thông tin khác. .
Nút L2 có ba chức năng chính: thứ nhất, xác định giao dịch nào sẽ được đóng gói trước (thông thường loại nút hoặc máy khách này được gọi là Trình sắp xếp trình tự sắp xếp thứ tự), thứ hai, nó cần cung cấp bằng chứng cho từng dữ liệu được đóng gói và cuối cùng gửi nó đến hợp đồng L1 The Rollup được xác minh bởi hợp đồng này. Hình 5 cho thấy vai trò của trình sắp xếp thứ tự trong L2.
Hình 5 Trình tự, chứng minh và gửi hàng loạt là các chức năng chính của giai đoạn L2 | Nguồn
Cụ thể, L2 có thể chuyển một lô dữ liệu (batch) sang L1, những dữ liệu này có thể là tập hợp giao dịch được nén ở mức độ cao hoặc thay đổi trạng thái sau khi hợp đồng chạy, đồng thời bao gồm gốc trạng thái được lưu trữ trong hợp đồng L1 và gốc trạng thái mới ( post-state root) thu được sau khi L2 xử lý dữ liệu. Hợp đồng xác minh tính chính xác của gốc hậu trạng thái dựa trên những dữ liệu này. Sau khi xác minh được thông qua, lô dữ liệu sẽ được xác nhận ở lớp L1, hoàn tất quy trình trên chuỗi từ L2 đến L1.
Gốc sau trạng thái (gốc sau trạng thái) được tính toán từ dữ liệu gốc. Để đảm bảo rằng gốc sau trạng thái mới trong dữ liệu đã gửi là chính xác, cách đơn giản nhất là để L1 tính toán lại một lần. Tuy nhiên, làm như vậy chắc chắn sẽ gây áp lực rất lớn cho L1. Để giải quyết vấn đề quan trọng này, có hai sơ đồ tối ưu hóa hoàn toàn khác nhau, Bản tổng hợp lạc quan và Bản tổng hợp ZK.
Tổng hợp ZK và Tổng hợp lạc quan
ZK Rollup sử dụng bằng chứng giao thức mật mã như ZK-SNARK hoặc ZK-STARK để xác minh tính chính xác của gốc sau trạng thái sau khi thực hiện lô. Bất kể số lượng tính toán trong L2, ZK Rollup có thể nhanh chóng xác minh trên chuỗi L1.
Một loại bằng chứng khác là Optimistic Rollup, sử dụng bằng chứng gian lận. Ở đây có một ví dụ sinh động, giống như một người mẹ không thường xuyên kiểm tra bài tập của con trai mình, nhưng chỉ cần một lần không hoàn thành bài tập, cô ấy sẽ bị phạt rất nặng. Theo cơ chế này, hợp đồng Tổng số theo dõi toàn bộ lịch sử của gốc trạng thái và giá trị băm của từng đợt. Nếu ai đó phát hiện ra rằng một lô có gốc sau trạng thái không chính xác, họ có thể xuất bản bằng chứng rằng lô đó đã được tính toán không chính xác. Các nút khác cùng nhau xác minh bằng chứng và khôi phục lô cũng như tất cả các lô tiếp theo.
Hình 6 tóm tắt so sánh các ưu điểm và nhược điểm của Optimistic Rollup và ZK Rollup. Điều quan trọng cần lưu ý ở đây là ZK Rollup vượt trội về TPS và có lợi thế đáng kể trong các chu kỳ hoàn tiền. Tuy nhiên, nhược điểm của nó là khả năng tương thích EVM và mức tiêu thụ tính toán ở lớp L2:
Các dự án Optimistic Rollup, chẳng hạn như Optimism và Arbitrum, sử dụng OVM và AVM tương ứng và môi trường ảo của chúng về cơ bản giống với EVM, vì vậy chúng có thể trực tiếp di chuyển các hợp đồng L1 sang L2 để triển khai. Tuy nhiên, trong ZK Rollup, việc sử dụng ZK-SNARK để chứng minh thực thi EVM chung là khá khó khăn, vì EVM không được phát triển theo yêu cầu toán học của tính toán chứng minh ZK, do đó cần phải chuyển đổi một loại ứng dụng khách EVM nhất định để sử dụng Công nghệ ZK để xác minh giao dịch và hoạt động hợp đồng.
Đồng thời, ngay cả sau khi chuyển đổi tương ứng, hoạt động của ZK vẫn yêu cầu nhiều năng lượng tính toán đầu vào, do đó, ZK Rollup không hiệu quả như Rollup Optimistic trong hiệu quả của lớp L2.
ZK Rollup cung cấp khả năng nén dữ liệu tốt hơn so với Optimistic Rollup, do đó nó có thể gửi dữ liệu nhỏ hơn trên L1.
Vì quy trình xác minh bằng chứng trong ZK nhanh hơn và có mật độ lô cao hơn, ZK Rollup thấp hơn trong mức tiêu thụ tính toán của lớp L1. Có thể hiểu rằng việc thanh toán nút trên L2 giúp giảm đáng kể yêu cầu đối với các nút L1, do đó cải thiện đáng kể khả năng mở rộng của lớp L1.
Hình 6 So sánh hai phương pháp tổng số | Nguồn:
**ZK Rollup hay zkEVM Rollup? **
Mặc dù ZK Rollup trông hấp dẫn, nhưng có rất nhiều khó khăn khi triển khai thực tế. Hiện tại, ZK Rollup vẫn còn những hạn chế đáng kể, trong khi Optimistic Rollup vẫn là giải pháp chủ đạo. Hầu hết các Bản tổng hợp ZK được triển khai cũng được tùy chỉnh cho một số ứng dụng cụ thể.
Làm cách nào để hiểu ZK Rollup tùy chỉnh? Các nhà phát triển xây dựng các mạch dành riêng cho ứng dụng (“ASIC”) cho các DApp khác nhau, chẳng hạn như Loopring, StarkEx rollup và zkSync 1.0, hỗ trợ các loại thanh toán, trao đổi mã thông báo hoặc đúc NFT cụ thể. Tuy nhiên, thiết kế mạch của họ yêu cầu trình độ cao kiến thức kỹ thuật, điều này dẫn đến trải nghiệm của nhà phát triển kém. Lấy một loại dữ liệu thanh toán cụ thể làm ví dụ, nút gửi dữ liệu giao dịch cho trình sắp xếp thứ tự và trình sắp xếp thứ tự gói dữ liệu đó thành một lô và gửi đến nút gửi bằng chứng làm đầu vào công khai, quy trình bằng chứng và hợp đồng quá trình thực thi trên máy ảo Nó không phải làm gì cả, ZK chỉ chịu trách nhiệm chứng minh quá trình tính toán và nén rollup của một kết quả thực thi cụ thể.
Và zkEVM Rollup đại diện cho khả năng cuộn lên các kết quả đang chạy của máy ảo. Khi chạy một hợp đồng thông minh có mục đích chung trên lớp L2, cần phải chứng minh tính hợp lệ của quá trình chuyển đổi trạng thái trước và sau khi hợp đồng chạy và cần có một môi trường ảo để hỗ trợ hoạt động của thuật toán ZK. Do đó, ý nghĩa của zkEVM là chạy hợp đồng, đưa ra trạng thái cuối cùng, chứng minh tính hợp lệ của quy trình thực hiện hợp đồng và gửi các bản ghi giao dịch, bản ghi tài khoản và dữ liệu bản ghi thay đổi trạng thái cùng nhau trong bản tổng hợp. Lớp L1 chỉ cần nhanh chóng xác minh bằng chứng, chi phí nhỏ và không cần chạy lại hợp đồng.Hình 7 minh họa rõ ràng vai trò của zkVM. Cần lưu ý rằng zkEVM thực chất là một máy ảo giống như EVM chạy trên lớp L2, nên một thuật ngữ chính xác hơn là Zero Knowledge Virtual Machine, zkVM, nhưng mọi người đều nhấn mạnh rằng nó tương thích với Ethereum và gọi nó là zkEVM.
Hình 7 Sơ đồ minh họa zkVM | Nguồn
Các dự án hiện tại cũng đang xem xét dần dần từ bỏ tối ưu hóa cho các ứng dụng cụ thể và nâng cấp để hỗ trợ chạy các hợp đồng có mục đích chung, đó là zkEVM Rollup. Do đó, mặc dù zkEVM Rollup là một khái niệm phụ của ZK Rollup, nhưng trong hầu hết các trường hợp, khi ZK Rollup được đề cập, nó đề cập đến zkEVM rollup.
PHẦN 4Tổng quan về dự án tổng hợp zkEVM
Trong nửa đầu năm 2023, nhiều dự án zkEVM sẽ bùng nổ, khi chú ý đến các dự án này, tác giả chủ yếu tập trung vào các khía cạnh sau:
Tiến độ dự án hiện tại: bao gồm giai đoạn dự án hiện tại, thời gian ra mắt dự kiến của mạng thử nghiệm và mạng chính cũng như liệu nó có phù hợp với lộ trình phát triển hay không.
Tương tác thực tế của dự án: Thông qua tương tác với mạng thử nghiệm (chính), v.v., cảm nhận chủ quan TPS của mạng, thời gian xác nhận của một giao dịch, v.v. và có cảm giác trực quan về hiệu suất mạng.
Khả năng tương thích zkEVM: Đây là điểm kỹ thuật cốt lõi nhất và khó đánh giá nhất, ngay cả khi một số dự án là nguồn mở, công nghệ ở cấp độ VM là khó nhất và liên quan đến nhiều giao thức ZK hơn. Cụ thể, cần chú ý đến giao thức ZK, bảo mật VM, khả năng tương thích, v.v.
Kiến trúc Rollup zkEVM: So với zkEVM, các dự án chung sẽ tiết lộ kiến trúc Rollup của họ trong sách trắng và các tài liệu kỹ thuật khác, và sự khác biệt tổng thể là ít hơn, nhưng cần chú ý đến mức độ phân cấp tổng thể của nó.
Hoạt động sinh thái: Số lượng người dùng dự án, mức độ hoạt động, hoạt động và ươm tạo hệ sinh thái ứng dụng trên chuỗi và duy trì cộng đồng nhà phát triển là những chỉ số phản ánh nhẹ nhàng hoạt động của dự án.
Tình hình đầu tư và tài trợ.
Bài viết này xem xét dự án nhiều hơn từ góc độ của bốn điểm đầu tiên và chú ý nhiều hơn đến kiến trúc tổng thể của zkEVM Rollup từ cấp độ kỹ thuật.
Cuộn
Được thành lập vào năm 2021, nhóm Scroll cam kết phát triển EVM tương đương với Bản tổng hợp ZK để mở rộng quy mô Ethereum. Trong gần hai năm, Scroll đã làm việc với nhóm Khám phá quyền riêng tư và mở rộng quy mô cũng như những người đóng góp nguồn mở khác để xây dựng công khai một bản tổng hợp tương thích với mã byte .zkEVM. Vào cuối tháng 2, Scroll đã thông báo rằng mạng thử nghiệm Alpha của họ hiện đã có trên Goerli. Bất kỳ người dùng nào cũng có thể tham gia thử nghiệm kỹ thuật mà không cần sự cho phép. Thời gian khối trung bình của mạng thử nghiệm là 3 giây. Hiện đã có hơn 20 triệu giao dịch và hơn 1,5 triệu khối Và hơn 4 triệu địa chỉ tương tác. Đồng thời, Scroll cũng mở giao diện hệ sinh thái website vào ngày 11/4.
Đánh giá từ việc tiết lộ thông tin gần đây, Scroll đang không ngừng tiến lên trên con đường tương đương EVM Loại 2. Gần đây, Scroll đã hoàn thành việc phát triển tương thích tất cả các opcode EVM và đang trong quá trình kiểm tra, đồng thời, mục tiêu tiếp theo là tương thích với các giao dịch EIP2718.
Về kiến trúc kỹ thuật, kiến trúc của Scroll tương đối truyền thống nên sẽ được giới thiệu chi tiết tại đây. Như thể hiện trong Hình 8, nó chủ yếu được chia thành hai phần: phần cốt lõi là zkEVM, được sử dụng để chứng minh tính đúng đắn của việc thực thi EVM trong L2; nhưng để biến zkEVM thành một ZK Rollup hoàn chỉnh trên Ethereum, một L2 hoàn chỉnh cần phải được xây dựng xung quanh kiến trúc zkEVM. Cụ thể, testnet Scroll Alpha hiện tại bao gồm Scroll Node, Bridge Contract và Rollup Contract:
Hình 8 Kiến trúc tổng thể cuộn cuộn lên | Nguồn
Nút cuộn: bao gồm Sequencer, Relayer và Coordinator.
a) Trình sắp xếp thứ tự, được gọi là trình sắp xếp thứ tự, mở JSON-RPC cho người dùng và ứng dụng, đọc các giao dịch trong nhóm giao dịch và tạo các khối L2 và gốc trạng thái. Ở giai đoạn này, các nút Sequencer của Scroll được tập trung hóa và sẽ được phân cấp dần dần trong các bản nâng cấp trong tương lai.
b) Điều phối viên chịu trách nhiệm liên lạc giữa Con lăn và Nút cuộn. Khi một khối mới được tạo trong Bộ tạo chuỗi, Con lăn trong nhóm được chọn ngẫu nhiên để tạo bằng chứng.
c) Người chuyển tiếp giám sát Hợp đồng cầu và Hợp đồng cuộn trên chuỗi Ethereum và Chuỗi cuộn. Hợp đồng Rollup đảm bảo tính khả dụng của dữ liệu L2 ở cấp độ L1 và đảm bảo rằng khối L2 có thể được khôi phục ở lớp L1. Sau khi khối được gửi bởi lớp L2 được xác minh bởi Hợp đồng Rollup trên lớp L1, khối sẽ đạt đến mức cuối cùng ở lớp L2.Trạng thái bất biến của . Hợp đồng cầu nối chịu trách nhiệm liên lạc giữa các hợp đồng chuỗi kép khi vượt qua chuỗi, gửi tin nhắn tùy ý theo cả hai hướng hoặc hoàn thành các hoạt động cam kết và rút tiền khi vượt qua chuỗi.
Hình 9 2. Mạng con lăn | Nguồn
Mạng con lăn: Con lăn có zkEVM tích hợp, đóng vai trò là người xác minh trong mạng và chịu trách nhiệm tạo bằng chứng hợp lệ cho ZK Rollup, như trong Hình 9.
a) Trước tiên, Roller chuyển đổi dấu vết hành động nhận được từ Điều phối viên (nghĩa là hợp đồng đã thực hiện những hoạt động cụ thể nào và địa chỉ nào có liên quan) thành nhân chứng mạch.
b) Nó tạo ra các bằng chứng cho từng mạch zkEVM và cuối cùng tổng hợp các bằng chứng này từ nhiều mạch ZK.
Starware
StarkWare cung cấp giải pháp mở rộng quy mô dựa trên STARK để đảm bảo tính bảo mật, tốc độ và trải nghiệm người dùng liền mạch cho L2. Họ hỗ trợ nhiều chế độ sẵn có dữ liệu. StarkNet là mạng L2 của họ, trong khi StarkEx là dịch vụ xác minh Rollup dành cho người dùng doanh nghiệp và DApp có thể được xây dựng trên các dịch vụ của StarkEx. Tuy nhiên, hiện tại chỉ có thể viết các mạch tùy chỉnh cho các DApp cụ thể, không phải cho Tổng hợp zkEVM chung. StarkEx hỗ trợ một loạt dịch vụ plug-and-play, bao gồm đúc và giao dịch NFT, giao dịch phái sinh, v.v. Về mặt sinh thái học, nền tảng giao dịch hợp đồng tương lai phi tập trung DYDX là một người dùng trung thành của StarkWare.
StarkNet, nói một cách chính xác, là zkVM. Thay vì thực hiện các mạch ZK cho các opcode Ethereum, nó đã tạo ra một bộ ngôn ngữ hợp ngữ thân thiện với ZK hơn, AIR (Đại diện trung gian đại số) và ngôn ngữ cấp cao Cairo. Mặc dù bản thân StarkNet không tương thích với EVM nhưng nó vẫn có thể tương thích với Ethereum thông qua các phương pháp khác bao gồm Kakarot (Kakarot là một zkEVM được viết ở Cairo, là một zkEVM có mã byte tương đương với EVM). Theo hiểu biết của tôi, StarkNet là một dự án tương đối tập trung, một trong số đó là nó không thể đồng bộ hóa với việc nâng cấp bảo mật của Ethereum, do đó, cần phải tập trung nhân sự R&D để bù đắp những thiếu sót về bảo mật và theo dõi sự phát triển và thích ứng của ETH. thỏa thuận mới.
StarkNet sử dụng STARK làm hệ thống bằng chứng của mình. So với SNARK, STARK có nhiều đổi mới hơn. Nó không cần dựa vào "cài đặt đáng tin cậy" như SNARK. Ngoài ra, nó cũng có các giả định mã hóa đơn giản hơn, tránh nhu cầu về đường cong elip, ghép nối và các giả định kiến thức hàm mũ, đồng thời hoàn toàn dựa vào lý thuyết thông tin và hàm băm, do đó, nó có khả năng chống lại các cuộc tấn công lượng tử cao hơn. Nhìn chung, STARK an toàn hơn SNARK. Về khả năng mở rộng, STARK có hiệu ứng cận biên đáng kể và bằng chứng càng lớn thì tổng chi phí càng thấp.
Tuy nhiên, về kiến trúc, hiện tại chỉ có một Sequencer (trình sắp xếp thứ tự) trong hệ thống do StarkWare kiểm soát và chỉ có một Prover (tức là prover tạo ZK Proof) không chỉ tạo ra bằng chứng cho StarkNet, mà còn tự chạy. Bằng chứng về thế hệ cho tất cả các ứng dụng khác trên bản tổng hợp StarkEx.
Các biến thể của ZK Rollup: Validiums và Volitions
Validium cũng là một giải pháp mở rộng quy mô L2 sử dụng bằng chứng tính toán như ZK Rollup để thực thi tính toàn vẹn của quy trình giao dịch. Không giống như ZK Rollup, Validium không lưu trữ dữ liệu giao dịch trên mạng chính Ethereum. Hy sinh tính khả dụng của dữ liệu trên chuỗi là một sự đánh đổi có thể dẫn đến những cải tiến lớn về khả năng mở rộng, điểm nổi bật nhất là các Validium có thể xử lý khoảng 9.000 giao dịch mỗi giây.
Nhưng trong mắt tác giả, Validium không thể được coi là một ZK Rollup nghiêm ngặt. Giải pháp này tương tự như Plasma và không đạt được tính khả dụng của dữ liệu ở lớp L1, do đó, giải pháp này không thể được tính là Tổng số. Điểm khác biệt với Plasma là Plasma đã thiết lập “cơ chế thoát 7 ngày” tương tự như OP Rollup ở lớp L2, trong khi Validium sử dụng và ZK nghĩa là rút ngắn thời gian xác minh dữ liệu ở lớp L2 và không đồng bộ hóa dữ liệu. dữ liệu vào L1.
Volition, do StarkWare tiên phong, cho phép người dùng dễ dàng chuyển đổi giữa ZK Rollup và Validium. Ví dụ: một số ứng dụng, chẳng hạn như sàn giao dịch phái sinh phi tập trung, có thể phù hợp hơn với Validium, trong khi vẫn muốn tương thích với các ứng dụng trên ZK Rollup, thì Volition cung cấp khả năng chuyển đổi này.
zkSync
Tương tự như StarkNet, zkSync luôn khăng khăng chọn zkVM, tương đương với ngôn ngữ cấp cao và đã thu hút nhiều sự chú ý, với mức độ phổ biến và khối lượng khóa rất cao. zkSync 1.0 (zkSync Lite) đã được ra mắt trên mạng chính Ethereum vào ngày 15 tháng 6 năm 2020, đạt được thông lượng giao dịch khoảng 300 TPS, nhưng nó không tương thích với EVM. Và zkSync 2.0 (Kỷ nguyên zkSync) sẽ ra mắt vào ngày 24 tháng 3 năm 2023.
Mục tiêu của Kỷ nguyên zkSync là tạo bằng chứng nhanh hơn bằng cách sử dụng máy ảo tùy chỉnh của họ để tối ưu hóa thay vì theo đuổi tính tương đương của EVM. Nó hỗ trợ Solidity, Vyper, Yul và Zinc (ngôn ngữ lập trình nội bộ của rollup) thông qua trình biên dịch LLVM mạnh mẽ để triển khai hầu hết các chức năng của hợp đồng thông minh. Do VM tự phát triển, zkSync Era hỗ trợ trừu tượng hóa tài khoản gốc, để bất kỳ tài khoản nào cũng có thể sử dụng bất kỳ Mã thông báo nào để thanh toán.
Ngoài ra, thông qua việc áp dụng giao thức zkPorter, kết hợp với ZK Rollups và công nghệ phân mảnh, thông lượng mạng đã tăng theo cấp số nhân, đạt hơn 20.000 TPS (tương tự như chuyển đổi tính khả dụng dữ liệu của Volitions).
Nhìn chung, zkSync là một dự án L2 giàu tính sinh thái đã thu hút sự chú ý của các nhà phát triển và nhà đầu tư. Mặc dù gần đây đã có một số trường hợp dự án thất bại hoàn toàn trên zkSync, vẫn còn một câu hỏi đặt ra là liệu các nhà phát triển có thể có được trải nghiệm di chuyển và phát triển tốt trên ngôn ngữ cấp cao tương đương với zkVM hay không. Hiện tại thiếu các báo cáo sử dụng chính xác ở cấp nhà phát triển. Chúng ta vẫn cần thêm thời gian để quan sát.
Đa giác zkEVM
Polygon đã ra mắt phiên bản beta của mạng chính zkEVM Rollup vào ngày 27 tháng 3, đây cũng là máy ảo tương đương của Ethereum và mã nguồn mở cho tất cả mã zkEVM. So với zkSync, số lượng đa giác bị khóa zkEVM nhỏ hơn nhiều, nhưng cũng có nhiều dự án thú vị và năng động trong hệ sinh thái.
Về thiết kế Rollup, Polygon khác với Scroll ở chỗ nó sử dụng mô hình Proof of Efficiency (PoE) để thúc đẩy Sequencer và Aggregator giải quyết một số thách thức của việc phân cấp và trình xác thực không cần cấp phép. Trong mô hình hai bước của bộ phân loại-tổng hợp không cần xin phép, bất kỳ máy phân loại nào cũng có thể gửi đơn đăng ký đóng gói lô để nhận phí đóng gói, nhưng nó cần phải trả phí Gas của lớp L1 và gửi một lượng Mã thông báo nhất định ; đồng thời, các Token tổng hợp cần đặt mục tiêu của riêng chúng để tối đa hóa lợi nhuận được đảm bảo cho mỗi lần tạo bằng chứng. Ngoài ra, các chế độ Đa giác và Volition (ZK Rollup và Validium) cũng có các mô hình sẵn có dữ liệu tương thích sâu để cung cấp cho người dùng các cấp độ dịch vụ khác nhau.
Ngoài ra, Polygon cũng đã đầu tư một lượng công sức đáng kể vào giao thức ZK và hiệu quả cũng rất đáng chú ý, trong tài liệu họ tóm tắt các ưu điểm kỹ thuật của mình, chủ yếu bao gồm các điểm sau:
Tương thích hơn: Polygon luôn nhấn mạnh vào việc sử dụng zkVM, tương đương với EVM, để giảm chi phí cho các nhà phát triển di chuyển dApps. Đồng thời, mặc dù Polygon Miden áp dụng giao thức ZK-STARK nhưng nó vẫn hỗ trợ chạy các hợp đồng Solidity.
Xác minh dễ dàng hơn: Lý do tại sao ZK Rollup thường bị chỉ trích là việc tạo bằng chứng về tính hợp lệ đòi hỏi phần cứng chuyên dụng đắt tiền mà nhà cung cấp chạy và chuyển chi phí cho người dùng. Polygon ZK Rollup (như Polygon Zero) nhằm mục đích đơn giản hóa các sơ đồ chứng minh để các thiết bị cấp thấp hơn có thể tham gia, chẳng hạn như các thử nghiệm tạo chứng minh Plonky2 trên PC cấp người tiêu dùng.
Quá trình xác minh và tạo bằng chứng nhanh hơn: Polygon Zero có thể tạo bằng chứng 45kb trong 170 mili giây.
PHẦN 5Khoảng cách giữa công nghệ lý thuyết và dự án thực tế
Báo cáo nghiên cứu này chủ yếu thực hiện việc phổ biến khoa học công nghệ ZK và giới thiệu cơ chế Rollup, nhấn mạnh tầm quan trọng của tính khả dụng của dữ liệu và tạo ra sự khác biệt nhất định về vấn đề ZK hoặc zkEVM Rollup. Ngoài ra, trên cơ sở phân biệt zkVM và zkEVM, nó cũng phân loại chi tiết sự khác biệt giữa ba loại zkEVM và các loại khác nhau và các rãnh ZK liên quan. Cuối cùng, kết hợp với một số dự án thuận lợi, họ đã xem xét các khung kỹ thuật tương ứng và hệ sinh thái hiện có.
Tuy nhiên, xét về các dự án cụ thể, các dự án chọn ngôn ngữ cấp cao tương đương chiếm vị trí chủ đạo trên thị trường và một số sản phẩm tập trung nghiêm túc như StarkWare cũng có thể giành được sự ưu ái của thị trường. Mặc dù loại VM đầu tiên được đề cập trong nghiên cứu lý thuyết có những hạn chế lớn, nhưng với lượng khách hàng thị trường hạn chế, "tính phổ quát" dường như là một gánh nặng và chúng ta không thể phân biệt được vấn đề nào "mở rộng hiệu quả" đã đột phá và Hiện thực hóa hiệu quả ngoài lý thuyết . Tất nhiên, trên thực tế, nhiều người không chú ý đến các tính năng kỹ thuật, vì vậy điều này có vẻ không phải là Web3, nhưng cũng rất Web3.
Mục đích của công nghệ Rollup là khai thác thêm giá trị của chuỗi khối, nhưng thường do nhu cầu cấp thiết trở thành một "khái niệm đổi mới" trên thị trường nên có hiện tượng "quay ngược" và quay trở lại tập trung hóa. Đây là vấn đề với thị trường hiện tại.
Giá trị của blockchain rất dễ nhận thấy, ai lại không muốn có một chiếc máy tính vĩnh cửu? Nhưng vấn đề cốt lõi là khi công suất chạy của chiếc máy tính này kém xa bất kỳ máy chủ nào xung quanh chúng ta và cần đầu tư nhiều nguồn lực, dù giá trị sử dụng thấp hơn nhiều so với chi phí đầu vào của chúng ta, với tư cách là một “sản phẩm công ích” , nó vẫn là Mọi người có thể tham gia không?
Khi chúng ta đã có sản phẩm từ nhiều quốc gia, xã hội và thậm chí cả cá nhân, trong hoàn cảnh nào chúng ta sẵn sàng bỏ qua chi phí sử dụng cao và theo đuổi kết quả “luôn trực tuyến, luôn đúng”? Tôi nghĩ đây là điều mà ngành công nghiệp blockchain ngày nay cần phải suy nghĩ. Công nghệ Rollup về mặt kỹ thuật có thể cải thiện vấn đề này, nhưng vẫn còn một số lượng lớn các vấn đề cần phải để thị trường nóng nảy giải quyết.
Xem bản gốc
Nội dung chỉ mang tính chất tham khảo, không phải là lời chào mời hay đề nghị. Không cung cấp tư vấn về đầu tư, thuế hoặc pháp lý. Xem Tuyên bố miễn trừ trách nhiệm để biết thêm thông tin về rủi ro.
zkEVM Rollup: khoảng cách giữa tầm nhìn công nghệ và dự án
Để giải quyết vấn đề mở rộng của mạng lớp 1 blockchain, giải pháp Rollup đã ra đời. Kết hợp với công nghệ ZK, ZK Rollup đã trở thành con cưng mới của đường đua Layer 2. Tuy nhiên, đối với hầu hết mọi người, các khái niệm liên quan như ZK, Rollup và EVM có thể có ngưỡng hiểu biết nhất định. Do đó, mục tiêu của báo cáo nghiên cứu này là sắp xếp một cách có hệ thống một loạt các khái niệm về zkEVM Rollup cho bạn bằng ngôn ngữ ngắn gọn và dễ hiểu, phân tích sâu sắc quá trình tiến hóa và trạng thái phát triển của công nghệ zkEVM Rollup, đồng thời diễn giải sinh thái chính. dự án một cách chi tiết. Nó được thiết kế để giúp bạn hiểu đầy đủ và đánh giá xu hướng phát triển của bản nhạc Tổng hợp zkEVM.
PHẦN 1 Hiểu về ZK
ZK (hoặc ZKP), tên đầy đủ là Zero-Knowledge Proof, nghĩa là bằng chứng không có kiến thức. bên kia (người xác nhận xác minh) để chứng minh một sự việc mà không tiết lộ thông tin cụ thể của sự việc, tức là một bên (người chứng minh) có thể cho bên kia biết sự việc có chính xác hay không mà không cần tiết lộ bất kỳ "thông tin cụ thể" nào của thực tế, vì vậy công nghệ ZK có thể được sử dụng trong sự riêng tư Lĩnh vực bảo vệ mang đến cho chúng ta rất nhiều chỗ cho trí tưởng tượng.
Tất nhiên, ngoài những lợi ích về bảo vệ quyền riêng tư mà công nghệ ZK có thể mang lại, trong ZK Rollup, công nghệ ZK quan trọng hơn là giải quyết vấn đề "khó xác minh". Quá trình "xác minh" rất quan trọng đối với chuỗi khối, hầu hết quá trình tính toán trong Ethereum là để đáp ứng các yêu cầu xác minh và ZK Rollup có thể giảm đáng kể thời gian xác minh của toàn bộ mạng nút. Ví dụ: nếu một khối mất nhiều thời gian để xác minh rằng nó đáp ứng các quy tắc của toàn bộ mạng khi khối đó được tạo, thì có thể có một người xác minh đầu tiên xác minh khối đó và tạo ra một "bằng chứng" về kết quả tính toán của khối này. và phần còn lại Mục đích của việc xác minh khối có thể đạt được bằng cách nhanh chóng xác minh "bằng chứng" này thay vì khối ban đầu với khối lượng tính toán khổng lồ.
Một giao thức ZK đơn giản được chia thành các bước sau, tạo khóa, bằng chứng và xác minh, và tôi sẽ phân tích từng bước một cho bạn.
01 Tạo khóa, bằng chứng và xác minh
Trong ZK, trước tiên chúng ta cần chuyển đổi vấn đề cần xác minh thành biểu thức toán học, sau đó thành đa thức và biểu thị nó dưới dạng một mạch số học. Khi một chương trình được chuyển đổi thành một mạch số học, nó được chia thành các bước riêng lẻ bao gồm các phép tính số học cơ bản như cộng, trừ, v.v. Là một chức năng sẽ được xuất ra, nó có thể được chuyển đổi thành sơ đồ mạch sau, xem Hình 1.
Hình 1 Ví dụ về sơ đồ mạch, có thể nhận thấy mọi thao tác trong mạch được chia thành các thao tác cơ bản đơn giản nhất | Nguồn
Sử dụng mạch này và một số số ngẫu nhiên làm đầu vào, chúng tôi có thể tạo khóa xác minh (pk, khóa xác minh) và khóa xác minh (vk, khóa xác minh) cho quá trình xác minh tiếp theo, sơ đồ nguyên lý được hiển thị trong Hình 2.
Hình 2 Tạo "tham số công cộng"
Hệ thống bằng chứng của chúng tôi cũng yêu cầu hai loại đầu vào - riêng tư và công khai, cùng với khóa bằng chứng để tạo bằng chứng. Trong số đó, thông tin đầu vào riêng tư (nhân chứng) là bí mật mà chúng tôi muốn che giấu và thông tin đầu vào công khai là thông tin có thể được công khai. Ví dụ: trong phương trình X+Y*Z=OUT, X và OUT là đầu vào công khai, trong khi Y và Z có các giá trị mà chúng tôi không muốn công khai cho trình xác thực. Mặc dù giá trị của Y*Z có thể được suy ra dựa trên đầu vào công khai, nhưng giá trị cụ thể của Y và Z vẫn chưa chắc chắn.
Hình 3 Quy trình chứng minh và quy trình xác minh của ZK-SNARK
Khi người xác minh nhận được bằng chứng, nó sẽ sử dụng đầu vào công khai, bằng chứng và khóa xác minh để xác minh bằng chứng và trả về kết quả xác minh (nghĩa là xác minh có thành công hay không).
Sau khi hiểu quy trình trên, chúng ta có thể áp dụng công nghệ xác minh khối này để nhận ra một ZK-SNARK nhỏ, như trong Hình 3. Có nhiều giao thức và phương pháp để thực hiện bằng chứng không kiến thức.SNARK tương đối dễ hiểu và nó cũng là lựa chọn của hầu hết các dự án ở giai đoạn này. Trong đoạn "Từ ZK-SNARK đến ZK-STARK", chúng ta sẽ nói về những ưu điểm và nhược điểm của SNARK.
02 Hãy thử một chút SNARK
Hãy lấy bằng chứng không kiến thức về Cây Merkle ghi lại trạng thái tài khoản làm ví dụ để thực hành. Cây Merkle ghi lại địa chỉ và số dư của tài khoản. Khi có giao dịch mới cần cập nhật Merkle Tree, chúng ta cần thực hiện các thao tác sau:
Xác minh rằng người gửi và người nhận giao dịch nằm trên các nút lá của cây.
Xác minh chữ ký của người gửi.
Cập nhật số dư của người gửi và người nhận.
Cập nhật nút gốc của Cây Merkle (tức là Gốc Merkle) và sử dụng nó làm đầu ra cuối cùng.
Trong trường hợp không có bằng chứng về kiến thức bằng không, người xác minh cần lặp lại các bước này để đảm bảo tính chính xác của phép tính. Nhưng sau khi sử dụng bằng chứng không kiến thức, tình hình đã khác. Đầu tiên, chúng ta cần xác định hai loại đầu vào:
Trong quá trình này, chỉ có thông tin giao dịch mới, Merkle Root ban đầu và Merkle Root cập nhật là thông tin đầu vào công khai.
Merkle Tree tự đóng vai trò là nhân chứng (witness) và không cần người xác minh đọc hoặc xử lý.
Thứ hai, chúng ta cần tạo khóa và tính toán mạch. Chúng tôi xây dựng các quy trình tính toán như cập nhật Merkle Tree và xác minh địa chỉ đầu vào và đầu ra vào các mạch tính toán để có được các khóa kiểm chứng và khóa xác minh. Mạch này không liên quan gì đến thông tin giao dịch đầu vào, cũng như với Merkle Root hiện có, bởi vì phương pháp tính toán của Merkle Tree là cố định.
Trong giai đoạn tạo bằng chứng, chúng tôi lấy hai Cây Merkle và thông tin giao dịch làm đầu vào. Trong giai đoạn xác minh, người xác minh có thể đảm bảo độ tin cậy của bản cập nhật mà không cần lấy Merkle Tree, tức là không biết thông tin tài khoản. Mạch giống như một hộp đen đặc, miễn là đầu vào đúng, nó sẽ nhận được đầu ra chính xác.
Bằng cách sử dụng bằng chứng không có kiến thức, những người xác minh khác có thể nhanh chóng xác minh rằng quy trình tạo Merkle Tree là đáng tin cậy, do đó giảm thời gian xác minh lặp lại trên mạng và thông tin của Cây Merkle không cần phải tiết lộ cho người xác minh.
03 Từ ZK-SNARK đến ZK-STARK
Giao thức chứng minh được đề cập ở trên là ZK-SNARKs. SNARK là viết tắt của các đối số tri thức không tương tác ngắn gọn, trong đó ngắn gọn đề cập đến tính ngắn gọn của phương pháp này và không tương tác đề cập đến điều đó so với các phương pháp chứng minh khác, SNARK là bằng chứng không tương tác, nghĩa là người xác minh chỉ cần sử dụng bằng chứng được cung cấp bởi người chứng minh Bằng chứng được tạo ra có thể thu được kết quả xác minh. Tuy nhiên, có một số vấn đề với ZK-SNARK. Trong giai đoạn tạo khóa, mạch và số ngẫu nhiên tương đương với một tập hợp các tham số công khai ban đầu và có một vấn đề tập trung không thể tránh khỏi trong quá trình tạo tham số công khai này.
ZK-STARK có một cách tiếp cận khác dựa trên SNARK, trong đó "s" là viết tắt của khả năng mở rộng, điều này chứng tỏ rằng thời gian tạo và thời gian tính toán ban đầu là gần như tuyến tính, trong khi thời gian xác minh là logarit trong phép tính ban đầu, nghĩa là Trong trường hợp tập hợp dữ liệu lớn dưới dạng dữ liệu, thời gian xác minh theo yêu cầu của người xác minh được rút ngắn đáng kể.
Đồng thời, là phiên bản nâng cấp của ZK-SNARK, ZK-STARK không chỉ có thể cải thiện hiệu quả xác minh (hiệu quả lý thuyết là 10 lần) mà còn không phụ thuộc vào đường cong elip hoặc cài đặt đáng tin cậy và không yêu cầu quy trình tạo các tham số công khai ban đầu (chữ cái "T ” là viết tắt của độ trong suốt), giúp loại bỏ nhu cầu thiết lập đáng tin cậy tập trung. Một số nhà phát triển tin rằng hàm băm trong ZK-STARK có thể giúp chống lại các cuộc tấn công lượng tử.
Tuy nhiên, ZK-STARKs ra mắt muộn, công nghệ hiện tại chưa đủ trưởng thành và dựa vào hàm băm, điều này hạn chế tính linh hoạt của nó.ZK-SNARKs vẫn là một thuật toán bằng chứng chung. Một số ví dụ về thuật toán dựa trên STARK bao gồm Fractal, SuperSonic, v.v. và các dự án liên quan bao gồm StarkWare, Polygon Miden, v.v.
PHẦN 2 Tìm hiểu Tổng hợp
Ngoài ZK, một khái niệm khác mà chúng ta cần hiểu là Rollup, ý nghĩa của Rollup là giải quyết vấn đề tắc nghẽn của mạng lớp 1.
Lấy Ethereum làm ví dụ, nó hiện đang gặp vấn đề về tắc nghẽn giao dịch. Có hai cách để giải quyết vấn đề này: một là tăng khả năng giao dịch của chính chuỗi khối, chẳng hạn như mở rộng thông lượng của chuỗi khối thông qua các công nghệ như sharding. Một cách tiếp cận khác là thay đổi cách sử dụng chuỗi khối, nghĩa là thực hiện hầu hết các hoạt động ở lớp thứ hai (Lớp 2, sau đây gọi là L2), thay vì trực tiếp trên chuỗi. Trong trường hợp này, một hợp đồng thông minh thường được triển khai trên chuỗi, chỉ chịu trách nhiệm xử lý tiền gửi và rút tiền, đồng thời sử dụng nhiều phương pháp khác nhau để đọc dữ liệu ngoài chuỗi nhằm xác minh rằng mọi thứ xảy ra ngoài chuỗi đều tuân thủ các quy tắc. Điều này tương đương với việc xây dựng một đường cao tốc bên cạnh một con đường nhỏ, tức là thông qua việc mở rộng L2 để giải quyết vấn đề tắc nghẽn.
Hiện tại, ba loại hoặc giải pháp chính để mở rộng L2 là kênh trạng thái, Plasma và Rollup. Chúng là ba mô hình khác nhau, mỗi mô hình đều có ưu điểm và nhược điểm. Tất cả các tiện ích mở rộng L2 có thể được phân loại đại khái thành ba loại này (mặc dù có một số tranh chấp về cách đặt tên, chẳng hạn như hợp lệ), trong đó Rollup có những ưu điểm riêng.
Tổng số và tính khả dụng của dữ liệu
So với các giải pháp mở rộng khác, Rollup có một số ưu điểm nhất định, một trong những ưu điểm trực quan hơn là nó giải quyết được vấn đề về tính khả dụng của dữ liệu Plasma (đã đề cập trong chương "Tính khả dụng của dữ liệu" trong bài viết của ông Darren), và ở đây tôi cũng sẽ thực hiện một số phần bổ sung.
Thực tế là dữ liệu trên chuỗi là rất quan trọng (lưu ý: đặt dữ liệu "trên IPFS" sẽ không hoạt động, vì IPFS không cung cấp xác minh mức độ đồng thuận rằng không có gì đảm bảo rằng dữ liệu nhất định có sẵn, tức là dữ liệu phải được được lưu trữ trong các khối). Trong hai sơ đồ mở rộng của Plasma và Kênh trước đó, dữ liệu và tính toán được đặt hoàn toàn trong mạng lớp thứ hai.Khi mạng lớp thứ hai tương tác với Ethereum, tất cả dữ liệu giao dịch trên chuỗi lớp thứ hai sẽ không được đưa vào. trạng thái Từ quan điểm của máy, tức là không bao gồm mọi thay đổi trạng thái của chuỗi Plasma. Điều này sẽ dẫn đến thực tế là nếu Ethereum bị tách khỏi mạng cấp hai như Plasma, thì nó sẽ không thể khôi phục các thay đổi trạng thái trước đó, do đó, tính khả dụng của dữ liệu Ethereum phụ thuộc rất nhiều vào việc bảo vệ dữ liệu Plasma.
Cơ chế cuộn lên
Để đảm bảo tính sẵn sàng của dữ liệu, thị trường chọn Rollup, vậy Rollup hoạt động như thế nào?
Hình 4 Trạng thái Root trong hợp đồng L1 | Nguồn
Trong thiết kế Rollup, có một hợp đồng Rollup trên chuỗi chính lưu trữ một trạng thái gốc. Gốc trạng thái này có thể được coi là phiên bản nâng cấp của gốc Merkle của Cây Merkle, nơi lưu trữ số dư tài khoản (nghĩa là một loại trạng thái), mã hợp đồng và các thông tin khác. .
Nút L2 có ba chức năng chính: thứ nhất, xác định giao dịch nào sẽ được đóng gói trước (thông thường loại nút hoặc máy khách này được gọi là Trình sắp xếp trình tự sắp xếp thứ tự), thứ hai, nó cần cung cấp bằng chứng cho từng dữ liệu được đóng gói và cuối cùng gửi nó đến hợp đồng L1 The Rollup được xác minh bởi hợp đồng này. Hình 5 cho thấy vai trò của trình sắp xếp thứ tự trong L2.
Hình 5 Trình tự, chứng minh và gửi hàng loạt là các chức năng chính của giai đoạn L2 | Nguồn
Cụ thể, L2 có thể chuyển một lô dữ liệu (batch) sang L1, những dữ liệu này có thể là tập hợp giao dịch được nén ở mức độ cao hoặc thay đổi trạng thái sau khi hợp đồng chạy, đồng thời bao gồm gốc trạng thái được lưu trữ trong hợp đồng L1 và gốc trạng thái mới ( post-state root) thu được sau khi L2 xử lý dữ liệu. Hợp đồng xác minh tính chính xác của gốc hậu trạng thái dựa trên những dữ liệu này. Sau khi xác minh được thông qua, lô dữ liệu sẽ được xác nhận ở lớp L1, hoàn tất quy trình trên chuỗi từ L2 đến L1.
Gốc sau trạng thái (gốc sau trạng thái) được tính toán từ dữ liệu gốc. Để đảm bảo rằng gốc sau trạng thái mới trong dữ liệu đã gửi là chính xác, cách đơn giản nhất là để L1 tính toán lại một lần. Tuy nhiên, làm như vậy chắc chắn sẽ gây áp lực rất lớn cho L1. Để giải quyết vấn đề quan trọng này, có hai sơ đồ tối ưu hóa hoàn toàn khác nhau, Bản tổng hợp lạc quan và Bản tổng hợp ZK.
Tổng hợp ZK và Tổng hợp lạc quan
ZK Rollup sử dụng bằng chứng giao thức mật mã như ZK-SNARK hoặc ZK-STARK để xác minh tính chính xác của gốc sau trạng thái sau khi thực hiện lô. Bất kể số lượng tính toán trong L2, ZK Rollup có thể nhanh chóng xác minh trên chuỗi L1.
Một loại bằng chứng khác là Optimistic Rollup, sử dụng bằng chứng gian lận. Ở đây có một ví dụ sinh động, giống như một người mẹ không thường xuyên kiểm tra bài tập của con trai mình, nhưng chỉ cần một lần không hoàn thành bài tập, cô ấy sẽ bị phạt rất nặng. Theo cơ chế này, hợp đồng Tổng số theo dõi toàn bộ lịch sử của gốc trạng thái và giá trị băm của từng đợt. Nếu ai đó phát hiện ra rằng một lô có gốc sau trạng thái không chính xác, họ có thể xuất bản bằng chứng rằng lô đó đã được tính toán không chính xác. Các nút khác cùng nhau xác minh bằng chứng và khôi phục lô cũng như tất cả các lô tiếp theo.
Hình 6 tóm tắt so sánh các ưu điểm và nhược điểm của Optimistic Rollup và ZK Rollup. Điều quan trọng cần lưu ý ở đây là ZK Rollup vượt trội về TPS và có lợi thế đáng kể trong các chu kỳ hoàn tiền. Tuy nhiên, nhược điểm của nó là khả năng tương thích EVM và mức tiêu thụ tính toán ở lớp L2:
Các dự án Optimistic Rollup, chẳng hạn như Optimism và Arbitrum, sử dụng OVM và AVM tương ứng và môi trường ảo của chúng về cơ bản giống với EVM, vì vậy chúng có thể trực tiếp di chuyển các hợp đồng L1 sang L2 để triển khai. Tuy nhiên, trong ZK Rollup, việc sử dụng ZK-SNARK để chứng minh thực thi EVM chung là khá khó khăn, vì EVM không được phát triển theo yêu cầu toán học của tính toán chứng minh ZK, do đó cần phải chuyển đổi một loại ứng dụng khách EVM nhất định để sử dụng Công nghệ ZK để xác minh giao dịch và hoạt động hợp đồng.
Đồng thời, ngay cả sau khi chuyển đổi tương ứng, hoạt động của ZK vẫn yêu cầu nhiều năng lượng tính toán đầu vào, do đó, ZK Rollup không hiệu quả như Rollup Optimistic trong hiệu quả của lớp L2.
ZK Rollup cung cấp khả năng nén dữ liệu tốt hơn so với Optimistic Rollup, do đó nó có thể gửi dữ liệu nhỏ hơn trên L1.
Vì quy trình xác minh bằng chứng trong ZK nhanh hơn và có mật độ lô cao hơn, ZK Rollup thấp hơn trong mức tiêu thụ tính toán của lớp L1. Có thể hiểu rằng việc thanh toán nút trên L2 giúp giảm đáng kể yêu cầu đối với các nút L1, do đó cải thiện đáng kể khả năng mở rộng của lớp L1.
Hình 6 So sánh hai phương pháp tổng số | Nguồn:
**ZK Rollup hay zkEVM Rollup? **
Mặc dù ZK Rollup trông hấp dẫn, nhưng có rất nhiều khó khăn khi triển khai thực tế. Hiện tại, ZK Rollup vẫn còn những hạn chế đáng kể, trong khi Optimistic Rollup vẫn là giải pháp chủ đạo. Hầu hết các Bản tổng hợp ZK được triển khai cũng được tùy chỉnh cho một số ứng dụng cụ thể.
Làm cách nào để hiểu ZK Rollup tùy chỉnh? Các nhà phát triển xây dựng các mạch dành riêng cho ứng dụng (“ASIC”) cho các DApp khác nhau, chẳng hạn như Loopring, StarkEx rollup và zkSync 1.0, hỗ trợ các loại thanh toán, trao đổi mã thông báo hoặc đúc NFT cụ thể. Tuy nhiên, thiết kế mạch của họ yêu cầu trình độ cao kiến thức kỹ thuật, điều này dẫn đến trải nghiệm của nhà phát triển kém. Lấy một loại dữ liệu thanh toán cụ thể làm ví dụ, nút gửi dữ liệu giao dịch cho trình sắp xếp thứ tự và trình sắp xếp thứ tự gói dữ liệu đó thành một lô và gửi đến nút gửi bằng chứng làm đầu vào công khai, quy trình bằng chứng và hợp đồng quá trình thực thi trên máy ảo Nó không phải làm gì cả, ZK chỉ chịu trách nhiệm chứng minh quá trình tính toán và nén rollup của một kết quả thực thi cụ thể.
Và zkEVM Rollup đại diện cho khả năng cuộn lên các kết quả đang chạy của máy ảo. Khi chạy một hợp đồng thông minh có mục đích chung trên lớp L2, cần phải chứng minh tính hợp lệ của quá trình chuyển đổi trạng thái trước và sau khi hợp đồng chạy và cần có một môi trường ảo để hỗ trợ hoạt động của thuật toán ZK. Do đó, ý nghĩa của zkEVM là chạy hợp đồng, đưa ra trạng thái cuối cùng, chứng minh tính hợp lệ của quy trình thực hiện hợp đồng và gửi các bản ghi giao dịch, bản ghi tài khoản và dữ liệu bản ghi thay đổi trạng thái cùng nhau trong bản tổng hợp. Lớp L1 chỉ cần nhanh chóng xác minh bằng chứng, chi phí nhỏ và không cần chạy lại hợp đồng.Hình 7 minh họa rõ ràng vai trò của zkVM. Cần lưu ý rằng zkEVM thực chất là một máy ảo giống như EVM chạy trên lớp L2, nên một thuật ngữ chính xác hơn là Zero Knowledge Virtual Machine, zkVM, nhưng mọi người đều nhấn mạnh rằng nó tương thích với Ethereum và gọi nó là zkEVM.
Hình 7 Sơ đồ minh họa zkVM | Nguồn
Các dự án hiện tại cũng đang xem xét dần dần từ bỏ tối ưu hóa cho các ứng dụng cụ thể và nâng cấp để hỗ trợ chạy các hợp đồng có mục đích chung, đó là zkEVM Rollup. Do đó, mặc dù zkEVM Rollup là một khái niệm phụ của ZK Rollup, nhưng trong hầu hết các trường hợp, khi ZK Rollup được đề cập, nó đề cập đến zkEVM rollup.
PHẦN 4 Tổng quan về dự án tổng hợp zkEVM
Trong nửa đầu năm 2023, nhiều dự án zkEVM sẽ bùng nổ, khi chú ý đến các dự án này, tác giả chủ yếu tập trung vào các khía cạnh sau:
Tiến độ dự án hiện tại: bao gồm giai đoạn dự án hiện tại, thời gian ra mắt dự kiến của mạng thử nghiệm và mạng chính cũng như liệu nó có phù hợp với lộ trình phát triển hay không.
Tương tác thực tế của dự án: Thông qua tương tác với mạng thử nghiệm (chính), v.v., cảm nhận chủ quan TPS của mạng, thời gian xác nhận của một giao dịch, v.v. và có cảm giác trực quan về hiệu suất mạng.
Khả năng tương thích zkEVM: Đây là điểm kỹ thuật cốt lõi nhất và khó đánh giá nhất, ngay cả khi một số dự án là nguồn mở, công nghệ ở cấp độ VM là khó nhất và liên quan đến nhiều giao thức ZK hơn. Cụ thể, cần chú ý đến giao thức ZK, bảo mật VM, khả năng tương thích, v.v.
Kiến trúc Rollup zkEVM: So với zkEVM, các dự án chung sẽ tiết lộ kiến trúc Rollup của họ trong sách trắng và các tài liệu kỹ thuật khác, và sự khác biệt tổng thể là ít hơn, nhưng cần chú ý đến mức độ phân cấp tổng thể của nó.
Hoạt động sinh thái: Số lượng người dùng dự án, mức độ hoạt động, hoạt động và ươm tạo hệ sinh thái ứng dụng trên chuỗi và duy trì cộng đồng nhà phát triển là những chỉ số phản ánh nhẹ nhàng hoạt động của dự án.
Tình hình đầu tư và tài trợ.
Bài viết này xem xét dự án nhiều hơn từ góc độ của bốn điểm đầu tiên và chú ý nhiều hơn đến kiến trúc tổng thể của zkEVM Rollup từ cấp độ kỹ thuật.
Cuộn
Được thành lập vào năm 2021, nhóm Scroll cam kết phát triển EVM tương đương với Bản tổng hợp ZK để mở rộng quy mô Ethereum. Trong gần hai năm, Scroll đã làm việc với nhóm Khám phá quyền riêng tư và mở rộng quy mô cũng như những người đóng góp nguồn mở khác để xây dựng công khai một bản tổng hợp tương thích với mã byte .zkEVM. Vào cuối tháng 2, Scroll đã thông báo rằng mạng thử nghiệm Alpha của họ hiện đã có trên Goerli. Bất kỳ người dùng nào cũng có thể tham gia thử nghiệm kỹ thuật mà không cần sự cho phép. Thời gian khối trung bình của mạng thử nghiệm là 3 giây. Hiện đã có hơn 20 triệu giao dịch và hơn 1,5 triệu khối Và hơn 4 triệu địa chỉ tương tác. Đồng thời, Scroll cũng mở giao diện hệ sinh thái website vào ngày 11/4.
Đánh giá từ việc tiết lộ thông tin gần đây, Scroll đang không ngừng tiến lên trên con đường tương đương EVM Loại 2. Gần đây, Scroll đã hoàn thành việc phát triển tương thích tất cả các opcode EVM và đang trong quá trình kiểm tra, đồng thời, mục tiêu tiếp theo là tương thích với các giao dịch EIP2718.
Về kiến trúc kỹ thuật, kiến trúc của Scroll tương đối truyền thống nên sẽ được giới thiệu chi tiết tại đây. Như thể hiện trong Hình 8, nó chủ yếu được chia thành hai phần: phần cốt lõi là zkEVM, được sử dụng để chứng minh tính đúng đắn của việc thực thi EVM trong L2; nhưng để biến zkEVM thành một ZK Rollup hoàn chỉnh trên Ethereum, một L2 hoàn chỉnh cần phải được xây dựng xung quanh kiến trúc zkEVM. Cụ thể, testnet Scroll Alpha hiện tại bao gồm Scroll Node, Bridge Contract và Rollup Contract:
Hình 8 Kiến trúc tổng thể cuộn cuộn lên | Nguồn
a) Trình sắp xếp thứ tự, được gọi là trình sắp xếp thứ tự, mở JSON-RPC cho người dùng và ứng dụng, đọc các giao dịch trong nhóm giao dịch và tạo các khối L2 và gốc trạng thái. Ở giai đoạn này, các nút Sequencer của Scroll được tập trung hóa và sẽ được phân cấp dần dần trong các bản nâng cấp trong tương lai.
b) Điều phối viên chịu trách nhiệm liên lạc giữa Con lăn và Nút cuộn. Khi một khối mới được tạo trong Bộ tạo chuỗi, Con lăn trong nhóm được chọn ngẫu nhiên để tạo bằng chứng.
c) Người chuyển tiếp giám sát Hợp đồng cầu và Hợp đồng cuộn trên chuỗi Ethereum và Chuỗi cuộn. Hợp đồng Rollup đảm bảo tính khả dụng của dữ liệu L2 ở cấp độ L1 và đảm bảo rằng khối L2 có thể được khôi phục ở lớp L1. Sau khi khối được gửi bởi lớp L2 được xác minh bởi Hợp đồng Rollup trên lớp L1, khối sẽ đạt đến mức cuối cùng ở lớp L2.Trạng thái bất biến của . Hợp đồng cầu nối chịu trách nhiệm liên lạc giữa các hợp đồng chuỗi kép khi vượt qua chuỗi, gửi tin nhắn tùy ý theo cả hai hướng hoặc hoàn thành các hoạt động cam kết và rút tiền khi vượt qua chuỗi.
Hình 9 2. Mạng con lăn | Nguồn
a) Trước tiên, Roller chuyển đổi dấu vết hành động nhận được từ Điều phối viên (nghĩa là hợp đồng đã thực hiện những hoạt động cụ thể nào và địa chỉ nào có liên quan) thành nhân chứng mạch.
b) Nó tạo ra các bằng chứng cho từng mạch zkEVM và cuối cùng tổng hợp các bằng chứng này từ nhiều mạch ZK.
Starware
StarkWare cung cấp giải pháp mở rộng quy mô dựa trên STARK để đảm bảo tính bảo mật, tốc độ và trải nghiệm người dùng liền mạch cho L2. Họ hỗ trợ nhiều chế độ sẵn có dữ liệu. StarkNet là mạng L2 của họ, trong khi StarkEx là dịch vụ xác minh Rollup dành cho người dùng doanh nghiệp và DApp có thể được xây dựng trên các dịch vụ của StarkEx. Tuy nhiên, hiện tại chỉ có thể viết các mạch tùy chỉnh cho các DApp cụ thể, không phải cho Tổng hợp zkEVM chung. StarkEx hỗ trợ một loạt dịch vụ plug-and-play, bao gồm đúc và giao dịch NFT, giao dịch phái sinh, v.v. Về mặt sinh thái học, nền tảng giao dịch hợp đồng tương lai phi tập trung DYDX là một người dùng trung thành của StarkWare.
StarkNet, nói một cách chính xác, là zkVM. Thay vì thực hiện các mạch ZK cho các opcode Ethereum, nó đã tạo ra một bộ ngôn ngữ hợp ngữ thân thiện với ZK hơn, AIR (Đại diện trung gian đại số) và ngôn ngữ cấp cao Cairo. Mặc dù bản thân StarkNet không tương thích với EVM nhưng nó vẫn có thể tương thích với Ethereum thông qua các phương pháp khác bao gồm Kakarot (Kakarot là một zkEVM được viết ở Cairo, là một zkEVM có mã byte tương đương với EVM). Theo hiểu biết của tôi, StarkNet là một dự án tương đối tập trung, một trong số đó là nó không thể đồng bộ hóa với việc nâng cấp bảo mật của Ethereum, do đó, cần phải tập trung nhân sự R&D để bù đắp những thiếu sót về bảo mật và theo dõi sự phát triển và thích ứng của ETH. thỏa thuận mới.
StarkNet sử dụng STARK làm hệ thống bằng chứng của mình. So với SNARK, STARK có nhiều đổi mới hơn. Nó không cần dựa vào "cài đặt đáng tin cậy" như SNARK. Ngoài ra, nó cũng có các giả định mã hóa đơn giản hơn, tránh nhu cầu về đường cong elip, ghép nối và các giả định kiến thức hàm mũ, đồng thời hoàn toàn dựa vào lý thuyết thông tin và hàm băm, do đó, nó có khả năng chống lại các cuộc tấn công lượng tử cao hơn. Nhìn chung, STARK an toàn hơn SNARK. Về khả năng mở rộng, STARK có hiệu ứng cận biên đáng kể và bằng chứng càng lớn thì tổng chi phí càng thấp.
Tuy nhiên, về kiến trúc, hiện tại chỉ có một Sequencer (trình sắp xếp thứ tự) trong hệ thống do StarkWare kiểm soát và chỉ có một Prover (tức là prover tạo ZK Proof) không chỉ tạo ra bằng chứng cho StarkNet, mà còn tự chạy. Bằng chứng về thế hệ cho tất cả các ứng dụng khác trên bản tổng hợp StarkEx.
Các biến thể của ZK Rollup: Validiums và Volitions
Validium cũng là một giải pháp mở rộng quy mô L2 sử dụng bằng chứng tính toán như ZK Rollup để thực thi tính toàn vẹn của quy trình giao dịch. Không giống như ZK Rollup, Validium không lưu trữ dữ liệu giao dịch trên mạng chính Ethereum. Hy sinh tính khả dụng của dữ liệu trên chuỗi là một sự đánh đổi có thể dẫn đến những cải tiến lớn về khả năng mở rộng, điểm nổi bật nhất là các Validium có thể xử lý khoảng 9.000 giao dịch mỗi giây.
Nhưng trong mắt tác giả, Validium không thể được coi là một ZK Rollup nghiêm ngặt. Giải pháp này tương tự như Plasma và không đạt được tính khả dụng của dữ liệu ở lớp L1, do đó, giải pháp này không thể được tính là Tổng số. Điểm khác biệt với Plasma là Plasma đã thiết lập “cơ chế thoát 7 ngày” tương tự như OP Rollup ở lớp L2, trong khi Validium sử dụng và ZK nghĩa là rút ngắn thời gian xác minh dữ liệu ở lớp L2 và không đồng bộ hóa dữ liệu. dữ liệu vào L1.
Volition, do StarkWare tiên phong, cho phép người dùng dễ dàng chuyển đổi giữa ZK Rollup và Validium. Ví dụ: một số ứng dụng, chẳng hạn như sàn giao dịch phái sinh phi tập trung, có thể phù hợp hơn với Validium, trong khi vẫn muốn tương thích với các ứng dụng trên ZK Rollup, thì Volition cung cấp khả năng chuyển đổi này.
zkSync
Tương tự như StarkNet, zkSync luôn khăng khăng chọn zkVM, tương đương với ngôn ngữ cấp cao và đã thu hút nhiều sự chú ý, với mức độ phổ biến và khối lượng khóa rất cao. zkSync 1.0 (zkSync Lite) đã được ra mắt trên mạng chính Ethereum vào ngày 15 tháng 6 năm 2020, đạt được thông lượng giao dịch khoảng 300 TPS, nhưng nó không tương thích với EVM. Và zkSync 2.0 (Kỷ nguyên zkSync) sẽ ra mắt vào ngày 24 tháng 3 năm 2023.
Mục tiêu của Kỷ nguyên zkSync là tạo bằng chứng nhanh hơn bằng cách sử dụng máy ảo tùy chỉnh của họ để tối ưu hóa thay vì theo đuổi tính tương đương của EVM. Nó hỗ trợ Solidity, Vyper, Yul và Zinc (ngôn ngữ lập trình nội bộ của rollup) thông qua trình biên dịch LLVM mạnh mẽ để triển khai hầu hết các chức năng của hợp đồng thông minh. Do VM tự phát triển, zkSync Era hỗ trợ trừu tượng hóa tài khoản gốc, để bất kỳ tài khoản nào cũng có thể sử dụng bất kỳ Mã thông báo nào để thanh toán.
Ngoài ra, thông qua việc áp dụng giao thức zkPorter, kết hợp với ZK Rollups và công nghệ phân mảnh, thông lượng mạng đã tăng theo cấp số nhân, đạt hơn 20.000 TPS (tương tự như chuyển đổi tính khả dụng dữ liệu của Volitions).
Nhìn chung, zkSync là một dự án L2 giàu tính sinh thái đã thu hút sự chú ý của các nhà phát triển và nhà đầu tư. Mặc dù gần đây đã có một số trường hợp dự án thất bại hoàn toàn trên zkSync, vẫn còn một câu hỏi đặt ra là liệu các nhà phát triển có thể có được trải nghiệm di chuyển và phát triển tốt trên ngôn ngữ cấp cao tương đương với zkVM hay không. Hiện tại thiếu các báo cáo sử dụng chính xác ở cấp nhà phát triển. Chúng ta vẫn cần thêm thời gian để quan sát.
Đa giác zkEVM
Polygon đã ra mắt phiên bản beta của mạng chính zkEVM Rollup vào ngày 27 tháng 3, đây cũng là máy ảo tương đương của Ethereum và mã nguồn mở cho tất cả mã zkEVM. So với zkSync, số lượng đa giác bị khóa zkEVM nhỏ hơn nhiều, nhưng cũng có nhiều dự án thú vị và năng động trong hệ sinh thái.
Về thiết kế Rollup, Polygon khác với Scroll ở chỗ nó sử dụng mô hình Proof of Efficiency (PoE) để thúc đẩy Sequencer và Aggregator giải quyết một số thách thức của việc phân cấp và trình xác thực không cần cấp phép. Trong mô hình hai bước của bộ phân loại-tổng hợp không cần xin phép, bất kỳ máy phân loại nào cũng có thể gửi đơn đăng ký đóng gói lô để nhận phí đóng gói, nhưng nó cần phải trả phí Gas của lớp L1 và gửi một lượng Mã thông báo nhất định ; đồng thời, các Token tổng hợp cần đặt mục tiêu của riêng chúng để tối đa hóa lợi nhuận được đảm bảo cho mỗi lần tạo bằng chứng. Ngoài ra, các chế độ Đa giác và Volition (ZK Rollup và Validium) cũng có các mô hình sẵn có dữ liệu tương thích sâu để cung cấp cho người dùng các cấp độ dịch vụ khác nhau.
Ngoài ra, Polygon cũng đã đầu tư một lượng công sức đáng kể vào giao thức ZK và hiệu quả cũng rất đáng chú ý, trong tài liệu họ tóm tắt các ưu điểm kỹ thuật của mình, chủ yếu bao gồm các điểm sau:
Tương thích hơn: Polygon luôn nhấn mạnh vào việc sử dụng zkVM, tương đương với EVM, để giảm chi phí cho các nhà phát triển di chuyển dApps. Đồng thời, mặc dù Polygon Miden áp dụng giao thức ZK-STARK nhưng nó vẫn hỗ trợ chạy các hợp đồng Solidity.
Xác minh dễ dàng hơn: Lý do tại sao ZK Rollup thường bị chỉ trích là việc tạo bằng chứng về tính hợp lệ đòi hỏi phần cứng chuyên dụng đắt tiền mà nhà cung cấp chạy và chuyển chi phí cho người dùng. Polygon ZK Rollup (như Polygon Zero) nhằm mục đích đơn giản hóa các sơ đồ chứng minh để các thiết bị cấp thấp hơn có thể tham gia, chẳng hạn như các thử nghiệm tạo chứng minh Plonky2 trên PC cấp người tiêu dùng.
Quá trình xác minh và tạo bằng chứng nhanh hơn: Polygon Zero có thể tạo bằng chứng 45kb trong 170 mili giây.
PHẦN 5 Khoảng cách giữa công nghệ lý thuyết và dự án thực tế
Báo cáo nghiên cứu này chủ yếu thực hiện việc phổ biến khoa học công nghệ ZK và giới thiệu cơ chế Rollup, nhấn mạnh tầm quan trọng của tính khả dụng của dữ liệu và tạo ra sự khác biệt nhất định về vấn đề ZK hoặc zkEVM Rollup. Ngoài ra, trên cơ sở phân biệt zkVM và zkEVM, nó cũng phân loại chi tiết sự khác biệt giữa ba loại zkEVM và các loại khác nhau và các rãnh ZK liên quan. Cuối cùng, kết hợp với một số dự án thuận lợi, họ đã xem xét các khung kỹ thuật tương ứng và hệ sinh thái hiện có.
Tuy nhiên, xét về các dự án cụ thể, các dự án chọn ngôn ngữ cấp cao tương đương chiếm vị trí chủ đạo trên thị trường và một số sản phẩm tập trung nghiêm túc như StarkWare cũng có thể giành được sự ưu ái của thị trường. Mặc dù loại VM đầu tiên được đề cập trong nghiên cứu lý thuyết có những hạn chế lớn, nhưng với lượng khách hàng thị trường hạn chế, "tính phổ quát" dường như là một gánh nặng và chúng ta không thể phân biệt được vấn đề nào "mở rộng hiệu quả" đã đột phá và Hiện thực hóa hiệu quả ngoài lý thuyết . Tất nhiên, trên thực tế, nhiều người không chú ý đến các tính năng kỹ thuật, vì vậy điều này có vẻ không phải là Web3, nhưng cũng rất Web3.
Mục đích của công nghệ Rollup là khai thác thêm giá trị của chuỗi khối, nhưng thường do nhu cầu cấp thiết trở thành một "khái niệm đổi mới" trên thị trường nên có hiện tượng "quay ngược" và quay trở lại tập trung hóa. Đây là vấn đề với thị trường hiện tại.
Giá trị của blockchain rất dễ nhận thấy, ai lại không muốn có một chiếc máy tính vĩnh cửu? Nhưng vấn đề cốt lõi là khi công suất chạy của chiếc máy tính này kém xa bất kỳ máy chủ nào xung quanh chúng ta và cần đầu tư nhiều nguồn lực, dù giá trị sử dụng thấp hơn nhiều so với chi phí đầu vào của chúng ta, với tư cách là một “sản phẩm công ích” , nó vẫn là Mọi người có thể tham gia không?
Khi chúng ta đã có sản phẩm từ nhiều quốc gia, xã hội và thậm chí cả cá nhân, trong hoàn cảnh nào chúng ta sẵn sàng bỏ qua chi phí sử dụng cao và theo đuổi kết quả “luôn trực tuyến, luôn đúng”? Tôi nghĩ đây là điều mà ngành công nghiệp blockchain ngày nay cần phải suy nghĩ. Công nghệ Rollup về mặt kỹ thuật có thể cải thiện vấn đề này, nhưng vẫn còn một số lượng lớn các vấn đề cần phải để thị trường nóng nảy giải quyết.