雾计算认证与隐私保护研究综述
2019-01-18曹咪徐雷陶冶
曹 咪 徐 雷 陶 冶
中国联通研究院 北京 100176
引言
思科于2011年首次提出了雾计算的概念[1],通过将物理上分散的节点连接起来,将数据、数据处理和应用程序分散在位于网络边缘的设备中,提高数据分析处理效率,降低时延,减少网络传输压力,就近为用户提供智能服务[2]。雾计算将云计算扩展到了网络的边缘,解决了云计算移动性差、地理信息感知弱、时延高等问题。雾计算以其广泛的地理分布、带有大量网络节点的大规模传感器网络、支持高移动性和实时互动以及多样化的软硬件设备和云在线分析等特点,迅速被物联网和人工智能应用领域的企业所接受并获得广泛应用,例如,M2M、人机协同、智能电网、智能交通、智能家居、智能医疗、无人驾驶等。451 Research在2017年10月《雾计算市场的规模和影响》的研究中指出,2022年雾计算市场规模有望达到183亿美元,2018年至2022的复合年均增长率将高达104.9%[3],雾计算具有广泛的市场潜力和应用范围。然而,雾计算兴起的同时也将带来新的安全挑战。一方面,雾计算位于网络的边缘,更靠近用户,复杂的应用环境和多样的业务服务使得安全问题得不到保证;另一方面,雾计算环境中的隐私数据面临着各式各样的安全威胁,传统的安全机制很难抵御恶意窃取、入侵和破坏,这就需要采用更好的安全机制加强雾计算系统的完整性、机密性和可靠性。如何保障认证和隐私数据安全是雾计算安全领域的重要研究内容,雾计算应用前景广阔,吸引了国内外各界学者对其展开研究[4]。然而,雾计算的安全研究才刚刚起步,由于技术的不成熟使得雾计算仍然面临着各种各样的挑战。
本文的组织结构如下。第一章简要分析雾计算的基础架构与技术特点;第二章概述雾计算在认证与隐私方面存在的问题;第三章总结雾计算在认证和隐私保护方面最新的研究成果;第四章提出未来可能的研究方向;最后对本文的内容进行总结,对未来的工作进行展望。
1 雾计算基础架构与特点
雾计算融合了网络、计算、存储、应用等能力,是一种半虚拟化架构的分布式服务计算范式[2]。雾计算的目的是在靠近用户的网络边缘,为用户提供一个有力的计算、存储和通信资源,进而提供本地化、短距离和高效率的连接服务,从而克服云计算距离用户远、延迟高的弊端。
1.1 雾计算基础架构
根据Bonomi F等人提出的概念,雾计算服务结构可分为三个层次[5]:终端设备层、雾层和云层。图1展示了雾计算的三层基础体系架构[6]。
图1 雾计算三层体系架构
终端设备层:作为三层结构的最底层,终端设备层由数量众多的智能终端与这些智能终端产生的海量数据构成。智能终端设备包括传感器节点、智能手持设备(如智能手机、平板电脑和智能手表)等,这些终端设备通常被称为终端节点[7]。
雾层:这一层也称为雾计算层,位于中间的雾层部署在地理位置分散的雾服务器上,如公园、公交车、购物中心等等,为智能终端和云之间搭起桥梁。每个雾服务器是高度虚拟化的计算系统,类似轻量级的云服务器。此层中的雾节点由网络设备,比如路由器、网关、交换机、无线接入点(APs)等组成。这些雾节点可以协同共享存储和计算设施。
云层:由于雾服务器的处理能力有限,当有任务需要更多的计算资源时,这些待处理的用户数据将通过高速有线或无线网络从雾层上传至云层,使用云计算更为丰富的资源和应用。传统的云服务器和云数据中心驻留在云层,具有足够的存储和计算资源。
雾-云接口[8]提供端到端的服务,包括将云服务分发给雾等。在雾计算中,会有多个节点或系统相互协作以共享数据存储和计算任务,因此,雾-雾接口和协议使不同的雾节点之间能够相互协作。此外,雾-物接口将支持安全高效的资源利用。
1.2 雾计算技术特点
云计算的服务对象一般是互联网用户,多数情况下通过IP网络以多跳的方式与用户进行远距离通信;而雾计算主要服务于移动用户,每个雾服务器的覆盖范围有限(一般而言,无线Wi-Fi的通信距离是200米),可与移动用户单跳直连。在服务特征上,不同于云计算位于互联网中采用集中式的管理模式,雾计算位于本地网络的边缘,采用分散式或分级部署。在服务能力上,云计算为用户提供充足、可扩展的存储能力和计算能力;而雾计算基于有限的存储、计算能力,为用户提供本地化的信息和服务应用。此外,雾计算比云计算在延迟方面低很多,且地理感知能力强,支持移动性,这就使得雾计算更适用于诸如紧急医疗服务、视频流、游戏、增强现实等场景。表1列举了雾计算和云计算在目标用户、工作环境与服务特征三个主要方面的对比[9-10]。基于雾计算的服务结构,总的来说,雾计算具有延迟低、地理分布广、位置感知强、适应移动性应用、实施容易等特点。
2 雾计算中的认证与隐私问题
2.1 雾计算认证问题分析
对网络设备的身份认证是雾网络中的重要要求之一。网络设备要访问雾网络的服务,必须先通过雾网络的身份认证成为网络的一部分,这对于防止未经授权的节点进入雾网络至关重要。由于网络中的设备在电力、处理和存储等方面受到各种限制,网络设备认证成为一个巨大的挑战。由于物联网设备的资源限制,传统使用证书和公钥基础设施(PKI)的身份验证机制不再适用。
表1 雾计算与云计算的比较
雾节点经常动态地加入或离开雾层,当新的雾节点连接(或离开)雾层时,需要确保对已注册终端用户的不间断服务,雾节点必须能够相互验证自己新形成的雾层。此外,雾节点还需要限制或拒绝来自恶意或受损节点的服务请求。
2.2 雾计算隐私问题分析
在雾计算中,分布式节点的计算能力能够降低数据中心的总压力,但是,与终端用户相邻的雾节点可能收集有关用户身份、位置、应用程序使用等敏感数据。另外,由于雾节点大面积分散,集中控制十分困难,安全性较差的边缘节点可能成为入侵者进入雾网络的入口,入侵者一旦进入网络,就可以挖掘和窃取用户在实体间交换的隐私数据。雾计算的三层体系架构之间的通信也会导致隐私泄漏。
位置隐私是最重要的隐私模型之一[11],因为设备的位置可以链接到所有者。由于雾客户端将其任务卸载到最近的雾节点,因此用户的位置、轨迹,甚至移动习惯都可以从相关的雾节点上显示出来,通过分析雾节点的信息可以分析出用户信息和行为习惯,比如根据智能电表的读数可以透露房屋空置的时间信息[12]。
3 雾计算认证与隐私保护研究现状
3.1 雾计算认证相关研究
Hu等人[13]提出了三种方案,分别是1)身份认证方案,2)数据加密方案,3)数据完整性检查方案,用于具有人脸识别和分辨率应用的雾计算。基于认证和会话密钥协议、基于会话密钥的高级加密标准(AES)对称密钥加密机制以及SHA-1安全哈希算法三种主要策略,这三种方案可以在物联网的雾计算环境下提供保密性、完整性和可用性。
在雾存储系统中,细粒度访问控制被认为是一个重要的问题。Koo和Hur[14]为加密数据提出了一种重复数据删除方案,该方案使用用户级密钥管理和更新机制能够支持雾存储系统中的细粒度访问控制。与方案[15]相比,方案[14]在计算、通信和存储方面更为有效,但是对抗模型有限。使用雾计算能够提高证书撤销分发在物联网环境中的有效性,如在工作[16]中,作者提出了一个基于四个系统实体的方案,包括CA、后端云、雾节点和物联网设备。
雾平台和终端用户设备之间的不安全认证协议被文献[17]确定为雾计算的主要安全问题。文中指出,物联网设备,尤其是智能电网中的物联网设备,容易受到数据篡改和欺骗攻击,可以借助公钥基础设施、DiffieHellman密钥交换、入侵检测技术和修改输入值的监视等来防止数据篡改和欺骗攻击。文中建议,通过实施身份认证方案确保雾平台和用户之间通信通道的安全,可以防止这种攻击的风险。
就目前的认证现状来看,雾平台在规范和要求上缺少严格的身份认证和安全通信协议。在雾平台中,安全和性能因素需要被同时考虑,而加密方法诸如完全同态[18]和Fan-Vercauteren同态[19]的加密机制可以用来保护数据。这些方案包括对称加密算法和公钥加密算法的混合,以及基于属性加密的其他变体。由于同态加密允许在不解密数据的情况下进行正常操作,因此减少密钥分发将维护数据的保密性。其他研究工作提供了一个类似的框架,如高效和隐私保护聚合(EPPA)方案[20],该系统基于同态Paillier密码机制进行数据聚合,由于加密的同态性,使得本地网络网关能够在不解密的情况下对密文执行操作,从而降低认证成本,同时保持数据的机密性。
3.2 雾计算隐私保护相关研究
Lu等人[21]利用中国剩余定理,引入了一种轻量级的隐私保护数据聚合(LPDA)方案,用于雾计算增强的物联网。LPDA能够将混合物联网设备的数据聚合为一个数据集,并能抵御虚假数据注入攻击。与基本Paillier加密的聚合相比,LPDA方案在计算成本和通信开销方面具有更高的效率,但是没有考虑可追溯性。
Wang等人[22]介绍了一种基于差分隐私的可持续性雾计算支持数据中心查询模型。使用Laplacian机制,与传统的隐私保护模型相比,该查询模型在执行效率、隐私保护质量、数据效用和能耗等方面都有更好的表现。
为了解决雾计算系统中接近探测的隐私保护问题,Huo等人[23]提出了一种基于位置差分的接近探测(LoDPD)协议。LoDPD协议使用Paillier加密算法和决策树理论,以保护用户所在位置的隐私不被泄露给任何一方。与私有接近探测(PPD)协议[24]相比,LoDPD协议的通信开销更小。
在有界检索模型中,Yang等人[25]提出了一种基于位置隐私保护的安全定位协议,用于基于位置的雾计算。Xiao等人[26]在雾计算环境中引入了一种细粒度所有者强制搜索的混合解决方案,具体来说,该方案基于三个主要阶段,分别是:1)系统初始化,2)敏感数据外包存储,3)对外包敏感数据的搜索和访问。
Ni等人[27]指出,基于雾计算的车辆群智感知是一种新兴的范例。然而,身份验证和隐私保护是影响群智感知功能的关键方面。Basudan等人[28]提出了一种隐私保护方案,称为无证书聚合签密方案(CLASC),用于使用雾计算的车辆群智感知。CLASC可以实现数据的保密性、完整性、双向鉴别、隐私保护和匿名性。CLASC方案与现有方案相比,具有更低的计算成本,但是没有考虑位置隐私。与文献[28]的工作类似,Liu等人[29]介绍了两种基于雾计算的车载自组网(VANET)安全交通灯控制方案。其中基于位置加密和基于加密难题的两种策略都能有效地防御拒绝服务攻击,但与方案[28]相比不考虑匿名性,且对抗模型受限。
与方案[21]类似,Wang等人[30]在基于雾计算的公共云计算中提出了一种聚合方案,称为匿名安全聚合方案(ASAS)。具体来说,ASAS方案考虑了基于雾的公共云计算,具有4种类型的实体,包括系统管理器、终端设备、雾节点和公共云服务器。基于椭圆曲线公钥密码体制和Castagnos Laguillaumie密码体制两种主要的解决方案,ASAS能够保证匿名性和身份隐私,但是对抗模型有限。
Kulkarni等人[31]提出了一种隐私保护框架来保护最终用户设备和雾网络之间传感器的数据安全,侧重于在传输过程中保护个人和关键数据。其引入了选择性公钥密码体制,使得可用性与隐私保护达到平衡,能够抵御内部攻击和数据窃听攻击。但是没有考虑计算开销,且由于传感器会连续传输数据,如果持续时间较长,隐私框架有可能会使底层雾系统过载,甚至崩溃。
表2总结了用于雾计算的身份认证和隐私保护方案。
表2 雾计算身份认证与隐私保护方案
4 雾计算认证与隐私保护研究建议
目前针对雾计算认证和隐私保护的研究数量相当有限,但是并不意味着研究人员在开发新的安全机制时必须从零开始。可以使用为其他相关范例设计的安全机制,作为开发雾计算安全认证和隐私机制的基础,通过重用或改编各种安全机制,将为其他范式设计的方案灵活应用到雾计算。然而,也有必要分析每个相关范式(如移动边缘计算、移动云计算等边缘范式)的具体细微差别,因为移动网络运营商的基础结构或用户拥有的数据中心的基本特征,会影响不同安全机制的适应过程。4.1节和4.2节将具体介绍可能重用或改编到雾计算环境下的认证和隐私保护机制,为后续的雾计算认证与隐私保护研究提供方向和借鉴。
4.1 雾计算认证研究建议
有多种方法用于云间身份管理系统的创建[32],这样的方法可以使用各种标准,如SAML和OpenID,提供云之间的单点登录(SSO)身份验证。还有几个机制可以提供相互身份验证而无需连接到中央身份验证服务器[33]。由于这些方法的设计与雾计算的底层基础架构兼容,因此,所有这些方法都可能被修改为处理不同信任域的雾计算的身份验证。
另一方面,还有一些身份验证基础架构侧重于同一信任域中的用户身份验证,这是为边缘范式设计的[34-35]。在雾计算领域也有其他一些工作[36]可以对用户进行身份验证,通过使用配对密码体制和安全硬件[37]或使用混合加密(公钥和对称密钥加密)[36]等实现。
在用户身份验证的主题上,由于用户数据会卸载到终端用户附近的节点,也有研究人员提出基于特定位置信息的身份验证方案。例如,基于情景的认证[38]、使用近场通信(NFC)验证移动设备是否将任务卸载到授权的本地节点[39]。基于位置的身份验证已在其他几个领域进行了研究(例如无线传感器网[40]、物联网[41]),可以为雾计算的研究提供良好借鉴。
至于用户移动性,有一些协议试图实现安全高效的身份验证切换[42]。但这些协议通常需要访问集中云基础结构中的身份验证服务器,因此有改进的余地。
4.2 雾计算隐私保护研究建议
许多安全协议(如实体身份认证[37]和授权[36,43]、信任管理[44])允许用户以匿名的方式与数据中心和其他实体进行交互。也有特定的隐私机制,如数据加密、安全数据共享、加密数据搜索、完整性验证等[45],其主要目标是保护用户的个人数据。其中一些机制没有很高的计算要求,可以在雾计算交互的用户设备中实现。
在用户和其附近的雾节点存在信任关系的情况下,对于一些实体(如个人、节点、公司环境等)的隐私保护,可以采取在雾节点部署隐私保护器的方式,这些保护器作为用户的前端,可以实现各种数据隐私机制。这些机制可用于控制服务提供商或其他远程实体接收的个人信息的质量和粒度[46-47]或保护用户的身份[48]等。
5 总结与展望
由于移动性、异质性、大规模分布等特点,雾计算中出现了许多新的认证和隐私问题。本文针对雾计算的认证和隐私问题进行了深入研究,分析了雾计算存在的认证和隐私问题,总结了雾计算在认证和隐私保护方面最新的研究成果,并提出了未来可能的研究方向。
在本文工作的基础上,需要进一步探索并实践适用于雾计算环境的有效认证和隐私保护解决方案。另外,对于安全问题,还有一些未来的工作值得进一步调查。一方面,需要探究雾计算环境下的其他安全问题,如入侵检测、信任管理、访问控制、容错性、取证等;另一方面,还需要探索针对不同应用程序或应用场景的安全解决方案,如智能电网、智能交通等。总之,雾计算的安全研究仍处于起步阶段,未来会有更多的开放问题值得思考。