一种基于Fabric的边缘计算数据安全与隐私保护方法与流程

文档序号:18664138发布日期:2019-09-13 19:51阅读:524来源:国知局
一种基于Fabric的边缘计算数据安全与隐私保护方法与流程

本发明属于区块链技术领域、边缘计算领域、数据安全领域,涉及一种基于fabric的边缘计算数据安全与隐私保护方法。



背景技术:

伴随科技技术的稳步发展,物联网作为继互联网之后的又一新兴产业为推动社会高速发展的重要生产力,它必将为世界经济发展注入强大活力。物联网的一个重要技术:边缘计算,是一种分散式运算的架构。在这种架构下,将应用程序、数据资料与服务的运算,由网络中心节点,移往网络逻辑上的边缘节点来处理。边缘计算将原本完全由中心节点处理大型服务加以分解,切割成更小与更容易管理的部分,分散到边缘节点去处理。边缘节点更接近于数据终端装置,可以加快数据的处理与传送速度,减少延迟。

边缘计算设备由于数量众多,位置分布比较分散且环境十分复杂,很多设备内部是计算能力较弱的嵌入式芯片系统,很难实现自我安全保护。安全问题已经严重制约边缘计算的发展,如何解决这种非安全环境的数据安全问题将是一大挑战。

传统的数据存储方式缺乏安全性,其在对数据防护的安全层面上存在不足,在数据处理的过程中由于硬件故障、断电、死机、人为的误操作、程序缺陷、病毒或黑客等造成的数据库损坏或数据丢失现象,某些敏感或保密的数据可能不具备资格的人员或操作员阅读,而造成数据泄密等后果。此外,传统的数据上传存储与处理方法依赖于中心化数据库,使核心数据库服务器负载较大,并且存在信任问题。

自2016年互联网绑架病毒爆发之后,“比特币”开始逐渐进入大众的视野,当时大部分人对比特币的认识仅限于一种虚拟交易货币。此后的两年来,“比特币”与美元的比率日渐走高。与此同时,进入广大研究者和开发者视野的是其底层技术——“区块链”。有人比喻它是一种革命性的技术发展,更有人认为它是互联网之后又一个将改变世界、推动世界发展的新生事物。

区块链是一种透明化的不可篡改的分布式加密记账体系。作为“比特币”底层技术,区块链为比特币的交易转账等提供了十分安全可靠的保障。



技术实现要素:

本发明旨在运用区块链技术,解决边缘计算节点的数据安全与隐私保护问题。传统的边缘计算数据存储方式在对数据防护的安全层面上存在不足,在数据处理的过程中由于硬件故障、断电、死机、人为的误操作、程序缺陷、病毒或黑客等造成的数据库损坏或数据丢失现象,某些敏感或保密的数据可能不具备资格的人员或操作员阅读,而造成数据泄密等后果。传统的边缘计算物联网数据上传存储方法依赖于中心化数据库,使核心数据库服务器负载较大,并且存在信任问题。为此,本发明的目的在于实现一种基于fabric的边缘计算数据安全与隐私保护方法。

为解决上述问题,本发明采用如下的技术方案:

一种基于fabirc的边缘计算数据安全与隐私保护方法,实现方法功能架构如图1所示:首先在物理层的传感器网络场景生产现场采集物联网原始数据,由边缘计算层的边缘计算区块链节点接收数据。fabric搭建在边缘计算区块链节点上,在边缘计算的各个节点上搭建不同功能的fabric节点如主节点,背书节点,提交节点与锚节点,区块链的整个网络由锚节点连接而成。通过移动网络、http协议,tcp/ip等数据传输方式将数据发送到边缘计算区块链节点上的fabric后台,在将数据整理成可应用数据,将整理后的数据上传到fabric,本方法中受保护的数据来源均是针对传感器网络场景生产现场所采集的物联网数据。用户可以通过web应用或b/s客户端架构对fabric中的数据进行溯源或数据分析等操作。由于区块链本身的不可篡改特性,防止人为的恶意删除与黑客攻击对数据的损坏。由于用户可以在任意的搭建此fabric的节点申请查询获取数据,可以在设备意外损坏的情况下保证了数据的安全性。搭建在边缘计算设备上的fabric节点通过广播将信息共享到联盟链网络中,这样即安全地将信息共享给了其它搭建了此fabric的边缘计算节点,由于在区块链网络上所有的操作都会验证用户的身份,保证了只有被授权了查询权限的用户可以从fabric获取数据,使不具备资格的人员或操作员无法查询数据,完成对隐私数据的保护。

