一种车联网无证书匿名签密方法

文档序号:35910385发布日期:2023-10-29 12:08阅读:64来源:国知局
一种车联网无证书匿名签密方法

本发明属于车联网签密领域,具体涉及一种车联网无证书匿名签密方法。


背景技术:

1、为了确保车联网通信信息的机密性和隐私信息的安全性,近年来,基于匿名通信的认证方案被大量提出。其中基于环签名的匿名认证方案会随着撤销列表中被撤销车辆数量的增加,消息认证所需的时间增长较快。门限匿名认证方案设计了成员加入和成员撤销机制,但方案不能实现不可抵赖,且通信开销较大。为提高假名生成效率,还有基于车载防篡改设备(tpd,tamper-proof device)生成假名的方案,即由存储系统主密钥的tpd为车辆生成一次性动态假名身份,从而降低车辆被追踪的风险,实现了强隐私保护,但这会增加主密钥受到侧信道攻击的风险,而且额外增加的tpd设备成本也不利用车联网的普及发展。

2、为避免密钥托管,无证书公钥体制被引入车联网匿名认证中。文献“基于无证书签密的车联社会网络安全通信机制”(通信学报,2021,42(7):128-136)提出了一种基于无证书公钥体制的车联网签密方案,以下简称zh-cls。该方案给出一种无tpd参与的本地生成假名策略,并设计了假名密钥生成、假名追踪、签密/解签密等一系列算法。但经分析,zh-cls方案设计的假名身份与假名公私钥无强关联性,在签密通信过程中,解签密方无法鉴别对方假名是否合法或正确,从而会出现恶意参与者冒用他人假名身份或使用不可追踪的错误假名的情况;此外,zh-cls方案所设计的假名公私钥具有严格的线性关系,系统外非注册成员能够利用公开参数伪造公私钥对,进而冒充注册成员进行签密通信。


技术实现思路

1、为了解决现有技术的不足,本发明旨在提供一种车联网无证书匿名签密方法,该方法加入了假名验证机制,解决了现有zh-cls方案中存在的“替换假名”问题,使假名身份与密钥自然绑定,规避了现有技术中存在的“伪造公私钥对”问题,具有更强的安全性和较低的计算耗时。

2、为了实现上述目的,本发明采用的技术方案为:

3、一种车联网无证书匿名签密方法,包括以下步骤:

4、1)系统参数生成:生成参数包括有tma注册因子、kgc主密钥、公共参数和kgc公钥;

5、2)部分密钥生成:系统成员向tma申请注册,注册完成后,由kgc将部分私钥安全发送给成员;

6、3)完整密钥生成:计算组成完整私钥和完整公钥;

7、4)假名生成:生成完整的假名身份并向外公布;

8、5)假名密钥生成:计算组成完整假名私钥和完整假名公钥;

9、6)签密:成员a对消息进行签密,并将结果发送给b;

10、7)假名验证:成员a与成员b完成注册后,分别生成各自当前假名;

11、8)解签密:成员b收到成员a的签密消息后,验证成员a假名的正确性;验证通过后,对签密结果进行解密验证;

12、9)假名追踪:某次通信过程若成员存在恶意行为,被侵害方将恶意成员假名提交tma,请求追踪对方真实身份。

13、其中,步骤1)中生成参数包括:系统生成算法:

14、setup(λ)→(xt,z,params),

15、即输入安全参数λ系统输出tma注册因子xt、kgc主密钥z和公共参数params=<p,q,g1,g2,e,h1,h2,ppub>,其中,p,q为两个大素数,g1为椭圆曲线上的加法群,p为g1生成元,g2可以为q阶整数域zq上的乘法群,e为群g1到群g2的双线映射,h1,h2为两个安全哈希函数;

16、选择两个大素数p和q,并用p和q生成的椭圆曲线循环加法群g1(p,+)和同阶乘法群构建双线性映射e:g1×g1→g2;

17、另选择两个安全哈希函数:h1:{0,1}*→zq和h2:g1→{0,1}*;kgc随机选取主密钥z∈zq,其中zq为模q整数域,计算kgc公钥ppub=zp;tma随机选取注册因子xt∈zq。

18、步骤2)中生成部分密钥包括:部分密钥生成算法:

19、pkey-gen(idi,z)→(ri,wi,ki),

20、即成员idi向tma申请注册,tma随机选取wi∈zq作为成员idi的备案参数,idi表示系统成员i的真实身份;具体有:

