Skip to main content

Triển khai Hydra Head

· 18 min read

Hydra Head, công cụ đầu tiên trong bộ giao thức, là một yếu tố quan trọng trong hành trình mở rộng quy mô của Cardano. Hãy xem làm thế nào nó phù hợp với bức tranh lớn hơn.

picture

Chúng tôi đã thực hiện nghiên cứu khoa học và lý thuyết. Chúng tôi đã đặt nền tảng cho một blockchain có thể mở rộng, linh hoạt và thông lượng cao. Bây giờ là lúc để tăng trưởng ổn định và cải tiến hệ thống. Với mục tiêu tạo ra một hệ sinh thái được tối ưu hóa để hỗ trợ và thúc đẩy sự phát triển của các ứng dụng phi tập trung (DApps), Cardano đang ở giai đoạn Basho. Với các hợp đồng thông minh đã có, Basho là tất cả về mở rộng quy mô và tối ưu hóa mạng. Nhóm giao thức Hydra là một thành phần quan trọng cho việc này.

Chúng ta đã nói về Hydra trước đây. Hydra là một tập hợp các giải pháp Layer 2 được thiết kế để giải quyết khả năng mở rộng và bảo mật mạng. Ban đầu được hình thành trong công trình của nhóm nghiên cứu Ouroboros, trên thực tế, nó đã tạo ra một con đường độc lập kể từ khi xuất bản nghiên cứu. Hydra cung cấp thông lượng tăng lên, độ trễ giảm thiểu và các giải pháp tiết kiệm chi phí mà không cần yêu cầu lưu trữ lớn. Giao thức Hydra Head đã được hình thành vào năm 2020 và kể từ đó, tư duy của chúng tôi đã phát triển - đặc biệt là trong suốt giai đoạn triển khai và chứng minh khái niệm ban đầu này. Dựa trên ý tưởng ban đầu đó, giao thức Hydra Head đã phát triển thành một bằng chứng về khái niệmvà đã tiếp tục làm như vậy vì chúng tôi đã hướng tới một triển khai được xác định rõ hơn cho testnet MVP.

Chúng tôi đã thấy rất nhiều sự phấn khích (tuyệt vời!) Cùng với những hiểu lầm và hiểu lầm (không quá tuyệt vời). Hầu hết những điều này phát sinh từ những công bố ý tưởng, thay vì triển khai giao thức thực tế  một số bài viết blog trước đây của chúng tôi, có lẽ đã góp phần vào những hiểu lầm này. Nhưng giao thức Hydra Head không chỉ là triển khai cho các SPO nhằm đạt mục tiêu lý thuyết '1 triệu TPS' - điều này cần được khuyến cáo và giải thích rõ hơn.

Trong bài viết này, chúng tôi - nhóm kỹ sư Hydra - phác thảo tiến trình hiện tại, cách tiếp cận và Roadmap dài hạn và gần của chúng tôi. Chúng tôi sẽ làm sáng tỏ một số hiểu lầm, làm rõ những lợi ích và phản ánh những thách thức phát triển.

Tóm tắt về Hydra Head

Trước tiên, hãy giới thiệu lại Hydra Heads, không chỉ liên quan đến một lớp mạng mạnh mẽ giữa các đồng nghiệp và một sổ cái Cardano tích hợp, mà còn, một số tập lệnh on-chain (hợp đồng thông minh) thúc đẩy vòng đời của Hydra Head.

Hydra Head là một kênh trạng thái đẳng hình an toàn có thể chứng minh được. Nói một cách đơn giản, nó là một sổ cái mini off-chain giữa một nhóm hạn chế những người tham gia, hoạt động tương tự (mặc dù nhanh hơn đáng kể) với sổ cái chính on-chain.

Điều đầu tiên cần hiểu là một Kênh là một con đường giao tiếp giữa hai hoặc nhiều đồng nghiệp. Trở thành một phần của Head có nghĩa là trở thành một trong những "đồng nghiệp" đó. Các Kênh tạo thành các mạng riêng biệt có thể phát triển song song với mạng chính. Trên các mạng thay thế này, những người tham gia tuân theo một thuật toán đồng thuận khác, đơn giản hơn: mọi người cần đồng thuận về tất cả các giao dịch. Một hệ quả của điều này là, với tư cách là một người tham gia, tôi không thể mất tiền mà tôi đã không đồng ý thua một cách rõ ràng. Tại sao? Bởi vì bất kỳ giao dịch hợp lệ nào đều cần có sự chấp thuận rõ ràng của tôi.

