买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】基于区块链的VANET中节点可信加入方法_北京工业大学_202010154293.4 

申请/专利权人:北京工业大学

申请日:2020-03-07

公开(公告)日:2022-11-25

公开(公告)号:CN111405011B

主分类号:H04L67/12

分类号:H04L67/12;H04L9/40;H04L9/32;G06Q40/04;G06Q20/38;G06F21/64;G06F21/60

优先权:

专利状态码:有效-授权

法律状态:2022.11.25#授权;2020.08.04#实质审查的生效;2020.07.10#公开

摘要:基于区块链的VANET中节点可信加入方法属于车载自组织网络VANET安全领域,不仅能改善交通拥堵,还能辅助安全驾驶。如果车辆是恶意节点,会给交通安全埋下隐患,例如恶意节点通过散布虚假或者攻击类的数据信息,使得车辆接收到的相关数据信息的可靠性难以保障。如果在恶意节点加入VANET时将其拒绝,将会很大程度上提高安全性。文章提出了基于区块链的VANET节点可信加入方法,路边单元对申请车辆进行分布式验证:首先,验证车辆是否具有合法的身份;接着,利用可信计算技术验证车载平台的完整性;最后,评估车辆在上一个证书有效期的声誉值,即通过历史表现来评估是否为恶意节点。通过验证的车辆允许加入,否则拒绝。

