/ BLOG

Tìm hiểu các giải pháp mở rộng quy mô Ethereum

Khái niệm về Blockchain Layer Kể từ sau sự ra đời của Bitcoin năm 2009 và Ethereum năm 2015 chúng ta vẫn chỉ có khái niệm về lớp blockchain hạ tầng và lớp

arrow white

Back

Dec 28, 2023

Written by

Logo

Thuynguyen

facebook instagram instagram

Khái niệm về Blockchain Layer

Kể từ sau sự ra đời của Bitcoin năm 2009 và Ethereum năm 2015 chúng ta vẫn chỉ có khái niệm về lớp blockchain hạ tầng và lớp các dApp được xây dựng trên nó. Sau này, cùng với sự bùng nổ của các mạng lưới blockchain layer 1 thì xuất hiện nhu cầu giao tiếp giữa các blockchain và nhu cầu mở rộng cho mỗi blockchain đó, khái niệm Layer 0, Layer 1 và Layer 2 mới được sử dụng rộng rãi.

Hiện nay mạng lưới blockchain, cụ thể là Ethereum đang được phân hóa thành 3 Layer chính.

  • Layer 0: Là mạng lưới blockchain giúp kết nối và giao tiếp giữa nhiều blockchain layer 1.
  • Layer 1: Là các mạng lưới blockchain độc lập có cơ sở hạ tầng và cơ chế đồng thuận riêng vận hành theo quy tắc riêng. Ví dụ Ethereum, BNBChain, Fantom,…
  • Layer 2: Là mạng lưới các blockchain được xây dựng trên nền tảng của các blockchain layer 1 và tương thích với layer 1 nhằm mở rộng hoặc phục vụ mục đích riêng. Ví dụ Optimism, Arbitrum, zkSync.
  • Layer 3: Là các blockchain được xây dựng tiếp tục phía trên của các Layer 2.

Lớp dApp có thể được xây dựng trên bất cứ lớp nào để phục vụ từng nhu cầu cụ thể.

Tại sao cần có Layer 2?

Một trong những vấn đề khó khăn nhất đối với các nhà phát triển blockchain là bộ ba bất khả thi:

  • Phi tập trung
  • Bảo mật
  • Mở rộng

Nếu muốn mạng lưới có một hoặc hai khả năng vượt trội thì bắt buộc phải hy sinh cái còn lại. Ví dụ, nếu muốn khả năng mở rộng vượt trội và bảo mật cao thì phải hy sinh đi sự phi tập trung như Solana. Hoặc nếu muốn một mạng lưới phi tập trung mà vẫn bảo mật thì phải hy sinh khả năng mở rộng, đây chính là lựa chọn của Ethereum. Hướng lựa chọn này khiến cho TPS của nó chỉ rơi vào khoảng 20 giao dịch/giây. Nếu so sánh với Solana là 65.000 TPS hoặc hệ thống thanh toán quốc tế Visa là 24.000 TPS thì khoảng cách là rất xa.

Mở rộng mạng lưới có nghĩa là nó có thể đáp ứng được nhu cầu sử dụng của gấp nhiều lần mà vẫn đảm bảo được sự phi tập trung, tốc độ và sự an toàn cho giao dịch.

Khi lượng người dùng tăng lên, đồng nghĩa với việc số lượng giao dịch tăng, lên kéo theo băng thông mạng lưới và khối lượng data cũng tăng lên theo cấp số nhân.  Sự chênh lệch từ số lượng giao dịch và khả năng xử lý gây ra tắc nghẽn mạng lưới. Chi phí giao dịch tăng cao cũng là hệ quả của sự cồng kềnh này tạo nên rào cản cho vấn đề mở rộng số lượng người dùng.

Nếu muốn tiến tới mass adoption, khả năng mở rộng để đáp ứng nhu cầu sử dụng của hàng triệu, tỷ người dùng là điều không thể tránh khỏi. Vậy làm cách nào để Ethereum đáp ứng được yêu cầu mở rộng này mà vẫn giữ được tính chất phi tập trung và bảo mật vốn có. Các giải pháp mở rộng bắt đầu xuất hiện từ đây.

Phân loại các giải pháp mở rộng blockchain

Dựa theo mức độ can thiệp vào mạng lưới gốc (Ethereum) mà ta chia các giải pháp mở rộng thành 2 loại chính là giải pháp mở rộng on-chain và off-chain.

Giải pháp mở rộng On-chain

Vấn đề mở rộng mạng lưới đã được các lập trình viên Ethereum nhận biết và đưa vào lộ trình phát triển ngay từ đầu.

