如何建设智慧城市?基于区块链搭建隐私共享框架

量观网络
利用区块链的数据完整性和智能合约特性,可以安全地和自主地执行智慧城市环境中的各种操作。此外,区块链还可以防止服务器入侵和篡改/修改权限的不利影响。毫无疑问,在智慧城市环境中,人们只有在确保通过各种设备收集的个人和敏感数据得到充分保护并对其有控制权的情况下,才会在分享个人信息时感到安全。

导语

笔者近期正在研究基于区块链和隐私计算的数据安全共享解决方案,仔细研读了Imran Makhdoom 等人撰写的研究论文《PrivySharing:A Blockchain-Based Framework for Privacy-Preserving and Secure Data Sharing inSmart Cities》,深受启发,特此共享部分学习笔记,以资借鉴。

研究目标

在智慧城市中如何应用区块链进行数据安全共享,提出了相关协议;

如何进行数据上链;

普通数据和保密数据如何处理(保密数据只存数据HASH值);

如何利用智能合约进行数据访问控制。

摘要部分

物联网(IoT)的应用非常广泛,从工业控制系统到电子健康、电子商务、智慧城市、农业、供应链管理、智能汽车、网络物理系统等等。然而,loT系统收集和处理的数据,尤其是集中控制的数据,容易受到可用性、完整性和隐私威胁。

本文提出了“隐私共享”,一个基于区块链的创新框架,用于解决在智慧城市环境中进行批量数据共享时面临的隐私泄露和安全保护问题。本文所提出的方案在许多方面与现有的策略不同;

通过将区块链网络划分为多个通道(Ch)来保护数据隐私,每个通道(Ch)由有限数量的授权机构组成,并处理特定类型的数据,如健康、智能汽车、智慧能源或财务信息;

通过在智能合约中嵌入访问控制规则来控制对通道(Ch)内用户数据的访问;

通过分别使用私有数据收集和加密,可以进一步隔离和保护通道(Ch)中的数据;

使客户端能够与区块链网络交互的REST API具有API密钥和OAuth 2.0形式的双重安全性。本文建议的解决方案符合欧盟一般数据保护条例(GDPR)中概述的一些重要要求;

提供一个名为“PrivyCoin”的数字令牌奖励系统,以激励用户与第三方分享资料;

实验结果表明,与单通道(Ch)区块链系统相比,多通道(Ch)区块链系统具有良好的可扩展性。

重要贡献

在智慧城市环境中提供隐私保护,防止大部分威胁用户数据完整性和隐私的外部和内部攻击;

遵守欧盟GDPR的一些基本要求;

一个基于区块链的解决方案,提供关于用户数据的“忘记权”;

一个可伸缩的(关于区块大小)、安全、高效的(关于能源消耗和计算需求)数据共享框架;

用户定义的对用户数据的细粒度访问控制;

提供透明和可审计的网络操作,同时控制用户私有数据的泄露;

通过REST API对区块链网络进行安全的客户端访问;

为与利益相关者/第三方共享数据的用户提供奖励系统。

研究内容

4.1

1.在智慧城市中如何利用区块链进行数据共享,提出了相关协议

(1)隐私共享:基于区块链的数据安全共享

利用区块链的数据完整性和智能合约特性,可以安全地和自主地执行智慧城市环境中的各种操作。此外,区块链还可以防止服务器入侵和篡改/修改权限的不利影响。毫无疑问,在智慧城市环境中,人们只有在确保通过各种设备收集的个人和敏感数据得到充分保护并对其有控制权的情况下,才会在分享个人信息时感到安全。这种保证只能由精心选择和精心设计的区块链技术来提供。

为了实现上面提到的智慧城市用例,本研究使用了Hyperledger-Fabric作为底层区块链平台,相比其他区块链平台而言,Hyperledger-Fabric是一个私有的、受限制的许可区块链,只有授权方才能参与网络。区别于其他区块链技术的关键特征是,在Hyperledger中,区块链分类账由两个相关的部分组成,即,一个记录TXs的区块链和一个跟踪分类账状态的状态数据库。

(2)网络体系结构

如上图所示,智慧城市区块链网络,由11个组织及其相关的对等节点组成。考虑到与不同利益相关方共享不同类别的用户数据,以及确保用户数据隐私和安全的要求,如下图所示的区块链网络由5个不同的数据通道(Ch)组成。

通道(Ch)提供了一组组织之间完全独立的通信机制。而且,每个通道(Ch)都独立于其他通道(Ch)。因此,这些通道(Ch)通过仅与授权实体安全地共享特定类型的数据来保护用户数据的隐私。

由网络配置中心(NC)指定的策略规则来控制对智慧城市网络的访问。

组织01更新NC并将02、03和04也授予管理(admin)权限。这些组织现在可以创建联盟和通道(Ch)来添加更多的网络成员。类似地,每个通道(Ch)都由各自的通道配置(CC)中指定的策略规则管理。

每个通道(Ch)都有一个单独的分类账,所有的对等节点都必须维护一个关于其所属的每个通道(Ch)的分类账副本。

