zkEVM là gì? Phân biệt các nhóm zkEVM khác nhau

0
736
zkEVM chính là viết tắt của cụm từ “Zero-Knowledge Ethereum Virtual Machine”. Đây là một giao thức cho phép thực thi những hợp đồng thông minh trên cùng một public blockchain như Avalanche C Chain, Ethereum, Polygon, BNB Chain,…

zkEVM được coi là một công nghệ được phát triển một phần dựa trên Zero-Knowledge Proof (ZKP). Và chúng được Vitalik – founder của Ethereum chia thành bốn loại khác nhau tùy theo mức độ tương thích với EVM. Và zkEVM có rất nhiều ưu điểm cho hệ sinh thái zk và developer tuy nhiên thì vẫn còn vô cùng nhiều hạn chế bắt buộc cần phải được giải quyết.

Xem thêm:

Key Insights

  • zkEVM là một công nghệ hiện đại được phát triển dựa trên sự kết hợp giữa Ethereum Virtual Machine (EVM) và Zero-Knowledge Proof (ZKP).
  • zkEVM đã được chia thành 4 loại chính tùy thuộc vào mức độ tương thích với EVM lần lượt là: loại 4 (gần tương thích với EVM), loại 3 (tương thích với EVM), loại 2 (hoàn toàn tương thích với EVM) và loại 1 (hoàn toàn tương thích với Ethereum).
  • zkEVM có ưu điểm là được sử dụng đa dạng, có khả năng mở rộng, tăng cường bảo mật và có khả năng tương thích với EVM.
  • Bên cạnh đó EVM còn có nhược điểm là ảnh hưởng đến hiệu suất mạng lưới, độ phức tạp cao, tiêu tốn năng lượng, chưa có sự đồng bộ.

Tổng quan về zkEVM

Trước lúc tìm hiểu chi tiết về zkEVM, chúng ta hãy cùng nhau tìm hiểu chi tiết liên quan về khái niệm Zero Knowledge Proof (ZKP). Đây là một phần nền tảng của zkEVM.

Zero Knowledge Proof (ZKP) là gì?

Công nghệ ZK (zero-knowledge) Proof được coi là một loại công nghệ mã hóa được dùng nhằm để bảo vệ tuyệt đối tính riêng tư và đồng thời xác thực trên internet và các nền tảng blockchain. Thay vì chia sẻ thông tin một cách hoàn chỉnh, công nghệ ZKP cho phép những bên trao đổi thông tin mà không cần tiết lộ bất cứ một thông tin chi tiết nào của nhau.

Đọc thêm: Zero-knowledge Proof là gì?

Một thí dụ vô cùng đơn giản liên quan về: Giả sử A muốn xác minh với một tổ chức rằng cô ấy đủ 18 tuổi để đăng ký dịch vụ, tuy nhiên thì không muốn tiết lộ ngày sinh của mình.

A cũng có thể dùng hoạt động ZKP để có thể chứng minh rằng cô ấy đủ tuổi bằng cung cấp nhiều thông tin khác có ý nghĩa tương đương. Thí dụ:

  • A đã sở hữu doanh nghiệp đăng ký kinh doanh dưới tên mình (Chứng minh A đủ 18 tuổi)
  • A có bằng lái xe hơi B1 được cơ quan có thẩm quyền cấp (Chứng minh A đủ 18 tuổi)
  • A đã tốt nghiệp đại học (Chứng minh A khoảng 22 tuổi).

Ở trong thí dụ này, ZKP đã cho phép Alice xác minh tuổi của mình mà không cần phải tiết lộ ra ngày sinh của cô ấy, giúp cho bảo vệ quyền riêng tư của Alice nhưng mà vẫn giúp cho tổ chức bảo đảm A đủ tuổi để có thể đăng ký dịch vụ.

Phân loại ra theo công nghệ của ZKP, ở trong thị trường có 2 loại chính được mọi người biết tới nhiều nhất đó chính là zk-STARKs và zk-SNARKs.

  • zk-SNARKs (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge).
  • zk-STARKs (Zero-Knowledge Scalable Transparent Argument of Knowledge).

