CN109005035B - 一种网联汽车远程匿名签发验证通信系统 - Google Patents

一种网联汽车远程匿名签发验证通信系统 Download PDF

Info

Publication number
CN109005035B
CN109005035B CN201810765073.8A CN201810765073A CN109005035B CN 109005035 B CN109005035 B CN 109005035B CN 201810765073 A CN201810765073 A CN 201810765073A CN 109005035 B CN109005035 B CN 109005035B
Authority
CN
China
Prior art keywords
key
party
tpm
certificate
daa
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.)
Active
Application number
CN201810765073.8A
Other languages
English (en)
Other versions
CN109005035A (zh
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.)
Tongji University
Original Assignee
Tongji 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 Tongji University filed Critical Tongji University
Priority to CN201810765073.8A priority Critical patent/CN109005035B/zh
Publication of CN109005035A publication Critical patent/CN109005035A/zh
Application granted granted Critical
Publication of CN109005035B publication Critical patent/CN109005035B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves

Abstract

本发明涉及一种网联汽车远程匿名签发验证通信系统,包括:证明方:为汽车,包括Host部分和TPM(或TCM)芯片部分,证明方的DAA证书用以实现汽车的匿名性,以保护云服务中汽车驾驶员的身份和数据隐私;签发方:为在证明方请求远程服务时对其进行DAA签名、并生成证明方的DAA证书的实体;验证方:用以提供远程服务,其证书为实名证书,且证书满足X.509格式,在提供服务时,需要先验证匿名汽车的真实性和平台完整性,然后通过会话密钥加密数据传输给汽车提供服务。与现有技术相比,本发明具有安全快速、通信效率高等优点。

Description