Trong bản cập nhật roadmap được đăng tải hồi tháng 5 năm 2022 bởi Vitalik Buterin đã xác định rõ tầm nhìn đưa Ethereum tiến tới mass adoption thông qua 5 giai đoạn cập nhật lớn:

  • The Merge: Chuyển đổi cơ chế đồng thuận từ Proof-of-work sang Proof-of-stake.
  • The Surge: Triển khai kiến trúc Sharding, một giải pháp mở rộng quy mô giúp giảm chi phí giao dịch trên Ethereum. Hứa hẹn đẩy tốc độ giao dịch trên các giải pháp mở rộng lên 100.000 TPS.
  • The Scourge: Các cập nhật hướng tới việc đảm bảo tính trung lập, công bằng, tin cậy của các giao dịch, đồng thời cũng giảm thiểu các rủi ro từ MEV.
  • The Verge: Các cập nhật giúp việc xác thực của các Nodes trở nên nhanh chóng và đơn giản hơn thông qua bằng chứng SNARK. Vitalik đề cập như sau: “Việc xác minh các khối phải cực kỳ dễ dàng – tải xuống N byte dữ liệu, thực hiện một vài phép tính cơ bản, xác minh SNARK và … xong”.
  • The Purge: Mục tiêu là làm đơn giản hoá giao thức bằng cách giới hạn dữ liệu lịch sử. Các nodes sẽ không cần lưu trữ dữ liệu lịch sử cũ hơn 1 năm, sẽ chỉ cần nếu được yêu cầu. Từ đó cho phép tăng tốc độ đồng bộ hoá và xác thực giao dịch, giảm rào cản gia nhập.
  • The Splurge: Sửa chữa những thứ cần phải sửa chữa tiếp theo.

Can thiệp vào hạ tầng mạng lưới là một việc làm rất khó khăn, vấn đề không chỉ đến từ kỹ thuật mà còn là sự đồng thuận nâng cấp của toàn bộ mạng lưới. Mỗi cập nhật tác động không chỉ đến cách thức hoạt động mà còn cả lợi ích của từng nhóm thành viên trong mạng lưới. Công việc này đòi hỏi thời gian, sự nỗ lực của toàn bộ cộng đồng Ethereum.

Giải pháp mở rộng Off-chain

Nếu như giải pháp mở rộng on-chain mang tới hiệu quả lâu dài và ổn định nhưng tốn nhiều thời gian thì các giải pháp mở rộng off-chain lại cho ra kết quả nhanh chóng để đáp ứng nhu cầu phát triển chung từ thị trường.

Off-chain scaling đề cập tới các giải pháp mở rộng nhưng không tác động vào kiến trúc của mạng lưới gốc. Và hướng đi là xây dựng một hệ thống tương thích với mạng gốc sau đó giải quyết một phần công việc bên ngoài, cuối cùng cập nhật kết quả lại mạng gốc, những giải pháp như vậy gọi là giải pháp Layer 2. Đến hiện tại, có 5 giải pháp Layer 2 được đưa ra.

Rollup

Đây có lẽ là cái tên quen thuộc nhất mà chúng ta được được nghe suốt hơn một năm nay. Cơ chế hoạt động chung là các Rollup thực hiện nhiều giao dịch bên ngoài, sau đó tổng hợp kết quả thành từng gói và gửi về chuỗi gốc để xác thực.

Có 2 loại Rollup chính với cách thức bảo mật khác nhau:

  • Optimistic Rollup: Tin tưởng rằng tất cả các giao dịch là hợp lệ cho đến khi nó được chứng minh là sai thông qua một bằng chứng gian lận (fraud proof). Nếu fraud proof được chứng minh là đúng thì giao dịch bị đảo ngược.
  • Zero-Knowledge Rollup: Các giao dịch phải được chứng minh hợp lệ trước khi xác thực, công việc này được thực hiện thông qua một bằng chứng hợp lệ (validity proof). Khi validity proof được chứng minh là đúng thì giao dịch được xác nhận và không thể đảo ngược.

Bằng cơ chế hoạt động riêng của mỗi loại, các giải pháp Rollup có thể đạt tốc độ gấp hàng trăm lần so với Ethereum trong khi vẫn tận dụng được tính bảo mật từ chuỗi gốc.

Optimistic Rollup

Như đã đề cập, cơ chế hoạt động của Optimistic Rollup là tổng hợp nhiều giao dịch lại thành một lô (batch) sau đó gửi xuống layer 1 để tiếp tục xử lý.