fabric运行流程图如图2所示,fabric联盟链的节点有:ca节点,接收客户端的注册申请,返回注册密码用于登录,以便获取身份证书;背书节点,只有在应用程序向节点发起交易背书请求时才成为背书节点,其他时候是普通的记账节点,只负责验证交易并记账。执行交易并向生成交易提案(proposal)的客户端应用程序返回yes/no响应;主节点,负责和排序服务节点通信,从排序服务节点处获取最新的区块并在组织内部同步,可以强制设置,也可以选举产生;提交节点,负责验证从排序服务节点接收的区块里的交易,然后将块提交(写入/追加)到其通道账本的副本,记账节点还将每个块中的每个交易标记为有效或无效;锚节点,可以被所有其他节点发现的节点;排序节点,排序节点接收包含背书签名的交易,对未打包的交易进行排序生成区块,广播给主节点。应用程序客户端通过sdk调用证书服务(ca)服务,进行注册和登记,并获取身份证书。应用程序客户端通过sdk向区块链网络发起一个交易提案(proposal),交易提案把带有本次交易要调用的合约标识、合约方法和参数信息以及客户端签名等信息发送给背书(endorser)节点。背书(endorser)节点收到交易提案(proposal)后,验证签名并确定提交者是否有权执行操作,同时根据背书策略模拟执行智能合约,并将结果及其各自的ca证书签名发还给应用程序客户端。应用程序客户端收到背书(endorser)节点返回的信息后,判断提案结果是否一致,以及是否参照指定的背书策略执行,如果没有足够的背书,则中止处理;否则,应用程序客户端把数据打包到一起组成一个交易并签名,发送给排序服务节点。排序服务节点对接收到的交易进行共识排序,然后按照区块生成策略,将一批交易打包到一起,生成新的区块,发送给主节点;主节点收到区块后,会在组织内部同步给提交节点。提交节点会对区块中的每笔交易进行校验,检查交易依赖的输入输出是否符合当前区块链的状态,完成后将区块追加到本地的区块链,并修改世界状态。

该方法包括以下步骤:

步骤1:通过传感器采集、手机等终端设备采集或网络上实时读取原始物联网数据,通过移动网络、http协议,tcp/ip等数据传输方式实时发送数据;

步骤2:在边缘计算框架本地节点的联盟区块链后台上设置监听并编写数据接口接收步骤1中采集到的原始数据;

步骤3:在联盟区块链后台上对步骤2中的数据进行解析、整理成可应用数据,将数据进行分割变量并按照事务逻辑有序地打包成待上链数据;

步骤4:将步骤3中的待上链数据通过sdk申请上传到搭建好的fabric当中,如果被认定为可信任并有存储权限的身份,fabric则存储数据。此时搭建在边缘计算设备上的fabric节点通过广播将信息传入fabric网络中,这样即安全地将信息共享给了其它搭建了此fabric的边缘计算节点;

步骤5:用户可以通过web应用或b/s客户端架构在搭建了本联盟链的任意边缘计算节点,调用智能合约向fabric申请取出数据,如果被认定为可信任并有存储权限的用户身份,则可以取出对应的数据进行数据分析应用;

本发明能够很好的利用区块链的特点,使用区块链存储,解决了传统的数据上传存储依赖于中心化数据库的信任问题。利用区块链不可篡改的特点很好的提高了物联网数据在边缘计算节点存储的安全性以及数据处理的安全性,通过将信息广播入fabric网络中完成信息的安全可靠的共享,利用fabric对用户进行权限设置完成对隐私数据的保护。最终实现对边缘计算架构中的数据安全与隐私保护。

