博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Fabric private data基本概念
阅读量:7114 次
发布时间:2019-06-28

本文共 1215 字,大约阅读时间需要 4 分钟。

hot3.png

fabric private data利用SideDB来保存私有数据,相当于在通道之上又提供了一层更细粒度的数据隐私保护机制。本文将介绍fabric private data的引入目的、基本概念与应用场景。

如果要快速掌握hyperledger fabric区块链的开发,推荐汇智网的在线互动实战教程:

什么是fabric private data?

目前在Hyperledger Fabric中实现数据隐私的方法是使用通道。但是官方并不孤立为了实现数据的隐私保护而在大型网络中创建大量通道,因为这会带来额外的开销,例如管理策略、链码版本以及成员服务提供(MSP)等。在一个通道中,所有的数据要么是公开的,要么是私有的。因此如果你想要将资产转给通道外的成员会很麻烦。这就是Hyperledger Fabric引入私有交易的原因。farbic private data允许基于策略创建私有数据集,来定义通道中的哪些成员可以访问数据。可以简单地通过添加策略来管理fabric private data。这使得可以将某些数据仅对部分成员公开。

考虑一下Hyperledger Fabric的marbles示例。所有的marble数据都可以公开,除了其持有人以及价格信息,这两个数据是不能对别人公开的,价格不应该被别人了解。可能你需要跟踪这个数据,因为你需要验证在销售marble的人是否是真正的持有人。一个假想的marble审计公司可以作为你的合伙人来验证这一点。如果你使用通道,那么所有的你的行为将记录在账本状态中,而任何人都看得到。

fabric private data是如何解决上述问题的?

concept

在上图中,第一个集合,Channel Read-Write Sets”是没有引入fabric private data时的架构,每一个交易都记录其状态和历史。

第二个集合,private state partition 1则显示了在两个分属不同机构的节点之间的一个共享私有状态。这个状态是根据预先的策略在节点间复制得到的。

第三个集合,private state partition 2&3则显示了fabric private data的真正为例。数据集可以被某些成员忽略。这意味着你可以为每一个marble卖家和审计者单独设立私有数据集。这些数据集允许添加一些额外的数据,主要的数据还是保存在主状态和账本中。

authorized

被授权的节点将可以看得到在主账本上的数据哈希,以及在私有数据库中的真实数据。未得到授权的节点将不会同步私有数据库,只能看到在主账本上的数据哈希。由于哈希是不可逆的,因此这些未授权的节点无法看到真实的数据。

从更高的层面看,fabric private data解决的问题看起来是这样:

solved


原文:

汇智网翻译整理,转载请标明出处

转载于:https://my.oschina.net/u/2275217/blog/3043391

你可能感兴趣的文章
Docker学习——三大组件【镜像、容器、仓库】的应用(二)
查看>>
mysql原理详解及部署
查看>>
taokeeper 架设与部署
查看>>
IIS配置Sencha touch
查看>>
elasticsearch文档-analysis
查看>>
拦截请求返回值的方法
查看>>
我的编程之路
查看>>
yum软件包详解
查看>>
安装hadoop和配置hadoop,启动namenode和设置免密登录的详细解析!
查看>>
Spark Streaming:大规模流式数据处理
查看>>
解决Spring Cloud中Feign/Ribbon第一次请求失败的方法
查看>>
Elasticsearch——分页查询From&Size VS scroll
查看>>
Spring Boot 配置Redis
查看>>
Eclipse快捷键
查看>>
JEESNS开源社交系统V0.5发布
查看>>
提取网页中的链接并生成xml
查看>>
ArrayList详解,看这篇就够了
查看>>
HTML-标签手册
查看>>
Solaris 操作系统中如何使用r命令集(rlogin、rcp、rsh)
查看>>
TCP/IP有限状态机
查看>>