Sở dĩ tên gọi “Optimistic – lạc quan” xuất phát từ cơ chế hoạt động của nó. Optimistic Rollup mặc định tất cả giao dịch diễn ra ở ngoài chuỗi là hợp lệ nên nó sẽ chỉ gửi các thông tin giao dịch xuống chuỗi gốc dưới dạng calldata mà không kèm bằng chứng. Đây chính là điểm khác biệt đặc thù giữa Optimistic và ZK Rollup.

Để bảo vệ mạng lưới khỏi giao dịch gian lận, Optimistic có một giai đoạn gọi là thời gian thử thách – challenge time (thường kéo dài 7 ngày). Trong thời gian này, bất cứ ai cũng có thể phản đối kết quả thông qua một bằng chứng gian lận – Fraud Proof.

  • Nếu fraud proof được chứng minh là đúng, giao thức sẽ thực hiện lại giao dịch và cập nhật trạng thái mới tương ứng. Sequencer thực hiện tính toán sai sẽ bị chịu một hình phạt cho sai lầm của mình.
  • Nếu kết thúc thời gian thử thách mà lô giao dịch không bị thử thách thì nó được coi là hợp lệ và trạng thái mới được chấp nhận trên chuỗi gốc.

Tóm tắt lại, quy trình xử lý giao dịch của Optimistic Rollup như sau:

  • Người dùng gửi các giao dịch trên Layer 2 Optimistic Rollup.
  • Các nhà vận hành mạng lưới thu thập và xử lý giao dịch nội bộ trên Layer 2.
  • Dữ liệu giao dịch được đóng gói, nén rồi gửi xuống Layer 1 chờ xác minh.
  • Chờ đợi thời gian thách thức:
  • Nếu có thách thức thì giao thức sẽ kiểm tra để xác định tính hợp lệ của lô giao dịch. Nếu chứng minh được có gian lận, giao thức sẽ thực hiện lại các giao dịch và cập nhật trạng thái mới.
  • Nếu kết thúc thời gian mà không có thách thức, lô giao dịch sẽ được chấp nhận trên Layer 1 và không thể bị đảo ngược.

Các dự án Optimistic Rollup nổi bật

  • Optimism
  • Arbitrum
  • Base
  • Mantle Network
  • Debank Chain
  • opBNB

Zero-Knowledge Rollup

Cũng là giải pháp mở rộng thuộc nhánh Rollup, tức tổng hợp nhiều giao dịch trên Layer 2 để xử lý rồi gửi kết quả xuống Layer 1 xác thực. Sự khác biệt đến từ cơ chế hoạt động của nó.

ZK Rollup sử dụng Validity Proof tạo bởi công nghệ Zero-Knowledge để xác thực các gói giao dịch mà không cần tiết lộ nhiều thông tin, từ đó tăng cường tính bảo mật và riêng tư cho các giao dịch trên mạng lưới.

Quy trình xử lý giao dịch của ZK Rollup

  • Người dùng gửi các giao dịch trên mạng Layer 2 ZK-rollup.
  • Các nhà vận hành mạng lưới thu thập và xử lý giao dịch nội bộ trên Layer 2.
  • Tạo bằng chứng hợp lệ – validity proof cho lô giao dịch.
  • Gửi bằng chứng kèm một số ít thông tin tóm tắt xuống layer 1 để xác thực.
  • Verifier Contract trên Layer 1 sẽ tiến hành xác minh validity proof.
  • Nếu validity proof được chấp nhận, lô giao dịch được thông qua, trạng thái mới của mạng lưới ZK-rollup được cập nhật và không thể thay đổi.
  • Nếu validity proof không được chấp nhận, các nhà vận hành mạng lưới phải tính toán và gửi lại dữ liệu mới.

Điểm độc đáo tạo nên thương hiệu của ZK-Rollup là sử dụng bằng chứng không kiến thức – Zero-Knowledge để chứng minh tính đúng đắn của lô giao dịch trong khi không cần tiết lộ chi tiết từng giao dịch trong lô.

Các dự án ZK-Rollup nổi bật: zkSync, Linea, StarkNet

Validium

Validium là một giải pháp mở rộng mới thuộc nhánh Rollup và có nhiều nét tương đồng với ZK-Rollup hay còn được biết đến với cái tên “ZK Rollup but with off-chain data”, điểm khác biệt của Validium là nó chấp nhận hy sinh nhiều hơn nữa tính bảo mật để tăng khả năng mở rộng.

Cũng sử dụng validity proof (bằng chứng hợp lệ) được tạo bởi kỹ thuật Zero-Knowledge gửi về Layer 1 để xác thực các gói giao dịch, nhưng Validium không gửi kèm dữ liệu giao dịch vào calldata như ZK-Rollup mà chỉ lưu trữ off-chain.

