BMECS:一种面向可穿戴设备的数据共享框架
2021-05-13王帆殷锋袁平
王帆,殷锋,袁平
(1.四川大学计算机学院,成都610065;2.西南民族大学计算机科学与技术学院,成都610041;3.重庆第二师范学院数学与信息工程学院,重庆400067)
0 引言
随着5G 通信和物联网的发展,数亿台设备已被部署于各个领域用于感知、收集和传输数据。近年来,可穿戴智能设备由于其可以通过软件与中心服务器连接,以此实现数据交互,为用户提供丰富的功能,加上其独特的便携性正受到持续关注。5G 即第五代移动通信系统,英文名为5th Generation Mobile Networks。它的最大特点是高速率、大宽带、低时延,在传输速率上能比4G 快上百倍,预计每秒至少能达到1000 兆比特(Gb/s),相当于传输1GB 的视频仅需要短短8 秒。随着5G 时代的到来和逐渐成熟,5G 加速了可穿戴智能设备的发展,对我们的生活带来了很大的转变。与此同时,各大厂商也在积极投入研发,使得可穿戴设备的种类逐渐趋向于多元化,而如何实现更强大的功能成为核心问题。数据共享可以扩大产品的覆盖范围,同时,可以利用设备的测量数据通过相应的服务平台对数据进行分析,让服务提供商提供更具有针对性的服务。
在大数据背景下,数据呈指数增长,已成为研究的重要资源。而目前,各行业却依然存在“数据孤岛”的问题,建立安全有效的数据共享模型成为重点关注问题。许多领域,例如医学和医疗保健中,通过共享临床数据可以深入进行个性化的病人护理和医学知识研究;在工业领域,促进各企业间数据的互联互通,将有助于工业协同生产和产品优化等。尽管数据共享可以催生许多应用,为各行业的生产发展等带来了极大便利,但在数据共享过程中,仍存在一个关键问题:传统的数据共享方案利用中央服务器进行集中存储,使得数据的隐私性无法得到保证,因此用户可能不愿意共享数据。另外,在传统的生产模式下,由于数据是存储在单一、孤立的系统中,缺乏强大的数据保护措施,单一节点损坏会带来巨大的损失,与此同时,数据存储的压力也日益增长。
针对上述问题,本文提出一种基于区块链和边缘计算的可穿戴设备数据共享框架。使用区块链存储采集的穿戴设备的共享数据,考虑到区块链节点需要较高的计算资源,因此结合边缘计算完成节点的计算任务。
1 基础研究
1.1 区块链
区块链是在网络共识下结合智能合约和其他辅助技术的分布式账本技术。区块链技术的核心优势是去中心化,通过运用数据加密、时间戳、分布式共识和经济激励等手段,使网络节点在无需互相信任的分布式系统中实现可信任的点对点交易、协调与协作,从而解决中心化机构普遍存在的高成本、低效率和数据存储不安全等问题。区块和区块链结构如图1 所示。
图1 区块和区块链结构示意图
基于区块链技术的去中心化理念,利用其分布式控制及存储,通过共享经济模式,盘活网络上的存量存储和计算资源,将有效缓解工业大数据运营商的数据存储及运维压力,进一步有效实现数据挖掘和价值增值。同时,鉴于区块链的不可篡改特性,能有效减少用户的数据隐私安全问题。
一系列工作已经研究基于区块链的数据共享。例如,DubovitskayaA 等人[1]提出了基于区块链的医疗数据管理的观点,特别是关于医疗提供商之间的EMR 数据共享和研究,并建立了一个用于管理和共享用于癌症患者护理的EMR 数据的框架。Michelin 等人[2]提出了一个名为SpeedyChain 的框架,将存储在交易中的数据与区块头解耦,从而允许将数据快速添加到区块中。K.Christidis 等人[3]指出区块链与IoT 的组合有力促进了服务和资源的共享,从而在设备之间创建服务市场,以及允许我们以密码可验证的方式实现自动化现有的耗时的工作流程。在文献[4]中,作者提出了一种基于区块链的高效数据收集和安全共享方案,结合Ethereum 区块链和DRL,建立一个可靠的环境。
但由于区块链所需的网络计算消耗大,可扩展性不高,而可穿戴设备本身硬件实力不高,因此直接使用区块链建立可穿戴设备上的数据共享平台将造成不小的计算负担。
1.2 移动边缘计算
物联网一般采用云计算技术来完成计算任务,但随着设备的增加,网络侧产生的数据将会非常庞大。当网络流量压力较大时,将无法满足一些设备的低时延和实时协同合作。边缘计算属于一种分布式计算,可以在网络边缘侧的智能网关上就近处理采集的数据,而不需要将大量数据上传到远端的核心管理平台,能实现大量设备的高效协同功能,同时满足设备在敏捷性、实时性、数据优化、应用智能,以及安全与隐私保护等方面的关键需求。
移动边缘计算(MEC)的概念最早出现在2013 年,主要思想是通过在移动基站上引入业务平台功能,使得业务应用可以部署在移动网络边缘,以在接近智能手机或者移动终端的地方实现云计算能力。由于移动边缘计算将网络业务“下沉”到无线接入网里,因此具备三大优点:①更低延时;②有效抑制了网络拥塞;③更多的网络信息及网络控制功能可以开放给开发者。采用边缘计算可以就近处理海量数据,大量设备可以实现高效协同工作,诸多问题迎刃而解,从而极大地提升计算的“智能”。Marjanovic[5]已将MEC 体系结构用于人群感应应用程序,其中可以共享大容量的原始传感数据并将其保存在云中,并具有改进的可伸缩性。作者提出了一种能量收集模型,该模型允许移动节点将任务转移到附近的移动边缘塔上,以在移动节点处获得能源效率[6]。
2 系统介绍
2.1 系统框架
本文所提出的数据共享框架“BMECS”如图2 所示,该系统主要由区块链模块和边缘计算模块组成。该区块链通过其加密的记录在所有终端设备之间建立安全连接,为减轻设备压力,提高计算效率,区块由设备附近的移动边缘计算节点进行维护。该区块链主要实现两种功能:分布式数据安全共享和数据检索。
图2 BMECS系统结构图
如图2 所示,我们将系统设备层中的穿戴设备称为数据请求者/提供者,数据请求者可以向数据提供方请求数据,数据提供商利用MEC 节点将本地采集的数据上传到区块链当中进行存储以此获得奖励。由于数据提供者的计算资源有限,因此MEC 节点负责将收集到的数据进行处理和加密,并广播全网的其他节点进行验证,达成一致,该过程称为共识算法。常见的共识算法有POW(工作量证明)、POS(权益证明)、PBFT(拜占庭容错算法)等,考虑到可穿戴设备所需的低时延特点和计算能力,本文拟采用PBFT 作为区块链节点的共识机制,该算法流程如图3 所示,主要分为以下四个步骤:
(1)客户端发送请求给主节点
(2)主节点广播请求给其它节点,节点执行PBFT算法的三阶段共识流程,该流程如图3 所示。其中C为客户端,N0~N3表示服务节点,特别的,N0为主节点,N3为故障节点。
(3)节点处理完三阶段流程后,返回消息给客户端。
(4)客户端收到来自f+1 个节点的相同消息后,代表共识已经正确完成。
图3 PBFT算法三阶段共识流程
2.2 系统流程
考虑到用户对数据隐私的担忧,为了激励用户参与到系统中进行数据共享,同时为了减少无效或有害数据在链上的传输,本文将引入“信誉币”的概念,用于用户之间的数据交易。数据请求者向数据提供商发起访问授权,之后,请求者使用“信誉币”向提供者支付费用。系统详细流程如下:
(1)系统初始化:对初加入系统中的用户通过中央机构进行身份验证,审核通过的分配数字证书、公钥、私钥并设置初始信誉币;
(2)数据共享请求:数据请求者向MEC 发起数据共享请求,MEC 执行共识算法新增交易请求区块;
(3)数据检索:数据提供商通过附件的MEC 节点定时检索区块链,验证数据请求者的证书合法,达成协商,使用私钥将数据进行加密并上传至链上;
(4)达成交易:数据请求者支付“信誉币”给数据提供商,获取公钥对数据进行解密,交易完成。
3 性能分析
为了评估所提出的系统模型,本节将从以下几个方面来进行分析。
3.1 安全性分析
由于设备所共享的数据存储在区块链上,当某一节点发生修改时都将造成断链,因此任何人都无法伪造数字签名对区块进行篡改。当有用户传播恶意数据时,系统可以在区块链上进行检索,并通过减少“信誉币”来惩罚用户。利用公私钥实现数据的加解密,有效保障了数据的隐私性。
3.2 系统时耗
针对可穿戴设备的高延迟、离线情况和算力问题,系统使用到移动边缘计算节点进行数据的采集、处理和加密,并执行拜占庭容错算法进行“挖矿”,有效减少了计算消耗和系统故障问题。
3.3 稳定性分析
系统使用区块链架构,通过智能合约可以自动执行设定的代码,不需要相互信任,同时不会受到人为因素干扰,系统稳定性较高。
4 结语
本文针对可穿戴设备的“数据孤岛”问题,建立了一个基于区块链和移动边缘计算的数据共享框架“BMECS”。该系统利用区块链实现了设备数据存储和数据检索功能,为减轻穿戴设备的计算压力,结合了移动边缘计算用于执行节点的共识算法。为减少无效或有害数据在区块链系统上的传播,在该系统中引入“信誉币”的概念激励用户共享有效数据。与传统集中式数据存储相比,提高了数据的隐私性和安全性,而且有效保障了数据传输时延,并提高了可穿戴设备的数据共享效率。