zkEVM là gì? Phân biệt các nhóm zkEVM khác nhau

Phân loại công nghệ ZKP.

zkEVM là gì?

zkEVM chính là viết tắt của cụm từ “Zero-Knowledge Ethereum Virtual Machine”. Đây là một giao thức cho phép thực thi những hợp đồng thông minh ở trên một public blockchain như Avalanche C Chain, Ethereum,Polygon, BNB Chain…

Vì sao zkEVM ra đời?

Tuy là ở trên thị trường đã có một vài ngôn ngữ lập trình ZK như Zinc (zkSync) hay Cairo (StarkWare) nhưng mà ngôn ngữ lập trình ZK vẫn còn vô cùng nhiều những hạn chế. Tính không đồng nhất giữa các ngôn ngữ lập trình này chính là một trong những rào cản lớn nhất làm cho những developer gặp khó khăn vô cùng trong việc lập trình trên những ngôn ngữ khác nhau.

Đối với một dự án mới hoặc với một developer phát triển trên thị trường, việc chỉ tập trung một ngôn ngữ Zinc hoặc Cairo sẽ làm cho họ bị giới hạn ở một hệ sinh thái so với sự đa dạng của các hệ sinh thái hoạt động trên ngôn ngữ EVM.

Vì thế cho nên zkEVM đã được ra đời nhằm để giải quyết vấn đề lần này. Sau đây chính là một vài lý do cho sự ra đời của zkEVM:

  • zkEVM đã được xây dựng để thích hợp với Ethereum. Vì vậy, việc triển khai các smart contract sử dụng hệ thống công nghệ ZK Proof trên Ethereum trở nên đơn giản hơn rất nhiều.
  • zkEVM mang đến sự cung cấp dành cho các nhà phát triển một lớp trừu tượng hóa nhằm mục đích triển khai các ứng dụng ZK một cách đơn giản hơn. Các nhà phát triển sẽ không bắt buộc phải quan tâm đến từng chi tiết của các thuật toán ZK nữa.
  • zkEVM còn có thể hỗ trợ rất nhiều phiên bản ZK Proof khác nhau, gồm có cả zk-STARKs và zk-SNARKs, nhằm hỗ trợ cho các nhà phát triển những sự lựa chọn, phương pháp thích hợp nhất cho từng ứng dụng của họ.

Cụ thể, zkEVM được tạo ra để hỗ trợ cho việc triển khai các smart contract dùng công nghệ ZK Proof trên Ethereum và những EVM Chain một cách đơn giản hơn rất nhiều và đồng thời cung cấp một cách tiếp cận mới cho những nhà phát triển.

Đọc thêm: Top các dự án zkEVM nổi bật

Cách hoạt động của zkEVM

zkEVM không khác bất cứ một thứ gì và đồng thời cũng phải tuân thủ theo cách hoạt động chung so với ZK-rollups. Tuy vậy nhưng mà phải hết sức chú ý rằng có rất nhiều những ý tưởng vây xung quanh cấu trúc lý tưởng của zkEVM và cả những hoạt động của nó. Một phiên bản tốt nhất, thuần khiết nhất của zkEVM sẽ hoàn toàn tương tự đối với Ethereum, không cho phép thay đổi bất cứ một thứ gì ngay cả khi chúng vẫn còn có thể làm cho việc tạo bằng chứng trở lên đơn giản hơn.

Zero-knowledge rollups lấy và cả hoàn thiện tất cả những giao dịch ngoài chuỗi, theo lô và đồng thời gửi một báo cáo dữ liệu mật mã nhằm chứng minh tính chính xác của những tương tác này đến Ethereum. Chứng minh rằng zero-knowledge không có khả năng tiết lộ chi tiết của tất cả các giao dịch mua bán trong lô, nhưng chỉ xác nhận rằng chúng cũng cấp đủ sự chính xác để kích hoạt một chuỗi thuật toán chuyển tiếp đến trạng thái Ethereum.

