如果某個通道上的一組組織需要將該資料與該通道上的其他組織保密,他們可以選擇建立乙個新通道,只包含需要訪問資料的組織。但是,在每種情況下建立單獨的通道會產生額外的管理開銷(維護鏈碼版本,策略,msp等),並且不允許你希望所有通道參與者在保持部分資料私有的情況下檢視交易的用例。
這就是為什麼從v1.2開始,fabric提供了建立私有資料集合的能力,它允許通道上已定義的組織子集能夠支援,提交或查詢私有資料,而無需建立單獨的通道。
集合是兩個元素的組合:
實際的私有資料,通過八卦協議將點對點傳送給僅被授權檢視它的組織,此資料儲存在對等點的私有資料庫中(有時稱為「側」資料庫或「sidedb」),這裡不涉及排序服務,也看不到私有資料。請注意,設定八卦需要設定錨點以便引導跨組織通訊。
該資料的雜湊值,它被認可、有序的並寫入通道上每個對等點的分類賬,雜湊用作交易的證據和用於狀態驗證並用於審計目的。
下圖說明了被授權擁有私有資料的對等點的分類帳內容,以及未擁有私有資料的對等點的分類帳內容。
執行緒特定 私有 資料
簡單的講,執行緒特定 私有 資料是每個執行緒的區域性變數,更改執行緒a中的執行緒特定 私有 資料,並不會影響到執行緒b中相對應的執行緒特定 私有 資料。常見的errno就是執行緒特定 私有 資料,每個執行緒重置errno的操作並不會影響程序中其他執行緒的errno值。下面介紹下執行緒特定資料的使用技...
執行緒控制 私有資料
執行緒私有資料採用了一種被稱為一鍵多值的技術,即乙個鍵對應多個數值。訪問資料時都是通過鍵值來訪問,好像是對乙個變數進行訪問,其實是在訪問不同的資料。使用執行緒私有資料時,首先要為每個執行緒資料建立乙個相關聯的鍵。在各個執行緒內部,都使用這個公用的鍵來指代執行緒資料,但是在不同的執行緒中,這個鍵代表的...
執行緒的私有資料(TSD)
我們知道 乙個程序內的所有執行緒繼承其資料與環境變數,共享資料空間,但是有時候我們需要有的執行緒擁有獨屬於其自己的資料變數,讓其只在某個執行緒內有效,比如最常見的errno,每個執行緒出錯的原因大不相同。這個時候就需要建立執行緒的私有資料 tsd 了 執行緒的私有資料可以被其他函式訪問,但拒絕被其他...