浙江大学学报(工学版), 2021, 55(5): 957-965 doi: 10.3785/j.issn.1008-973X.2021.05.016

计算机与控制工程

基于区块链的车联网数据安全共享方案

刘雪娇,, 殷一丹, 陈蔚, 夏莹杰,, 许佳丽, 韩立东

1. 杭州师范大学 信息科学与工程学院,浙江 杭州 311121

2. 浙江大学 计算机科学与技术学院,浙江 杭州 310027

Secure data sharing scheme in Internet of Vehicles based on blockchain

LIU Xue-jiao,, YIN Yi-dan, CHEN Wei, XIA Ying-jie,, XU Jia-li, HAN Li-dong

1. School of Information Science and Engineering, Hangzhou Normal University, Hangzhou 311121, China

2. College of Computer Science and Technology, Zhejiang University, Hangzhou 310027, China

通讯作者: 夏莹杰,男,副教授. orcid.org/0000-0002-4642-2503. E-mail: xiayingjie@zju.edu.cn

收稿日期: 2020-07-6  

基金资助: 浙江省自然科学基金资助项目(LY19F020021);国家自然科学基金资助项目(61873232);国家自然科学基金青年科学基金资助项目(61702153);2020年浙江省大学生科技创新活动计划(新苗人才计划)资助项目(2020R427062);公安部重点实验室(基于大数据架构的公安信息化应用)资助项目(2020DSJSYS005)

Received: 2020-07-6  

Fund supported: 浙江省自然科学基金资助项目(LY19F020021);国家自然科学基金资助项目(61873232);国家自然科学基金青年科学基金资助项目(61702153);2020年浙江省大学生科技创新活动计划(新苗人才计划)资助项目(2020R427062);公安部重点实验室(基于大数据架构的公安信息化应用)资助项目(2020DSJSYS005)

作者简介 About authors

刘雪娇(1984—),女,副教授,从事车联网安全研究.orcid.org/0000-0003-1821-2864.E-mail:liuxuejiao0406@163.com , E-mail:liuxuejiao0406@163.com

摘要

针对传统车联网(IoV)数据易被篡改、访问控制不够灵活的问题,提出基于区块链和带权密文策略属性基加密的车联网数据安全共享方案. 该方案由路侧单元共同维护区块的生成、验证和存储,实现分布式数据存储,保证数据不可篡改;基于属性对链上数据进行访问控制,保证只有授权的访问者才能访问数据内容;针对车联网场景下多实体、多角色的数据共享需求,通过挖掘车联网数据访问角色间属性权限的关联关系,构造基于多属性的层级访问策略制定方法,简化访问控制策略的复杂度. 实验分析表明,该方案能够实现对车联网数据的安全存储与灵活访问控制,所构建的层级访问策略制定方法能够有效降低车辆的计算和传输开销,满足车联网场景下多实体、多角色的访问需求.

关键词: 区块链 ; 属性基加密(ABE) ; 车联网(IoV) ; 访问控制 ; 数据共享

Abstract

The data is easy to be tampered and the access control of data is not flexible in the Internet of Vehicles (IoV). A secure data sharing scheme based on blockchain and ciphertext-policy weighted attribute-based encryption was proposed aming at the above problem. In this scheme, roadside units jointly maintain the generation, verification and storage blocks to achieve distributed storage of data, which ensures the data from being tampered. Attribute-based access control ensures that only authorized entities can access the content of data on the blockchian. A hierarchical access policy formulation method based on multi-attribute was proposed to reduce the complexity of access control policy aiming at the data sharing requirements among the multiple entities and roles in the IoV, by mining the association of attributes in the roles for data access. Experimental results show that the proposed scheme can realize the secure storage and flexible access control of the data in the IoV, and the hierarchical access policy formulation method can effectively reduce the calculation and transmission overhead of vehicles, and meet the access requirements of multiple entities and roles in the IoV.

Keywords: blockchain ; attribute-based encryption (ABE) ; Internet of Vehicles (IoV) ; access control ; data sharing

