BTC
$96,000
5.73%
ETH
$3,521.91
3.97%
HTX
$0.{5}2273
5.23%
SOL
$198.17
3.05%
BNB
$710
3.05%
lang
简体中文
繁體中文
English
Tiếng Việt
한국어
日本語
ภาษาไทย
Türkçe
Trang chủ
AI AI
Tin nhanh
Bài viết
Sự kiện
BlockBeats Pro
Thêm
Thông tin tài chính
Chuyên đề
Hệ sinh thái chuỗi khối
Mục nhập
Podcast
Data
OPRR
Partnered With:

So sánh zkEVM với zkSync trong mắt Polygon

Đọc bài viết này mất 12 phút
Nhân viên Polygon so sánh toàn diện về Polygon zkEVM và zkSync Era∎
Tiêu đề gốc: "So sánh các zkEVM"
Tác giả gốc: Daniel Lubarov
Bản tổng hợp gốc: Kxp, BlockBeats


Khi "cuộc chiến zkEVM" nóng lên, có rất nhiều cuộc thảo luận công khai về giá trị của các zkEVM khác nhau. Tuy nhiên, có một số thông tin sai lệch ở đó, vì vậy chúng tôi muốn làm sáng tỏ một số sự thật về Polygon zkEVM và so sánh nó với các dự án khác như thế nào.

 

Là một nhân viên của Polygon, tôi có thành kiến, nhưng tôi sẽ cố gắng giữ mọi thứ tương đối không thiên vị. Tôi chủ yếu tập trung vào Kỷ nguyên zkEVM và zkSync của Polygon vì chúng đã được sử dụng trong sản xuất và tôi không biết nhiều về các dự án zkEVM khác.

 

ZkEVM và Prover của zkSync bao gồm hơn 100 nghìn dòng mã. Tôi cố gắng cung cấp một bản tóm tắt chính xác, nếu có bất kỳ sai sót nào, vui lòng cho tôi biết và tôi sẽ sửa chúng.

 

Khả năng tương thích EVM

 

Polygon zkEVM trực tiếp thực thi mã byte EVM. Theo phân loại của Vitalik, nó là zkEVM loại 3. Chẳng bao lâu nữa nó sẽ là loại 2; hiện tại chúng tôi đang thiếu bốn phần biên dịch trước. Scroll cũng đang hoạt động theo hướng zkEVM Loại 2.

 

Ngược lại, zkSync Era sử dụng định dạng mã byte khác và hỗ trợ Solidity bằng cách cung cấp trình biên dịch. Điều này làm cho nó trở thành zkEVM loại 4: nó hỗ trợ Solidity, nhưng không hỗ trợ mã byte EVM. Không thể sử dụng trực tiếp các công cụ như Hardhat, mặc dù có thể sử dụng plugin zkSync.

 

zkSync coi zkVM của họ mang tính tương lai hơn, nghĩa là nó hoạt động tốt hơn với các ngôn ngữ khác ngoài Solidity. Tuy nhiên, VM của họ dường như kế thừa nhiều đặc tính hiệu suất của EVM, chẳng hạn như kích thước từ 256-bit của nó. Một zkVM như Miden có thể mang tính tương lai hơn vì nó được thiết kế cho điện toán đa năng thay vì tập trung vào Solidity.

 

Hiệu suất

 

Hiệu suất luôn là trọng tâm của Polygon và zkEVM của chúng tôi rất hiệu quả. Chi phí chạy chương trình chứng minh của chúng tôi trên CPU là khoảng 0,000084 USD cho mỗi giao dịch.

 

Mặc dù chúng tôi không tìm thấy bất kỳ điểm chuẩn hoạt động nào cho zkEVM với zkSync, nhưng chúng tôi nghi ngờ có một khoảng cách lớn về hiệu suất do các lựa chọn công nghệ ZK rất khác nhau của chúng tôi.

 

Lựa chọn trường

 

Sau khi nghiên cứu một số phương án, chúng tôi đã chọn cái gọi là trường Goldilocks, trường thứ hai -đặt hàng trường số nguyên tố khổng lồ 2^64 - 2^32 + 1. Kích thước nhỏ và cấu trúc nhị phân đẹp mắt của nó dẫn đến các hoạt động miền cực kỳ nhanh, với phép nhân mất ít hơn hai chu kỳ trên các CPU hiện đại.

 

zkSync sử dụng cách tiếp cận truyền thống hơn, sử dụng SNARK dựa trên đường cong alt-bn128. Trường cơ sở có kích thước khoảng 254 bit và phép nhân trường yêu cầu khoảng 80 chu kỳ trên CPU.

 

Để hiểu được tác động của sự khác biệt lớn này, chúng ta có thể xem điểm chuẩn SHA2 của Celer. Ở đó, bộ chuẩn STARK của chúng tôi nhanh hơn 5-50 lần so với bộ chuẩn dựa trên đường cong elip.

 

Điều thú vị về alt-bn128 là EVM hỗ trợ nó nguyên bản, vì vậy việc gửi bằng chứng tới Ethereum đơn giản hơn. Tại Polygon, chúng tôi "gói" bằng chứng tổng hợp cuối cùng trong bằng chứng fflonk của alt-bn128. Mặc dù cách tiếp cận của chúng tôi đòi hỏi nhiều công sức hơn nhưng chúng tôi nghĩ rằng nó đáng giá vì đạt được hiệu suất đáng kinh ngạc.

 