本方法可行性高,可靠性强,解决了传统的数据上传存储与处理方法依赖于中心化数据库的信任问题。提高了边缘计算架构中数据存储准确安全性以及数据传输的安全性,提高了对边缘计算架构中隐私数据的保护。最终实现对边缘计算架构的数据安全与隐私保护。

附图说明

图1为系统功能架构图;

图2为fabric运行流程图;

图3为系统的逻辑架构图;

具体实施方式

下面结合附图1-3和实例对本发明做进一步说明:

本发明提供一种基于fabric的边缘计算数据安全与隐私保护方法,系统逻辑架构图如图3所示,首先采集物联网原始数据,由边缘计算网络节点的数据接入层接收采集到的物联网数据。通过移动网络、http协议,tcp/ip等数据传输方式将数据发送到搭建了fabric在边缘计算节点上的fabric后台,在将数据整理成json格式的标准化数据,将标准化后的数据上传到fabric。用户可以通过web应用或b/s客户端架构对fabric中的数据进行溯源或数据分析等操作。

具体包括以下步骤:

步骤1:物联网数据采集;

步骤1.1通过传感器采集、手机等终端设备采集或网络上实时读取原始物联网数据,数据分为传感器网络采集到的传感器数据,终端收集到的事务型数据以及网络数据接口收集到的网络数据等;

步骤1.2采集到的数据通过移动网络、http协议,tcp/ip等数据传输方式实时发送数据至指定的边缘计算节点;

步骤2:接收从终端发送来的物联网原始数据;

步骤2.1:在边缘计算框架本地节点的联盟区块链后台上设置监听,将服务器所在的ip地址中的端口作为http协议的服务器端,对该端口进行数据的监听,以异步的方式接收前端所上传的数据。实时关注端口状态;

步骤2.2:设置事件监听触发函数,当边缘计算本地节点的端口有数据传入,联盟区块链后台上的数据接口接收步骤1中采集到的原始物联网数据。

步骤3:当联盟区块链后台的数据接口接收到步骤2中的数据,第一时间上对接收到的物联网原始数据进行解析、整理成可应用数据,将数据进行分割变量并按照事务逻辑有序地打包成json格式的标准化数据;

步骤4:数据上链;

步骤4.1:将步骤3中的json格式的可应用数据通过智能合约申请上传到搭建好的fabric当中,背书(endorser)节点收到上传请求后,验证签名并确定提交者是否有权执行操作,同时根据背书策略模拟执行智能合约,并将结果及其各自的ca证书签名发还给应用程序;

步骤4.2:应用程序客户端收到背书(endorser)节点返回的信息后,判断提案结果是否一致,以及是否参照指定的背书策略执行,如果没有足够的背书,则中止处理;否则,应用程序客户端把数据打包到一起组成一个交易并签名,发送给排序服务节点。

步骤4.3:排序服务节点对接收到的交易进行共识排序,然后按照区块生成策略,将一批交易打包到一起,生成新的区块,发送给主节点;主节点收到区块后,会在组织内部同步给提交节点。提交节点会对区块中的每笔交易进行校验,检查交易依赖的输入输出是否符合当前区块链的状态,完成后将区块追加到本地的区块链,并修改世界状态。

步骤4.4:此时搭建在边缘计算设备上的fabric节点通过广播将信息传入fabric网络中,这样即安全地将信息共享给了其它搭建了此fabric的边缘计算节点;

步骤5:用户读取fabric中的数据;

步骤5.1:想要查询数据的用户首先需要通过web应用或b/s客户端架构向fabric中的证书颁发节点ca进行登记注册申请,获取身份证书。在区块链网络上所有的操作都会验证用户的身份,这就保证每个fabric的参与者都有明确的身份信息;

步骤5.2:用户需要通过web应用或b/s客户端架构向fabric申请取出数据,如果被fabric认定为可信任并有读取权限的节点,则可以取出对应的数据进行数据分析应用。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1