PDF (1276KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

刘雪娇, 殷一丹, 陈蔚, 夏莹杰, 许佳丽, 韩立东. 基于区块链的车联网数据安全共享方案. 浙江大学学报(工学版)[J], 2021, 55(5): 957-965 doi:10.3785/j.issn.1008-973X.2021.05.016

LIU Xue-jiao, YIN Yi-dan, CHEN Wei, XIA Ying-jie, XU Jia-li, HAN Li-dong. Secure data sharing scheme in Internet of Vehicles based on blockchain. Journal of Zhejiang University(Engineering Science)[J], 2021, 55(5): 957-965 doi:10.3785/j.issn.1008-973X.2021.05.016

车联网是基于人、车、环境协同的开放融合网络[1],它借助新一代通信技术,实现信息共享[2]. 在车联网中,车辆出行的安全性和高效性有赖于对驾驶环境的多粒度感知、多维度共享[3],以应对单车感知范围、存储能力的局限性,为智慧交通所需的大规模、复杂数据获取需求提供支持.

在车联网中,典型的共享数据包括车辆行驶数据、交通状态数据、交通事故数据等,这些数据不仅能够帮助车辆全面认知驾驶环境,也能够为交通治理部门、执法机关、保险公司提供重要信息[4]. 例如,交通治理部门利用交通数据辅助道路监管;执法机关通过车辆行驶数据调查事故原因;保险公司将车辆行驶数据作为理赔证明[5]. 然而,车联网数据在促进智慧交通发展的同时,也面临着严峻的数据安全挑战. 一方面,由于车联网数据具有巨大的经济价值,数据窃取、攻击与滥用等行为越来越严重[1];另一方面,拓宽车联网数据共享的范围,必然会打破数据管理的安全边界,导致数据所有者难以控制其他实体对数据的访问和使用. 2017年Kromtech安全中心发现一集中式服务器泄露了50多万条车辆信息,包括车辆设备状态、行驶线路,导致几十万用户的隐私受到威胁[6]. 因此,实现数据安全存储与保护是影响车联网数据共享发展的重要问题.

由于区块链具有分布式存储、不可篡改的特点,为数据共享带来了新的去中心化的解决方案,在增强车联网安全性方面引起了较大关注[7]. Fan等[8]提出基于区块链的车联网数据共享模型,该模型以计算能力有限的车辆作为全节点构建区块链,成本过高;Oham等[9]提出基于区块链的车联网数据存储方案,该方案通过分区实现对链上数据的访问控制,访问控制相对有限,难以满足车联网中多实体、多角色的灵活访问控制需求.

密文策略的属性基加密(ciphertext policy attribute-based encryption,CP-ABE)是具有细粒度访问控制的加密技术[10],该技术通过在密文中嵌入由共享者定义的访问控制策略,保证只有当数据访问者的属性满足访问控制策略时才能解密,能够实现数据可控共享. 然而,车联网中访问实体多样化导致策略中涉及的属性数目多,访问控制策略复杂度高,加解密开销随策略复杂度的增加而线性增加,因此复杂的访问控制策略增加了车辆的开销.

综上所述,现有研究基于区块链技术实现去中心化的数据存储,但还无法实现对区块链中数据的有效访问控制,利用传统的CP-ABE实现对车联网数据的访问控制存在着策略复杂,导致计算开销大的缺陷.

针对上述问题,本研究对车联网数据安全存储与访问控制进行研究. 1)提出基于区块链的车联网数据安全存储方法,车辆生成的数据以分布式的方式存储在由路侧单元(road side unit,RSU)构建的区块链上,当新区块生成时,基于信任的拜占庭容错共识机制保证在没有中心节点的情况下RSU实现分布式共识. 2)设计具有灵活访问控制的链上数据保护方法,区块链中的数据用根据访问者属性定义的访问控制策略加密,保证只有授权的访问者才能访问数据的内容,实现了车联网链上数据的安全、灵活共享. 3)设计基于权重的访问控制策略生成方法,通过挖掘车联网数据访问角色间属性权限的关联关系,简化访问控制策略的复杂度,减少所需的计算和传输开销,实现高效的数据共享,满足车联网场景下多实体、多角色的访问需求.

1. 相关工作

1.1. 区块链技术在车联网中的应用

区块链是具有去中心化和不可篡改特点[7]的技术. 区块链中的每个节点持有整个或部分数据副本,是实现数据安全存储的有效技术手段[11-12]. 近年来,区块链技术在许多领域被应用,如:物联网[13]、智慧医疗[14].

在车联网中,现有研究利用区块链去中心化的技术特征,弥补集中式服务器存在的单点故障缺陷. Yang等[15]提出基于区块链的车联网信誉模型,将车辆节点可信度和消息可信度存储在分布式账本中,为参与信息交互的车辆提供可靠的参考. Ao等[16]提出适用于车联网身份认证的区块链系统框架,利用区块链技术简化异构车辆网络中的分布式密钥管理,减少异构网络上密钥传输的时间. Cebe等[4]提出基于区块链的车联网事故取证框架,将数据分布式地存储在车辆和各实体中,为参与交通事故取证的执法机关提供可信的证据. Li等[17]提出基于区块链且具有隐私保护的社交型拼车方案,将数据分布式存储,保证拼车记录可审计,从而提供更安全地拼车服务. 然而,这些方案缺乏对链上数据的安全性考虑,攻击者可能通过区块链中的数据挖掘车辆隐私,数据的机密性无法保证.

1.2. 属性基加密

密文策略的属性基加密被认为是有效的访问控制技术[10],具有如下优点:支持细粒度访问控制,适用于复杂的数据共享需求;支持一对多加密,便于多用户间的数据共享;支持自定义访问控制策略,保证数据所有者对数据访问权限的管理. 因此,许多研究者提出了适用于不同场景的属性基加密方案[18-20],如多授权、非单调访问结构、属性撤销等. 但是,大多数属性基加密方案中加解密的计算量随着访问控制策略的复杂性呈线性增加,成为限制其应用的瓶颈.

为了在资源有限的情况下减少加解密过程中的处理量,Liu等[21]提出适用于车联网场景的效率优化方案,该方案将部分解密计算外包给RSU,从而提高车辆端接收数据的效率. Wang等[22]提出带权属性基加密方案,通过在属性中嵌入权重减少策略中属性的个数,降低计算和存储开销. 张凯等[23]为了提高加密阶段的效率,提出在线/离线的属性基加密方案. 在加密之前,用户根据公共参数进行大量的预计算,提高密文生成效率.

2. 车联网数据共享模型设计

2.1. 车联网数据共享模型

图1所示,数据安全共享模型主要包括以下4个部分:可信中心(trusted center,TC)、车辆、RSU以及数据访问者. 1)TC是完全可信的中心,负责系统初始化,管理系统属性并为数据访问者分发密钥. 2)车辆主要用于数据感知和加密,并使用专用短程通信(dedicated short range communications,DSRC)与RSU通信,将加密数据传输给RSU. 3)RSU是半可信的基础设施,安装在道路两侧,易受到攻击[24]. RSU具有足够的处理性能、存储空间和良好的网络连接,负责接收车辆上传的数据,并生成、验证与存储区块. 4)数据访问者包括车联网环境下数据的访问实体,例如车主、保险公司、交通管理局、维修商等机构不同部门、不同职级的人员.

