Fabric private data基本概念

2021-09-20 03:08:34 字數 1412 閱讀 8832

fabric private data利用sidedb來儲存私有資料,相當於在通道之上又提供了一層更細粒度的資料隱私保護機制。本文將介紹fabric private data的引入目的、基本概念與應用場景。

目前在hyperledger fabric中實現資料隱私的方法是使用通道。但是官方並不孤立為了實現資料的隱私保護而在大型網路中建立大量通道,因為這會帶來額外的開銷,例如管理策略、鏈碼版本以及成員服務提供(msp)等。在乙個通道中,所有的資料要麼是公開的,要麼是私有的。因此如果你想要將資產轉給通道外的成員會很麻煩。這就是hyperledger fabric引入私有交易的原因。farbic private data允許基於策略建立私有資料集,來定義通道中的哪些成員可以訪問資料。可以簡單地通過新增策略來管理fabric private data。這使得可以將某些資料僅對部分成員公開。

考慮一下hyperledger fabric的marbles示例。所有的marble資料都可以公開,除了其持有人以及**資訊,這兩個資料是不能對別人公開的,**不應該被別人了解。可能你需要跟蹤這個資料,因為你需要驗證在銷售marble的人是否是真正的持有人。乙個假想的marble審計公司可以作為你的合夥人來驗證這一點。如果你使用通道,那麼所有的你的行為將記錄在賬本狀態中,而任何人都看得到。

在上圖中,第乙個集合,channel read-write sets」是沒有引入fabric private data時的架構,每乙個交易都記錄其狀態和歷史。

第二個集合,private state partition 1則顯示了在兩個分屬不同機構的節點之間的乙個共享私有狀態。這個狀態是根據預先的策略在節點間複製得到的。

第三個集合,private state partition 2&3則顯示了fabric private data的真正為例。資料集可以被某些成員忽略。這意味著你可以為每乙個marble賣家和審計者單獨設立私有資料集。這些資料集允許新增一些額外的資料,主要的資料還是儲存在主狀態和賬本中。

被授權的節點將可以看得到在主賬本上的資料雜湊,以及在私有資料庫中的真實資料。未得到授權的節點將不會同步私有資料庫,只能看到在主賬本上的資料雜湊。由於雜湊是不可逆的,因此這些未授權的節點無法看到真實的資料。

從更高的層面看,fabric private data解決的問題看起來是這樣:

原文:fabric private data基本概念

Fabric private data基本概念

fabric private data利用sidedb來儲存私有資料,相當於在通道之上又提供了一層更細粒度的資料隱私保護機制。本文將介紹fabric private data的引入目的 基本概念與應用場景。目前在hyperledger fabric中實現資料隱私的方法是使用通道。但是官方並不孤立為了...

HyperLedger Fabric基本概念

源自 提供共識服務的網路節點,例如,使用kafka或pbft 維護賬本的網路節點,通常在hyperledger fabric中擔任背書或者記賬角色。檢查交易的合法性,最終將交易提交到區塊鏈中。orderers peers comitter 三者之間關係如下圖所示 fabric中交易的處理過程 在整個...

Fabric private data入門實戰

hyperledger fabric private data是1.2版本引入的新特性,fabric private data是利用旁支資料庫 sidedb 來儲存若干個通道成員之間的私有資料,從而在通道之上又提供了一層更靈活的資料保護機制。本文將介紹如何在鏈碼開發中使用fabric private...