Cointime

Download App
iOS & Android

CCIP—Đạt được sự tương tác hoàn hảo giữa DeFi chuỗi chéo, NFT và trò chơi?

Validated Project

Tác giả: Chainlink Biên dịch: Cointime.com QDD

Giao thức tương tác chuỗi chéo (CCIP) của Chainlink là một giao thức liên lạc chuỗi chéo có mục đích chung mới cung cấp cho các nhà phát triển hợp đồng thông minh khả năng truyền dữ liệu và mã thông báo giữa các mạng chuỗi khối theo cách giảm thiểu độ tin cậy.

Hiện tại, các ứng dụng được triển khai trên nhiều chuỗi khối bị phân mảnh tài sản, thanh khoản và người dùng. Với CCIP, các nhà phát triển có thể tận dụng chuyển mã thông báo và nhắn tin tùy ý để triển khai các ứng dụng phi tập trung bao gồm nhiều hợp đồng thông minh được triển khai trên nhiều mạng chuỗi khối khác nhau tương tác để tạo thành một ứng dụng thống nhất. Mẫu thiết kế Web3 này được gọi là hợp đồng thông minh xuyên chuỗi .

Dưới đây là một vài ví dụ về việc sử dụng CCIP để xây dựng các ứng dụng chuỗi chéo, bao gồm các lĩnh vực như DeFi, ENS chuỗi chéo, đúc NFT trên nhiều chuỗi và trò chơi chuỗi chéo. Các ví dụ về trường hợp sử dụng này chứng minh tiềm năng của CCIP trong việc chuyển đổi các ứng dụng chuỗi đơn hoặc đa chuỗi truyền thống thành các dApp chuỗi chéo mới mạnh mẽ.

Tất cả các ví dụ đều có sẵn trên GitHub của Chainlink Labs và có thể được triển khai cũng như tương tác ngay bây giờ.

DeFi: khả năng kết hợp chuỗi chéo

DeFi là một lớp ứng dụng Web3 có thể chuyển đổi thông qua các hợp đồng thông minh xuyên chuỗi. Trong thế giới DeFi hiện tại, nhiều ứng dụng được triển khai trên một chuỗi hoặc trên nhiều chuỗi, mỗi phiên bản yêu cầu nhóm người dùng và tính thanh khoản riêng. Trên mỗi chuỗi, có khái niệm về khả năng kết hợp DeFi và "tiền tệ Lego", nơi các nhà phát triển có thể kết nối và tích hợp với các giao thức khác nhau được triển khai trên một mạng cụ thể mà không cần được phép tạo các trường hợp sử dụng và sản phẩm tài chính mới.

Bằng cách kích hoạt các hợp đồng thông minh xuyên chuỗi và chuyển mã thông báo xuyên chuỗi, CCIP tăng theo cấp số nhân khái niệm về thành phần DeFi. Bởi vì giờ đây, tính tổng hợp không còn giới hạn ở mỗi chuỗi và không còn giới hạn ở giao thức DeFi trên chuỗi đó, mà tất cả các ứng dụng DeFi trên tất cả các chuỗi giờ đây có thể được kết hợp theo nhiều cách khác nhau để tạo ra các sản phẩm tài chính mới. Các ứng dụng và giao thức không còn bị giới hạn trong các chuỗi mà chúng cư trú.

Khả năng kết hợp giữa các chuỗi này làm cho hệ sinh thái của các ứng dụng DeFi trở nên hoàn thiện và được kết nối với nhau hơn, đồng thời tính thanh khoản, người dùng và sản phẩm tài chính trên tất cả các chuỗi có thể được sử dụng bởi tất cả các giao thức. Sử dụng phép loại suy "tiền tệ Lego", CCIP cho phép bạn kết hợp tất cả các bộ Lego khác nhau và sử dụng chúng như một bộ duy nhất, thống nhất để xây dựng các thỏa thuận tài chính.