Số học

 

Sự khác biệt không dừng lại ở đó. ZkEVM của chúng tôi được xây dựng trên STARK nhưng có những cải tiến hiện đại. Chúng tôi có STARK chính cho CPU (một hàng trên mỗi chu kỳ) và các STARK khác cho số học, băm, v.v. Các bảng này có thể được nối với nhau, giống như chúng tôi mô tả trong RapidUp. Điều này tương tự như các CPU vật lý thường có bộ đồng xử lý để tăng tốc các hoạt động chuyên sâu như kết xuất, mã hóa hoặc suy luận ML.

 

Lấy Keccak làm ví dụ. Vì nó được sử dụng rộng rãi trong các ứng dụng EVM nên chúng tôi đã thiết kế STARK chuyên dụng cho nó, sử dụng một số thủ thuật mới mà chúng tôi ghi lại ở đây. Việc thiết kế một số học tùy chỉnh như vậy tốn rất nhiều công sức nhưng nó đã được đền đáp xứng đáng, cho phép chúng tôi chứng minh hàng trăm hoán vị Keccak mỗi giây.

 

zkSync sử dụng cái mà tôi gọi là cách tiếp cận truyền thống hơn. Họ sử dụng bộ chuẩn dựa trên PLONK và mặc dù nó hỗ trợ các cổng tùy chỉnh nhưng zkEVM của họ không được sử dụng nhiều; hầu hết các tính toán được thực hiện bằng cách sử dụng một cổng chung có tên là SelectorOptimizedWidth4MainGateWithDNext. Nó có vẻ mạnh hơn một chút so với cổng PLONK vanilla, nhưng vẫn bị giới hạn ở các thao tác đơn giản như mul-adds.

 

Thật đáng khen ngợi, zkSync sử dụng các tham số tra cứu (giống như chúng tôi làm), đây là một kỹ thuật hiện đại hơn có thể giúp làm cho những thứ như Keccak trở nên hiệu quả hơn. Tuy nhiên, nếu không có số học tùy chỉnh, toán 256-bit, Keccak, v.v. sẽ kém hiệu quả hơn nhiều.

 

Bảo mật

 

Polygon rất coi trọng vấn đề bảo mật và zkEVM của chúng tôi đã trải qua hai cuộc kiểm tra độc lập: Một lần bởi Spearbit và cái còn lại của Hexens. Cả hai báo cáo đều có thể xem công khai tại đây. Chúng tôi cũng đã xuất bản hướng dẫn để xác minh hoạt động triển khai của bạn.

 

Chúng tôi không biết về bất kỳ cuộc kiểm tra công khai nào về zkEVM của zkSync. Trang web của zkSync liệt kê các cuộc kiểm tra hợp đồng bắc cầu, nhưng không liệt kê bản thân zkEVM.

 

Ngoài việc kiểm tra, cả hai dự án đều có nhiều "lốp dự phòng an toàn" khác nhau để cung cấp một lớp bảo mật thay thế, nhưng đây là một chủ đề rất sâu. Sẽ không đi sâu vào chi tiết ở đây.


Dữ liệu L1

 

Polygon zkEVM xuất bản tất cả dữ liệu giao dịch lên L1. Có một số nhầm lẫn về vấn đề này trên Twitter, hãy xem bài viết của Edu về chi phí xăng dầu để biết vấn đề này. Hiện tại, kích thước giao dịch trung bình là khoảng 120 byte, do đó chi phí gas cho mỗi giao dịch là khoảng 120*16=1920Gas.

 

zkSync công bố sự khác biệt về trạng thái. Trình tuần tự hóa độc hại có thể che giấu dữ liệu giao dịch, nhưng zkSync cho rằng trạng thái hiện tại của trie là đủ để đảm bảo an toàn. Điều này có vẻ gây tranh cãi vì dữ liệu giao dịch thường được cho là sẽ có sẵn và một số ứng dụng dựa vào điều này.

 

Sau khi xem dữ liệu đã chỉnh sửa, chúng tôi có thể thấy rằng zkEVM và zkSync của chúng tôi về cơ bản có cùng chi phí gas cho mỗi giao dịch. Những con số này có thể thay đổi theo thời gian với sự kết hợp của các loại giao dịch xảy ra trên mỗi chuỗi, nhưng tính đến ngày hôm nay, sự khác biệt về trạng thái không tiết kiệm được bất kỳ lượng gas nào; cả hai hệ thống đều gửi khoảng 120 byte dữ liệu cho mỗi giao dịch tới L1.

 

Chúng tôi dự định thực hiện một số tối ưu hóa ở đây nhưng không sử dụng sự khác biệt về trạng thái. Bản thân giao dịch có thể được nén để giảm chi phí gas trong khi vẫn đảm bảo tính sẵn có của dữ liệu giao dịch. Giữ nguyên!


Liên kết gốc


Chào mừng bạn tham gia cộng đồng chính thức của BlockBeats:

Nhóm Telegram đăng ký: https://t.me/theblockbeats

Nhóm Telegram thảo luận: https://t.me/BlockBeats_App

Tài khoản Twitter chính thức: https://twitter.com/BlockBeatsAsia

举报 Báo lỗi/Báo cáo
Chọn thư viện
Thêm mới thư viện
Hủy
Hoàn thành
Thêm mới thư viện
Chỉ mình tôi có thể nhìn thấy
Công khai
Lưu
Báo lỗi/Báo cáo
Gửi