Làm thế nào ZKP và ZK-Rollups giúp giải quyết vấn đề về tính mở rộng

Trung cấp4/8/2024, 3:54:44 AM
Trong bài viết này, chúng tôi sẽ giải thích công nghệ chứng minh không cần chứng minh là gì và nói về một blockchain phổ biến - zkSync: cách giao dịch hoạt động trong zkSync và sự khác biệt chính so với Máy ảo Ethereum (EVM).

*Chuyên nghiệp tiêu đề gốc ‘How ZKP and ZK-Rollups help solve the scalability problem: a review of the zkSync blockchain’

Trong bài viết này, chúng tôi sẽ giải thích công nghệ chứng minh không thông tin là gì và nói về một blockchain phổ biến - zkSync: cách giao dịch hoạt động trong zkSync và các khác biệt chính so với Máy Ảo Ethereum (EVM). Chúng tôi cũng sẽ thảo luận về ưu điểm và nhược điểm của blockchain này, mà chúng tôi tin rằng có thể có một tương lai hứa hẹn.

ZkSync là một blockchain cấp hai (Layer 2 - L2) cho Ethereum, được thiết kế để giải quyết vấn đề phí cao và khả năng xử lý hạn chế (Giao dịch mỗi giây - TPS) trên mạng Ethereum. Nền tảng này sử dụng công nghệ ZK-Rollup, sử dụng Zero-Knowledge Proofs (ZKP) để gom nhóm nhiều giao dịch khỏi mạng chính (L1). Chỉ có bằng chứng mật mã của tính chính xác của các giao dịch và dữ liệu nén của chúng được gửi đến L1, cải thiện đáng kể hiệu suất và giảm chi phí.

Chuyên nghiệp bởi Matter Labs, zkSync được công bố là một sản phẩm hoàn toàn mã nguồn mở (100% mã nguồn mở), được quản lý bởi cộng đồng. TheoCryptorankDự án đã thu hút sự chú ý, huy động vốn lên đến 458 triệu đô la. Trong dài hạn, Matter Labs nhắm tới việc tạo ra một hệ sinh thái toàn diện. Hiện tại, có hai chuỗi khối hoạt động: zkSync Lite, xử lý thanh toán trong ETH và ERC20 tokens, và zkSync Era, hỗ trợ hợp đồng thông minh đầy đủ. Kế hoạch tương lai bao gồm việc ra mắt hệ thống hyperchain (L3), đảm bảo an ninh cao. Mục tiêu của Matter Labs là mở rộng công nghệ lên một cấp độ sẽ thu hút những người dùng blockchain tỷ lệ tiếp theo.

Nền tảng

ZkSync đại diện cho một phương pháp mới trong việc giải quyết vấn đề về khả năng mở rộng được biết đến như là blockchain trilemmaDự án này, giống như các giải pháp Layer 2 (L2) khác, đang tìm kiếm sự cân bằng giữa bảo mật, khả năng mở rộng và phi tập trung trong các mạng blockchain.

  1. Khả năng mở rộng: Khả năng của một hệ thống xử lý một lượng giao dịch hoặc dữ liệu tăng lên một cách hiệu quả mà không mất đi hiệu suất và bảo mật.
  2. Bảo mật Blockchain: Đảm bảo tính đáng tin cậy và bảo vệ dữ liệu khỏi truy cập trái phép, sửa đổi hoặc can thiệp.
  3. Phân quyền: Sự vắng mặt của một cấu trúc kiểm soát tập trung. Trong một hệ thống phân quyền, việc quản lý và ra quyết định được phân phối dân chủ giữa tất cả các thành viên mạng.

Ethereum tập trung vào bảo mật và phi tập trung, nhấn mạnh vị thế của mình là một giao thức ngang hàng với các nút phân phối trên toàn thế giới. Để biết thông tin mới nhất về phân phối nút, vui lòng tham khảo NodeWatch.

Để duy trì sự phi tập trung trong mạng, mỗi nút phải xác minh tất cả các giao dịch. Điều này làm chậm mạng một cách tự nhiên. Hơn nữa, dưới tải mạng cao, giao dịch có thể trở nên khá đắt đỏ và yêu cầu thời gian đáng kể để xử lý.

Lớp 2

Nhiệm vụ chính để tăng TPS của mạng Ethereum mà không tăng tải cho các nút là việc giới thiệu Shardingkết hợp với việc chuyển đổi sang sự đồng thuận PoS (Proof of Stake). Điều này liên quan đến việc chia các thẩm định viên thành các nhóm con để xử lý các phân đoạn riêng biệt của mạng, từ đó giảm tổng tải và tăng khả năng xử lý. Tuy nhiên, cộng đồng đã tập trung vào các giải pháp Layer 2, xem xét sự phát triển nhanh chóng của chúng.

Ngoài ý tưởng triển khai Sharding trong Ethereum, đã xuất hiện các giải pháp về tính mở rộng khả năng mở rộng khác, như:

  • Thanh toán và Kênh Trạng Thái
  • Sidechains
  • Plasma
  • Optimistic Rollup

Cũng như các công nghệ dựa trên chứng minh không dùng tri thức (ZKP), bao gồm:

  • Validium
  • zkRollup
  • Ý chí

Thông tin chi tiết hơn có thể được tìm thấy ở đây.

Mặc dù Sharding vẫn đang trong quá trình phát triển, việc phân rã Dencun dự kiến sẽ diễn ra vào đầu năm 2024, sẽ triển khaiChuyên nghiệp-DankshardingBước trung gian này nhằm mục đích cải thiện các giải pháp Layer 2, làm cho việc lưu trữ dữ liệu trên L1 trở nên tiết kiệm hơn. Do đó, Proto-Danksharding hứa hẹn giảm chi phí giao dịch trên L2, như một bước tiến đến một giải pháp Sharding hoàn chỉnh.

Từ cái nhìn đầu tiên, các chuỗi khối L2 có vẻ tương tự, vì nhiệm vụ chính của họ là tăng số lượng giao dịch bên ngoài L1 trong khi ủy quyền vai trò bảo đảm an ninh cho L1. Các nhà phát triển của các chuỗi khối như vậy thường tuyên bố rằng các giải pháp của họ là nhanh nhất, đáng tin cậy nhất và đơn giản nhất. Trong thực tế, mỗi phương pháp mở rộng đều có những sắc thái riêng, và sự thỏa hiệp không thể tránh khỏi về tốc độ giao dịch, mức độ bảo mật hoặc mức độ phân quyền. Các giải pháp hoàn toàn tập trung cũng phổ biến. Tất cả những khía cạnh này đưa chúng ta trở lại với các vấn đề cơ bản của bài toán ba khía cạnh của chuỗi khối.

Trong bài viết này, các tiêu chí chính để đánh giá các giao thức được sử dụng trong các giải pháp Layer-2 được đề xuất. Chúng bao gồm:

  • an ninh,
  • hiệu suất và hiệu quả kinh tế,
  • dễ sử dụng,
  • các khía cạnh bổ sung như hỗ trợ hợp đồng thông minh, tương thích bytecode EVM và tùy chọn bảo mật.

Quan trọng! Bài viết được viết bởi Matter Labs và, theo ý kiến của tôi, một số điều được "kéo dài" để ủng hộ zkRollup (vì có một mâu thuẫn rõ ràng về lợi ích), nhưng điều đó không quan trọng lắm, điều chính là nhìn thấy sự khác biệt tồn tại giữa các giao thức Layer-2.

Dưới đây tôi sẽ cung cấp một bảng, và ở đây tôi sẽ mô tả ngắn gọn nội dung của nó.