Một dịch vụ tài chính DeFi cụ thể sẽ được hưởng lợi rất nhiều từ CCIP là cho vay. Trong thế giới hiện tại, hầu hết các giao thức cho vay DeFi đều yêu cầu bạn ký gửi tài sản thế chấp trên chuỗi triển khai giao thức mà bạn muốn sử dụng. Nhưng nhiều người dùng DeFi sử dụng nhiều giao thức DeFi trên nhiều chuỗi khối khác nhau và tài sản được trải rộng trên tất cả chúng. Những người dùng này thường theo đuổi tỷ lệ hoàn vốn tốt nhất, điều chỉnh vị trí của họ để tối đa hóa lợi nhuận, nhưng trong nhiều trường hợp, những tài sản này bị khóa trong các giao thức trên một chuỗi khi họ có cơ hội mang lại lợi nhuận tốt hơn trên một chuỗi khác. Nếu họ muốn tham gia vào các cơ hội lợi nhuận tốt hơn, họ cần thanh lý các vị thế của mình trên một chuỗi, kết nối tài sản với chuỗi mới theo cách thủ công, gửi các tài sản đó vào giao thức trên chuỗi mới, sau đó thực hiện quy trình tương tự khi họ muốn đưa tài sản trở lại chuỗi ban đầu - có rất nhiều bước, chỉ để chuyển tài sản sang giao thức mới nhằm theo đuổi các cơ hội lợi nhuận.

Những tình huống như thế này là lúc CCIP có thể giúp tạo ra các giao thức DeFi thực sự xuyên chuỗi, cho phép người dùng sử dụng liền mạch các tài sản kỹ thuật số trên một chuỗi làm tài sản thế chấp cho các giao thức DeFi trên một chuỗi khác, tất cả đều được CCIP xử lý ở cấp giao thức mà không yêu cầu người dùng thực hiện các thao tác thủ công hoặc thêm các giả định về độ tin cậy do sử dụng cầu nối của bên thứ ba. Sử dụng CCIP, các giao thức DeFi có thể cho phép người vay ký gửi tài sản trên chuỗi (nguồn) hoặc chuyển chúng trực tiếp đến chuỗi mục tiêu, sau đó cung cấp những tài sản đó để vay trên chuỗi mục tiêu. Khi họ muốn ngừng sử dụng tài sản của mình trên chuỗi mục tiêu, các giao thức DeFi có thể sử dụng CCIP để rút các vị trí của họ và chuyển tài sản trở lại chuỗi ban đầu. Đây là sức mạnh của DeFi do CCIP trao quyền.

Trong ví dụ này, chúng ta có một hợp đồng thông minh DeFi Sender.sol được triển khai trên testnet Avalanche Fuji. Hợp đồng này chấp nhận tiền gửi của người dùng dưới dạng mã thông báo; nó có thể được bọc ETH, stablecoin hoặc bất kỳ mã thông báo nào có giá trị thực. Sender.sol có chức năng sendMessage sử dụng CCIP để thực hiện chuyển có thể lập trình mã thông báo đã chỉ định và thông báo tới chuỗi mục tiêu. Trong ví dụ này, chúng tôi gửi các mã thông báo được chỉ định tới mạng thử nghiệm Ethereum Sepolia và bao gồm thông báo EOA (Tài khoản thuộc sở hữu bên ngoài) của người dùng cuối:

Lưu ý: Tất cả các ví dụ về mã trong bài viết này chỉ mang tính minh họa và được cung cấp "nguyên trạng" mà không có bảo đảm dưới bất kỳ hình thức nào, dù rõ ràng hay ngụ ý. Việc sử dụng các đoạn mã này chịu sự điều chỉnh của các điều khoản dịch vụ của chúng tôi được liệt kê tại chain.link/terms .

Trên mạng Ethereum Sepolia, chúng tôi đã triển khai một hợp đồng thông minh có tên là Protocol.sol. Hợp đồng này nhận thông báo chuyển mã thông báo có thể lập trình CCIP và thực hiện các hành động sau:

l Đúc và kiểm soát các đồng tiền ổn định có thể được vay bằng tài sản thế chấp.

