Ethereum layer-2 solution là gì? So sánh các giải pháp mở rộng Ethereum Layer-2

0
423 views

Khả năng mở rộng là một vấn đề bức bách của blockchain Ethereum trong nhiều năm. Vì vậy, Sidechains, Plasma, Channels, hay Rollups được đề xuất và xem như những giải pháp tức thời giúp tăng khả năng mở rộng, giảm thiểu tắc nghẽn cho mạng lưới Ethereum. Nhiều người cho rằng, những giải pháp layer-2 này có khả năng nắm giữ chìa khóa giúp Ethereum khắc phục tình trạng hiện tại.

Sau tất cả, sự tắc nghẽn và phí cao của Ethereum chứng tỏ mạng lưới đang trở thành nạn nhân của sự thành công của chính nó. Những mảnh ghép trong hệ sinh thái Ethereum như DEXs (Sàn giao dịch phi tập trung) và Yield Farming đã không thể tiếp cận được với người dùng bình thường, những người chỉ có thể chi trả phí gas vừa phải.

Vì vậy, các nhà phát triển Ethereum làm gì để khắc phục các vấn đề này trong khi bản nâng cấp Ethereum 2.0 phải mất 3 – 5 năm nữa mới có thể hoàn thành? Câu trả lời là có rất nhiều, và chúng ta sẽ đề cập đến một số giải pháp được đề xuất phổ biến nhất trong bài viết này.

Mở rộng Ethereum

Về cơ bản, có hai cách để mở rộng 1 blockchain. Một là nâng cấp chuỗi chính để cải thiện khả năng giao dịch. Đó là tất cả những gì Ethereum 2.0 đang hướng đến. Một cách khác là thay đổi cách mọi người sử dụng blockchain đó. Có nghĩa là, thay vì đặt tất cả các giao dịch, tương tác trên chuỗi chính, một số giao dịch có thể được xử lý ngoài chuỗi (off-chain) để giảm bớt tắc nghẽn cho chuỗi chính.Đó là một cách đơn giản để phân biệt giải pháp mở rộng Layer 1 và Layer 2.

Trong giải pháp Layer-2, hợp đồng thông minh trên chuỗi chính chỉ có hai nhiệm vụ chính là (1) xử lý việc gửi và rút tiền, (2) xác minh các bằng chứng để đảm bảo rằng mọi thứ diễn ra ngoài chuỗi đều tuân thủ đúng các nguyên tắc. Đây chính là điều mà Sharding đang thực hiện. Vậy Sharding là gì?

Sharding

Sharding là giải pháp mở rộng của ETH 2.0. Giải pháp này sẽ hoạt động khi Ethereum chuyển đổi cơ chế đồng thuận của nó từ Proof of Work (PoW) sang Proof of Stake (PoS). Đây là một nâng cấp chính và rất phức tạp. Sharding chính là giải pháp Layer-1.

Sharding là một kỹ thuật sử dụng các khối công việc tính toán lớn và chia nó thành các phần nhỏ hơn được gọi là “shard”. Vì Sharding là một phần trong quá trình nâng cấp Ethereum nên sẽ tốn khá nhiều thời gian để có thể được ứng dụng. Tuy nhiên, các giải pháp khác dưới đây có thể chia sẻ và giảm bớt áp lực đối với Ethereum, điều này khiến giải pháp Sharding không còn quá cấp thiết.

Các giải pháp mở rộng Ethereum Layer-2

Hiện tại có các giải pháp Layer-2 sau: 1) Sidechains; 2) State Channels; 3) Plasma; 4) Optimistic Rollups; 5) ZK-Rollups. Bài viết này sẽ đề cập và phân tích điểm mạnh, điểm yếu của các giải pháp này. 

Sidechain

Sidechain là gì?

Sidechains (Chuỗi phụ) là các blockchain độc lập và được xem là sự kết hợp của Layer 2 và Layer 1. Do các giải pháp Layer 2 phụ thuộc vào tính bảo mật của chuỗi chính. Một Sidechain sẽ có các thuộc tính bảo mật riêng. Nó cũng sử dụng các cơ chế đồng thuận của riêng mình để xử lý các giao dịch.

Mình sẽ giải thích kĩ hơn các Sidechain thông qua hình phía trên. Ethereum chính là chuỗi chính và các Sidechain chính là các chuỗi chị em của Ethereum. Các Sidechain sẽ chạy dọc theo chuỗi chính. Các chuỗi khối này có thể giao tiếp với nhau để các tài sản có thể di chuyển giữa các chuỗi. 

Để tạo ra một Sidechain, các nhà phát triển sẽ phải tạo ra một chuỗi khối blockchain với cơ chế đồng thuận như PoW (Proof of Work), PoS (Proof of Stake), PoA (Proof of Authority) hoặc dPoS (Delegated Proof of Stake).