Bảo mật

  • Giả thuyết về tính sống còn hoặc 'khả năng tồn tại' của Layer-2. Được cho là để duy trì tính năng của Layer-2, một số người tham gia sẽ luôn nằm trên chuỗi ở cấp độ Layer-1 để đáp ứng các trường hợp gian lận tiềm năng. Đây có thể là các nhà xác thực đặt cược một số tiền (được đánh dấu là 'Bonded' trong bảng) trên L1, hoặc các bên thứ ba đảm bảo an ninh của giao thức để nhận phần thưởng. Như đã thấy trong bảng, các giải pháp sử dụng ZKP (Validium và zkRollup) không cần thiết điều này.
  • Vấn đề thoát khỏi tập thể. Một vấn đề phát sinh nếu, vì lý do an ninh, cần phải khởi xướng việc rút tiền từ tất cả người dùng từ L2 sang L1. Như đã thấy trong bảng, vấn đề này chỉ tồn tại với giao thức Plasma, thông tin chi tiết có thể được đọc ở đây.
  • Quyền sở hữu. Câu hỏi về việc các bên xác minh L2 có thể tạm thời chặn hoặc tịch thu tiền của người dùng.
  • Rủi ro kinh tế. Bao gồm các cuộc tấn công đa dạng vào các nhà xác thực L2, bao gồm hối lộ các thợ đào L1, tạo ra các DAO "bóng tối", và các cuộc tấn công khác với động cơ kinh tế.
  • Mật mã. Sự khác biệt giữa các cơ sở mật mã tiêu chuẩn và mới. Các mật mã tiêu chuẩn được nghiên cứu nhiều hơn và có thể dễ bị tấn công, trong khi các mật mã mới (như SNARK và STARK) cung cấp độ tin cậy cao hơn nhưng yêu cầu kiến thức và kiểm toán bổ sung từ các nhà phát triển.

Hiệu suất và Kinh tế

Với hiệu suất, nó rất rõ ràng. TPS (Giao dịch mỗi giây) cho biết năng suất của mạng, và trong ngữ cảnh của việc mở rộng, đó là tham số quan trọng nhất.

Khía cạnh kinh tế:

  • Hiệu suất vốn: Khía cạnh này đặc biệt quan trọng đối với Các Kênh Thanh Toán. Chúng yêu cầu đóng băng số tiền bằng với khối lượng giao dịch trung bình trong kênh, khiến cho chúng hiệu suất vốn kém hơn trong việc đầu tư vốn.
  • Giao dịch L1 để tạo tài khoản L2. Cũng là một điểm hạn chế cho các kênh thanh toán, vì trong tất cả các giải pháp khác, một tài khoản được tạo ra trong L1 sẽ hoạt động trong L2 mặc định.
  • Chi phí giao dịch: Cùng với TPS, đây là một trong những yếu tố quan trọng nhất của khả năng mở rộng, xác định sự hấp dẫn kinh tế của giải pháp.

Dễ sử dụng

  • Thời gian rút tiền từ L2 sang L1: Khoảng thời gian này có thể dao động từ vài phút đến vài tuần. Optimistic Rollups và Plasma đặc biệt không thuận tiện trong trường hợp này, vì họ cần nhiều thời gian hơn để rút tiền.
  • Thời gian đến từ Độ tin cậy Chủ quan của Giao dịch: Xác định tốc độ mà một giao dịch trở thành không thể thay đổi trên L1 từ quan điểm của các quan sát viên bên ngoài. Ví dụ, trong Optimistic Rollups, việc đạt được sự hoàn thành trên L1 chỉ yêu cầu một xác nhận trên Ethereum, nhưng sự hoàn thành giao dịch đầy đủ mất khoảng một tuần.
  • Xác thực tính chủ quan cuối cùng với Mã khách hàng: Xác định xem thời gian đến tính chủ quan cuối cùng có thể được kiểm tra bởi khách hàng nhẹ (trình duyệt/ví di động) hay không. Tiếp tục với ví dụ về Optimistic Rollups, để xác nhận tính chất cuối cùng của giao dịch, người dùng phải tải xuống và xác minh toàn bộ trạng thái rollup trong tuần qua.
  • Xác nhận giao dịch tức thì. Giao thức có thể cung cấp xác nhận giao dịch tức thì với sự đảm bảo đầy đủ không? Hoặc chỉ đảm bảo điều này ở mức đồng thuận L2.
  • Sự Hoàn Thành Ngay Lập Tức: Có thể triển khai trên hầu hết các giao thức L2, có nghĩa là các giao dịch được xác nhận ngay lập tức trong giao diện người dùng. Chỉ kênh thanh toán (các kênh trạng thái) cung cấp đảm bảo bảo mật đầy đủ cho những xác nhận này, trong khi đối với các giao thức khác, các giao dịch này vẫn có thể bị đảo ngược trong một khoảng thời gian nhất định trước khi chúng được xác nhận trong L1.

Các Khía Cạnh Khác

  • Hợp đồng thông minh: Xem xét xem giải pháp L2 có hỗ trợ hợp đồng thông minh có khả năng lập trình đầy đủ, hay chỉ một phần hạn chế các chức năng thông qua các điều kiện.
  • Khả năng tương thích với Mã byte EVM: Đánh giá tính khả thi của việc chuyển hợp đồng thông minh mã byte Ethereum EVM hiện có sang L2 mà không cần thay đổi đáng kể.
  • Hỗ trợ quyền riêng tư tích hợp: Xem xét hiệu quả của việc bảo vệ quyền riêng tư trong các giải pháp L2, đặc biệt là trong bối cảnh sẵn có và hiệu quả về chi phí của giao dịch bảo mật.

Dưới đây là bảng so sánh các giải pháp chính dựa trên ZKP:

Để hiểu rõ hơn về Zero-Knowledge Proofs (ZKP), tôi khuyên bạn nên tham khảo bài viết nàytrong chúng tôiblockchain-wiki, tạo ra bởi các nhà phát triển dành cho các nhà phát triển với tình yêu với bằng chứng và sự đào sâu vào chi tiết.

Quy trình vòng đời giao dịch trong zkSync

Hoạt động của ZK-Rollups có thể được biểu diễn ở mức độ cao như sau:

  1. Xếp gói Rollup: Các giao dịch được đóng gói vào một rollup.
  2. Tạo ZKP: Bằng chứng không có kiến thức được hình thành.
  3. Xác minh trên Ethereum: Bằng chứng được gửi để xác minh đến một hợp đồng thông minh trên Ethereum.

Trong bối cảnh kiến trúc của zkSync, quá trình trông như thế này:

  1. Bộ Sưu Tập Các Khối Nội Bộ: các nhà xác minh zkSync thu thập các khối nội bộ từ giao dịch mỗi vài giây.
  2. Hình thành Gói Khối: Mỗi 30-90 giây, một gói khối được tạo ra từ các khối nội bộ.
  3. Cam kết trạng thái Blockchain: Người xác minh ghi lại trạng thái hiện tại của blockchain và truyền dữ liệu đã được sửa đổi đến L1 như dữ liệu gọi cho việc khôi phục có thể.
  4. Tính toán và Gửi SNARK: Các Validators tính toán SNARK (ZKP) cho gói và gửi nó để xác minh đến một hợp đồng thông minh Ethereum. Sau khi xác minh, trạng thái mạng mới trở nên cuối cùng.


Các nhà xác minh trong ZK-Rollups đóng vai trò quan trọng, đóng gói giao dịch vào các khối và tạo ra bằng chứng Zero-Knowledge cho chúng. Một đặc điểm của hệ thống là những nhà xác minh không thể vật lý đánh cắp tiền. Thiệt hại tiềm năng quan trọng nhất mà họ có thể gây ra là tạm thời ngừng mạng.

Lưu ý: Trong Kỷ nguyên zkSync, vai trò của người xác minh được thực hiện bởi các nhà điều hành.

Các nhà phát triển của zkSync nhấn mạnh các cam kết sau của kiến trúc của họ:

  1. Bảo mật Quỹ: Các nhà điều hành không bao giờ có thể gây hại cho trạng thái mạng hoặc đánh cắp quỹ, đó là một lợi thế so với Sidechains.
  2. Khả năng Khôi phục Quỹ: Người dùng luôn có thể rút quỹ của mình ngay cả khi các nhà điều hành ngừng hoạt động. Điều này là có thể nhờ vào sự sẵn có dữ liệu, không giống như hệ thống Plasma.
  3. Độc lập khỏi việc theo dõi: Nhờ ZKP, người dùng hoặc bên thứ ba đáng tin cậy không cần liên tục theo dõi các khối Rollup để ngăn chặn gian lận, đó là một lợi thế so với các hệ thống dựa trên chứng minh gian lận, như các kênh thanh toán hoặc Optimistic Rollups.

