CN116390092A - 一种基于多策略访问树的车联网细粒度访问控制方法 - Google Patents

一种基于多策略访问树的车联网细粒度访问控制方法 Download PDF

Info

Publication number
CN116390092A
CN116390092A CN202310067935.0A CN202310067935A CN116390092A CN 116390092 A CN116390092 A CN 116390092A CN 202310067935 A CN202310067935 A CN 202310067935A CN 116390092 A CN116390092 A CN 116390092A
Authority
CN
China
Prior art keywords
vehicle
access
rsu
node
attribute
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310067935.0A
Other languages
English (en)
Inventor
曹利
张迪
李原帅
魏晓宁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nantong University
Original Assignee
Nantong University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nantong University filed Critical Nantong University
Priority to CN202310067935.0A priority Critical patent/CN116390092A/zh
Publication of CN116390092A publication Critical patent/CN116390092A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security
    • H04W12/084Access security using delegated authorisation, e.g. open authorisation [OAuth] protocol
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/67Risk-dependent, e.g. selecting a security level depending on risk profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明提供了一种基于多策略访问树的车联网细粒度访问控制方法,属于车联网安全技术领域,解决了车联网环境下资源安全访问控制算法通信时延较大、计算量大、效率低下、无法实现细颗粒度资源访问控制的问题;其技术方案为:包括如下步骤:S1、对车辆和RSU进行身份注册;S2、车辆生成多策略访问树并上传给PES;S3、告知RSU其开放的资源;S4、RSU转发请求给PES,PES执行MTRM算法;S5、RSU将PES计算的访问控制状态转告给车辆。本发明的有益效果为:通过多级访问策略的制定实现对车联网资源的细粒度访问;极大提高访问控制效率;通过引入拉格朗日多项式秘密值恢复机制,将秘密值与授权令牌结合。

Description