21、计算ri=wixt,wi=wip,生成备案数组并存入实体列表eit;其中,ri是tma为系统成员i分配的假名因子,作为成员生成假名的输入参数;xt是tma的秘密数,用于为系统成员生成假名因子;wi是tma为系统成员i生成的一个公开参数,作为部分私钥和成员假名生成的输入参数;(*)-1表示“*”在zq上乘法逆元;

22、tma将<ri,wi>安全发送给成员idi,tma为成员idi注册完成后,发送<idi,wi>给kgc,kgc为成员idi计算部分私钥ki=zwi,并将ki安全发送给成员idi。

23、步骤3)中生成完整密钥包括:完整密钥生成算法:

24、fkey-gen(wi,ki)→(pki,ski),

25、系统成员idi选取随机数xi∈zq,计算完整私钥的另一分量qi=xiwi,结合由kgc分配部分私钥ki,共同组成系统成员i的完整私钥ski=<qi,ki>;

26、系统成员idi再利用已经选取的随机数xi,计算完整公钥的一个分量xi=xip,与tma生成的公开参数wi共同组成完整公钥pki=<xi,wi>。

27、步骤4)中生成假名包括:假名生成算法:

28、psm-gen(ri,wi)→pidi,

29、系统成员idi选取随机数利用已经掌握的假名生成因子ri和和公开参数wi、p,依次计算假名分量和进而生成完整的假名身份并向外公布;其中是系统成员i为生成假名身份选取的随机数;

30、当成员idi更换新的假名身份时,只需要重新选择计算新的pidi即可。

31、步骤5)中生成假名密钥包括:假名密钥生成算法:

32、

33、成员idi选择随机数si∈zq,利用步骤4)中选取的随机数和完整私钥ski=<qi,ki>,依次计算假名私钥参数和组成完整假名私钥其中,si是系统成员i为生成假名密钥选取的随机数;

34、再利用已选取的随机数si、私钥分量xi,计算其中一个假名公钥分量并用假名分量作为另一个公钥分量,共同组成完整假名公钥

35、步骤6)中签密包括:签密算法:

36、

37、成员a依次计算明文消息m的哈希值h1=h1(m)、签名值加密密钥和加密密文然后组成签密消息并发送σ给b。

38、步骤7)中假名验证包括:假名验证算法:

39、psm-veri(pida,pidb)→<valid/invalid>,

40、成员a与成员b完成注册后,分别生成各自当前假名pida和pidb;成员a计算验证参数并将其发送给成员b;成员b计算验证参数判断ya=yb是否相等;并将a的假名分量和自己的假名分量作为双线性对计算输入,判断是成立;若两步验证均成立,算法输出valid,b认同a为注册用户,pida生成正确,否则输出invalid。

41、步骤8)中解签密包括:解签密算法:

42、verify(σ,pkpa,skpb)→<valid/invalid>,

43、成员b收到成员a的签密消息后,首先执行假名验证算法,验证成员a假名的正确性;验证通过后,对收到的签密消息进行解密验证:首先利用前期选取的随机数rb和自己的假名分量计算解密密钥并对密文进行解密:从而获取明文m,进一步计算明文的哈希值h1=h1(m),结合公开参数p、和、ppub和a的假名公钥分量对签名值进行双线性对验证,即判断是否成立;若成立,则接受消息m,否则丢弃。

44、步骤9)中假名追踪包括:假名追踪算法:

45、psm-trc(pid,eit)→idi,

46、若在某次通信过程某成员存在恶意行为,被侵害方将恶意成员的假名pid=<pid1,pid2>提交tma,请求追踪对方真实身份;tma检索实体列表eit,依次取出表项判断是否成立,若不成立,继续检索,否则输出idi。

47、本发明具有的有益效果为:

48、本发明在分析zh-cls方案的基础上,提出了一种改进的无证书签密方案。无证书公钥体制在继承了基于身份的公钥体制“身份-公钥绑定”优点的同时,解决了密钥托管问题。本发明设计了新的假名生成算法,加入了假名验证机制,解决了zh-cls方案中存在的“替换假名”问题;重新设计了公私钥对结构和验证等式,使假名身份与密钥自然绑定,规避了zh-cls方案中存在的“伪造公私钥对”问题;在安全分析中,对假名身份和签密消息的不可伪造性进行了证明;所提方案具有更强的安全性和较低的计算耗时,在通信效率方面也具有一定优势。

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