Các giao dịch trong Thời đại zkSync trải qua một số trạng thái chính, khác biệt so với các xác nhận Rollup thông thường trong L1:

  • Đang chờ xử lý: Giao dịch đã được nhà điều hành nhận nhưng chưa được xử lý.
  • Processed: Giao dịch đang được xử lý bởi người điều hành và sẵn sàng được bao gồm trong khối tiếp theo.
  • Cam kết: Dữ liệu giao dịch được công bố trên Ethereum, đảm bảo sẵn có dữ liệu, nhưng không xác nhận việc thực hiện chính xác của nó.
  • Thực hiện: Giai đoạn cuối cùng nơi bằng chứng tính hợp lệ (SNARK) cho giao dịch được xác minh bởi một hợp đồng thông minh Ethereum, làm cho giao dịch trở thành cuối cùng.

Ngoài số khối, các giao dịch trong zkSync cũng hiển thị số gói. Ban đầu, các tham số như block.number, block.timestamp và blockhash được lấy từ L1. Tuy nhiên, sau đó,một cập nhật, các giá trị này hiện sẽ được lấy từ L2. Mặc dù vậy, các nhà phát triển dự định cung cấp các phương pháp để truy cập dữ liệu từ L1.

Sự khác biệt giữa zkEVM và EVM

Tính tương thích của các giải pháp L2 dựa trên ZKP với Ethereum là một nhiệm vụ phức tạp. Điều này bởi vì Ethereum ban đầu không được thiết kế cho sự tương tác tối ưu với ZKP. Do đó, khi phát triển các hệ thống như vậy, phải tìm ra sự thoả hiệp giữa hiệu suất và tiềm năng mở rộng một mặt, và tính tương thích với Ethereum và EVM mặt khác. Bài viết của Vitalik Buterin "Các loại ZK-EVM khác nhau"thảo luận chi tiết về những khía cạnh này và nêu bật các mức độ tương thích khác nhau.

zkSync đã chọn một trong những con đường khó khăn nhất, mục tiêu là hiệu suất cao nhưng có hạn chế về tính tương thích với cả Ethereum và EVM. Để có bytecode tương thích với zkEVM, LLVMDự án được sử dụng với một bộ biên dịch và trình tối ưu hóa độc quyền. Trong trường hợp của Solidity và Yul, sau trình biên dịch tiêu chuẩn solc, mã nguồn trải qua một số giai đoạn khác trước khi trở thành bytecode zkEVM. Sơ đồ dưới đây minh họa tất cả các giai đoạn của quá trình này (được mô tả chi tiết hơn ở đây):

Quan trọng! Các tối ưu hóa trong zksolc được hỗ trợ.

Bytecode được biên soạn đặc biệt cho EVM không tương thích với zkEVM. Điều này có nghĩa là địa chỉ của các hợp đồng thông minh giống nhau trên Ethereum và zkSync sẽ khác nhau. Tuy nhiên, các nhà phát triển đang dự định giải quyết vấn đề này trong tương lai.

Một trong những ưu điểm đáng kể của phương pháp này là độc lập với các ngôn ngữ lập trình cụ thể. Trong tương lai, những nhà phát triển zkSync hứa hẹn sẽ thêm hỗ trợ cho các ngôn ngữ như Rust và C++. Quan trọng là sự trễ trong việc cập nhật và tích hợp các đổi mới giữa các trình biên dịch cấp cao (ví dụ, solc) và các trình biên dịch nền tảng (ví dụ, zksolc) là tối thiểu. Ban đầu, đã có ý tưởng tạo ra ngôn ngữ lập trình riêng, Zinc, nhưng hiện tại, nhóm đang tập trung vào việc hỗ trợ thêm các ngôn ngữ lập trình phổ biến hơn.

Vấn đề về sự tương thích của các trình biên dịch zk với các công cụ phát triển và gỡ lỗi hiện có cho hợp đồng thông minh Solidity và Vyper là đáng kể. Các nền tảng phát triển hiện tại như Remix, Hardhat và Foundry không hỗ trợ zk compiler mặc định, gây khó khăn trong việc làm việc với chúng. Tuy nhiên, giải phápđang được phát triển để hứa hẹn giúp quá trình di cư của các dự án và thích ứng với công nghệ mới trở nên dễ dàng hơn.

Bài viết của Vitalik Buterin nhấn mạnh rằng Ethereum có thể sẽ cố gắng cải thiện tính tương thích với ZKP ở cấp độ giao thức theo thời gian. Tương tự, các giải pháp L2 với ZKP sẽ điều chỉnh để cải thiện tính tương thích với Ethereum. Kết quả, trong tương lai, sự khác biệt giữa các hệ thống này có thể trở nên gần như không thể phát hiện, đảm bảo tích hợp và chuyển đổi mượt mà hơn cho các nhà phát triển.

Các tính năng của zkEVM

Quan trọng! Giao thức đang được phát triển mạnh mẽ; luôn tham khảo phiên bản mới nhất của tài liệu!

zkEVM khác biệt so với EVM và mặc dù nhà phát triển đã cố gắng 'giấu' những khác biệt này 'dưới nắp' nhưng vẫn có những tính năng quan trọng cần xem xét khi viết hợp đồng thông minh:

  1. Sự khác biệt so với EVM: Hành vi của mã viết bằng Solidity cho zkEVM có thể khác nhau, đặc biệt là ở các khía cạnh như block.timestamp và block.number. Việc kiểm tra định kỳ là rất quan trọng.tài liệucho các thay đổi.
  2. Hợp đồng Hệ thống: Trong zkSync, có các hợp đồng thông minh hệ thống cho các chức năng khác nhau, chẳng hạn như ContractDeployer để triển khai hợp đồng thông minh và MsgValueSimulator để làm việc với ETH. Thêm thông tin về các hợp đồng thông minh hệ thống có thể được tìm thấy trong tài liệu.
  3. Mẫu Proxy cho Triển khai: Được khuyến nghị sử dụng một mẫu proxy trong vài tháng đầu sau khi triển khai để ngăn ngừa các lỗi của trình biên dịch tiềm ẩn.
  4. Tính toán Gas: Mô hình tính toán gas trong zkEVM khác biệt so với Ethereum, bao gồm một tập hợp khác biệt của các mã opcode và giá gas phụ thuộc vào L1. Chi tiết có thể được tìm thấy ở đây.
  5. Kiểm thử cục bộ: Công cụ tiêu chuẩn như Nút Hardhat hoặc Anvil không phù hợp cho việc kiểm thử cục bộ của zkEVM. Thay vào đó, tùy chọn đặc biệtđược sử dụng, bao gồm chế độ kiểm tra chia tách.
  6. Xác minh chữ ký: Đề xuất sử dụng hỗ trợ tích hợp sẵn cho sự trừu tượng tài khoản thay vì ecrecover.
  7. Theo dõi Lỗi Liên quan đến Gas: Trong zkSync, không thể theo dõi các lỗi liên quan đến thiếu gas do đặc điểm thực thi trong hợp đồng thông minh hệ thống DefaultAccount.

Để hiểu sâu về cách làm việc với zkEVM, nên nghiên cứu tài liệu, bao gồm phần “Bảo mật và các phương pháp tốt nhất”.

Account Abstraction

Tính chuyên nghiệp trong zkSync mang lại nhiều lợi ích then chốt hơnERC-4337:

  1. Mức độ Triển khai: Trong zkSync, sự trừu tượng tài khoản được tích hợp vào cấp độ giao thức, khiến cho tất cả các tài khoản, bao gồm cả Tài khoản Sở hữu Bên ngoài (EOA), tương tự về chức năng với hợp đồng thông minh.
  2. Xử Lý Giao Dịch: Trong khi ERC-4337 sử dụng một mempool riêng cho các bundlers, tạo ra hai luồng giao dịch khác nhau, zkSync Era có một mempool duy nhất. Điều này có nghĩa là các giao dịch bắt nguồn từ EOAs và hợp đồng thông minh được xử lý trong một luồng duy nhất, đảm bảo tích hợp và xử lý mượt mà hơn.
  3. Hỗ trợ cho các người thanh toán: zkSync hỗ trợ các người thanh toán cho tất cả các loại tài khoản, cho phép cấu hình phí gas trong các token ERC20 cho bất kỳ tài khoản nào.