Tiếp đó, nó còn cung cấp các bằng chứng xác thực tính hợp lệ cho một smart contract (hợp đồng thông minh) được thiết lập trên chuỗi L1. Ngay sau khi xác nhận và nhận được, nó sẽ xác minh các đầu vào.

zkEVM là gì? Phân biệt các nhóm zkEVM khác nhau

Cách hoạt động của zkEVM. Nguồn: Chainlink.

Phân loại zkEVM theo mức độ tương thích với EVM

Ở trong ngay tại bài viết của Vitalik (tại đây) về cách phân loại zkEVM, ông đã nhắc tới 4 loại chính phụ thuộc vào khả năng tương thích và thích ứng của zkEVM. EVM compatibility (Cấp thấp nhất), điều đó chỉ mang lại phần trăm chính xác nhất định, đối với một số smart contract phức tạp, chúng bắt buộc nhà phát triển phải chỉnh sửa lại source code (copy, re-written some things & paste).

Ở một cấp độ cao hơn (EVM equivalence), chúng đem lại khả năng tương thích ở mức độ cao hơn, điều đó cho phép các nhà phát triển tận dụng việc di chuyển các smart contract trên Ethereum sang rollup protocol của họ một cách đơn giản hơn, ít sửa đổi và nhanh chóng (copy, paste & edit).

zkEVM là gì? Phân biệt các nhóm zkEVM khác nhau

Phân loại các nhóm zkEVM. Nguồn: Vitalik.

Loại 1: zkEVM hoàn toàn tương thích với Ethereum (Fully Ethereum equilvalent)

zkEVM loại 1 được đánh giá rằng sẽ 100% tương thích đối với Ethereum ở cấp độ đồng thuận cao nhất. Chúng hoàn toàn không có sự thay đổi nào về trạng thái hoặc mã băm, merkel proof hoặc bất kỳ thuật toán logic nào trong sự đồng thuận.

Ngoài ra, còn có một điểm đáng chúng cũng hoàn toàn tương thích với tất cả các ứng dụng cơ bản của nền tảng Ethereum nhưng lại yêu cầu một sự chứng về thời gian dài hơn, bởi vì không có bất cứ một sự cải tiến nào được thực hiện để làm cho việc tạo bằng chứng một cách nhanh chóng hơn.

Loại 2: zkEVM hoàn toàn tương thích với EVM (Fully EVM equilvalent)

Các zkEVM loại 2 sẽ cho thấp tiêu chuẩn xuống một tí, nhằm để có thể tương thích đối với EVM thay vì tương thích với Ethereum. Nhìn chúng có vẻ trông giống như EVM ở bên ngoài nhưng cũng sẽ có nhiều sửa đổi nho nhỏ ở phần bên trong để tạo điều kiện cho sự phát triển và nhằm tăng sự tốc độ tạo ra bằng chứng. Ở trong loại này, có một vài ứng dụng sẽ  không tương thích.

Tuy vậy nhưng mà zkEVM loại 2 vẫn sẽ có nhiều thời gian chuẩn bị chậm hơn. Do đấy, zkEVM loại 2.5 có thể cải thiện thời gian chuẩn bị bằng cách tăng thêm chi phí gas.

Dự án nổi bật: Polygon zkEVM, Scroll.

Loại 3: zkEVM tương thích với EVM

zkEVM loại 3 sẽ không 100% tương đương với EVM vì loại này được ưu tiên việc dễ dàng đặt ra một hệ thống thuật toán giống như EVM ở bên trong các bản tổng hợp ZK. Điều này cũng liên quan mật thiết đến những đổi thay cụ thể nhằm hỗ trợ để giúp việc xây dựng hệ thống đơn giản hơn và cải thiện tốc độ việc tạo bằng chứng. Tuy là zkEVM loại 3 có thể tương thích với tất cả các ứng dụng, nhưng phần nhiều ứng dụng có thể yêu cầu viết lại thuật toán để có thể hoạt động một cách trơn tru hơn.

Dự án nổi bật: Polygon zkEVM.