Khi thành lập Head, những người tham gia có thể cam kết tài trợ cho nó. Điều này có nghĩa là chuyển tiền on-chain đến một địa chỉ tập lệnh (scripts) và khóa chúng theo các quy tắc cụ thể. Tập lệnh đảm bảo thực thi an toàn giao thức on-chain và đặc biệt, những người tham gia không thể gian lận lẫn nhau. Tuy nhiên, vào bất kỳ lúc nào, bất kỳ người tham gia nào cũng có thể quyết định rời bỏ Head bằng cách đóng nó lại. Trong trường hợp này, tất cả những người tham gia bỏ đi với trạng thái mới nhất mà họ đã đồng thuận với nhau off-chain, trên mạng song song của họ.

Hãy coi Head là 'bàn chơi poker riêng' nơi người tham gia mang theo chip của riêng họ để chơi trò chơi. Người tham gia có thể chơi bao lâu tùy thích. Nếu ai đó không chơi, thì trò chơi không tiến triển. Tuy nhiên, những người tham gia vẫn có thể tự do sử dụng chip của họ. Nếu họ làm như vậy, trò chơi kết thúc với sự phân bổ của cải hiện tại.

Picture

Hình 1 . Vòng đời Hydra Head (đơn giản hóa)

Người chia bài tại bàn (kịch bản trực tuyến) đảm bảo rằng mọi người chơi đúng luật và không gian lận. Khi kết thúc, tổng số lượng chip lấy ra cũng sẽ bằng tổng lượng chip thu về. Nhưng chúng có thể đã được phân chia lại trong quá trình tham gia trò chơi. Mặc dù kết quả cuối cùng sẽ được ghi lại lên chuỗi chính, nhưng lịch sử của tất cả các hành động đã xảy ra trong trò chơi chỉ có những người tham gia biết.

Giao thức này là một trong bộ toàn bộ các giao thức mà chúng tôi thường gọi là 'Hydra'. Nỗ lực kỹ thuật hiện tại tập trung vào việc triển khai giao thức Hydra Head như được xuất bản trong Hydra: Fast Isomorphic State-Channels của Chakravarty et al.

Vào khoảng cuối năm 2021, Maxim Jourenko, Mario Larangeira và Keisuke Tanaka đã xuất bản một bản lặp lại về Hydra Head có tên là InterHydra Head: Two Heads are Better than One . Sự lặp lại này xác định một phương pháp để kết nối hai Head với nhau cho phép, về lâu dài, việc tạo ra một mạng lưới các Hydra Head được kết nối với nhau. Trước đây, đã có đề cập đến các giao thức khác như 'Hydra Tail'. Tuy nhiên, những điều đó vẫn đang được nghiên cứu, cùng với những ý tưởng mới đến từ công trình gần đây về giao thức Hydra Head.

Những hiểu lầm về Hydra

Gần đây, chúng tôi đã thấy rất nhiều bình luận định vị Hydra là giải pháp 'tối thượng' cho khả năng mở rộng Cardano. Chắc chắn, Hydra Heads tạo ra một nền tảng vững chắc để xây dựng một lớp khả năng mở rộng cho Cardano. Chúng là một khối xây dựng thiết yếu tận dụng sức mạnh của mô hình Đầu ra giao dịch chưa được trả tiền mở rộng (EUTXO) để cho phép các giải pháp phức tạp hơn ở trên cùng. Chúng là một yếu tố quan trọng của hành trình mở rộng, nhưng chúng không phải là điểm đến cuối cùng .

Khả năng mở rộng không phải là khoảng một triệu TPS

Trước khi nói về số liệu khả năng mở rộng, hãy làm rõ một vài điều về giao dịch mỗi giây (TPS). Trong số tất cả những thứ có sẵn, TPS có lẽ là số liệu ít có ý nghĩa nhất để xem xét như một phương tiện so sánh. Các giao dịch có nhiều hình dạng và kích thước khác nhau. Mặc dù điều này đúng với Cardano, nhưng nó thậm chí còn cần thiết hơn khi so sánh hai hệ thống khác nhau đáng kể.