Cơ sở hạ tầng zkSync

Cơ sở hạ tầng của zkSync Era đang nhanh chóng tăng tốc và hiện đã bao gồm hàng chục giao thức: Cầu nối, DeFi, giao thức cơ sở hạ tầng, và nhiều hơn nữa. (Danh sách hiện tại có thể xem ở đây).

Một lợi ích khác là khả năng tương thích với ví Ethereum, như MetaMask hoặc TrustWallet.

Hyperchains

Giao thức zkSync bắt đầu phát triển với việc ra mắt zkSync Lite, chỉ nhằm vào việc chuyển đổi ether và token ERC-20, mà không có khả năng triển khai các giao thức đầy đủ. Giai đoạn này là một bước quan trọng trong quá trình phát triển nhưng chỉ đi trước sự đến của zkSync Era - một giải pháp L2 đầy đủ cho Ethereum, lý thuyết có thể được điều chỉnh cho các blockchain L1 khác. Tuy nhiên, tham vọng của zkSync không dừng lại ở đó, vì kế hoạch phát triển bao gồm việc ra mắt những hyperchain được gọi là.

Hyperchains, hoặc "tăng tỷ lệ fraktal," bao gồm các mạng ZKP, mỗi mạng hình thành các khối và chứng minh riêng. Những chứng minh này sau đó được thu thập lại và đăng trên mạng L1 chính. Mỗi trong những mạng này là một bản sao hoàn chỉnh của toàn bộ hệ thống và có thể được coi là "fractal" của nó.

Điểm độc đáo của siêu chuỗi là chúng có thể được tạo và triển khai một cách độc lập. Để duy trì tính nhất quán và tương thích, mỗi siêu chuỗi phải sử dụng một động cơ zkEVM chung, là một phần của ngăn xếp ZK (với zkSync Era hoạt động như siêu chuỗi đầu tiên). Điều này cho phép siêu chuỗi thừa hưởng tính bảo mật từ L1, đảm bảo tính đáng tin cậy của chúng và loại bỏ nhu cầu về các biện pháp độ tin cậy và bảo mật bổ sung.

Hyperchains đại diện cho một phương pháp đổi mới để mở rộng mạng lưới blockchain, giảm tải trên mạng chính và tăng tốc độ xử lý giao dịch. Các khía cạnh quan trọng của phương pháp này bao gồm:

  • Chuyển Giao Chứng Minh Giữa Các Hyperchains: Các Hyperchains sẽ chuyển các chứng minh khối cho nhau, tăng khoảng cách mà một giao dịch phải đi trước khi đến mạng L1 chính. Điều này giúp phân phối tải và tránh các vấn đề tắc nghẽn.

  • Sự minh bạch cho người dùng: Người dùng sẽ không nhận thấy sự khác biệt - giao dịch của họ được xử lý trong các hyperchains và có thể đi qua nhiều cấp độ trước khi đến mạng chính, tạo ra bất đồng bộ trong quá trình xử lý.
  • Ưu điểm so với các giải pháp hiện tại: Không giống như các giải pháp L2 hiện tại, chúng nhanh hơn nhưng vẫn bị hạn chế về khối lượng giao dịch và đôi khi phải hy sinh về mặt bảo mật, hyperchains hứa hẹn về khả năng mở rộng đáng kể hơn.
  • Sự linh hoạt trong việc tạo ra chuỗi khối tùy chỉnh: Hyperchains cho phép tạo ra các chuỗi khối và tài khoản tùy chỉnh với các mức độ bảo mật và quyền riêng tư khác nhau. Ngay cả khi có mức độ bảo mật thấp, trong trường hợp xấu nhất, chỉ có thể mong đợi tạm thời đóng băng quỹ.

Thêm về tất cả điều này có thể được tìm thấy ở đây.

Ưu điểm và nhược điểm của zkSync

Chuyên nghiệp

  1. Bảo mật: Bảo mật gần với mức độ L1 và tiềm năng cho sự phi tập trung trong tương lai.
  2. Tương thích EVM: Hỗ trợ cho các hợp đồng thông minh tương thích EVM.
  3. Web3 API và Ví: Web3 API tiêu chuẩn và hỗ trợ cho các ví Ethereum như MetaMask.
  4. Abstraction tài khoản: Hỗ trợ tự nhiên cho trừu tượng hóa tài khoản.
  5. Tốc độ Giao dịch: Xử lý giao dịch nhanh trên L2 với xác nhận tiếp theo trên L1.
  6. Phí Thấp: Phí gas giảm so với L1.
  7. Thanh toán Phí Gas ERC20: Khả năng thanh toán phí gas bằng các token ERC20.
  8. Phát triển Cơ sở hạ tầng: Phát triển cơ sở hạ tầng rất tích cực.
  9. Khả năng mở rộ: Cơ hội để cải thiện sức mở rộ đáng kể.

Chuyên nghiệp

  1. Khả năng tương thích EVM giới hạn: So với các đối thủ (ví dụ: Polygon zkEVM, Scroll), nó có khả năng tương thích EVM thấp hơn.
  2. Nguy cơ lỗi trong Hợp đồng Thông minh: Nguy cơ lỗi tăng cao, đòi hỏi việc kiểm tra và kiểm toán kỹ lưỡng.
  3. Yêu cầu Cụ thể về Ngăn xếp Phát triển: Sự cần thiết phải điều chỉnh ngăn xếp phát triển cho phù hợp với các đặc điểm của giao thức.
  4. Đang Kém Sát Công Nghệ Cốt Lõi: Trì hoãn trong việc áp dụng các đổi mới trong trình biên dịch và cập nhật thư viện.
  5. Tích hợp mạng: Hiện tại, mạng được quản lý bởi một số lượng hạn chế của các nhà điều hành.
  6. Cần Các Hợp Đồng Có Thể Nâng Cấp: Từ tất cả những điều trên, điều đó cho thấy rằng luôn cần có các hợp đồng có thể nâng cấp ngay từ đầu dự án, để có thể khắc phục các thiếu sót và lỗ hổng một cách kịp thời.

Kết luận

Giao thức zkSync trông rất hứa hẹn và có tiềm năng lớn, mặc dù hiện tại, việc triển khai trên blockchain này vẫn liên quan đến một số rủi ro cần được xem xét. Phát triển cho zkSync hiện đang khó hơn so với các blockchain tương thích nhiều hơn với EVM và ngăn xếp phát triển EVM. Tuy nhiên, có lẽ trong tương lai, sự khác biệt này sẽ trở nên không đáng kể hoặc hoàn toàn biến mất.

Thông báo:

  1. Bài viết này được tái bản từ [ MetaLamp].Chuyển tiêu đề gốc 'Làm thế nào ZKP và ZK-Rollups giúp giải quyết vấn đề về khả năng mở rộng: một bài đánh giá về blockchain zkSync'. Tất cả bản quyền thuộc về tác giả gốc [MetaLamp]. Nếu có bất kỳ phản đối nào về việc tái in này, vui lòng liên hệ với Gate Learnđội, và họ sẽ xử lý nhanh chóng.
  2. Miễn trừ trách nhiệm: Các quan điểm và ý kiến được thể hiện trong bài viết này chỉ thuộc về tác giả và không đại diện cho bất kỳ lời khuyên đầu tư nào.
  3. Các bản dịch của bài viết sang các ngôn ngữ khác được thực hiện bởi nhóm Gate Learn. Trừ khi được đề cập, việc sao chép, phân phối hoặc đạo văn bản dịch là không được phép.