Tiếp theo, việc di chuyển tài sản giữa các chuỗi khối sẽ yêu cầu một hợp đồng thông minh (smartcontract) trên Ethereum. Để nhận tài sản trên Sidechain, người dùng đầu tiên cần phải gửi tiền vào một hợp đồng thông minh của Ethereum và sau đó sẽ tạo lại chúng trên Sidechain. Để nhận lại tài sản trên Ethereum thì người dùng phải di chuyển và xóa chúng khỏi Sidechain, sau đó sẽ mở khóa (unlock) khi tài sản quay trở lại Ethereum.

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

Điểm mạnh của Sidechain là cho phép người dùng tạo lập các Bridge (cầu nối) để chuyển token từ Ethereum sang để phục vụ hoạt động giao dịch. Nhiều chuỗi phụ thậm chí còn hỗ trợ cầu nối với các blockchain khác như Cardano. Ngay cả khi người dùng thực hiện vô số các giao dịch trên sidechain thì chỉ có duy nhất 2 giao dịch diễn ra trên chuỗi chính (main chain) là gửi và rút tiền.

Tuy nhiên có một số điểm hạn chế đối với Sidechains đó là việc cung cấp sức năng lượng để tạo các khối mới đồng thời cũng có thể ngừng sản xuất các khối. Hơn nữa, Sidechains cấp cho các nhà khai thác và vận hành chuỗi quyền hạn để ngăn chặn người dùng rút tiền của họ. Ví dụ điển hình là Polygon (Matic) và xDai. 

Hơn nữa, các sidechain là không có được mức độ bảo mật như là Ethereum, do đó dễ trở thành mục tiêu tấn công từ bên ngoài lẫn bên trong và dẫn đến thất thoát token của người dùng.

State Channels

State Channels là gì?

State Channel (Kênh thanh toán) là một cách để thực hiện việc tương tác ngoài chuỗi khối, thông thường việc này chỉ diễn ra trên blockchain. Chỉ các thành phần quan trọng mới có thể truyền tin đến Ethereum trên các State Channel và đó sẽ là các kết quả.

Giải pháp này tương tự như những gì Lightning Network đang làm với Bitcoin. Nó cho phép người sử dụng lập các kênh thanh toán cục bộ với nhau mà không đưa giao dịch lên blockchain, trừ lúc mở và đóng kênh thanh toán.

Mình sẽ lấy một ví dụ để anh em dễ hình dung về cách thức hoạt động của State Channel. Giả sử, Alice bán cho Bob dịch vụ internet với giá 10 cents/ megabyte. Nhưng thay vì tạo ra một giao dịch trên chuỗi chính cho việc thanh toán mỗi megabyte, họ có thể sử dụng một State Channel. 

Đầu tiên, Bob sẽ khóa một số đồng ETH (ký quỹ) vào một smart contract. Tiếp theo, Bob sẽ ký một message (ticket) ngoài chuỗi rằng anh ấy đã trả 10 cents cho Alice. Bob sau đó lại ký một ticket khác để trả 20 cents cho Alice khi anh tiếp tục sử dụng dịch vụ internet của Alice. Điều này diễn liên tục cho đến khi họ kết thúc việc kinh doanh (Alice ngừng cung cấp dịch vụ cho Bob, hoặc Bob ngừng sử dụng dịch vụ). Khi Alice muốn rút tiền khi khoản thanh toán đạt đến 1$, cô ấy sẽ đưa ticket này lên chuỗi chính. Hợp đồng thông minh sẽ xác thực chữ ký của cả hai bên, và trả cho Alice 1$ và trả phần ký quỹ còn lại cho Bob.

State Channels và Bi-Directional Payments

State Channels có thể xử lý các khoản thanh toán hai chiều giữa hai bên như Alice và Bob, tuy nhiên họ cũng có thể giao dịch cả với những người dùng khác nếu có chung một kênh mở (open channel). Ví dụ, nếu Bob có một kênh mở với Ted, Alice cũng có thể tương tác với Ted.

Tuy nhiên, hạn chế của nó là chỉ giới hạn ứng dụng trong khía cạnh thanh toán, không thể giải quyết nhu cầu của các giao dịch liên quan đến hợp đồng thông minh. Bên cạnh đó, người sử dụng cần phải duy trì (khóa) một số tiền nhất định lại trong kênh để phục vụ hoạt động giao dịch, làm giảm khả năng thanh khoản của cá nhân.

Plasma

Plasma là gì?

Plasma được tạo bởi các cây Merkle và các hợp đồng thông minh. Sự kết hợp này cho phép Plasma có thể tạo ra vô số chuỗi con, đó là những phiên bản nhỏ hơn của chuỗi chính. Các nhà phát triển có thể xây dựng nhiều chuỗi phía trên các chuỗi con để tạo ra một cấu trúc giống như cây. Những chuỗi nhỏ hơn này được gọi là chuỗi con (child chains) hoặc các chuỗi Plasma (Plasma Chains).

Cây Merkle (Merkle Tree) là một cấu trúc dữ liệu được sử dụng trong các ứng dụng khoa học máy tính. Trong bitcoin và các loại tiền mã hóa khác, cây Merkle sử dụng để mã hóa dữ liệu chuỗi khối hiệu quả và an toàn hơn.