l Đọc từ thông báo CCIP địa chỉ hợp đồng (trên chuỗi mục tiêu) của các mã thông báo được chỉ định đã được gửi từ chuỗi nguồn (làm tài sản thế chấp cho khoản vay) và số tiền gửi.

l Địa chỉ ví của người dùng cuối (người gửi tiền/người vay) cũng được đọc từ nội dung tin nhắn CCIP. Stablecoin sẽ được đúc đến địa chỉ này và địa chỉ này cũng được sử dụng để theo dõi tiền gửi và cho vay.

l Lưu trữ thông tin này trong một hợp đồng thông minh.

Khi Protocol.sol đã nhận và xử lý thành công thông báo chuyển mã thông báo có thể lập trình CCIP này, người dùng có thể vay tiền bằng cách thực hiện thủ công chức năng vayUSDC. Chức năng này cho phép người dùng sử dụng mã thông báo đã chuyển làm tài sản thế chấp để đúc và vay một lượng stablecoin tương đương (ví dụ: USDC) cho EOA của người vay. Trong ví dụ này, chúng tôi giả định tỷ lệ tài sản thế chấp là 70%, nghĩa là giao thức sẽ cho vay không quá 70% giá trị tài sản thế chấp:

Khi Protocol.sol đã nhận và xử lý thành công thông báo chuyển mã thông báo có thể lập trình CCIP này, người dùng có thể vay tiền bằng cách thực hiện thủ công chức năng vayUSDC. Chức năng này cho phép người dùng sử dụng mã thông báo đã chuyển làm tài sản thế chấp để đúc và vay một lượng stablecoin tương đương (ví dụ: USDC) cho EOA của người vay. Trong ví dụ này, chúng tôi giả định tỷ lệ tài sản thế chấp là 70%, nghĩa là giao thức sẽ cho vay không quá 70% giá trị tài sản thế chấp:

Sau khi người dùng vay thành công UDSC làm tài sản thế chấp trên Sepolia, họ có thể sử dụng số tiền này trong bất kỳ giao thức DeFi nào trên mạng Sepolia nếu cần. Sau đó, khi hoàn tất, họ có thể hoàn trả lại Protocol.sol, điều này sẽ khiến mã thông báo stablecoin bị đốt cháy, sau đó gửi thông báo chuyển mã thông báo có thể lập trình CCIP trở lại hợp đồng Sender.sol trên mạng Fuji, thông báo này sẽ trả lại mã thông báo bị khóa đến địa chỉ được chỉ định trên mạng Fuji. Lưu ý rằng trước tiên người dùng phải phê duyệt Protocol.sol với tư cách là "người chi tiêu" cho stablecoin mà người dùng vay để giao thức ghi số tiền đã vay và đây là cách thực hiện hoàn trả:

Bạn có thể tìm thấy toàn bộ mã nguồn và hướng dẫn cho ví dụ này trong kho lưu trữ GitHub của CCIP-DeFi Lending .

DeFi: Bảo vệ thanh lý chuỗi chéo

Tiếp tục chủ đề về DeFi và các giao thức cho vay, nhiều người dùng DeFi nắm giữ nhiều vị trí trên nhiều giao thức DeFi khác nhau và nhiều chuỗi khối. Điều này gây khó khăn cho việc theo dõi danh mục đầu tư và các vị trí DeFi. Với nhiều nền tảng bên thứ ba, trình theo dõi và trình tổng hợp lợi nhuận hiện có sẵn, người dùng DeFi có thể chỉ cần triển khai tài sản thế chấp và để các nền tảng bên thứ ba này xử lý việc triển khai và chuyển giao tài sản để tối ưu hóa lợi nhuận của người dùng. Mặc dù các công cụ này thực hiện rất tốt việc trừu tượng hóa một số điểm phức tạp của DeFi, giúp người dùng dễ dàng kiếm được lợi nhuận, nhưng chúng không giảm thiểu sự tin cậy. Người dùng ủy quyền cho giao thức để kiếm lợi nhuận và đảm bảo các vị trí vẫn được thế chấp để tránh bị thanh lý. Ngoài ra, nếu người dùng cuối muốn có một số hình thức bảo vệ thanh lý, họ cần triển khai tài sản gốc trên tất cả các chuỗi khối có vị trí DeFi để đảm bảo thế chấp cho các vị trí vay và cho vay trên mỗi chuỗi.

