日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

跨链Cosmos(11) 消息结构

發布時間:2025/3/21 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 跨链Cosmos(11) 消息结构 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1. 普通交易Msg

Cosmos的普通交易和以太坊類似,也是一個帳戶模型,有著From,To和Amount關鍵字段。

type MsgSend struct { FromAddress github_com_cosmos_cosmos_sdk_types.AccAddress ToAddress github_com_cosmos_cosmos_sdk_types.AccAddress Amount github_com_cosmos_cosmos_sdk_types.Coins}

2. 跨鏈交易

2.1 MsgPacket

定義了IBC協議的跨鏈交易數據包,包含跨鏈交易、目的鏈的超時高度和時間戳

/ IBC 數據包

type MsgPacket struct{ Packet Proof commitmentexported.Proof ProofHeight uint64 Signer sdk.AccAddress}

2.2 跨鏈數據包

完成上述的一系列握手之后,應用層便可以在Channel上發送自己的數據了。Cosmos規定了發送跨鏈交易的一些必要字段,如下圖:

// 數據包定義了一種通過IBC跨不同鏈傳輸數據的類型 type Packet struct{ Data []byte // 跨鏈交易數據Sequence uint64 // number對應于發送和接收的順序,必須按序發送和接收 SourcePort string // 標識來源鏈上的端口 SourceChannel string // 標識來源鏈上的通道 DestinationPort string // 標識目的鏈上的端口DestinationChannel string // 標識目的鏈上的通道 TimeoutHeight uint64 // 標記數據包超時的區塊高度TimeoutTimestamp uint64 // 數據包超時的區塊時間戳 }

TimeoutHeight和TimeoutTimestamp是Cosmos提供的一種超時機制。如果某個區塊高度或者某個時間這筆跨鏈交易還沒有完成的話,用戶能夠指定將這筆交易回退(比如是跨鏈轉賬的話,可以防止資金長時間凍結)。

2.3 MsgAcknowledgement

定義IBC協議的響應數據包,包含跨鏈交易執行成功或者失敗的狀態。

來源鏈通過MsgAcknowledgement數據包,可以判斷跨鏈交易是否執行成功,如果執行失敗來源鏈做出相對的回滾。

// IBC響應數據包 type MsgAcknowledgement struct {Packet Acknowledgement []byte Proof commitmentexported.Proof ProofHeight uint64 Signer sdk.AccAddress}

2.4 MsgTimeout

定義IBC協議的超時數據包,包含下一個接收包的序列號。

來源鏈通過MsgTimeout數據包,可以判斷一個跨鏈交易的數據包是否超時,如果超時來源鏈做出相對的回滾。

// IBC超時數據包 type MsgTimeout struct { Packet NextSequenceRecv uint64 Proof commitmentexported.Proof ProofHeight uint64 Signer sdk.AccAddress}

2.5 跨鏈存在性證明

struct { Proof commitmentexported.Proof //Merkle Proof ProofHeight uint64 //區塊高度 Signer sdk.AccAddress //發送者的地址,跨鏈雙方維護對方的輕節點,提供類似SPV證明的機制 }

總結

以上是生活随笔為你收集整理的跨链Cosmos(11) 消息结构的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。