一种网联汽车远程匿名签发验证通信系统
技术领域
本发明涉及车联网领域,尤其是涉及一种网联汽车远程匿名签发验证通信系统。
背景技术
网联化是汽车的一个发展趋势。汽车启动后,为检验汽车车载操作系统,应用软件或储存的数据是否遭到篡改,汽车需要进行完整性检验;在汽车连接云端服务器以获取远程服务时,服务器和汽车需要进行双向身份验证,同时服务器需要检验汽车操作系统和应用软件的完整性。为此,可借助TPM或TCM安全芯片通过远程证明的方法来实现上述需求。直接匿名认证(DAA)在PC领域已有较多的研究,它可以实现PC端匿名地访问服务器的资源。现有专利有的针对云计算提出基于可信计算环境的平台完整性的校验方法,但是并未体现出平台的匿名性。有的专利针对车载自诊断系统提出了基于RSA加密和签名算法的方法,但是RSA算法在密钥长度过大(2048bit及以上)时,没有ECC算法效率高。本发明提出基于可信芯片和直接匿名认证(DAA)的方法可以在汽车匿名的情况下向服务端证明自身身份的可信性并接收远程服务,这种方法在智能网联汽车时代可以有效保护汽车驾驶员的身份隐私。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种网联汽车远程匿名签发验证通信系统。
本发明的目的可以通过以下技术方案来实现:
一种网联汽车远程匿名签发验证通信系统,包括:
证明方:为汽车,包括Host部分和TPM(或TCM)芯片部分,证明方的DAA证书用以实现汽车的匿名性,以保护云服务中汽车驾驶员的身份和数据隐私;
签发方:为在证明方请求远程服务时对其进行DAA签名、并生成证明方的DAA证书的实体;
验证方:用以提供远程服务,其证书为实名证书,且证书满足X.509格式,在提供服务时,需要先验证匿名汽车的真实性和平台完整性,然后通过会话密钥加密数据传输给汽车以提供服务。
所述的证明方具体为连接有远程通信模块的车机或连接有远程通信模块的网关控制器。
所述的签发方具体为汽车OEM制造商或交管部门,且当为汽车OEM制造商时,汽车中TPM的唯一ID和车主身份的映射表由OEM厂商安全地保管。
一种网联汽车远程匿名签发验证通信系统的网联汽车远程匿名签发验证通信方法,其特征在于,具体包括以下步骤:
1)分别进行证明方、签发方和验证方的初始化;
2)在三方各自初始化后,证明方为获取服务,向验证方发出包含随机数nc的服务请求;
3)验证方收到服务请求后,发送验证方自身数字证书和随机数ns和随机数nV给证明方,证明方接收并采用CA公钥校验验证方的身份,若验证失败,则终止通信,若验证成功,则证明方进入直接匿名认证流程,所述的直接匿名认证流程包括DAA Join阶段、DAA Sign阶段和DAA Verify阶段;
4)验证方通过DAA Verify阶段验证证明方的身份和平台完整性,同时验证方通过解密得到预主密钥并计算会话密钥,并将DAA Verify阶段的结果返回给证明方,证明方在接收到验证结果并确认通过后,进入会话密钥验证阶段,最后进行加密通信。
所述的步骤1)中,初始化具体包括:
为Host部分分发群签名公钥、权威机构CA的公钥、椭圆曲线参数和哈希函数H1和H4,为证明方TPM部分设置临时密钥生成函数PRF、签发方的长期密钥KI并初始化cnt值、设置MAC算法密钥库MК、哈希函数H2和H5,并在TPM中写入DAAseed,存储在NVM中并固化;
为签发方分发一对密钥isk和ipk,设置MAC算法密钥库MК,哈希函数H2,分发TPM的公钥pk,选择群签名私钥(x,y)和公钥(X,Y,P1,P2,G1,G2,q),设置黑名单RogueList,对于黑名单RogueList中的每个元素skT'通过公式Q2=[skT']P1获得Q2,并由Q2组成集合SubRogueList;
为验证方分发椭圆曲线参数,分发签发方的公钥ipk,群签名公钥(X,Y,P1,P2,G1,G2,q),黑名单(RogueList),哈希函数H1、H4、H5
所述的步骤3)中,DAA Join阶段具体包括以下步骤:
301)证明方的Host部分向签发方发送Join请求,请求签发方生成匿名证书;
302)签发方接到Join请求后,在密钥库
Figure GDA0002438820610000031
选取MAC算法的密钥kM,利用公钥pk加密密钥kM得到参数cI,并且签发方选取长度为t个bit的随机数nI,将cI和nI分别发送给证明方的Host和TPM,其中,pk为TPM的私钥sk对应的公钥;
303)TPM接收到cI和nI后,采用临时密钥生成函数PRF(DAAseed||KI||cnt)生成临时密钥skT,同时,TPM利用私钥sk解密cI获得密钥kM,当密钥kM不为密钥群内元素时,通信终止,当密钥kM为密钥群内元素时,TPM生成字符串str,该字符串str由X||Y||nI拼接组合生成,||表示将比特串或字节串进行拼接操作;
304)TPM通过椭圆点乘运算生成临时公钥Q2,即Q2=[skT]P1,其中,[]表示椭圆点乘运算,P1为椭圆曲线有限域G1的基点,skT为点乘系数,TPM从整数集合Zq中随机选取元素u,计算参数U=[u]P1,其中,Zq={0,1,2…,q-1}为模q的最小简化剩余系,且q为素数;
305)TPM分别计算参数v、w和γ,并通过Host将临时公钥Q2、参数v、w、γ和随机数nI发送给签发方,具体计算式为:
v=H2(P1||Q2||U||str)
w=u+v·skT(modq)
Figure GDA0002438820610000032
306)签发方对来自Host的数据进行验证后对临时公钥Q2进行签名,生成DAA证书CerDAA,并将DAA证书CerDAA通过Host发给TPM,具体为:
签发方接收到TPM的数据Q2、v、w、γ和nI,判断接收到的参数nI是否与本地nI值相等,若否,则通信终止,若是,则计算
Figure GDA0002438820610000033
并判断γ是否等于γ′,若否,则通信终止,若是,则计算U′=[w]P1-[v]Q2,并计算v′=H2(P1||Q2||U′||str),判断v是否等于v′,若否,则通信终止,若是,则遍历SubRogueList中的每一个元素Q2′,判断Q2′是否等于Q2,当出现相等时,则终止,否则,选取整数集合Zq的随机数r,采用椭圆点乘运算依次计算A=[r]P1、B=[y]A和C=[x]A+[rxy]Q2,(A,B,C)即DAA证书CerDAA;
307)TPM计算参数D=[skT]B并将参数D传递给Host,Host判断
Figure GDA0002438820610000041
是否等于
Figure GDA0002438820610000042
Figure GDA0002438820610000043
是否等于
Figure GDA0002438820610000044
其中,
Figure GDA0002438820610000045
为双线性映射函数,若相等,则证明签名是来自签发方的CL签名并接受该签名,若不相等,则终止。
所述的步骤3)中,DAA Sign和DAA Verify阶段具体包括以下步骤:
311)Host依据服务类型和证明方数字证书判断签名是否具有可链接性,若不具有可链接性,设连接验证标记bsn为空,并从G1中选取一点J,若具有可链接性,选择之前与同一验证方通信时的所用的bsn,获取H1(bsn),并将H1(bsn)映射到G1中的一个点J上,Host从整数集合Zq中选择随机数l,并分别进行椭圆点乘运算计算R=[l]A,S=[l]B,T=[l]C和W=[l]D;
312)Host获取参数c=H4(R||S||T||W||nV),并将数据(c,J,S,msg,bsn)发送给TPM;
313)TPM接受到Host的数据(c,J,S,msg,bsn),获取K=[skT]J,利用随机数生成器生成预主密钥PMS和一个长度为t个bit的随机数nT,从整数集合Zq中选取一个随机元素rT,并且获取R1=[rT]j、R2=[rT]S;
314)TPM分别获取strs=J||K||bsn||R1||R2、h=H5(c||msg||strs||nT);、s=r+h·skT(modq),并发送PMS、K、h、s、nT到Host;
315)Host利用验证方公钥加密预主密钥PMS得到EPKs(PMS),并将(R,S,T,W,J,K,h,s,nV,nT)组合成签名σ,将数据σ,bsn,msg,EPKs(PMS)发送给验证方;
316)验证方接收到Host的数据,判断证明方是否在黑名单上,若是,则终止,若否,则进行步骤317),具体为:
验证方依次选取在黑名单RogueList中的第一个至最后一个元素作为密钥skT′,计算K’=[skT′]J并判断K’是否等于K,只要出现相等,说明证明方在黑名单上,终止通信;
317)验证方判断证明方的签名是否具有可链接性,判断:如果bsn等于空值,说明不具有可链接性,进入步骤318),若否,则计算H1(bsn)并将其映射到点J’上,若J’=J,则进入步骤318),否则终止通信;
318)验证方判断
Figure GDA0002438820610000046
是否等于
Figure GDA0002438820610000047
是否等于
Figure GDA0002438820610000048
若是,则说明TPM的匿名身份是经过签发方签发认证的,若否,则终止;
319)验证方获取R1′=[s]J-[h]K、R2′=[s]S-[h]W、c′=H4(R||S||T||W||nV),strs′=J||K||bsn||R1′||R2′、h′=H5(c′||msg||strs′||nT),比较h′和h,若相等,则验证通过,说明来自证明方的msg是可信赖的,即msg确实来源于证明方且未被篡改,若不相等,则对msg的签名是不可信赖的,终止通信;
3110)验证方解密EPKs(PMS)得到PMS,由PMS、nc、ns计算会话密钥Session Key;
3111)若远程证明的结果是正确的,握手协议通过TLS规范中的消息ChangeCipherSpec和Finished消息来验证会话密钥协商是否成功,若会话密钥协商成功,则验证方将数据加密传输给证明方以提供服务。
与现有技术相比,本发明具有以下优点:
1、在汽车远程直接匿名证明过程中,使用椭圆曲线加密(ECC)算法替代原有的RSA加密算法,具有更快的速度。
2、在汽车远程直接匿名证明过程中,在汽车内部增加一块可信平台模块(TPM或TCM)用于完整性检验、签名和验签、以及密钥的保管,实现了更快速或更安全的计算。
3、将远程直接匿名证明过程和密钥协商过程相结合,提高了通信的效率。
附图说明
图1为基于DAA的网联汽车远程匿名服务流程和系统图。
图2为DAA Join流程图。
图3为DAA Sign,DAA Verify和密钥协商流程图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。
本发明提供一种基于椭圆曲线加密和直接匿名认证的网联汽车远程匿名服务方法,该方法由证明方,匿名证书签发方和验证方三方参加而完成,即:
证明方,其包括Host部分和TPM(或TCM)芯片部分,本发明以TPM为例,证明方在本发明中指汽车,具体可以是车机(连接有远程通信模块)或网关控制器(连接有远程通信模块)。其证书即DAA证书可实现汽车的匿名性,以保护云服务中汽车驾驶员的身份和数据隐私;
签发方,是在汽车请求远程服务时对其进行DAA签名、并生成汽车DAA证书的实体,比如由汽车OEM制造商充当或者由交管部门充当。由汽车OEM制造商充当时,汽车中TPM的唯一ID和车主身份的映射表由OEM厂商安全地保管,仅在必要时使用;
验证方,是提供远程服务的一方,其证书是实名的,证书满足X.509格式。它在提供服务时,需要先验证匿名汽车的真实性和平台完整性,然后通过会话密钥加密数据传输给汽车以提供服务。
本发明的具体方法步骤如下:
(1)在三方各自初始化后,证明方为获取服务,向验证方发出包含随机数nc的服务请求并开启双向身份验证和密钥协商流程;
证明方向验证方发送包含随机数nc的Hello消息以请求服务,验证方返回自己的证书和随机数ns,随机数nc和ns都是为了生成会话密钥;
(2)验证方收到请求后返回自身证书和随机数ns,证明方接收并校验验证方的证书,校验通过后证明方进入直接匿名认证(DAA)流程,此流程包括DAA Join、DAA Sign和DAAVerify共3个阶段,且后两个阶段包含密钥协商相关计算;
证明方接收到验证方的证书后,用事先存有的CA公钥进行验证。若验证成功,则进入直接匿名认证(DAA)流程;若验证失败,说明验证方身份是虚假的不可信的,通信终止;
证明方进入的直接匿名认证流程中,DAA Join阶段包括证明方向签发方发送Join请求,签发方进行CL群签名并返回签名证书CerDAA,证明方验证签名证书CerDAA等操作。Join请求的待签名的公钥生成以及CL群签名操作都借助ECC(椭圆曲线加密)来实现。
直接匿名认证流程中,DAA sign阶段通过证明方的Host部分和TPM部分(本发明以TPM为例子)协助生成对消息msg的CL群签名。此签名借助ECC(椭圆曲线加密)来实现。同时此步骤包括证明方生成预主密钥和会话密钥,将预主密钥利用验证方公钥加密得密文,将预主密钥密文,msg的签名σ、消息msg和基名bsn一起发送给验证方。
bsn由证明方依据验证方的服务类型选定,可以是空值,也可以是固定值。bsn作用是用来实现证明方的可链接的匿名性。如果是空值,那么本发明的方法可以实现证明方的不可链接的匿名性。如果对于某类型服务bsn是固定值,那么本发明的方法可以实现证明方的可链接的匿名性。这里的可链接是指,验证方可以鉴别针对多个msg的签名是否来自同一个证明方,但验证方仍然不能获知证明方的真实身份。
msg是证明方想要向验证方背书的内容,在网联汽车访问远程服务的背景下是指证明方的Host部分的平台完整性,具体来说是指对Host某一程序的完整性度量得到的Hash值。
直接匿名认证流程中,DAA verify阶段包括验证方验证证明方的临时密钥,bsn,CerDAA和msg的签名σ等的有效性,解密预主密钥和生成会话密钥,以及将上述验证结果返回给证明方。
(3)验证方通过DAA Verify这一阶段验证证明方的身份和平台完整性,同时验证方通过解密得到预主密钥并计算会话密钥,并将DAA Verify的结果返回给证明方;证明方接收到验证结果并确认通过后,进入会话密钥验证阶段,最后进行加密通信;
证明方进入会话密钥验证阶段是指证明方通过ChangeCipherSpec和Finished消息与验证方进行握手,验证会话密钥是否一致。
实施例:
本发明涉及的系统包含3方,分别是证明方(Prover)、签发方(Issuer)和验证方(Verifier)。其中证明方指代汽车,具体可以是车机或网关控制器,包括Host部分和TPM(或TCM)部分;签发方是匿名证书的签发方,比如汽车OEM厂商或交管部门等;验证方是指远程服务提供商。
本发明在汽车首次进行远程证明和接受远程服务之前,要进行三方的初始化,具体为:
为证明方的Host分发群签名公钥(X,Y,P1,P2,G1,G2,q)、权威机构CA的公钥,椭圆曲线参数Param(a,b,q,g),哈希函数H1、H4等;
为证明方的TPM(以下简称TPM)设置临密钥生成函数PRF,签发方的长期密钥KI并初始化cnt值;在TPM中写入DAAseed,存储在NVM中并固化;为TPM设置MAC算法密钥库
Figure GDA0002438820610000071
(使用MAC算法相比于Hash算法除了实现完整性,还能实现身份的可鉴别性),哈希函数H2、H5等。
初始化时,具体地,为签发方分发一对密钥:isk和ipk;设置MAC算法密钥库
Figure GDA0002438820610000072
哈希函数H2;分发TPM的公钥pk(这个公钥是和TPM一一对应的长期密钥对的公钥);选择群签名私钥(x,y)和公钥(X,Y,P1,P2,G1,G2,q);设置黑名单(RogueList),对每一个元素skT'∈RogueList,利用ECC算法计算对应的Q2=[skT']P1,Q2的集合组成SubRogueList。
初始化时,具体地,为验证方分发椭圆曲线参数Param(a,b,q,g);分发签发方的公钥ipk,群签名公钥(X,Y,P1,P2,G1,G2,q),黑名单(RogueList),哈希函数H1、H4、H5等。
本发明,首先证明方的Host部分(以下简称Host)依照TLS协议向验证方发送ClientHello消息,此消息包含证明方的TPM部分(以下简称TPM)产生的随机数nc和支撑的密码套件等消息。
验证方接收到消息后,发出包含Server随机数ns的ServerHello消息,X.509格式的验证方的数字证书,以及一个长度为t个bit的随机数nV。其中ns用于会话密钥协商,nV参与对消息msg的群签名运算。
步骤21:Host收到验证方的证书,利用CA公钥验证验证方(远程服务端)的身份。若验证成功,则进行直接匿名认证(DAA)流程;若验证失败,说明验证方身份是虚假的不可信的,通信终止。
DAA Join阶段的流程详见附图2。
Host向签发方发送Join请求,请求签发方进入匿名证书生成步骤。
步骤22:签发方接到请求后,在密钥库
Figure GDA0002438820610000081
选取MAC算法的密钥kM,利用pk加密kM得到cI,其中pk是TPM的私钥sk对应的公钥。
签发方选取长度为t个bit的nI,将cI和nI发送给Host和TPM。
步骤23:TPM接收到cI和nI,利用临时密钥生成函数PRF(DAAseed||KI||cnt)生成临时密钥skT
TPM利用sk解密cI得kM,如果kM不是密钥群内元素,则通信终止。如果kM是密钥群内元素,则进行下一步计算。
TPM生成字符串str,字符串由X||Y||nI组合生成。||表示将比特串或字节串进行拼接。
步骤24:TPM生成Q2,Q2=[skT]P1;其中[skT]P1表示椭圆点乘运算,P1表示椭圆曲线有限域G1的基点,skT表示点乘系数,这一运算的结果仍为椭圆上的一点。
TPM从整数集合Zq中随机选取u,计算U=[u]P1;Zq={0,1,2…,q-1}是模q的最小简化剩余系,其中q为素数。
步骤25:
TPM计算v=H2(P1||Q2||U||str);计算w=u+v·skT(modq);
TPM计算
Figure GDA0002438820610000091
TPM通过Host将Q2、v、w、γ和nI发送给签发方。
步骤26:
签发方对来自TPM的数据先进行验证,然后对临时公钥Q2进行签名,生成匿名证书CerDAA.
签发方接收到TPM的数据Q2、v、w、γ和nI,首先判断接收的nI是否等于本地nI,如果相等,进行下一步计算;否则,通信终止。
签发方计算
Figure GDA0002438820610000092
判断γ是否等于γ′,如果相等,进行下一步计算;否则通信终止。
签发方计算U′=[w]P1-[v]Q2;计算v′=H2(P1||Q2||U′||str),判断v是否等于v′,如果相等,进行下一步计算;否则通信终止。
签发方遍历SubRogueList中的每一个元素Q2’,判断Q2’是否等于Q2。只要出现相等,程序终止;否则,进行下一步计算。这一步间接判断TPM的临时密钥skT是否是黑名单RogueList上的无效密钥。
签发方选取整数集合Zq的随机数r,采用椭圆曲线加密依次计算A=[r]P1;B=[y]A;C=[x]A+[rxy]Q2;(A,B,C)即是DAA证书CerDAA。
签发方将证明方的证书(A,B,C)发送给Host,最后发给TPM.
步骤27:TPM计算D=[skT]B;将D传递给Host;
Host进行计算
Figure GDA0002438820610000093
是否等于
Figure GDA0002438820610000094
是否等于
Figure GDA0002438820610000095
如果相等,说明签名是来自签发方的CL签名;如果不相等,则程序终止。上述判断采用了双线性映射的原理。这是CL群签名算法所依赖的数学理论之一。
DAA Sign和DAA Verify阶段的流程详见附图3。
步骤31:Host依据服务类型和证明方数字证书判断签名是否需要可链接性。如果不具有可链接性,设bsn(Base Name,它是证明方对某一验证方的标记)为空,从G1中选取一点J;如果具有可链接性,选择之前与同一验证方通信时的所用的bsn,计算H1(bsn),并将H1(bsn)映射到G1中的一个点J上。
Host从Zq中选择随机数l,计算R=[l]A;S=[l]B;T=[l]C;W=[l]D;
步骤32:Host计算c=H4(R||S||T||W||nV);
Host将(c,J,S,msg,bsn)发送给TPM。比如msg是对Host的操作系统某段代码度量后的Hash值,则TPM接下来就对操作系统完整性度量进行CL签名。
步骤33:TPM接受到Host的数据(c,J,S,msg,bsn),然后计算K=[skT]J;
TPM利用随机数生成器生成预主密钥PMS和一个长度为t个bit的随机数nT;之后从Zq中选取一个随机元素rT
TPM计算R1=[rT]J;R2=[rT]S;
步骤34:TPM计算:strs=J||K||bsn||R1||R2;计算h=H5(c||msg||strs||nT);
TPM计算:s=r+h·skT(modq);发送PMS,K,h,s,nT给Host。
步骤35:Host利用验证方公钥加密预主密钥PMS得到EPKs(PMS)。
Host将(R,S,T,W,J,K,h,s,nV,nT)组合成签名σ,将σ,bsn,msg,EPKs(PMS)发送给验证方。
验证方接收到Host的数据,进入步骤36:验证方判断证明者(Prover)是否在黑名单上。验证方依次选取在黑名单RogueList中的第一个至最后一个元素作为密钥skT′,计算K’=[skT′]J并判断K’是否等于K:只要出现相等,说明证明者(Prover)在黑名单上,程序终止;所有都不相等,则进行下一步计算。
步骤37:验证方判断证明者的签名是否具有可链接性。判断:如果bsn等于空值,说明不具有可链接性,进入步骤38;否则计算H1(bsn)并映射到点J’上,如果J’=J则进入步骤38;否则,程序终止。
步骤38:验证方判断
Figure GDA0002438820610000101
是否等于
Figure GDA0002438820610000102
是否等于
Figure GDA0002438820610000103
如果验证通过,说明TPM的匿名身份是经过签发方签发认证的。否则,程序终止。
步骤39:验证方计算R1’=[s]J-[h]K;R2’=[s]S-[h]W;
验证方计算c′=H4(R||S||T||W||nV),strs′=J||K||bsn||R1′||R2′;
验证方计算h′=H5(c′||msg||strs′||nT)。比较h′和h。如果相等,验证通过,说明来自证明方的msg是可信赖的,即msg确实来源于证明方且未被篡改。否则,对msg的签名是不可信赖的,程序终止。
步骤310:验证方解密EPKs(PMS)得到PMS,由PMS、nc、ns计算会话密钥得到SessionKey。
验证方将远程验证结果返回给证明方。至此DAA Verify阶段结束。
步骤311:如果远程证明的结果是正确的。握手协议通过ChangeCipherSpec和Finished消息来验证会话密钥协商是否成功。
如果会话密钥协商成功,则验证方(即远程服务提供方)可以将数据加密传输给证明方(即汽车)以提供服务。

