Walrus 链下消息格式 #103
lispking
started this conversation in
Show and tell
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
我们在此记录 Walrus 链下消息格式。
签名
所有认证或签名的消息应使用以下方案签名:
BLS_SIG_BLS12381G2_XMD:SHA-256_SSWU_RO_NUL_
公钥是48字节的vector。
签名是96字节的vector。
签名消息头
所有消息必须以3 + 4字节的头开始:
intent类型如下所列,版本目前为0,存储的app id为3。epoch是签名存储节点在签署消息时所在的存储epoch。
Intent类型(在此添加):
const PROOF_OF_POSSESSION_MSG_TYPE: u8 = 0;
const BLOB_CERT_MSG_TYPE: u8 = 1;
const INVALID_BLOB_ID_MSG_TYPE : u8 = 2;
PROOF_OF_POSSESSION消息
body包含sui地址,后跟签名者的bls公钥(编码为48字节固定大小数组)。
BLOB_CERT消息
body是一个blob的blob_id : u256 (32字节)。存储节点认证了在消息epoch中分配给它的所有分片已被接收、检查并持久化存储。
INVALID_BLOB_ID
body是一个blob的blob_id : u256 (32字节)。存储节点认证它已验证了不一致性证明,并且blob id是无效的。
源文链接:https://github.com/MystenLabs/walrus-docs/blob/main/contracts/walrus/docs/msg_formats.txt
进一步解读:https://learnblockchain.cn/article/10014
Beta Was this translation helpful? Give feedback.
All reactions