Các giao thức DeFi, ứng dụng giám sát vị trí và công cụ tổng hợp lợi nhuận có thể tăng cường bảo vệ thanh lý chuỗi chéo thông qua CCIP và chuyển và nhắn tin mã thông báo chuỗi chéo. Điều này có nghĩa là người dùng có thể có nhiều giao thức DeFi với các vị trí mở trên nhiều chuỗi khối và sau đó họ có thể phân bổ tài sản trên một chuỗi làm tài sản thế chấp bổ sung trong trường hợp một hoặc nhiều khoản vay yêu cầu thêm tiền để đảm bảo tài sản thế chấp. Đây là cách nó hoạt động ở mức cao:

l Một người dùng cuối DeFi có các vị trí nợ trên nhiều chuỗi (ví dụ: Ethereum, Avalanche, Polygon), nhưng họ giữ thanh khoản của mình một cách an toàn trong một kho tiền trên một chuỗi (ví dụ: Aave trên Ethereum).

l Đối với vị trí nợ của người dùng trên mỗi chuỗi, việc triển khai Tự động hóa Chainlink của người dùng sẽ theo dõi tỷ lệ nợ của vị trí.

l Nếu Tự động hóa thấy rằng bất kỳ khoản vay nào của họ gần đến ngưỡng thanh lý, thì Tự động hóa sẽ gửi thông báo CCIP đến chuỗi thanh khoản của người dùng (ví dụ: Ethereum), yêu cầu gửi tiền để lấp đầy vị trí nợ.

l Khi một hợp đồng trên chuỗi thanh khoản nhận được thông báo CCIP, nó sẽ rút thanh khoản từ Aave và gửi một thông báo CCIP mới có tiền trở lại chuỗi yêu cầu. Thông báo chứa đủ thông tin và mã thông báo để cấp vốn cho vị thế và tránh tình trạng thanh lý.

Kết quả là người dùng có thể có các vị trí nợ trên nhiều chuỗi trong khi vẫn duy trì tính thanh khoản trên một chuỗi. Toàn bộ quá trình được giảm thiểu mức độ tin cậy, người dùng vẫn có quyền kiểm soát 100% đối với các khoản nợ của họ và họ không cần phải rút và chuyển tiền theo cách thủ công đến các chuỗi khác nhau. Đây là cách nó hoạt động:

Kết quả là người dùng có thể có các vị trí nợ trên nhiều chuỗi trong khi vẫn duy trì tính thanh khoản trên một chuỗi. Toàn bộ quá trình được giảm thiểu mức độ tin cậy, người dùng vẫn có quyền kiểm soát 100% đối với các khoản nợ của họ và họ không cần phải rút và chuyển tiền theo cách thủ công đến các chuỗi khác nhau. Đây là cách nó hoạt động:

Chainlink Automation giám sát tất cả các chuỗi nơi người dùng có vị trí nợ và xác định xem có thông báo gửi tiền hay không. Hàm PerformanceUpkeep sẽ gửi một thông báo CCIP đến kho tiền trên chuỗi giữ thanh khoản yêu cầu gửi tiền, nếu cần.

Sau đó, kho tiền trên các chuỗi có tính thanh khoản sẽ nhận được yêu cầu cấp tiền và kiểm tra xem liệu có đủ tiền được trả lại cho chuỗi yêu cầu hay không hoặc liệu một số thanh khoản có nên được lấy từ giao thức DeFi (ví dụ: Aave) để đảm bảo gửi đủ tiền hay không. Sau đó, nó bắt đầu chuyển mã thông báo có thể lập trình CCIP có chứa số tiền được yêu cầu và ID tin nhắn của tin nhắn nhận được ban đầu (để hợp đồng mục tiêu trên chuỗi khối yêu cầu tiền biết số tiền đó là về yêu cầu nào):