一种基于多策略访问树的车联网细粒度访问控制方法
技术领域
本发明涉及车联网安全技术领域,尤其涉及一种基于多策略访问树的车联网细粒度访问控制方法。
背景技术
车联网作为物联网在智慧交通领域的重要分支,以车内网、车际网为基础,按照约定的通信协议和数据交互标准,在车与车、车与路边基础设施、车与外部网络之间,执行无线信息传输及交互,进而实现智能交通管理,智能动态信息服务和车辆智能化控制。作为一种大型分布式系统,互联车辆的海量资源,包括基本信息、储存资源、多余算力等可充分共享,实现车辆协调通信、智能决策,并有效提高空余资源利用率。但由于车联网通信拓扑的高动态性和自组织性,路边单元和动态车辆之间形成多域、开放的网络环境,导致车辆系统资源的敏感信息易泄露或易受篡改,使车主的财产和人身安全受到威胁。因此,必须采取适当的访问控制手段对车联网中的资源传播进行管控,保证资源的安全共享。
传统的访问控制模型主要有自主访问控制模型、强制访问控制模型、以及基于角色的访问控制模型等,主要适用于集中式安全控制系统中。而车联网具有分布式、开放信道、动态组网、对通信时延高度敏感的新特性,传统访问控制模型无法有效解决其资源访问控制问题。
基于属性的访问控制(Attribute-based Access Control ABAC)是解决分布式环境下的访问控制问题而发展起来的,ABAC方法的核心思想是主体和资源之间的访问基于属性来授权,访问控制实体的属性是访问控制决策的最小粒度。简单而言,就是访问控制系统根据用户的属性赋予用户访问相应数据的权限。由于ABAC模型具有分布式、资源可扩展、访问控制授权细粒度的优势,在车联网环境下,可降低授权逻辑复杂性,提高访问控制授权的灵活性。因此,国内外学者对基于ABAC模型的车联网访问控制算法研究做了大量工作。如,Huang等学者在《attribute-based secure policy enforcement in vehicular ad hocnetworks》中首先将CPABE加密方法引入到车联网中,利用基于属性制定安全访问策略框架,实现资源共享过程中细粒度的访问控制,为车联网访问控制技术研究提出了新思路;Liu等学者在《secure and efficient message disseminationwith policy enforcementin VANET》中通过将部分复杂的计算外包至第三方解决属性基加密的时间消耗大的问题;但对于外包的第三方可信度以及第三方的稳定度条件要求苛刻,容易产生数据泄露或单点故障问题;庞立君等在《基于CP-ABE的车联网云端数据安全访问控制方案》中提出了一种基于CP-ABE的车联网云端数据安全访问方案,解决基于属性的加解密算法时间消耗大的问题,达到加密解密高效率的特性,但车云服务商计算代价较大,容易产生较大的时延。刘雪娇等在《基于区块链的车联网数据安全共享方案》中引入区块链去中心化的数据存储解决传统存储条件下数据易篡改易泄漏的问题,引入属性加密解决灵活的车联网访问控制,但去中心化区块链数据上传会影响数据的共享效率,导致产生较大的时延;侯慧莹等在《面向自动驾驶的高效可追踪的车联网匿名通信方案中》提出了一个面向自动驾驶的高效可追踪的车联网匿名通信方案,通过属性集与车辆之间一对多的关系体现出了匿名性;但实现匿名性的同时却损失了访问控制方案的细粒度,难以满足车辆网环境下对细粒度的高要求。
如何解决上述技术问题为本发明面临的问题。
发明内容
本发明提出了一种基于多策略访问树的车联网细粒度访问控制方法,主要将传统的单策略访问树改进为多策略访问树,通过多级策略制定,实现对资源的细粒度访问,极大提高策略访问效率,在多策略访问控制模型中,方案通过引入拉格朗日多项式秘密值恢复机制,将秘密值与授权令牌结合,只要资源请求车辆的属性集合匹配对应树任一节点,就能计算出该节点中的秘密值,从而获得访问控制的权限,解决了车联网访问控制授权的安全性问题。
本发明是通过如下措施实现的:一种基于多策略访问树的车联网细粒度访问控制方法,包括如下步骤:
S1、可信认证中心TA初始化系统参数,其PKI机制采用Elgamal算法为车辆、RSU生成公私钥和证书;策略执行系统PES定义标准的属性集,并为注册车辆生成固定属性集。
S2、车辆定义其资源的访问策略,生成访问策略表,并将该访问策略表转化成对应多策略访问树结构,为访问树非叶子节点赋予秘密值,将秘密值与对应的访问策略绑定;车辆将多策略访问树递交给策略执行系统存储。
S3、车辆在接入车联网的过程中,先与区域RSU进行双向身份认证,获得会话密钥和临时假名,并向该区域RSU申报其可开放资源。
S4、车辆利用假名向RSU发送资源请求;RSU向策略执行系统转发该车辆的属性集和开放资源对象集;策略执行系统根据开放资源对象的假名获得其多策略访问树,执行MTRM匹配算法:将申请车辆的属性集和多策略访问树进行属性匹配,获得授权节点和对应的秘密值,根据秘密值,获取其对应的访问策略,从而获取其对应的开放资源。
S5、策略执行系统PES将可访问资源集发送给RSU;RSU根据车辆假名,分别告知主体客体车辆对应资源的访问控制状态。
进一步地,所述S1步骤包括:
S11、系统参数初始化,TA随机选取素数q和s,
Figure BDA0004063474150000031
计算β=αs(modq),并将s作为系统主密钥SMK,β作为系统公钥Ppub;TA选择三个单向抗碰撞的哈希函数:
Figure BDA0004063474150000032
TA公布系统参数Param={q,α,β,H0,H1},保留系统主密钥SMK
S12、属性标准化定义,基于属性的访问控制以属性为基本单位对实体的权限进行控制,其中属性包括访问主体、访问的资源、访问操作、环境,环境属性包含车辆的网络状况、道路环境、历史信息等;车辆的特性由一系列特定属性来描述,具体可划分为固定属性和可变属性;固定属性即为在车辆生命周期中不发生变化或长期保持不变的属性,例如车辆生产商、年份和系统安全等级等;可变属性即周期性变化的属性,如车辆当前位置和行驶方向等;策略执行系统在初始化阶段,定义车联网系统中车辆实体的标准属性集A={a1,a2,...,an}。
S13、实体注册,在本阶段,主要实现实体RSU和车辆Vi的线下初始化注册,RSU和车辆Vi分别向TA提交其基本信息(公私钥、身份信息),TA为RSU和车辆提供的公钥颁发证书,PES为车辆生成固定属性子集:
S131、在部署RSU前,车管所统一购进RSU设备并为其初始化,RSU选择随机数
Figure BDA0004063474150000033
作为其的私钥SR,计算RSU的公钥/>
Figure BDA0004063474150000034
其中τ是一个本原元;
S132、TA为RSU颁发证书CertR,证书包含:RSU的公钥、证书有效期、TA的私钥签名、RSU的位置信息等,RSU将证书CertR、公钥存储在本地;
S133、车辆Vi注册由可信认证中心TA完成,车辆Vi向TA提交基本信息(车牌号、车主身份信息、车辆登记信息、车辆违法信息等),TA核实其真实性后,将IDi设置为车辆Vi的唯一身份标识;
S134、车辆Vi选择随机数
Figure BDA0004063474150000035
计算车辆Vi的公钥/>
Figure BDA0004063474150000036
并把xi设置为车辆Vi的私钥/>
Figure BDA0004063474150000037
存储于OBU的不可篡改设备中,其中/>
Figure BDA0004063474150000038
是一个本原元;
S135、TA为车辆Vi颁发证书
Figure BDA0004063474150000039
证书包括:车辆Vi的公钥/>
Figure BDA00040634741500000310
身份标识IDi、证书的有效期、TA的私钥签名等,车辆Vi将证书存储在OBU的不可篡改设备中;
S136、TA选择随机数n为车辆Vi计算伪身份:
Figure BDA0004063474150000041
并将车辆Vi的伪身份IDi'、身份标识IDi进行关联;
S137、策略执行系统PES根据车辆Vi提交的基本信息,映射到标准属性集A={a1,a2,...,an},产生本车辆Vi的属性子集
Figure BDA0004063474150000042
其中,/>
Figure BDA0004063474150000043
为车辆Vi在访问控制系统中授权的固定属性集。
进一步地,所述S2步骤包括:
S21、生成访问策略表,车辆Vi可以对自己的不同的开放资源定义不同的访问策略,实现细粒度访问,具体为,通过定义多个访问策略,将满足不同的属性集映射到不同的资源Rk,形成三元组访问策略<Pi,Ai,Ri>。
S22、多策略树生成的目的是将在S21步骤中车辆定义的访问策略表转化成对应多策略访问树结构;算法将传统的单策略生成树改进为多策略生成树,通过生成树不同节点的秘密值映射到不同策略,并将之和授权令牌绑定,从而实现高效灵活的访问控制,访问策略表转化成对应访问树结构的方法为:假设车辆属性为(A,B,C,D,E),非叶子节点为门节点,存储秘密值,将车辆定义的策略表转化成访问树结构的过程为,若根据车辆定义的策略表,车辆开放相关资源需要满足以下5个属性集之一,表达为:
属性集1:{属性A,属性B}
属性集2:{属性C}
属性集3:{属性D}
属性集4:{属性E}
属性集5:{属性B}
而生成的多策略树结构对应的逻辑表达式为:
(属性A&&属性B)||(属性C||属性D)||属性E
多策略生成树采用广度遍历中的中序遍历方式,叶子节点的值为属性值,而非叶子节点中包含门限值、结点索引值indexk,k∈{1,2,3,...}、秘密值secretk和令牌H1(indexk,secretk),只有满足门限值的限制才可以对该非叶子节点解密,从而获得该非叶子节点的秘密值,然后获得对应资源的授权令牌;生成多策略访问树。
S23、多策略访问树存储,车辆Vi向可信认证中心的策略执行系统递交多授权访问树,包括访问树Treei、假名Fi和令牌策略映射表T-P-map[][],其中,访问树Treei采用孩子表示法存储,即将每个节点的孩子节点都用单链表连接形成线性结构,策略执行系统PES将该多策略访问树根节点的地址和对应车辆伪身份IDi'建立映射关系。
进一步地,多策略访问树的生成过程如下:
S221、定义访问树节点,定义访问树节点,包括属性值attr、门限值gate、索引值index、秘密值secret、非叶子节点的孩子节点列表children[]、非叶子节点的拉格朗日多项式f(x)。
S222、初始化数据,为建立访问树,需要定义树的节点,节点分为叶子和非叶子两类,Node数据结构将两类节点均定义在内;利用Node数据结构初始化数组N,将访问树的n个节点的属性值、策略、门限值、孩子节点的索引编号分别存入N.atts、N.Policy、N.gates、N.children。
S223、建立生成树,利用数组N中的数据为生成树中每个节点赋值,若节点为叶子节点,则利用初始化数组N中的属性集atts为叶子节点赋属性值;若是非叶子节点,则根据初始化数组N中的门限值集合gates和孩子节点集合children为节点的门限值(kx,num)和孩子节点赋值。
S224、执行令牌策略绑定算法,主要实现访问树非叶子节点的秘密值和访问策略表的权限映射,从而将访问树定义成一棵多策略访问树;具体执行过程如下所示:
S2241、车辆选择随机数作为多授权访问树根节点n的秘密值,计算该秘密值和根节点的索引值的哈希值,将结果作为根节点的授权令牌;同时,在授权令牌和访问策略表中该节点对应的策略之间建立映射关系。
S2242、以根节点的门限值减1为多项式f(x)的次数,随机数数组coef[]为多项式f(x)的系数,根节点的秘密值(secret)为多项式f(x)的常数项,x为变量,生成多项式f(x);并将该多项式作为根节点的节点多项式。
S2243、车辆将根节点孩子节点的索引值index作为自变量,代入根节点的多项式f(x)计算其孩子节点的秘密值。
S2244、车辆对孩子节点的秘密值和索引值进行哈希运算,并将哈希值作为其孩子节点的授权令牌。
S2245、车辆将访问策略表中节点n对应的访问策略Policy与节点n的授权令牌token进行映射,并将该映射存储在T-A-map[][]表中。
S2246、执行递归循环,在递归循环中,将该节点的孩子节点作为新的根节点,但是不再需要初始化根节点的秘密值和令牌;直至该根节点为访问树的叶子节点。
S2247、将令牌策略映射表T-P-map[][]作为返回结果,用于其他车辆访问时的授权凭证。
进一步地,所述S3步骤包括:
S31、双向认证,RSU周期性广播证书和签名,车辆Vi驶入RSU的通信区域时,获得证书CertR和RSU公钥,并利用该公钥验证RSU签名的有效性,从而确定RSU身份合法性,同样,车辆Vi向RSU发送其证书、时间戳和签名等,时间戳用于防止重放攻击;RSU获得车辆Vi的证书后,利用Vi公钥验证车辆Vi签名的有效性,从而验证车辆Vi身份合法性;
S32、会话密钥生成,双方验证身份合法性后,执行会话密钥生成操作,过程为:RSU和车辆Vi分别选择一个随机数a,b,RSU选择大素数p以及整数g,并将其公开,RSU计算K1=gamodp并发送
Figure BDA0004063474150000061
给车辆Vi,车辆Vi利用其私钥SVi对/>
Figure BDA0004063474150000062
解密,并计算会话密钥key=(K1)bmodp,然后,车辆Vi计算K2=gbmodp并发送/>
Figure BDA0004063474150000063
给RSU,RSU对/>
Figure BDA0004063474150000064
解密,并计算会话密钥key=(K2)a modp;会话密钥计算完成后,RSU为车辆Vi计算临时假名Fi=H3(IDi'||Nonce),其中,Nonce为随机数,并发送/>
Figure BDA0004063474150000065
给车辆Vi,在本RSU区域中,车辆利用临时假名进行通信。
S33、申报可开放资源,客体车辆Vj利用会话密钥生成密文消息
Figure BDA0004063474150000066
发送给RSU,消息包含:假名Fj、资源集Rk、车辆Vj的位置/>
Figure BDA0004063474150000067
和时间戳TS,RSU利用会话密钥解密该消息后,首先根据时间戳TS验证时效性,若超时,重新验证;然后比较值/>
Figure BDA0004063474150000068
是否大于ΔL,若是,说明车辆Vi已经驶离当前RSU的管辖区域,拒绝本次申报,否则将该车辆Vj相关字段值存入车辆的可用资源表中,表示该资源对本RSU区域的车辆开放申请。
进一步地,所述S4步骤包括:
S41、Vi申请资源,主体车辆Vi向RSU发送资源请求报文
Figure BDA0004063474150000069
其中,集合/>
Figure BDA00040634741500000610
表示车辆Vi所需资源请求集,TS表示时间戳,用于防止重放攻击:
Figure BDA0004063474150000071
定位客体车辆,RSU接收申请报文,解密验证时效性后,定位满足资源需求的客体车辆Vj,过程为:RSU为主体车辆Vi生成请求资源属性集
Figure BDA0004063474150000072
根据车辆Vi的资源请求集检索车辆可用资源表,并返回符合条件的客体车辆Vj假名,若存在多个匹配,返回符合条件的客体车辆假名集{F1,...,Fk}。
S42、RSU向PES转发主体车辆Vi的资源访问请求
Figure BDA0004063474150000073
请求报文包含如下字段:主体车辆Vi的属性集/>
Figure BDA0004063474150000074
满足条件的客体车辆的假名集{F1,...,Fk}和时间戳TS,利用系统公钥Ppub加密本请求报文:
Figure BDA0004063474150000075
策略执行系统PES利用主密钥SMK解密该请求报文,并以请求报文字段中车辆假名集{F1,...,Fk}为多策略访问树的索引条件,确定多个假名Fj对应的多策略访问树,并针对每一棵多策略访问树按以下步骤,逐一进行授权匹配检查;PES利用RSU发来的资源请求信息确定多棵访问树treej后,执行多策略树资源匹配(MTRM)算法为主体车辆资源授权检查,生成最高权限资源集;
PES根据MTRM算法获得的PolicyList[]检索S2中的三元组访问策略表,若PolicyList[]获得的策略分别为{P1,P2,...,Pk},访问策略表中对应的资源集应为{R1,R2,...,Rk},则可生成最大策略资源集Rmax=R1∪R2∪...∪Rk;PES将Rmax作为主体车辆Vi可访问的资源集。
进一步地,PES执行多策略树资源匹配算法的过程如下:
S421、PES从该树的最后一个节点依次向前遍历,直到根节点结束。
S422、PES根据每一个节点判断是否为叶子节点,如果是叶子节点,判断主体车辆的属性值是否满足该节点的属性值;如果是非叶子节点,对该非叶子节点的每一个子节点进行判断是否为有效节点,若是有效节点,则插入该节点可用孩子数组。
S423、PES判断该节点n可用孩子数组中节点的个数是否达到门限值,确定是否可以恢复节点n的秘密值。
S424、PES遍历可恢复的非叶子节点n可用孩子数组,计算有效子节点的拉格朗日插值因子,并利用有效子节点的拉格朗日插值因子和秘密值恢复该非叶子节点n的秘密值。
S425、PES将该非叶子节点n的秘密值和该节点索引值进行哈希运算,并将计算结果作为该节点n的令牌。
S426、PES利用该节点的令牌与该多策略访问树的资源拥有者产生的T_P_map[][]中的令牌属性列中的元素进行匹配,将满足令牌匹配条件的结果插入策略列表。
S427、PES返回策略列表PolicyList[],PolicyList[]中包含了多策略访问控制树中所有满足属性匹配的非叶子节点秘密值对应的访问控制策略,实现了一个访问控制树支持多策略的细粒度、高效访问控制。
进一步地,所述S5步骤包括:
S51、PES以RSU公钥加密授权通知报文后发送给RSU:
Figure BDA0004063474150000081
包括以下字段:主体车辆假名Fi、客体车辆假名Fj、Vi的可访问资源集Rmax和时间戳TS。
S52、RSU生成授权通知报文1给主体车辆Vi,该报文包含车辆Vi资源请求的状态和时间戳TS,并利用会话密钥keyi加密:
Figure BDA0004063474150000082
车辆Vi若接收到该报文,则表明资源请求授权成功。
S53、RSU生成授权通知报文2给客体车辆Vj
Figure BDA0004063474150000083
该报文包含Vj的可访问资源集Rmax和时间戳TS,Vj开放资源等待主体车辆Vi的访问。与现有技术相比,本发明的有益效果为:
(1)本发明的一种基于多策略访问树的车联网细粒度访问控制方法,创新性地设计了一种由多级策略制定的多策略访问树,在多策略访问树中,所有的非叶子节点都可以被定义为一个访问策略,通过使用拉格朗日插值公式判断非叶子节点的孩子节点是否满足门限值,确定向资源请求者授予的权限等级,最后,获取非叶子节点中最高权限等级;多策略访问树的设计有效的提高了策略的访问效率。
(2)本发明的一种基于多策略访问树的车联网细粒度访问控制方法,创新性地设计了令牌策略绑定算法,用于多策略访问树非叶子节点的秘密值的计算和访问策略表的权限映射:多策略访问树非叶子节点的秘密值的计算是由根节点和资源拥有者定义的访问策略(每个节点的门限值)根据拉格朗日插值公式的基本原理生成,访问策略表的权限映射主要是将非叶子节点的秘密值映射为令牌,并将令牌与该节点对应的策略绑定;有效的保护了多策略访问树中定义策略的安全性。
(3)本发明的一种基于多策略访问树的车联网细粒度访问控制方法,创新性地设计了多策略树匹配算法(MTRM)为资源请求者的资源授权检查:多策略访问树通过匹配资源请求者的属性集对应的叶子节点,确定是否满足叶子节点对应的非叶子节点的门限值,根据拉格朗日插值公式的基本原理可以获取非叶子节点的令牌,进而获取非叶子节点对应的策略,最后,将权限等级最高的作为最终返回结果。多策略树匹配算法是访问树多策略化的核心,达成了车联网细颗粒度资源访问控制的效果。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。
图1为本发明实施例的基于多策略访问树的车联网细粒度访问控制的方案流程图;
图2为本发明实施例的车联网架构示意图;
图3为本发明实施例的系统逻辑架构图;
图4为本发明实施例的基于多策略访问树的车联网细粒度访问控制的方案框架图;
图5为本发明实施例的系统初始化过程示意图;
图6为本发明实施例的多策略访问树生成过程示意图;
图7为本发明实施例的多授权访问树结构示意框架;
图8为本发明实施例的车辆入网验证流程图;
图9为本发明实施例的资源访问控制流程图;
图10为本发明实施例的资源授权过程流程图;
图11为本发明实施例的策略匹配计算开销对比图一;
图12为本发明实施例的策略匹配计算开销对比图二;
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。当然,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
实施例
参见图1至图12,本发明提供其技术方案为,本实施例提供了一种基于多策略访问树的车联网细粒度访问控制方法,如图1所示,包括如下步骤:
S1、可信机构初始化系统参数和标准属性集、对车辆和RSU进行身份注册;
S2、车辆生成多策略访问树,并上传给PES;
S3、车辆接入车联网后,告知RSU其开放的资源;
S4、车辆请求资源,RSU转发请求给PES,PES执行MTRM算法;
S5、RSU将PES计算的访问控制状态转告给车辆。
如图2所示,基于多策略访问树的车联网细粒度访问控制方法中车联网架构包括:
1.可信认证中心(TA):可信认证中心是一个权威机构,与路边单元RSU通过有线网络建立连接,主要用于车联网系统参数初始化、证书的颁发和实体认证等。
2.路边单元(RSU):路边单元通常固定在道路两侧及十字路口,具有较强的计算能力和存储能力,为车载单元接入网络提供服务,同时,与可信认证中心TA合作处理系统数据。
3.车载单元(OBU):车辆的车载单元具有一定的计算和存储能力。利用DSRC车载短程通信协议或者其他无线通信协议与其他OBU和RSU进行组网通信。同时,车载单元也是系统中的资源拥有者和资源访问者。
如图3所示,基于多策略访问树的车联网细粒度访问控制方法的车联网访问控制模型,分三个层次,底层为OBU所组成的网络,中间层为RSU接入网,顶层为可信认证机构(可信认证中心、策略执行系统)。
1.可信认证机构包含可信认证中心TA和策略执行系统PES(PolicyEnforcementSystem)两部分。在本方案中,可信认证中心主要负责初始化系统参数、为车辆及RSU提供PKI认证服务,辅助RSU实现移动车辆节点的可靠接入;策略执行系统(即访问控制服务器)负责策略初始化定义和授权控制工作。
2.RSU通过DSRC协议或者其他无线通信协议与其所管辖区域内的车辆进行无线通信。在本方案中,因其较强的计算能力和存储能力,主要负责为资源请求者申请资源拥有者的权限。
3.每个车辆都装载有OBU模块。在本方案中,主要作为访问控制系统中的客体(资源拥有者)和主体(资源请求者)。同时,作为资源拥有者的客体车辆需要根据标准属性集初始化自己开放资源的访问策略。
如图4所示,包括如下步骤:
S1、可信认证中心TA初始化系统参数,其PKI机制采用Elgamal算法为车辆、RSU生成公私钥和证书;策略执行系统PES定义标准的属性集,并为注册车辆生成固定属性集。
S2、车辆定义其资源的访问策略,生成访问策略表,并将该访问策略表转化成对应多策略访问树结构,为访问树非叶子节点赋予秘密值,将秘密值与对应的访问策略绑定;车辆将多策略访问树递交给策略执行系统存储。
S3、车辆在接入车联网的过程中,先与区域RSU进行双向身份认证,获得会话密钥和临时假名,并向该区域RSU申报其可开放资源。
S4、车辆利用假名向RSU发送资源请求;RSU向策略执行系统转发该车辆的属性集和开放资源对象集;策略执行系统根据开放资源对象的假名获得其多策略访问树,执行MTRM匹配算法:将申请车辆的属性集和多策略访问树进行属性匹配,获得授权节点和对应的秘密值,根据秘密值,获取其对应的访问策略,从而获取其对应的开放资源。
S5、策略执行系统PES将可访问资源集发送给RSU;RSU根据车辆假名,分别告知主体客体车辆对应资源的访问控制状态。
如图5,所述S1步骤包括:
S11、系统参数初始化,TA随机选取素数q和s,
Figure BDA0004063474150000111
计算β=αs(modq),并将s作为系统主密钥SMK,β作为系统公钥Ppub;TA选择三个单向抗碰撞的哈希函数:
Figure BDA0004063474150000112
TA公布系统参数Param={q,α,β,H0,H1},保留系统主密钥SMK
S12、属性标准化定义,基于属性的访问控制以属性为基本单位对实体的权限进行控制,其中属性包括访问主体、访问的资源、访问操作、环境,环境属性包含车辆的网络状况、道路环境、历史信息等;车辆的特性由一系列特定属性来描述,具体可划分为固定属性和可变属性;固定属性即为在车辆生命周期中不发生变化或长期保持不变的属性,例如车辆生产商、年份和系统安全等级等;可变属性即周期性变化的属性,如车辆当前位置和行驶方向等,如下表1所示:
表1
Figure BDA0004063474150000113
Figure BDA0004063474150000121
策略执行系统在初始化阶段,定义车联网系统中车辆实体的标准属性集A={a1,a2,...,an}。
S13、实体注册,在本阶段,主要实现实体RSU和车辆Vi的线下初始化注册,RSU和车辆Vi分别向TA提交其基本信息(公私钥、身份信息),TA为RSU和车辆提供的公钥颁发证书,PES为车辆生成固定属性子集:
S131、在部署RSU前,车管所统一购进RSU设备并为其初始化,RSU选择随机数
Figure BDA0004063474150000122
作为其的私钥SR,计算RSU的公钥/>
Figure BDA0004063474150000123
其中τ是一个本原元;
S132、TA为RSU颁发证书CertR,证书包含:RSU的公钥、证书有效期、TA的私钥签名、RSU的位置信息等,RSU将证书CertR、公钥存储在本地;
S133、车辆Vi注册由可信认证中心TA完成,车辆Vi向TA提交基本信息(车牌号、车主身份信息、车辆登记信息、车辆违法信息等),TA核实其真实性后,将IDi设置为车辆Vi的唯一身份标识;
S134、车辆Vi选择随机数
Figure BDA0004063474150000124
计算车辆Vi的公钥/>
Figure BDA0004063474150000125
并把xi设置为车辆Vi的私钥/>
Figure BDA0004063474150000126
存储于OBU的不可篡改设备中,其中/>
Figure BDA0004063474150000127
是一个本原元;
S135、TA为车辆Vi颁发证书
Figure BDA0004063474150000128
证书包括:车辆Vi的公钥/>
Figure BDA0004063474150000129
身份标识IDi、证书的有效期、TA的私钥签名等,车辆Vi将证书存储在OBU的不可篡改设备中;
S136、TA选择随机数n为车辆Vi计算伪身份:
Figure BDA00040634741500001210
并将车辆Vi的伪身份ID′i、身份标识IDi进行关联;
S137、策略执行系统PES根据车辆Vi提交的基本信息,映射到标准属性集A={a1,a2,...,an},产生本车辆Vi的属性子集
Figure BDA0004063474150000132
其中,/>
Figure BDA0004063474150000133
为车辆Vi在访问控制系统中授权的固定属性集。
如图6,所述S2步骤包括:
S21、生成访问策略表,车辆Vi可以对自己的不同的开放资源定义不同的访问策略,实现细粒度访问,具体为,通过定义多个访问策略,将满足不同的属性集映射到不同的资源Rk,形成三元组访问策略<Pi,Ai,Ri>:如下表2
表2
Figure BDA0004063474150000131
S22、多策略树生成的目的是将在S21步骤中车辆定义的访问策略表转化成对应多策略访问树结构;算法将传统的单策略生成树改进为多策略生成树,通过生成树不同节点的秘密值映射到不同策略,并将之和授权令牌绑定,从而实现高效灵活的访问控制,访问策略表转化成对应访问树结构的方法为:假设车辆属性为(A,B,C,D,E),非叶子节点为门节点,存储秘密值,将车辆定义的策略表转化成访问树结构的过程为,若根据车辆定义的策略表,车辆开放相关资源需要满足以下5个属性集之一,表达为:
属性集1:{属性A,属性B}
属性集2:{属性C}
属性集3:{属性D}
属性集4:{属性E}
属性集5:{属性B}
而生成的多策略树结构对应的逻辑表达式为:
(属性A&&属性B)||(属性C||属性D)||属性E形成的多策略树结构如图7所示;
多策略生成树采用广度遍历中的中序遍历方式,叶子节点的值为属性值,而非叶子节点中包含门限值、结点索引值indexk,(k∈{1,2,3,...})、秘密值secretk和令牌H1(indexk,secretk),只有满足门限值的限制才可以对该非叶子节点解密,从而获得该非叶子节点的秘密值,然后获得对应资源的授权令牌;进一步生成多策略访问树:
S221、定义访问树节点,包括属性值attr、门限值gate、索引值index、秘密值secret、非叶子节点的孩子节点列表children[]、非叶子节点的拉格朗日多项式f(x),具体内容如下表3所示:
表3
Figure BDA0004063474150000141
S222、初始化数据,为建立访问树,需要定义树的节点,节点分为叶子和非叶子两类,Node数据结构将两类节点均定义在内;利用Node数据结构初始化数组N,将访问树的n个节点的属性值、策略、门限值、孩子节点的索引编号分别存入N.atts、N.Policy、N.gates、N.children,具体内容如下表4所示:
表4
Figure BDA0004063474150000142
Figure BDA0004063474150000151
S223、建立生成树,利用数组N中的数据为生成树中每个节点赋值,若节点为叶子节点,则利用初始化数组N中的属性集atts为叶子节点赋属性值;若是非叶子节点,则根据初始化数组N中的门限值集合gates和孩子节点集合children为节点的门限值(kx,num)和孩子节点赋值,具体内容如下表5所示:
表5
Figure BDA0004063474150000152
S224、执行令牌策略绑定算法,主要实现访问树非叶子节点的秘密值和访问策略表的权限映射,从而将访问树定义成一棵多策略访问树,具体执行过程如下表6所示:
表6
Figure BDA0004063474150000153
/>
Figure BDA0004063474150000161
S2241、车辆选择随机数作为多授权访问树根节点n的秘密值,计算该秘密值和根节点的索引值的哈希值,将结果作为根节点的授权令牌;同时,在授权令牌和访问策略表中该节点对应的策略之间建立映射关系。
S2242、以根节点的门限值减1为多项式f(x)的次数,随机数数组coef[]为多项式f(x)的系数,根节点的秘密值(secret)为多项式f(x)的常数项,x为变量,生成多项式f(x);并将该多项式作为根节点的节点多项式。
S2243、车辆将根节点孩子节点的索引值index作为自变量,代入根节点的多项式f(x)计算其孩子节点的秘密值。
S2244、车辆对孩子节点的秘密值和索引值进行哈希运算,并将哈希值作为其孩子节点的授权令牌。
S2245、车辆将访问策略表中节点n对应的访问策略Policy与节点n的授权令牌token进行映射,并将该映射存储在T-A-map[][]表中。
S2246、执行递归循环,在递归循环中,将该节点的孩子节点作为新的根节点,但是不再需要初始化根节点的秘密值和令牌;直至该根节点为访问树的叶子节点。
S2247、将令牌策略映射表T-P-map[][]作为返回结果,用于其他车辆访问时的授权凭证。
S23、多策略访问树存储,车辆Vi向可信认证中心的策略执行系统递交多授权访问树,包括访问树Treei、假名Fi和令牌策略映射表T-P-map[][],其中,访问树Treei采用孩子表示法存储,即将每个节点的孩子节点都用单链表连接形成线性结构,策略执行系统PES将该多策略访问树根节点的地址和对应车辆伪身份IDi'建立映射关系。
如图8,所述S3步骤包括:
S31、双向认证,RSU周期性广播证书和签名,车辆Vi驶入RSU的通信区域时,获得证书CertR和RSU公钥,并利用该公钥验证RSU签名的有效性,从而确定RSU身份合法性,同样,车辆Vi向RSU发送其证书、时间戳和签名等,时间戳用于防止重放攻击;RSU获得车辆Vi的证书后,利用Vi公钥验证车辆Vi签名的有效性,从而验证车辆Vi身份合法性;
S32、会话密钥生成,双方验证身份合法性后,执行会话密钥生成操作,过程为:RSU和车辆Vi分别选择一个随机数a,b,RSU选择大素数p以及整数g,并将其公开,RSU计算K1=gamodp并发送
Figure BDA0004063474150000171
给车辆Vi,车辆Vi利用其私钥/>
Figure BDA0004063474150000172
对/>
Figure BDA0004063474150000173
解密,并计算会话密钥key=(K1)bmodp,然后,车辆Vi计算K2=gbmodp并发送/>
Figure BDA0004063474150000174
给RSU,RSU对/>
Figure BDA0004063474150000175
解密,并计算会话密钥key=(K2)a modp;会话密钥计算完成后,RSU为车辆Vi计算临时假名Fi=H3(IDi'||Nonce),其中,Nonce为随机数,并发送/>
Figure BDA0004063474150000176
给车辆Vi,在本RSU区域中,车辆利用临时假名进行通信。
S33、申报可开放资源,客体车辆Vj利用会话密钥生成密文消息
Figure BDA0004063474150000177
发送给RSU,消息包含:假名Fj、资源集Rk、车辆Vj的位置/>
Figure BDA0004063474150000178
和时间戳TS,RSU利用会话密钥解密该消息后,首先根据时间戳TS验证时效性,若超时,重新验证;然后比较值/>
Figure BDA0004063474150000179
是否大于ΔL,若是,说明车辆Vi已经驶离当前RSU的管辖区域,拒绝本次申报,否则将该车辆Vj相关字段值存入的车辆可用资源表中,表示该资源对本RSU区域的车辆开放申请;如下表7所示:
表7
Figure BDA0004063474150000181
如图9,所述S4步骤包括:
S41、Vi申请资源,主体车辆Vi向RSU发送资源请求报文
Figure BDA0004063474150000182
其中,集合/>
Figure BDA0004063474150000183
表示车辆Vi所需资源请求集,TS表示时间戳,用于防止重放攻击:
Figure BDA0004063474150000184
/>
定位客体车辆,RSU接收申请报文,解密验证时效性后,定位满足资源需求的客体车辆Vj,过程为:RSU为主体车辆Vi生成请求资源属性集
Figure BDA0004063474150000185
根据车辆Vi的资源请求集检索车辆可用资源表,并返回符合条件的客体车辆Vj假名,若存在多个匹配,返回符合条件的客体车辆假名集{F1,...,Fk}。
S42、RSU向PES转发主体车辆Vi的资源访问请求
Figure BDA0004063474150000186
请求报文包含如下字段:主体车辆Vi的属性集/>
Figure BDA0004063474150000187
满足条件的客体车辆的假名集{F1,...,Fk}和时间戳TS,利用系统公钥Ppub加密本请求报文:
Figure BDA0004063474150000188
策略执行系统PES利用主密钥SMK解密该请求报文,并以请求报文字段中车辆假名集{F1,...,Fk}为多策略访问树的索引条件,确定多个假名Fj对应的多策略访问树,并针对每一棵多策略访问树按以下算法,逐一进行授权匹配检查;PES利用RSU发来的资源请求信息确定多棵访问树treej后,执行多策略树资源匹配(MTRM)算法为主体车辆资源授权检查,生成最高权限资源集;具体过程如下表8所示:
表8
Figure BDA0004063474150000191
S421、PES从该树的最后一个节点依次向前遍历,直到根节点结束。
S422、PES根据每一个节点判断是否为叶子节点,如果是叶子节点,判断主体车辆的属性值是否满足该节点的属性值;如果是非叶子节点,对该非叶子节点的每一个子节点进行判断是否为有效节点,若是有效节点,则插入该节点可用孩子数组。
S423、PES判断该节点n可用孩子数组中节点的个数是否达到门限值,确定是否可以恢复节点n的秘密值。
S424、PES遍历可恢复的非叶子节点n可用孩子数组,计算有效子节点的拉格朗日插值因子,并利用有效子节点的拉格朗日插值因子和秘密值恢复该非叶子节点n的秘密值。
S425、PES将该非叶子节点n的秘密值和该节点索引值进行哈希运算,并将计算结果作为该节点n的令牌。
S426、PES利用该节点的令牌与该多策略访问树的资源拥有者产生的T_P_map[][]中的令牌属性列中的元素进行匹配,将满足令牌匹配条件的结果插入策略列表。
S427、PES返回策略列表PolicyList[],PolicyList[]中包含了多策略访问控制树中所有满足属性匹配的非叶子节点秘密值对应的访问控制策略,实现了一个访问控制树支持多策略的细粒度、高效访问控制。
PES根据MTRM算法获得的PolicyList[]检索S2中的三元组访问策略表,若PolicyList[]获得的策略分别为{P1,P2,...,Pk},访问策略表中对应的资源集应为{R1,R2,...,Rk},则可生成最大策略资源集Rmax=R1∪R2∪...∪Rk;PES将Rmax作为主体车辆Vi可访问的资源集。
如图10,所述S5步骤包括:
S51、PES以RSU公钥加密授权通知报文后发送给RSU:
Figure BDA0004063474150000201
包括以下字段:主体车辆假名Fi、客体车辆假名Fj、Vi的可访问资源集Rmax和时间戳TS。
S52、RSU生成授权通知报文1给主体车辆Vi,该报文包含车辆Vi资源请求的状态和时间戳TS,并利用会话密钥keyi加密:
Figure BDA0004063474150000202
车辆Vi若接收到该报文,则表明资源请求授权成功。
S53、RSU生成授权通知报文2给客体车辆Vj
Figure BDA0004063474150000203
该报文包含Vj的可访问资源集Rmax和时间戳TS,Vj开放资源等待主体车辆Vi的访问。
为了验证本实施例的可行性,对本发明的正确性与方法可行性进行分析。
1.安全性证明
定理已知a1,a2,...,an+1是数域F中互不相同的数,b1,b2,...,bn+1是数域F中任意的不全为0的数,若在数域F存在唯一的次数不超过n的多项式f(x),使得
Figure BDA0004063474150000211
并且多项式f(x)可以表示为
Figure BDA0004063474150000212
公式(2)称为拉格朗日插值公式,则上述多策略访问树访问控制方案中的秘密值的生成和恢复是安全的。
证明设满足(1)式的次数不超过n的多项式f(x)=c0+c1x+c2x2+...+cnxn
1)多项式存在性和唯一性证明
由(1)式可得:
Figure BDA0004063474150000213
将资源请求者与资源拥有者的多策略访问树属性Ai匹配的叶子节点的秘密值,作为式(3)的常数项{b1,b2,...,bn+1},当前叶子节点在其父节点(非叶子节点)的索引值为式(3)中的系数ai(i=1,2,...n+1),资源请求者的有效属性值个数为式(3)线性方程组中的最高次数n。又式(3)是一个以c0,c1,...,cn为未知数的n+1个线性方程的线性方程组,则其系数行列式(记为D)是n+1阶Vandermonde行列式,且
Figure BDA0004063474150000214
又因为i≠j时,叶子节点的索引值ai,aj不相等(ai≠aj),所以D≠0,即线性方程组式(3)有唯一解c0,c1,...,cn。因此,在数域F中只存在唯一的次数不超过n的多项式f(x)=c0+c1x+c2x2+…+cnxn,使得f(ai)=bi(i=1,2,…,n+1)成立。从而得出,每个非叶子节点的多项式函数f(x)可以由其对应的叶子节点的属性集Ai'唯一确定。
但是,若资源请求者的有效属性个数小于对应非叶子节点的门限值(n<kx),则在数域F上存在的唯一的多项式f(x)=c0+c1x+c2x2+…+cnxn的最高次将小于(kx-1)。
2)多项式正确性证明
由Cramer法则可得
Figure BDA0004063474150000221
其中Dj+1是将D中第j+1列换成式(3)中的常数列b1,b2,…,bn+1所得到的行列式
Figure BDA0004063474150000222
Figure BDA0004063474150000223
代入多项式f(x)可得式(4)
Figure BDA0004063474150000224
其中,Aij是D中aij的代数余子式。交换式(4)中的双重求和符号,得到
Figure BDA0004063474150000225
Figure BDA0004063474150000226
这也是一个Vandermode行列式,于是有式(6)
Figure BDA0004063474150000227
将式(6)代入式(5)可得
Figure BDA0004063474150000231
进而得到拉格朗日插值公式。
由于在资源拥有者的多策略访问树中为每个非叶子节点定义的多项式的次数由该节点的门限值kx确定,又每个非叶子节点的孩子节点的秘密值secret与索引值index满足secret=f(index)。因此,通过将kx个资源请求者的属性值代入至资源拥有者的多策略访问树的叶子节点中,确定其对应的秘密值,并结合该叶子节点在当前非叶子节点下的索引值,就可以确定一个唯一已知的非叶子节点的多项式函数f(x)。
反之,若n<kx,则无法生成当前非叶子节点预先定义的(kx-1)阶多项式f(x)。此时由n个叶子节点构造的多项式f(x)*≠f(x)。
3)秘密恢复安全性证明
由于非叶子节点的多项式函数自变量为0时,f(x)的计算结果f(0)即为当前非叶子节点的秘密值。因此,只有资源请求者的属性值包含在当前非叶子节点的属性集中,且满足门限值kx时,才可以恢复当前非叶子节点的秘密值。
反之,若f(x)*≠f(x),则f(0)*≠f(0)。因此,若资源请求者的属性未满足资源拥有者多策略访问树非叶子节点的门限值(n<kx),则无法通过拉格朗日插值多项式获取该节点的秘密值,也无法获得该节点所对应的访问权限。
综上所述,若资源请求者的属性集不满足多策略访问树预定义的属性集和门限值,则无法获取资源拥有者的资源。因此,本方案在多策略访问树上的资源匹配是安全的。
2.身份隐私性
车辆在消息传递过程中使用临时假名与车联网系统中的其他实体通信,可以保证车辆身份的匿名性。在本方案中,只有TA可以根据车辆的伪身份还原其真实身份。已知车辆Vi的伪身份为
Figure BDA0004063474150000232
真实身份IDi在车辆线下实体注册时由TA为车辆生成,因此,基于安全散列函数抗碰撞的特性,攻击者是无法根据伪身份还原出车辆的真实身份的。所以,本方案满足车辆身份的匿名性要求。/>
3.消息不可否认性
车辆在申报开放资源和资源请求的过程中,TA应可以追查该车辆的真实身份。TA可以根据车辆的伪身份,通过异或操作揭露该车辆的真实身份。具体过程如下:
已知临时假名Fi是由RSU根据车辆Vi的伪身份ID′i生成,当车辆Vi违法行驶时,RSU将告知TA车辆Vi的伪身份,TA通过计算
Figure BDA0004063474150000243
对车辆Vi的真实身份进行追查,并将追查结果上报给相关司法部门。所以,本方案满足消息的不可否认性要求。
4.性能分析
将本方案与仲红等提出的《高效且可验证的多授权机构属性基加密方案》(方案1)、吴静雯等提出的《车载自组网中可追踪可撤销的多授权中心属性基加密方案》(方案2)、明洋等提出的《支持属性撤销的可验证外包的多授权属性加密方案》(方案3)、王亚琼等提出的《卫星网络中支持策略隐藏的多授权访问控制方案》(方案4)进行性能比较。
参照下表9为本研究实验为仿真实验,仿真开发套件使用JPBC密码库,仿真硬件平台CPU为AMD Ryzen 5 5600H,内存为16GB。方案[1-4]通过在群G上进行双线性运算对实体的属性值加解密,设l为实体的属性个数,根据方案2的实验结果,双线性密码学运算的执行时间:
表9
Figure BDA0004063474150000241
四个方案在策略匹配计算开销的对比结果如下表10:
表10
Figure BDA0004063474150000242
本实验性能仿真测试过程中,因单次访问策略匹配计算所需时间值较小,造成不同样本数据相对误差较大,因此实验通过求100次的平均值来减小相对误差。仿真实验的多策略访问树只包含1个策略时,令属性个数分别为5,10,15,20,进行性能测试。然后,固定属性个数为20个时,令多策略访问树的策略数目分别为4,8,12,16,进行性能测试。以上均采用运行多次计算平均值的方法,用于消除由于环境差异造成的数据误差。
将资源请求者的属性个数作为横坐标,时间开销作为纵坐标。方案的策略数均设为1个。根据方案2中的实验数据和本次仿真中的仿真结果,确定各个方案的执行策略匹配计算开销对比如图11所示。
由于本方案需要为多策略访问树的每个节点计算秘密值以及为与多策略访问树匹配的有效属性值完成策略匹配,且在恢复秘密值并完成策略匹配的过程中,有效属性值所对应的叶子节点个数的增加,将导致非叶子节点多项式的拉格朗日因子增加。因此,随着属性个数的增加,策略匹配的计算开销也会递增。但当访问控制的策略唯一,随着属性数逐渐递增,本方案执行100次策略匹配的计算开销明显小于其他方案。
将策略个数作为横坐标,时间开销作为纵坐标,各方案的属性数设为20个。根据方案2中的实验数据和本次仿真中的仿真结果,确定各个方案的执行策略匹配计算开销对比,如图12所示。
由于本方案在多策略访问树上进行策略匹配时,将其所有非叶子节点都作为策略,若与多策略访问树匹配的有效属性值的个数相同,则须计算的非叶子节点多项式的拉格朗日插值因子个数也大致相同。因此,相同属性个数时,访问控制策略的增加对于策略匹配的计算开销是可以忽略的。本方案的计算开销几乎接近于直线。而当属性数相同,而访问控制的策略递增时,本方案执行10次策略匹配的计算开销明显小于其他方案。
综上,由于本方案在构造多策略访问树以及策略匹配时,并未使用较为复杂的双线性运算。因此,同属性值数目或同策略数目条件下,本方案的策略匹配计算开销明显小于其它方案。同时,多策略访问树,实现细颗粒度的访问控制。故适合在资源访问者较多、通信时延较小的车联网环境下使用。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种基于多策略访问树的车联网细粒度访问控制方法,其特征在于,包括如下步骤:
S1、可信认证中心TA初始化系统参数,其PKI机制采用Elgamal算法为车辆、RSU生成公私钥和证书;策略执行系统PES定义标准的属性集,并为注册车辆生成固定属性集;
S2、车辆定义其资源的访问策略,生成访问策略表,并将该访问策略表转化成对应多策略访问树结构,为访问树非叶子节点赋予秘密值,将秘密值与对应的访问策略绑定;车辆将多策略访问树递交给策略执行系统存储;
S3、车辆在接入车联网的过程中,先与区域RSU进行双向身份认证,获得会话密钥和临时假名,并向该区域RSU申报其可开放资源;
S4、车辆利用假名向RSU发送资源请求;RSU向策略执行系统转发该车辆的属性集和开放资源对象集;策略执行系统根据开放资源对象的假名获得其多策略访问树,执行MTRM匹配算法:将申请车辆的属性集和多策略访问树进行属性匹配,获得授权节点和对应的秘密值,根据秘密值,获取其对应的访问策略,从而获取其对应的开放资源;
S5、策略执行系统PES将可访问资源集发送给RSU;RSU根据车辆假名,分别告知主体客体车辆对应资源的访问控制状态。
2.根据权利要求1所述的基于多策略访问树的车联网细粒度访问控制方法,其特征在于,所述S1步骤包括:
S11、系统参数初始化,TA随机选取素数q和s,
Figure FDA0004063474140000011
计算β=αs(modq),并将s作为系统主密钥SMK,β作为系统公钥Ppub;TA选择三个单向抗碰撞的哈希函数:H0,H1,H2:/>
Figure FDA0004063474140000012
TA公布系统参数Param={q,α,β,H0,H1},保留系统主密钥SMK
S12、属性标准化定义,基于属性的访问控制以属性为基本单位对实体的权限进行控制,其中属性包括访问主体、访问的资源、访问操作、环境,环境属性包含车辆的网络状况、道路环境、历史信息;车辆的特性由一系列特定属性来描述,具体划分为固定属性和可变属性;固定属性即为在车辆生命周期中不发生变化或长期保持不变的属性;可变属性即周期性变化的属性;策略执行系统在初始化阶段,定义车联网系统中车辆实体的标准属性集A={a1,a2,...,an};
S13、实体注册,在本阶段,实现实体RSU和车辆Vi的线下初始化注册,RSU和车辆Vi分别向TA提交其基本信息,公私钥、身份信息,TA为RSU和车辆提供的公钥颁发证书,PES为车辆生成固定属性子集;
S131、在部署RSU前,车管所统一购进RSU设备并为其初始化,RSU选择随机数
Figure FDA0004063474140000021
作为其的私钥SR,计算RSU的公钥/>
Figure FDA0004063474140000022
其中τ是一个本原元;
S132、TA为RSU颁发证书CertR,证书包含:RSU的公钥、证书有效期、TA的私钥签名、RSU的位置信息,RSU将证书CertR、公钥存储在本地;
S133、车辆Vi注册由可信认证中心TA完成,车辆Vi向TA提交基本信息车牌号、车主身份信息、车辆登记信息、车辆违法信息,TA核实其真实性后,将IDi设置为车辆Vi的唯一身份标识;
S134、车辆Vi选择随机数
Figure FDA0004063474140000023
计算车辆Vi的公钥/>
Figure FDA0004063474140000024
并把xi设置为车辆Vi的私钥/>
Figure FDA0004063474140000025
存储于OBU的不可篡改设备中,其中/>
Figure FDA0004063474140000026
是一个本原元;
S135、TA为车辆Vi颁发证书
Figure FDA0004063474140000027
证书包括:车辆Vi的公钥/>
Figure FDA0004063474140000028
身份标识IDi、证书的有效期、TA的私钥签名,车辆Vi将证书存储在OBU的不可篡改设备中;
S136、TA选择随机数n为车辆Vi计算伪身份:
Figure FDA0004063474140000029
并将车辆Vi的伪身份IDi'、身份标识IDi进行关联;
S137、策略执行系统PES根据车辆Vi提交的基本信息,映射到标准属性集A={a1,a2,...,an},产生本车辆Vi的属性子集
Figure FDA00040634741400000210
其中,/>
Figure FDA00040634741400000211
为车辆Vi在访问控制系统中授权的固定属性集。
3.根据权利要求2所述的基于多策略访问树的车联网细粒度访问控制方法,其特征在于,所述S2步骤包括:
S21、生成访问策略表,车辆Vi对自己的不同的开放资源定义不同的访问策略,实现细粒度访问,具体为通过定义多个访问策略,将满足不同的属性集映射到不同的资源Rk,形成三元组访问策略<Pi,Ai,Ri>;
S22、多策略树生成的目的是将在S21步骤中车辆定义的访问策略表转化成对应多策略访问树结构;算法将传统的单策略生成树改进为多策略生成树,通过生成树不同节点的秘密值映射到不同策略,并将之和授权令牌绑定,访问策略表转化成对应访问树结构的方法为:假设车辆属性为(A,B,C,D,E),非叶子节点为门节点,存储秘密值,将车辆定义的策略表转化成访问树结构的过程为,若根据车辆定义的策略表,车辆开放相关资源需要满足以下5个属性集之一,表达为:
属性集1:{属性A,属性B}
属性集2:{属性C}
属性集3:{属性D}
属性集4:{属性E}
属性集5:{属性B}
而生成的多策略树结构对应的逻辑表达式为:
(属性A&&属性B)||(属性C||属性D)||属性E
多策略生成树采用广度遍历中的中序遍历方式,叶子节点的值为属性值,而非叶子节点中包含门限值、结点索引值indexk,k∈{1,2,3,...}、秘密值secretk和令牌H1(indexk,secretk),只有满足门限值的限制才对该非叶子节点解密,从而获得该非叶子节点的秘密值,然后获得对应资源的授权令牌;生成多策略访问树;
S23、多策略访问树存储,车辆Vi向可信认证中心的策略执行系统递交多授权访问树,包括访问树Treei、假名Fi和令牌策略映射表T-P-map[][],其中,访问树Treei采用孩子表示法存储,即将每个节点的孩子节点都用单链表连接形成线性结构,策略执行系统PES将该多策略访问树根节点的地址和对应车辆伪身份IDi'建立映射关系。
4.根据权利要求3所述的基于多策略访问树的车联网细粒度访问控制方法,其特征在于,所述S22步骤中,多策略访问树生成的过程包括以下步骤:
S221、定义访问树节点,包括属性值attr、门限值gate、索引值index、秘密值secret、非叶子节点的孩子节点列表children[]、非叶子节点的拉格朗日多项式f(x);
S222、初始化数据,为建立访问树,需要定义树的节点,节点分为叶子和非叶子两类,Node数据结构将两类节点均定义在内;利用Node数据结构初始化数组N,将访问树的n个节点的属性值、策略、门限值、孩子节点的索引编号分别存入N.atts、N.Policy、N.gates、N.children;
S223、建立生成树,利用数组N中的数据为生成树中每个节点赋值,若节点为叶子节点,则利用初始化数组N中的属性集atts为叶子节点赋属性值;若是非叶子节点,则根据初始化数组N中的门限值集合gates和孩子节点集合children为节点的门限值(kx,num)和孩子节点赋值;
S224、执行令牌策略绑定算法,实现访问树非叶子节点的秘密值和访问策略表的权限映射,从而将访问树定义成一棵多策略访问树;具体执行过程如下步骤:
S2241、车辆选择随机数作为多授权访问树根节点n的秘密值,计算该秘密值和根节点的索引值的哈希值,将结果作为根节点的授权令牌;在授权令牌和访问策略表中该节点对应的策略之间建立映射关系;
S2242、以根节点的门限值减1为多项式f(x)的次数,随机数数组coef[]为多项式f(x)的系数,根节点的秘密值(secret)为多项式f(x)的常数项,x为变量,生成多项式f(x);并将该多项式作为根节点的节点多项式;
S2243、车辆将根节点孩子节点的索引值index作为自变量,代入根节点的多项式f(x)计算其孩子节点的秘密值;
S2244、车辆对孩子节点的秘密值和索引值进行哈希运算,并将哈希值作为其孩子节点的授权令牌;
S2245、车辆将访问策略表中节点n对应的访问策略Policy与节点n的授权令牌token进行映射,并将该映射存储在T-A-map[][]表中;
S2246、执行递归循环,在递归循环中,将该节点的孩子节点作为新的根节点,不再需要初始化根节点的秘密值和令牌;直至该根节点为访问树的叶子节点;
S2247、将令牌策略映射表T-P-map[][]作为返回结果,用于其他车辆访问时的授权凭证。
5.根据权利要求4所述的基于多策略访问树的车联网细粒度访问控制方法,其特征在于,所述S3步骤具体包括以下步骤:
S31、双向认证,RSU周期性广播证书和签名,车辆Vi驶入RSU的通信区域时,获得证书CertR和RSU公钥,并利用该公钥验证RSU签名的有效性,从而确定RSU身份合法性,车辆Vi向RSU发送其证书、时间戳和签名,时间戳用于防止重放攻击;RSU获得车辆Vi的证书后,利用Vi公钥验证车辆Vi签名的有效性,从而验证车辆Vi身份合法性;
S32、会话密钥生成,双方验证身份合法性后,执行会话密钥生成操作,具体过程为:RSU和车辆Vi分别选择一个随机数a,b,RSU选择大素数p以及整数g,并将其公开,RSU计算K1=gamodp并发送
Figure FDA0004063474140000051
给车辆Vi,车辆Vi利用其私钥/>
Figure FDA0004063474140000052
对/>
Figure FDA0004063474140000053
解密,并计算会话密钥key=(K1)bmodp,然后,车辆Vi计算K2=gbmodp并发送/>
Figure FDA0004063474140000054
给RSU,RSU对/>
Figure FDA0004063474140000055
解密,并计算会话密钥key=(K2)amodp;会话密钥计算完成后,RSU为车辆Vi计算临时假名Fi=H3(IDi'||Nonce),其中,Nonce为随机数,并发送/>
Figure FDA0004063474140000056
给车辆Vi,在本RSU区域中,车辆利用临时假名进行通信;
S33、申报可开放资源,客体车辆Vj利用会话密钥生成密文消息
Figure FDA0004063474140000057
发送给RSU,消息包含:假名Fj、资源集Rk、车辆Vj的位置/>
Figure FDA0004063474140000058
和时间戳TS,RSU利用会话密钥解密该消息后,首先根据时间戳TS验证时效性,若超时,重新验证;然后比较值/>
Figure FDA0004063474140000059
是否大于ΔL,若是,说明车辆Vi已经驶离当前RSU的管辖区域,拒绝本次申报,否则将该车辆Vj相关字段值存入车辆的可用资源表中,表示该资源对本RSU区域的车辆开放申请。
6.根据权利要求5所述的基于多策略访问树的车联网细粒度访问控制方法,其特征在于,所述S4步骤具体内容包括以下步骤:
S41、Vi申请资源,主体车辆Vi向RSU发送资源请求报文
Figure FDA00040634741400000510
其中,集合/>
Figure FDA00040634741400000511
表示车辆Vi所需资源请求集,TS表示时间戳,用于防止重放攻击:
Vi→RSU:
Figure FDA00040634741400000512
定位客体车辆,RSU接收申请报文,解密验证时效性后,定位满足资源需求的客体车辆Vj,具体过程为:RSU为主体车辆Vi生成请求资源属性集
Figure FDA00040634741400000513
根据车辆Vi的资源请求集检索车辆可用资源表,并返回符合条件的客体车辆Vj假名,若存在多个匹配,返回符合条件的客体车辆假名集{F1,...,Fk};
S42、RSU向PES转发主体车辆Vi的资源访问请求
Figure FDA00040634741400000514
请求报文包含如下字段:主体车辆Vi的属性集/>
Figure FDA00040634741400000515
满足条件的客体车辆的假名集{F1,...,Fk}和时间戳TS,利用系统公钥Ppub加密本请求报文:
RSU→PES:
Figure FDA00040634741400000516
策略执行系统PES利用主密钥SMK解密该请求报文,并以请求报文字段中车辆假名集{F1,...,Fk}为多策略访问树的索引条件,确定多个假名Fj对应的多策略访问树,并针对每一棵多策略访问树按以下步骤,逐一进行授权匹配检查;PES利用RSU发来的资源请求信息确定多棵访问树treej后,执行多策略树资源匹配MTRM算法为主体车辆资源授权检查,生成最高权限资源集;
PES根据MTRM算法获得的PolicyList[]检索步骤S2中的三元组访问策略表,若PolicyList[]获得的策略分别为{P1,P2,...,Pk},访问策略表中对应的资源集应为{R1,R2,...,Rk},则生成最大策略资源集Rmax=R1∪R2∪...∪Rk;PES将Rmax作为主体车辆Vi可访问的资源集。
7.根据权利要求6所述的基于多策略访问树的车联网细粒度访问控制方法,其特征在于,所述S42步骤中,多策略树资源匹配算法包括:
S421、PES从该树的最后一个节点依次向前遍历,直到根节点结束;
S422、PES根据每一个节点判断是否为叶子节点,如果是叶子节点,判断主体车辆的属性值是否满足该节点的属性值;如果是非叶子节点,对该非叶子节点的每一个子节点进行判断是否为有效节点,若是有效节点,则插入该节点可用孩子数组;
S423、PES判断该节点n用孩子数组中节点的个数是否达到门限值,确定是否可以恢复节点n的秘密值;
S424、PES遍历可恢复的非叶子节点n用孩子数组,计算有效子节点的拉格朗日插值因子,并利用有效子节点的拉格朗日插值因子和秘密值恢复该非叶子节点n的秘密值;
S425、PES将该非叶子节点n的秘密值和该节点索引值进行哈希运算,并将计算结果作为该节点n的令牌;
S426、PES利用该节点的令牌与该多策略访问树的资源拥有者产生的T_P_map[][]中的令牌属性列中的元素进行匹配,将满足令牌匹配条件的结果插入策略列表;
S427、PES返回策略列表PolicyList[],PolicyList[]中包含了多策略访问控制树中所有满足属性匹配的非叶子节点秘密值对应的访问控制策略。
8.根据权利要求7所述的基于多策略访问树的车联网细粒度访问控制方法,其特征在于,所述S5步骤包括以下步骤:
S51、PES以RSU公钥加密授权通知报文后发送给RSU:
PES→RSU:
Figure FDA0004063474140000061
包括以下字段:主体车辆假名Fi、客体车辆假名Fj、Vi的可访问资源集Rmax和时间戳TS;
S52、RSU生成授权通知报文1给主体车辆Vi,该报文包含车辆Vi资源请求的状态和时间戳TS,并利用会话密钥keyi加密:
RSU→Vi:
Figure FDA0004063474140000071
车辆Vi若接收到该报文,则表明资源请求授权成功;
S53、RSU生成授权通知报文2给客体车辆Vj
RSU→Vj:
Figure FDA0004063474140000072
该报文包含Vj的访问资源集Rmax和时间戳TS,Vj开放资源等待主体车辆Vi的访问。
CN202310067935.0A 2023-02-01 2023-02-01 一种基于多策略访问树的车联网细粒度访问控制方法 Pending CN116390092A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310067935.0A CN116390092A (zh) 2023-02-01 2023-02-01 一种基于多策略访问树的车联网细粒度访问控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310067935.0A CN116390092A (zh) 2023-02-01 2023-02-01 一种基于多策略访问树的车联网细粒度访问控制方法

Publications (1)

Publication Number Publication Date
CN116390092A true CN116390092A (zh) 2023-07-04

Family

ID=86973842

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310067935.0A Pending CN116390092A (zh) 2023-02-01 2023-02-01 一种基于多策略访问树的车联网细粒度访问控制方法

Country Status (1)

Country Link
CN (1) CN116390092A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116579007A (zh) * 2023-07-13 2023-08-11 中国人民解放军国防科技大学 细粒度数据访问权限控制方法、装置、设备及存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116579007A (zh) * 2023-07-13 2023-08-11 中国人民解放军国防科技大学 细粒度数据访问权限控制方法、装置、设备及存储介质
CN116579007B (zh) * 2023-07-13 2023-09-19 中国人民解放军国防科技大学 细粒度数据访问权限控制方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
Baza et al. Privacy-preserving blockchain-based energy trading schemes for electric vehicles
Zhang et al. PA-CRT: Chinese remainder theorem based conditional privacy-preserving authentication scheme in vehicular ad-hoc networks
Ma et al. Attribute-based secure announcement sharing among vehicles using blockchain
CN103856477B (zh) 一种可信计算系统及相应的认证方法和设备
Chowdhury et al. Secure information sharing among autonomous vehicles in NDN
CN101378315B (zh) 认证报文的方法、系统、设备和服务器
Rasheed et al. Adaptive group-based zero knowledge proof-authentication protocol in vehicular ad hoc networks
CN113114630B (zh) 一种电动汽车动态无线充电隐私保护的认证方法及系统
Kang et al. Highly efficient randomized authentication in VANETs
Yue et al. An efficient and secure anonymous authentication scheme for VANETs based on the framework of group signatures
Terzi et al. Securing emission data of smart vehicles with blockchain and self-sovereign identities
CN106953839A (zh) 车联网中非可信资源传播的阻控系统及方法
Nicanfar et al. Security and privacy of electric vehicles in the smart grid context: problem and solution
Win et al. Privacy enabled digital rights management without trusted third party assumption
Tajmohammadi et al. LSPP: Lightweight and secure payment protocol for dynamic wireless charging of electric vehicles in vehicular cloud
Abdelfatah et al. Secure VANET authentication protocol (SVAP) using Chebyshev chaotic maps for emergency conditions
CN116321154A (zh) 一种车联网环境下基于零知识证明的高效消息认证方法
CN115694838A (zh) 基于可验证凭证与零知识证明的匿名可信访问控制方法
CN116318606A (zh) 车联网云环境下基于同态聚合的高效电子凭证验证方法
CN115442048A (zh) 一种面向vanet的基于区块链的匿名认证方法
CN116390092A (zh) 一种基于多策略访问树的车联网细粒度访问控制方法
CN114599028A (zh) 一种基于同态加密机制的车联网假名管理方法
Sun et al. Anonymous authentication and key agreement scheme combining the group key for vehicular ad hoc networks
CN116760614A (zh) 一种基于区块链和puf技术的车联网零知识证明身份认证方案
Zhang et al. Secure channel establishment scheme for task delivery in vehicular cloud computing

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination