车联网环境下基于Hash函数群签名的匿名认证方法

文档序号:39652318发布日期:2024-10-15 12:49阅读:32来源:国知局
车联网环境下基于Hash函数群签名的匿名认证方法

本发明属于信息安全,特别涉及一种匿名认证的方法,可用于车联网环境下的安全通信。


背景技术:

1、近年来,随着我国汽车工业的高速发展和居民生活水平的提高,汽车已经成为我国居民出行的主要交通工具。智能交通系统its作为物联网技术在交通领域的典型应用应运而生,其结合传感、通信、计算和人工智能等技术来协调人、车辆、道路的相互配合,目的是建立高效的综合运输系统。

2、车联网作为its的核心分支,是一种大规模移动自组织网络,通常由车载单元obu、固定路边单元rsu和可信中心ta三部分组成。它可以为改善司机和乘客的道路环境、交通安全和信息娱乐传播提供新的解决方案。然而,如果没有可靠的安全认证和隐私保护机制,攻击者将很容易假冒合法车辆发布虚假消息达成不良目的,比如造成交通事故或者独享道路资源等,也很容易窃取到行驶车辆的隐私信息,如身份、行驶路线等信息以进行跟踪或识别偏好。但是,在必要的时候,权威交通部门仍需要能够快速准确地跟踪到车辆的真实身份。此外,由于车联网中车辆高速移动的特性,车辆与车辆之间以及车辆与路边单元之间的交互时间十分有限。因此,在车联网中设计一个高效的具有条件隐私保护的认证方案是非常有必要的。群签名因其具有匿名性和可跟踪性,与车联网中需要的条件隐私保护认证机制十分契合,因而被广泛应用于车联网中实现对车辆安全高效的匿名认证。

3、在群签名方案中,由多个群成员以及一个群管理员共同构成群签名的整体结构。多个群成员共享一个群公钥,每个群成员可以利用自己的私钥以匿名的方式代表整个群组对消息进行签名。签名接收者可以利用群公钥来验证签名的正确性但不能获知具体签名者身份。群管理员负责在群组初始化时对群成员进行注册、构建群公钥,在必要时群管理员可以打开群签名跟踪到对应的签名者,对有不诚实行为的群成员,群管理员可以撤销其群成员身份。在车联网环境下,一般由rsu担任某个群组的群管理员,位于该rsu区域内的所有车辆构成群组成员。

4、与传统的群签名方案相比,基于hash函数的群签名方案可以抵抗量子计算机的攻击,具有更高的安全性。同时,基于hash函数的群签名方案具有结构简单,签名效率较高的特点,且群成员加入和撤销时可以不用更新群公钥,其已经成为密码学研究的热点之一。

5、一个能适用于车联网的基于hash函数的群签名方案,通常需要满足三个条件:一是群成员能动态加入和高效撤销,二是能实现签名消息的快速验证,三是具有匿名性和可跟踪性。其应用场景如图1所示,包括四个实体,即负责检查车辆身份的可信中心ta,由rsu担任的群管理员,每个rsu负责维护一个动态群组、由rsu单元通信范围内的所有车辆共同构成群成员和验证者。在该模型中,用户首先向ta进行注册,ta检查用户的真实身份。当用户驶入到某一rsu区域后,rsu需要对用户进行身份验证,身份验证完成后rsu向用户发放私钥,并将其纳入到群组当中。然后用户利用自己的私钥对消息进行群签名。最后,由验证者对群签名的有效性进行验证,验证者只能验证此签名是否由合法的群成员生成,而不能获知签名者的真实身份。当群组中出现恶意签名或其它不当行为时,rsu可以通过签名打开算法得到签名者的真实身份以进行追责。当rsu发现群内部分成员有不诚实行为时会使用相应的撤销算法对不诚实用户的签名权限进行撤销。

6、然而,现有基于hash函数的群签名方案主要结合一次性签名和多merkle树架构来实现群成员对消息的多次签名以及群成员的动态加入需求,但在群签名动态性与群签名的高效验证方面往往不能兼顾。此外,现有方案在实现撤销群成员时往往效率较低,不适用于车联网环境下的信息交互。