通道(Ch)中的数据与包括其他通道(Ch)在内的其他网络隔离。

我们提出的网络架构的另一个重要功能是在不同层次(如网络、通道(Ch)和本地/对等网络)上使用会员服务提供商MSP。网络MSP(NMSP)定义了谁是网络的所有成员,以及其中谁具有管理员权限。此外,NMSP还定义了哪些RCAs/CAs是可信的。

另一方面,通道MSPs(CMSP)概述了通道(Ch)级的管理和参与权。所有的对等节点和ODS(订购服务)共享一个公共的CMSP来正确地管理和验证通道(Ch)成员的授权。

CMSP的用例是,例如,某个组织的管理员想要在通道(Ch)1上实例化一个SC,然后通过查看CMSP,其他通道(Ch)成员可以验证该管理员是否是特定组织的一部分以及他是否有权在通道(Ch)1上实例化SC。类似地,为每个客户端节点/对等节点定义了本地MSP(LMSP)。LMSP将对等方与其组织关联起来。它还定义了该对等节点的权限,并允许其在通道(Ch)上的TXs中进行身份验证。

在这里可能会出现一个问题,即CC(通道配置)和CMSP有什么区别。CC包含管理该通道(Ch)的策略,即哪些组织可以管理通道(Ch)并添加新成员。而CMSP建立了节点与它们各自的组织之间的链接,并且节点可以在通道(Ch)中扮演什么角色,即,它可以在通道(Ch)上实例化SC吗?

关于权力下放方面;与单个组织中的所有管理权限相比,使用专用的可信CA、区块链管理员和业务网络管理员可以在一定程度上分散管理权限。

4.2

2.如何进行数据上链

为确保通道(Ch)内关键用户数据的私密性,在通道(Ch)中,采取了一种“私有数据收集”的方法,将部分用户数据对某些组织保密,其中重要的私人资料只会直接发送给获得授权的机构。这些数据存储在一个高级数据库中。

在被授权的节点上。虽然私有信息存储在授权节点上,但只处理此数据的散列,即数据的哈希作为TX的证据,也有助于对事件状态的验证。

这里一个重要的数据安全特性是,排序节点看不到私有数据。

但是,为了进一步提高数据隐私/机密性的级别,用户可以选择加密他的私有数据,这样即使是被授权查看存储在私有数据集合中的数据的对等节点也不能看到原始内容。

数据使用AES-256位对称加密密钥进行加密,然后存储在私有数据集合中。稍后,只有有权访问解密密钥的授权用户才能查询用户的私有数据。

除了数据加密之外,还有一个附加的特性:对私有数据进行签名加密,以提高用户身份验证和数据安全性。

4.3

3.普通数据和保密数据如何处理,保密数据只存数据HASH值

(1)智慧城市区块链-纯TX流

TXs有两种类型:一个是普通TX,可供所有通道(Ch)成员查看,另一个是私有数据TX,仅与一些选定的同行共享通道(Ch)共享。

在这方面,例如,通过安装在爱丽丝智能汽车中的ClientAppA来启动更新爱丽丝汽车在Ch2上的当前位置状态所需的普通TX。

此TX(如上图5a所示)按以下步骤进行处理。

步骤1:ClientAppA调用SCA,并根据Ch2上的SC A认可策略将包含爱丽丝汽车当前位置的TX提议发送给预定义的背书人。在这种情况下,背书人是E2a(RTA),E2b(警察)和E2c(汽车服务提供商)。如果TX获得三位指定背书者中的至少两位背书,则该TX将被批准。

步骤 2:三个代言人E2a中,E2b和E2c调用SCA建议;SCA生成一个查询或更新建议响应,背书人E2a和E2b对提案的正确性表示认可。

步骤3:E2a和E2b都向ClientAppA发送已签署(认可)的TX提案响应和RW(读、写)。在此阶段,背书的同行不将拟议的更新应用于其总账副本。

步骤4:ClientAppA验证从至少两个背书人那里收到的响应是相同的,即确定性的。但是,结果可能是在不同时间,不同分类账的不同对等节点生成的结果。因此,对等节点可以针对相同的TX建议返回不同的TX响应。在这种情况下,应用程序可以简单地请求一个最新的建议响应。

另一个不太可能的可能性是,SC可能是不确定的,例如,当从某些网站获取外汇(外汇汇率)数据时,TX的响应可能会有所不同,因为外汇汇率在不同时间可能会有所不同。因此,不一致的结果不能被应用程序接受并应用于总账。

步骤5:一旦ClientAppA验证了背书人的响应,它就会将TX发送到ODS。

步骤6:然后ODS将接收到的TXs分组到一个块中。块中的TXs序列不一定与排序者处的TXs到达顺序相同。但是,生成的块是最终的,没有分叉。此外,订购者不托管分类账和SCs,他们也不关心TX的值,而只是将TXs打包到块中。

步骤7:ODS将下一个提议的块广播给通道(Ch)2上的所有节点。