Làm thế nào ZKP và ZK-Rollups giúp giải quyết vấn đề về tính mở rộng

Trung cấp4/8/2024, 3:54:44 AM
Trong bài viết này, chúng tôi sẽ giải thích công nghệ chứng minh không cần chứng minh là gì và nói về một blockchain phổ biến - zkSync: cách giao dịch hoạt động trong zkSync và sự khác biệt chính so với Máy ảo Ethereum (EVM).

*Chuyên nghiệp tiêu đề gốc ‘How ZKP and ZK-Rollups help solve the scalability problem: a review of the zkSync blockchain’

Trong bài viết này, chúng tôi sẽ giải thích công nghệ chứng minh không thông tin là gì và nói về một blockchain phổ biến - zkSync: cách giao dịch hoạt động trong zkSync và các khác biệt chính so với Máy Ảo Ethereum (EVM). Chúng tôi cũng sẽ thảo luận về ưu điểm và nhược điểm của blockchain này, mà chúng tôi tin rằng có thể có một tương lai hứa hẹn.

ZkSync là một blockchain cấp hai (Layer 2 - L2) cho Ethereum, được thiết kế để giải quyết vấn đề phí cao và khả năng xử lý hạn chế (Giao dịch mỗi giây - TPS) trên mạng Ethereum. Nền tảng này sử dụng công nghệ ZK-Rollup, sử dụng Zero-Knowledge Proofs (ZKP) để gom nhóm nhiều giao dịch khỏi mạng chính (L1). Chỉ có bằng chứng mật mã của tính chính xác của các giao dịch và dữ liệu nén của chúng được gửi đến L1, cải thiện đáng kể hiệu suất và giảm chi phí.

Chuyên nghiệp bởi Matter Labs, zkSync được công bố là một sản phẩm hoàn toàn mã nguồn mở (100% mã nguồn mở), được quản lý bởi cộng đồng. TheoCryptorankDự án đã thu hút sự chú ý, huy động vốn lên đến 458 triệu đô la. Trong dài hạn, Matter Labs nhắm tới việc tạo ra một hệ sinh thái toàn diện. Hiện tại, có hai chuỗi khối hoạt động: zkSync Lite, xử lý thanh toán trong ETH và ERC20 tokens, và zkSync Era, hỗ trợ hợp đồng thông minh đầy đủ. Kế hoạch tương lai bao gồm việc ra mắt hệ thống hyperchain (L3), đảm bảo an ninh cao. Mục tiêu của Matter Labs là mở rộng công nghệ lên một cấp độ sẽ thu hút những người dùng blockchain tỷ lệ tiếp theo.

Nền tảng

ZkSync đại diện cho một phương pháp mới trong việc giải quyết vấn đề về khả năng mở rộng được biết đến như là blockchain trilemmaDự án này, giống như các giải pháp Layer 2 (L2) khác, đang tìm kiếm sự cân bằng giữa bảo mật, khả năng mở rộng và phi tập trung trong các mạng blockchain.

  1. Khả năng mở rộng: Khả năng của một hệ thống xử lý một lượng giao dịch hoặc dữ liệu tăng lên một cách hiệu quả mà không mất đi hiệu suất và bảo mật.
  2. Bảo mật Blockchain: Đảm bảo tính đáng tin cậy và bảo vệ dữ liệu khỏi truy cập trái phép, sửa đổi hoặc can thiệp.
  3. Phân quyền: Sự vắng mặt của một cấu trúc kiểm soát tập trung. Trong một hệ thống phân quyền, việc quản lý và ra quyết định được phân phối dân chủ giữa tất cả các thành viên mạng.

Ethereum tập trung vào bảo mật và phi tập trung, nhấn mạnh vị thế của mình là một giao thức ngang hàng với các nút phân phối trên toàn thế giới. Để biết thông tin mới nhất về phân phối nút, vui lòng tham khảo NodeWatch.

Để duy trì sự phi tập trung trong mạng, mỗi nút phải xác minh tất cả các giao dịch. Điều này làm chậm mạng một cách tự nhiên. Hơn nữa, dưới tải mạng cao, giao dịch có thể trở nên khá đắt đỏ và yêu cầu thời gian đáng kể để xử lý.

Lớp 2

Nhiệm vụ chính để tăng TPS của mạng Ethereum mà không tăng tải cho các nút là việc giới thiệu Shardingkết hợp với việc chuyển đổi sang sự đồng thuận PoS (Proof of Stake). Điều này liên quan đến việc chia các thẩm định viên thành các nhóm con để xử lý các phân đoạn riêng biệt của mạng, từ đó giảm tổng tải và tăng khả năng xử lý. Tuy nhiên, cộng đồng đã tập trung vào các giải pháp Layer 2, xem xét sự phát triển nhanh chóng của chúng.

Ngoài ý tưởng triển khai Sharding trong Ethereum, đã xuất hiện các giải pháp về tính mở rộng khả năng mở rộng khác, như:

  • Thanh toán và Kênh Trạng Thái
  • Sidechains
  • Plasma
  • Optimistic Rollup

Cũng như các công nghệ dựa trên chứng minh không dùng tri thức (ZKP), bao gồm:

  • Validium
  • zkRollup
  • Ý chí

Thông tin chi tiết hơn có thể được tìm thấy ở đây.

Mặc dù Sharding vẫn đang trong quá trình phát triển, việc phân rã Dencun dự kiến sẽ diễn ra vào đầu năm 2024, sẽ triển khaiChuyên nghiệp-DankshardingBước trung gian này nhằm mục đích cải thiện các giải pháp Layer 2, làm cho việc lưu trữ dữ liệu trên L1 trở nên tiết kiệm hơn. Do đó, Proto-Danksharding hứa hẹn giảm chi phí giao dịch trên L2, như một bước tiến đến một giải pháp Sharding hoàn chỉnh.

Từ cái nhìn đầu tiên, các chuỗi khối L2 có vẻ tương tự, vì nhiệm vụ chính của họ là tăng số lượng giao dịch bên ngoài L1 trong khi ủy quyền vai trò bảo đảm an ninh cho L1. Các nhà phát triển của các chuỗi khối như vậy thường tuyên bố rằng các giải pháp của họ là nhanh nhất, đáng tin cậy nhất và đơn giản nhất. Trong thực tế, mỗi phương pháp mở rộng đều có những sắc thái riêng, và sự thỏa hiệp không thể tránh khỏi về tốc độ giao dịch, mức độ bảo mật hoặc mức độ phân quyền. Các giải pháp hoàn toàn tập trung cũng phổ biến. Tất cả những khía cạnh này đưa chúng ta trở lại với các vấn đề cơ bản của bài toán ba khía cạnh của chuỗi khối.

Trong bài viết này, các tiêu chí chính để đánh giá các giao thức được sử dụng trong các giải pháp Layer-2 được đề xuất. Chúng bao gồm:

  • an ninh,
  • hiệu suất và hiệu quả kinh tế,
  • dễ sử dụng,
  • các khía cạnh bổ sung như hỗ trợ hợp đồng thông minh, tương thích bytecode EVM và tùy chọn bảo mật.

Quan trọng! Bài viết được viết bởi Matter Labs và, theo ý kiến của tôi, một số điều được "kéo dài" để ủng hộ zkRollup (vì có một mâu thuẫn rõ ràng về lợi ích), nhưng điều đó không quan trọng lắm, điều chính là nhìn thấy sự khác biệt tồn tại giữa các giao thức Layer-2.

Dưới đây tôi sẽ cung cấp một bảng, và ở đây tôi sẽ mô tả ngắn gọn nội dung của nó.