Cuối cùng, một hợp đồng thông minh trên blockchain yêu cầu tiền để bổ sung vị thế nợ sẽ nhận được chuyển khoản mã thông báo có thể lập trình CCIP, khớp ID yêu cầu với yêu cầu ban đầu của nó, đồng thời rút và gửi tiền vào vị thế nợ để tăng khả năng thế chấp của khoản vay và tránh bị thanh lý:

Ví dụ này minh họa cách CCIP có thể được sử dụng trong các giao thức DeFi và ứng dụng giám sát vị trí DeFi để cung cấp cho người dùng khả năng bảo vệ thanh lý giảm thiểu độ tin cậy đối với các vị thế nợ của họ trên nhiều chuỗi khối, đồng thời cho phép họ giữ tiền và thanh khoản trên một chuỗi khối duy nhất.

Bạn có thể tìm thấy toàn bộ mã nguồn và hướng dẫn trong kho lưu trữ GitHub của CCIP Liquidation Protector .

Dịch vụ tên miền chuỗi chéo

Các dịch vụ tên phi tập trung như ENS rất phổ biến trên Web3 vì chúng giúp dịch các tên con người có thể đọc được thành địa chỉ ví. Lý tưởng nhất là các dịch vụ tên không nên giới hạn trong một chuỗi, nhưng mỗi tên đã đăng ký sẽ phổ biến và cùng tồn tại trên tất cả các chuỗi Ethereum, sidechain, lớp thứ hai và chuỗi ứng dụng. Điều này sẽ cho phép người dùng có danh tính thống nhất trên toàn hệ sinh thái Ethereum, thay vì phải đăng ký miền với nhiều dịch vụ đặt tên hoặc sử dụng các giải pháp tương tác giảm thiểu độ tin cậy.

Tuy nhiên, để điều này xảy ra, dịch vụ tên cần giao tiếp với các chuỗi khối khác. Phiên bản dịch vụ đặt tên trên mỗi chuỗi cần được thông báo khi một tên mới được đăng ký và cần một cách để thực hiện "tra cứu" sổ đăng ký tên toàn cầu, bao gồm tất cả các chuỗi.

Ví dụ này cho thấy cách xây dựng ứng dụng dịch vụ tên miền chuỗi chéo đơn giản hóa trong đó người dùng có thể đăng ký tên miền trên một chuỗi, sau đó truyền đăng ký đó qua nhiều chuỗi khác và phân giải tên thành địa chỉ trên bất kỳ chuỗi nào.

Bước đầu tiên là triển khai các hợp đồng CrossChainNameServiceRegister và CrossChainNameServiceLookup trên mạng Ethereum Sepolia. Mạng này sẽ đóng vai trò là mạng "chính" trên đó tất cả các đăng ký sẽ được thực hiện và lan truyền đến các chuỗi khác.

Khi bạn đăng ký một tên miền .ccns mới, hợp đồng CrossChainNameServiceRegister sẽ sử dụng CCIP để gửi một thông báo đến các chuỗi khối được hỗ trợ khác với thông tin về tên miền .ccns đã đăng ký:

Trên tất cả các chuỗi nhận được hỗ trợ, hãy triển khai hợp đồng CrossChainNameServiceReceiver. Hợp đồng này sẽ nhận các tên miền .ccns đã đăng ký từ hợp đồng CrossChainNameServiceRegister và lưu trữ chúng trong hợp đồng CrossChainNameServiceLookup được triển khai trên chuỗi:

Cuối cùng, hợp đồng CrossChainNameServiceLookup được triển khai trên tất cả các chuỗi khối, bao gồm chuỗi đăng ký (trong trường hợp này là Sepolia) và tất cả các chuỗi mục tiêu. Hợp đồng này được sử dụng để lưu trữ tất cả các điều khiển .ccns đã đăng ký và hoạt động như một giao diện để thực hiện tra cứu nhằm chuyển đổi tên thành địa chỉ:

Sử dụng mẫu thiết kế đơn giản này, có thể tạo một dịch vụ tên miền chuỗi chéo đơn giản, nơi người dùng có thể đăng ký tên miền một lần, sau đó sở hữu và sử dụng nó trên nhiều chuỗi khối.

Bạn có thể tìm thấy toàn bộ mã nguồn và hướng dẫn trong kho lưu trữ GitHub của Dịch vụ tên chuỗi chéo .

NFT chuỗi chéo (NFT chuỗi chéo)

NFT là một trong những trường hợp sử dụng phổ biến nhất cho Web3. Mỗi dự án NFT thường nằm trên một chuỗi khối hoặc bản thân dự án được triển khai trên nhiều chuỗi và nếu người dùng muốn sở hữu một NFT trên nhiều chuỗi, họ phải đúc nó nhiều lần.

Thông qua các thông báo tùy ý CCIP, các dự án NFT có thể cho phép tài sản của họ được đúc chỉ một lần trên một chuỗi duy nhất, được thanh toán một lần bởi người đúc và sau đó được truyền bá trên các chuỗi khối khác. Điều này có nghĩa là người dùng có thể sở hữu và chia sẻ NFT của họ bất kể họ đang sử dụng mạng nào. CCIP cũng có thể được sử dụng để "đốt và đúc" NFT trên các chuỗi khác nhau, cho phép người dùng chuyển NFT của họ từ chuỗi này sang chuỗi khác. Đây là một ví dụ về kịch bản đầu tiên:

Dưới đây là minh họa về một hợp đồng thông minh NFT đơn giản:

Hợp đồng SourceMinter được triển khai trên chuỗi nguồn và chứa logic trong chức năng đúc của nó để gửi thông báo chuỗi chéo CCIP đến chuỗi khối mục tiêu với chữ ký hàm đúc được mã hóa ABI từ hợp đồng thông minh MyNFT.sol:

Hợp đồng DestinationMinter sẽ nhận được một thông báo liên chuỗi CCIP với chữ ký chức năng đúc tiền được mã hóa ABI dưới dạng tải trọng và sử dụng chữ ký này để gọi chức năng đúc tiền của hợp đồng thông minh MyNFT. Sau đó, hợp đồng thông minh MyNFT sẽ đúc NFT mới vào tài khoản msg.sender thông qua chức năng mint() của hợp đồng thông minh SourceMinter, đây là cùng một địa chỉ tài khoản được sử dụng khi đúc NFT trên chuỗi nguồn:

Kết quả cuối cùng là người dùng đúc NFT hiện sở hữu NFT đó trên nhiều chuỗi và họ chỉ cần đúc và thanh toán một lần. Nếu dự án NFT muốn duy trì tính không thể thay thế nghiêm ngặt trên tất cả các chuỗi khối, giải pháp này cũng có thể dễ dàng sửa đổi để đúc NFT trên chuỗi khối mục tiêu và hủy nó trên chuỗi nguồn, đảm bảo chỉ có một phiên bản trên tất cả các chuỗi khối.

Bạn có thể tìm thấy toàn bộ mã nguồn và hướng dẫn trong kho lưu trữ Cross-Chain NFT GitHub.

Trò chơi: Tic Tac Toe xâu chuỗi

Trong vài năm trở lại đây, game Web3 đã trở nên rất phổ biến. Tuy nhiên, giống như DeFi, trò chơi cũng rất phi tập trung và trò chơi cũng như tài sản của chúng thường chỉ khả dụng trên các chuỗi cụ thể. Nhưng cũng giống như chơi game truyền thống, mục tiêu cuối cùng hoặc trải nghiệm tối ưu là có những game thủ có thể chơi cùng nhau bất kể họ đang chơi trên phần cứng hay phần mềm nào. Giống như game thủ PC có thể chơi với chủ sở hữu bảng điều khiển Xbox, không có lý do gì người chơi trên Polygon không thể chơi với người chơi trên Avalanche. Điều này được gọi là chơi đa nền tảng .