步骤8:所有提交对等方均会验证块中的每个TX(与它们在块中出现的顺序相同),以确保在将所有TX应用于分类账之前,它已被所有必需的背书人正确背书。一旦正确验证了TX,对等方将执行分类账一致性检查,以确保生成建议的更新时,分类账的当前状态与分类账的状态兼容。根据已验证的TX更新世界状态。

要注意的是,失败的TX不会应用于分类账上,但会保留它们用于审计。此外,步骤8中的TX验证不需要运行SCs。这仅由背书人完成。因此,SC仅安装在背书人的电脑上上。这使SC的逻辑仅对认可组织保密。此外,对等方还将每个块中的每个TX标记为有效或无效。

最后,一个新的块被附加到分类账L2中存储的哈希链中,并由文件系统中的所有对等方维护。

步骤9:生成分类账更新事件,并通知ClientAppA。需要注意的是,在添加块之前,要执行版本检查,以确保更新的状态与SC执行期间读取的状态相同。它可以防止双重开销和其他数据完整性威胁。上面提到的由订货方协调的TX工作流程称为“共识”,即所有的同行对TXs的内容和顺序达成一致。

(2)智慧城市区块链私有数据TX流

根据上图3所示的智能城市网络设置,如果Alice身上的可穿戴式血液酒精监测设备产生警报,则仅由她的主要医疗中心和当地警察看到,以立即做出响应。

在这种情况下,需要保持TX私有,Ch1上除P2,P4和P5之外的其他成员不应看到该TX。这种私有数据TX(如上图5(b)所示)按以下步骤处理:

步骤1:ClientAppB向提议的对等节点E1b(主医疗中心)和E1c(警察)提交提案请求以调用SC功能(RW私有数据),这些对等节点是收集的授权组织的一部分(由关于健康警报的私有数据分发策略定义)。关于血液酒精浓度健康警报的私有数据是在提案的一个临时字段中发送的。

步骤2:E1b和E1c模拟TX,并将私有数据存储在瞬态数据存储区(它们本地的临时存储区)中。背书节点还通过闲话将基于收集策略的私有数据分发给授权对等方。但是在这种情况下,我们只有三个对等点,即P2(E1b),P4(E1c)和P5。

步骤3:E1b和E1c将提案响应与公共数据一起发送回ClientAppB,其中包括私有数据密钥和值(酒精度)的哈希值。没有任何私有数据以明文形式发送回ClientAppB。

步骤4:ClientAppB验证从E1b和E1c接收到的RW集是否相同。

步骤5:ClientAppB将带有私有数据哈希值的TX提交给ODS。

步骤6:ODS将TX打包在最新块中。具有散列值的块分配给Ch1上的所有对等节点。

步骤7:通道上的所有对等节点都以一致的方式用私有数据的哈希值验证TX,而无需知道实际的私有数据。

步骤8:生成分类账更新事件,并通知ClientAppB。

4.4

4.如何利用智能合约进行数据访问控制

通过多个通道(Chs)实验结果对用户数据资产的受限访问。除了通过Ch中的ACL规则限制对用户数据资产的访问外,使用特定于数据的Chs还有助于保护用户的数据隐私。通过本研究的PoC,我们已经验证了PrivySharing智慧城市网络中的每个Ch均独立于其他具有相关Ch成员的Ch。

当来自组织7的P13(不是Ch1的成员)尝试查询用户的心率数据时,他将获得拒绝访问错误,因为他无权访问在Ch1上传播的任何数据资产。由于PrivySharing是一个许可的联盟区块链,因此所有网络成员在加入网络之前均已进行了适当的注册和认证。

但是,即使通过损坏的网络管理员将未经授权的节点添加到系统中,ACL规则也会禁止入侵者未经授权访问用户的数据资产。

相关知识

1.Hyperledger

Hyperledger (超级账本)是一组开源工具,旨在构建一个强大的、业务驱动的区块链框架。

Hyperledger (超级账本)是区块链行业中最大的项目之一,它由一组开源工具和多个子项目组成。该项目是由 Linux 基金会主办的一个全球协作项目,其中包括一些不同领域的领导者们,这些领导者们的目标是建立一个强大的、业务驱动的区块链框架。

2.区块链网络主要有三种类型:公共区块链、联盟区块链,以及私有区块链

Hyperledger 是一个区块链框架,旨在帮助公司建立私人或联盟许可的区块链网络,在该网络中,多个组织可以共享控制和操作网络内节点的权限。Hyperledger Fabric 是 Hyperledger 项目的一个组成部分,是一个区块链框架的实现。它将成为区块链应用开发、解决方案的基础。

Fabric 框架支持组件化、可插拔的共识服务(Consensus Service)、成员服务(Membership Service);"许可(Permissioned)"特性使之为"私有性"、"保密性"提供了可靠的解决方案;智能合约(Smart Contracts)在 Fabric 中通过"Chaincode"得以实现。Fabric 最初是由 Digital Asset、IBM 贡献给 Hyperledger 项目的。

THEEND

最新评论(评论仅代表用户观点)

更多
暂无评论