7、文献“dgm:a dynamic and revocable group merkle signature”通过构建主树和子树两种类型的merkle树,主树仅负责生成群公钥,子树用来对群签名进行验证,主树和子树之间通过对称加密实现链接。该方案允许群成员的动态加入和退出,但撤销群成员时的效率较低。该方案采用可标点加密spe的方式对被撤销成员的相关信息进行可标点加密,验证者在对签名进行验证时先对签名中的部分信息进行spe加解密操作,以检查签名者是否被撤销,检查通过之后再进行下一步签名有效性检查。使用spe的方式来实现对群成员的撤销虽然不需要撤销列表,但spe加解密操作本身的计算开销较大,同时spe会生成相应的spe标签,群管理员需要保存这些spe标签,这对群管理员的存储空间提出了较高的要求。

8、文献“gmmt:a revocable group merkle multi-tree signature scheme”同样通过构建主树和子树两种类型的merkle树构成多树架构,但该方案通过一次性签名的方式实现主树和子树的链接。同时该方案使用撤销列表的方法实现对群成员的撤销,将被撤销群成员的有关信息放入到撤销列表中,验证者在验证签名时先通过检查撤销列表来判断当前签名是否由已被撤销的群成员签发,检查通过之后再进行下一步签名有效性检查。该方法使用的撤销列表虽说实现起来非常方便,且被广泛应用于动态群签名中进行对群成员撤销,但随着被撤销成员的增加,撤销列表的长度也在增加,这将会直接影响到验证群签名的计算开销。

9、申请号为cn202210689218.7的专利文献公开了一种基于区块链的车联网证书认证方法。其主要解决车联网基于证书认证技术中存在的单点故障、证书吊销和跨中心节点之间的不互信问题。该方法虽然提高了车联网跨域身份认证效率,降低了身份认证成本,但仍属于基于证书的身份认证方法,每个车辆的身份信息包含在数字证书中,因此不具有匿名性,容易遭到敌手的持续跟踪,威胁车辆行驶安全。


技术实现思路

1、本发明的目的在于针对上述现有技术的不足,提出一种车联网环境下基于hash函数群签名的匿名认证方法,以提高车辆认证过程中的匿名安全性,缩短群成员加入群组所需时间,提升车辆认证效率。

2、该技术适用于车联网环境下的车辆匿名认证。

3、实现本发明目的的技术思路是:通过使用群签名技术来提高车辆认证过程中的匿名安全性;通过优化基于hash函数群签名方案中的子树构建过程缩短群成员加入群组所需时间;通过在签名中加入基于hmac预认证值来提高签名验证效率。

4、根据上述思路,本发明的技术方案包括如下步骤:

5、(1)采取“多树架构”实现群成员的动态加入和退出:

6、(1a)车联网中每个路边单元rsu作为群管理员各自维护一个群组,在初始设置时,rsu通过主树生成算法构建一个merkle树作为主树,并将主树的根节点值作为整个群组的公钥gpk;

7、(1b)在用户申请加入群组时,用户使用自己的一次性公钥集合作为merkle树的叶子节点向上构建一个merkle树作为签名子树,由rsu完成主树与签名子树的链接,即除主树根节点外,距离根节点较近的内部节点fn优先与子树相链接,每个加入群组的成员都在主树上链接一个自己的签名子树,以进行动态加入;

8、(1c)对于群组中部分成员出现不诚实行为,则由rsu对其进行撤销,由rsu将被撤销成员或驶出该rsu通信范围成员的签名子树从主树中清除,以实现群成员的动态退出;

9、(2)使用证书认证的方式实现rsu对用户身份的合法性检验:

10、(2a)idu通过安全信道将自己的真实身份发送给可信中心ta,ta在得到用户的真实身份后,从参数列表idlist中检查该idu是否为被撤销用户:

11、若是,则确定不为其发放新的数字证书;

12、否则,确定要为用户发放数字证书,执行步骤(2b);

13、(2b)ta使用自己私钥s为合法用户颁发数字证书;

14、(2c)用户idu在进入到某个rsu区域后,将自己所持有的证书发送给rsu,rsu对证书进行合法性检验后,为idu生成签名密钥gsku、临时身份标识符tidu、用于计算验证密钥vsk的前向密钥和后向密钥以及二元多项式f(tidu,y),其中y为变量,并使用idu的公钥pku将上述信息加密后发送给idu;

