cosmos-ibc-store
Cosmos-ibc存储
cosmos ibc是实现跨链的协议。其中会涉及到一些数据存储,这里对相关存储进行归纳。
存储使用key-value形式。
cosmos-sdk版本为fedekunze/ibc - 94ffaeb9f746d13b68678423d4aee0828f652fd4
- Client。
Key | Value | 备注 |
---|---|---|
client/clientID /roots/height |
Hash-root | 用于merkle树验证的数据结构 |
client/clientID /consensusState |
consensusState | 另一条链的共识状态,包含root、验证节点、区块高度等信息 |
clients/clientID /state |
bool | clientID是否由于恶意而被冻结(不可用) |
clients/clientID /type |
[]byte | 另一条链的共识算法(tendermint) |
client用于验证/存储/更新另一条链的信息状态
- Connection
Key | Value | 备注 |
---|---|---|
connections/connectionID |
Connection(state/clientID/counterParty) | 连接信息 |
clients/clientID /connections |
[]connectionIDs | clientID下的连接们 |
- Channel
Path = ports/portID
/channel/channelID
Key | Value | 备注 |
---|---|---|
Path | Channel(state/ordering/counterParty/connHops) | 通道信息 |
Path/nextSequenceSend | Sequence(uint64) | |
Path/nextSequenceRecv | Sequence(uint64) |
- Packet