Nghĩ về đường cao tốc và xe cộ. Người ta có thể xem có bao nhiêu 'Xe mỗi giây' (VPS) mà đường cao tốc có thể xử lý giữa hai điểm. Tuy nhiên, nếu không có định nghĩa chung về phương tiện là gì, thì việc so sánh 10 VPS với 100 VPS dường như là vô nghĩa. Nếu 10 chiếc xe trong ví dụ đề cập đến những chiếc xe tải chở hàng lớn, liệu có hợp lý khi so sánh chúng với 100 chiếc xe tay ga về khả năng giao hàng của chúng không? Điều này cũng áp dụng cho các giao dịch. Một giao dịch mang hàng trăm tài sản và đầu ra gốc chắc chắn không giống như một giao dịch thanh toán đơn lẻ giữa hai tác nhân.

Sử dụng TPS làm thước đo trong cùng ngữ cảnh (ví dụ: để so sánh hai phiên bản của node Cardano) là có ý nghĩa. Việc sử dụng nó như một phương tiện so sánh giữa các blockchains thì không.

Với ý nghĩ đó, chúng tôi khuyên bạn không chỉ nên xem xét thông lượng mà còn xem xét tính cuối cùng và tính đồng thời như là các số liệu quan trọng để xem xét và thảo luận về khả năng mở rộng:

  • Thông lượng : khối lượng dữ liệu được hệ thống xử lý trong một khoảng thời gian nhất định
  • Chung cuộc : thời gian cần thiết để kết quả của một số hành động trở thành bất biến và đúng với mọi người trong hệ thống
  • Đồng thời : khối lượng công việc có thể được thực hiện bởi các tác nhân khác nhau mà không cản trở nhau

Hydra Heads xuất sắc trong việc đạt được kết quả gần như tức thì trong một Head. Quá trình thiết lập và đóng Head có thể mất một vài khối, nhưng sau khi được thiết lập, các giao dịch có thể diễn ra nhanh chóng giữa những người tham gia hợp tác. Vì các Hydra Heads cũng sử dụng mô hình EUTXO nên chúng có thể xử lý đồng thời các giao dịch không xung đột, điều này - cùng với mạng tốt - cho phép sử dụng tối ưu các tài nguyên có sẵn. Các mô phỏng đầu tiên của giao thức Hydra Head vào năm 2020 cho thấy '1000 TPS' rất hứa hẹn. Hiện chúng tôi đang trong quá trình đánh giá việc triển khai thực tế về mặt thông lượng và tính cuối cùng.

Một lưu ý: Hydra Head là một công trình rất cục bộ trong một nhóm nhỏ người tham gia. Các nhóm này ban đầu sẽ độc lập và do đó, việc xem xét tổng thể các chỉ số riêng lẻ của họ là sai lầm. Vì các nhóm độc lập và có thể được thành lập độc lập theo ý muốn, nên dễ dàng đạt được bất kỳ con số nào bằng cách cộng chúng: mười, một nghìn, một triệu, một tỷ, v.v.

Do đó, mặc dù phiên bản đầu tiên của giao thức Hydra Head sẽ cho phép các nhóm nhỏ người tham gia mở rộng quy mô lưu lượng truy cập của họ với chi phí thấp, nhưng nó sẽ không ngay lập tức cung cấp giải pháp cho thanh toán từ người tiêu dùng đến người tiêu dùng (vi mô) toàn cầu hoặc bán hàng NFT. Tại sao? Bởi vì sự đồng thuận bên trong một Head yêu cầu mọi người tham gia "tương tác" với mọi giao dịch. Và một Head không có quy mô vô hạn với số lượng người tham gia, nếu không có thêm các số nỗ lực kỹ thuật bổ sung. Ví dụ: sự kết nối với nhau của các Hydra Head mở đường cho các mạng lưới người tham gia lớn hơn, biến các Head địa phương thành một mạng toàn cầu một cách hiệu quả. Chúng tôi đang khám phá một số ý tưởng khác để mở rộng giao thức Hydra Head nhằm mở rộng tập hợp các trường hợp sử dụng mà nó có thể bao gồm. Chúng tôi sẽ nói nhiều hơn về điều đó trong các phần tiếp theo và trong các bản cập nhật trong tương lai.

