一种车载自组织网络中的基于身份且可撤销的数据共享方案
摘要
在车载自组织网络(VANET)中确保数据机密性是一个日益重要的问题。消息机密性、用户隐私和访问控制是影响VANET所提供服务的最关键问题。然而,在保护用户隐私的同时实现针对数据下载的访问控制仍然是一个未解决的问题。基于一组属性,密文策略属性基加密(CP‐ABE)算法为共享数据提出了一种细粒度的加密/解密机制,因此已成为数据共享访问控制的一种流行解决方案。然而,现有的CP‐ABE方案对于VANET仍不可行,因为这些方案依赖单个权威机构,并且存在加密/解密效率低下以及忽略撤销机制的问题。本文在支持撤销的CP‐ABE基础上,提出一种基于身份的方案,以实现VANET中的安全数据共享。为了减轻车载单元(OBU)的计算负担,我们将计算密集型的加密和解密操作外包给云计算节点。属性由应用服务提供商去中心化管理,这些提供商根据车辆订阅为其提供服务。全面的实验结果和安全分析表明,我们的方案在保护用户隐私的同时实现了细粒度访问控制。通过实际实现和性能分析,证明了我们的方案适用于车载自组织网络。
索引词 —访问控制,云存储,密文策略属性基加密,车载自组织网络。
一、引言
物联网(IoT)[1],云计算[2],和移动通信技术是支撑车载自组织网络(VANET)可行性的关键方面[3]。在VANET中,路侧单元(RSU)沿道路或街道交叉口部署。每辆车辆都配备一个称为车载单元(OBU)的无线通信设备,该设备可与RSU通信并将数据上传至云。政府和服务提供商随后可以基于此基础设施实施创新的技术应用并开展业务,从而实现参与者之间的高效协作。例如,车载单元(OBU)可与路侧单元(RSU)通信,向其他车辆和交通控制中心共享交通信息。随后,这些车辆可更改行驶路线,而交通控制中心可调整交通信号以避免交通拥堵。这些交通数据可存储在云中,用于进一步处理和分析,以提供全球定位系统(GPS)路线建议或支持交通控制研究。将数据外包到云存储可能导致数据脱离数据所有者的控制,因为存储系统由位于不同位置的云服务提供商维护。[4]的作者指出,在采用云计算时,安全和隐私问题是首要关注事项。当未加密数据在VANET中传输时,会出现安全和隐私风险。
Tzeng et al. [5]最近提出了一种基于身份的批量验证(IBV)方案,以使VANET在实际应用中更加安全和高效。数据和信息的泄露可能导致隐私损失,甚至影响公共安全。因此,这些资料在传输前必须进行适当的加密和保护。为避免数据泄露和篡改,系统还必须具备良好的访问控制机制,以确保只有授权人员才能访问数据。通常,VANET中的数据共享出于安全目的采用群组加密模式[6];然而,为车载单元组建群组和管理密钥十分困难。密文策略属性基加密(CP‐ABE)提出了一种多方数据加密方法,可提供细粒度访问控制,并可成为安全VANET通信的解决方案。在CP‐ABE中,数据所有者可指定哪些人有权访问共享数据。CP‐ABE算法包含一种由属性集合决定的多方加密方案,该集合构成一个策略,而该策略本身指明了谁能够解密数据。然而,当前的CP‐ABE方案无法直接应用于VANET,因为传统的CP‐ABE方法加解密操作效率低下。此外,VANET中的高流动性导致频繁的属性更新,而传统CP‐ABE方案不包含撤销机制来消除过期属性。
最初,萨海和沃特斯[7]提出了属性基加密(ABE),随后,Bethencourt et al. [8]提出了密文策略属性基加密(CP‐ABE)。目前,CP‐ABE被广泛用于数据访问
云计算因其支持多用户特性而被广泛使用。然而,CP‐ABE依赖于单个权威机构进行认证并向用户分发属性,这可能导致系统瓶颈并降低系统性能。为了提高CP‐ABE在云系统中运行的适用性,我们将原始的CP‐ABE扩展为采用多个属性授权中心的版本,从而使我们提出的CP‐ABE更适用于需要考虑来自不同组织众多属性的复杂云环境。大多数车载单元(OBU)在计算、存储和传输方面存在限制。因此,为了支持CP‐ABE中复杂的加密和解密算法所带来的高计算负担,我们将部分加密和解密操作卸载到功能更强大的路侧单元(RSU)和计算节点上。我们在所提出的CP‐ABE中还实现了属性撤销机制。在车载自组织网络(VANETs)中,属性撤销和用户撤销极为重要,因为用户和数据更新频繁。所提出的方法在保障数据安全的同时,高效地支持用户和属性的撤销。最后,我们提供了详细且全面的评估与实验结果,验证了所提出模型的数据安全、有效性和可行性。本文的主要贡献总结如下:
1) 我们构建了一种新的多授权机构CP‐ABE方案,以支持安全的VANET数据共享方案,同时保留原始CP‐ABE的安全性、可扩展性和细粒度特性。
2) 我们为车载自组织网络中的多授权机构CP‐ABE方案设计了一种高效的属性和用户撤销方法。具体而言,我们将计算密集型的加密和解密操作部分外包,从而帮助减轻车辆中资源受限的OBU设备的负载压力。
3) 我们提出了一种有效且安全的车载自组织网络数据共享方案。整体实验结果和安全分析表明,该方案适用于实际应用,能够实现基于车载自组织网络的应用服务中的安全通信。
本文的其余部分组织如下:第2节介绍相关工作,第3节介绍本研究中使用的预备知识与符号说明,第4节提出所提方案。我们在第5节中描述了评估并报告了实验结果。最后,第6节给出结论并展望未来工作。
II. 相关工作
A. 背景
车载自组织网络结合了物联网和云计算技术,以实现车对车(V2V)、车对人(V2P)和车对基础设施(V2I)通信。分析车载自组织网络中的交通与商业信息正逐渐成为一项关键技术,可减少交通事故、提高交通效率并改善驾驶体验;因此,车载自组织网络近年来受到越来越多的关注。然而,信息不安全是阻碍车载自组织网络发展的一个重要问题。服务提供商和车载单元通常将数据外包给云存储,这使得数据脱离了其所有者的控制,并可能向未授权实体泄露。云解决方案中的数据安全是用户关注的重要问题。传统的群加密方法存在较高的密钥管理开销。由于具有分布式特性,CP‐ABE方案已在云系统中被广泛用于数据加密。然而,由于OBU设备资源受限,原始的CP‐ABE方法不适用于车载自组织网络。因此,我们提出了一种基于CP‐ABE的方法,该方法不仅提供多授权机构能力,还支持用户和属性撤销。我们的方案还支持代理加密和解密,从而可以分担计算密集型任务。
B. 属性基加密
萨海和沃特斯[7]首次提出了基于属性的加密概念。在属性基加密方案中,系统公钥和系统主密钥由预定义权威机构生成。必须预先定义一个根据属性生成密钥的权威机构;因此,密钥将包含用于未来加密和解密任务的属性。在属性基加密方案首次提出之后,许多改进的ABE方案被相继提出。ABE方案主要根据属性和策略如何与密文及用户的解密密钥相关联,分为两类——密钥策略ABE(KP‐ABE)和密文策略属性基加密[8]–[11]。Goyal等[12]提出了KP‐ABE,其中密文与一组属性相关联,而用户的解密密钥与一个单调树访问结构相关联。与密文相关联的属性必须满足该树形访问结构,从而确保只有该用户可以解密密文。在CP‐ABE[13]–[15],中,加密者使用树形访问策略对密文进行加密,而相应的解密密钥则是基于一组属性生成的。当与解密密钥相关联的属性集合满足给定密文所关联的树形访问策略时,该密钥即可用于解密该密文。
许多研究提出了改进属性基加密(ABE)的方案;然而,大多数ABE方案存在访问控制策略复杂且不灵活的问题。为了构建适用于分布式环境的ABE方案,文献[16]–[19]的作者提出了多权威机构ABE,以避免单一权威机构的过载。为了实现对存储在云服务器中的外包数据进行灵活、细粒度且可扩展的访问控制,Wan等[20]通过将密文策略ASBE扩展为分层用户结构,提出了分层属性集加密(HASBE)。这些方案在处理存储于云服务器中的外包数据时,实现了可扩展、灵活且细粒度的访问控制。在属性基加密方法的实际应用中,成员和属性可能频繁变更或更替;因此,已有部分可撤销ABE[21]–[25],[43],[44]被纳入所提方法中考虑。所提方案能够动态修改访问策略或文件属性,并支持按需用户或属性撤销,从而使ABE更适用于实际应用场景。此外,一些包含隐私保护的方案
表I 我们的方案与其他相关方案的功能比较
保护[45]–[47] 或策略隐藏[48] 也已被提出。最近,一种用于替代传统密文策略属性基加密部分工作的基于区块链的方法[49]–[51] 被提出。然而,如何充分地将区块链技术与CP‐APE相结合仍然是一个开放性问题。[52]的作者从运营商的角度为讨论基于区块链的安全技术所面临的安全挑战提供了更充分的背景知识。
C. 车载自组织网络中的属性基加密
许多属性基加密(ABE)方案已被提出,以实现车载自组织网络(VANETs)中传输消息的细粒度访问控制。黄和Verma[26]首次将密文策略属性基加密(CP‐ABE)引入VANET,并提出了一种安全策略执行方案,以实现安全消息传播。随后,[27],作者提供了一种机制来改进[26]中的方法,并解决了不同安全路侧单元(RSU)组内的车辆无法直接相互通信的问题。针对紧急服务,Yeh et al.[28]提出了一种在VANETs中的访问控制方案,利用属性基加密(ABE)向附近的救援车辆安全地发送消息。文献[29]中提出了一种支持匿名车辆证书的密钥策略属性基加密(KP‐ABE)方法。Zhang et al. [30]提出使用属性基加密(ABE)根据用户许可证授予对服务和数据的访问权限。针对车辆网络,Liu et al.[31]提出了一种安全消息传播方法,将本地解密计算外包给最近的路侧单元(RSU)。Xia et al.[32]在VANETs中引入了一种针对密文策略属性基加密(CP‐ABE)的外包解密方法,但该方法要求每个路侧单元(RSU)为所有车辆恢复私钥。针对车载云计算,Huang et al.[33]提出了一种安全高效的消息访问控制与认证方案,将计算密集型的加密、解密和签名操作外包给云服务器和路侧单元(RSU)。在[34],中,作者设计了一种算法,将CP‐ABE加密任务分配到车辆集群中。Zhao et al.[35]提出了一种带有解密验证机制的可验证隐藏策略密文策略属性基加密(CP‐ABE)方案。该方法支持隐藏策略以实现隐私保护;外包的解密验证机制可验证解密结果的正确性。为了确保信息机密性,Pan et al.[36]采用了CP‐ABE,并选择部分车辆(称为边缘计算车辆(ECVs))作为边缘计算节点进行共享,以减少路侧单元(RSU)上的显著延迟和高负载。然而,这些方法既未提及也不支持撤销机制。最近,Cui et al.[37]采用了具有可追溯性和撤销机制的属性基签名(ABSs)来实现消息认证和完整性,并保护车辆隐私。然而,作者并未说明该方法是否可用于多权威架构;若无法支持,则可能限制该方法的实用性。表I列出了我们的方案与近期几篇使用密文策略属性基加密用于车载自组织网络的文章在功能上的比较。
III. 预备知识
在本节中,我们介绍所提出方法中使用的一些技术,并描述我们解决的问题。
A. 双线性映射
设G0和GT是两个素数阶p的循环乘法群,并令g为G0[38]的一个生成元。设 e:G0×G0→GT 表示一个具有以下性质的双线性映射:
1) 双线性:对于 a, b ∈ Zp和 u, v ∈ G0,有 e(ua, vb)= e(u, v)ab= e(ub, va)。
2) 非退化性: e(g,g) ≠ 1。
3) 可计算性:存在一种有效算法,可对任意 u, v ∈ G0计算e(u, v)。
B. 访问结构
定义1(访问结构):设{P1, P2,…, Pn}为一组参与方。如果集合A ⊆ 2{P1 ,P 2 ,…, P n}满足B, C:当B ∈A且B⊇C时,有C ∈A,则称该集合A是单调的。访问结构(相应地,单调访问结构)是{P1, P2,…, Pn}的非空子集的一个集合(相应地,单调集合),即A ⊆ 2{P 1 ,P 2 ,…, P n}{∅}。其中A中的集合称为授权集合,而不在A中的集合称为非授权集合。
C. 线性秘密共享方案
观察[8],[9],[12]和[39],中的构造,可以使用线性秘密共享方案(LSSS)来表示访问结构。LSSS的定义如下。
定义2:一个LSSS,即在一组参与方P上的秘密共享方案Π,若满足以下条件,则称为在Zp上线性:
1) 每个参与方的共享份额构成一个在Zp上的向量。
2) 存在一个矩阵M,称为Π的共享生成矩阵,具有l行和n列。对于i= 1,…,l,位于M第i行的情况,我们令函数 ρ定义标记第i行的参与方为 ρ(i)。当我们考虑一个列向量v=(s,r2 ,…, rn),其中s ∈Zp是待共享的秘密,r2 ,…,rn ∈Zp是随机选择的,则Mv即为共享份额的向量。
根据Π,l个秘密s的共享份额中,份额(Mv)i属于参与方ρ基(i)于。上述定义的每个线性秘密共享方案都具有线性重构性质,定义如下:假设 Π是访问结构A的LSSS结构。令S ∈A为任意授权集合,并令I ⊂{1, 2,…, l}定义为I={i: ρ(i) ∈ S}。那么存在常数{ωi ∈ Zp} i∈I,使得如果{λi}是根据 Π对任意秘密s生成的有效份额,则有 ∑i∈I ωi λi= s。这些常数{ωi}可以在关于共享生成矩阵M大小的多项式时间内求得。对于任何非授权集合S∉A,不存在这样的常数{ωi}。
D. 决定性q-并行双线性Diffie-Hellman指数假设
判定性q‐并行双线性Diffie‐Hellman指数(q‐并行BDHE)问题在[9]中定义,重新表述如下:设 a, s, b1,…, bq ∈Zp随机选取,且g为循环乘法群G0的生成元。如果一个攻击者被提供
⇀ y=(g, gs, g 1 z, g a z,…, g aq z, ga,…, ga q, ga q+2 ,…, ga 2q, ∀1≤j≤q g s·bj, g a b j,…, g aq b j, g aq +2 b j,…, g a 2q b j ∀1≤j,k≤q, k≠j g a·s·bk b j,…, g aq·s·bk b j),应该难以区分有效的元组 e(g, g) aq +1 s ∈ GT与GT. 中的随机元素如 R果算法B输出 z ∈{0, 1}在解决GT中的判定性q‐并行 BDHE问题上具有优势 ε,则
∣ ∣ ∣ Pr[B(⇀y, T= e(g, g) aq + 1 s)=0]−Pr[B(⇀y, T=R)= 0] ∣ ≥ε
定义3:如果不存在多项式时间算法能在解决q‐并行 BDHE问题上具有不可忽略的优势,则判定性q‐并行BDHE假设成立。
E. 问题定义
在车载自组织网络中,共享车辆信息的数据隐私与安全备受关注。然而,现有的CP‐ABE方案无法直接应用于车载自组织网络,主要原因在于车辆设备资源受限,而传统的CP‐ABE具有较高的加解密计算开销。此外,VANET组成员频繁更替。为了使CP‐ABE能够适用于车载自组织网络,我们引入计算节点和路侧单元,分担原本由车载单元承担的CP‐ABE算法中的加解密负担。当使用车载系统进行车载自组织网络通信时,数据通常通过 Wi‐Fi传输至公共区域,并存储于云中以供后续应用。因此,如何保障数据的隐私性,以及通过访问控制机制确定哪些实体可以访问共享数据,对于维护不同实体间的数据隐私与安全至关重要。由于车载自组织网络中成员更替频繁,我们在所提出的方法中还引入了高效撤销机制,使CP‐ABE更适用于车载自组织网络。
表二 本文使用的符号
表三 系统参数
四、方法论
在本节中,我们首先介绍系统模型中的实体,并描述所设计系统的安全模型和要求。最后,展示了所提方案,该方案由五个阶段组成,作为车载自组织网络的内核模块实现。
A. 系统模型
表II和表III展示了我们系统中使用的主要缩写和符号,图1展示了系统模型。我们的系统模型由以下介绍的六个实体组成:
1) 信任机构(TA):一个功能强大且受信任的服务器。TA由政府部门监管,并始终保持在线。TA负责初始化系统参数,生成系统公钥和系统主密钥,管理应用服务提供商(ASP)的加入或移除,处理用户注册,并生成用户的公钥和私钥。此外,TA作为证书颁发机构,为用户和ASP签发证书。
2) 应用服务提供商(ASP):ASP是为车辆提供应用程序或服务的独立单元。每个ASP根据其提供的服务管理一个属性列表,该列表还指明了谁可以使用该服务。例如,ASP1 是一个GPS提供商,从云存储中收集车辆提供的交通数据。然后,ASP1 处理这些数据以提供不同级别的GPS服务取决于用户的订阅级别和地理位置。这些属性可以对应于群组或用户级别。“基础”级用户只能获得少量服务,而“高级”级用户可以获得全部服务。属性服务提供者使用属性策略对服务数据进行加密,以指明哪些用户可以解密该数据,并将密文上传至云存储。属性服务提供者还负责处理用户根据其用户属性密钥所请求的服务。
3) 云服务提供商(CSP):云服务提供商拥有充足的计算能力和存储空间。CSP存储由属性服务提供者上传的服务数据以及车辆生成的密文(CT)。在收到请求时,CSP将向授权实体发送密文(CT)。当可信机构(TA)或属性服务提供者(ASP)通知发生用户或属性撤销时,CSP还会重新计算密文密钥。CSP遵循服务等级协议(SLA)来提供运行时间和相关服务。
4) 路侧单元(RSU):RSU广泛部署在道路两侧和交叉路口,充当边缘计算设备。RSU负责将来自可信机构(TA)和属性服务提供者(ASP)的信息广播给车辆。车辆也通过RSU相互通信并向云服务提供商(CSP)上传数据。RSU还协助分担原本由车载单元(OBU)承担的CP‐ABE算法的解密计算任务,为车载自组织网络(VANETs)提供边缘计算能力。
5) 车载单元(OBU):每辆车辆都配备一个OBU,以便它们可以相互之间以及与RSU进行通信。一个新的OBU首先向TA注册以获取证书、UPK和USK,这些信息随后被预加载到OBU设备中。驾驶员可以通过OBU向ASP订购服务;如果OBU被ASP验证通过,ASP将为驾驶员申领的服务提供属性和UAKs。由于OBU的计算资源有限,它会请求计算节点(CNs)协助完成CP‐ABE算法中的加密和解密操作。
6) 计算节点(CNs):计算节点作为云计算服务器部署在云上,用于帮助OBU运行CP‐ABE算法。OBU可以请求帮助并将指数级CP‐ABE运算卸载给计算节点(CNs)。
B. 安全假设与要求
我们系统模型中各角色的安全假设如下。TA是完全可信的,始终在线,并由政府控制。TA是整个系统的管理员,不会与任何实体串通。ASPs为客户提供服务,管理自身的属性,并确定用户是否具有所声称的属性。CNs提供加密和解密所需的计算,以减轻OBUs的开销。RSUs、ASPs和CNs被认为可能被攻破,因此不能完全信任。CSP始终在线,且拥有充足的存储空间。我们假设CNs和CSP是“诚实但好奇”的,即它们会正确执行分配给它们的任务,但可能会试图从上传的文件中提取和收集信息。用户被认为是不诚实且好奇的;例如,他们可能相互串通以尝试获得未授权的访问权限,或与任意ASP串通以获取超出其分配权限的访问权限。为了确保所设计系统的安全访问控制需求,我们对所提出的方法定义了以下要求。首先,我们的方案保证数据机密性,即数据内容对未经授权用户、ASPs、CSPs、RSUs和CNs保持保密。其次,我们实现抗共谋性,即恶意用户相互串通时不应能够通过组合其属性来解密密文。只有属性集合满足密文中嵌入的访问策略的合法用户才能进行解密。最后,为保护隐私,OBU在与其他实体通过证书通信时不会泄露驾驶员身份。属性集合或证书中不包含任何个人信息。
C. 系统概述
在图1中,我们展示了用于实现安全数据共享的基于身份且支持撤销功能的方案架构。该架构包含一个可信机构(TA)、一个云服务提供商(CSP)、应用服务提供商(ASPs)、计算节点(CNs)、配备车载单元(OBU)以进行通信的车辆,以及沿道路或交叉路口安装的路侧单元(RSU)。我们的系统模型基于一个称为车载自组织网络云(VANET Cloud)的私有云。可信机构(TA)、云服务提供商(CSP)、应用服务提供商(ASPs)和计算节点(CNs)均位于云中。车载单元(OBUs)与路侧单元(RSUs)通过无线信道相互通信,而路侧单元(RSUs)与可信机构(TA)则通过固定安全网络进行通信。TA、CSP、ASPs和CNs位于云中,并彼此之间相互通信。OBUs可以通过RSUs与TA之间的固定安全网络链路连接到云,并与CSP、ASPs和CNs进行通信。
车载自组织网络云(VANET Cloud)由可信机构(TA)进行监控,而该可信机构由政府部门管理以托管此系统。TA负责初始化系统密钥,然后发布公共参数,并处理用户和应用服务提供商的注册申请。系统的初始设置仅在系统创建时运行一次。TA还负责用户和应用服务提供商的注册,以确认哪些实体可以加入该系统。在完成系统初始化后,用户和应用服务提供商(ASP)可随时申请加入该系统。可信机构(TA)向用户提供用户公钥和私钥,并向用户及应用服务提供商(ASP)发放证书。为减轻TA在注册过程中的负载压力,TA可利用云计算来分担其工作。云服务提供商(CSP)和计算节点(CNs)也通过云计算技术构建并纳入本系统。CSP为加密数据提供充足的存储空间,而计算节点(CNs)则为资源受限的车载单元设备(OBU)提供计算能力,以协助完成加密和解密运算。应用服务提供商(ASP)可申请加入系统,开展业务并为系统提供服务。ASP维护一组独立的属性,并通过嵌入式访问结构对数据进行加密,以指明哪些合法用户可以解密数据,并将加密后的数据上传至CSP。购买了ASP服务的用户可以获得相应的属性密钥用于数据解密。合法用户从CSP下载加密数据,并利用所获得的属性密钥进行解密。由于车载单元(OBU)的计算资源有限,因此可请求路侧单元(RSU)或计算节点(CNs)协助完成加解密操作。类似地,车载单元(OBUs)之间也可通过这种方式交换数据。
由于可信机构(TA)的监控需求或应用服务提供商(ASPs)的业务服务需求,某些服务需要车载单元(OBU)提供用户数据以收集交通数据。或者,应用服务提供商(ASP)需要收集车辆数据以增强其提供的服务内容。例如,对于GPS服务,应用服务提供商(ASP)需要车辆的行驶数据来改进其服务。然而,通常由于个人隐私的原因,车辆不愿意与其他方共享其数据。为了鼓励用户共享其车载单元(OBU)数据,应用服务提供商(ASPs)可以定制激励机制。例如,愿意提供其车载单元(OBU)数据的用户可以享受服务费折扣;此外,此类用户的车载单元(OBU)可以获得服务等级的免费升级,或能够与其他车载单元(OBUs)共享数据。此外,用户始终可以通过定义访问结构来决定谁可以解密其提供的数据。
D. 实现
初始化阶段、密钥生成、加密、解密和撤销是为车载自组织网络系统实现的五个阶段。
初始化阶段
该算法分为三个部分,分别在TA、ASPs和CSP上实现。
第一部分是 TA_Setup(),用于为整个系统生成公钥和主密钥。可信机构选择一个素数阶的双线性群G0 、一个生成元g、两个随机指数 α, β ∈ Zp以及两个哈希函数H1:{0, 1} ∗ → Z p ∗, H2:{0, 1} ∗ → Z p ∗。公钥发布为PK=(G0 , g f=g β , e(g, g) α , H1(·) H2(·))。可信机构将MK=(β, g α )设为主密钥并保密保存。
接下来是 ASP_Setup(公钥)。此步骤在每个ASP中执行,用于计算其所维护属性的属性密钥。假设有 m个应用服务提供商ASP i , 1 ≤i ≤ m。每个ASP i 维护一个大小为 n i 的属性列表,Attr i ={a1 ,… a j ,…, a n i }其中包含 n i 个随机群元素h1,…, hni ∈G0 。ASP i 以公钥PK作为输入。对于每个属性 a j ,ASP i 随机选择 u j ∈Z p, 1 ≤ j ≤ n i 作为属性私钥(ASK),并计算一对{fuj, hj uj}作为属性公钥(APK);我们令 Aj= fuj。然后,ASPi 应用抗碰撞哈希函数 H1(·),并向云服务提供商(CSP)发送属性确认密钥(ACK)∀aj ∈ Attri: Bj= g(ujH1(tj) −1, 1 ≤ j ≤ ni(其中 tj 表示为属性 aj生成 uj 的时间戳)。当属性 aj 发生撤销事件时, tj 将更新。由于可信机构(TA)也维护一些默认属性,因此它运行 ASP_Setup(PK)以生成一组默认属性密钥。
第三步 CSP_Setup(PK)在云服务提供商上执行,用于为云服务提供商初始化一对公钥和密钥,该步骤以公钥PK 作为输入。然后,云服务提供商随机选择一个rcloud ∈ Zp作为云的密钥(CSK),并公布CPK= grcloud作为云公钥。
密钥生成(KeyGen)
首先,为了注册一个OBU,可信机构TA以公钥PK和主密钥MK作为输入并运行 T A_KeyGen(PK, MK)。TA首先计算 ruid= H2(uid),其中 uid是已注册用户 OBU的唯一身份标识。经过哈希映射到 uid后,可以保护用户隐私。然后,TA计算用户的公钥UPKuid= gruid、用户的私钥USKuid=gα. fruid,并为用户选择一个默认属性集合 Ud={a1,… ai,…, and}, ∀ax ∈ Ud.接着,TA计算Dx=UPKuid (ux)−1 .CPK (uxH1(tx)) −1.hx−ux。最后,TA为用户签发证书 Certuid,并将{UPKuid, USKuid, Certuid, ∀x ∈ Ud: uid}预加载到OBU中。之后,用户可随时提供证书Certuid和公钥 UPKuid ,请求加入任意属性服务提供者ASP。根据用户申领的服务及其自身身份,令 UASPn ={a1,… ai,…, anASPn} 表示用户从ASPn申领的属性集合。ASPn执行ASP_KeyGen(PK, UPK, CPK, APK, ASK UASPn ∀ay ∈ UASPn D y = )生成:UPKuid (uy) −1 . CPK( uy H 1(ty)) −1 .h y −u y,并将此结果返回给用户。当用户从任意ASP接收到属性后,将它们组合为 Uuid=(Ud || UASP1 || … || UASPn) ,形成用户属性密钥UAK uid={∀z ∈ Uuid: Dz}。
加密
当ASP希望向OBU发布信息时,ASP只需执行 Encrypt(PK, UA,(M, ρ),M)算法,在访问结构(M, ρ)下使用选定的属性集合 UA对消息M进行加密,并将密文上传至CSP。如[9],所述,该加密算法以LSSS访问结构 (M, ρ)作为输入,其中包含来自所涉及属性集合 UA的所有选定属性,这些属性决定了哪些用户可以解密M;其中 LSSS访问矩阵M和函数 ρ将M的每一行与相应属性相关联。算法基于M分发一个随机指数s ∈ Zp。设M为一个l × n矩阵。该算法首先选择一个随机向量 v=(s, y2 ,…, yn) ∈ Zp n,其中y2 ,…, yn是随机选择的,用于共享参数s。这些值将用于共享加密指数s。对于i = 1到l,算法计算 λ i = v·Mi ,其中M i 是M的第i行。由于OBU的计算能力有限,当其希望与其他实体共享信息时,会请求 CNs协助以降低计算开销。
OBU A 提供其CertO B U A ,并请求x个CN帮助其进行指数计算。OBUA还向CSP发送CertOBUA,以通知CSP该OBUA将上传密文。OBUA将s和 λk分割为x部分(其中s=∑ x i=1 si, λk=∑ x i=1 λki,和 1 ≤ k ≤ l),并将 UA, si和 λ1 i,…, λli发送至各个CNi。每个CNi计算 ∀ak ∈ UA: Cki= A λ ki k ,其中 Ak是分配给属性 ak的APK( Ak= f u k,其中 uk是ASK),然后计算 C0i= gs i和 C1i= e(g, g)αs i。最后,CNi将 Cki, C0i发送给CSP,并将 C1i发送给OBUA。当OBUA收到来自这x个CN的响应后,它计算 C1= M ∏ x i=1 C1i= M∏ x i=1 e(g, g)αs i, 并将C1和x发送给CSP。在CSP收到来自CNs和OBUA所需的数值后,使用这些值计算C0= ∏ x i=1 E k = B −r cloud −1 k .h k u k= s i ∀ak ∈ UA Ck = ∏ x i=1 A λ ki k −(rcloud u k H 1 t k −1 .h k u k B k g,:;g()),其中是分配给属性 a k的ACK。最后,CSP打包CT,其中CT =(C0, C1, ∀ak ∈ U A: Ck, E k)。
解密
当车载单元A 想要解密一条加密消息时,该车载单元 A 提供证书 uid 以请求计算节点或路侧单元的帮助。如果车载单元 A 从计算节点或路侧单元获得“接受”响应, ∀a y ∈ U A ,且用户发送用户属性密钥 uid D y 并指明要解密的密文CT给计算节点。如果车载单元 A 具有用户唯一标识和用户属性集 U t ⊂ U A ,则 U t 表示满足访问结构(M, ρ)的属性数量。令I {1,2,…, }表示 I={i: ρ(i) U t} 。然后,令{ωi ∈Zp}i I 为一组常数,使得如果{λi} 是根据M对任意秘密s的有效份额,则∑ i∈ I ω i λ i = s成立。如果该集合存在,则车载单元A 能够成功解密消息M;否则,车载单元 A 不返回任何内容。
The decryption algorithm first runs in the CN as follows:
∏
i∈I
(e(Di.Ei, Ci)) ωi
=∏
i∈I
e(UPKuid(ui) −1. CPK(uiH1(ti)) −1.hi −ui. B−rcloud −1
i
.hi ui, Aλi i)ωi
∏
i∈I
e(gruid(ui) −1 .g(rclouduiH1(ti)) −1 .g−(rclouduiH1(ti)) −1
,
fuiλi)
ωi
=∏
i∈I
e(gruid(ui) −1 , fuiλi)
ωi
=∏
i∈I e(g, f)ruidλiωi= e(g, f)ruids
然后,计算节点将解密令牌 e(g f)ruids和密文返回给车载单元A。解密算法随后在车载单元A中执行。
e(USKuid, C0)
e(g, f)ruids
=
e(gα. fruid, gs)
e(g, f)ruids
=
e(gα, gs). e(fruid, gs)
e(g, f)ruids
=
e(g, g)αs. e(f, g)ruid s
e(g, f) ruids
= e(g, g) αs
最后,消息M被解密为
C1
e(g, g)
αs= M.
撤销
我们的方法考虑了两种撤销情况:用户撤销和属性撤销。对于用户撤销,如图3所示,可信机构(TA)首先撤销无效车载单元(OBU)的证书(Cert),例如通过将该证书添加到证书撤销列表(CRL)中。包含相关属性的应用服务提供商(ASP)将执行撤销机制。如果有m个包含被撤销属性的ASPs,则在这些ASPs中运行User_Rev()方法,以更新被撤销用户所拥有的所有属性的时间戳 t j 。每个包含这些属性的ASPi随后生成新的时间戳 t′ j ,重新计算属性确认密钥(ACK)B′ j = g(u j H 1(t ′ j ))−1,并将其发送给云服务提供商 (CSP)。当CSP收到来自ASPi的密钥更新请求后,CSP会查找包含已更新属性的密文(CT),并重新计算相关的 E j 至 E ′ j = g −( r cloud u j H 1(t ′ j ))−1 . h j u j 。当一个具有有效证书( Cert uid )的合法车载单元(OBU)登录时,可信机构( TA)会通知该OBU哪个属性已被更新,该OBU可向ASP请求更新用户属性密钥(UAK)。在此情况下,ASP运行Re_ key()以帮助OBU更新受影响的UAK D ′ j =UPKuid ( u j) −1 . CPK( u j H 1(t ′ j ))−1 .h j − u j 。此过程完成后,合法的OBU若能满足访问结构即可解密消息,而无效OBU则无法解密。
由于并非所有用户属性密钥 Dj都已更新,且Cert已被撤销,因此无法解密该消息。对于属性撤销,ASPi中的Att_ Rev()算法会在属性列表中为被撤销的属性设置撤销标志;该标志将禁止今后使用此属性。要撤销某个属性,ASPi只需启用该属性的撤销标志即可。其余过程与User_Rev()基本相同,但无需在OBU中更新被撤销属性的UAK。ASPi还会向CSP发送新的ACKB′ j = g(u j H 1 (t ′ j ) −1,以便CSP重新计算E′ j 。该过程完成后,任何用户都无法再请求被撤销的属性,因为ASP会检查该属性是否具有撤销标志。拥有被撤销属性的用户将无法解密加密CT中的数据,因为被撤销属性的ACKs已经更新,但用户的属性密钥UAKs尚未更新。如果用户的访问策略匹配其他规则,则他或她仍然可以解密消息。
五、评估与实验结果
在本节中,我们讨论安全问题,包括被攻破攻击、匿名性、抗共谋性以及前向和后向安全。我们还提供了判定性q‐BDHE假设证明的详细安全分析,并对我们的方案的性能进行了全面评估。
安全讨论
1) 被攻破攻击 :应用服务提供商(ASPs)负责维护其提供的服务和数据,并管理各自的属性集;每个ASP不拥有其他ASP的属性。因此,单个被攻破的ASP无法泄露其他实体的加密数据。云服务提供商(CSP)存储加密数据,但由于没有相关的用户密钥,CSP无法获取加密数据的内容。将解密外包给计算节点(CN)意味着CN可以获得UAK,但若不知道USK,CN仍然无法解密密文(CT)。只有具备USKuid和UAKuid且满足密文访问策略的合法用户才能成功解密数据。具体而言,USK仅在车载单元(OBU)中保存,并由唯一的 uid生成,因此其他实体在未获得USK信息的情况下无法解密数据。ASPs维护客户列表,只有属性匹配的合法用户才能解密服务消息。因此,所提方案能够通过向未授权实体保密来保护数据内容,仅允许合法用户解密数据。
2) 匿名性 :用户可以从不同的属性服务提供者处申领属性,且许多用户可能拥有相同的属性集合。属性服务提供者使用这些属性来确定哪些用户有权访问服务;然而,这些属性不包含用户的个人信息。因此,属性无法揭示用户的身份。只有 uid是注册用户的唯一身份标识,但它不包含用户隐私数据。可信机构对uid实施均匀分布的哈希映射;因此,用户隐私和匿名性得以保持。
3) 抗共谋性 :在我们的系统中,TA生成auid并为每个不同用户计算UPKuid和USKuid。ASP还从UPKuid生成用户属性密钥UAKuid,并将 uid信息嵌入到UAK密钥中。这防止了用户之间联合形成超级密钥来解密密文。
4) 前向和后向安全性 :对于前向安全性,当新加入的用户的属性满足与密文相关联的访问策略时,该用户能够访问并解密在其加入系统之前发布的数据。对于后向安全性,通过为合法用户更新UAKs并在云服务提供商处更新 ACKs,被撤销的用户无法解密之前加密的密文或新上传的密文。因此,我们的方法实现了前向和后向安全性。
B. 安全模型
我们的方案的安全模型可以视为挑战者与攻击者之间的一场博弈。该安全模型允许攻击者请求任何无法用于解密挑战密文的私钥。设 S A表示所有属性服务提供者的集合。
初始化阶段 :可信机构执行初始化算法,并将公钥PK发送给攻击者。攻击者指定一组被攻陷的属性服务提供者 S ′ A ⊂ S A 。对于 S ′ A 中的被攻陷的属性服务提供者,挑战者将属性公钥APK和属性私钥ASK发送给攻击者;对于 S A − S ′ A 中的未被攻破的属性授权机构,挑战者仅将属性公钥APK发送给攻击者。
阶段1 :攻击者向未被攻破的属性授权机构发起一组用户属性密钥查询,挑战者将相应的密钥提供给攻击者。
挑战阶段 :攻击者提交两条等长的消息m0和 m1。此外,攻击者提供一个挑战访问结构(M, ρ),该结构不满足阶段1中的任何一个集合。挑战者抛掷一个随机比特b,并在该访问结构下对 mb进行加密。密文被发送给攻击者。
阶段2 :当没有任何属性集合满足与挑战相对应的访问结构时,攻击者可以重复阶段1以查询额外的UAKs。
猜测阶段 :攻击者输出对b的猜测b’。攻击者在此游戏中的优势定义为循环乘法群中的配对运算r[b′= b] −(21)。
定义4 : 如果所有多项式时间攻击者在上述安全游戏中最多只有可忽略的优势,则我们的方案具有抵抗属性服务提供者静态腐败的安全性。
定义5 :如果每个单独的用户仅使用其自身的USK无法解密数据,且没有多项式时间攻击者能够通过组合不同用户的UPK和UAK来解密数据,则我们的方案是抗共谋的。
C. 安全性分析
我们参考[9]中的定理3.1以及[9],[18]和[40]中的过程来进行该证明。如果判定性q‐并行BDHE假设成立,则不存在能够在挑战矩阵大小为 × n且n≤ q的情况下选择性攻破我们的方案的多项式时间敌手A。
证明 :假设存在一个攻击者A,在针对我们方案的选择性安全游戏中具有不可忽略的优势 ε= AdvA。可以构建一个模拟器B,以不可忽略的优势解决判定性q‐并行 BDHE问题。假设模拟器B选择一个挑战访问矩阵M,其维度最多为q列。在此安全游戏中,攻击者A可以查询任何无法与从已被攻破的ASP获取的其他密钥结合用于解密的UAK。在这种情况下,多权威场景中的安全游戏可被视为与单个权威下的情况完全相同。然后,我们可以如下方式进行证明。
⇀初始化 :模拟器B接受q‐并行BDHE挑战 y, T。敌手 A向算法提供挑战访问结构(M, ρ),其中M有n列。
初始化阶段 :模拟器B运行 TA_Setup()、 ASP_Setup ()和CSP_Setup()算法,并将(G0 , g f=g β , e(g, g) α , H1 (·) H2(·))提供给A,A选择一组已被攻破的ASP S ′ A ⊂ S A 并将其透露给模拟器B。对于每个未被攻破的ASPk( k ∈ S A − S ′ A),模拟器B选择一个随机数 α ′ ∈Zp,并通过令 e(g, g) α = e(g β , g β q )e(g, g) α ′ 来隐式设置α= α ′ + βq +1。假设有m个ASPs,且每个ASP i 维护 n i 个属性。因此,系统中的属性集合为{a1 , 1 ,… a i, j ,…, a m,n m },其中 1 ≤ i ≤ m且 1 ≤ j ≤ni 。令 U= m× n i ;那么,我们可以将模拟器程序描述为参数h1,…,hU 。对于每个 x( 1 ≤ x ≤ U),模拟器B选择一个随机值 z x εZp。设 X表示索引集合I i 满足 ρ∗(i)= x,并令 hx=gzx∏i∈X gβM∗ i, 1/bi · gβ2M∗ i,2/bi · · · gβn∗ M∗ i,n∗/bi。当X=Ø时,我们有 hx= gzx。此外,由于gzx值的存在,参数是随机分布的。属性公钥可以通过随机选择一个ASKx ux εZp作为一对 {fux, hx ux},用于APKx={gβux,(gzx∏i∈XgβM∗ i,1/bi ·gβ2M∗ i, 2/bi · · ·gβn∗M∗ i,n∗/bi)ux}来模拟。模拟器使用哈希函数 H1(·)将时间戳 tx设置为ACKx=g(uxH1(tx)) −1。 CSK可以通过随机选择一个rcloud ε Zp并计算CPKcloud= g rcloud来模拟。模拟器。B为敌手A分配一个用户身份 uid,并让 ruid= H2(uid)。然后,模拟器计算出敌手A的用户公钥 UPKuid= gruid和用户秘密密钥USKuid=g α. fruid。
阶段1 :在此阶段,模拟器B回答来自敌手A的用户密钥查询。敌手A向B提交由(uid, Atti)组成的对;在此对中,Atti表示由未被攻破的ASPi管理的属性集合。假设 Atti 无法通过被攻破的ASPs获得的任何密钥满足M。模拟器首先选择一个随机的 rεZp,然后找到一个向量 ω=(ω1,…, ωn∗) ∈Zp n∗,使得 ω1= −1。因此,对于所有 i 满足 ρ∗(i)∈ Atti的情况,我们有 ω · M ∗ i= 0。根据 LSSS的定义,由于 Atti 不满足M,该向量 ω 必须存在。模拟器B随后通过设置UPKuid=g r ∏i=1,…,n∗(g β q +1−i )ωi=gr uid来隐式定义 ruid= r+ ω1β q+ω2β q−1+ ···+ ωn∗β q−n ∗ +1 根据gr uid, f r uid=gβr uid的定义,其中包含一项g−β q + 1, 该项将抵消 USKuid中的未知项。随后,模拟器可以计算 USKuid=gα ′ .g βr∏i=2,…,n∗(g β q + 2− i )ωi。在计算UAKuid: Dx ∀x ∈ Atti时,困难的任务是为属性 x ∈ Atti生成 Dx, 如果 x被用于访问结构中。对于这些密钥,我们必须确保不存在形式为g(β j/b i )且无法模拟的项。然而,由于 ω · M ∗ i = 0, 所有这些项都会相互抵消。设X为所有满足 ρ∗(i)= x的i组成的集合。模拟器B按如下方式计算 UAKuid: Dx: Dx= UAKuid,x= UPKuid (ux) −1 . CPK(ux H 1 (tx)) −1 .hx −u x = g r(ux) −1 ∏ i=1,…,n∗ (g β q + 1− i) ω i .g (rcloud u x H 1 (tx)) −1 .g z x(ux) −1 ∏ j∈ X ∏ k=1,…,n∗ (g (β k /b j )) M∗ j ,k
挑战阶段 :在此阶段,模拟器B生成挑战密文。敌手 A向模拟器B提供两条消息m0和 m 1。模拟器抛掷一枚硬币b并生成C1 = m b T · e(g s , g α ′ k)和 C0 = g s。这里困难的部分是模拟E i 值,因为它们包含需要消除的项。然而,模拟器可以选择一种秘密分割方法,使得这些项能够被消除。直观上,模拟器将选择随机值 y′ 2,…, y′ n∗,然后使用向量 v=(s, sβ+ y′ 2, sβ 2+ y′ 3,…, sβn−1+ y′ n∗) ∈ Zp n∗共享秘密。此外,模拟器选择随机值u1 ′,…,ul ′。对于 i= 1,…, n∗,令Ri为所有 k = i的集合,使得 ρ∗(i)= ρ∗(k), , 即与第i行具有相同属性的所有其他行索引的集合。由向量v,我们可以构造秘密的共享为λi= s· Mi,1+ ∑j=2,…,n∗(sβ j−1+ y′ j) M ∗ i,j。然后生成挑战密文分量如下 Ci= Aλi i= g βuiλi =(g −u ′ ig −sbi) β(s·Mi,1 +∑j = 2 ,…,n ∗( sβj −1+y ′ j) M∗ i, j); and Ei= B−r cloud −1 i . hi u i= g −(rcloud u i H 1( t i)) −1 .hi u i =(g −u ′ ig −sb i) −(rcloud .H 1( t i)) −1 . (g −u ′ ig −sb i) z i ∏ k∈Ri ∏ j=1,…,n∗ (g(β k /b j)) M∗ k, j
阶段2 :与阶段1相同。
猜测阶段 :攻击者最终将输出对b的猜测b’。如果b’ = b,模拟器B输出0,表示 T= e(g,g)β q −1 s;否则,模拟器输出1,表示其认为T是群GT中的一个随机群元素。当T是一个元组时,模拟器B提供了完美的模拟,且Pr[B( ⇀ y, T= e(g, g) aq + 1 s )= 0]= 1 2 + Adv A。当T是一个随机群元素时,消息 m b 对攻击者完全隐藏,且Pr[B( ⇀ y, T= e(g, g) aq + 1 s )= 0]= 1 2 。因此,B能够以不可忽略的优势参与决策性q‐并行BDHE游戏。
D. 性能分析
在此性能分析中,我们在树莓派3 B型+上实现了车载单元(OBU),该设备配备博通BCM2837B0片上系统(SoC),包含1.4 GHz 64位四核ARM Cortex‐A53处理器、 512 KB共享L2缓存和1 GB内存(与图形处理单元(GPU) 共享)。我们选择树莓派是因为其价格低廉、信用卡大小的外形、低功耗以及由于其丰富的可扩展接口,物联网系统开发近期广受欢迎。我们还在一台配备3.6 GHz Intel Xeon 中央处理器( CPU)E3和32 GB随机存取存储器(RAM)的 Windows Server 2012 R2设备上执行了我们的方案。我们在此设备上安装了VMware,并创建了多个虚拟机以模拟TA、ASPs、CNs和CSPs。每个虚拟机分配了4个 CPU核心和8 GB内存,并安装Ubuntu 16.04作为操作系统(OS)来运行我们的方案。表IV展示了我们的方案与其他几种ABE方案的详细对比。加密(Enc)和解密(Dec)时间表示为用于加密和解密算法的时间复杂度。公钥是指系统中所有公钥的总密钥空间。私钥空间包括保留在用户本地的个人密钥;在我们的方法中,这些是用户私钥和用户属性密钥的大小;Rev表示该方案是否支持撤销; Mult表示该方案是否支持多个分布式属性中心;E是循环乘法群中的幂运算;P是循环乘法群中的配对运算;M是循环乘法群中的乘法运算;|G0|、|G1|、|G2|、|G|和|GT|分别表示循环乘法群G0, G1, G2, G和GT的长度;|Zp | 表示Zp中一个随机数的长度;|H|表示哈希函数的长度; nT表示访问结构中的属性数量;nuid表示用户属性的数量;nj表示属性中心中的属性数量;mS表示系统中属性中心的数量;mi表示参与集合的属性中心数量;pi表示参与的CN数量。
基于属性的广播加密(ABBE)[24]提出了一种高效的固定大小私钥方案,以支持在轻量级设备上快速进行加密和解密,但这种加密方法生成的公钥非常大,当设备之间共享公钥时会成为一个主要问题。支持等式测试的密文策略基于属性的加密(CP‐ABE‐ET)[13]和支持等式测试的密钥策略基于属性的加密(KP‐ABE‐ET)[15]所提方案均允许测试不同公钥加密的密文是否包含相同的信息,但这两种方法生成的秘密密钥长度更长,且解密文本需要耗费大量时间。此外,这些方案均未考虑撤销机制。具有固定大小密钥的密文策略属性基加密(CP‐ABE‐CSK)[41]提出了固定大小的私钥和密文,但该方法仅支持与门访问结构,且未考虑撤销机制。相比之下,[18],[40],[42]中的方案以及我们的方案均支持撤销和多授权机构。多授权机构云存储数据访问控制(DAC‐MACS)[18]需要更多的存储空间,且加密开销较高。对于多授权机构CP‐ABE(MA‐CP‐ABE) [40],,提出了一种面向车载云计算的高效安全的访问控制方案,但其使用了较大的公钥和私钥。在可撤销且可搜索的属性基加密(RSABE)[42],中,提出了一种适用于移动云存储的高效可撤销且可搜索的ABE方案,并且该方法能够对加密数据进行关键词搜索。尽管RSABE的用户私钥大小最小,但它带来了额外的云存储成本|Zp|+(n uid+2)|G0|。由于将指数级计算负载外包给CN节点的优势,我们的方法显著降低了用户端的计算开销;这种成本降低对于资源受限的OBU设备至关重要。从整体来看,如表 IV所示,我们的方法提供了最低的加密成本,且我们的方法的存储成本与当前平均水平相当。在安全且隐私保护的属性基加密(SPPABE)[45],中,提出了一种基于属性基密码学的隐私保护的车载自组织网络共享系统。在该方法中,RSU必须保存车辆公钥,以使系统具备更多存储空间来存储数据。基于区块链的车载网数据细粒度访问控制方案(HECP‐ABE)[49]和基于联盟链的安全数据共享与定制化服务(DSCSCB)[50]采用区块链替代第三方服务提供商进行数据存储,但这些方法未考虑其解决方案中的撤销和多授权机构问题,从而限制了系统的可扩展性。
在实验评估中,我们测量了系统初始化、加密、解密和撤销操作所花费的时间,并将我们的工作与Bethencourt et al.在CP‐ABE中的[8]工作进行了比较。图4展示了所提方法的性能。在图4(a)中,我们方法中的初始化过程被分为三部分——TA、ASP和CSP——且仅运行一次。我们使用不同颜色的条形图表示这三部分并将其合并。在我们的方法中,每个ASP必须初始化其列表中的属性;因此,ASP的初始化时间取决于需要初始化的属性数量。在此评估中我们仅列出一个ASP,因为每个ASP可以在独立服务器上并行运行并单独执行。在图4(b)(表示密钥生成时间)中,我们的方法在 TA和ASPs上执行,并将相关密钥返回给OBU。我们的方法比CP‐ABE所需时间更少,因为我们为每个属性仅选择一个随机参数,而CP‐ABE需要两个。关于加密和解密计算时间,我们计算了OBU、CNs和CSP之间的操作耗时,并考虑了两种情况。首先,在图4(c)和4(d)中,我们固定文件大小,并将联合属性的数量从10个增加到100个。我们的方法比 CP‐ABE更高效,因为在加密过程中,我们的方法对每个属性所需的哈希函数操作更少。在解密过程中,我们的方法仅对分子计算一个双线性映射函数,而在CP‐ABE中,分母和分子都必须对每个叶节点计算双线性映射函数。我们还固定了属性数量,但改变了加密和解密的文件大小(图 4(e) 和 4(f))。时间主要花费在文件的加密或解密上;因此,对于小于64 MB的小文件,我们的方法更高效。额外的时间主要花在CSP的重新打包操作上,通常依赖于 CSP的计算能力。许多当前的方法可以帮助云减少计算时间,包括分布式和并行计算方法。我们也可以使用对称加密算法对文件进行加密,并用我们的方法加密密钥;密钥的大小相对于文件本身较小。最后,我们在图4(g) 和 4(h) 中展示了用户和属性撤销所需的时间。车载单元上的计算开销主要包括加密和解密。表IV显示了我们的方案与其他方案的比较结果。图5展示了我们的方案与参考文献[45],[49]和[50]在计算开销上的对比。图5(a)表明,随着属性数量的增加,我们的方案在加密过程中的计算开销最少。此外,图5(b)表明,在数据解密过程中,计算开销随属性数量保持恒定。基于表IV和图5中上述性能的比较,可以看出我们的方案总体上具有更多优势。
建立时间。(b) 密钥生成时间。(c) 固定文件大小下的加密时间。(d) 固定文件大小下的解密时间。(e) 固定属性数量下的加密时间。(f) 固定属性数量下的解密时间。(g) 用户撤销时间。(h) 属性撤销时间。)
加密的计算开销,(b) 解密的计算开销。)
六、 结论
在本文中,我们提出了一种有效的数据访问控制 CP‐ABE方案,用于在车载自组织网络中的多个应用服务提供商和云存储系统之间共享车辆数据。我们的方案通过属性时间戳实现用户和属性的撤销。我们还引入了云计算节点来分担加密和解密的计算负载,从而为资源受限的设备提供支持;该方法使CP‐ABE更适用于车载自组织网络。通过全面的安全分析和实验评估结果,我们证明了该方案不仅能够保护用户隐私,还能抵御各种攻击。此外,我们的方案保证了可扩展性和效率。在未来的工作中,我们将 在真实环境中测试该方案,并测量各实体之间的通信延迟。
基于身份的可撤销数据共享方案
31

被折叠的 条评论
为什么被折叠?