图 1

图 1   数据安全共享模型

Fig.1   System model of data security sharing


2.2. 设计目标

在车联网环境下的数据共享模型中,RSU节点可能由于被攻击而导致数据被篡改,甚至向区块链中添加恶意数据块;未授权的数据访问者可能会通过篡改数据骗取保险金、逃避事故责任. 因此本研究方案应实现以下安全目标. 1)机密性:为了避免数据泄漏给未授权个人或实体,应当保证数据的机密性. 2)不可篡改:为了保证数据的完整性和可用性,有效的数据不能被潜在实体或恶意攻击者篡改、删除. 3)访问控制:为了适应车联网数据访问场景,应保证在访问集合构成复杂、访问主体多样化的需求下实现安全、高效、灵活的共享.

3. 车联网数据安全共享方案

基于区块链实现去中心化的数据存储,针对车联网中的多实体访问需求,设计一对多的数据共享方案,如图2所示,主要分为4个阶段:系统初始化、数据加密、分布式存储、解密与验证.

图 2

图 2   数据存储与访问流程

Fig.2   Process of data storage and access


3.1. 系统初始化

在初始化阶段,TC首先运行 $ {\rm{Setup}}({1^\lambda },U) $算法生成系统参数. $ {\rm{Setup}}({1^\lambda },U) $:TC输入安全参数λ和属性集 $ {U} $,输出公钥PK和主密钥MK. 该算法首先生成以素数 $ {p} $为阶的双线性群 $ {{G}}_{{0}} $,并从中选取生成元 $ {g} $,进行双线性配对运算 $ {{e}}:{G_0} \times {G_0} \to {G_{\rm{T}}} $. 生成哈希函数 ${{H}}:{\left\{ {0,1} \right\}^*} \to {G_0}$. 对于任意的 $ z \in {Z_p} $Zp为整数模p的乘法群),设置S={s1, s2, ···, sm},并设拉格朗日系数 ${\varDelta _{z,S}} = $ $ \mathop \prod \nolimits_{z \in S,z \ne i} (x - z)/(i -z)$. $ U = $ $ \{ {\alpha _1},{\alpha _2} , \cdots , {\alpha _n}\} $表示系统中全部用户的属性集合,TC任意取2个随机数 $\alpha ,\; \beta \in $ $ {Z_p}$,并计算 $h = {g^\beta }$以及 $u = {{\hat e}}{\left( {g,g} \right)^\alpha }$,生成的PK与MK如下:

$ {\rm{PK}} = \left\{ {{G_0},g,h,u} \right\},$

${\rm{MK}} = \{ \alpha ,\beta \} .$

TC根据数据访问者的所属实体、部门、职位等属性为其分配一组带权属性,并通过 $ {\rm{KeyGen}} $ $ ({\rm{MK}},S) $算法生成数据访问者的密钥. $ {\rm{KeyGen}}({\rm{MK}},S) $:密钥生成算法以一组带权属性 $ S $、主密钥MK作为输入,输出与该S相关的密钥. 该算法随机选取 $r \in {Z_p}$,对于每个加权属性 $j \in S$它具有加权值 ${\omega _j}$,最终生成数据访问者的密钥SK,如下所示:

${\rm{SK}} = \left\{ {D = {g^\alpha }{h^r},L = {g^r}}\right\}.$

式中: $\forall j \in S $,有 ${D_j} = {{H}}{{(j)}^{r{\omega _j}}} $.

3.2. 数据加密

当车辆感知到特定事件时(如交通事故),首先会验证事件的状态,然后生成共享数据 $ M $$ M $可能被不同实体访问. 例如,交通运输部门利用这些数据分析道路状况,辅助道路监管;执法机关调查事故原因、确定事故责任方;保险公司将这些数据作为理赔证明,为投保人提供可信证据. 然而,数据访问者集合构成复杂,且授权者可能会滥用职权,以获取更多的数据,因此数据的访问权限不仅要以实体区分,如执法机关、保险公司,而且要根据各实体中人员的属性划分,如所属部门、所属职位. 此外,在各访问实体和部门中,访问者的权限存在包含关系,高职级者的访问权限一般包含低职级者的访问权限,例如,在交通管理部门中,警员、警司、警督、警监为一类属性,他们代表不同级别的警员. 警员属性类中包含了具有层级关系的多个属性,且高级别属性的访问范围包括了低级别属性的访问范围,即 $ {\text{警员}}\subset {\text{警司}} \subset {\text{警督}} \subset {\text{警监}} $. 由于访问者属性可能存在以上关联关系,车辆通过算法1制定层级访问控制策略 $ {T} $.

算法1 Build Policy

1:Input $ {\rm{AttrSet}} $

2:Output T

3: For 每一个属性 $ {\rm{AttrSe}}{{\rm{t}}_i} \in U $ do

4: //按照实体、部门将属性分类,得到 $ M $类属性 $L = \left\{ {{L_A},{L_B},{L_C} ,\cdots ,{L_M}} \right\}$

5:   ${\rm{Classify}}({\rm{AttrSe}}{{\rm{t}}_i}) \to {L_i}$

6: End

7: //按照访问权限对属性排序,若同类属性的访问权限存在包含关系,即 $ {{L}}_{{i,}{1}}\subset {{L}}_{{i}{,2}}\subset {{L}}_{{i}{,3}}\cdots\subset {{L}}_{{i,N}} $,为这些属性赋予权重