Điều này đã làm giảm thiếu kích thước và chi phí phải xử lý ở chuỗi gốc, từ đó tăng tốc độ giao dịch. TPS của Validium có thể lên tới 9.000, cao hơn gấp 4 lần khi so sánh với ZK-Rollup.

Mặt trái của nó tương là data unavailability, lưu trữ giao dịch off-chain gây ra những rủi ro về sự khả dụng dữ liệu khi các nhà vận hành cố tình che giấu thông tin, lúc đó người dùng sẽ gặp khó khăn trong việc xác thực giao dịch hoặc tệ hơn là không rút được tiền. Sử dụng Validium yêu cầu đặt nhiều niềm tin vào những nhà vận hành mạng lưới.

Quy trình xử lý giao dịch của Validium

  • Người dùng gửi các giao dịch trên mạng Layer 2 ZK-rollup
  • Các nhà vận hành mạng lưới thu thập và xử lý giao dịch nội bộ trên Layer 2
  • Tạo bằng chứng hợp lệ – validity proof cho lô giao dịch.
  • Gửi bằng chứng xuống Layer 1 để xác thực.
  • Verifier Contract trên Layer 1 sẽ tiến hành xác minh validity proof.
  • Nếu validity proof được chấp nhận, lô giao dịch được thông qua, trạng thái mới của mạng lưới ZK-rollup được cập nhật và không thể thay đổi.
  • Nếu validity proof không được chấp nhận, các nhà vận hành mạng lưới phải tính toán và gửi lại dữ liệu mới.

Giải pháp kết hợp Volition

Nhằm tăng cường sự linh hoạt cho người dùng, đội ngũ phát triển đã đưa giải pháp kết hợp giữa Validium và ZK-Rollup với tên Volition.

Nó cho phép người dùng lựa chọn chuyển đổi qua lại giữa hai giải pháp. Với Volition, người dùng có thể sử dụng data availability off-chain của Validium cho các giao dịch cụ thể nhằm tối ưu tốc độ giao dịch. Khi cần thiết họ vẫn có quyền chuyển đổi sang sử dụng on-chain data như ZK-Rollup. Điều này mang lại cho người dùng tự do lựa chọn các sự đánh đổi theo đặc điểm riêng của họ.

Các dự án Validium nổi bật: StarkEx, Immutable X, zkPorter

Ở hiện tại, cả Optimistic Rollup và ZK-Rollup đều đang có chỗ đứng riêng cho mình, nhưng có vẻ cha đẻ của Ethereum là Vitalik ủng hộ ZK-Rollup một cách ra mặt hơn. Bản cập nhật The Verge trong roadmap của Ethereum cũng có đề cập đến việc sử dụng SNARKs (một loại bằng chứng Zero-Knowledge) để giúp các Node xác thực giao dịch mạng lưới gốc.

Plasma

Plasma lần đầu tiên được Vitalik Buterin và Joseph Poon giới thiệu vào tháng 8 năm 2017. Plasma được thiết kế để giải quyết vấn đề mở rộng của Ethereum bằng cách tạo ra hệ thống các chuỗi con được kết nối với chuỗi gốc để xử lý giao dịch.

Các chuỗi con này được quản lý bởi một smart contract trên chuỗi gốc và kết nối trạng thái với chuỗi gốc thông qua cây Merkle, chúng hoạt động như một bản sao nhỏ của mạng gốc Ethereum.

Sự liên kết của Plasma với chuỗi gốc nằm ở việc các thông tin trên chuỗi con được mã hoá theo Merkle tree và gửi xuống lưu trữ công khai ở chuỗi gốc. Điều này giúp nó kế thừa được một phần sự bảo mật từ chuỗi gốc để bảo đảm tính toàn vẹn dữ liệu và sự sẵn sàng dữ liệu để xử lý tranh chấp khi phát sinh. Cũng giống như Optimistic Rollup, Plasma sử dụng fraud proof – bằng chứng gian lận để giải quyết tranh chấp.

Nhưng có một lỗ hổng rất lớn của giải pháp Plasma đó là data unavailability. Hệ thống không gửi toàn bộ thông tin giao dịch xuống chuỗi gốc để lưu trữ mà chỉ gửi trạng thái được mã hoá, điều này gây khó khăn cho trong việc tạo ra fraud proof nếu các Plasma Operator (các nhà vận hành mạng lưới Plasma) không cung cấp đầy đủ thông tin. Tham gia plasma chain yêu cầu người dùng đặt nhiều niềm tin vào các operator. Có thể thấy Plasma đã chấp nhận hy sinh bảo mật để đổi lại sự mở rộng mạnh mẽ.

