APP下载

车联网中基于知识签名的快速身份认证协议研究

2020-08-03谭杰郑明辉

关键词:私钥对数密钥

谭杰,郑明辉

(湖北民族大学 信息工程学院,恩施 445000)

物联网技术正处在高速发展的黄金阶段,这就为智能交通系统的构建提供了有力支撑,即当前应用广泛的车联网,也称车辆自组织网络(Vehicular ad hoc networks,VANET).VANET的设计初衷是为了实现车辆间的协同驾驶、位置服务(Location-based services,LBS)、信息共享,从而缓解道路交通压力,提高用户驾乘安全体验.

目前针对VANET的研究,其通信特征都较为相似,都是其车辆用户的身份和位置信息被持续不断的暴露出来,进而带来另一种风险,即车辆用户的位置隐私信息较容易被泄露.因此,国内外学者提出了诸多解决方案:2005年,曾良军等[1]较为系统的梳理总结了带有系数的离散对数的知识签名,并运用数学理论证明了,但没有能够将其付诸于实际应用;2007 年,BUTTYAN等人[2]首次将mix-zones 方法应用到车联网中,对于车联网位置隐私保护研究具有里程碑的意义;FREUDIGER等[3]提出了称之为CMIX协议的认证模式,此协议相配套地创建了一个对称密钥k作为加密的 mix-zone空间的密钥,以此提高VANET中车辆的认证速度;2011年,BALAJI 等[4]提出了两种构想,一种是基于特殊位置mix-zones方案,该方案易于受到攻击者基于统计学的概率攻击;另一种方案是基于安静时段的mix-zones方案,该方案对安静时段的选取的操作较为困难[5];2014年,张文博等人[6-8]基于可信计算思想提出了一个车联网云平台用户间的安全通信模型,并证明了在车联网云平台中采用该通信模型可以使通信过程具备可信性、安全性和匿名性,对车主隐私保护和抗攻击有一定效果;2015年,王文骏等人[9]针对车联网中的Sybil攻击问题,提出基于车辆身份证书的认证方案来保护车辆的位置隐私和完成匿名认证;2016 年,吴黎兵等[10]采用椭圆曲线密码构建了轻量级基于身份的安全认证协议,降低了签名与认证过程的运算复杂度并保护了车主的隐私信息;2016年,王良民等人[11]通过对我国车联网发展状况的分析,从车联网安全与隐私保护立场出发提出了基于车辆身份的三层架构的安全体系,为隐私保护提供了研究方向;2019年,LIU 等人[12]在群签名的基础上,提出了一种适合于车辆联网的车辆群签名认证机制,该方案提供了车辆的动态加入和撤销,为行驶中的车辆提供了安全隐私保护,该方案在消息签名和签名验证过程中具有较低的计算开销,提高了整体签名效率,适合于VANETs实时高效的计算要求.LI 等人[13]于同年利用区块链技术设计了一种新型的分散体系结构的VANET,通过区块链建立、车辆注册、SBMs上传和区块链记录等阶段,以达到有效地解决当前网络环境下实体间的集中和互不信任问题,还可以保护身份和位置隐私.

上述方案研究的前提是车辆进入到车联网后发生验证关系,实现不同技术角度的匿名身份认证,以满足车辆之间或者车辆与VANET之间的认证需要.本文提出一种基于离散对数的知识签名技术,在车辆将要进入车联网时,通过车载单元向路旁辅助单元发送认证请求,证明自己拥有合法密钥,以此证明自己的合法身份,从而实现快速认证、快速通过、快速适应高速实时通信、拓扑结构变化强等要求.

1 基于知识签名的协议设计思想

1.1 知识签名的定义

在本协议设计中使用到的主要参数代码及其含义如表1所示.

表1 协议参数代码表

定义所谓知识签名,是指签名人员可以在不泄露相关信息的前提下,向他人证明其知道某个秘密的一种密码学通信手段[1].现行研究下,可知知识签名技术主要有以下3种.

1.1.1 基于离散对数的知识签名

符号化表示基于离散对数的知识签名:SKLOG[α:y=gα](m),它是针对数学问题y=gxmod(n)提出的。其中,x是协议私钥,y是协议公钥,m是需加密的明文信息,g和n是临时随机选取的系统参数.

1.1.2 基于双离散对数的知识签名

符号化表示该技术知识签名:SKLOGLOG[β:y=gαβ](m),它是针对数学问题y=gαxmod(n)提出来的.

1.1.3 基于离散对数e次方根的知识签名

符号化表示该知识签名:SKROOTLOG[β:y=gβe](m),它所依据的数学问题是y=gβemod(n).