Điều này rất tốt cho các trò chơi Web3 theo lượt và các trò chơi khác không yêu cầu tương tác nhanh trong thời gian thực. Các trò chơi Web3 bị phân mảnh người dùng, các game thủ thích chơi theo chuỗi họ chọn và sử dụng tài sản kỹ thuật số ưa thích của họ. CCIP có thể làm cho các trò chơi Web3 thực sự xuyên chuỗi, tạo điều kiện thuận lợi cho việc chuyển tài sản trên chuỗi và cho phép trạng thái trò chơi được chia sẻ trên nhiều chuỗi khối, cho phép người chơi chơi với nhau hoặc hợp tác với nhau bất kể họ chọn chuỗi nào. Nếu bạn muốn thu hút càng nhiều người chơi càng tốt, thì tốt nhất là triển khai trò chơi của bạn trên nhiều chuỗi và thiết kế trò chơi sao cho tất cả người chơi có thể đấu với nhau hoặc hợp tác với nhau.

Một minh họa đơn giản về mẫu thiết kế trò chơi chuỗi chéo này có thể được hiển thị với trò chơi chiến lược theo lượt như Tic Tac Toe. Trong ví dụ này , chúng ta có một hợp đồng thông minh trò chơi được triển khai trên nhiều chuỗi khối. Người dùng có thể bắt đầu trò chơi trên chuỗi họ chọn, sau đó chia sẻ ID phiên trò chơi với bạn bè của họ. Bạn bè của họ có thể tham gia trò chơi từ một chuỗi khác nếu họ muốn. Khi tạo trò chơi, CCIP sẽ chia sẻ thông tin chi tiết và trạng thái ban đầu của trò chơi với tất cả các chuỗi khác:

Sau khi người chơi đầu tiên thực hiện một bước sau khi bắt đầu trò chơi, người chơi thứ hai trên chuỗi khối khác sẽ thấy trạng thái trò chơi được cập nhật trên hợp đồng thông minh trò chơi của họ sau khi xử lý thành công thông báo CCIP. Sau đó, Người chơi 2 sẽ thực hiện bước của họ, điều này sẽ tạo thông báo CCIP gửi lại cho Người chơi 1 và cập nhật trạng thái trò chơi trên chuỗi của họ:

Sau khi người chơi đầu tiên thực hiện một bước sau khi bắt đầu trò chơi, người chơi thứ hai trên chuỗi khối khác sẽ thấy trạng thái trò chơi được cập nhật trên hợp đồng thông minh trò chơi của họ sau khi xử lý thành công thông báo CCIP. Sau đó, Người chơi 2 sẽ thực hiện bước của họ, điều này sẽ tạo thông báo CCIP gửi lại cho Người chơi 1 và cập nhật trạng thái trò chơi trên chuỗi của họ:

Người chơi 1 sau đó sẽ thấy trạng thái trò chơi được cập nhật và thực hiện lại bước của họ. Khi người chơi thực hiện hành động, các thông báo CCIP chuỗi chéo sẽ được chuyển qua lại giữa các chuỗi cho đến khi trò chơi đi đến hồi kết và người chiến thắng được tuyên bố. Điều quan trọng cần lưu ý là hợp đồng thông minh trò chơi trên cả hai chuỗi duy trì trạng thái trò chơi và sử dụng CCIP để gửi và nhận tin nhắn nhằm đảm bảo trạng thái trò chơi vẫn nhất quán trên cả hai chuỗi khối:

Bạn có thể tìm thấy toàn bộ mã nguồn và hướng dẫn cho ví dụ này trong kho lưu trữ GitHub của CCIP Tic Tac Toe .

Tóm lại là

Từ DeFi và NFT chuỗi chéo đến các trò chơi chạy trên nhiều chuỗi khối, CCIP cho phép thực hiện các hợp đồng thông minh chuỗi chéo, nhận ra khả năng kết hợp DeFi thực sự trên tất cả các chuỗi khối và nhận ra một Web3 thống nhất hơn.

Các bình luận

Tất cả bình luận

Recommended for you