Các trường hợp sử dụng và vai trò của SPO

Vậy khi nào thì Head hữu ích? Hydra Heads phù hợp khi một nhóm nhỏ người tham gia cần xử lý nhiều tương tác nhanh. Ví dụ: hãy tưởng tượng dịch vụ API trả cho mỗi lần sử dụng, mạng riêng giữa ngân hàng với ngân hàng hoặc một cuộc đấu giá tốc độ nhanh giữa một người bán và một nhóm nhỏ những người đặt giá thầu. Các trường hợp sử dụng rất nhiều và có nhiều hình thức khác nhau. Một số nhóm có thể là Head hoạt động trong nhiều tháng, trong khi những nhóm khác có thể ngắn hơn nhiều và chỉ kéo dài vài giờ.

Nghiên cứu Hydra Head của chúng tôi vào năm 2020 đã đề xuất các nhà điều hành nhóm cổ phần (SPO) có khả năng là ứng cử viên để điều hành Hydra Heads. Tuy nhiên, vì giao thức Hydra Head đã được nghiên cứu và xây dựng như một bằng chứng về khái niệm, chúng tôi có thể khẳng định chắc chắn rằng việc nói rằng chỉ có các SPO mới nên chạy Hydra Head để đảm bảo khả năng mở rộng sổ cái là một sự hiểu lầm. Trên thực tế, các SPO không có lợi ích nội tại trong việc mở các Head giữa nhau mà không có lý do để giao dịch (ví dụ: giới hạn hoặc giao dịch NFT). Theo một cách nào đó, SPO cũng giống như bất kỳ tác nhân nào khác khi nói đến giao thức Hydra Head. Họ có thể là một người tham gia và sẵn sàng chạy Head như những người khác. Nhưng bất kỳ ai (không phải SPO) quan tâm, cũng có thể làm như vậy.

Phải thừa nhận rằng SPO có cơ sở hạ tầng hoạt động tốt và có thể là một số người dùng đầu tiên chạy các phiên bản của giao thức Hydra Head. Tuy nhiên, điều này chỉ cho phép các SPO tham gia giao dịch với nhau, điều này giới hạn các trường hợp sử dụng cho người dùng cuối. Chỉ những thiết kế hệ thống Layer 2 nâng cao như giao thức InterHydra Head mới yêu cầu người trung gian chạy cơ sở hạ tầng vì lợi ích của người dùng cuối. Trên thực tế, chúng tôi dự đoán rằng một khả năng thiết lập cho Hydra Heads sẽ cung cấp cho những người dùng được quản lý Hydra Heads dưới dạng một dịch vụ (HaaS). Chúng tôi có thể đạt được điều này mà không phải từ bỏ quyền quản lý tiền bằng cách điều hành cơ sở hạ tầng thay mặt cho người dùng cuối, những người thường không có hứng thú cũng như kỹ năng kỹ thuật để duy trì cơ sở hạ tầng đó.

Điều này rất giống với mô hình hoạt động hiện tại của các ví nhẹ và các nhà cung cấp ví nhẹ có nhiều khả năng sẽ chạy Hydra Heads về lâu dài. Hãy tưởng tượng một mạng lưới bao gồm các nhà cung cấp ví nhẹ hàng đầu trong hệ sinh thái Cardano. Các nhà cung cấp như vậy sau đó có thể tạo điều kiện thanh toán ngay lập tức và giá rẻ giữa người dùng của họ trong khi vẫn đảm bảo sự tin cậy tổng thể.

Chúng tôi cũng hình dung rằng các dịch vụ dành cho nhà phát triển và nhà cung cấp DApp sẽ có khả năng là ứng cử viên để chạy Hydra Heads. Thật vậy, các nhà phát triển DApp yêu cầu quyền truy cập vào thông tin on-chain. Vì vậy, các nhà phát triển có thể dựa vào các dịch vụ trực tuyến cung cấp đủ giao diện và thường tính phí sử dụng hàng tháng. Hydra Heads có thể cải thiện quy trình này cho phép mô hình kinh doanh phi tập trung hơn với các lệnh gọi API trả tiền cho mỗi lần sử dụng giữa các nhà cung cấp dịch vụ và nhà phát triển DApp.

