Skip to main content

Khả năng mở rộng là con đường của Cardano để ứng dụng toàn cầu

Ngày 17 tháng 05 năm 2023 - Chia sẻ bài viết này trên Twitter | FacebookTelegram

Khi bạn muốn đi từ A đến B. Bạn có thể mua một chiếc vé rất đắt tiền nhưng phải đi trong một giờ, hoặc bạn cũng có thể mua một vé rẻ hơn và chỉ mất 2 phút cho hành trình đó. Mọi người sẽ luôn hành xử hợp lý cho lợi ích của cá nhân mình. Và hầu hết sẽ đưa ra chọn tùy chọn hợp lý: chi phí rẻ hơn và tốc độ nhanh hơn. Họ sẽ không còn sẵn sàng trả tiền cho các giao dịch đắt đỏ trên blockchain nếu có một lựa chọn thay thế tốt hơn (rẻ hơn, nhanh hơn, an toàn hơn, phi tập trung hơn).

Các mạng blockchain công khai và phi tập trung cần phải mở rộng quy mô tốt hơn. Hãy nghĩ về một chuyến xe buýt xuất phát đều đặn 10 phút một chuyến. Chỉ có 100 người có thể lên xe mỗi chuyến, nhưng thường xuyên có 200 hoặc thậm chí 300 người đợi ở bến xe buýt. Mọi người đều cần đi xe buýt, vì vậy họ bắt đầu cạnh tranh nhau và sẽ trả giá vé cao hơn. Một số người sẵn sàng trả Giá vé tăng từ 0,5 USD lên 50 USD. Sự cạnh tranh sẽ xuất hiện giữa các hành khác muốn lên xe trước. Trong khi đó, có một lựa chọn khác là tàu cao tốc hiện đại, cứ 30 giây một chuyến, giá vé chỉ 0,1 USD, chở được 1.000 người. Chỉ sau một tuần, có lẽ sẽ không có ai sử dụng xe buýt.

Theo thuật ngữ blockchain, chúng ta sẽ nói rằng tàu cao tốc có quy mô vận chuyển tốt hơn xe buýt. Số lượng giao dịch được xử lý bởi một hệ thống mỗi giây được gọi là thông lượng. Hãy xem đó như là số người mà xe buýt chở được mỗi giây. Trong trường hợp của chúng ta, nó là 0,16 người, vì chúng ta chia 100 người cho 600 giây.

Cardano có tham vọng trở thành một hệ điều hành tài chính và xã hội toàn cầu. Để làm điều này, nó cần mở rộng quy mô tốt hơn. Cần tốt hơn nhiều so với hiện nay. Trong bài viết này, chúng ta thảo luận về lý do tại sao khó đạt được khả năng mở rộng ở Lớp thứ nhất (L1) và tại sao chúng ta cần các lớp thứ hai. Chúng ta sẽ nói một chút về Hydra, một chút về rollup và một chút về Milkomeda.

tip

Hãy nhớ rằng một giao dịch của Cardano có thể chứa nhiều tài sản và nhiều người nhận. Chúng ta sẽ không lặp lại điều này quá nhiều trong bài viết, nhưng một giao dịch Cardano đơn lẻ có thể tương đương như 10 hoặc thậm chí 100 giao dịch trên mạng blockchain khác.

TÓM TẮT

Ngày nay, trên toàn thế giới, có hơn 16.000 giao dịch tài chính kỹ thuật số diễn ra mỗi giây. Rất khó để các blockchain phi tập trung đạt được thông lượng cao như vậy. Các Kênh trạng thái, sidechains và rollup đều là các lớp thứ hai mà chúng ta sẽ sử dụng trong hệ sinh thái Cardano trong tương lai gần.

Tại sao quy mô blockchain không tốt?

Blockchain là một mạng phân tán bao gồm các node. Một trong những yêu cầu đối với blockchain là tính phi tập trung, về cơ bản có nghĩa là bạn có thể chạy node đầy đủ của riêng mình tương đối rẻ. Các node có 4 nút cổ chai: sức mạnh tính toán (CPU), bộ nhớ (RAM), ổ cứng lưu trữ (HDD) và băng thông (lượng dữ liệu tối đa mà một node có thể tải xuống hoặc gửi tại một thời điểm nhất định).