Loại 4: zkEVM gần tương thích với EVM

zkEVM loại 4 sẽ chỉ tương đương đối với những ngôn ngữ nào cao cấp, không phải vì bản thân EVM. Do đấy, bỏ qua tất cả quy trình cung cấp chứng cứ không có kiến thức nào cho từng giai đoạn một thực thi EVM sẽ hỗ trợ mạnh trong việc giảm chi phí và khuyến khích phân cấp hệ thống, cũng như hỗ trợ cải thiện tối đa việc giảm thiểu thời gian tạo bằng chứng.

Tuy vậy, việc này sẽ khiến cho zkEVM Loại 4 kém tương thích nhiều hơn so với một vài ứng dụng. Rất có khả năng địa chỉ hợp đồng sẽ thay đổi khi chuyển ứng dụng sang EVM và sẽ không có cách nào có thể chuyển qua một số cơ sở hạ tầng gỡ lỗi.

Dự án nổi bật: zkSync 2.0.

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

Ưu điểm của zkEVM

Khả năng mở rộng

zkEVM có khả năng cải thiện được khả năng mở rộng của các blockchain công khai như Ethereum bằng phương pháp giảm đi số lượng tài nguyên tính toán một cách cần thiết nhằm để có thể thực thi những hợp đồng thông minh. Sự việc lần này được thực hiện thông qua việc cho phép hệ thống tính toán được offload di chuyển sang các mạng riêng tư, nhằm hỗ trợ giảm tải trên blockchain một cách công khai.

Đa dạng

zkEVM cũng có thể được thực hiện ở trong rất nhiều ngành công nghiệp khác nhau, nơi thực thi tất cả những hợp đồng thông minh riêng tư là vô cùng cần thiết. Thí dụ, nhà cung cấp dịch vụ chăm sóc sức khỏe có thể dùng zkEVM để có thể bảo đảm tuyệt đối rằng dữ liệu, thông tin bệnh nhân được giữ một cách riêng tư trong khi vẫn cho phép các nhà nghiên cứu truy cập và cả phân tích nó.

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

Khả năng có thể tương thích với EVM là một ưu điểm lớn nhất của zkEVM giúp những developer phát triển mạnh trên các EVM blockchain có thể thực thi các DeFi protocol của họ sang nền tảng zk một cách đơn giản hơn rất nhiều. Đổi lại, sự việc này cũng có thể giúp các nền tảng zk thu hút được sự chú ý rất nhiều developer từ đấy trở đi tạo ra hệ sinh thái đa dạng, phong phú hơn.

Nhược điểm của zkEVM

Độ phức tạp

Việc triển khai zkEVM cũng có thể chính là một quá trình tương đối phức tạp, bắt buộc phải có đầy đủ kiến thức chuyên môn và tài nguyên đáng kể. Điều này bởi vì zkEVM gồm có tích hợp nhiều công nghệ khác nhau.

Giới hạn chức năng

Bởi vì zkEVM tập trung chú ý vào tính riêng tư, nó cũng có thể sẽ bị hạn chế hết mức trong khả năng thực thi những chức năng vô cùng phức tạp của những hợp đồng thông minh. Thí dụ, zkEVM cũng có thể không có khả năng thực hiện được tất cả những tính năng có liên quan trực tiếp tới những tài khoản thông thường như gửi tiền hoặc bỏ phiếu, và duy nhất chỉ chú ý vào việc xác minh tính hợp lệ của một tính toán riêng tư.

Hiệu suất

Việc dùng zkEVM cũng có thể gây ảnh hưởng vô cùng nghiêm trọng tới hiệu suất của mạng. Việc tính toán chứng minh không chứng tỏ ra được rằng có thể đòi hỏi bắt buộc phải nhiều tài nguyên tính toán và băng thông mạng, cũng có thể làm chậm đi trong suốt quá trình giải quyết những giao dịch. Việc này cũng có thể được cải thiện một cách hoàn chỉnh thông qua việc dùng những kỹ thuật tối ưu hóa và đồng thời phát triển phần mềm đạt được hiệu quả nhiều hơn, nhưng mà vẫn có thể là một vấn đề rất đáng để quan tâm chú ý.