Bảo mật

  • Giả thuyết về tính sống còn hoặc 'khả năng tồn tại' của Layer-2. Được cho là để duy trì tính năng của Layer-2, một số người tham gia sẽ luôn nằm trên chuỗi ở cấp độ Layer-1 để đáp ứng các trường hợp gian lận tiềm năng. Đây có thể là các nhà xác thực đặt cược một số tiền (được đánh dấu là 'Bonded' trong bảng) trên L1, hoặc các bên thứ ba đảm bảo an ninh của giao thức để nhận phần thưởng. Như đã thấy trong bảng, các giải pháp sử dụng ZKP (Validium và zkRollup) không cần thiết điều này.
  • Vấn đề thoát khỏi tập thể. Một vấn đề phát sinh nếu, vì lý do an ninh, cần phải khởi xướng việc rút tiền từ tất cả người dùng từ L2 sang L1. Như đã thấy trong bảng, vấn đề này chỉ tồn tại với giao thức Plasma, thông tin chi tiết có thể được đọc ở đây.
  • Quyền sở hữu. Câu hỏi về việc các bên xác minh L2 có thể tạm thời chặn hoặc tịch thu tiền của người dùng.
  • Rủi ro kinh tế. Bao gồm các cuộc tấn công đa dạng vào các nhà xác thực L2, bao gồm hối lộ các thợ đào L1, tạo ra các DAO "bóng tối", và các cuộc tấn công khác với động cơ kinh tế.
  • Mật mã. Sự khác biệt giữa các cơ sở mật mã tiêu chuẩn và mới. Các mật mã tiêu chuẩn được nghiên cứu nhiều hơn và có thể dễ bị tấn công, trong khi các mật mã mới (như SNARK và STARK) cung cấp độ tin cậy cao hơn nhưng yêu cầu kiến thức và kiểm toán bổ sung từ các nhà phát triển.

Hiệu suất và Kinh tế

Với hiệu suất, nó rất rõ ràng. TPS (Giao dịch mỗi giây) cho biết năng suất của mạng, và trong ngữ cảnh của việc mở rộng, đó là tham số quan trọng nhất.

Khía cạnh kinh tế:

  • Hiệu suất vốn: Khía cạnh này đặc biệt quan trọng đối với Các Kênh Thanh Toán. Chúng yêu cầu đóng băng số tiền bằng với khối lượng giao dịch trung bình trong kênh, khiến cho chúng hiệu suất vốn kém hơn trong việc đầu tư vốn.
  • Giao dịch L1 để tạo tài khoản L2. Cũng là một điểm hạn chế cho các kênh thanh toán, vì trong tất cả các giải pháp khác, một tài khoản được tạo ra trong L1 sẽ hoạt động trong L2 mặc định.
  • Chi phí giao dịch: Cùng với TPS, đây là một trong những yếu tố quan trọng nhất của khả năng mở rộng, xác định sự hấp dẫn kinh tế của giải pháp.

Dễ sử dụng

  • Thời gian rút tiền từ L2 sang L1: Khoảng thời gian này có thể dao động từ vài phút đến vài tuần. Optimistic Rollups và Plasma đặc biệt không thuận tiện trong trường hợp này, vì họ cần nhiều thời gian hơn để rút tiền.
  • Thời gian đến từ Độ tin cậy Chủ quan của Giao dịch: Xác định tốc độ mà một giao dịch trở thành không thể thay đổi trên L1 từ quan điểm của các quan sát viên bên ngoài. Ví dụ, trong Optimistic Rollups, việc đạt được sự hoàn thành trên L1 chỉ yêu cầu một xác nhận trên Ethereum, nhưng sự hoàn thành giao dịch đầy đủ mất khoảng một tuần.
  • Xác thực tính chủ quan cuối cùng với Mã khách hàng: Xác định xem thời gian đến tính chủ quan cuối cùng có thể được kiểm tra bởi khách hàng nhẹ (trình duyệt/ví di động) hay không. Tiếp tục với ví dụ về Optimistic Rollups, để xác nhận tính chất cuối cùng của giao dịch, người dùng phải tải xuống và xác minh toàn bộ trạng thái rollup trong tuần qua.
  • Xác nhận giao dịch tức thì. Giao thức có thể cung cấp xác nhận giao dịch tức thì với sự đảm bảo đầy đủ không? Hoặc chỉ đảm bảo điều này ở mức đồng thuận L2.
  • Sự Hoàn Thành Ngay Lập Tức: Có thể triển khai trên hầu hết các giao thức L2, có nghĩa là các giao dịch được xác nhận ngay lập tức trong giao diện người dùng. Chỉ kênh thanh toán (các kênh trạng thái) cung cấp đảm bảo bảo mật đầy đủ cho những xác nhận này, trong khi đối với các giao thức khác, các giao dịch này vẫn có thể bị đảo ngược trong một khoảng thời gian nhất định trước khi chúng được xác nhận trong L1.

Các Khía Cạnh Khác

  • Hợp đồng thông minh: Xem xét xem giải pháp L2 có hỗ trợ hợp đồng thông minh có khả năng lập trình đầy đủ, hay chỉ một phần hạn chế các chức năng thông qua các điều kiện.
  • Khả năng tương thích với Mã byte EVM: Đánh giá tính khả thi của việc chuyển hợp đồng thông minh mã byte Ethereum EVM hiện có sang L2 mà không cần thay đổi đáng kể.
  • Hỗ trợ quyền riêng tư tích hợp: Xem xét hiệu quả của việc bảo vệ quyền riêng tư trong các giải pháp L2, đặc biệt là trong bối cảnh sẵn có và hiệu quả về chi phí của giao dịch bảo mật.

Dưới đây là bảng so sánh các giải pháp chính dựa trên ZKP:

Để hiểu rõ hơn về Zero-Knowledge Proofs (ZKP), tôi khuyên bạn nên tham khảo bài viết nàytrong chúng tôiblockchain-wiki, tạo ra bởi các nhà phát triển dành cho các nhà phát triển với tình yêu với bằng chứng và sự đào sâu vào chi tiết.

Quy trình vòng đời giao dịch trong zkSync

Hoạt động của ZK-Rollups có thể được biểu diễn ở mức độ cao như sau:

  1. Xếp gói Rollup: Các giao dịch được đóng gói vào một rollup.
  2. Tạo ZKP: Bằng chứng không có kiến thức được hình thành.
  3. Xác minh trên Ethereum: Bằng chứng được gửi để xác minh đến một hợp đồng thông minh trên Ethereum.

Trong bối cảnh kiến trúc của zkSync, quá trình trông như thế này:

  1. Bộ Sưu Tập Các Khối Nội Bộ: các nhà xác minh zkSync thu thập các khối nội bộ từ giao dịch mỗi vài giây.
  2. Hình thành Gói Khối: Mỗi 30-90 giây, một gói khối được tạo ra từ các khối nội bộ.
  3. Cam kết trạng thái Blockchain: Người xác minh ghi lại trạng thái hiện tại của blockchain và truyền dữ liệu đã được sửa đổi đến L1 như dữ liệu gọi cho việc khôi phục có thể.
  4. Tính toán và Gửi SNARK: Các Validators tính toán SNARK (ZKP) cho gói và gửi nó để xác minh đến một hợp đồng thông minh Ethereum. Sau khi xác minh, trạng thái mạng mới trở nên cuối cùng.


Các nhà xác minh trong ZK-Rollups đóng vai trò quan trọng, đóng gói giao dịch vào các khối và tạo ra bằng chứng Zero-Knowledge cho chúng. Một đặc điểm của hệ thống là những nhà xác minh không thể vật lý đánh cắp tiền. Thiệt hại tiềm năng quan trọng nhất mà họ có thể gây ra là tạm thời ngừng mạng.

Lưu ý: Trong Kỷ nguyên zkSync, vai trò của người xác minh được thực hiện bởi các nhà điều hành.

Các nhà phát triển của zkSync nhấn mạnh các cam kết sau của kiến trúc của họ:

  1. Bảo mật Quỹ: Các nhà điều hành không bao giờ có thể gây hại cho trạng thái mạng hoặc đánh cắp quỹ, đó là một lợi thế so với Sidechains.
  2. Khả năng Khôi phục Quỹ: Người dùng luôn có thể rút quỹ của mình ngay cả khi các nhà điều hành ngừng hoạt động. Điều này là có thể nhờ vào sự sẵn có dữ liệu, không giống như hệ thống Plasma.
  3. Độc lập khỏi việc theo dõi: Nhờ ZKP, người dùng hoặc bên thứ ba đáng tin cậy không cần liên tục theo dõi các khối Rollup để ngăn chặn gian lận, đó là một lợi thế so với các hệ thống dựa trên chứng minh gian lận, như các kênh thanh toán hoặc Optimistic Rollups.

