,所述收到来自实体B的包括Na| Nb CertB Qb SigB的第二身份鉴别消息后,检查第二身份鉴别消息中字段数据的正确性,包括: 检查收到的所述第二身份鉴别消息中的随机数Na是否与自己发送给实体B的随机数Na 一致,若不一致,则验证不正确; 检查收到的所述第二身份鉴别消息中CertB的有效性,若无效,则验证不正确; 利用实体B的公钥CPb验证SigB,检查实体B是否合法,若不合法,则验证不正确,其中,实体B的公钥CPb包含在实体B的证书CertB中; 其中,任何一项验证不正确,则认为对收到的Na| Nb CertB Qb验证结果不正确。6.一种实体A与实体B进行实体鉴别时,实体B的工作方法,其特征在于,所述方法包括如下步骤: 收到来自实体A的包括Na| CertA的第一身份鉴别消息后,检查第一身份鉴别消息中证书&1^的有效性,若证书无效,则终止鉴别;产生随机数Nb,利用自身的私钥CSb和临时公钥Qb计算数字签名SigB=SIG(CSB,IDa| IDb Na Nb Qb),向实体A发送包括NaI Nb CertB Qb SigB的第二身份鉴别消息,其中CertB为证书; 接收到来自实体A的包括Na I Nb |Qa| SigA |MacTagA第三身份鉴别消息后,检查第三身份鉴别消息中字段数据的正确性,若验证不正确,则终止鉴别; 检查是否已存储有实体A的临时公钥Qa,若已存储有Qa,则使用已存储的Qa,否则检查收到的第三身份鉴别消息中的Qa的有效性,如果有效,则使用收到的第三身份鉴别消息中的Qa,如果无效,则终止鉴别; 基于ECDH密钥交换协议,利用事先产生的临时私钥dB和实体A的临时公钥算秘密信息z=f (dB,Qa),如果计算出错,则终止鉴别,否则,将计算出的秘密信息z转换为字符串Z,并计算密钥 MK=KDF (Na,Nb, Z, IDa, IDb),计算消息鉴别码 MacTagA=MACl (MK, IDa, IDb, Qa, Qb),并与收到的实体A发送的第三身份鉴别消息中的行比较,如果不相等,则终止鉴别;否则,认为实体A合法,并计算消息鉴别码MacTagB=MACl (MK, IDb, IDa, Qb, Qa),将包括MacTagB的第四身份鉴别消息发送给实体A ; 其中,SIG为一种数字签名算法,IDa为实体A的身份标识,IDb为实体B的身份标识,f为一种密钥计算函数,KDF为一种密钥推导算法,MACl为一种消息鉴别码计算方法。7.如权利要求6所述的方法,其特征在于,所述收到来自实体A的包括Na| Nb |Qa| SigA| |MacTagA第三身份鉴别消息后,检查第三身份鉴别消息中字段数据的正确性,包括: 检查收到的所述第三身份鉴别消息中的随机数Na是否与上一次收到的随机数Na—致,若不一致,则验证不正确; 检查收到的所述第三身份鉴别消息中的随机数Nb是否与自己发送给实体A的随机数Nb 一致,若不一致,则验证不正确; 利用实体A的公钥CPa验证SigA,检查实体A是否合法,若不合法,则验证不正确,其中,实体A的公钥CPa包含在实体A的证书CertA中; 其中,任何一项验证不正确,则认为对收到的Na| Nb |Qa| SigA |MacTagA的验证结果不正确。8.一种装置,用于与另一装置进行实体鉴别,所述装置包括存储单元、处理单元及收发单元,其特征在于: 存储单元用于存储所述装置的证书CertA、私钥CSa ; 处理单元用于产生随机数Na、临时私钥dA和临时公钥Qa ; 收发单元用于向所述另一装置发送包括Na| I &1^的第一身份鉴别消息;还用于接收所述另一装置发送的包括NaI INb CertJ IqbI sigB的第二身份鉴别消息; 处理单元还用于对收到的来自所述另一装置的包括乂| INb CertJ IqbI IsigJ^第二身份鉴别消息进行检查,若验证不正确,则终止鉴别; 处理单元还用于利用私钥CSa和临时公钥Qa计算数字签名SigA=SIG(CSA,IDaI | IDb Nanb |qa); 处理单元还用于检查是否已存储有所述另一装置的临时公钥Qb,若已存储有Qb,则使用已存储的Qb,否则检查收到的第二身份鉴别消息中的Qb的有效性,如果有效,则使用收到的第二身份鉴别消息中的Qb,如果无效,则终止鉴别; 处理单元还用于基于ECDH密钥交换协议,利用dA和所述另一装置的临时公钥Qb计算秘密信息z=f (dA,Qb),计算正确时将计算出的秘密信息z转换为字符串Z,计算密钥MK=KDF (Na, Nb, Z, IDa, IDb),计算消息鉴别码 MacTagA=MACl (MK, IDa, IDb, Qa, Qb); 收发单元还用于向所述另一装置发送包括NaI InJ IqaI SigA| IMacTagJ^第三身份鉴别消息,并用于接收所述另一装置发送的包括MacTagB的第四身份鉴别消息; 处理单元还用于计算MacTag13=MACl (MK, IDb, IDa, Qb, Qa),然后将计算得到的MacTag13与所述另一装置发来的MacTagB进行比较,如果相等,则认为所述另一装置身份合法; 其中,SIG为一种数字签名算法,IDa为所述装置的身份标识,IDb为所述另一装置的身份标识,f为一种密钥计算函数,KDF为一种密钥推导算法,MACl为一种消息鉴别码计算方法。9.如权利要求9所述的装置,其特征在于,所述的处理单元还用于对收到的来自所述另一装置的包括NaI Inb CertJ |qb| sigB的第二身份鉴别消息进行检查,包括: 处理单元检查收到的所述第二身份鉴别消息中的随机数Na是否与自己发送给所述另一装置的随机数Na—致,若不一致,则验证不正确; 处理单元检查收到的所述第二身份鉴别消息中CertB的有效性,若无效,则验证不正确; 处理单元利用所述另一装置的公钥CPb验证SigB,检查所述另一装置是否合法,若不合法,则验证不正确,其中,所述另一装置的公钥CPb包含在所述另一装置的证书CertB中;其中,任何一项验证不正确,则认为对收到的Na| Nb CertB Qb验证结果不正确。10.一种装置,用于与另一装置进行实体鉴别,所述装置包括存储单元、处理单元及收发单元,其特征在于: 存储单元用于存储所述装置的证书CertB、私钥CSb ; 处理单元用于产生随机数Nb、临时私钥dB和临时公钥Qb ;收发单元用于接收来自所述另一装置的包括Na| CertA的发送的第一身份鉴别消息;处理单元用于检查收到的来自所述另一装置的第一身份鉴别消息中证书&1^的有效性,若证书无效,则终止鉴别,还用于利用私钥CSb和临时公钥Qb计算数字签名sigB=siG (csB,ida| |idb| |na| nb |qb); 收发单元还用于向所述另一装置发送包括NaI Inb CertJ IqbI |51而的第二身份鉴别消息,并用于接收所述另一装置发送的包括NaI Inb IqaI SigJ |MacTagA的第三身份鉴别消息; 处理单元还用于对收到的包括乂I InbI IqaI sigA| |MacTagA的第三身份鉴别消息进行检查,若验证不正确,则终止鉴别; 处理单元还用于检查是否已存储有所述另一装置的临时公钥Qa,若已存储有Qa,则使用已存储的Qa,否则检查收到的第三身份鉴别消息中的Qa的有效性,如果有效,则使用收到的第三身份鉴别消息中的Qa,如果无效,则终止鉴别; 处理单元还用于基于ECDH密钥交换协议,利用临时私钥4和所述所述另一装置的临时公钥Qa计算秘密信息z=f (dB, Qa),计算正确时将计算出的秘密信息Z转换为字符串Z,并计算密钥 MK=KDF(Na,Nb, Z, IDa, IDb),计算消息鉴别码 MacTagA=MACl (MK, IDa, IDb, Qa, Qb),然后将计算得到的MacTagA与所述另一装置发来的MacTagA进行比较,如果相等,则认为所述另一装置身份合法,并计算消息鉴别码MacTagB=MACl (MK, IDb, IDa, Qb, Qa); 收发单元还用于向所述另一装置发送包括MacTagB的第四身份鉴别消息; 其中,SIG为一种数字签名算法,IDa为所述另一装置的身份标识,IDb为所述装置的身份标识,f为一种密钥计算函数,KDF为一种密钥推导算法,MACl为一种消息鉴别码计算方法。11.如权利要求10所述的装置,其特征在于,所述处理单元还用于对收到的来自所述另一装置的包括Na I Nb IqaI SigA I MacTagA的第三身份鉴别消息进行检查,包括: 处理单元检查收到的所述第三身份鉴别消息中的随机数Na是否与上一次收到的随机数Na —致,若不一致,则验证不正确; 处理单元检查收到的所述第三身份鉴别消息中的随机数Nb是否与自己发送给所述另一装置的随机数Nb—致,若不一致,则验证不正确; 处理单元利用所述另一装置的公钥CPa验证SigA,检查所述另一装置是否合法,若不合法,则验证不正确,其中,所述另一装置的公钥CPa包含在所述另一装置的证书CertA中;其中,任何一项验证不正确,则认为对收到的Na| Nb |Qa| SigA |MacTagA的验证结果不正确。12.如权利要求1-11中任意一项所述的方法或装置,其特征在于,所述第一身份鉴别消息是利用ACT_REQ协议数据单元进行封装后传输的,所述第二身份鉴别消息是利用ACT_RES协议数据单元进行封装后传输的,所述第三身份鉴别消息是利用VFY_REQ协议数据单元进行封装后传输的,所述第四身份鉴别消息是利用VFY_RES协议数据单元进行封装后传输的,其中,ACT_REQ、ACT_RES、VFY_REQ 及 VFY_RES 是符合标准 ISO/IEC13157-1 定义的协议数据单元格式。
【专利摘要】本发明公开一种实体鉴别方法和装置,涉及:实体A向实体B发送第一身份鉴别消息,实体B收到第一身份鉴别消息后检查实体A证书的有效性,实体B向实体A发送第二身份鉴别消息,实体A收到第二身份鉴别消息后检查其中字段数据的正确性,实体A利用自身的私钥和实体B的临时公钥计算秘密信息和消息鉴别码并发送第三身份鉴别消息给实体B,实体B收到第三身份鉴别消息后检查其中字段数据的正确性,实体B利用自身的私钥和实体A的临时公钥计算秘密信息和消息鉴别码并发送第四身份鉴别消息给实体A,实体A接收第四身份鉴别消息并检查实体B的合法性。本发明为包括NFC设备在内的空口通信设备提供身份鉴别机制,保证通信双方身份的合法性和真实性。
【IPC分类】H04L29/06, H04B5/00, H04L9/32
【公开号】CN104954130
【申请号】CN201410126328
【发明人】胡亚楠, 杜志强, 李琴, 李明
【申请人】西安西电捷通无线网络通信股份有限公司
【公开日】2015年9月30日
【申请日】2014年3月31日
【公告号】WO2015149658A1