在密码学中,基于离散对数难解问题对知识签名进行构造,作为群签名的一种基础支撑技术,得到了广泛的应用[14,15].该技术通过实现降低签名时的交互次数,提高签名速度,从而实现对群中合法成员的身份进行快速有效的认证.

1.2 协议的网络模型

本协议主要由TA、RSU和OBU三个网络组件构成,其网络结构如图1所示.

图1 协议网络结构图

根据上图所示,顶层TA是在完美假设下工作的,在该假设下,TA是完全可信的,是不受任何威胁或攻击的,注册并发布OBU和RSU的系统参数;第二层的RSU的主要职责是向OBU分发相应系统参数和公钥,对持有分发了系统参数和公钥的OBU进入VANET后进行知识签名的认证,认证时不用传递系统密钥,OBU需证明其拥有系统密钥即可;底层的OBU向RSU提供由知识签名协议产生的由RSU分发的签名,以此证明自己拥有合法密钥,认证自己是该行驶区间的合法用户.

1.3 协议设计

根据本文部署的网络结构模型的通信需求特征,TA、RSU和OBU三者间的协议工作流程关系如图2所示.

图2 协议工作流程图

1.3.1 系统参数初始化

由可信权威认证机构TA进行系统初始化操作.由公式yk=gskmod(n)计算出系统公钥yk,其中n是由TA随机选取的一个大素数,g为系统参数,sk为私钥;完成系统参数(n,g,α,yk)初始化.

1.3.2 RSU向TA进行注册

在VANET的整个系统中,受TA统辖的RSU有很多个.因此,需要对RSU向TA完成关联认证,即每一个RSU需要独立向TA进行注册,从而成为TA中的一个独立的合法成员,由TA授予它公共系统参数与密钥,其地理位置信息(RSU,L)由TA备案保存.

1.3.3 TA向OBU颁发系统密钥

在VANET中所有车载单元OBU要向TA完成身份注册.在注册时,TA通过注册网络为其颁发与RSU相配套的密钥组{ri|ri∈Z+,i∈Z+},以便OBU在请求加入VANET时向RSU证明其合法成员身份.

1.3.4 OBU完成进入VANET的认证

在OBU需要进入VANET时,其首要任务是要向RSU进行身份认证,以此来证明它为VANET内的合法成员,被允许进入.其实现技术为知识签名,需要OBU从其密钥组{ri|ri∈Z+,i∈Z+}中选取任意的j个正整数r1,r2,r3,…,rj,且能提供一个j+1元组(s,c1,c2,…,cj) 以完成同RSU的身份认证,其计算条件如式(1)所示:

(1)

如果满足式(1)条件,则该OBU被证明是正确具有VANET的系统密钥sk的,与RSU的认证成功,该OBU被允许进入VANET.否则,该OBU将会被RSU拒绝进入VANET.协议设计与实现描述如表2所示.

表2 基于知识签名的快速身份认证协议描述

这里,e[i]是整数e在转化成二进制后的第i位上的数值,通过表2描述的算法,OBU利用自己在向TA注册时由TA分发的私钥skOBU产生其知识签名后,将其发送给RSU进行验证,若能满足式(2)的条件,则可以证明该OBU拥有系统私钥sk,装载有该OBU的车辆为合法用户,从而能够被允许进入VANET,相应的系统服务将被允许享受.

(2)

2 本文协议的安全性分析

传统的加密方案在车辆在VANET的外部行驶时,容易被攻击者进行跟踪攻击,达到伪造身份的目的,即外部攻击.为避免这种攻击,当OBU与RSU之间的认证速度足够快的时候(即OBU身份认证完成后能快速通过的同时,攻击者被拒绝进入VANET中),这样将攻击者阻隔在VANET之外,极大降低了该车辆持有的OBU的外部攻击的概率.

根据知识签名的定义可知,签名者可以在非交互和不泄露相关信息(秘密)的情况下向别人证明其知道某个秘密,在本文中体现为OBU能够证明其知道私钥sk.对基于双离散对数的知识签名而言,被认证OUBi需要给出(e,s1,s2,…,sj)满足式(3):

(3)

其中,i=1,2,…,j,即可证明其知道密钥sk.证明过程分步骤如下所示:

步骤1选择j个随机整数:r1,r2,…,rj;

步骤2由式(4)计算e:

e=H(m‖y‖g‖α‖p1‖p2‖…‖pj),

(4)

其中,pi=gαrimod(n);

步骤3根据公式计算si:

si=ri=c[i]×skOBU,其中e[i]表示的是整数e转化成二进制数后的第i位,那么OBUi的知识签名记为:(e,s1,s2,…,sj).

下面证明本协议的安全性:

由式(3)可得pi=gαrimod(n),再整理步骤3的公式可得,ri=si+e[i]×skOBU,分别代入式(5)和式(6),整理后,得式(7).

e=H(m‖y‖g‖α‖p1‖p2‖…‖pj)

(5)

=H(m‖y‖g‖α‖gαrimod(n)

(6)

=H(m‖y‖g‖α‖gαsi+e[i]×skOBUmod(n)

(7)

=H(m‖y‖g‖α‖gαsigαc[i]mod(n)

(8)

从式(7)可以看出,由TA在注册时颁发给签名者的密钥skOBU只有被认证的人员(设备)拥有,将正确的密钥skOBU代入式(7)使等式成立,方能证明自己是拥有密钥的合法用户,即可实现RSU对拥有者的身份的成功认证;否则,密钥skOBU不被知道的前提下,必须计算出式(4),才能通过RSU对验证者的认证,而要计算出式(8),则必须计算出满足条件的数值对:(e,s1,s2,…,sj),在计算上被证明是不可能的,至少是很困难被计算的.本协议的安全性得证.

3 实验仿真

本方案仿真实验的设计思路为从车联网自身的拓扑结构入手搭建环境,再加上其通信特征进行各设备间的通信.首先,部署300台PC机作为请求认证的OBU,同时,搭建一台PC机作为认证用的RSU,都配置可移动无线认证功能,模拟真实的VANET环境,将数字签名技术运用到其中,糅合本文所设计协议,向RSU提供证据证明其知道该RSU管辖区域的私钥,接入认证得以实现完成;然后,利用设计搭建的实验环境对OBU进入VANET后同RSU成功完成接入认证这之间所消耗的时间进行获取;最后,对实验数据进行客观分析,并选择与ZHAO等人的方案进行了比较,得出如图3所示的实验结果.

图3 四种方案的认证时间比较

ZHAO等人[16]提出了一种可撤销的组签名方案来解决VANET中接入身份认证问题,本文使用知识签名技术来处理OBU进入VANET中后与RSU之间的接入身份认证.在本方案中,认证发生时,OBU和RSU的认证通信方式是“一对一”,即一个RSU只能同时与一个OBU进行认证,认证完成后即释放该RSU以便该RSU对下一个OBU进行认证,即装载有OBU的车辆遵从队列形式进入VANET,通信时间在通信认证中是呈线性关系增长的,所以其仅有O(n)的通信复杂度.我们假设,在一个RSU的认证管辖范围内,一段时间内的车辆骤然聚集不会太多,本文部署实验的OBU为300个.在此条件下,从图3可以分析得出,完成300个OBU用户的认证时间,ZHAO 等的方案约74毫秒,本方案约为60毫秒,同比提高了约18.92%;完成230个OBU用户的身份认证时间,与YOON 等人[17]的方案相当,约为34毫秒;完成略大于250个OBU用户的认证时耗约为37毫秒,与WU等人[18]的方案一样;综合方案的整体性能,本方案比ZHAO等人的方案稍占优.

从通信轮次比较,本方案中系统私钥sk已经在OBU注册时由TA 颁发, 在其要进入VANET接受RSU认证时,只需要利用skOBU向RSU证明其知道私钥sk,RSU验证通过即释放控制允许接入VANET,整个通信过程即完成,那么有n个OBU用户进行认证,其通信轮次为2n;而ZHAO等人的方案在通信时需要在OBU与RSU之间进行“三次握手”,通信轮次为3n.

4 结语

本文采用基于离散对数的知识签名为技术理论,设计了一个基于车辆身份的认证协议,主要为了适应车联网拓扑结构变化快、需要快速对加入的OBU用户车辆通过RSU进行认证的实际需求,并用数学理论对协议进行了安全性证明,搭建了实验环境对协议效率进行了仿真实验,得出结论:本方案可以完美满足在一个RSU所辖区域内,骤然聚集的OBU数目不超过300个的接入认证需要.但本方案存在的不足之处在于:当某个RSU辖管的范围内的装载有OBU的车辆数目骤然聚集过多,达到或超过该区域部署RSU认证服务器或者认证协议能实现准确认证的负荷极限时,该区域内系统就有可能瘫痪.今后课题组将针对此技术瓶颈进行重点研究.

猜你喜欢

私钥对数密钥
清扫机器人避障系统区块链私钥分片存储方法
比特币的安全性到底有多高
幻中邂逅之金色密钥
幻中邂逅之金色密钥
指数与对数
Spatially defined single-cell transcriptional profiling characterizes diverse chondrocyte subtypes and nucleus pulposus progenitors in human intervertebral discs
指数与对数
密码系统中密钥的状态与保护*
比较底数不同的两个对数式大小的方法
TPM 2.0密钥迁移协议研究