KCoin項目的非白皮書
944
2025-04-02
1. 共享配置是存儲在每一個通道的配置交易集合中,這個集合通常以configtx為前綴。
2. 區塊的類型是HeaderType_CONFIG,區塊中沒有其他交易,我們稱這種區塊為Configuration Blocks,第一個區塊也就是創世區塊就是配置區塊。
3. 配置的原型結構存儲在fabric/protos/common/configtx.proto,類型為HeaderType_CONFIG的Envelope將ConfigEnvelope消息編碼為?Payload?data?字段。ConfigEnvelope原型定義如下:
message?ConfigEnvelope?{ ????Config?config?=?1; ????Envelope?last_update?=?2; }
↓
message?Config?{ ????uint64?sequence?=?1; ????ConfigGroup?channel_group?=?2; }
↓
message?ConfigGroup?{ ????uint64?version?=?1; ????map
4. 配置更新
類型為HeaderType_CONFIG_UPDATE的Envelope將ConfigUpdateEnvelope消息編碼為?Payload?data?字段,ConfigUpdateEnvelope定義如下:
message?ConfigUpdateEnvelope?{ ????bytes?config_update?=?1; ????repeated?ConfigSignature?signatures?=?2; }
簽名字段包含了一系列獲得授權者的簽名信息,簽名消息是如下定義的:
message?ConfigSignature?{ ????bytes?signature_header?=?1; ????bytes?signature?=?2; }
signature_header定義為標準的交易,簽名信息是在signature_header字節和config_update字節組合起來的ConfigUpdateEnvelope消息上面。
ConfigUpdateEnvelope的config_update字節是一個封裝好的ConfigUpdate消息,定義如下:
message?ConfigUpdate?{ ????string?channel_id?=?1; ????ConfigGroup?read_set?=?2; ????ConfigGroup?write_set?=?3; }
channel_id是要更新的通道ID編號,是用來驗證這個簽名是不是有權限來重新配置這個通道。
5. Orderer系統通道配置
排序系統通道需要定義排序參數和創建通道的組織。注意所有有讀去排序系統通道權限的組織成員可以看到所有通道的創建,所以通道的訪問權限要嚴格限制。
Orderer啟動的時候,Orderer面對的是一個包含所有通道信息的文件系統。
6. 應用通道配置
應用通道配置設計為應用類型的交易。
區塊鏈
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。