主权项:1.基于区块链的VANET中节点可信加入方法,其特征在于,共分为三部分:首先是车辆证书的验证,通过证书验证来保证节点的身份可信;接着利用可信计算技术验证平台的完整性;最后,对车辆节点进行声誉评估,即通过历史表现来评估车辆是否为恶意节点;通过可信加入方法的验证,允许车辆加入VANET中;第一部分:基于区块链的证书管理模型,具体包括以下步骤:步骤1:利用区块链来记录车辆证书交易,包括颁发证书、更新证书和撤销证书,将该种类型的区块链称为交易区块链BusBC;步骤2:MPT树是Merkle树的扩展,用来存储key-value对;文章用key存储车辆公钥的hash值,value存储车辆的证书;一棵Merkle树由HTx1、HTx2、HTx3、HTx4、HTx5、HTx6、HTx7、HTx8交易构成,HTx1-4是由HTx1、HTx2、HTx3、HTx4经过两两SHA256哈希计算后得到的哈希值,HTx6是Tx6的哈希值,HTx78是HTx7、HTx8经过SHA256计算后得到的哈希值;HTx1-8是根哈希值;如果验证交易Tx5是否存在,只需由Tx1-8、Tx1-4、Tx78、Tx6哈希值组成的认证路径tuple:tuple=HashesHashes=HTx1-4,HTx78,HTx6判断HTx5与Hashes经过SHA256运算是否等于根哈希值: 如果相等,证明交易Tx5存在,否则不存在;步骤3:部署智能合约:智能合约是运行在区块链平台上的执行程序;证书机构CA负责设计并实现智能合约,智能合约包括3个函数:注册用户证书register_UserCA、更新用户证书update_UserCA、撤销用户证书revoke_UserCA;步骤4:首先介绍相关参数{PU、PR、AEPR、EEPU、EDPR、SigPR}概念;PU和PR是实体的公钥和私钥,每个实体的公私钥都由自身生成,私钥对其他人保密,公钥是公开的;AES是对称加密算法,AEPR表示利用私钥进行加密;ECC是非对称加密算法,EEPU表示利用公钥进行加密,EDPR表示利用私钥进行解密;SigPR表示利用ECDSA作为数字签名算法来确定发送者身份;vi表示车辆、TRA表示执法机构、CA表示证书机构、RSU表示路边单元;PUTRA、PUCA、PURSU分别表示vi、TRA、CA和RSU的公钥;PRTRA、PRCA、PRRSU分别表示vi、TRA、CA和RSU的私钥;表示用TRA的私钥PRTRA进行对称加密,文章利用对车辆证书的真实身份进行加密;发送方给接收方发送消息,发送方利用接收方的公钥对消息进行加密,接收方利用自身私钥对消息进行解密,保证发送消息的安全;步骤5:注册用户证书Ci:步骤5.1:车辆向TRA发起注册请求:并提供车主姓名、身份证号、手机号、车架号资料给TRA审核;EEPU中的PU指接收方TRA的公钥,EEPU表示用TRA的公钥对发送消息进行加密;当TRA收到消息时,利用其私钥进行解密;PUi是车辆的公钥,TS1是发起注册请求的当前时间,是根据车辆私钥生成的签名;步骤5.2:TRA授权CA颁发车辆证书:TRA利用其私钥对消息进行解密,审核资料,通过后,为车辆vi生成唯一的身份IDi,同时生成随机数rTRA,利用自身私钥将二者链接,得到隐藏车辆真实身份的链接Linki: 表示用TRA的私钥PRTRA进行对称加密,由于TRA的私钥对其他人保密,其他人无法推测车辆的真实身份,保护了车辆的隐私安全;发送给CA,authiss指TRA给CA的授权消息;EEPU中的PU指接收方CA的公钥,EEPU表示用CA的公钥对发送消息进行加密;当CA收到消息时,利用其私钥进行解密;PUi是车辆的公钥,Tvc指证书有效期,TS2是授权的当前时间,Linki是隐藏车辆真实身份的链接,是根据TRA私钥生成的签名;步骤5.3:CA将颁发交易发送到BusBC:CA利用其私钥对消息进行解密,将打包成交易发送到BusBC中;TX是CA打包后的交易,PUi是车辆的公钥,TS3是发送交易的当前时间,authiss是TRA的授权,是根据CA私钥生成的签名;智能合约中的证书注册register_UserCA函数将被触发,交易记录会被链接到BusBC上;步骤5.4:车辆的证书Ci将作为新节点插入到MPT树中;步骤5.5:车辆收到证书Ci:Ci=PUi,Tvc,TS4,LinkiPUi是车辆的公钥,Tvc是证书有效期,TS4是证书生效的时间,Linki隐藏车辆身份的链接;步骤6:更新用户证书Ci,为防止车辆隐私泄露,车辆证书需要定期更新,车辆在证书即将过期或者已经过期时,发起更新请求:步骤6.1:车辆向TRA发起更新请求:并提供车主姓名、车架号资料,比注册时提供的少;EEPU中的PU指接收方TRA的公钥,EEPU表示用TRA的公钥对发送消息加密;当TRA收到消息时,利用其私钥进行解密;PUi是旧公钥;车辆会重新生成新的公钥PUi'和私钥PRi';Tvc是PUi对应的证书有效期;TS4是PUi对应证书的生效时间;TS5是更新请求的当前时间;是根据新私钥生成的签名;步骤6.2:TRA授权CA更新车辆证书:TRA审核资料,审核通过后,验证证书是否已经过期或者即将过期:TS5-TS4+Tvc>0代表证书已经过期,TS4+Tvc-TS5<ΔT代表证书即将过期,ΔT=3天是系统设置的允许提前更新证书的时间;当证书已经过期或者即将过期时,TRA为车辆生成新用户身份ID′i、同时生成新的随机数r'TRA;利用自身私钥PRTRA将二者链接,得到隐藏车辆真实身份的新链接Link′i: 表示用TRA的私钥PRTRA对链接进行对称加密;给CA发送授权请求: EEPU中的PU指接收方CA的公钥,EEPU表示用CA的公钥对发送消息加密;PUi、PU′i是车辆的旧公钥和新公钥,T'vc指新证书的有效期,TS6是新证书的生效时间,TS7是指发送授权消息的当前时间,Link′i是隐藏真实身份的新链接,是根据TRA私钥生成的签名;步骤6.3:CA将更新交易发送到BusBC:CA利用其私钥对消息进行解密,将发送到区块链网络,PU′i是车辆的新公钥,TS8是发送交易的当前时间,authiss是TRA的授权,是根据CA私钥生成的签名;RSU节点对交易达成共识后,将交易链接到BusBC上;步骤6.4:触发智能合约中的更新函数update_UserCA,新的证书C′i将在MPT中更新;步骤6.5:车辆收到新证书C′i:C′i=PU′i,T′vc,TS6,Link′iPU′i是车辆的新公钥,T'vc是新证书的有效期,TS6是新证书生效的时间,Link′i是隐藏车辆身份的新链接;步骤7:撤销用户证书:若TRA发现车辆的恶意行为,则授权CA撤销用户证书:步骤7.1:TRA给CA发送撤销授权: EEPU中的PU指接收方CA的公钥,EEPU表示用CA的公钥对发送消息加密;PUi是车辆的公钥,TS9是指发送授权消息的当前时间,是根据TRA私钥生成的签名;步骤7.2:CA将撤销交易发送到BusBC:CA利用其私钥对消息进行解密,将发送到区块链网络,PUi是车辆公钥,TS10是发送交易的当前时间,authiss是TRA的授权,是根据CA私钥生成的签名;RSU节点对交易达成共识后,将交易连接到BusBC上;步骤7.3:触发智能合约中的撤销用户函数revoke_UserCA,证书Ci将在MPT中删除,更新MPT的根哈希值;第二部分:基于消息的信任评估,将车辆节点接收到的消息作为研究内容,分析其可信度,通过消息可信度计算车辆的信任值;具体包括以下步骤:步骤8:消息接收者将接收到的消息记为Mn,计算消息的可信度步骤8.1:消息接收者通过可信函数G计算单个车辆vi关于消息Mn的可信度步骤8.1.1:定义发送消息的车辆集合:V={v1,v2,...vi,...,vn};步骤8.1.2:定义车辆节点类型集合:Φ={θ1,θ2,...,θn},Η函数是车辆与车辆类型的多对一映射,满足:Ηvi=Φ步骤8.1.3:结合车辆类型Φ和具体消息Mn定义函数f:f:Φ×Mn→[0,1]步骤8.1.4:定义证书状态函数s:V→[0,1],证书有“有效”、“过期”和“被撤销”三种状态;只有证书有效时,svi=1,当证书过期或者被撤销时,svi=0;步骤8.1.5:定义距离函数μ:V→[0,1],距离事发地点越近的车辆发送的消息比较远位置车辆发送的消息更可信: 是车辆vi发送的消息Mn关于距离的可信权重,是vi与消息Mn的距离,b、γ是两个预定义参数,b控制消息可信权重的下限,γ表示消息可信度的变化率;步骤8.1.6:定义时延率:R:V→[0,1],车辆节点对数据包的处理时间与节点标准处理时间的比值: TD是车辆节点对数据包的处理时间,TDs是标准处理时间;步骤8.1.7:可信函数G由上述定义构成,消息接收者通过可信函数G计算单个车辆vi关于消息Mn的可信度 代入Ηvi=Φ得到: 步骤8.2:利用贝叶斯公式融合所有发送车辆关于消息Mn的可信度得到消息Mn的可信度 PMn是消息发生的先验概率;是消息Mn的否定事件,车辆的个数属于1≤i≤n范围;步骤9:消息接收者为Mn进行评级:当时,认为Mn为真,评级为肯定评价,记为+1,否则为否定评价,记为-1;步骤10:计算车辆vi关于Mn的信任值:消息接收者将对发送者关于消息Mn的评级上传至RSU,RSU统计肯定评价n和否定评价m的个数,利用加权评估计算车辆信任值 步骤11:RSU把车辆信任值打包成交易发送到由RSU构成的区块链网络,利用区块链来记录车辆信任值,将该种类型的区块链称为声誉区块链RepBC;第三部分:节点的可信加入方法:首先是车辆证书的验证;接着利用可信计算技术验证平台的完整性;最后对车辆节点进行声誉评估;具体步骤如下:车辆节点证书验证,具体步骤如下:步骤12:车辆向RSU节点发起消息EEPU中的PU指接收方RSU的公钥,EEPU表示用RSU的公钥对发送消息加密;当RSU收到消息时,利用其私钥进行解密即可;Ci是指车辆获得的由CA颁发的证书,包括车辆的公钥地址PUi、证书有效期Tvc、车辆证书生效时间TS;tuple是车辆提供的认证路径,TSreq是指当前请求的时间,是根据车辆私钥生成的签名;步骤13:RSU验证请求是否有效:验证TScurr-TSrep≤5min来检查请求是否过期,以确保接收消息的新鲜度,TScurr是指当前处理请求时间,TSreq是指当前请求的时间;5分钟是系统设定的时间;步骤14:RSU对tuple的路径进行哈希运算,再对车辆的公钥PUi进行哈希运算,接着判断tuple路径与车辆公钥经过SHA256运算是否等于根哈希值: 如果相等,证明Ci存在,车辆证书处于有效期中并且没有被撤销;车辆平台的完整性验证,具体步骤如下:步骤15:车辆平台按如下方式报告其完整性:步骤15.1:RSU向车辆平台发送完整性度量报告的请求;步骤15.2:车辆平台的可信平台模块TPM收集平台配置寄存器PCR值,使用平台身份密钥AIK对PCR值进行签名;步骤15.3:车辆平台将PCR值、AIK对PCR值的签名发送给RSU;步骤16:RSU验证车辆平台完整性:步骤16.1:RSU得到平台发送的PCR值、AIK对PCR值的签名;步骤16.2:RSU验证PCR值的签名;步骤16.3:RSU对PCR的值与平台完整性基准值进行比较,若相同则表明当前平台处于可信状态,否则拒绝;车辆节点的声誉评估,具体步骤如下:车辆的证书和完整性验证通过后,RSU对车辆节点进行声誉评估;判断车辆是否首次加入VANET,如果是首次加入,则无基于消息的车辆信任值,车辆直接加入VANET;如果不是,除了验证车辆身份、平台完整性,RSU还需计算车辆上一个证书有效期Tvc的总信任值,即基于历史表现来衡量车辆是否是恶意节点;步骤17:节点的声誉值评估:计算上一个证书有效期Tvc的总信任值表达式如下: 步骤18:是记录到RepBC上的车辆信任值,由于区块链每个区块都有时间戳,都有与之对应的时间戳;x代表第x次评价,Sx,n代表第x次评价所占的比重,距离当前时间越近的评价越能反映车辆的近期行为,所以距离当前时间越近的评价所占比重越大,距离当前时刻越远的评价所占比重越小;S1,n<S2,n<Sx,n<…<Sx,n满足步骤18.1:令tx=Tcurr-Tblock,Tcurr指当前时间,Tblock指车辆信任值被记录到区块链的时间戳,tx表示当前时间Tcurr与第x次评价时间Tblock的差值,则t1>t2>tx>...>tn;Sx,n的计算公式如下: 其中0≤ρ≤1,因此S1,n<S2,n<Sx,n<…<Sx,n;步骤19:的最终表达式如下: 是记录到RepBC的车辆信任值,ρ是0≤ρ≤1的系数,Tcurr指当前时间,Tblock指车辆信任值被记录到区块链的时间戳;当时,认为节点是可信,允许加入VANET网络;验证结束。

全文数据:

权利要求:

百度查询: 北京工业大学 基于区块链的VANET中节点可信加入方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。