BEAF:区块链与边缘计算融合的数据共享框架
BEAF:一种面向物联网网络的区块链与边缘辅助框架及数据共享
摘要
边缘计算作为一种创新技术,将数据处理和存储推向终端用户,进一步推动了物联网网络的规模扩展、去中心化和安全性。它提升了服务质量,但同时也带来了数据安全、延迟等重大挑战。幸运的是,区块链技术能够改善物联网网络中边缘计算的安全问题,因为它只允许受信任的物联网节点相互交互。为了更好地应对数据共享中的安全风险并提升数据可信度,本文提出了一种面向物联网网络的区块链与边缘计算辅助安全框架(BEAF),支持数据共享功能。借助区块链与边缘计算,BEAF在数据共享后仍支持去中心化和数据追踪。此外,BEAF能够实现访问控制,并将数据共享给特定节点。我们还进行了安全分析,证明BEAF可提供机密性、可用性、数据完整性等安全保障。此外,我们基于Hyperledger Fabric技术构建了底层系统,并对BEAF的稳定性、可扩展性和效率等性能进行了评估。
关键词
安全;数据共享;区块链;边缘计算;访问控制
一. 引言
物联网(IoT)正作为一种技术革命兴起,代表着计算与通信的未来。随着第五代(5G)的商业化以及人工智能技术的大规模应用,物联网市场已全面爆发。物联网在推动先进技术发展并为人们带来巨大便利的同时,也引入了严重的安全风险。物联网网络中暴露出的安全问题,包括去中心化认证、隐私威胁和数据共享、恶意追踪等,已成为亟待妥善解决的突出问题[1-3]。随着大数据日益凸显,人们每天频繁且持续地上传和下载数据,因此,安全高效的数据共享对物联网网络变得至关重要[4, 5]。
传统数据共享机制允许用户通过互联网共同管理和共享服务器的数据信息,以实现资源分配、社会成本节约和合理的信息资源利用率[6,7]。然而,由于所有共享数据可能会被互联网大量记录,在一定程度上,传统的数据共享方法存在用户(数据所有者)隐私泄露、数据完整性问题、未授权的数据访问等关键安全问题[8,9]。上述问题对先进物联网提出了新的安全数据共享方法或技术的需求。
自2009年区块链出现以来,由于其分布式结构和技术安全性,已在各个研究领域受到广泛关注[10]。区块链技术的研究已成为全球范围内的研发热点,并已被提升至国家层面进行规划。区块链具有广泛的应用场景,包括金融、医疗、教育、信息关联等领域[10, 11]。此外,借助通道和私有数据集,联盟链成为解决安全数据共享问题的一种有前景的方案[22]。同时,已有研究将区块链与边缘计算相结合,旨在提升数据安全与隐私保护水平,实现计算资源的高效分配,充分发挥互补优势,实现共赢。边缘计算作为一种创新范式,实现了在网络边缘的分布式计算[23]。数据生成、数据处理和数据分析均可在边缘完成。每个边缘节点承担部分数据处理任务,从而降低移动传输的端到端延迟[24]。上述区块链与边缘计算的特性使其非常适用于物联网网络。
A. 文献综述
许多研究工作致力于解决数据安全、隐私和可靠性问题。在这些研究中,新兴的区块链技术和边缘计算方法引起了研究人员的广泛关注。
随着技术的发展,区块链技术的应用领域不断扩大。在[10]中提出了区块链系统的基本模型。作者详细阐述了区块链和比特币的原理、技术和应用现状,并介绍了区块链的社会发展。该研究为后续的区块链研究提供了有益的指导和参考。同样,文献[11, 12]总结了区块链的关键技术挑战和最新重要进展。随着持续发展,区块链被划分为三种类型:公有链、私有链和联盟链。在[13]中,作者进行了分析
联盟链框架,评估安全问题,并对部署进行系统全面的评估。
此外,许多研究采用了区块链技术,并开发了安全数据共享应用。在[14]中,作者提出了一种通过区块链实现的医疗数据共享模型,具有去中心化、高安全性、集体维护和防篡改等优势,并改进了共识机制以更好地匹配不同类型的机构。然而,由于该方案未考虑共享数据量相对较大以及缺乏数据权限的问题,仍有很大的改进空间。基于区块链,[15]提出了一种在物联网环境中使用区块链的基于安全代理的数据共享模块,确保了数据机密性并防止合谋攻击,同时还能实现细粒度访问控制。然而,该模型在物联网中的应用导致效率较低。
Xu在[16]中为智能车辆数据共享提供了一种安全解决方案,该方案利用生物特征区块链(BBC)实现了数据共享的可信性、准确性和可靠性。然而,其记录的活动信息会将个人隐私完全暴露在网络中,因此需要改进其数据权限算法。在[17]中,Huang提出了一种基于区块链的新型数据存储机制SeShare,以实现签名唯一性,解决了不同组用户同时为同一文件生成签名的问题。然而,当发生修改冲突时,仅允许一个用户在区块链末尾添加新的签名,其他用户只能等待。Shrestha在[18]中提出了基于区块链的用户可控隐私保护用户画像数据共享。他们的架构解决了数据共享和中心化问题,并应用区块链技术使用户能够决定共享哪些数据。然而,该系统会收集用户画像数据,存在隐私泄露的风险。
为应对网络数据共享的安全风险,研究人员提出了许多相关解决方案,包括网络加密、安全多方计算(MPC或SMC)以及区块链应用[19-21]。在[19]中,为了实现共享数据所有者对数据的匿名认证,作者提出使用传统的公钥基础设施(PKI)以消除证书验证过程,并通过提供前向安全性进一步增强基于身份的环签名的安全性。在[20]中,为了帮助人们做出更明智的隐私相关决策,作者设计了一类新的隐私指标,称为数据控制方指标(DCIs),用于揭示应用程序中此前隐藏的信息流。然而,他们并未考虑每一条隐藏信息流是否都可公开。
在[21]中,针对通过远程服务器进行数据共享群组时存在的安全问题,作者提出了一种具有密文上的委托等值测试功能的公钥重加密方案(PRE‐DET)。该方案允许用户在不执行数据解密的情况下实现共享,旨在满足消息机密性和服务器端不可伪造性这两项安全需求。
一些研究人员还尝试利用边缘计算范式来解决数据共享问题[24, 25]。在[24]中,提出了一种基于跨域的数据共享方案,用于协同边缘计算,将边缘计算与跨域访问相连接,有效解决了通过边缘计算节点和云连接的不同域之间的认证问题。在[25]中,作者研究了边缘计算环境中缓存公平性的独特问题,并进一步为VNET开发了一种分布式算法。该算法可显著改善VNET环境中的数据缓存并缩短等待时间。然而,现有研究工作无法直接应用于物联网数据共享。
上述挑战促使人们迫切需要为多样化和异构的物联网网络开发安全且去中心化的模型。因此,在本研究中,我们提出了一种区块链‐边缘辅助安全框架,该框架可为物联网网络实现安全、去中心化、轻量级且高机密性的数据共享。
B. 贡献与论文结构
本文的主要贡献总结如下。
- 我们提出了BEAF:一种面向物联网网络的区块链与边缘计算辅助安全框架,支持数据共享。BEAF在数据共享后实现了去中心化和数据追踪。此外,BEAF能够提供访问控制,并将数据共享给特定节点,从而保护数据所有者的隐私。
- 我们对所提出的BEAF进行了安全分析,表明BEAF满足数据共享常见的安全需求,如机密性、数据完整性、可用性、可追溯性等。
- 我们还基于Hyperledger Fabric技术对所提出的BEAF进行了底层开发,以评估其性能。通过实验实现,我们证明BEAF能够实现良好的系统稳定性、可扩展性和高效率。
本文中使用的符号列于下表I中。论文其余部分的结构如下:在第二节中,我们描述了系统模型;在第三节中,我们介绍了所提出的BEAF的详细内容;第四节和第五节分别讨论了安全分析和性能评估;最后,在第六节中对整篇论文进行总结。
表 I. 符号说明
| 符号 | 描述 |
|---|---|
| U | 客户端用户 |
| BS | 后台服务器 |
| BC | Fabric区块链 |
| IdU | 用户U的身份 |
| reg | 用户U的注册请求 |
| U_Info | 用户的个人信息 |
| 用户的登录密钥 | 用户的登录密钥 |
| logU | 用户U的登录请求 |
| 信息请求 | 查询信息 |
| Info | Fabric区块链中的相关数据文件 |
| fileU | 用户U上传或下载的数据文件 |
| per | 用户U上传文件后设置的权限 |
| perOrg | 有权访问私有文件的组织名称 |
| req_up | 用户U的上传文件请求 |
| suc | 成功的响应 |
| req_Info | 用于查询用户U的请求信息 |
| fileN | 用户U选择下载的文件 |
II. 系统模型
A. 动机
传统集中式云架构在物联网设备数量不断增加的情况下,由于中央服务器需要负责庞大的异构网络管理、数据处理和数据存储,给物联网网络带来了严重的安全性和可扩展性问题。为解决安全性、效率和可扩展性方面的挑战,我们希望提供一个用于物联网数据共享的安全框架。一方面,通过应用边缘计算这一分布式范式,该框架将计算资源和数据处理能力更贴近物联网设备(用户);另一方面,该框架利用区块链技术来管理边缘资源分配,实现物联网数据共享的目标。
B. 架构概述
所提出的BEAF的架构如图1所示。BEAF包含四个主要组件:用户、后台服务器(BS)、边缘节点(EN)和Fabric区块链(BC)。
用户 :用户将首先向后台服务器BS注册,并获取组织管理员身份及相应的登录密钥。登录系统时,调用fabric‐ca接口在边缘节点验证密钥。之后,用户可以查询所需数据,上传或下载相关数据文件。用户上传的数据将被加密,并设置共享、私有等数据权限,该过程采用边缘计算方法处理,然后将加密后的数据安全地存储到区块链中。授权用户可查询并下载特定数据以实现数据共享目的。
后台服务器(BS) :BS接收用户的注册申请,为请求的用户生成组织管理员身份和登录密钥,并将密钥返回给用户。BS还管理边缘节点上的权限设置。此外,在区块链的辅助下,BS可追踪恶意用户。
边缘节点(EN) :为了提高数据处理效率并实现资源的有效分配,边缘节点还负责分布式计算,包括用户(数据所有者)的数据上传、数据加密以及用户(数据访问者)的数据下载。如果合法用户想要查询或下载数据,边缘节点(EN)会将身份信息或文件信息等相关信息转发到区块链(BC)数据中,从区块链接收请求的数据并进行解密,然后将数据转发回请求用户。数据上传过程与下载过程类似,不同之处在于数据将由边缘节点发送并存储在区块链中。
区块链(BC) :区块链本质上是一种应用密码学的分布式数据存储系统,智能合约根据预定义规则在区块链网络中执行相应操作。智能合约的规则在底层制定。所提出的框架旨在利用Hyperledger Fabric技术解决数据安全和数据共享等问题。每个节点都存储其他节点账本的副本,并通过通道和私有数据集实现数据的私有化。需要注意的是,物联网数据不会永久存储在区块链上,而是具有有限的生命周期。一旦数据过期,对应的数据块将从区块链中删除。
由于Fabric网络是一个身份许可网络,用户只能通过身份认证后才能成为网络的参与者,并借助fabric‐node‐sdk与区块链交互,完成一系列功能操作。基于Fabric网络,所提出的BEAF构建了一个去中心化安全数据共享平台,以实现用户与网络之间的安全交互。
C. 要求
我们提出了一种用于物联网数据共享的基于区块链边缘的安全框架。由于缺乏监管,用户上传的数据需要符合法律安全要求。所提出的框架应满足充分的安全和性能要求。
机密性 :这是该框架的基本要求,因为区块链技术本身并不为在区块链网络中以明文交换的数据提供安全保险。因此,上传的数据需要由后端服务器进行加密并设置权限。
数据完整性 :未经认证的用户不得成为网络参与者,也不得通过非法入侵来保证所提出框架的系统有效性和数据完整性。
可用性 :包括两个方面:系统可用性和数据可用性。一方面,当合法用户需要访问时,系统应保持可靠,并应考虑(单个)节点故障的情况。另一方面,也应实现数据可用性,包括数据正确性、数据一致性,以及数据应随时随地可访问。
系统可靠性 :当系统遇到外部攻击或内部故障等意外情况时,应能够及时定位系统故障的原因并恢复系统。
系统可扩展性 :为了应用于数据安全共享平台,该框架应支持一定规模的用户,这些用户可能需要同时进行数据共享,例如上传或下载数据。
系统效率 :网络中许多用户需要上传或下载的数据量可能非常大。因此,所设计的框架应具备足够高的效率,包括较低的存储和计算成本、较短的响应时间以及较低的通信开销等。
稳定性与易用性 :系统应稳定运行,避免单点故障,并为用户提供友好界面以执行相关操作。
III. 所提出的框架BEAF
针对解决物联网网络的安全数据共享问题并提高数据可信度,本部分详细阐述了所提出的BEAF框架。根据预定义规则,调用fabric‐node‐sdk允许用户与区块链交互以执行相应操作。BEAF包含四个阶段:用户注册、用户登录、数据上传与加密,以及数据查询与下载。BEAF的整个流程如图2所示。
A. 用户注册
在用户注册过程中,用户U将向后台服务器BS注册以申请成为组织管理员。用户U首先向BS提交申请信息,包括IdU、reg以及U_Info。一旦当收到请求时,基站BS调用fabric‐ca接口接入fabric区块链网络,为用户获取组织管理员身份,在网络中注册用户并返回登录密钥secret。该secret是通过CCA算法在[3]中生成的。同时,可在fabric区块链中查询新的注册信息。
B. 用户登录
该过程允许用户进行安全登录。注册后,用户U通过发送其身份IdU、secret和logU来发起登录和认证请求。由于Hyperledger Fabric中的Node SDK是按照面向对象编程风格设计的,因此包含三部分:api、fabric‐client和fabric‐ca‐client。其中,fabric‐ca‐client提供用于身份权限证书的API。因此,当基站BS接收到IdU、secret和logU时,将调用fabric‐ca接口进行身份验证和密钥验证。验证成功后,用户即可在区块链网络上上传或下载数据。登录和认证过程如图2所示。
C. 数据上传与加密
在验证身份并登录主页后,用户U可以上传数据文件fileU,该文件可与其他用户安全共享。她还可以为此数据文件设置权限,例如开放权限某些子网络的用户,或将其设置为公共,使用户能够在整个网络中共享数据。当U上传数据时,U向EN发送包含IdU、fileU、U_per、perOrg和req_up的请求数据。EN随后进行处理,对fileU的数据进行加密,并判断U_per是否为私有权限。如果是私有的,系统获取有权查看该数据的组织名称perOrg,并将其写入集合_config.json配置文件中,然后调用智能合约的addPrivate函数以设置权限。之后,系统将判断Fabric网络的对等节点是否具有访问权限。如果有,则将数据发送至BC的节点,而BC仅存储该数据键值对的哈希值;否则,由对等节点存储数据fileU。如果数据是公开的,则EN调用智能合约的addData()函数来设置权限。数据上传完成后,U将收到成功响应suc。
D. 数据查询与下载
经过认证后,U可以从BC中查询所需信息,并在需要时下载。对于数据查询,U向EN发送包含IdU和req_Info的请求信息,用于指明U所需的信息。然后EN调用智能合约的queryData()函数,在BC中查询所请求的数据。若成功找到,则返回获取到的数据,否则返回搜索失败的反馈fail。如果U希望下载某个数据文件,则继续向EN发送fileN,随后BC将相应数据发送至边缘网络节点进行解密,执行下载操作,并将数据回传至BS和用户U。
IV. 安全分析
在本节中,我们分析所提出的框架BEAF的安全问题。
机密性 :在BEAF中,只有注册用户才能参与Fabric网络进行数据共享。此外,存储在区块链中的数据采用了高效且安全的密码学技术。加密和解密操作由边缘节点EN使用CCA算法执行,以确保机密性。加密后的数据随后通过共识机制以安全的方式存储到区块链中。
数据完整性 :在注册阶段,用户会收到由CCA算法发放的密钥。在用户登录阶段,用户必须通过身份认证验证,否则无法在框架中执行任何相关操作。由于上传步骤涉及使用边缘计算进行加密,并受到区块链不可篡改性的保护,这意味着用户只有在边缘节点处成功解密数据后才能获取数据。因此,BEAF中的数据完整性得到了保障。
可用性 :我们考虑了系统可用性和数据可用性。首先,通过区块链节点的分布式部署,用户可以随时监控区块链的状态,获得可信且一致的结果。如果发生意外的节点故障,其他节点不会受到影响,并且通过边缘计算加密后,区块链内容也不会被篡改。其次,BEAF中的数据是透明的,对所有注册用户而言,数据一致且可信。通过共识机制,所有用户同步区块链内容,从而方便用户共享数据,且易于访问。因此,BEAF支持可用性。
可追溯性 :由于区块链能够以安全透明的方式提供服务和资源,数据分发的来源可以直接关联到网络参与者身份。通过这种方式,BEAF可以保障数据来源和所有权,以及由此产生的数据相关争议或责任认定。此外,借助区块链不可否认性,数据侵权问题将得到显著改善。因此,BEAF能够实现可追溯性。
可靠性、稳定性和可扩展性 :在BEAF中,通过智能合约规则进行区块链上的数据查询,并对部分共享数据提供用户监管。如果出现非法或不完整数据,用户可申请异常处理。智能合约接口的通用性使其能够适应大多数应用场景。通过采用区块链技术,BEAF可以避免传统物联网中心化云网络中的单点故障问题。此外,BEAF将区块链与边缘计算相结合,使大量设备能够为其在区块链上的数据共享提供计算能力,从而解决中心化云架构的可扩展性问题。
V. 性能讨论
在本节中,我们从平均响应时间和可靠性方面评估所提出的BEAF的性能。
我们在Webstorm2020.1.1.x64、express-session:1.17.1、docker 21.03、Fabric-node-sdk1.4、Nodejs v8.17.0、Golang 1.10.3、Npm 6.13.4、Ubuntu 18.04环境下进行实验,共进行了100次测试(每个阶段20次)。通过测试一周内各功能模块的数据采集耗时,评估BEAF的效率。
对于平均响应时间,我们在所有阶段(包括从注册阶段到数据下载阶段)评估数据执行效率。由于每个阶段的操作均通过后台服务器BS调用智能合约中的相应函数完成,因此我们主要考虑各阶段调用对应函数的时间开销。注册阶段调用函数signUp()和registerUser(),登录阶段调用函数login(),信息上传阶段调用函数upload()、Encrypted()以及setPrivateData()或setState(),数据查询和下载阶段调用函数queryData()、download()和Decrypted()。该性能测试主要测试链码的查询效率(例如单个文件和所有文件),以及数据上传和下载的平均响应时间,每项测试均进行25次,对应的平均响应时间分别为372ms、362ms、572ms和291ms。BEAF的性能结果总结于表II中。
表 II. 所提出的BEAF的性能
| 性能 | 具体指标 | 值 |
|---|---|---|
| 平均响应时间 | 查询(单个文件) | 372毫秒 |
| 平均响应时间 | 查询(所有文件) | 362毫秒 |
| 平均响应时间 | 上传 | 572毫秒 |
| 平均响应时间 | 下载 | 291毫秒 |
| 可靠性 | 系统稳定(操作持续时间) | 7*24小时 |
| 可靠性 | 系统故障率 | 每周5次 |
实验结果表明,所提出的BEAF具有较高的稳定性,且BEAF的效率较高,失败概率较低。
VI. 结论
本文提出了一种用于数据共享的区块链与边缘计算辅助安全框架(BEAF)。BEAF的目标是解决安全数据共享和隐私保护问题,并提高数据可信性。基于边缘计算和区块链,BEAF在数据安全、数据真实性、隐私保护、数据防篡改以及可追溯性方面保证了充分的安全属性。我们还讨论了所提出的BEAF在数据查询效率和系统可靠性方面的性能。此外,通过采用区块链与边缘计算范式,所提出的BEAF明显实现了可扩展性。
更多推荐



所有评论(0)