Các node trong mạng Cardano giao tiếp với nhau và chuyển tiếp tất cả các giao dịch mà người dùng gửi. Mỗi node sẽ phải xác thực các giao dịch. Nếu cần phải xác thực tập lệnh Plutus, node sẽ được yêu cầu nhiều sức mạnh tính toán hơn. Tất cả các giao dịch nhận được phải được lưu trữ tạm thời (mem-pool). Các giao dịch hợp lệ sẽ được đưa vào khối phải được lưu trữ vĩnh viễn.

Cardano hiện xử lý khoảng 50.000 giao dịch mỗi 24 giờ. Nhiều giao dịch có nhiều người nhận trong đó. Vì vậy, trung bình Cardano được sử dụng bởi khoảng 1 đến 5 người nhận mỗi giây.

Bây giờ hãy tưởng tượng xem bạn sẽ cần có loại máy tính nào nếu có thêm 1000 người sử dụng Cardano mới. Hay số lượng người dùng sẽ tăng gấp 10.000 lần. Các yêu cầu về sức mạnh tính toán, bộ nhớ, lưu trữ và băng thông sẽ tăng lên rất cao. Khi đó, chỉ các doanh nghiệp mới có thể chạy một node đầy đủ, điều này sẽ dẫn đến việc tập trung hóa. Lý tưởng "Không cần phải tin, cần được xác thực" sẽ không thể đạt được.

Theo một báo cáo do Capgemini a BNP Paribas cung cấp vào năm 2021, đã có 522 tỷ giao dịch tài chính kỹ thuật số trên toàn thế giới vào năm 2020. Khoảng 1,4 tỷ giao dịch mỗi ngày, tương đương khoảng 16.000 giao dịch mỗi giây. Con số thực có thể còn cao hơn vì nhóm đưa ra báo cáo không có quyền truy cập vào dữ liệu của tất cả các công ty.

Nhu cầu cao hơn về hiệu suất máy tính dẫn đến việc mạng lưới ngày càng bị tập trung hóa. Nếu một mạng phi tập trung mở rộng quy mô tốt hơn, các pool sẽ phải đối mặt với một thách thức lớn về công nghệ và phần cứng.

Để giải quyết một giao dịch, trước tiên các node phải đồng thuận về tính hợp lệ của nó. Nếu hệ thống có một số lượng lớn các node, sự đồng thuận này có thể sẽ mất một khoảng thời gian lâu hơn. Phi tập trung cao hơn làm cho đồng thuận giữa các node trở nên khó khăn hơn. Mỗi node riêng lẻ phải sử dụng tài nguyên máy tính của riêng mình để lấy, xác thực và lưu trữ các giao dịch. Điều này là mong muốn từ góc độ phân quyền, nhưng rất không hiệu quả từ góc độ khả năng mở rộng. Rõ ràng, nếu hệ sinh thái (blockchain và lớp thứ hai) mở rộng quy mô tốt hơn, các node không thể xác minh tất cả các giao dịch giữa những người dùng.

Nhiệm vụ của các lớp thứ hai là giảm bớt các nút thắt cổ chai của các Lớp thứ nhất. Mục tiêu là xử lý song song hóa việc xử lý các giao dịch ở các lớp khác nhau, do đó tiết kiệm tài nguyên máy tính của Lớp thứ nhất. Phải luôn có một số cơ chế để chuyển tài sản từ Lớp thứ nhất sang lớp thứ hai và ngược lại.

Lớp thứ hai có các node riêng (tài nguyên máy tính) và các quy tắc riêng để đạt được sự đồng thuận giữa những người dùng. Các giả định về phân quyền và bảo mật có thể khác biệt đáng kể so với Lớp thứ nhất. Một số người lầm tưởng rằng nếu một lớp thứ hai được tạo trên một blockchain cụ thể, thì nó sẽ tự động kế thừa các thuộc tính của nó. Đây không phải là trường hợp. Điểm của lớp thứ hai là tiếp nhận trách nhiệm đối với tài sản từ Lớp thứ nhất. Lớp thứ nhất chỉ liên quan đến việc chuyển tài sản giữa các lớp nhưng không xác thực các giao dịch và thực hiện hợp đồng thông minh diễn ra ở lớp thứ hai. Các lớp thứ hai thường là một cơ sở hạ tầng hoàn toàn khác, bao gồm các node (có thể có lỗi), ví.