Roadmap phát triển

Là một nhóm các giao thức sẽ được phân phối theo thời gian và sẽ liên quan đến các thiết kế hệ thống Layer 2 được trau chuốt hơn trên giao thức Hydra Head, điều quan trọng là chúng tôi phải thường xuyên tham gia với các nhà phát triển của hệ sinh thái Cardano. Đây không phải là về một bản phát hành 'vụ nổ lớn' mà là một chu kỳ phát hành lặp đi lặp lại. Chúng tôi cần hiểu những thách thức của nhà phát triển, đảm bảo đáp ứng nhu cầu của họ và cuối cùng đảm bảo rằng chúng tôi đang xây dựng một thứ gì đó hữu ích. Đây là lý do tại sao chúng tôi đang phát triển Hydra Head như một dự án GitHub mã nguồn mở, bắt đầu với một bằng chứng ban đầu về khái niệm vào năm ngoái. Nhằm mục đích hướng tới một chu kỳ phát hành thường xuyên và thường xuyên, chúng tôi đã phát hành bản xem trước dành cho nhà phát triển ban đầu vào tháng 9 (0.1.0), sau đó là lần lặp thứ hai (0.2.0) trước Giáng sinh. Bản cập nhật tiếp theo (0,3,0) sẽ đến vào tháng Hai (2022). 

Chúng tôi rất vui mừng thông báo rằng Roadmap hiện cũng đang có sẵn trên Github! là một kênh để tham gia với cộng đồng các nhà phát triển của chúng tôi. Đồng thời minh bạch về quá trình nỗ lực phát triển của chúng tôi, bạn sẽ tìm thấy các vấn đề về tính năng, sự kiện quan trọng và bảng dự án có sẵn trên kho lưu trữ Hydra Head.

Mặc dù trọng tâm của chúng tôi là tạo ra các bản phát hành có ý nghĩa và đầy đủ tính năng khi chúng tôi triển khai trên testnet và sau này là trên mainnet với phiên bản 1.0.0. Roadmap cũng bao gồm các ngày dự kiến. Những dự báo này xuất phát từ cả công việc đã hoàn thành cho đến nay và ước tính của chúng tôi về công việc còn lại ở phía trước. Chúng tôi sẽ thường xuyên phản ánh nội dung và ngày tháng một cách nhanh chóng để giữ cho Roadmap chính xác nhất có thể.

Phản hồi của cộng đồng là điều cần thiết

Chúng tôi sẽ đo lường sự thành công của mình bằng cách lưu lượng truy cập sẽ chạy trong Hydra Heads so với mạng chính Cardano. Điều này có nghĩa là chúng tôi không thể đạt được mục tiêu của mình nếu không có cộng đồng và Hydra chỉ có thể thành công nếu nó hữu ích cho người dùng Cardano hiện tại và tương lai.

Tùy thuộc vào thời gian, kỹ năng và chuyên môn của bạn, chúng tôi hoan nghênh bạn tham gia với chúng tôi để chia sẻ câu hỏi, phản hồi hoặc đóng góp vào nỗ lực phát triển. Đây là cơ hội tuyệt vời để cùng nhau xây dựng toàn bộ hệ sinh thái gồm các giải pháp Layer 2 cho Cardano. Giao thức Hydra Head sẽ là khối xây dựng đầu tiên của nhiều giải pháp tiên tiến ra đời. Tại IOG, chúng tôi đã bắt đầu làm việc trên một số trong số chúng, nhưng một số chắc chắn sẽ được (và may mắn thay!) Được xây dựng bởi các thành viên trong cộng đồng của chúng tôi, mà chúng tôi mong muốn được hỗ trợ.

Chúng tôi sẽ nói chi tiết hơn về Hydra Heads trong bản cập nhật phát triển giữa tháng Hai. Đăng ký kênh Youtube của chúng tôi và tham gia cùng chúng tôi!

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


Picture