Claims (3)

1.一种网联汽车远程匿名签发验证通信系统,其特征在于,包括:
证明方:为汽车,包括Host部分和可信平台模块TPM芯片部分,证明方的直接匿名认证DAA证书用以实现汽车的匿名性,以保护云服务中汽车驾驶员的身份和数据隐私;
签发方:为在证明方请求远程服务时对其进行直接匿名认证DAA签名、并生成证明方的直接匿名认证DAA证书的实体;
验证方:用以提供远程服务,其证书为实名证书,且证书满足X.509格式,在提供服务时,需要先验证匿名汽车的真实性和平台完整性,然后通过会话密钥加密数据传输给汽车以提供服务;
应用网联汽车远程匿名签发验证通信系统的网联汽车远程匿名签发验证通信方法,具体包括以下步骤:
1)分别进行证明方、签发方和验证方的初始化,初始化具体包括:
为Host部分分发群签名公钥、权威机构CA的公钥、椭圆曲线参数和哈希函数H1和H4,为证明方可信平台模块TPM部分设置临时密钥生成函数PRF、签发方的长期密钥KI并初始化生成DAA私钥的计数器值cnt值、设置MAC算法密钥库
Figure FDA0002438820600000011
哈希函数H2和H5,并在可信平台模块TPM中写入生成DAA私钥的种子DAAseed,存储在TPM的非易失性存储器NVM中并固化;
为签发方分发一对密钥isk和ipk,设置MAC算法密钥库
Figure FDA0002438820600000012
哈希函数H2,分发可信平台模块TPM的公钥pk,选择群签名私钥(x,y)和公钥(X,Y,P1,P2,G1,G2,q),设置黑名单RogueList,对于黑名单RogueList中的每个元素skT'通过公式Q2=[skT']P1获得Q2,并由Q2组成集合SubRogueList;
为验证方分发椭圆曲线参数,分发签发方的公钥ipk,群签名公钥(X,Y,P1,P2,G1,G2,q),黑名单RogueList,哈希函数H1、H4、H5
2)在三方各自初始化后,证明方为获取服务,向验证方发出包含随机数nc的服务请求;
3)验证方收到服务请求后,发送验证方自身数字证书和随机数ns和随机数nV给证明方,证明方接收并采用CA公钥校验验证方的身份,若验证失败,则终止通信,若验证成功,则证明方进入直接匿名认证流程,所述的直接匿名认证流程包括DAA Join阶段、DAA Sign阶段和DAA Verify阶段;
DAA Join阶段具体包括以下步骤:
301)证明方的Host部分向签发方发送Join请求,请求签发方生成匿名证书;
302)签发方接到Join请求后,在密钥库
Figure FDA0002438820600000021
选取MAC算法的密钥kM,利用公钥pk加密密钥kM得到参数cI,并且签发方选取长度为t个bit的随机数nI,将cI和nI分别发送给证明方的Host和TPM,其中,pk为可信平台模块TPM的私钥sk对应的公钥;
303)可信平台模块TPM接收到cI和nI后,采用临时密钥生成函数PRF(DAAseed||KI||cnt)生成临时密钥skT,同时,可信平台模块TPM利用私钥sk解密cI获得密钥kM,当密钥kM不为密钥群内元素时,通信终止,当密钥kM为密钥群内元素时,可信平台模块TPM生成字符串str,该字符串str由X||Y||nI拼接组合生成,||表示将比特串或字节串进行拼接操作;
304)可信平台模块TPM通过椭圆点乘运算生成临时公钥Q2,即Q2=[skT]P1,其中,[]表示椭圆点乘运算,P1为椭圆曲线有限域G1的基点,skT为点乘系数,可信平台模块TPM从整数集合Zq中随机选取元素u,计算参数U=[u]P1,其中,Zq={0,1,2…,q-1}为模q的最小简化剩余系,且q为素数;
305)可信平台模块TPM分别计算参数v、w和γ,并通过Host将临时公钥Q2、参数v、w、γ和随机数nI发送给签发方,具体计算式为:
v=H2(P1||Q2||U||str)
w=u+v·skT(mod q)
Figure FDA0002438820600000022
306)签发方对来自Host的数据进行验证后对临时公钥Q2进行签名,生成DAA证书CerDAA,并将DAA证书CerDAA通过Host发给可信平台模块TPM,具体为:
签发方接收到可信平台模块TPM的数据Q2、v、w、γ和nI,判断接收到的参数nI是否与本地nI值相等,若否,则通信终止,若是,则计算
Figure FDA0002438820600000023
Figure FDA0002438820600000024
并判断γ是否等于γ′,若否,则通信终止,若是,则计算U′=[w]P1-[v]Q2,并计算v′=H2(P1||Q2||U′||str),判断v是否等于v′,若否,则通信终止,若是,则遍历SubRogueList中的每一个元素Q2′,判断Q2′是否等于Q2,当出现相等时,则终止,否则,选取整数集合Zq的随机数r,采用椭圆点乘运算依次计算A=[r]P1、B=[y]A和C=[x]A+[rxy]Q2,(A,B,C)即DAA证书CerDAA;
307)可信平台模块TPM计算参数D=[skT]B并将参数D传递给Host,Host判断
Figure FDA0002438820600000031
是否等于
Figure FDA0002438820600000032
Figure FDA0002438820600000033
是否等于
Figure FDA0002438820600000034
其中,
Figure FDA0002438820600000035
为双线性映射函数,若相等,则证明签名是来自签发方的CL签名并接受该签名,若不相等,则终止;
DAA Sign和DAA Verify阶段具体包括以下步骤:
311)Host依据服务类型和证明方数字证书判断签名是否具有可链接性,若不具有可链接性,设连接验证标记bsn为空,并从G1中选取一点J,若具有可链接性,选择之前与同一验证方通信时的所用的bsn,获取H1(bsn),并将H1(bsn)映射到G1中的一个点J上,Host从整数集合Zq中选择随机数l,并分别进行椭圆点乘运算计算R=[l]A,S=[l]B,T=[l]C和W=[l]D;
312)Host获取参数c=H4(R||S||T||W||nV),并将数据(c,J,S,msg,bsn)发送给可信平台模块TPM;
313)可信平台模块TPM接受到Host的数据(c,J,S,msg,bsn),获取K=[skT]J,利用随机数生成器生成预主密钥PMS和一个长度为t个bit的随机数nT,从整数集合Zq中选取一个随机元素rT,并且获取R1=[rT]J、R2=[rT]S;
314)可信平台模块TPM分别获取strs=J||K||bsn||R1||R2、h=H5(c||msg||strs||nT);、s=r+h·skT(mod q),并发送PMS、K、h、s、nT到Host;
315)Host利用验证方公钥加密预主密钥PMS得到EPKs(PMS),并将(R,S,T,W,J,K,h,s,nV,nT)组合成签名σ,将数据σ,bsn,证明方背书的消息msg,EPKs(PMS)发送给验证方;
316)验证方接收到Host的数据,判断证明方是否在黑名单上,若是,则终止,若否,则进行步骤317),具体为:
验证方依次选取在黑名单RogueList中的第一个至最后一个元素作为密钥skT′,计算K’=[skT′]J并判断K’是否等于K,只要出现相等,说明证明方在黑名单上,终止通信;
317)验证方判断证明方的签名是否具有可链接性,判断:如果bsn等于空值,说明不具有可链接性,进入步骤318),若否,则计算H1(bsn)并将其映射到点J’上,若J’=J,则进入步骤318),否则终止通信;
318)验证方判断
Figure FDA0002438820600000041
是否等于
Figure FDA0002438820600000042
Figure FDA0002438820600000043
是否等于
Figure FDA0002438820600000044
若是,则说明可信平台模块TPM的匿名身份是经过签发方签发认证的,若否,则终止;
319)验证方获取R1′=[s]J-[h]K、R2′=[s]S-[h]W、c′=H4(R||S||T||W||nV),strs′=J||K||bsn||R1′||R2′、h′=H5(c′||msg||strs′||nT),比较h′和h,若相等,则验证通过,说明来自证明方背书的消息msg是可信赖的,即证明方背书的消息msg确实来源于证明方且未被篡改,若不相等,则对证明方背书的消息msg的签名是不可信赖的,终止通信;
3110)验证方解密EPKs(PMS)得到PMS,由PMS、nc、ns计算会话密钥Session Key;
3111)若远程证明的结果是正确的,握手协议通过TLS规范中的消息ChangeCipherSpec和Finished消息来验证会话密钥协商是否成功,若会话密钥协商成功,则验证方将数据加密传输给证明方以提供服务;
4)验证方通过DAA Verify阶段验证证明方的身份和平台完整性,同时验证方通过解密得到预主密钥并计算会话密钥,并将DAA Verify阶段的结果返回给证明方,证明方在接收到验证结果并确认通过后,进入会话密钥验证阶段,最后进行加密通信。
2.根据权利要求1所述的一种网联汽车远程匿名签发验证通信系统,其特征在于,所述的证明方具体为连接有远程通信模块的车机或连接有远程通信模块的网关控制器。
3.根据权利要求1所述的一种网联汽车远程匿名签发验证通信系统,其特征在于,所述的签发方具体为汽车OEM制造商,汽车中可信平台模块TPM的唯一ID和车主身份的映射表由OEM厂商安全地保管。
CN201810765073.8A 2018-07-12 2018-07-12 一种网联汽车远程匿名签发验证通信系统 Active CN109005035B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810765073.8A CN109005035B (zh) 2018-07-12 2018-07-12 一种网联汽车远程匿名签发验证通信系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810765073.8A CN109005035B (zh) 2018-07-12 2018-07-12 一种网联汽车远程匿名签发验证通信系统