15、(3)用户idu生成多个一次性密钥对,每个一次性密钥对包括一次性私钥ots.sk和一次性公钥ots.pk,并以ots.pk构成签名子树,再由rsu将该签名子树链接到主树上;

16、(4)用户使用自己的签名私钥生成对消息message的群签名:

17、(4a)用户idu选择一个未使用的一次性私钥ots.sk,生成对消息message的一次性签名ots.σ;

18、(4b)idu计算所选私钥对应的公钥到签名子树根节点rsmt的认证路径path2,并使用自己的验证密钥vsk计算一次性签名ots.σ的hmac值:hmac=hmacvsk(ots.σ);

19、(4c)根据(4a)和(4b)的结果生成完整的群签名σ:

20、σ={ots.σ,hmac,ots.pk,path1,path2,fk}

21、其中,path1为内部节点fn到主树根节点的验证路径,fk为内部节点fn与签名子树根节点rsmt的链接值;

22、(5)验证者通过接收到的群签名σ及群公钥gpk对签名用户进行匿名认证:

23、(5a)验证者接收到群内其它用户对消息message的群签名σ后,使用自己的验证密钥vsk计算群签名中ots.σ的hmac值hmac′=hmacvsk(ots.σ),并验证用户是否已被撤销:若hmac′=hmac,则该用户尚未被撤销,继续执行步骤(5b);否则,丢弃签名;

24、(5b)验证者使用群签名中的一次性公钥ots.pk和一次性签名验证算法ots.verify(ots.σ,message)验证群签名中的一次性签名是否正确:

25、若一次性签名正确,则执行步骤(5c);否则,丢弃该群签名σ;

26、(5c)验证者通过群签名中的ots.pk、path1和path2继续检验该群签名σ的正确性:

27、若该签名正确,则该签名用户通过验证者的身份认证;

28、否则,该签名用户未通过验证者的身份认证,丢弃群签名σ。

29、本发明与现有技术相比,具有如下优点:

30、其一,本发明的签名由于仅包括预认证值、一次性签名、验证路径,且验证路径大小是在初始设置时确定,与群组成员的数量无关,避免了现有技术方案采用多层merkle树结构导致验证路径增大的缺点,且由于该预认证值是一个hash函数值,故相对比现有技术方案中要额外增加的一次性签名,极大地减小了签名尺寸。

31、其二,本发明由于对签名子树的构建过程进行优化,每棵签名子树的叶子节点均由同一个用户提供,而非多个用户提供,避免了现有方案中构建签名子树时的对称加密和排序操作,大大加快了签名子树的构建。同时由于本发明中用户在整个过程中使用临时身份标识符,因此即使对签名子树的构建进行了一定的简化也不会损害签名的匿名性以及用户隐私。此外由于本发明使用hash函数实现子树与主树的相互链接,相比现有方案中采用一次性签名链接主树与签名子树的方式,减小了构建子树时的计算开销,也缩短了群签名的验证时间。

32、其三,本发明由于在群签名中引入了基于hmac的预认证值,可通过更新hmac验证密钥的方式来实现对群成员的撤销,使得被撤销成员无法计算出新的hmac验证密钥,也就无法计算出正确的预认证值,从而达到了撤销群成员的目的,相比现有方案中采用较为耗时的多次spe加解密撤销群成员的方式,或者采用过长的撤销列表,可提高签名验证效率,同时支持群成员的批量撤销,进一步提升了撤销的效率。

33、其四,本发明由于在群签名中引入基于hmac的预认证值,在验证群签名时除了验证消息的一次性签名和验证路径外只额外增加了计算预认证值hmac以及根据fk和rsmt计算fn的操作,因而避免了现有方案中额外进行spe的加密和解密操作,或者对签名子树根节点的签名验证和传统的撤销列表机制带来的验证签名耗时较长的问题。仿真结果表明,本发明与现有的基于hash函数的动态群签名相比,其在验证群签名阶段的计算开销减少了约50%。

34、其五,本发明中由于通过可信中心ta为每个合法用户颁发证书,即用户在加入群组时,群管理员通过验证用户的证书实现对用户的身份验证,并在无线网络环境下以加密的方式完成与用户的信息交互,相对现有方案中采用安全信道的方法,本发明更符合车联网的实际通信需求。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1