Lưu ý rằng xác minh giao dịch là làm việc với dữ liệu. Để xác minh dữ liệu, nó phải có sẵn. Trong thực tế, điều này có nghĩa là node phải tải xuống hoặc nhờ ai đó gửi cho nó (băng thông) và node phải lưu trữ nó (bộ nhớ RAM, khả năng lưu trữ HDD) và xác thực nó (sức mạnh xử lý CPU). Vấn đề là một máy tính bình thường không thể xử lý một khối lượng dữ liệu khổng lồ. Mọi người phàn nàn rằng blockchain Cardano quá lớn và phát triển nhanh. Các lớp thứ hai giúp làm giảm yêu cầu tài nguyên máy tính của các Lớp thứ nhất, vì người ta cho rằng dữ liệu (giao dịch) bắt nguồn từ lớp thứ hai sẽ được lưu trữ ở nơi khác hoặc đơn giản là bị xóa đi sau một thời gian.

Bạn có thể biết rằng Cardano là Lớp thứ nhất. Các lớp thứ hai sẽ là Milkomeda, Hydra, Midnight và các lớp khác. Chúng ta hãy xem sự khác biệt giữa các giải pháp. Có 3 khái niệm cơ bản của các lớp thứ hai: sidechain, Kênh trạng thái (State Channel) và rollup. Chúng ta sẽ không tập trung quá nhiều vào sự khác biệt giữa các khái niệm. Chúng ta sẽ tập trung vào nguyên tắc mà chúng vận hành.

Hydra

Hydra là một giải pháp Kênh trạng thái.

Hydra được sử dụng như sau: Một số người dùng đồng ý (ngoài chuỗi - offchain) để cùng nhau mở cái gọi là Hydra Head. Về cơ bản, điều này có nghĩa là họ cũng sử dụng một hợp đồng thông minh để chuyển một lượng tài sản đã chọn của họ từ blockchain Cardano sang Hydra. Cần có giao dịch trực tuyến để chuyển trạng thái từ Cardano sang Hydra. Sau khi chuyển, người dùng chia sẻ trạng thái ngoại tuyến (off-chain) với nhau. Họ có thể thực hiện bất kỳ số lượng giao dịch nào một cách nhanh chóng và rẻ (thậm chí gần như miễn phí). Những thay đổi cuối cùng (Trạng thái cuối cùng) được chuyển trở lại blockchain Cardano thông qua giao dịch trực tuyến.

Hydra tương tự như Lightning Network (LN). Hydra Head có thể được mở bởi nhiều người dùng trong khi LN sẽ chỉ cho phép mở một kênh giữa 2 người dùng. Hydra sẽ cho phép người dùng sử dụng token và cũng có thể thực hiện các hợp đồng thông minh.

Hydra rất hữu ích khi nhiều người dùng muốn gửi nhiều giao dịch cho nhau. Mỗi người dùng phải sử dụng một node Hydra và luôn trực tuyến để đảm bảo rằng không có nỗ lực nào nhằm đóng Hydra Head sớm. Nếu vậy, cần phải kiểm tra trạng thái cuối cùng và thử thách nó nếu cần (trong trường hợp có hành vi gian lận).

Hydra rất hữu ích khi những người tham gia biết trước khi nào Hydra Head sẽ đóng.

Hydra có cơ chế đồng thuận riêng chỉ diễn ra giữa những người tham gia. Blockchain Cardano không biết gì về những giao dịch đang diễn ra trong Hydra Head.

Có thể nói rằng các giao dịch của Hydra Head là riêng tư. Tuy nhiên, trạng thái cuối cùng sẽ được ghi trở lại vào blockchain Cardano.

Công việc trong tương lai sẽ được thực hiện trên Hydra Tail để cho phép người dùng tạm thời ngoại tuyến (offline). Hydra sẽ hoạt động trên thoại di động. Một cải tiến được lên kế hoạch khác sẽ là khả năng kết nối các Hydra Head với nhau. Sự kết nối của các Hydra Heads mở đường cho các mạng lưới người tham gia lớn hơn, biến các Heads cục bộ thành một mạng lưới toàn cầu một cách hiệu quả.

Milkomeda

Milkomeda C1 là một giải pháp sidechain tương thích với EVM.

Milkomeda cho phép thực thi các ứng dụng Ethereum trong hệ sinh thái Cardano. Để sử dụng Milkomeda, bạn cần có ví tương thích với EVM, chẳng hạn như Metamask. Bạn kết nối ví với sidechain Milkomeda. Sau đó, bạn cần gửi tài sản từ mạng Cardano đến Milkomeda thông qua một cầu nối. ADA sẽ trở thành MilkADA (một loại ADA phái sinh). MilkADA sẽ được sử dụng để trả phí trên mạng Milkomeda.

Sidechain thường là một mạng riêng biệt với các trình xác thực riêng. Trong trường hợp của Milkomeda, trình xác thực được điều hành bởi một nhóm Cardano SPO.