Các dự án Plasma nổi bật: OMG Network, Polygon, Gluon

Ở thời điểm hiện tại Plasma đang được xem là khá cũ kỹ và đuối hơi trong cuộc đua mở rộng trên Ethereum.

State Channel

State Channel được biết đến quen thuộc hơn trên mạng lưới Bitcoin với dự án Lightning Network mà hiện tại El Salvador đang sử dụng cho hệ thống thanh toán của họ.

Giải pháp State Channel cho phép các bên tham gia mở mở kênh và thực hiện nhiều giao dịch ngoài chuỗi, khi các giao dịch được hoàn tất và các bên tham gia đồng ý đóng kênh, kết quả cuối cùng sẽ được đẩy xuống chuỗi gốc để lưu trữ.

Có hai loại kênh chính:

  • Payment Channel: Phục vụ cho mục đích thanh toán bù trừ số dư của những người tham gia kênh.
  • State Channel: Phiên bản mở rộng của Payment Channel, ngoài thực hiện bù trừ số dư, State Channel còn cho phép xử lý các logic phức tạp hơn ngoài số dư như Payment Channel.

Phương pháp này có ưu điểm là tốc độ nhanh, chi phí rẻ nhưng lại bị hạn chế ở khả năng mở rộng vì sẽ gặp khó khăn khi số lượng thành viên trong kênh lớn.

Quy trình xử lý giao dịch của State Channel

  • Mở kênh: Hai (hoặc nhiều bên) tham gia gửi tiền vào một smart contract để mở kênh.
  • Sử dụng kênh: Các bên tham gia kênh thực hiện các giao dịch trao đổi với nhau (off-chain)
  • Đóng kênh: Khi các bên đạt được sự thỏa thuận cuối cùng, họ có thể đồng thuận gửi kết quả lên chuỗi (on-chain) bằng cách ký xác nhận. Giao thức sẽ kiểm tra tính hợp lệ của trạng thái, đảm bảo rằng nó đã được ký bởi tất cả các bên. Đến cuối cùng, giao thức sẽ phân phối tài sản bị khóa ban đầu theo kết quả đã thống nhất giữa các thành viên trong kênh.
  • Xử lý tranh chấp: Nếu một bên không đồng ý với trạng thái cuối cùng của kênh hoặc nếu có tranh chấp khác, họ có thể gửi một yêu cầu trên chuỗi để chấp nhận trạng thái mà họ cho là chính xác. Giao thức gốc sẽ xem xét yêu cầu này và thực hiện một quá trình giải quyết tranh chấp.

Các dự án nổi bật: Lightning Network, Connext

Sidechain

Xét về bản chất sidechain không được xem như một Layer-2 hay giải pháp mở rộng thực thụ. Vì nó là một blockchain riêng biệt, có cơ chế đồng thuận riêng chạy độc lập với Layer gốc. Đặc biệt nó không lưu trữ bất cứ dữ liệu hay gửi yêu cầu xác thực nào tới layer gốc, chính vì thế nó hầu như không được kế thừa một chút bảo mật nào.

Điều làm nó được coi là giải pháp mở rộng là sử được thiết kế để tương thích với layer gốc và cho phép tài sản di chuyển qua lại giữa 2 chuỗi.

Cụ thể hơn, các giải pháp mở rộng sidechain được thiết kế để các ứng dụng trên layer gốc dễ dàng chạy trên sidechain mà không cần chỉnh sửa mã nguồn quá nhiều. Ngoài ra họ cũng xây dựng các cây cầu (bridge) để giúp tài sản di chuyển qua lại giữa hai chuỗi.


Tiềm năng tương lai của Layer 2

Vấn đề mở rộng đã sớm được đội ngũ phát triển của Ethereum nhận ra và đưa vào lộ trình phát triển. Không những thế, trong cập nhật roadmap gần đây, đội ngũ phát triển Ethereum còn cập nhật các hỗ trợ giúp Layer-2 hoạt động tốt hơn. Vitalik Buterin – cha đẻ của Ethereum đã đề cập rằng The Surge sẽ đưa tốc độ của Layer-2 lên tới 100.000 TPS.

Sự phát triển của Layer-2 là thuận với sự phát triển chung của toàn ngành. Không những đáp ứng nhu cầu bức thiết mà còn nhận được sự ủng hộ từ nhiều thực thể lớn trong không gian tiền điện tử. Layer 2 nhiều khả năng sẽ tạo ra một cột mốc lịch sử tiếp theo cho crypto trong tương lai gần tương tự như cái cách Layer 1 đã làm trong mùa tăng trưởng vừa rồi.