Các giao dịch trong Thời đại zkSync trải qua một số trạng thái chính, khác biệt so với các xác nhận Rollup thông thường trong L1:

  • Đang chờ xử lý: Giao dịch đã được nhà điều hành nhận nhưng chưa được xử lý.
  • Processed: Giao dịch đang được xử lý bởi người điều hành và sẵn sàng được bao gồm trong khối tiếp theo.
  • Cam kết: Dữ liệu giao dịch được công bố trên Ethereum, đảm bảo sẵn có dữ liệu, nhưng không xác nhận việc thực hiện chính xác của nó.
  • Thực hiện: Giai đoạn cuối cùng nơi bằng chứng tính hợp lệ (SNARK) cho giao dịch được xác minh bởi một hợp đồng thông minh Ethereum, làm cho giao dịch trở thành cuối cùng.

Ngoài số khối, các giao dịch trong zkSync cũng hiển thị số gói. Ban đầu, các tham số như block.number, block.timestamp và blockhash được lấy từ L1. Tuy nhiên, sau đó,một cập nhật, các giá trị này hiện sẽ được lấy từ L2. Mặc dù vậy, các nhà phát triển dự định cung cấp các phương pháp để truy cập dữ liệu từ L1.

Sự khác biệt giữa zkEVM và EVM

Tính tương thích của các giải pháp L2 dựa trên ZKP với Ethereum là một nhiệm vụ phức tạp. Điều này bởi vì Ethereum ban đầu không được thiết kế cho sự tương tác tối ưu với ZKP. Do đó, khi phát triển các hệ thống như vậy, phải tìm ra sự thoả hiệp giữa hiệu suất và tiềm năng mở rộng một mặt, và tính tương thích với Ethereum và EVM mặt khác. Bài viết của Vitalik Buterin "Các loại ZK-EVM khác nhau"thảo luận chi tiết về những khía cạnh này và nêu bật các mức độ tương thích khác nhau.

zkSync đã chọn một trong những con đường khó khăn nhất, mục tiêu là hiệu suất cao nhưng có hạn chế về tính tương thích với cả Ethereum và EVM. Để có bytecode tương thích với zkEVM, LLVMDự án được sử dụng với một bộ biên dịch và trình tối ưu hóa độc quyền. Trong trường hợp của Solidity và Yul, sau trình biên dịch tiêu chuẩn solc, mã nguồn trải qua một số giai đoạn khác trước khi trở thành bytecode zkEVM. Sơ đồ dưới đây minh họa tất cả các giai đoạn của quá trình này (được mô tả chi tiết hơn ở đây):

Quan trọng! Các tối ưu hóa trong zksolc được hỗ trợ.

Bytecode được biên soạn đặc biệt cho EVM không tương thích với zkEVM. Điều này có nghĩa là địa chỉ của các hợp đồng thông minh giống nhau trên Ethereum và zkSync sẽ khác nhau. Tuy nhiên, các nhà phát triển đang dự định giải quyết vấn đề này trong tương lai.

Một trong những ưu điểm đáng kể của phương pháp này là độc lập với các ngôn ngữ lập trình cụ thể. Trong tương lai, những nhà phát triển zkSync hứa hẹn sẽ thêm hỗ trợ cho các ngôn ngữ như Rust và C++. Quan trọng là sự trễ trong việc cập nhật và tích hợp các đổi mới giữa các trình biên dịch cấp cao (ví dụ, solc) và các trình biên dịch nền tảng (ví dụ, zksolc) là tối thiểu. Ban đầu, đã có ý tưởng tạo ra ngôn ngữ lập trình riêng, Zinc, nhưng hiện tại, nhóm đang tập trung vào việc hỗ trợ thêm các ngôn ngữ lập trình phổ biến hơn.

Vấn đề về sự tương thích của các trình biên dịch zk với các công cụ phát triển và gỡ lỗi hiện có cho hợp đồng thông minh Solidity và Vyper là đáng kể. Các nền tảng phát triển hiện tại như Remix, Hardhat và Foundry không hỗ trợ zk compiler mặc định, gây khó khăn trong việc làm việc với chúng. Tuy nhiên, giải phápđang được phát triển để hứa hẹn giúp quá trình di cư của các dự án và thích ứng với công nghệ mới trở nên dễ dàng hơn.

Bài viết của Vitalik Buterin nhấn mạnh rằng Ethereum có thể sẽ cố gắng cải thiện tính tương thích với ZKP ở cấp độ giao thức theo thời gian. Tương tự, các giải pháp L2 với ZKP sẽ điều chỉnh để cải thiện tính tương thích với Ethereum. Kết quả, trong tương lai, sự khác biệt giữa các hệ thống này có thể trở nên gần như không thể phát hiện, đảm bảo tích hợp và chuyển đổi mượt mà hơn cho các nhà phát triển.

Các tính năng của zkEVM

Quan trọng! Giao thức đang được phát triển mạnh mẽ; luôn tham khảo phiên bản mới nhất của tài liệu!

zkEVM khác biệt so với EVM và mặc dù nhà phát triển đã cố gắng 'giấu' những khác biệt này 'dưới nắp' nhưng vẫn có những tính năng quan trọng cần xem xét khi viết hợp đồng thông minh:

  1. Sự khác biệt so với EVM: Hành vi của mã viết bằng Solidity cho zkEVM có thể khác nhau, đặc biệt là ở các khía cạnh như block.timestamp và block.number. Việc kiểm tra định kỳ là rất quan trọng.tài liệucho các thay đổi.
  2. Hợp đồng Hệ thống: Trong zkSync, có các hợp đồng thông minh hệ thống cho các chức năng khác nhau, chẳng hạn như ContractDeployer để triển khai hợp đồng thông minh và MsgValueSimulator để làm việc với ETH. Thêm thông tin về các hợp đồng thông minh hệ thống có thể được tìm thấy trong tài liệu.
  3. Mẫu Proxy cho Triển khai: Được khuyến nghị sử dụng một mẫu proxy trong vài tháng đầu sau khi triển khai để ngăn ngừa các lỗi của trình biên dịch tiềm ẩn.
  4. Tính toán Gas: Mô hình tính toán gas trong zkEVM khác biệt so với Ethereum, bao gồm một tập hợp khác biệt của các mã opcode và giá gas phụ thuộc vào L1. Chi tiết có thể được tìm thấy ở đây.
  5. Kiểm thử cục bộ: Công cụ tiêu chuẩn như Nút Hardhat hoặc Anvil không phù hợp cho việc kiểm thử cục bộ của zkEVM. Thay vào đó, tùy chọn đặc biệtđược sử dụng, bao gồm chế độ kiểm tra chia tách.
  6. Xác minh chữ ký: Đề xuất sử dụng hỗ trợ tích hợp sẵn cho sự trừu tượng tài khoản thay vì ecrecover.
  7. Theo dõi Lỗi Liên quan đến Gas: Trong zkSync, không thể theo dõi các lỗi liên quan đến thiếu gas do đặc điểm thực thi trong hợp đồng thông minh hệ thống DefaultAccount.

Để hiểu sâu về cách làm việc với zkEVM, nên nghiên cứu tài liệu, bao gồm phần “Bảo mật và các phương pháp tốt nhất”.

Account Abstraction

Tính chuyên nghiệp trong zkSync mang lại nhiều lợi ích then chốt hơnERC-4337:

  1. Mức độ Triển khai: Trong zkSync, sự trừu tượng tài khoản được tích hợp vào cấp độ giao thức, khiến cho tất cả các tài khoản, bao gồm cả Tài khoản Sở hữu Bên ngoài (EOA), tương tự về chức năng với hợp đồng thông minh.
  2. Xử Lý Giao Dịch: Trong khi ERC-4337 sử dụng một mempool riêng cho các bundlers, tạo ra hai luồng giao dịch khác nhau, zkSync Era có một mempool duy nhất. Điều này có nghĩa là các giao dịch bắt nguồn từ EOAs và hợp đồng thông minh được xử lý trong một luồng duy nhất, đảm bảo tích hợp và xử lý mượt mà hơn.
  3. Hỗ trợ cho các người thanh toán: zkSync hỗ trợ các người thanh toán cho tất cả các loại tài khoản, cho phép cấu hình phí gas trong các token ERC20 cho bất kỳ tài khoản nào.