8: For $ i=1 $ to $ M $

9:  For $ j=1 $ to $ N $

10:   $ {{L}}_{{i,j}{.}}\omega =j; $ // $ \omega $从1递增

11: End

12: End

13://用带权属性表示属性集合中访问权限存在连续包含关系的同类属性

14: For $ i=1 $ to $ {\rm{AttrSet}} $.length

15:  If $ {L_{i,1}} \subset {L_{i,2}} \cdots \subset {L_{i,m}}\;{\rm{in}}\;{\rm{Staff}}$ do

16:   ${L_{i,j}}.\omega=m,\;{L_{i,j}} \to {L_i}:{\omega_{i}},\;j \in [1,\;m]$

17: End

18://用OR连接不同实体、用AND连接同一实体下的不同部门和职级属性

19: ${{T}} = ({{\rm{Entity}}_A}\;{\rm{AND}}\;({{\rm{Department}}_A} \cdots {\rm{OR}} \cdots )\;{\rm{AND}} $ $ ({L_A}({L_A}: {\omega _1} \cdots {\rm{OR}} \cdots ))\;{\rm{OR}}\;({\rm{Entit}}{{\rm{y}}_B}\; $ AND $({{\rm{Department}}_B} \cdots $ $ {\rm{OR}} \cdots ) $ AND $({L_B}:{\omega _2} \cdots {\rm{OR}} \cdots )){\rm{OR}} \cdots $

20:Final

该算法输入按照不同实体、部门、职级定义的属性集合,输出由这些属性构成的访问控制策略. 首先根据实体、部门将属性分为不同的属性类 $ L=\{{L}_{{A}}{,}{{L}}_{{B}},{{L}}_{{C}}, \cdots ,{{L}}_{{N}}\} $,并按照职级的访问权限中连续的层级关系,即 $ {{L}}_{{i,1}}\subset {{L}}_{{i,2}}\subset {{L}}_{{i,3}}\cdots \subset {{L}}_{{i,m}} $为每一个属性赋予权重 $ \omega $$ \omega $从1依次递增,然后遍历每一个实体、部门下的属性集合,若存在 $ \omega $连续且属于同一 $ L $的属性,则将这些属性替换为 $ {{L}}_{{i}}{:}\;{\omega }_{i} $. 由范式存在定理可知,任何布尔逻辑表达式可以转换为析取范式(disjunctive normal form,DNF). 如图3所示,所述的访问控制策略结构只有3层,根节点为逻辑“或”,第2层非叶节点为逻辑“与”,第3层叶结点为属性表达式. 即用OR连接不同实体、用AND连接同一实体下的不同部门和职级属性,生成最终的访问控制策略 $ {T} $.$ {\rm{AttrSet}} $中有 $ M $个属性类,每个 $ L $包含的属性个数为 $ m $,构造层级访问控制策略,策略中属性减少为总属性的1/m.

图 3

图 3   访问控制策略

Fig.3   Access control policy


为了实现数据的机密性和有效的访问控制,在数据共享之前,车辆采用对称加密标准(AES)加密数据内容并执行 $ {\rm{Encrypt}}({\rm{PK}},{\rm{CK}},T') $算法加密对称密钥CK嵌入访问控制策略 $ {T}{'} $.

$ {\rm{Encrypt}}({\rm{PK}},{\rm{CK}},T')$:输入公钥PK、对称密钥CK和访问控制策略 $ {T}{'} $,输出密文CT. 该算法首先为 $ {T} $中的每个节点 $ {x} $选择多项式 $ {{q}}_{{x}} $. 从根节点 $ {R} $上随机选择 $ {{q}}_{{x}} $的节点信息. 对于 $ {T} $中的每个节点 $ {x} $,多项式 $ {{d}}_{{x}} $的阶数设置为 $ {{k}}_{{x}}{-1} $$ {{k}}_{{x}} $为阈值. 从根节点 $ {R} $开始,设置 ${q_R}\left( 0 \right) = s(s \in {Z_p})$$ {s} $为随机数. 随机选取多项式 $ {{q}}_{{R}} $的其他点 $ {{d}}_{{R}} $对其进行完全定义. 对于叶节点 $ {x} $,设置 ${q_x}\left( 0 \right) = {q_{{\rm{parent}}\left( x \right)}}({\rm{index}}({{x}}))$并随机选择 $ {{d}}_{{x}} $完全定义的 $ {{q}}_{{x}} $,每个叶节点都表示一个带权属性. 在 $ {T}{'} $中,设 $ {Y} $为叶节点的集合,ωi为每个叶节点的最小权重,最终生成密文CT:

$ {\rm{CT}} = \left\{ \begin{array}{l} T,\;\tilde C = {\rm{CK}} u = {{\hat e}}{\left( {g,g} \right)^{\alpha s}},\;C = {g^s};\\ \;\;\;\;\;\;\;\;{\forall y \in Y,\; i \in \left[ {1,n} \right],} {{C_y} = {h^{{q_y}(0)}} H{{({\rm{att}}(y))}^{ - {\omega _i}s}}},\\ \;\;\;\;\;\;\;\;{\forall j \in \left( {i,n} \right],{C_{y,j}} = H{{({\rm{att}}(y))}^{ - ({\omega _j} - {\omega _i})s}}}. \end{array} \right. $

3.3. 分布式存储

车辆向RSU提交数据共享请求 $ {\rm{Req}} $,包括密文CT以及 $ M $的散值 $ {{H}}_{{M}}={\rm{Hash}}({M}{)} $、公钥CTD:

${\rm{Re}}{{\rm{q}}} = \{ {\rm{CT}},{H_M},{\rm{CID}}\} .$

RSU通过区块链中存储的车辆信任值验证共享车辆的身份合法性,低于信任阈值P的车辆所上传的数据将被拒绝,否则将来自合法车辆的共享数据存储到交易池中. 采用陈蔚等[25]的方法计算和更新信任值.

在分布式车联网场景中,没有固定的中心节点管理区块链,因此,从RSU中选择节点打包数据. 为了避免恶意的RSU成为矿工,根据节点行为计算其信任值:

$ {\rm{Trust}} = {\rm{Trust}} - {\rm{\eta }} \times {\rm{Trust}}. $

式中:Trust为一定时间段内RSU的信任值,初始值为1,若矿工获得记账权但不打包数据其信任值会降低; $\eta $为衰减因子,取值为[0,1.0],与信任值记录的次数有关,次数越多, $\lambda $取值越大.

在RSU中选择信任值最高的节点成为矿工. 当矿工获取记账权后,打包交易池中的事务记录到新生成的区块中,并将区块向节点网络广播,包括区块头和区块体. 区块头为基本信息,如ID、RSUID、时间;区块体中是以Merkle树形式存储的密文.

采用拜占庭容错(practical Byzantine fault tolerance,PBFT)共识机制进行区块共识. 如图4所示,共识过程如下:一旦接收到矿工 $ {C} $广播的数据块,其他节点验证区块的有效性,并以分布式的方式将其验证结果及签名相互广播. 在收到验证结果后,每个节点将结果与其他节点进行比较,并将结果反馈给矿工 $ {C} $,包括验证结果、比较结果、签名以及收到的验证结果. 如果2/3的节点同意数据块,将区块存储到区块链上. 其中,全节点RSU存储区块的完整信息,车辆作为轻节点存储区块头信息以用于数据查询与验证.

图 4

图 4   区块链的共识过程

Fig.4   Consensus process on blockchain


在每轮共识结束后,车辆在区块链中下载并验证数据共享记录. 如果数据是正确的,将更新他们对矿工 $ {C} $的信任评价,这些信任评价被存储在区块链中,作为下一次矿工选择的条件.

3.4. 解密与验证

数据访问者通过执行 $ {\rm{Decrypt}}({\rm{SK}},\;{\rm{CT}}) $算法对链上数据进行解密. $ {\rm{Decrypt(SK,\;CT)}} $:输入SK、CT,输出对称密钥CK.

$ {x} $为叶节点时,计算如下.

$ \begin{split} &{{\rm{ DecryptNode }}{{({\rm{CT}},{\rm{SK}},x)}_1} = \hat {{e}}\left( {{C_x},L} \right) \hat {{e}}\left( {C,{D_k}} \right) = }\\ &\qquad {\hat e{{(g,g)}^{r\beta {q_x}(0)}};\quad {{\omega _k} = {\omega _i}} ,} \end{split} $

$ \begin{split} &{{\rm{DecryptNode}}{{({\rm{CT}},{\rm{SK}},x)}_2} = \hat {{e}}\left( {{C_x} {C_{x,j}},L} \right) {{\hat e}}\left( {C,{D_k}} \right) = }\\ &\qquad{\hat e{{\left( {{g_,}g} \right)}^{r\beta {q_x}(0)}};\quad {{\omega _k} = {\omega _j} > {\omega _i}} .} \end{split} \!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!$

$ x $为非叶节点时,DecryptNode (CT、SK、x) 定义如下:对于x的所有子节点z,运行DecryptNode (CT、SK、z) 并输出Fz。设Sx为子节点z的一个任意kx大小的集合,使Fz≠1。若子节点不存在,则Fz=1;否则,Fx表达式如下:

$ {F_x} = \prod\nolimits_{z \in {S_x}} {F_z^{ \Delta k,S_x^\prime (0)}} = \hat e{\left( {g,g} \right)^{r\beta {q_x}(0)}}. $

式中:k=index(x),Sx′={index (z): zSx}.

用CK解密获得明文 $ {M'} $

${{\tilde C}} \cdot {{A}}/\hat {{e}}({{C}},{{D}}) = {\rm{CK}},\;\;\;{{{D}}_{{\rm{CK}}}}\left[ {{{{E}}_{{\rm{CK}}}}({{M}})} \right] = M.$

式中:DCK为用对称密钥CK的解密操作,ECKM用CK进行加密后的密文.

数据访问者通过 $ {\rm{Verify}}\left( {{M}} \right) $验证数据完整性,并向数据所有者支付一定数量的代币,以激励车辆共享数据. $ {\rm{Verify}}\left( M \right)$:该算法首先计算 $ {M'} $的哈希值,并验证这个值是否与区块链上的 $ {{H}}_{{M}} $一致. 如果是,说明明文 $ {{M}}' $是正确的;否则,说明 $ {M'} $不是原始数据,数据访问者向区块链发送错误报告.

$ {{H}}_{{M'}}={\rm{Hash}}({{M}}'){.} $

4. 实验与分析

4.1. 车联网数据共享模型比较分析

表1所示,从5个方面与现有的车联网数据共享模型进行比较. 可以看出,相较于Kanumalli等[26-27]集中式的存储方式,本研究基于区块链实现分布式数据存储,能够有效解决集中式服务器的单点故障缺陷;相较于Singh等[79]采用动态移动车辆作为区块链主节点,固定位置的RSU能够在其通信范围内接收车辆上传的数据,且具有更好的计算与存储能力[24],因此更适合作为区块链主节点进行区块的生成、验证与存储;此外,本研究采用混合加密机制,使用AES对称加密方法加密数据,通过CP-ABE加密对称密钥,保证了数据的机密性以及数据的可控共享,相较于Oham等[9]事先按照组织、机构划分固定共享区域的方式,本研究方案在每次数据共享时,共享者可以根据需要制定灵活的访问控制策略;相较于Kanumalli等[26]基于身份的访问控制方式,本研究方案无须事先确定数据访问者的身份,能够通过一次加密,达到对多个数据访问者的数据安全共享效果,因此本研究方案更高效,适应于多实体、多角色的车联网数据共享场景.

表 1   与其他车联网数据共享模型的比较

Tab.1  Comparison with other data sharing schemes in IoV

参考文献 数据共享过程 存储方式 存储位置 数据机密性 访问控制
Oham等[9] 车辆-其他车辆-实体 分布式,不可篡改 各车辆 分区,预先划分域
Singh等[7] 车辆-其他车辆-实体 分布式,不可篡改 各车辆
Kanumalli等[26] 信息中心-RSU-车辆 集中式,单点故障 信息中心 AES+IBE 基于身份,预先确定身份,一对一
Pan等[27] 信息中心-RSU-车辆 集中式,单点故障 信息中心 AES+CP-ABE 基于属性,细粒度,一对多
本研究方案 车辆-RSU-实体 分布式,不可篡改 各RSU AES+CP-ABE 基于属性,细粒度,一对多

新窗口打开| 下载CSV


4.2. 方案安全性分析

4.2.1. 数据存储安全

车联网数据经过AES加密并存储在RSU中,对传统安全攻击具有较好的抵御能力,对称密钥经过CP-ABE加密,该算法具有随机预言模型下可证明的CPA安全性[20]. 通过在数据中加入时间戳,抵御重放攻击;在通信的过程中,车辆使用数字签名技术抵御攻击者的虚假信息攻击.

与传统的中心化存储方式不同,本研究采用分布式数据存储方法来保证车联网数据的安全存储,避免中心节点易遭受集中式恶意攻击的问题. 这种去中心化的存储方案具有较好的可扩展性和可靠性. 对于普通车辆而言,即使某一车辆串通攻击者来伪造数据存储部分数据,这些数据也会被其他RSU在分布式共识过程中发现. RSU节点间采用PBFT共识机制,设每个RSU独立维护一份共享密文数据块的记录,假设全网存在n个RSU,RSU篡改数据的概率为1/2,须同时存在n/3个恶意RSU才能成功发起数据篡改攻击. 因此,恶意的RSU篡改数据的成功率仅为1/2n/3.

4.2.2. 数据访问安全

当数据访问者进行数据访问时,由于车辆通过定义访问策略限制数据访问者的访问权限,只有当其属性满足车辆定义的访问策略时,才能解密出对称密钥CK并获得数据M.

4.3. 方案性能分析
4.3.1. 实验环境

本研究实验为仿真实验,使用交通仿真软件SUMO[28]进行车联网数据共享场景的模拟,如图5所示,实验模拟路段为杭州市余杭塘路,并设置了400 辆行驶车辆以及20个RSU. 如表2所示为实验中的参数设置.

图 5

图 5   数据共享场景模拟地图

Fig.5   Simulated map of data sharing scene


表 2   数据共享场景模拟仿真参数

Tab.2  Simulation parameters of data sharing scene

参数 数值
车速 60 km/h
RSU内车辆密度 [10,50]
DSRC通信范围 0~500 m
数据传输速率 250 kb/s
OBU配置 1.5 GHz,4 core CPU
RSU配置 1.8 GHz,4 core CPU,237 G hard disk

新窗口打开| 下载CSV


在车联网场景中,车辆A感知到前方路段发生了事故,生成共享数据M. 然后调用算法1,输入共享对象的属性集合:{(交通管理局,余杭交警大队,警督),(交通管理局,余杭交警大队,警监),(保险公司,业务部,副经理),(保险公司,业务部,经理)},输出访问控制策略 $ {T} $= ((交通管理局)AND(余杭交警大队)AND(警员:3)OR((保险公司)AND(业务部)AND(经理:1))). 车辆使用策略 $ {T} $加密数据,密文数据上传至RSU,经过分布式共识后数据被存储到区块链中.

4.3.2. 实验结果分析

1)计算开销. 在实验中采用JAVA的配对密码库(JPBC)实现带权CP-ABE和传统CP-ABE. 由于在传统的CP-ABE方案中,解密时间和密文大小都取决于密文中的访问控制策略的复杂性. 为了阐述这个事实,定义复杂策略,即属性的个数从1依次递增至100,策略 $ T = ({a_1}\;{\rm{AND}}\; $ $ {a_2}\;{\rm{AND}} \cdots {\rm{AND}}\;{a_n}) $,每个属性类 $ {L} $平均包含5个属性. 如图6所示为2种算法的加密时间随属性数量的变化趋势. 图中,attr为属性的个数,t1为加密时间.

图 6

图 6   车辆的加密效率

Fig.6   Encryption efficiency of vehicle


在100个属性加密时,传统CP-ABE需要约4.26 s,而本研究方案中加密时间减小至约0.90 s. 通过引入权重构建访问控制策略, $ T $中的属性个数能够减少至1/5,即策略中的属性仅为20个,大大降低了策略的复杂性,显著降低了计算开销.

2)通信开销. 如图7所示为2种算法的密文大小随属性数量的变化趋势.图中,size为密文传输大小.

图 7

图 7   车辆-RSU的密文传输大小

Fig.7   Transmission size of ciphertext of vehicle to RSU


在100个属性加密时,传统CP-ABE密文大小为57.5 kb,而本研究方案中密文大小为33 kb. 通过引入权重构建访问控制策略, $ T $中的属性个数能够减少至1/5,即策略中的属性仅为20个,减小了密文大小,显著减小车辆将数据传输至RSU的传输开销.

3)共识效率. 为了验证本研究中共识机制的有效性,将与恶意节点交互的车辆数分别设置为10、20、30、40、50. 如图8所示为信任值随时间变化的趋势. 图中,t2为时间,Trust为节点的信任值.

图 8

图 8   恶意节点的信任值

Fig.8   Trust of malicious nodes


当与恶意节点交互的车辆达到40个时,其信任值降低为0的速度仅10 min,与恶意节点交互的车辆越多,反馈该节点恶意行为的次数越多,其信任值下降越快. 本研究方案基于信任值选择主节点,能够有效降低拜占庭节点成为主节点的概率.

为了测试共识效率,在Hyperledger Fabric平台上测试区块达成一致的时间. 如图9所示为共识时间随节点数量变化的趋势. 图中,node为参与共识节点的个数,t3为共识的时间消耗.

图 9

图 9   RSU的共识时间

Fig.9   Consensus time of RSU


当节点数量达到20个时,共识时间近60 s,且共识时间随节点个数呈线性增加. 由于本研究方案的共识过程只在RSU节点上执行,而不是在所有网络节点上执行,节点验证的速度更快,共识效率更高.

5. 结 语

针对传统车联网数据存储中面临着数据易篡改、易泄露的问题,设计去中心化的数据安全存储与访问控制方案,能够为事故取证、交通数据分析提供可靠数据源,并引入属性基加密实现对链上数据灵活的访问控制. 面向多实体、多角色的共享需求,通过挖掘各角色间属性权限的关联关系,构造层级访问控制策略. 实验表明,本研究方案在车联网数据共享场景中的计算开销、传输开销以及共识效率方面有优势.

在下一步研究中,将对链上数据的策略更新与属性撤销进行研究,在保证安全性和有效性的前提下,进一步提高车联网数据共享效率.

参考文献

HARTENSTEIN H, LABERTEAUX L P

A tutorial survey on vehicular ad hoc networks

[J]. IEEE Communications Magazine, 2008, 46 (6): 164- 171

DOI:10.1109/MCOM.2008.4539481      [本文引用: 2]

LUO G, ZHOU H, CHENG N, et al

Software defined cooperative data sharing in edge computing assisted 5G-VANET

[J]. IEEE Transactions on Mobile Computing, 2021, 20 (3): 1212- 1229

DOI:10.1109/TMC.2019.2953163      [本文引用: 1]

KARAGIANNIS G, ALTINTAS O, EKICI E, et al

Vehicular networking: a survey and tutorial on requirements, architectures, challenges, standards and solutions

[J]. IEEE Communications Surveys and Tutorials, 2011, 13 (4): 584- 616

DOI:10.1109/SURV.2011.061411.00019      [本文引用: 1]

CEBE M, ERGIN E, AKKAYA K, et al

Block4forensic: an integrated lightweight blockchain framework for forensics applications of connected vehicles

[J]. IEEE Communications Magazine, 2018, 56 (10): 50- 57

DOI:10.1109/MCOM.2018.1800137      [本文引用: 2]

UGWU M C, OKPALA I U, OHAM C I, et al

A tiered blockchain framework for vehicular forensics

[J]. International Journal of Network Security and Its Applications (IJNSA), 2018, 10 (5): 25- 33

DOI:10.5121/ijnsa.2018.10503      [本文引用: 1]

LISHCHUK R. Auto tracking company leaks hundreds of thousands of records online [EB/OL]. (2017-9-21). https://mackeeper.com/blog/post/auto-tracking-company-leaks-hundreds-of-thousands-of-records-online/.

[本文引用: 1]

SINGH M, KIM S. Blockchain based intelligent vehicle data sharing framework [EB/OL].[2020-07-01]. https://arxiv.org/abs/1708.09721.

[本文引用: 4]

FAN K, PAN Q, ZHANG K, et al

A secure and verifiable data sharing scheme based on blockchain in vehicular social networks

[J]. IEEE Transactions on Vehicular Technology, 2020, 69 (6): 5826- 5835

DOI:10.1109/TVT.2020.2968094      [本文引用: 1]

OHAM C, JURDAK R, KANHERE S S, et al. B-fica: blockchain based framework for auto-insurance claim and adjudication[C]// 2018 IEEE International Conference on Internet of Things (iThings) and IEEE Green Computing and Communications (GreenCom) and IEEE Cyber, Physical and Social Computing (CPSCom) and IEEE Smart Data (SmartData). Halifax: IEEE, 2018: 1171-1180.

[本文引用: 4]

LEWKO A, OKAMOTO T, SAHAI A, et al. Fully secure functional encryption: attribute-based encryption and (hierarchical) innerproduct encryption[C]// annual International Conference on the Theory and Applications of Cryptographic Techniques. Berlin: Springer, 2010: 62-91.

[本文引用: 2]

LI L, LIU J, CHENG L, et al

Creditcoin: a privacy-preserving blockchain-based incentive announcement network for communications of smart vehicles

[J]. IEEE Transactions on Intelligent Transportation Systems, 2018, 19 (7): 2204- 2220

DOI:10.1109/TITS.2017.2777990      [本文引用: 1]

YUAN Y, WANG F Y. Towards blockchain-based intelligent transportation systems[C]// 2016 IEEE 19th International Conference on Intelligent Transportation Systems (ITSC). Rio de Janeiro: IEEE, 2016: 2663-2668.

[本文引用: 1]

KHAN M A, SALAH K

IoT security: review, blockchain solutions, and open challenges

[J]. Future Generation Computer Systems, 2018, 82: 395- 411

DOI:10.1016/j.future.2017.11.022      [本文引用: 1]

YUE X, WANG H, JIN D, et al

Healthcare data gateways: found healthcare intelligence on blockchain with novel privacy risk control

[J]. Journal of Medical Systems, 2016, 40 (10): 218

DOI:10.1007/s10916-016-0574-6      [本文引用: 1]

YANG Z, YANG K, LEI L, et al

Blockchain-based decentralized trust management in vehicular networks

[J]. IEEE Internet of Things Journal, 2018, 6 (2): 1495- 1505

URL     [本文引用: 1]

AO L, OGAH C, ASUQUO P, et al

A secure key management scheme for heterogeneous secure vehicular communication systems

[J]. ZTE Communications, 2019, 14 (S0): 21- 31

[本文引用: 1]

LI M, ZHU L, LIN X

Efficient and privacy-preserving carpooling using blockchain-assisted vehicular fog computing

[J]. IEEE Internet of Things Journal, 2018, 6 (3): 4573- 4584

URL     [本文引用: 1]

闫玺玺, 孟慧

支持直接撤销的密文策略属性基加密方案

[J]. 通信学报, 2016, 37 (5): 44- 50

DOI:10.11959/j.issn.1000-436x.2016091      [本文引用: 1]

YAN Xi-xi, MENG Hui

Ciphertext policy attribute-based encryption scheme

[J]. Journal of Communications, 2016, 37 (5): 44- 50

DOI:10.11959/j.issn.1000-436x.2016091      [本文引用: 1]

SAHAI A, SEYALIOGLU H, WATERS B. Dynamic credentials and ciphertext delegation for attribute-based encryption[C]// Annual Cryptology Conference. Berlin: Springer, 2012, 7417: 199-217.

仲红, 崔杰, 朱文龙, 等

高效且可验证的多授权机构属性基加密方案

[J]. 软件学报, 2018, 29 (7): 2006- 2017

URL     [本文引用: 2]

ZHONG Hong, CUI Jie, ZHU Wen-long, et al

Efficient and verifiable muti-authority attribute based encryption scheme

[J]. Journal of Software, 2018, 29 (7): 2006- 2017

URL     [本文引用: 2]

LIU X, XIA Y, CHEN W, et al

SEMD: secure and efficient message dissemination with policy enforcement in VANET

[J]. Journal of Computer and System Sciences, 2016, 82 (8): 1316- 1328

DOI:10.1016/j.jcss.2016.05.006      [本文引用: 1]

WANG S, LIANG K, LIU J K, et al

Attribute-based data sharing scheme revisited in cloud computing

[J]. IEEE Transactions on Information Forensics and Security, 2016, 11 (8): 1661- 1673

DOI:10.1109/TIFS.2016.2549004      [本文引用: 1]

张凯, 马建峰, 张俊伟, 等

在线/离线的可追责属性加密方案

[J]. 计算机研究与发展, 2018, 55 (1): 216- 224

DOI:10.7544/issn1000-1239.2018.20160799      [本文引用: 1]

ZHANG Kai, MA Jian-feng, ZHANG Jun-wei, et al

Online/offline traceable attribute-based encryption

[J]. Journal of Computer Research and Development, 2018, 55 (1): 216- 224

DOI:10.7544/issn1000-1239.2018.20160799      [本文引用: 1]

QAZI F, KHAN F H

Enhancing the security of vehicle to road side unit (RSU) communication with key generation and advanced encryption procedure in vehicular ad-hoc network (VANET)

[J]. Indian Journal of Science and Technology, 2017, 10: 36

[本文引用: 2]

陈蔚, 刘雪娇, 夏莹杰

基于层次分析法的车联网多因素信誉评价模型

[J]. 浙江大学学报: 工学版, 2020, 54 (4): 722- 731

URL     [本文引用: 1]

CHEN Wei, LIU Xue-jiao, XIA Ying-jie

Multi-factor reputation evaluation model based on analytic hierarchy process in VANETs

[J]. Journal of Zhejiang University: Engineering Science, 2020, 54 (4): 722- 731

URL     [本文引用: 1]

KANUMALLI S S, CH A, MURTY P S R C

Secure V2V communication in IOV using IBE and PKI based hybrid approach

[J]. International Journal of Advanced Computer Science and Applications(IJACSA), 2020, 11 (1): 466- 472

URL     [本文引用: 3]

PAN J, CUI J, WEI L, et al

Secure data sharing scheme for VANETs based on edge computing

[J]. EURASIP Journal on Wireless Communications and Networking, 2019, (1): 1- 11

DOI:10.1186/s13638-018-1318-8      [本文引用: 2]

裴金漪. 基于SUMO和双流体模型的城市交通信号系统模拟[D]. 兰州: 兰州交通大学, 2015.

[本文引用: 1]

PEI Jin-yi. Urban traffic signal system simulation based on SUMO and two-fluimodel[D]. Lanzhou: Lanzhou Jiaotong University, 2015.

[本文引用: 1]

/