Publications (2)

Publication Number Publication Date
CN109005035A CN109005035A (zh) 2018-12-14
CN109005035B true CN109005035B (zh) 2020-07-28

Family

ID=64599649

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810765073.8A Active CN109005035B (zh) 2018-07-12 2018-07-12 一种网联汽车远程匿名签发验证通信系统

Country Status (1)

Country Link
CN (1) CN109005035B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108038394B (zh) * 2017-12-11 2021-04-30 北京北大众志微系统科技有限责任公司 一种基于碳硅融合技术的加解密芯片
CN109766716A (zh) * 2018-12-26 2019-05-17 东南大学 一种基于可信计算的匿名双向认证方法
CN109714759A (zh) * 2018-12-27 2019-05-03 浙江合众新能源汽车有限公司 一种安全的汽车ota服务方法及服务系统
CN109819049B (zh) * 2019-02-28 2021-12-14 钛马信息网络技术有限公司 远程控制车辆的方法、系统及装置
CN112688782B (zh) * 2019-10-17 2023-09-08 华为技术有限公司 一种组合式设备的远程证明方法及设备
CN110929266B (zh) * 2019-11-29 2021-09-03 广州小鹏汽车科技有限公司 基于安全加固架构的系统、加解密方法、车联网终端和车辆
CN111245869B (zh) * 2020-04-24 2020-09-04 南京畅洋科技有限公司 一种信息物理系统中的跨域匿名认证方法
CN111741008B (zh) * 2020-07-08 2020-12-04 南京红阵网络安全技术研究院有限公司 一种基于拟态防御原理的双向匿名认证系统及方法
IL275954A (en) * 2020-07-09 2022-02-01 Google Llc Anonymous event confirmation with group signatures
CN114006691B (zh) * 2020-07-13 2023-02-28 华为技术有限公司 远程证明的方法和装置
CN116049826B (zh) * 2022-06-09 2023-10-13 荣耀终端有限公司 基于tpm的数据保护方法、电子设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105847235A (zh) * 2016-03-14 2016-08-10 安徽大学 一种车联网环境下基于身份的高效匿名批认证方法
CN105871831A (zh) * 2016-03-28 2016-08-17 江苏大学 一种车载网中数据分片下载服务方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106330910B (zh) * 2016-08-25 2019-07-19 重庆邮电大学 车联网中基于节点身份和信誉的强隐私保护双重认证方法
CN107835077B (zh) * 2017-09-22 2020-10-02 中国人民解放军国防科技大学 一种面向车载网匿名认证的互信簇协同验证方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105847235A (zh) * 2016-03-14 2016-08-10 安徽大学 一种车联网环境下基于身份的高效匿名批认证方法
CN105871831A (zh) * 2016-03-28 2016-08-17 江苏大学 一种车载网中数据分片下载服务方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Privacy-Enhanced Capabilities for VANETs using Direct Anonymous Attestation;Jorden Whitefield 等;《2017 IEEE Vehicular Networking Conference》;20180201;正文第123-129页 *