Tiêu tốn năng lượng

Tương đương giống như hiệu suất, việc dùng zkEVM cũng có thể dẫn tới những vấn đề hết sức nghiêm trọng đó chính là tiêu tốn năng lượng và những chi phí đi kèm khi thực hiện các tính toán. Điều này cũng có thể là một vấn đề hết sức đặc biệt đối với những blockchain công khai, chỗ những hoạt động tính toán được bắt buộc phải trả phí bằng tiền ảo.

Lịch sử phát triển và cột mốc đáng chú ý của zkEVM

Sau đây là những cột mốc và lịch sử phát triển của zkEVM:

  • 12/2017: Zcash giới thiệu zk-SNARKs, là một kiểu dạng Zero-Knowledge Proof cho phép chứng minh một thông tin mà không cần phải tiết lộ bất cứ một nội dung của nó.
  • 2018: zk-STARK đã được ra đời và phát triển bởi Eli-Ben Sasson, giáo sư tại Viện Công nghệ Technion-Israel. Ở thời điểm hiện tại ông chính là CEO của StarkWare.
  • 12/2019: Matter Labs giới thiệu zkSync – Layer 2 cho Ethereum được xây dựng trên zkRollup và zk-SNARKs.
  • 9/2020: Matter Labs giới thiệu zkPorter, một giao thức mới dùng zk-SNARKs nhằm để có thể nâng cao được khả năng mở rộng của những ứng dụng blockchain.
  • 3/2021: Ernst & Young (EY) – công nghệ kiểm toán đứng đầu trên toàn cầu thiệu phiên bản thử nghiệm của Nightfall 3, là một công nghệ được tích hợp vào zkEVM và đồng thời giúp tăng cường bảo mật của những giao dịch trên mạng Ethereum.
  • 8/2021: Polygon chi ra 250 triệu USD thu mua lại Hermez nhằm để phát triển zkEVM, về sau đã được đổi tên thành Polygon zkEVM.
  • 5/2022: StarkWare – công ty mẹ của StarkNet, StarkEx, Cairo đã kêu gọi vốn 100 triệu đô với mức định giá 8 tỷ USD lúc bấy giờ.
  • 11/2022: Matter Labs – công ty mẹ của zkSync hiện đang phát triển zkEVM rất lớn mạnh và bên cạnh đó đã kêu gọi được vốn 200 triệu USD (Series C), nâng tổng số vốn gọi được lên 458 triệu USD.
  • 2/2023: CZ đã thông báo rằng Binance chắc chắn sẽ thay đổi cơ chế chứng minh của Proof of Reserve trở thành công nghệ zk-SNARKs.
  • 2/2023: Biện pháp zkEVM của Sroll bắt đầu thí nghiệm testnet trên Ethereum.
  • 3/2023: Scroll – dự án phát triển zkEVM gọi vốn 50 triệu USD với định giá 1.8 tỷ USD.
  • 3/2023: ConsenSys – công ty mẹ của Metamask dự tính rằng sẽ công bố ra mắt public testnet cho zkEVM vào tháng 3 sau khi thông báo ra mắt private testnet vào 12 năm 2022.

Tìm hiểu thêm về Cuộc chiến L2 giữa zkSync và StarkWare.

Các dự án zkEVM nổi bật

