一种实体鉴别方法及装置的制造方法_4

文档序号:9237920阅读:来源:国知局
的所述第三身份鉴别消息中的随机数Nb是否与自己发送给实体A的随机数Nb —致,若不一致,则验证不正确;
[0132]处理单元302利用实体A的公钥CPa验证SigA,检查实体A是否合法,若不合法,则验证不正确,其中,实体A的公钥CPa包含在实体A的证书CertA中;
[0133]需说明的是,以上检查过程并无严格的顺序要求,且任何一项验证不正确,则认为对收到的NaI Nb IqaI SigA MacTagA的验证结果不正确。
[0134]综上,本发明基于对称密码算法实现了带密钥协商功能的实体间的身份鉴别,适用领域非常广泛。本发明可适用于射频识别RFID,传感器网络WSN,近场通信NFC,非接触式卡、无线局域网WLAN等基于空中接口进行通信的领域。实体A和实体B可以是RFID领域中的读写器和标签,传感器网络中的节点,NFC领域中的终端设备,非接触式卡技术领域中的读卡器和卡,无线局域网中的终端和接入点等。
[0135]另外,在本发明的较佳实施方式中,当本发明技术方案用于NFC领域时,实体A发送给实体B的第一身份鉴别消息是利用ACT_REQ协议数据单元进行封装后传输的,实体B发送给实体A的第二身份鉴别消息是利用ACT_RES协议数据单元进行封装后传输的,实体A发送给实体B的第三身份鉴别消息是利用VFY_REQ协议数据单元进行封装后传输的,实体B发送给实体A的第四身份鉴别消息是利用VFY_RES协议数据单元进行封装后传输的,其中,ACT_REQ、ACT_RES、VFY_REQ及VFY_RES是符合标准IS0/IEC13157-1定义的协议数据单元格式。如此封装后,本发明技术方案与现有的NFC其他安全机制的兼容性更优。
[0136]本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0137]本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0138]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0139]这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0140]尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0141]显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【主权项】
1.一种实体鉴别方法,其特征在于: 步骤I,实体A向实体B发送包括Na I I CertA的第一身份鉴别消息,其中,Na为实体A产生的随机数,CertA为实体A的证书; 步骤2,实体B收到来自实体A的第一身份鉴别消息后,检查第一身份鉴别消息中证书CertA的有效性,若证书无效,则终止鉴别; 步骤3,实体B产生随机数Nb,利用自身的私钥CSb计算数字签名SigB=SIG (CSB,IDa I I IDb I I Na I I Nb I I Qb),其中SIG为数字签名算法,IDa和IDb分别为实体A和实体B的标识信息,Qb为实体B的临时公钥,实体B向实体A发送包括Na I I Nb I I CertB | | Qb | | SigB的第二身份鉴别消息,其中CertB为实体B的证书; 步骤4,实体A收到来自实体B的包括Na| Nb CertB Qb I SigB的第二身份鉴别消息后,检查第二身份鉴别消息中字段数据的正确性,若验证不正确,则终止鉴别; 步骤5,实体A利用自身的私钥CSa计算实体A的数字签名SigA=SIG (CSA, IDa | | IDb | | NaI Nb I I Qa),其中Qa为实体A的临时公钥;实体A检查是否已存储有实体B的临时公钥Qb,若已存储有Qb,则使用已存储的Qb,否则检查收到的第二身份鉴别消息中的Qb的有效性,如果有效,则使用收到的第二身份鉴别消息中的Qb,如果无效,则终止鉴别; 步骤6,实体A基于ECDH密钥交换协议,利用实体A事先产生的临时私钥dA和实体B的临时公钥%计算秘密信息z=f (dA,Qb),其中f指密钥计算函数,如果计算出错,则终止鉴别,否则,实体A将计算出的秘密信息z转换为字符串Z,计算密钥MK=KDF (Na, Nb, Z, IDa, IDb),其中KDF指密钥推导算法,计算消息鉴别码MacTagA=MACl (MK, IDa, IDb, Qa, Qb),其中MACl为一种消息鉴别码计算方法,并发送包括NaI Inb IqaI SigA| |MacTagA的第三身份鉴别消息给实体B ; 步骤7,实体B接收到来自实体A的包括NaI Nb IqaI SigA| |MacTagA的第三身份鉴别消息后,检查第三身份鉴别消息中字段数据的正确性,若验证不正确,则终止鉴别; 步骤8,实体B检查是否已存储有实体A的临时公钥Qa,若已存储有Qa,则使用已存储的Qa,否则检查收到的第三身份鉴别消息中的Qa的有效性,如果有效,则使用收到的第三身份鉴别消息中的Qa,如果无效,则终止鉴别; 步骤9,实体B基于ECDH密钥交换协议,利用实体B事先产生的临时私钥dB和实体A的临时公钥Qa计算秘密信息z=f(dB,Qa),如果计算出错,则终止鉴别,否则,实体B将计算出的秘密信息z转换为字符串Z,并计算密钥MK=KDF(Na,Nb, Z, IDa, IDb),计算消息鉴别码MacTagA=MACl (MK, IDa, IDb, Qa, Qb),并与收到的实体A发送的第三身份鉴别消息中的MacTagA进行比较,如果不相等,则终止鉴别;否则,实体B认为实体A合法,并计算消息鉴别码MacTagB=MACl (MK, IDb, IDa, Qb, Qa),将包括MacTagB的第四身份鉴别消息发送给实体A ; 步骤10,实体A收到来自实体B的第四身份鉴别消息后,计算MacTagB=MACl (MK, IDb, IDa, Qb, Qa),并与收到的第四身份鉴别消息中的MacTagB进行比较,如果不相等,则认为实体B非法;如果相等,则认为实体B合法。2.如权利要求1所述的方法,其特征在于,所述步骤4中,实体A收到来自实体B的包括乂| Nb CertJ |Qb| SigB的第二身份鉴别消息后,检查第二身份鉴别消息中字段数据的正确性,包括: 4.1,实体A检查收到的所述第二身份鉴别消息中的随机数Na是否与自己发送给实体B的随机数Na—致,若不一致,则验证不正确; 4.2,实体A检查所述第二身份鉴别消息中CertB的有效性,若无效,则验证不正确; 4.3,实体A利用实体B的公钥CPb验证SigB,检查实体B是否合法,若不合法,则验证不正确,其中,实体B的公钥CPb包含在实体B的证书CertB中; 其中,任何一项验证不正确,则认为对实体A收到的Na| Nb CertB Qb验证结果不正确。3.如权利要求1所述的方法,其特征在于,所述步骤7中,实体B接收到来自实体A的包括Na| Nb |Qa| SigA| |MacTagA的第三身份鉴别消息后,检查第三身份鉴别消息中字段数据的正确性,包括: 7.1,实体B检查收到的所述第三身份鉴别消息中的随机数Na是否与上一次收到的随机数Na —致,若不一致,则验证不正确; 7.2,实体B检查收到的所述第三身份鉴别消息中的随机数Nb是否与自己发送给实体A的随机数Nb—致,若不一致,则验证不正确; 7.3,实体B利用实体A的公钥CPa验证SigA,检查实体A是否合法,若不合法,则验证不正确,其中,实体A的公钥CPa包含在实体A的证书CertA中; 其中,任何一项验证不正确,则认为对实体B收到的包括Na| Nb |Qa| SigA IMacTagA的验证结果不正确。4.一种实体A与实体B进行实体鉴别时,实体A的工作方法,其特征在于,所述方法包括如下步骤: 产生随机数Na,向实体B发送包括NaI CertA的第一身份鉴别消息,其中,CertA为实体A的证书; 收到来自实体B的包括Na| Nb CertJ Qb SigB的第二身份鉴别消息后,检查第二身份鉴别消息中字段数据的正确性,若验证不正确,则终止鉴别; 利用自身的私钥CSa和临时公钥Qa计算数字签名SigA=SIG(CSA,IDa| IDb Na Nb Qa);检查是否已存储有实体B的临时公钥Qb,若已存储有Qb,则使用已存储的Qb,否则检查收到的第二身份鉴别消息中的Qb的有效性,如果有效,则使用收到的第二身份鉴别消息中的Qb,如果无效,则终止鉴别; 基于ECDH密钥交换协议,利用事先产生的临时私钥dA和实体B的临时公钥Qb计算秘密信息z=f (dA,Qb),如果计算出错,则终止鉴别,否则,将计算出的秘密信息z转换为字符串Z,计算密钥MK=KDF (Na, Nb, Z, IDa, IDb),其中KDF指密钥推导算法,计算消息鉴别码MacTagA=MACl (MK, IDa, IDb, Qa, Qb),并发送包括 Na | | Nb | | Qa | | SigA | | MacTagA 的第三身份鉴别消息给头体B ; 收到来自实体B的第四身份鉴别消息后,计算MacTagB=MACl (MK, IDb, IDa, Qb, Qa),并与收到的第四身份鉴别消息中的MacTagB进行比较,如果不相等,则认为实体B非法;如果相等,则认为实体B合法; 其中,SIG为一种数字签名算法,IDa为实体A的身份标识,IDb为实体B的身份标识,f为一种密钥计算函数,KDF为一种密钥推导算法,MACl为一种消息鉴别码计算方法。5.如权利要求4所述的方法,其特征在于
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1