Cơ sở hạ tầng zkSync

Cơ sở hạ tầng của zkSync Era đang nhanh chóng tăng tốc và hiện đã bao gồm hàng chục giao thức: Cầu nối, DeFi, giao thức cơ sở hạ tầng, và nhiều hơn nữa. (Danh sách hiện tại có thể xem ở đây).

Một lợi ích khác là khả năng tương thích với ví Ethereum, như MetaMask hoặc TrustWallet.

Hyperchains

Giao thức zkSync bắt đầu phát triển với việc ra mắt zkSync Lite, chỉ nhằm vào việc chuyển đổi ether và token ERC-20, mà không có khả năng triển khai các giao thức đầy đủ. Giai đoạn này là một bước quan trọng trong quá trình phát triển nhưng chỉ đi trước sự đến của zkSync Era - một giải pháp L2 đầy đủ cho Ethereum, lý thuyết có thể được điều chỉnh cho các blockchain L1 khác. Tuy nhiên, tham vọng của zkSync không dừng lại ở đó, vì kế hoạch phát triển bao gồm việc ra mắt những hyperchain được gọi là.

Hyperchains, hoặc "tăng tỷ lệ fraktal," bao gồm các mạng ZKP, mỗi mạng hình thành các khối và chứng minh riêng. Những chứng minh này sau đó được thu thập lại và đăng trên mạng L1 chính. Mỗi trong những mạng này là một bản sao hoàn chỉnh của toàn bộ hệ thống và có thể được coi là "fractal" của nó.

Điểm độc đáo của siêu chuỗi là chúng có thể được tạo và triển khai một cách độc lập. Để duy trì tính nhất quán và tương thích, mỗi siêu chuỗi phải sử dụng một động cơ zkEVM chung, là một phần của ngăn xếp ZK (với zkSync Era hoạt động như siêu chuỗi đầu tiên). Điều này cho phép siêu chuỗi thừa hưởng tính bảo mật từ L1, đảm bảo tính đáng tin cậy của chúng và loại bỏ nhu cầu về các biện pháp độ tin cậy và bảo mật bổ sung.

Hyperchains đại diện cho một phương pháp đổi mới để mở rộng mạng lưới blockchain, giảm tải trên mạng chính và tăng tốc độ xử lý giao dịch. Các khía cạnh quan trọng của phương pháp này bao gồm:

  • Chuyển Giao Chứng Minh Giữa Các Hyperchains: Các Hyperchains sẽ chuyển các chứng minh khối cho nhau, tăng khoảng cách mà một giao dịch phải đi trước khi đến mạng L1 chính. Điều này giúp phân phối tải và tránh các vấn đề tắc nghẽn.

  • Sự minh bạch cho người dùng: Người dùng sẽ không nhận thấy sự khác biệt - giao dịch của họ được xử lý trong các hyperchains và có thể đi qua nhiều cấp độ trước khi đến mạng chính, tạo ra bất đồng bộ trong quá trình xử lý.
  • Ưu điểm so với các giải pháp hiện tại: Không giống như các giải pháp L2 hiện tại, chúng nhanh hơn nhưng vẫn bị hạn chế về khối lượng giao dịch và đôi khi phải hy sinh về mặt bảo mật, hyperchains hứa hẹn về khả năng mở rộng đáng kể hơn.
  • Sự linh hoạt trong việc tạo ra chuỗi khối tùy chỉnh: Hyperchains cho phép tạo ra các chuỗi khối và tài khoản tùy chỉnh với các mức độ bảo mật và quyền riêng tư khác nhau. Ngay cả khi có mức độ bảo mật thấp, trong trường hợp xấu nhất, chỉ có thể mong đợi tạm thời đóng băng quỹ.

Thêm về tất cả điều này có thể được tìm thấy ở đây.

Ưu điểm và nhược điểm của zkSync

Chuyên nghiệp

  1. Bảo mật: Bảo mật gần với mức độ L1 và tiềm năng cho sự phi tập trung trong tương lai.
  2. Tương thích EVM: Hỗ trợ cho các hợp đồng thông minh tương thích EVM.
  3. Web3 API và Ví: Web3 API tiêu chuẩn và hỗ trợ cho các ví Ethereum như MetaMask.
  4. Abstraction tài khoản: Hỗ trợ tự nhiên cho trừu tượng hóa tài khoản.
  5. Tốc độ Giao dịch: Xử lý giao dịch nhanh trên L2 với xác nhận tiếp theo trên L1.
  6. Phí Thấp: Phí gas giảm so với L1.
  7. Thanh toán Phí Gas ERC20: Khả năng thanh toán phí gas bằng các token ERC20.
  8. Phát triển Cơ sở hạ tầng: Phát triển cơ sở hạ tầng rất tích cực.
  9. Khả năng mở rộ: Cơ hội để cải thiện sức mở rộ đáng kể.

Chuyên nghiệp

  1. Khả năng tương thích EVM giới hạn: So với các đối thủ (ví dụ: Polygon zkEVM, Scroll), nó có khả năng tương thích EVM thấp hơn.
  2. Nguy cơ lỗi trong Hợp đồng Thông minh: Nguy cơ lỗi tăng cao, đòi hỏi việc kiểm tra và kiểm toán kỹ lưỡng.
  3. Yêu cầu Cụ thể về Ngăn xếp Phát triển: Sự cần thiết phải điều chỉnh ngăn xếp phát triển cho phù hợp với các đặc điểm của giao thức.
  4. Đang Kém Sát Công Nghệ Cốt Lõi: Trì hoãn trong việc áp dụng các đổi mới trong trình biên dịch và cập nhật thư viện.
  5. Tích hợp mạng: Hiện tại, mạng được quản lý bởi một số lượng hạn chế của các nhà điều hành.
  6. Cần Các Hợp Đồng Có Thể Nâng Cấp: Từ tất cả những điều trên, điều đó cho thấy rằng luôn cần có các hợp đồng có thể nâng cấp ngay từ đầu dự án, để có thể khắc phục các thiếu sót và lỗ hổng một cách kịp thời.

Kết luận

Giao thức zkSync trông rất hứa hẹn và có tiềm năng lớn, mặc dù hiện tại, việc triển khai trên blockchain này vẫn liên quan đến một số rủi ro cần được xem xét. Phát triển cho zkSync hiện đang khó hơn so với các blockchain tương thích nhiều hơn với EVM và ngăn xếp phát triển EVM. Tuy nhiên, có lẽ trong tương lai, sự khác biệt này sẽ trở nên không đáng kể hoặc hoàn toàn biến mất.

Thông báo:

  1. Bài viết này được tái bản từ [ MetaLamp].Chuyển tiêu đề gốc 'Làm thế nào ZKP và ZK-Rollups giúp giải quyết vấn đề về khả năng mở rộng: một bài đánh giá về blockchain zkSync'. Tất cả bản quyền thuộc về tác giả gốc [MetaLamp]. Nếu có bất kỳ phản đối nào về việc tái in này, vui lòng liên hệ với Gate Learnđội, và họ sẽ xử lý nhanh chóng.
  2. Miễn trừ trách nhiệm: Các quan điểm và ý kiến được thể hiện trong bài viết này chỉ thuộc về tác giả và không đại diện cho bất kỳ lời khuyên đầu tư nào.
  3. Các bản dịch của bài viết sang các ngôn ngữ khác được thực hiện bởi nhóm Gate Learn. Trừ khi được đề cập, việc sao chép, phân phối hoặc đạo văn bản dịch là không được phép.
เริ่มตอนนี้
สมัครและรับรางวัล
$100