Trên thị trường ở thời điểm hiện tại đang có 6 dự án zkEVM vô cùng nổi bật đó là:

  • Polygon zkEVM là một trong các dự án mới nhất, thành công nhất của Polygon trong lĩnh vực zkEVM, đây là một dự án đã được chuyển đổi tên từ Polygon Hermez sau khi bỏ ra 250 triệu USD để thâu tóm.
  • zkSync Era là một sản phẩm của zkSync (Matter Labs) trong mảng zkEVM. Tuy zkSync Era không phải là sản phẩm đầu tiên nhưng mà là một sản phẩm được đẩy vô cùng mạnh để phát triển về sau.
  • StarkWare là công ty mẹ đẻ của rất nhiều sản phẩm liên quan đến zk như SatrkNet, StarkEx… Đồng thời đây cũng chính là bên tiên phong trong công nghệ zkSTARK và còn có cả ngôn ngữ riêng biệt đó là Cairo. Tuy vậy nhưng mà họ cũng tập trung phát triển zkEVM nhằm để cho giúp tiếng ngôn ngữ của họ trở nên dễ dàng dùng nhiều hơn.
  • Scroll là một dự án phi tập trung liên quan về mã nguồn mở được xây dựng ở trên nền tảng zkEVM, với mục đích cung cấp khả năng tính bảo mật trở nên tốt hơn cho những ứng dụng blockchain.
  • Taiko được coi là một dự án mã nguồn mở, phi tập trung 100% và hướng tới phát triển trở thành giải pháp tương thích hoàn toàn đối với Ethereum (Type 1).
  • Linea (ConsenSys zkEVM chính là tên trước đó) là một sản phẩm của ConsenSys (công ty mẹ của Metamask). Họ hiện đang hướng tới trở thành giải pháp tương thích 100% với EVM (Type 2).

Một số câu hỏi phổ biến về zkEVM

Mối liên hệ giữa zkEVM và zk-SNARKs, zk-STARKs, zk-SHARKs và PLONK là gì?

zkEVM được xây dựng lên nhằm để hỗ trợ việc triển khai những ứng dụng ở trên nền tảng Ethereum dùng những công nghệ chứng minh không cần phải tiết lộ bất cứ một thứ gì (zero-knowledge proof) như zk-STARKs, PLONK, zk-SNARKs và zk-SHARKs.

Tóm lại, zkEVM dùng những kiến trúc công nghệ này nhằm để có thể cung cấp đầy đủ tính năng bảo mật và ẩn danh trong những ứng dụng và giao dịch được xây dựng ở trên nền tảng Ethereum. Thí dụ, zk-SNARKs được dùng nhằm để ẩn danh tất cả những thông tin nhạy cảm ở trong một giao dịch Ethereum mà không cần phải tiết lộ một cách chi tiết liên quan về những thông tin nhạy cảm đấy, giúp tăng tính bảo mật và riêng tư của người sử dụng nền tảng.

EVM compatibility vs EVM equivalence: Cái nào tốt hơn?

Nói về khả năng tương thích, EVM equivalence hoàn toàn có thể vượt trội nhiều hơn tuy nhiên thì độ khó thực hiện của nó cực kỳ cao. Hiện tại ở trên thị trường không có một năng giảm zkEVM (EVM equivalence) nào hoạt động trên mainnet.

Thứ 2, những zkEVM protocol tất cả đều nhìn chúng việc triển khai EVM equivalence trong tương lai. Sự khác biệt nằm ở cách tiếp cận:

  • Xây dựng zkEVM (EVM equivalence) ngay từ đầu (tốn nhiều công sức và thời gian hơn):  Consensus zkEVM, Polygon zkEVM, Scroll…
  • Lại gần tiếp cận từ EVM compatibility sau đấy dần dần xây dựng lên EVM equivalence (sẽ tiết kiệm được rất nhiều thời gian): zkSync 2.0.

zkEVM là gì? Phân biệt các nhóm zkEVM khác nhau

Quy trình chuyển hoá ngôn ngữ lập trình zkEVM.

Tổng kết

zkEVM chính là một công nghệ mới trong việc tích hợp zero-knowledge proofs vào hệ thống blockchain. zkEVM có tiềm năng giảm chi phí giao dịch và giúp tăng mạnh tốc độ trên Ethereum,bên cạnh đó còn tăng tính bảo mật và riêng tư cho người sử dụng. Tuy vậy nhưng mà hiện tại việc triển khai zkEVM vẫn còn đang ở trong thời gian phát triển và đòi hỏi rất nhiều sự tương tác của cộng đồng và các nhà phát triển nhằm để cho  nó vào dùng một cách nhiều hơn.