Các chuỗi thứ cấp của Plasma chỉ cần tương tác định kỳ với chuỗi chính cho những việc như giải quyết tranh chấp. Lưu ý răng Plasma Chains và Sidechains tương tự nhau nhưng 2 giải pháp này không phải là một. Sidechains và Plasma đưa ra những cam kết khác nhau trong việc đảm bảo tài sản của người dùng.

Gửi và rút tiền trong Plasma

Để gửi tiền, người dùng gửi tài sản tới hợp đồng thông minh quản lý Plasma Chain. Chuỗi Plasma sẽ chỉ định một ID duy nhất cho tài sản. Sau đó, nhà điều hành tạo ra một loạt các giao dịch Plasma mà họ đã nhận được ngoài chuỗi trong các khoảng thời gian.

Để rút tài sản, hợp đồng thông minh sẽ bắt đầu một “challenge period” – giai đoạn thử thách. Trong thời gian này, bất cứ ai cũng có thể sử dụng các nhánh Merkle để làm việc rút tiền bị mất hiệu lực nếu họ có thể chứng minh điều này là gian lận. Sau khi giai đoạn thử thách này kết thúc thì người dùng có thể rút tài sản của họ ra.

Một lợi thế của Plasma so với State Channels là yêu cầu về vốn ký quỹ thấp hơn rất nhiều. Ngoài ra, người dùng có thể gửi tài sản cho những người dùng không thuộc hệ thống.

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

  • Ưu điểm

Plasma là một giải pháp tốt cho việc thanh toán và thỏa thuận bằng các NFTs (non-fungible tokens) bởi vì mỗi đơn vị tài sản sở hữu một ID duy nhất. Ngoài ra, chuỗi gốc hoạt động như các “save points” – điểm lưu trữ trên blockchain. 

Một trong những vấn đề của Sidechains là các cơ chế đồng thuận có thể dừng việc sản xuất các chuỗi khổi và thậm chí là khóa tiền của người dùng. Đối với Plasma, người dùng có thể yêu cầu các khối gốc. Vì vậy nếu cơ chế đồng thuận ngừng tào khối, người vẫn có thể yêu cầu Ethereum cho việc rút tiền.

Các tài sản trên Plasma là hoàn toàn phi lưu ký, tức là chúng vẫn được giữ trên Ethereum, duy trì sự an toàn ở mức cao nhất có thể. Điều này loại bỏ những rủi ro bị tấn công mà có thể sẽ gặp phải ở sidechain.

  • Nhược điểm

Vấn đề “mass-exit” – thoát hàng loạt là một trong những mối quan tâm lớn nhất đối với Plasma. Nếu nhiều người dùng đồng thời thoát ra khỏi các chuỗi Plasma, họ có thể làm ngập chuỗi gốc và làm tắc nghẽn mạng lưới. Những thứ như hành động gian lận hoặc các cuộc tấn công mạng lưới có thể gây ra một cuộc di cư ồ ạt như vậy.

Một nhược điểm nữa của Plasma chain là thiếu tính phức tạp. Người dùng không thể thực hiện các hành động phức tạp như họ có thể làm trên Sidechains. Điều này bởi vì các biện pháp để phòng cần thiết được áp dụng để giữ an toàn cho tiền của người dùng.

Plasma yêu cầu người sử dụng phải thường xuyên online và tải về một lượng lớn dữ liệu. Bên cạnh đó, Plasma không hỗ trợ giao dịch hợp đồng thông minh.

Tổng kết

Với sự phát triển nhanh chóng của hệ sinh thái Ethereum, mạng lưới này đang lộ ra những hạn chế lớn về khả năng mở rộng. Giải pháp Layer-2 như một biện pháp tức thời giúp Ethereum khắc phục những điểm yếu này trước khi Ethereum 2.0 ra đời. 

Bài viết này đã so sánh và đề cập đến ba trong số năm giải pháp mở rộng Ethereum layer-2. Tuy nhiên các giải pháp này khó có thể mô phỏng toàn bộ Ethereum enviroment. Chính vì vậy, chúng ta có thêm giải pháp Rollups.

Phần tiếp theo trong seri Ethereum layer-2, anh em hãy cùng GTA đi tìm hiểu vậy giải pháp Rollups là gì? Điểm mạnh và yếu của Rollups so với các giải pháp còn lại để nâng cao kiến thức và tìm kiếm các cơ hội đầu tư nhé.

Phần 2: Giải pháp mở rộng Ethereum. Rollups sẽ là tương lai?

Trên đây là toàn bộ thông tin mà GTA Research team đã nghiên cứu, tổng hợp và không phải là lời khuyên đầu tư. Hy vọng bài viết sẽ giúp các bạn có được các thông tin cần thiết và đưa ra được nhận định cá nhân của mình trong thị trường biến động không ngừng này.

Nguồn tham khảo: Invanontech