Also Published As

Publication number Publication date
CN109005035A (zh) 2018-12-14

Similar Documents

Publication Publication Date Title
CN109005035B (zh) 一种网联汽车远程匿名签发验证通信系统
US11323276B2 (en) Mutual authentication of confidential communication
CN107948189B (zh) 非对称密码身份鉴别方法、装置、计算机设备及存储介质
US10313133B2 (en) Secure communications providing forward secrecy
JP5205398B2 (ja) 鍵認証方式
CN108989054B (zh) 一种密码系统及数字签名方法
US9240884B2 (en) Method and apparatus for verifiable generation of public keys
CN111342973B (zh) 一种安全的pki与ibc之间的双向异构数字签名方法
CN107659395B (zh) 一种多服务器环境下基于身份的分布式认证方法及系统
US9705683B2 (en) Verifiable implicit certificates
EP2173055A1 (en) A method, a system, a client and a server for key negotiating
JPH10133576A (ja) 公開鍵暗号方法および装置
CN112104453B (zh) 一种基于数字证书的抗量子计算数字签名系统及签名方法
US11777743B2 (en) Method for securely providing a personalized electronic identity on a terminal
TWI608722B (zh) Public key certificate method
CN111355582A (zh) 基于sm2算法的两方联合签名和解密的方法及系统
CN109995723B (zh) 一种域名解析系统dns信息交互的方法、装置及系统
JPH10240826A (ja) 電子契約方法
CN113779593A (zh) 一种基于身份的双服务器授权密文等值判定方法
TWI576779B (zh) Method and Method of Payment Authentication System for Internet of Things
CN114584321B (zh) 一种基于puf器件的数据信息加密部署方法
KR100917564B1 (ko) Id 기반 티켓인증방법
CN112533213B (zh) 一种密钥协商方法、装置、终端及存储介质
CN117353997A (zh) 一种数据处理方法、装置、系统及电子设备
CN117499032A (zh) 一种通信方法、装置、设备及存储介质

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
GR01 Patent grant
GR01 Patent grant