Nhóm dcSpark đã đưa ra một cải tiến gọi là hợp đồng thông minh được bao bọc cho phép người dùng trên Cardano nhưng sử dụng hợp đồng thông minh trên sidechain. Tất cả những gì người dùng phải làm là gửi một giao dịch Cardano với dữ liệu và tài sản cần thiết để tương tác với dApp sidechain. Lớp cầu sidechain sẽ lo phần còn lại. Giải pháp cụ thể này thực sự sử dụng tài nguyên của các node Cardano nhưng có thể tiết kiệm sức mạnh tính toán.

Thông thường, sidechains được sử dụng để tài sản được chuyển qua cầu nối và tất cả các giao dịch và thực hiện hợp đồng thông minh diễn ra ở lớp thứ hai. Điều này về cơ bản tiết kiệm tất cả các tài nguyên tính toán của Lớp thứ nhất (tương tự như các giải pháp Kênh trạng thái). Người dùng không bị buộc phải chạy node Lớp 2 và không cần phải trực tuyến như trong trường hợp của giải pháp Kênh trạng thái. Sidechains thường có sổ cái công khai của riêng họ, trong đó các giao dịch có thể được theo dõi.

Nói chung, một sidechain có thể gặp phải các vấn đề tương tự như một blockchain nếu nó được phân quyền. Tuy nhiên, đây không phải là điều mà người dùng mong đợi. Mục tiêu của một sidechain thường là mở rộng quy mô tốt hơn với chi phí phân quyền thấp hơn.

Rollup

Các nhóm IOG và dcSpark đang làm việc trên các bản cập nhật cho Cardano. Về cơ bản là nhằm tiết kiệm sức mạnh xử lý và bộ nhớ của Lớp thứ nhất. Ở một mức độ nhất định, lưu trữ và băng thông cũng vậy, nhưng việc sử dụng nó có thể khác nhau tùy theo từng trường hợp.

Rollup chủ yếu dựa trên hợp đồng thông minh cho phép người dùng chuyển tài sản từ blockchain vào mạng rollup. Trong một Rollup, về cơ bản bạn có thể làm bất cứ điều gì với nội dung. Một Rollup có thể chỉ là một mạng giao dịch nhanh, nó có thể thực thi các hợp đồng thông minh trên bất kỳ máy ảo nào hoặc nó có thể là một ứng dụng.

Rollup duy trì trạng thái của mạng thông qua cấu trúc dữ liệu cây Merkle đặc biệt. Hãy coi nó như một kim tự tháp được xây bằng các viên gạch, trong đó mỗi viên gạch riêng lẻ đại diện cho thông tin (số dư người dùng, giao dịch, v.v.). Một hàm băm (chuỗi ngắn) có thể được tạo từ mỗi mẩu thông tin. Một hàm băm cũng có thể được tạo từ hai mẩu thông tin. Đối với mỗi hai hàm băm từ lớp dưới của kim tự tháp, một hàm băm được tạo ở lớp cao hơn. Nếu một người tiến hành theo cách này về phía đỉnh của kim tự tháp, một hàm băm duy nhất, gốc Merke (gốc trạng thái), được tạo đại diện cho tất cả dữ liệu trong cấu trúc cây.

Có thể chứng minh bằng mật mã rằng phần trạng thái tồn tại trong cây Merkle miễn là bạn có phần trạng thái đó, một vài node nhánh (các viên gạch trong tương tự của chúng ta) và gốc Merkle.

Rollup liên tục gửi một trạng thái mới (Merkle root) đến hợp đồng thông minh của Lớp thứ nhất. Blockchain được sử dụng để ghi trạng thái Rollup, không thể thay đổi. Blockchain cũng đóng vai trò là lớp dữ liệu sẵn có, vì trạng thái mới của Rollup được phân phối cùng với mỗi khối mới.

Rollup có xu hướng có vấn đề về tính khả dụng của dữ liệu. Nếu blockchain chỉ viết gốc Merkle, thì nó sẽ không biết gì về các giao dịch vốn là một tính năng mong muốn. Tuy nhiên, nếu Rollup ngoại tuyến trong một khoảng thời gian dài, tiền sẽ bị kẹt vì không có dữ liệu (hoặc ít nhất là một phần dữ liệu) thì không thể chứng minh rằng người dùng là chủ sở hữu của số tiền đó.

Có nhiều giải pháp cho vấn đề này. Rollup có thể gửi dữ liệu đến blockchain cùng với gốc Merkle. Chỉ dữ liệu cho phép tạo lại các thay đổi được thực hiện trong cây Merkle. Mạng blockchain không cần xử lý dữ liệu, chỉ cần lưu trữ dữ liệu. Dữ liệu có thể được nén lại.

Một số Rollup lưu trữ dữ liệu trên các mạng chuyên dụng khác. Điều này giúp tiết kiệm dung lượng lưu trữ trên các node đầy đủ (kích thước của blockchain tăng chậm hơn). Một số giải pháp xác thực rằng dữ liệu thực sự có sẵn trên các mạng bên ngoài.

Rollup có thể sử dụng mật mã Zero Knowledge (ZK). ZK cho phép người dùng tạo bằng chứng rằng họ đã hoàn thành đúng một nhiệm vụ mà không cần phải cung cấp bất kỳ thông tin nào về nhiệm vụ đó.

ZK hoạt động như thế nào? 

Hãy tưởng tượng bạn có một mã bí mật để mở một cánh cửa nằm trong hành lang. Bạn muốn chứng minh với bên kia rằng bạn biết mã, nhưng bạn không muốn cho họ xem mã? Vì vậy, bạn đi xuống hành lang và mở cửa. Đi qua hành lang là bằng chứng cho thấy bạn thực sự biết mật mã.

Rollup ZK có thể tạo bằng chứng ZK rằng nó đã lấy trạng thái trước đó, xử lý các TX hợp lệ và tạo gốc trạng thái mới một cách chính xác. Một hợp đồng thông minh được thực hiện trên blockchain có thể xác minh tất cả bằng chứng và có thể từ chối cập nhật cây Merkle nếu có nỗ lực gian lận. ZK rollup không cần lưu trữ dữ liệu giao dịch và chữ ký trên blockchain vì không thể gian lận.

Cũng như sidechains, rollup phải có cách riêng để Phi tập trung, quản lý dự án, v.v. Thường thì rủi ro là hợp đồng thông minh có thể được cập nhật thông qua các khóa quản trị. Bằng cách này, nhóm vẫn giữ quyền kiểm soát hợp đồng và do đó về cơ bản là tiền của người dùng. Một số dự án giải quyết vấn đề này bằng cách kích hoạt bản cập nhật mới với độ trễ (ví dụ: 2 tuần).

Tại thời điểm viết bài, không rõ các nhóm đã tiến xa đến đâu với việc phát triển các bản cập nhật cho Cardano. Giả định của chúng ta là chúng ta sẽ thấy những lần thử đầu tiên vào năm 2023. Các Rollup được sử dụng trong nhiều dự án và những lần thử đầu tiên thậm chí còn được thực hiện trên Bitcoin, loại tiền có khả năng lập trình rất hạn chế.

KẾT LUẬN

Mỗi lớp thứ hai sẽ luôn phụ thuộc vào Lớp thứ nhất. Do đó, khả năng mở rộng của các Lớp thứ nhất cũng phải được cải thiện đáng kể, nếu không, blockchain sẽ mãi mãi hạn chế hoạt động của các lớp thứ hai. Trong trường hợp giải pháp Kênh trạng thái, các kênh phải được mở và đóng liên tục. Ai đó đã tính toán rằng nếu tất cả mọi người trên hành tinh đều sử dụng Lightning Network, thì sẽ mất 70 năm mới xử lý được hết các giao dịch. Nếu các giao dịch trên Lớp thứ nhất đắt đỏ và chậm chạp, nhiều người sẽ không chuyển sang lớp thứ hai và thậm chí họ có thể sẽ không thử dùng nữa. Cardano sẽ mở rộng quy mô tốt hơn đáng kể trên Lớp thứ nhất nhờ PoS Leios.

Nếu bạn sử dụng sidechains và rollup, hãy luôn lưu ý về mức độ phi tập trung của các mạng và những rủi ro khi sử dụng chúng.

Cardano có một sidechain trên Milkomeda. Hydra Head đã được mở trên mạng chính. Chúng ta hy vọng Rollup đầu tiên sẽ xuất hiện vào cuối năm nay và nó sẽ được phân phối bởi nhóm dcSpark. Mỗi giải pháp riêng lẻ đều có điểm mạnh và điểm yếu riêng và phù hợp với các trường hợp sử dụng khác nhau. Tất cả các giải pháp đều có cơ hội thành công.

Nguồn bài viết tại đây


Picture


Đọc thêm các bài viết liên quan tại thẻ Tags bên dưới