CN114760045A - 一种身份鉴别方法和装置 - Google Patents

一种身份鉴别方法和装置 Download PDF

Info

Publication number
CN114760045A
CN114760045A CN202011569233.5A CN202011569233A CN114760045A CN 114760045 A CN114760045 A CN 114760045A CN 202011569233 A CN202011569233 A CN 202011569233A CN 114760045 A CN114760045 A CN 114760045A
Authority
CN
China
Prior art keywords
authentication
access controller
message
key
identity
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.)
Pending
Application number
CN202011569233.5A
Other languages
English (en)
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.)
China Iwncomm Co Ltd
Original Assignee
China Iwncomm Co Ltd
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 China Iwncomm Co Ltd filed Critical China Iwncomm Co Ltd
Priority to CN202011569233.5A priority Critical patent/CN114760045A/zh
Priority to PCT/CN2021/139997 priority patent/WO2022135377A1/zh
Priority to EP21909373.9A priority patent/EP4270856A4/en
Priority to US18/259,292 priority patent/US20240064024A1/en
Publication of CN114760045A publication Critical patent/CN114760045A/zh
Pending legal-status Critical Current

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
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • 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/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
    • 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/0892Network architectures or network communication protocols for network security for authentication of entities by using authentication-authorization-accounting [AAA] servers or protocols
    • 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
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0847Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving identity based encryption [IBE] schemes
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3265Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate chains, trees or paths; Hierarchical trust model
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • H04W12/037Protecting confidentiality, e.g. by encryption of the control plane, e.g. signalling traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/069Authentication using certificates or pre-shared keys

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Storage Device Security (AREA)

Abstract

本申请公开了一种身份鉴别方法,对请求设备的身份信息进行保密处理,防止请求设备的身份信息在传输的过程中暴露,保证攻击者无法获得请求设备的私密信息。并且通过引入鉴别服务器,在保障实体身份相关信息机密性的同时,实现了请求设备与鉴别接入控制器之间的双向身份实时鉴别。

Description

一种身份鉴别方法和装置
技术领域
本申请涉及网络通信安全技术领域,特别是涉及一种身份鉴别方法和装置。
背景技术
在通信网络中,请求设备可以通过鉴别接入控制器访问网络。在一些对安全性需求较高的情况下,鉴别接入控制器需要对请求设备的身份进行鉴别,并且请求设备也需要对鉴别接入控制器的身份进行鉴别,以确保访问网络的请求设备属于合法用户,且请求设备访问的网络属于合法网络。此外,在区块链技术中的点对点传输,也需要在不同节点之间建立信任关系,因此对于节点的身份鉴别也是十分重要的。
在请求设备和鉴别接入控制器之间的双向身份鉴别的过程中,请求设备和鉴别接入控制器均需要提供自身的身份信息用于身份鉴别。然而,这类身份信息一般会携带私密、敏感的信息,诸如身份证号、家庭住址、银行卡信息、地理位置信息及所属机构信息等。并且在实际应用过程中,请求设备和鉴别接入控制器的身份信息通常会包含在实体的数字证书中,以数字证书作为实体的身份凭证。
若在请求设备与鉴别接入控制器的双向身份鉴别过程中,请求设备或鉴别接入控制器的身份信息被攻击者截获用于非法用途,则会对鉴别接入控制器、请求设备及网络造成极大的安全隐患。
发明内容
为了解决上述技术问题,本申请提供了一种身份鉴别方法和装置,通过引入鉴别服务器,在保障实体身份相关信息机密性的同时,实现了鉴别接入控制器与请求设备之间的双向身份鉴别。
第一方面,本申请实施例提供了一种身份鉴别方法,包括:
鉴别接入控制器获取请求设备发送的身份密文消息,所述身份密文消息中包括所述请求设备的身份信息密文,所述身份信息密文是利用加密证书的公钥对包括所述请求设备的数字证书和第二密钥在内的加密数据加密生成的;
所述鉴别接入控制器向其信任的第一鉴别服务器发送第一鉴别请求消息,所述第一鉴别请求消息中包括所述请求设备的身份信息密文和所述鉴别接入控制器的数字证书;
所述鉴别接入控制器接收所述第一鉴别服务器发送的第一鉴别响应消息,所述第一鉴别响应消息中包括第一鉴别结果信息、第一数字签名、第二鉴别结果信息密文和第二数字签名,其中,所述第一鉴别结果信息中包括对所述鉴别接入控制器的数字证书的第一验证结果,所述第一数字签名是所述请求设备信任的第二鉴别服务器对包括所述第一鉴别结果信息在内的签名数据计算生成的数字签名,所述第二鉴别结果信息密文是利用所述第二密钥对包括第二鉴别结果信息在内的信息加密得到的,所述第二鉴别结果信息中包括对所述请求设备的数字证书的第二验证结果,所述第二数字签名是所述第一鉴别服务器对包括所述第二鉴别结果信息密文在内的签名数据计算生成的数字签名;
所述鉴别接入控制器利用所述第一鉴别服务器的公钥对所述第二数字签名进行验证,当所述第二数字签名验证通过时,向所述请求设备发送第三鉴别响应消息,所述第三鉴别响应消息中包括鉴别结果信息密文,所述鉴别结果信息密文是利用消息加密密钥对包括所述第一鉴别结果信息和所述第一数字签名在内的加密数据加密生成的;
所述请求设备利用所述消息加密密钥对所述鉴别结果信息密文进行解密得到所述第一鉴别结果信息和所述第一数字签名;
所述请求设备利用所述第二鉴别服务器的公钥对所述第一数字签名进行验证,若验证通过,则根据所述第一鉴别结果信息中的第一验证结果确定所述鉴别接入控制器的身份鉴别结果;当所述请求设备确定所述鉴别接入控制器的身份鉴别结果为合法时,向所述鉴别接入控制器发送第四鉴别响应消息;或者,
所述请求设备利用所述第二鉴别服务器的公钥对所述第一数字签名进行验证,若验证通过,则所述请求设备向所述鉴别接入控制器发送第四鉴别响应消息以及根据所述第一鉴别结果信息中的第一验证结果确定所述鉴别接入控制器的身份鉴别结果;或者,
所述请求设备利用所述第二鉴别服务器的公钥对所述第一数字签名进行验证;若所述第一数字签名验证通过,则所述请求设备根据所述第一鉴别结果信息中的第一验证结果确定所述鉴别接入控制器的身份鉴别结果;所述请求设备向所述鉴别接入控制器发送第四鉴别响应消息;
其中,所述第四鉴别响应消息中包括第二密钥密文,所述第二密钥密文是利用所述消息加密密钥对包括所述第二密钥在内的信息加密得到的;
所述鉴别接入控制器接收到所述第四鉴别响应消息后,利用所述消息加密密钥解密所述第二密钥密文得到所述第二密钥,利用所述第二密钥解密所述第二鉴别结果信息密文得到所述第二鉴别结果信息,根据所述第二鉴别结果信息中的第二验证结果确定所述请求设备的身份鉴别结果。
第二方面,本申请实施例提供了一种鉴别接入控制器,包括:
获取单元,用于获取请求设备发送的身份密文消息,所述身份密文消息中包括所述请求设备的身份信息密文,所述身份信息密文是利用加密证书的公钥对包括所述请求设备的数字证书和第二密钥在内的加密数据加密生成的;
第一发送单元,用于向所述鉴别接入控制器信任的第一鉴别服务器发送第一鉴别请求消息,所述第一鉴别请求消息中包括所述请求设备的身份信息密文和所述鉴别接入控制器的数字证书;
第一接收单元,用于接收所述第一鉴别服务器发送的第一鉴别响应消息,所述第一鉴别响应消息中包括第一鉴别结果信息、第一数字签名、第二鉴别结果信息密文和第二数字签名,其中,所述第一鉴别结果信息中包括对所述鉴别接入控制器的数字证书的第一验证结果,所述第一数字签名是所述请求设备信任的第二鉴别服务器对包括所述第一鉴别结果信息在内的签名数据计算生成的数字签名,所述第二鉴别结果信息密文是利用所述第二密钥对包括第二鉴别结果信息在内的信息加密得到的,所述第二鉴别结果信息中包括对所述请求设备的数字证书的第二验证结果,所述第二数字签名是所述第一鉴别服务器对包括所述第二鉴别结果信息密文在内的签名数据计算生成的数字签名;
第一验证单元,用于利用所述第一鉴别服务器的公钥对所述第二数字签名进行验证;
第二发送单元,用于当所述第二数字签名验证通过时,向所述请求设备发送第三鉴别响应消息,所述第三鉴别响应消息中包括鉴别结果信息密文,所述鉴别结果信息密文是利用消息加密密钥对包括所述第一鉴别结果信息和所述第一数字签名在内的加密数据加密生成的;
第二接收单元,用于接收所述请求设备发送的第四鉴别响应消息,所述第四鉴别响应消息中包括第二密钥密文,所述第二密钥密文是利用所述消息加密密钥对包括所述第二密钥在内的信息加密得到的;
解密单元,用于利用所述消息加密密钥解密所述第二密钥密文得到所述第二密钥,以及,利用所述第二密钥解密所述第二鉴别结果信息密文得到所述第二鉴别结果信息;
第一确定单元,用于根据所述第二鉴别结果信息中的第二验证结果确定所述请求设备的身份鉴别结果。
第三方面,本申请实施例提供了一种请求设备,包括:
第一发送单元,用于向鉴别接入控制器发送身份密文消息,所述身份密文消息中包括所述请求设备的身份信息密文,所述身份信息密文是利用加密证书的公钥对包括所述请求设备的数字证书和第二密钥在内的加密数据加密生成的;
第一接收单元,用于接收所述鉴别接入控制器发送的第三鉴别响应消息,所述第三鉴别响应消息中包括鉴别结果信息密文,所述鉴别结果信息密文是利用消息加密密钥对包括第一鉴别结果信息和第一数字签名在内的加密数据加密生成的;
第一解密单元,用于利用所述消息加密密钥对所述鉴别结果信息密文进行解密得到所述第一鉴别结果信息和所述第一数字签名;
第一验证单元,用于利用所述第二鉴别服务器的公钥对所述第一数字签名进行验证,若验证通过,则第一确定单元根据所述第一鉴别结果信息中的第一验证结果确定所述鉴别接入控制器的身份鉴别结果;当所述第一确定单元确定所述鉴别接入控制器的身份鉴别结果为合法时,第二发送单元向所述鉴别接入控制器发送第四鉴别响应消息;或者,
第一验证单元,用于利用所述第二鉴别服务器的公钥对所述第一数字签名进行验证,若验证通过,则第二发送单元向所述鉴别接入控制器发送第四鉴别响应消息以及第一确定单元根据所述第一鉴别结果信息中的第一验证结果确定所述鉴别接入控制器的身份鉴别结果;或者,
第一验证单元,用于利用所述第二鉴别服务器的公钥对所述第一数字签名进行验证;若所述第一数字签名验证通过,则第一确定单元根据所述第一鉴别结果信息中的第一验证结果确定所述鉴别接入控制器的身份鉴别结果;第二发送单元向所述鉴别接入控制器发送第四鉴别响应消息;
其中,所述第四鉴别响应消息中包括第二密钥密文,所述第二密钥密文是利用所述消息加密密钥对包括所述第二密钥在内的信息加密得到的。
第四方面,本申请实施例提供了一种第一鉴别服务器,所述第一鉴别服务器为鉴别接入控制器信任的鉴别服务器,包括:
第一接收单元,用于接收鉴别接入控制器发送的第一鉴别请求消息,所述第一鉴别请求消息中包括请求设备的身份信息密文和所述鉴别接入控制器的数字证书;所述身份信息密文是利用加密证书的公钥对包括所述请求设备的数字证书和第二密钥在内的加密数据加密生成的;
第一发送单元,用于向所述鉴别接入控制器发送第一鉴别响应消息,所述第一鉴别响应消息中包括第一鉴别结果信息、第一数字签名、第二鉴别结果信息密文和第二数字签名,其中,所述第一鉴别结果信息中包括对所述鉴别接入控制器的数字证书的第一验证结果,所述第一数字签名是所述请求设备信任的第二鉴别服务器对包括所述第一鉴别结果信息在内的签名数据计算生成的数字签名,所述第二鉴别结果信息密文是利用第二密钥对包括第二鉴别结果信息在内的信息加密得到的,所述第二鉴别结果信息中包括对所述请求设备的数字证书的第二验证结果,所述第二数字签名是所述第一鉴别服务器对包括所述第二鉴别结果信息密文在内的签名数据计算生成的数字签名。
第五方面,本申请实施例提供了一种第二鉴别服务器,所述第二鉴别服务器为请求设备信任的鉴别服务器,若鉴别接入控制器信任的第一鉴别服务器和所述请求设备信任的第二鉴别服务器是两个不同的鉴别服务器,则所述第二鉴别服务器包括:
接收单元,用于接收所述第一鉴别服务器发送的第二鉴别请求消息,所述第二鉴别请求消息中包括第一鉴别结果信息、所述请求设备的身份信息密文和第三数字签名;所述第三数字签名是所述第一鉴别服务器对包括所述第一鉴别结果信息和所述请求设备的身份信息密文在内的签名数据计算生成的数字签名;所述身份信息密文是利用加密证书的公钥对包括所述请求设备的数字证书和第二密钥在内的加密数据加密生成的;
验证单元,用于利用所述第一鉴别服务器的公钥对所述第三数字签名进行验证;
解密单元,用于当所述第三数字签名验证通过时,利用加密证书对应的私钥对所述请求设备的身份信息密文进行解密得到所述请求设备的数字证书和所述第二密钥;
所述验证单元还用于对所述请求设备的数字证书进行合法性验证得到第二验证结果;
生成单元,用于根据包括所述第二验证结果在内的信息生成所述第二鉴别结果信息,利用所述第二密钥对包括所述第二鉴别结果信息在内的信息加密生成第二鉴别结果信息密文,对包括所述第一鉴别结果信息在内的签名数据计算生成第一数字签名,对包括所述第二鉴别结果信息密文在内的签名数据计算生成第四数字签名;
发送单元,用于向所述第一鉴别服务器发送第二鉴别响应消息,所述第二鉴别响应消息中包括所述第一鉴别结果信息、所述第一数字签名、所述第二鉴别结果信息密文和所述第四数字签名。
由上述技术方案可以看出,在身份鉴别过程中对请求设备的身份信息进行保密处理,以及在请求设备和鉴别接入控制器之间传输身份信息时,对鉴别接入控制器的身份信息进行保密处理,防止了请求设备和鉴别接入控制器的身份信息在传输过程中暴露,保证攻击者无法获得私密、敏感信息。并且通过引入鉴别服务器,在保障实体身份相关信息机密性的同时,实现请求设备与鉴别接入控制器之间的双向身份的实时鉴别,为保证只有合法用户才能访问合法网络奠定基础。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种身份鉴别方法的示意图;
图2为本申请实施例提供的一种请求设备REQ和鉴别接入控制器AAC协商消息加密密钥的方法的示意图;
图3为本申请实施例提供的非漫游情况下一种身份鉴别方法的示意图;
图4为本申请实施例提供的非漫游情况下另一种身份鉴别方法的示意图;
图5为本申请实施例提供的漫游情况下一种身份鉴别方法的示意图;
图6为本申请实施例提供的漫游情况下另一种身份鉴别方法的示意图;
图7为本申请实施例提供的非漫游情况下另一种身份鉴别方法的示意图,其中“*”表示可选的字段或可选的操作;
图8为本申请实施例提供的非漫游情况下另一种身份鉴别方法的示意图,其中“*”表示可选的字段或可选的操作;
图9为本申请实施例提供的漫游情况下另一种身份鉴别方法的示意图,其中“*”表示可选的字段或可选的操作;
图10为本申请实施例提供的漫游情况下另一种身份鉴别方法的示意图,其中“*”表示可选的字段或可选的操作;
图11为本申请实施例提供的一种鉴别接入控制器AAC的结构框图;
图12为本申请实施例提供的一种请求设备REQ的结构框图;
图13为本申请实施例提供的一种第一鉴别服务器AS-AAC的结构框图;
图14为本申请实施例提供的一种第二鉴别服务器AS-REQ的结构框图。
具体实施方式
在通信网络中,请求设备可以通过鉴别接入控制器访问网络,为了确保访问网络的请求设备属于合法用户,鉴别接入控制器需要对请求设备的身份进行鉴别。同样的,为了确保请求设备访问的网络属于合法网络,请求设备也需要对鉴别接入控制器的身份进行鉴别。
以目前的无线通信和移动通信场景为例,在请求设备通过鉴别接入控制器接入无线网络的场景下,请求设备可以为手机、个人数字助理(Personal Digital Assistant,简称PDA)、平板电脑等终端设备,鉴别接入控制器可以是无线接入点、无线路由器等网络侧设备。在请求设备通过鉴别接入控制器接入有线网络的场景下,请求设备可以为台式机、笔记本电脑等终端设备,鉴别接入控制器可以是交换机或路由器等网络侧设备。在请求设备通过鉴别接入控制器接入第四/五代移动通信技术(the 4th/5th Generation mobilecommunication technology,简称4G/5G)网络的场景下,请求设备可以为手机、平板电脑等终端设备,鉴别接入控制器可以为基站等网络侧设备。当然,本申请同样适用于其他有线网络、近距离通信网络等各种数据通信场景。
然而,在请求设备和鉴别接入控制器之间进行双向身份鉴别的过程中,请求设备和鉴别接入控制器都需要提供自身的身份信息用于身份鉴别。该身份信息通常可以包含在实体的数字证书中,且一般携带了私密、敏感信息。若在身份鉴别过程中该身份信息被攻击者截获用于非法用途,则会对鉴别接入控制器、请求设备甚至网络造成极大的安全隐患。
为了解决上述技术问题,本申请实施例提供了一种身份鉴别方法,包括:鉴别接入控制器获取请求设备发送的身份密文消息,身份密文消息中包括请求设备的身份信息密文,身份信息密文是利用加密证书的公钥对包括请求设备的数字证书和第二密钥在内的加密数据加密生成的;鉴别接入控制器向其信任的第一鉴别服务器发送第一鉴别请求消息,第一鉴别请求消息中包括请求设备的身份信息密文和鉴别接入控制器的数字证书;鉴别接入控制器接收第一鉴别服务器发送的第一鉴别响应消息,第一鉴别响应消息中包括第一鉴别结果信息、第一数字签名、第二鉴别结果信息密文和第二数字签名;其中,第一鉴别结果信息中包括对鉴别接入控制器的数字证书的第一验证结果,第一数字签名是请求设备信任的第二鉴别服务器对包括第一鉴别结果信息在内的签名数据计算生成的数字签名,第二鉴别结果信息密文是利用第二密钥对包括第二鉴别结果信息在内的信息加密得到的,第二数字签名是第一鉴别服务器对包括第二鉴别结果信息密文在内的签名数据计算生成的数字签名;鉴别接入控制器利用第一鉴别服务器的公钥验证第二数字签名,若验证通过,则向请求设备发送第三鉴别响应消息,第三鉴别响应消息中包括鉴别结果信息密文,鉴别结果信息密文是利用消息加密密钥对包括第一鉴别结果信息和第一数字签名在内的加密数据加密生成的;请求设备利用消息加密密钥对鉴别结果信息密文解密得到第一鉴别结果信息和第一数字签名,利用第二鉴别服务器的公钥验证第一数字签名,若验证通过,则根据第一鉴别结果信息中的第一验证结果确定鉴别接入控制器的身份鉴别结果;当请求设备确定鉴别接入控制器为合法时,向鉴别接入控制器发送第四鉴别响应消息,第四鉴别响应消息中包括第二密钥密文,第二密钥密文是利用消息加密密钥对包括第二密钥在内的信息加密得到的;鉴别接入控制器利用消息加密密钥解密第二密钥密文得到第二密钥,利用第二密钥解密第二鉴别结果信息密文得到第二鉴别结果信息,根据第二鉴别结果信息中的第二验证结果确定请求设备的身份鉴别结果。
可以理解的是,本申请实施例中的第一鉴别结果信息是鉴别接入控制器信任的第一鉴别服务器对鉴别接入控制器的数字证书进行合法性验证得到的,第二鉴别结果信息是请求设备信任的第二鉴别服务器对请求设备的数字证书进行合法性验证得到的,上述第一鉴别服务器和第二鉴别服务器可以是用于鉴别身份的两个独立服务器,或者是用于鉴别身份的同一个服务器。以上仅为请求设备、鉴别接入控制器及鉴别服务器的一些示例,不应理解为对请求设备、鉴别接入控制器及鉴别服务器的限定,在本申请实施例其他可能的实现方式中,请求设备、鉴别接入控制器及鉴别服务器还可以是其他设备。
本申请实施例提供的身份鉴别方法是实现请求设备和鉴别接入控制器之间的双向身份鉴别(Mutual Identity Authentication,简称MIA)。
为便于介绍,在本申请实施例中,将以请求设备(REQuester,简称REQ)、鉴别接入控制器(Authentication Access Controller,简称AAC)和鉴别服务器(AuthenticationServer,简称AS)为例对本申请的身份鉴别方法进行介绍。
其中,AAC信任的AS称为第一鉴别服务器AS-AAC,REQ信任的AS称为第二鉴别服务器AS-REQ。AS-AAC具有验证AAC数字证书的合法性的能力,AS-AAC持有符合ISO/IEC9594-8/ITU X.509、其他标准或其他技术体系规定的数字证书和数字证书对应的私钥。AS-REQ具有验证REQ数字证书的合法性的能力,AS-REQ持有符合ISO/IEC 9594-8/ITU X.509、其他标准或其他技术体系规定的数字证书和数字证书对应的私钥。证书解密服务器(CertificateSever-Decrypt,简称CS-DEC)持有符合ISO/IEC 9594-8/ITU X.509、其他标准或其他技术体系规定的加密证书和加密证书对应的私钥。AS-AAC和AS-REQ具有将数字证书传递给其它AS去验证的能力,也具有将数字证书的验证结果信息传递给其它AS的能力。当AS-AAC和AS-REQ不相同时,AS-AAC和AS-REQ相互信任,并相互知晓对方的数字证书或数字证书中的公钥。
REQ可以是参与身份鉴别过程的一个端点,与AAC建立连接,访问AAC提供的服务,且通过AAC访问AS。REQ持有符合ISO/IEC 9594-8/ITU X.509、其他标准或其他技术体系规定的数字证书和数字证书对应的私钥,REQ知晓AS-REQ的数字证书或数字证书中的公钥,并知晓CS-DEC的加密证书或加密证书中的公钥,CS-DEC可以是独立的服务器,也可以驻留在AS-REQ中。AAC可以是参与身份鉴别过程的另一个端点,与REQ建立连接,提供服务,并与REQ通信,且可直接访问AS-AAC。AAC持有符合ISO/IEC 9594-8/ITU X.509、其他标准或其他技术体系规定的数字证书和数字证书对应的私钥,并知晓AS-AAC的数字证书或数字证书中的公钥。
下面结合图1,说明本申请实施例提供的一种身份鉴别方法,该方法包括:
S101、AAC获取REQ发送的身份密文消息REQInit。
所述REQInit中包括REQ的身份信息密文EncPubAS。其中,EncPubAS是REQ利用CS-DEC的加密证书的公钥对包括REQ的数字证书CertREQ和第二密钥在内的加密数据加密生成的。由此在身份鉴别过程中,对REQ的身份信息进行保密处理,防止REQ的身份信息在传输过程中暴露。本申请中,将被加密的对象称为加密数据。
S102、AAC向其信任的AS-AAC发送第一鉴别请求消息AACVeri。
所述AACVeri中包括AAC的数字证书CertAAC和EncPubAS
S103、AAC接收AS-AAC发送的第一鉴别响应消息ASVeri。
所述ASVeri中包括第一鉴别结果信息、第一数字签名、第二鉴别结果信息密文和第二数字签名。其中,第一鉴别结果信息中包括对CertAAC的第一验证结果ResAAC,第一数字签名是REQ信任的AS-REQ对包括所述第一鉴别结果信息在内的签名数据计算生成的数字签名;第二鉴别结果信息密文是利用所述第二密钥对包括第二鉴别结果信息在内的信息加密得到的,所述第二鉴别结果信息中包括对CertREQ的第二验证结果ResREQ,所述第二数字签名是AS-AAC对包括所述第二鉴别结果信息密文在内的签名数据计算生成的数字签名。本申请中,将被签名的对象称为签名数据。
需要说明的是,若REQ信任的AS-REQ和AAC信任的AS-AAC为同一个鉴别服务器,即REQ和AAC共同信任同一个鉴别服务器,此时REQ和AAC共同信任的鉴别服务器可以用AS-AAC(当然也可以用AS-REQ)来表示。此情形下,可以由AS-AAC(也可以表示为AS-REQ)对CertAAC进行合法性验证得到ResAAC,以及对解密所述EncPubAS得到的CertREQ进行合法性验证得到ResREQ,其中,可以由AS-AAC(也可以表示为AS-REQ)利用驻留在AS-AAC(也可以表示为AS-REQ)内的CS-DEC的加密证书对应的私钥解密EncPubAS,也可以由AS-AAC(也可以表示为AS-REQ)将EncPubAS发送给与之有交互信任关系的CS-DEC进行解密,并获取解密得到的CertREQ。然后,AS-AAC(也可以表示为AS-REQ)根据包括所述ResAAC在内的信息生成第一鉴别结果信息,根据包括所述ResREQ在内的信息生成第二鉴别结果信息,利用解密所述EncPubAS得到的第二密钥对包括所述第二鉴别结果信息在内的信息加密生成第二鉴别结果信息密文,并对包括第一鉴别结果信息在内的签名数据计算生成第一数字签名SigAS_AAC1(也可以表示为SigAS_REQ1),对包括第二鉴别结果信息密文在内的签名数据计算生成第二数字签名SigAS_AAC2(也可以表示为SigAS_REQ2),根据包括第一鉴别结果信息、第一数字签名SigAS_AAC1(也可以表示为SigAS_REQ1)、第二鉴别结果信息密文和第二数字签名SigAS_AAC2(也可以表示为SigAS_REQ2)在内的信息生成第一鉴别响应消息ASVeri。
若REQ信任的AS-REQ和AAC信任的AS-AAC为两个不同的鉴别服务器,则由AS-AAC对CertAAC进行合法性验证得到ResAAC,由AS-REQ对解密所述EncPubAS得到的CertREQ进行合法性验证得到ResREQ。因此,AS-AAC在生成第一鉴别结果信息后,向AS-REQ发送第二鉴别请求消息AS-AACVeri。所述AS-AACVeri中包括所述第一鉴别结果信息、所述EncPubAS和第三数字签名SigAS_AAC3。其中,SigAS_AAC3是由AS-AAC对包括所述第一鉴别结果信息和所述EncPubAS在内的签名数据计算生成的。AS-REQ利用AS-AAC的公钥验证SigAS_AAC3,若验证通过,则AS-REQ对解密所述EncPubAS得到的CertREQ进行合法性验证得到ResREQ,根据包括所述ResREQ在内的信息生成第二鉴别结果信息,其中,可以由AS-REQ利用驻留在AS-REQ内的CS-DEC的加密证书对应的私钥解密EncPubAS,也可以由AS-REQ将EncPubAS发送给与之有交互信任关系的CS-DEC进行解密,并获取解密得到的CertREQ;AS-REQ利用解密所述EncPubAS得到的第二密钥对包括所述第二鉴别结果信息在内的信息加密生成第二鉴别结果信息密文,再向AS-AAC发送第二鉴别响应消息AS-REQVeri,所述AS-REQVeri中包括第一鉴别结果信息、第一数字签名SigAS_REQ1、第二鉴别结果信息密文和第四数字签名SigAS_REQ4;其中,SigAS_REQ1是由AS-REQ对包括第一鉴别结果信息在内的签名数据计算生成的,SigAS_REQ4是由AS-REQ对包括第二鉴别结果信息密文在内的签名数据计算生成的。AS-AAC接收所述AS-REQVeri后,利用AS-REQ的公钥验证SigAS_REQ4,若验证通过,则AS-AAC对包括第二鉴别结果信息密文在内的签名数据计算生成第二数字签名SigAS_AAC2,根据包括第一鉴别结果信息、第一数字签名SigAS_REQ1、第二鉴别结果信息密文和第二数字签名SigAS_AAC2在内的信息生成第一鉴别响应消息ASVeri。
S104、AAC利用AS-AAC的公钥对第二数字签名进行验证。
若验证通过,则AAC执行后续操作。
S105、AAC向REQ发送第三鉴别响应消息AACAuth。
所述AACAuth中包括鉴别结果信息密文EncDataAAC。其中,EncDataAAC是AAC利用消息加密密钥对包括所述第一鉴别结果信息和所述第一数字签名在内的加密数据加密生成的。
S106、REQ利用消息加密密钥对EncDataAAC解密得到第一鉴别结果信息和第一数字签名。
其中,消息加密密钥可以是由REQ和AAC协商得到的,也可以是REQ和AAC预先共享的。由于AAC利用消息加密密钥采用对称加密算法对包括第一鉴别结果信息和第一数字签名在内的加密数据加密得到EncDataAAC,因此REQ接收到AACAuth后,可以利用消息加密密钥对EncDataAAC解密得到第一鉴别结果信息和第一数字签名。
S107、REQ利用AS-REQ的公钥对第一数字签名进行验证。
S108、REQ根据第一鉴别结果信息中的ResAAC确定AAC的身份鉴别结果。
S109、REQ向AAC发送第四鉴别响应消息REQAuth。
所述REQAuth中包括第二密钥密文,所述第二密钥密文是REQ利用消息加密密钥对包括所述第二密钥在内的信息加密得到的。
需要说明的是,S107至S109的执行顺序并不影响本申请的具体实现,在实际应用中,可根据需求设定S107至S109的执行顺序。优选建议,先执行S107,当REQ对所述第一数字签名验证不通过,则丢弃AACAuth,当REQ对所述第一数字签名验证通过后,再执行S108,当REQ确定AAC为合法时,再执行S109,当REQ确定AAC为不合法时,则REQ根据本地策略选择是否执行S109,考虑到效率,优选方案为不执行并结束本次鉴别过程。
S110、AAC利用消息加密密钥解密第二密钥密文得到第二密钥,利用第二密钥解密第二鉴别结果信息密文得到第二鉴别结果信息。
S111、AAC根据第二鉴别结果信息中的ResREQ确定REQ的身份鉴别结果。
由上述技术方案可以看出,在鉴别过程中对请求设备的身份信息进行保密处理,在请求设备和鉴别接入控制器之间传输身份信息时,对鉴别接入控制器的身份信息进行保密处理,从而防止请求设备和鉴别接入控制器的身份信息在传输过程中暴露,保证攻击者无法获得私密、敏感的信息。并且通过引入鉴别服务器,在保障实体身份相关信息机密性的同时,实现请求设备和鉴别接入控制器的双向身份鉴别,为确保只有合法用户才能与合法网络通信奠定基础。
在一些实施例中,S101的REQInit中还可以包括REQ的数字签名SigREQ,SigREQ的签名数据包括REQInit中SigREQ之前的其他字段,则在S111之前,AAC还需要确定SigREQ是否验证通过,验证通过才能执行S111。需要说明的是,若AS-REQ和AS-AAC为同一个鉴别服务器,则所述SigREQ可以由AS-AAC(也可以表示为AS-REQ)进行验证,也可以由AAC进行验证;若AS-REQ和AS-AAC为两个不同的鉴别服务器,则所述SigREQ可以由AS-REQ进行验证,也可以由AAC进行验证。其中,AAC确定SigREQ是否验证通过包括以下方式:
作为一种由鉴别服务器来验证所述SigREQ的实施例,在AS-REQ和AS-AAC为同一个鉴别服务器(即非漫游)的情形下,当AS-AAC(也可以表示为AS-REQ)验证所述SigREQ时,SigREQ可以被携带在S102的AACVeri中传递至AS-AAC(也可以表示为AS-REQ),AS-AAC(也可以表示为AS-REQ)利用解密AACVeri中的EncPubAS得到的CertREQ验证所述SigREQ,若验证通过,则继续执行生成并发送第一鉴别响应消息ASVeri等步骤,若验证不通过,则不会执行生成并发送第一鉴别响应消息ASVeri等步骤。因此,AAC可以根据是否能接收到第一鉴别响应消息ASVeri来确定SigREQ是否验证通过,若AAC能接收到S103的ASVeri,则AAC可以确定SigREQ验证通过。
作为一种由鉴别服务器来验证所述SigREQ的另一实施例,在AS-REQ和AS-AAC为两个不同的鉴别服务器(即漫游)的情形下,当AS-REQ验证所述SigREQ时,SigREQ可以被携带在S102的AACVeri、AS-AAC向AS-REQ发送的第二鉴别请求消息AS-AACVeri中传递至AS-REQ,AS-REQ利用解密AS-AACVeri中的EncPubAS得到的CertREQ验证所述SigREQ,若验证通过,则继续执行生成并发送第二鉴别响应消息AS-REQVeri以及生成并发送后续的第一鉴别响应消息ASVeri等步骤,若验证不通过,则不会执行生成并发送第二鉴别响应消息AS-REQVeri以及不会生成并发送后续的第一鉴别响应消息ASVeri等步骤。因此,AAC可以根据是否能接收到第一鉴别响应消息ASVeri来确定SigREQ是否验证通过,若AAC能接收到S103的ASVeri,则AAC可以确定SigREQ验证通过。
作为一种由AAC验证所述SigREQ的实施例,鉴别服务器生成的所述第二鉴别结果信息中不仅包括ResREQ,还包括CertREQ。则AAC接收到S109的REQAuth后,利用第二密钥解密第二鉴别结果信息密文得到的第二鉴别结果信息中还包括CertREQ,并利用第二鉴别结果信息中的CertREQ验证所述SigREQ,从而确定SigREQ是否验证通过。
在另一些实施例中,S109的REQAuth中还可以包括REQ的数字签名SigREQ,SigREQ的签名数据包括REQAuth中SigREQ之前的其他字段,此种情形下,S110中所述鉴别接入控制器利用第二密钥解密第二鉴别结果信息密文得到的第二鉴别结果信息中还包括CertREQ,则在S111之前,AAC还需要利用第二鉴别结果信息中的CertREQ对SigREQ进行验证,根据验证结果确定SigREQ是否验证通过,验证通过才能执行S111。
在一些实施例中,S102的AACVeri中还可以包括AAC的数字签名SigAAC,SigAAC的签名数据包括AACVeri中SigAAC之前的其他字段,则在S108之前,REQ还需要确定SigAAC是否验证通过,验证通过才能执行S108。其中,REQ确定SigAAC是否验证通过包括以下方式:由AAC信任的AS-AAC利用AACVeri中的CertAAC对SigAAC进行验证,验证通过后,才会继续执行后续流程,因此若REQ能接收到S105的AACAuth,则REQ确定SigAAC已验证通过。
在另一些实施例中,S105的AACAuth中还可以包括AAC的数字签名SigAAC,SigAAC的签名数据包括AACAuth中SigAAC之前的其他字段,相应的,在AACAuth中,EncDataAAC的加密数据中的第一鉴别结果信息中还包括CertAAC;则在S108之前,REQ还需要确定SigAAC是否验证通过,验证通过才能执行S108。其中,REQ确定SigAAC是否验证通过包括以下方式:REQ利用解密EncDataAAC得到的第一鉴别结果信息中的CertAAC对SigAAC进行验证,根据验证结果确定SigAAC是否验证通过。
请参考图1,在REQ、AAC和鉴别服务器之间传递的消息中还可以包括AAC和/或REQ生成的随机数、身份标识等参数信息,正常情况下,在身份鉴别过程中,这些随机数和/或身份标识通过各个消息进行传输的过程中应该是不变的,但是如果遇到网络抖动或攻击等情况时,可能造成消息中参数信息的丢失或篡改。因此,在身份鉴别时还可以对消息中的身份标识和/或随机数的一致性进行验证,以保障鉴别结果的可靠性。具体如下:
例如,S101的REQInit中,REQ生成身份信息密文EncPubAS时的加密数据还可以包括REQ的身份标识IDREQ和第三密钥NonceREQID,其中,NonceREQID用于对IDREQ加密;S102的AACVeri中还可以包括AAC的身份标识IDAAC;相应的,S103的ASVeri中还包括REQ的身份标识密文和IDAAC,S105的AACAuth中的EncDataAAC的加密数据还包括REQ的身份标识密文,其中,REQ的身份标识密文是利用NonceREQID对IDREQ加密得到的,例如可以将NonceREQID与IDREQ进行异或运算,即IDREQ⊕NonceREQID作为REQ的身份标识密文。因此,在S108之前,REQ利用消息加密密钥对EncDataAAC解密还得到REQ的身份标识密文,REQ还需要根据自身的身份标识IDREQ和所述NonceREQID对解密EncDataAAC得到的REQ的身份标识密文进行验证,具体包括:REQ利用所述NonceREQID对包括REQ自身的身份标识IDREQ在内的信息加密生成REQ的身份标识密文,并将生成的REQ的身份标识密文与解密EncDataAAC得到的REQ的身份标识密文进行一致性验证;或者,REQ利用所述NonceREQID对REQ的身份标识密文解密得到IDREQ,将解密得到的IDREQ与REQ自身的身份标识IDREQ进行一致性验证,验证通过后,REQ再执行S108。在S111之前,AAC可以对ASVeri中的IDAAC和AAC自身的身份标识IDAAC(也就是AAC通过AACVeri发出去的IDAAC)的一致性进行验证,验证通过后,AAC再执行S111。
与身份标识类似,S101的REQInit中还可以包括REQ生成的第二随机数NonceREQ,S102的AACVeri中还可以包括NonceREQ和AAC生成的第一随机数NonceAAC;则S103的ASVeri中还可以包括NonceREQ和NonceAAC,S105的AACAuth中的EncDataAAC的加密数据还可以包括NonceREQ;则在S108之前,REQ对EncDataAAC解密还得到NonceREQ,并将解密得到的NonceREQ与REQ生成的NonceREQ的一致性进行验证,验证通过后,再执行S108。在S111之前,AAC可以对ASVeri中的NonceAAC和AAC生成的NonceAAC的一致性进行验证,验证通过后,再执行S111。
在另一些实施例中,为保障鉴别结果的可靠性,AAC可以生成消息完整性校验码。S105的AACAuth中还可以包括第一消息完整性校验码MacTagAAC,MacTagAAC是AAC利用消息完整性校验密钥对包括AACAuth中除MacTagAAC外的其他字段计算生成的。相应的,在S108之前,REQ还需要验证MacTagAAC,验证通过后再执行S108。REQ验证MacTagAAC时,应利用所述消息完整性校验密钥对包括AACAuth中除MacTagAAC外的其他字段计算生成MacTagAAC,并将计算出的MacTagAAC与接收到的AACAuth中的MacTagAAC进行比较,若一致,则验证通过,若不一致,则验证不通过。
同样的,REQ也可以生成消息完整性校验码。S109的REQAuth中还可以包括第二消息完整性校验码MacTagREQ,MacTagREQ是REQ利用消息完整性校验密钥对包括REQAuth中除MacTagREQ外的其他字段计算生成的。相应的,在S111之前,AAC还需要验证MacTagREQ,验证通过后再执行S111。AAC验证MacTagREQ时,应利用所述消息完整性校验密钥对包括REQAuth中除MacTagREQ外的其他字段计算生成MacTagREQ,并将计算出的MacTagREQ与接收到的REQAuth中的MacTagREQ进行比较,若一致,则验证通过,若不一致,则验证不通过。其中,REQ和AAC利用的消息完整性校验密钥的生成方式在下一实施例中介绍。
以上实施例中,REQ和AAC使用的消息加密密钥可以是二者协商得到的,因此本实施例还提供一种REQ和AAC协商消息加密密钥的方法,参见图2,所述方法包括:
S201、AAC向REQ发送密钥请求消息AACInit。
所述AACInit中包括AAC的密钥交换参数KeyInfoAAC,KeyInfoAAC包括AAC的临时公钥,其中,密钥交换是指如迪菲·赫尔曼(Diffie-Hellman,简称DH)等密钥交换算法。所述AACInit还可以包括AAC生成的第一随机数NonceAAC
所述AACInit中还可以包括Security capabilitiesAAC,SecuritycapabilitiesAAC表示AAC支持的安全能力参数信息,包括AAC支持的身份鉴别套件(身份鉴别套件中包含一种或多种身份鉴别方法)、对称加密算法、完整性校验算法和/或密钥导出算法等,以供REQ选择使用的特定安全策略,则REQ可以根据Security capabilitiesAAC选择REQ使用的特定安全策略Security capabilitiesREQ。Security capabilitiesREQ表示REQ相应确定使用的身份鉴别方法、对称加密算法、完整性校验算法和/或密钥导出算法等。
S202、REQ根据包括REQ的密钥交换参数KeyInfoREQ对应的临时私钥和KeyInfoAAC所包括的临时公钥进行密钥交换计算生成第一密钥,根据包括所述第一密钥在内的信息利用密钥导出算法计算消息加密密钥。
若S201中的AACInit中还包括AAC生成的NonceAAC,则REQ可以根据包括KeyInfoREQ对应的临时私钥和KeyInfoAAC所包括的临时公钥进行密钥交换计算生成第一密钥K1,将K1结合包括NonceAAC和REQ生成的第二随机数NonceREQ在内的信息,利用协商的或预置的密钥导出算法计算消息加密密钥。协商的密钥导出算法可以是REQ根据AAC发送的SecuritycapabilitiesAAC而选择使用的密钥导出算法。其中,KeyInfoREQ是REQ产生的密钥交换参数,包括REQ的临时公钥。KeyInfoREQ对应的临时私钥是REQ产生的对应于REQ的临时公钥的临时私钥,即所述临时公钥和临时私钥是一对临时公私钥对。
S203、REQ向AAC发送身份密文消息REQInit。
所述REQInit中包括KeyInfoREQ,以便AAC根据包括KeyInfoAAC对应的临时私钥和KeyInfoREQ所包括的临时公钥在内的信息计算得到消息加密密钥。其中,KeyInfoAAC对应的临时私钥是AAC产生的对应于AAC的临时公钥的临时私钥,即所述临时公钥和临时私钥是一对临时公私钥对。
所述REQInit中还可以包括Security capabilitiesREQ。所述REQInit中还可以包括NonceREQ,以便AAC根据包括所述KeyInfoAAC对应的临时私钥、所述KeyInfoREQ所包括的临时公钥、所述NonceAAC和所述NonceREQ在内的信息计算得到该消息加密密钥。
所述REQInit中还可以包括所述NonceAAC,进而AAC可以在计算消息加密密钥之前,对REQInit中的NonceAAC和AAC生成的NonceAAC的一致性进行验证,以确保AAC接收的REQInit是对AACInit的响应消息。
S204、AAC根据包括KeyInfoAAC对应的临时私钥和KeyInfoREQ所包括的临时公钥进行密钥交换计算生成所述第一密钥,根据包括所述第一密钥在内的信息利用所述密钥导出算法计算消息加密密钥。
若所述REQInit中还包括所述NonceREQ,则AAC可以根据包括所述KeyInfoAAC对应的临时私钥和所述KeyInfoREQ所包括的临时公钥进行密钥交换计算生成所述第一密钥K1,将K1结合包括所述NonceAAC和所述NonceREQ在内的信息,利用协商的或预置的密钥导出算法计算该消息加密密钥。其中,协商的密钥导出算法可以是AAC根据REQ发送的SecuritycapabilitiesREQ而选择使用的密钥导出算法。
需要说明的是,在图2实施例中,REQ和AAC也可以生成消息完整性校验密钥。REQ和AAC各自生成消息完整性校验密钥的实施方式与图2实施例中示例的REQ和AAC各自生成消息加密密钥的实施方式相同。例如,AAC可以通过图2实施例的方式利用密钥导出算法导出一串密钥数据,该密钥数据既可以作为消息加密密钥又可以作为消息完整性校验密钥,或者,将该密钥数据中的一部分密钥数据作为消息加密密钥,将另一部分密钥数据作为消息完整性校验密钥;AAC也可以通过图2实施例的方式利用密钥导出算法分次导出两串相同或不同的密钥数据,一串作为消息加密密钥,一串作为消息完整性校验密钥。REQ可以通过图2实施例的方式利用密钥导出算法导出一串密钥数据,该密钥数据既可以作为消息加密密钥又可以作为消息完整性校验密钥,或者,将该密钥数据中的一部分密钥数据作为消息加密密钥,将另一部分密钥数据作为消息完整性校验密钥;REQ也可以通过图2实施例的方式利用密钥导出算法分次导出两串相同或不同的密钥数据,一串作为消息加密密钥,一串作为消息完整性校验密钥。
本申请实施例还提供了利用AAC和REQ之间信息交互来确定本次鉴别过程所使用的第一鉴别服务器和/或第二鉴别服务器的方法:
请参考图2,AAC在S201的AACInit中添加AAC信任的至少一个鉴别服务器的身份标识IDAS_AAC,则REQ根据所述IDAS_AAC确定自身信任的至少一个鉴别服务器的身份标识IDAS_REQ。具体实现时,REQ从IDAS_AAC中选取至少一个鉴别服务器且是自身信任的鉴别服务器作为IDAS_REQ,若选取失败,则REQ将自身信任的至少一个鉴别服务器作为IDAS_REQ(其中,选取成功对应非漫游情况,选取失败对应漫游情况),将该IDAS_REQ添加至S203的REQInit中发送给AAC。进而,AAC可以根据IDAS_AAC和IDAS_REQ确定第一鉴别服务器,例如AAC可以判断IDAS_REQ和IDAS_AAC中是否存在至少一个相同的鉴别服务器的身份标识,若存在,即为非漫游情况,AAC从上述至少一个REQ和AAC共同信任的鉴别服务器的身份标识中,确定参与身份鉴别的第一鉴别服务器;若不存在,则为漫游情况,AAC需要根据IDAS_AAC确定参与身份鉴别的第一鉴别服务器AS-AAC,并将IDAS_REQ发送给AS-AAC,以便AS-AAC根据IDAS_REQ确定第二鉴别服务器AS-REQ。
作为另一种实施方式,AAC可以不必向REQ发送IDAS_AAC,而由REQ在S203的REQInit中添加自身信任的至少一个鉴别服务器的身份标识IDAS_REQ。根据IDAS_REQ和AAC自身信任的鉴别服务器的身份标识IDAS_AAC确定参与身份鉴别过程的第一鉴别服务器和/或第二鉴别服务器的具体实现方式如前一种实施方式。
由于REQ和AAC信任的鉴别服务器可以相同也可以不同,当REQ和AAC信任的鉴别服务器相同时,即为非漫游情况;当REQ和AAC信任的鉴别服务器不同时,即为漫游情况。
参见图3,是非漫游情况下身份鉴别方法的一个实施例,其中可以用AS-AAC(也可以用AS-REQ)表示REQ和AAC共同信任的鉴别服务器,并且在身份鉴别过程中,还可以对REQ的数字签名SigREQ进行验证。在该实施例执行前,REQ和AAC已经都拥有了消息加密密钥,消息加密密钥可以是双方预先共享的,也可以是通过图2所示的方法协商得到的,由AAC验证SigREQ的身份鉴别方法包括:
S301、AAC获取REQ发送的身份密文消息REQInit。
所述REQInit中包括REQ的身份信息密文EncPubAS和REQ的数字签名SigREQ
S302、AAC向AS-AAC发送第一鉴别请求消息AACVeri。
所述AACVeri中包括EncPubAS和AAC的数字证书CertAAC
S303、AS-AAC利用加密证书对应的私钥解密EncPubAS得到REQ的数字证书CertREQ和第二密钥NonceREQPub,分别对CertAAC及CertREQ进行合法性验证得到CertAAC的第一验证结果ResAAC和CertREQ的第二验证结果ResREQ,根据包括CertAAC和ResAAC在内的信息生成第一鉴别结果信息,根据包括CertREQ和ResREQ在内的信息生成第二鉴别结果信息,对包括第一鉴别结果信息在内的签名数据计算生成第一数字签名SigAS_AAC1,利用NonceREQPub对包括第二鉴别结果信息在内的信息加密生成第二鉴别结果信息密文,对包括第二鉴别结果信息密文在内的签名数据计算生成第二数字签名SigAS_AAC2
S304、AAC接收AS-AAC发送的第一鉴别响应消息ASVeri。
所述ASVeri中包括第一鉴别结果信息、第一数字签名SigAS_AAC1、第二鉴别结果信息密文、第二数字签名SigAS_AAC2
S305、AAC利用AS-AAC的公钥对SigAS_AAC2进行验证,验证通过,则利用消息加密密钥对包括第一鉴别结果信息和SigAS_AAC1在内的加密数据加密生成鉴别结果信息密文EncDataAAC,对包括EncDataAAC在内的签名数据计算生成AAC的数字签名SigAAC
S306、AAC向REQ发送第三鉴别响应消息AACAuth。
所述AACAuth中包括所述EncDataAAC和所述SigAAC
S307、REQ利用消息加密密钥对EncDataAAC解密得到第一鉴别结果信息和SigAS_AAC1
S308、REQ利用AS-AAC的公钥验证SigAS_AAC1,以及,利用第一鉴别结果信息中的CertAAC验证SigAAC
若验证均通过,则执行S309。
S309、REQ根据第一鉴别结果信息中的ResAAC确定AAC的身份鉴别结果。
当REQ确定AAC为合法时,执行S310;当REQ确定AAC为不合法时,结束本次鉴别过程。
S310、REQ利用消息加密密钥对包括第二密钥NonceREQPub在内的信息加密得到第二密钥密文EncDataREQ
S311、REQ向AAC发送第四鉴别响应消息REQAuth。
所述REQAuth中包括所述EncDataREQ
S312、AAC利用消息加密密钥解密EncDataREQ得到NonceREQPub,利用NonceREQPub解密第二鉴别结果信息密文得到第二鉴别结果信息。
S313、AAC利用解密得到的第二鉴别结果信息中的CertREQ验证REQ的数字签名SigREQ
若验证通过,则执行S314。
S314、AAC根据解密得到的第二鉴别结果信息中的ResREQ确定REQ的身份鉴别结果。
需要说明的是,(1)、S301的REQInit中也可以不包括SigREQ,而在S311的REQAuth中添加SigREQ,即在S311中,REQ先对包括所述REQAuth中的EncDataREQ在内的签名数据计算生成SigREQ,此情形下,S313中AAC验证的SigREQ为REQAuth中的SigREQ。(2)、S305中计算SigAAC的操作也可以改为在S302中先行执行,即在S302中,AAC先对包括所述AACVeri中的EncPubAS和CertAAC在内的签名数据计算生成SigAAC,则S302的AACVeri中还包括SigAAC,在S303中,AS-AAC还需要验证SigAAC,验证通过后再执行后续操作;此情形下,在S305中AAC则不用计算SigAAC,相应的,S306的AACAuth中不包括SigAAC,在S308中REQ也不再验证SigAAC,此时第一鉴别结果信息中可以不包括CertAAC
参见图4,是非漫游情况下身份鉴别方法的另一个实施例,其中可以用AS-AAC(也可以用AS-REQ)表示REQ和AAC共同信任的鉴别服务器,并且在身份鉴别过程中,还可以对REQ的数字签名SigREQ进行验证。在该实施例执行前,REQ和AAC已经都拥有了消息加密密钥,消息加密密钥可以是双方预先共享的,也可以是通过图2所示的方法协商得到的,由AS-AAC验证SigREQ的身份鉴别方法包括:
S401、AAC获取REQ发送的身份密文消息REQInit。
所述REQInit中包括REQ的身份信息密文EncPubAS和REQ的数字签名SigREQ
S402、AAC向AS-AAC发送第一鉴别请求消息AACVeri。
所述AACVeri中包括REQInit和AAC的数字证书CertAAC
S403、AS-AAC利用加密证书对应的私钥对REQInit中的EncPubAS解密得到REQ的数字证书CertREQ和第二密钥NonceREQPub,利用CertREQ对SigREQ进行验证。
若验证通过,则执行S404。
S404、AS-AAC对CertAAC及CertREQ进行合法性验证,得到CertAAC的第一验证结果ResAAC和CertREQ的第二验证结果ResREQ,根据包括CertAAC和ResAAC在内的信息生成第一鉴别结果信息,根据包括ResREQ在内的信息生成第二鉴别结果信息,对包括第一鉴别结果信息在内的签名数据计算生成第一数字签名SigAS_AAC1,利用NonceREQPub对包括第二鉴别结果信息在内的信息加密生成第二鉴别结果信息密文,对包括第二鉴别结果信息密文在内的签名数据计算生成第二数字签名SigAS_AAC2
S405、AAC接收AS-AAC发送的第一鉴别响应消息ASVeri。
所述ASVeri中包括第一鉴别结果信息、第一数字签名SigAS_AAC1、第二鉴别结果信息密文、第二数字签名SigAS_AAC2
S406、AAC利用AS-AAC的公钥验证SigAS_AAC2,验证通过后,则利用消息加密密钥对包括第一鉴别结果信息和SigAS_AAC1在内的加密数据加密生成鉴别结果信息密文EncDataAAC,对包括EncDataAAC在内的签名数据计算生成AAC的数字签名SigAAC
S407、AAC向REQ发送第三鉴别响应消息AACAuth。
所述AACAuth中包括所述EncDataAAC和所述SigAAC
S408、REQ利用消息加密密钥解密EncDataAAC得到第一鉴别结果信息和SigAS_AAC1
S409、REQ利用AS-AAC的公钥验证SigAS_AAC1,以及,利用第一鉴别结果信息中的CertAAC验证SigAAC
若验证均通过,则执行S410。
S410、REQ根据第一鉴别结果信息中的ResAAC确定AAC的身份鉴别结果。
当REQ确定AAC为合法时,执行S411。当REQ确定AAC为不合法时,结束本次鉴别过程。
S411、REQ利用消息加密密钥对包括第二密钥NonceREQPub在内的信息加密得到第二密钥密文EncDataREQ
S412、REQ向AAC发送第四鉴别响应消息REQAuth。
所述REQAuth中包括所述EncDataREQ
S413、AAC利用消息加密密钥解密EncDataREQ得到NonceREQPub,利用NonceREQPub解密第二鉴别结果信息密文得到第二鉴别结果信息。
S414、AAC根据解密得到的第二鉴别结果信息中的ResREQ确定REQ的身份鉴别结果。
需要说明的是,在S406中计算SigAAC的操作也可以改为在S402中先行执行,即在S402中,AAC先对包括所述AACVeri中的REQInit和CertAAC在内的签名数据计算生成SigAAC,则S402的AACVeri中还包括SigAAC,在S403中,AS-AAC还需要验证SigAAC,验证通过后再执行后续操作;此情形下,在S406中AAC则不用计算SigAAC,相应的,S407的AACAuth中不包括SigAAC,在S409中REQ也不再验证SigAAC,此时第一鉴别结果信息中可以不包括CertAAC
参见图5,是漫游情况下身份鉴别方法的一个实施例,此时AS-AAC和AS-REQ相互信任,且知晓对方的数字证书或数字证书中的公钥,并且在身份鉴别过程中,还可以对REQ的数字签名SigREQ进行验证。在该实施例执行前,REQ和AAC已经都拥有了消息加密密钥,消息加密密钥可以是双方预先共享的,也可以是通过图2所示的方法协商得到的,由AAC验证SigREQ的身份鉴别方法包括:
S501、AAC获取REQ发送的身份密文消息REQInit。
所述REQInit中包括REQ的身份信息密文EncPubAS、REQ信任的至少一个鉴别服务器的身份标识IDAS_REQ及REQ的数字签名SigREQ
S502、AAC向AS-AAC发送第一鉴别请求消息AACVeri。
所述AACVeri中包括EncPubAS、AAC的数字证书CertAAC及IDAS_REQ,以便AS-AAC对CertAAC进行合法性验证得到ResAAC,根据包括CertAAC和ResAAC在内的信息生成第一鉴别结果信息,然后根据IDAS_REQ确定出此次鉴别过程中用到的AS-REQ。
S503、AS-AAC向AS-REQ发送第二鉴别请求消息AS-AACVeri。
所述AS-AACVeri中包括第一鉴别结果信息、EncPubAS和第三数字签名SigAS_AAC3。其中,SigAS_AAC3是由AS-AAC对包括所述第一鉴别结果信息和所述EncPubAS在内的签名数据计算生成的。
S504、AS-REQ利用AS-AAC的公钥验证SigAS_AAC3
若验证通过,则执行S505。
S505、AS-REQ利用加密证书对应的私钥解密EncPubAS得到CertREQ和第二密钥NonceREQPub
S506、AS-REQ对CertREQ进行合法性验证得到ResREQ,根据包括CertREQ和ResREQ在内的信息生成第二鉴别结果信息,利用NonceREQPub对包括第二鉴别结果信息在内的信息加密生成第二鉴别结果信息密文,对包括所述第一鉴别结果信息在内的签名数据计算生成第一数字签名SigAS_REQ1,对包括所述第二鉴别结果信息密文在内的签名数据计算生成第四数字签名SigAS_REQ4
S507、AS-REQ向AS-AAC发送第二鉴别响应消息AS-REQVeri。
所述AS-REQVeri中包括第一鉴别结果信息、第一数字签名SigAS_REQ1、第二鉴别结果信息密文和第四数字签名SigAS_REQ4
S508、AS-AAC利用AS-REQ的公钥验证SigAS_REQ4
若验证通过,则执行S509。
S509、AS-AAC对包括第二鉴别结果信息密文在内的签名数据计算生成第二数字签名SigAS_AAC2,根据包括所述第一鉴别结果信息、所述第一数字签名SigAS_REQ1、所述第二鉴别结果信息密文和所述第二数字签名SigAS_AAC2在内的信息生成第一鉴别响应消息ASVeri。
S510、AS-AAC向AAC发送第一鉴别响应消息ASVeri。
S511、AAC利用AS-AAC的公钥验证SigAS_AAC2,验证通过后,则利用消息加密密钥对包括所述第一鉴别结果信息和所述SigAS_REQ1在内的加密数据加密生成鉴别结果信息密文EncDataAAC,对包括EncDataAAC在内的签名数据计算生成AAC的数字签名SigAAC
S512、AAC向REQ发送第三鉴别响应消息AACAuth。
所述AACAuth中包括所述EncDataAAC和所述SigAAC
S513、REQ利用消息加密密钥解密EncDataAAC得到所述第一鉴别结果信息和所述SigAS_REQ1
S514、REQ利用AS-REQ的公钥验证SigAS_REQ1,以及,利用第一鉴别结果信息中的CertAAC验证SigAAC
若验证均通过,则执行S515。
S515、REQ根据第一鉴别结果信息中的ResAAC确定AAC的身份鉴别结果。
当REQ确定AAC为合法时,执行S516;当REQ确定AAC为不合法时,结束本次鉴别过程。
S516、REQ利用消息加密密钥对包括第二密钥NonceREQPub在内的信息加密得到第二密钥密文EncDataREQ
S517、REQ向AAC发送第四鉴别响应消息REQAuth。
所述REQAuth中包括所述EncDataREQ
S518、AAC利用消息加密密钥解密EncDataREQ得到NonceREQPub,利用NonceREQPub解密所述第二鉴别结果信息密文得到第二鉴别结果信息。
S519、AAC利用解密得到的第二鉴别结果信息中的CertREQ验证REQ的数字签名SigREQ
若验证通过,则执行S520。
S520、AAC根据解密得到的第二鉴别结果信息中的ResREQ确定REQ的身份鉴别结果。
需要说明的是,(1)、S501的REQInit中也可以不包括SigREQ,而在S517的REQAuth中添加SigREQ,即在S517中,REQ先对包括所述REQAuth中的EncDataREQ在内的签名数据计算生成SigREQ;此情形下,S519中AAC验证的SigREQ为REQAuth中的SigREQ。(2)、S511中计算SigAAC的操作也可以改为在S502中先行执行,即在S502中,AAC先对包括所述AACVeri中的EncPubAS、CertAAC和IDAS_REQ在内的签名数据计算生成SigAAC,则S502的AACVeri中还包括SigAAC,在S503中,AS-AAC还需要先验证SigAAC,验证通过后再执行后续操作;此情形下,在S511中AAC则不用计算SigAAC,相应的,S512的AACAuth中不包括SigAAC,S514中REQ也不再验证SigAAC,此时第一鉴别结果信息中可以不包括CertAAC
参见图6,是漫游情况下身份鉴别方法的另一个实施例,此时AS-AAC和AS-REQ相互信任,且知晓对方的数字证书或数字证书中的公钥,且在身份鉴别过程中,还可以对REQ的数字签名SigREQ进行验证。在该实施例执行前,REQ和AAC已经都拥有了消息加密密钥,消息加密密钥可以是双方预先共享的也可以是通过图2所示的方法协商得到的,由AS-REQ验证SigREQ的身份鉴别方法包括:
S601、AAC获取REQ发送的身份密文消息REQInit。
所述REQInit中包括REQ的身份信息密文EncPubAS、REQ信任的至少一个鉴别服务器的身份标识IDAS_REQ及REQ的数字签名SigREQ
S602、AAC向AS-AAC发送第一鉴别请求消息AACVeri。
所述AACVeri中包括REQInit和CertAAC,以便AS-AAC对CertAAC进行合法性验证得到ResAAC,根据包括CertAAC和ResAAC在内的信息生成第一鉴别结果信息。
S603、AS-AAC向AS-REQ发送第二鉴别请求消息AS-AACVeri。
AS-AAC根据REQInit中的IDAS_REQ确定出此次鉴别过程中用到的AS-REQ,并向AS-REQ发送AS-AACVeri。所述AS-AACVeri中包括REQInit、第一鉴别结果信息和第三数字签名SigAS_AAC3。其中,SigAS_AAC3是由AS-AAC对包括REQInit和第一鉴别结果信息在内的签名数据计算生成的。
S604、AS-REQ利用AS-AAC的公钥验证SigAS_AAC3
若验证通过,则执行S605。
S605、AS-REQ利用加密证书对应的私钥解密REQInit中的EncPubAS得到CertREQ和第二密钥NonceREQPub
S606、AS-REQ利用CertREQ验证REQ的数字签名SigREQ
若验证通过,则执行S607。
S607、AS-REQ对CertREQ的合法性进行验证得到ResREQ,根据包括ResREQ在内的信息生成第二鉴别结果信息,利用NonceREQPub对包括第二鉴别结果信息在内的信息加密生成第二鉴别结果信息密文,对包括所述第一鉴别结果信息在内的签名数据计算生成第一数字签名SigAS_REQ1,对包括所述第二鉴别结果信息密文在内的签名数据计算生成第四数字签名SigAS_REQ4
S608、AS-REQ向AS-AAC发送第二鉴别响应消息AS-REQVeri。
所述AS-REQVeri中包括第一鉴别结果信息、第一数字签名SigAS_REQ1、第二鉴别结果信息密文和第四数字签名SigAS_REQ4
S609、AS-AAC利用AS-REQ的公钥验证SigAS_REQ4
若验证通过,则执行610。
S610、AS-AAC对包括第二鉴别结果信息密文在内的签名数据计算生成第二数字签名SigAS_AAC2,根据包括所述第一鉴别结果信息、所述第一数字签名SigAS_REQ1、所述第二鉴别结果信息密文和所述第二数字签名SigAS_AAC2在内的信息生成第一鉴别响应消息ASVeri。
S611、AS-AAC向AAC发送第一鉴别响应消息ASVeri。
S612、AAC利用AS-AAC的公钥验证SigAS_AAC2,验证通过后,则利用消息加密密钥对包括所述第一鉴别结果信息和所述SigAS_REQ1在内的加密数据加密生成鉴别结果信息密文EncDataAAC,对包括EncDataAAC在内的签名数据计算生成AAC的数字签名SigAAC
S613、AAC向REQ发送第三鉴别响应消息AACAuth。
所述AACAuth中包括所述EncDataAAC和所述SigAAC
S614、REQ利用消息加密密钥解密EncDataAAC得到所述第一鉴别结果信息和所述SigAS_REQ1
S615、REQ利用AS-REQ的公钥验证SigAS_REQ1,以及,利用第一鉴别结果信息中的CertAAC验证SigAAC
若验证均通过,则执行S616。
S616、REQ根据第一鉴别结果信息中的ResAAC确定AAC的身份鉴别结果。
当REQ确定AAC为合法时,执行S617;当REQ确定AAC为不合法时,结束本次鉴别过程。
S617、REQ利用消息加密密钥对包括第二密钥NonceREQPub在内的信息加密得到第二密钥密文EncDataREQ
S618、REQ向AAC发送第四鉴别响应消息REQAuth。
所述REQAuth中包括所述EncDataREQ
S619、AAC利用消息加密密钥解密EncDataREQ得到NonceREQPub,利用NonceREQPub解密所述第二鉴别结果信息密文得到第二鉴别结果信息。
S620、AAC根据解密得到的第二鉴别结果信息中的ResREQ确定REQ的身份鉴别结果。
需要说明的是,S612中计算SigAAC的操作也可以改为在S602中先行执行,即在S602中,AAC先对包括所述AACVeri中的REQInit和CertAAC在内的签名数据计算生成SigAAC,则S602的AACVeri中还包括SigAAC,在S603中,AS-AAC还需要先验证SigAAC,验证通过后再执行后续操作;此情形下,在S612中AAC则不用计算SigAAC,相应的,S613的AACAuth中不包括SigAAC,S615中REQ也不再验证SigAAC,此时第一鉴别结果信息中可以不包括CertAAC
为表述简便,在图7至图10的实施例中,第一鉴别结果信息可以用字段PubAAC表示,第二鉴别结果信息可以用字段PubREQ表示。
参见图7,是非漫游情况下身份鉴别方法的一个实施例,此时可以用AS-AAC(也可以用AS-REQ)表示REQ和AAC共同信任的鉴别服务器。在该实施例中,REQ和AAC之间的消息加密密钥协商过程被并行地融合到了身份鉴别过程中,更便于工程实施。其中,REQ的数字签名SigREQ由AAC验证,该方法包括:
S701、AAC生成NonceAAC和KeyInfoAAC,根据需要生成Security capabilitiesAAC
S702、AAC向REQ发送密钥请求消息AACInit。
所述AACInit中包括NonceAAC、KeyInfoAAC和Security capabilitiesAAC。其中,Security capabilitiesAAC为可选字段,表示AAC支持的安全能力参数信息,包括AAC支持的身份鉴别套件、对称加密算法、完整性校验算法和/或密钥导出算法等(全文同)。
S703、REQ生成NonceREQ、KeyInfoREQ、NonceREQID和NonceREQPub,根据需要生成Security capabilitiesREQ,根据包括KeyInfoREQ对应的临时私钥和KeyInfoAAC所包括的临时公钥进行密钥交换计算生成第一密钥K1,将K1结合NonceAAC、NonceREQ及其他信息(REQ和AAC采用的其他信息是相同的且可选的,譬如特定字符串等)利用协商的或预置的密钥导出算法计算消息加密密钥和消息完整性校验密钥(这一步也可以在后续需要使用消息加密密钥和/或消息完整性校验密钥时再执行);利用加密证书的公钥计算REQ的身份信息密文EncPubAS;计算SigREQ
其中,Security capabilitiesREQ为可选字段,表示REQ根据SecuritycapabilitiesAAC作出的特定安全策略的选择,即REQ确定使用的身份鉴别方法、对称加密算法、完整性校验算法和/或密钥导出算法等(全文同);REQ是否生成SecuritycapabilitiesREQ取决于AAC向REQ发送的AACInit中是否携带Security capabilitiesAAC
S704、REQ向AAC发送身份密文消息REQInit。
所述REQInit中包括NonceAAC、NonceREQ、Security capabilitiesREQ、KeyInfoREQ、EncPubAS及SigREQ。其中,NonceAAC和Security capabilitiesREQ为可选字段,NonceAAC应等于AACInit中的NonceAAC;EncPubAS的加密数据包括IDREQ、CertREQ、NonceREQID及NonceREQPub。SigREQ的签名数据包括REQInit中SigREQ之前的其他字段。例如,当REQInit中依次包括NonceAAC、NonceREQ、Security capabilitiesREQ、KeyInfoREQ、EncPubAS及SigREQ时,SigREQ的签名数据包括NonceAAC、NonceREQ、Security capabilitiesREQ、KeyInfoREQ及EncPubAS;另外,当REQInit中不包括NonceAAC时,SigREQ的签名数据还包括AACInit中的NonceAAC
S705、AAC接收所述REQInit后,执行下述操作(若无特别说明或逻辑上的关系,本文中以(1)、(2)……编号的动作并不因为有编号而存在必然的先后顺序。全文同),包括:
(1)、若REQInit中存在NonceAAC,则检查所述NonceAAC与AAC生成的NonceAAC是否相同,若不同,则丢弃REQInit;
(2)、根据包括所述KeyInfoAAC对应的临时私钥和所述KeyInfoREQ所包括的临时公钥进行密钥交换计算生成第一密钥K1,将K1结合NonceAAC、NonceREQ及其他信息(AAC和REQ采用的其他信息是相同的且可选的,譬如特定字符串等)利用协商的或预置的密钥导出算法计算消息加密密钥和消息完整性校验密钥;当然,也可以在AAC需要使用消息加密密钥和/或消息完整性校验密钥时再执行该计算。
S706、AAC向AS-AAC发送第一鉴别请求消息AACVeri。
所述AACVeri中包括EncPubAS、NonceREQ、IDAAC、CertAAC及NonceAAC。其中,EncPubAS、NonceREQ应分别等于REQInit中的相应字段;NonceAAC应等于AAC生成的NonceAAC
S707、AS-AAC接收所述AACVeri后,执行下述操作,包括:
(1)、利用加密证书对应的私钥解密EncPubAS得到CertREQ、IDREQ、NonceREQPub、NonceREQID
(2)、分别验证CertAAC和CertREQ的合法性得到ResAAC和ResREQ,根据包括CertAAC和ResAAC在内的信息生成PubAAC,根据包括CertREQ和ResREQ在内的信息生成PubREQ,对IDREQ和NonceREQID进行异或运算生成IDREQ⊕NonceREQID,对PubREQ和NonceREQPub进行异或运算生成PubREQ⊕NonceREQPub
(3)、对包括IDREQ⊕NonceREQID、NonceREQ、PubAAC在内的信息进行签名计算生成第一数字签名SigAS_AAC1,对包括IDAAC、NonceAAC、PubREQ⊕NonceREQPub在内的信息进行签名计算生成第二数字签名SigAS_AAC2
S708、AS-AAC向AAC发送第一鉴别响应消息ASVeri。
所述ASVeri中包括IDREQ⊕NonceREQID、NonceREQ、PubAAC、SigAS_AAC1、IDAAC、NonceAAC、PubREQ⊕NonceREQPub和SigAS_AAC2。其中,IDREQ、NonceREQID、NonceREQ、IDAAC、NonceAAC、NonceREQPub应分别等于AACVeri中的相应字段。
S709、AAC接收所述ASVeri后,执行下述操作,包括:
(1)、检查IDAAC和NonceAAC是否分别与AAC自身的身份标识IDAAC、AAC生成的NonceAAC相同;
(2)、利用AS-AAC的公钥验证SigAS_AAC2
(3)、若上述检查与验证均通过,则利用消息加密密钥计算EncDataAAC,若上述检查与验证中任一步不通过,则立即丢弃ASVeri;
(4)、计算SigAAC
(5)、根据需要计算MacTagAAC
S710、AAC向REQ发送第三鉴别响应消息AACAuth。
所述AACAuth中包括NonceREQ、NonceAAC、EncDataAAC、SigAAC及MacTagAAC。其中,NonceREQ和NonceAAC为可选字段,应分别等于REQInit中的NonceREQ和AAC生成的NonceAAC。EncDataAAC的加密数据包括IDREQ⊕NonceREQID、NonceREQ、PubAAC和SigAS_AAC1,其中,IDREQ⊕NonceREQID、NonceREQ、PubAAC、SigAS_AAC1应分别等于ASVeri中的相应字段。SigAAC的签名数据包括AACAuth中SigAAC之前的其他字段;MacTagAAC为可选字段,MacTagAAC的计算过程为:利用消息完整性校验密钥采用完整性校验算法对包括AACAuth中除MacTagAAC外的其他字段计算生成MacTagAAC
S711、REQ接收所述AACAuth后,执行下述操作,包括:
(1)、若AACAuth中存在NonceREQ,则检查所述NonceREQ与REQ生成的NonceREQ是否相同;若AACAuth中存在NonceAAC,则检查所述NonceAAC与AACInit中的NonceAAC是否相同;
(2)、若AACAuth中存在MacTagAAC,则验证MacTagAAC
验证过程为:REQ利用消息完整性校验密钥采用完整性校验算法对包括AACAuth中除MacTagAAC外的其他字段在本地计算生成MacTagAAC(该计算方式与AAC计算MacTagAAC的方式相同),将计算出的MacTagAAC与接收到的AACAuth中的MacTagAAC进行比较。
(3)、利用消息加密密钥采用对称加密算法解密EncDataAAC得到IDREQ⊕NonceREQID、NonceREQ、PubAAC和SigAS_AAC1
(4)、将IDREQ⊕NonceREQID与NonceREQID进行异或运算恢复IDREQ,检查恢复的IDREQ与REQ自身的身份标识IDREQ是否相同;检查NonceREQ与REQ生成的NonceREQ是否相同;
(5)、利用AS-AAC的公钥验证SigAS_AAC1,以及,利用解密得到的PubAAC中的CertAAC验证SigAAC
(6)、上述检查与验证中任一步不通过,则立即丢弃AACAuth;上述检查与验证均通过后,根据PubAAC中的ResAAC确定AAC的身份鉴别结果;若确定AAC为不合法时,结束此次鉴别过程;
(7)、利用消息加密密钥计算EncDataREQ
(8)、计算MacTagREQ
S712、REQ向AAC发送第四鉴别响应消息REQAuth。
所述REQAuth中包括NonceAAC、NonceREQ、EncDataREQ和MacTagREQ。其中,NonceREQ和NonceAAC为可选字段,应分别等于REQ生成的NonceREQ和AACInit中的NonceAAC。EncDataREQ的加密数据包括NonceREQPub,且NonceREQPub应等于REQ生成的NonceREQPub;MacTagREQ的计算过程为:利用消息完整性校验密钥采用完整性校验算法对包括REQAuth中除MacTagREQ外的其他字段计算生成MacTagREQ
S713、AAC接收所述REQAuth后,执行以下操作,包括:
(1)、若REQAuth中存在NonceREQ,则检查所述NonceREQ与接收到的REQInit中的NonceREQ是否相同;若REQAuth中存在NonceAAC,则检查所述NonceAAC与AAC生成的NonceAAC是否相同;
(2)、验证MacTagREQ
验证过程为:AAC利用消息完整性校验密钥采用完整性校验算法对包括REQAuth中除MacTagREQ外的其他字段在本地计算生成MacTagREQ(该计算方式与REQ计算MacTagREQ的方式相同),将计算的MacTagREQ与接收到的REQAuth中的MacTagREQ进行比较。
(3)、利用消息加密密钥采用对称加密算法解密EncDataREQ得到NonceREQPub
(4)、将NonceREQPub与PubREQ⊕NonceREQPub进行异或运算恢复PubREQ
(5)、利用PubREQ中的CertREQ验证SigREQ
(6)、上述检查和验证均通过后,根据PubREQ中的ResREQ确定REQ的身份鉴别结果;若上述检查与验证中任一步不通过,则立即丢弃REQAuth。
需要说明的是,(1)、S704的REQInit中也可以不包括SigREQ,而在S712的REQAuth中添加SigREQ,即在S712中,REQ先对包括REQAuth中的NonceAAC、NonceREQ、EncDataREQ在内的信息进行签名计算生成SigREQ;此情形下,S713中验证的SigREQ为REQAuth中的SigREQ。(2)、在S709中计算SigAAC的操作也可以改为在S706中先行执行,即在S706中,AAC先对包括AACVeri中的EncPubAS、NonceREQ、IDAAC、CertAAC和NonceAAC在内的信息进行签名计算生成SigAAC,则S706的AACVeri中还包括SigAAC,在S707中,AS-AAC还需要验证SigAAC,验证通过后再执行后续操作;此情形下,在S709中AAC则不用计算SigAAC,相应的,S710的AACAuth中不包括SigAAC,S711中REQ也不再验证SigAAC,此时PubAAC中可以不包括CertAAC
参见图8,是非漫游情况下的身份鉴别方法的另一个实施例,此时可以用AS-AAC(也可以用AS-REQ)表示REQ和AAC共同信任的鉴别服务器。在该实施例中,REQ和AAC之间的消息加密密钥协商过程被并行地融合到了身份鉴别过程中,更便于工程实施。其中SigREQ由AS-AAC验证,该方法包括:
S801、AAC生成NonceAAC和KeyInfoAAC,根据需要生成Security capabilitiesAAC
S802、AAC向REQ发送密钥请求消息AACInit。
所述AACInit中包括NonceAAC、KeyInfoAAC和Security capabilitiesAAC。其中,Security capabilitiesAAC为可选字段。
S803、REQ生成NonceREQ、KeyInfoREQ、NonceREQID和NonceREQPub,根据需要生成Security capabilitiesREQ,根据包括KeyInfoREQ对应的临时私钥和KeyInfoAAC所包括的临时公钥进行密钥交换计算生成第一密钥K1,将K1结合NonceAAC、NonceREQ及其他信息(REQ和AAC采用的其他信息是相同的且可选的,譬如特定字符串等)利用协商的或预置的密钥导出算法计算消息加密密钥和消息完整性校验密钥;利用加密证书的公钥计算REQ的身份信息密文EncPubAS;计算SigREQ
S804、REQ向AAC发送身份密文消息REQInit。
所述REQInit中包括NonceAAC、NonceREQ、Security capabilitiesREQ、KeyInfoREQ、EncPubAS及SigREQ。其中,Security capabilitiesREQ为可选字段;EncPubAS的加密数据包括IDREQ、CertREQ、NonceREQID及NonceREQPub;SigREQ的签名数据包括REQInit中SigREQ之前的其他字段。
S805、AAC接收所述REQInit后,执行下述操作,包括:
(1)、检查REQInit中的NonceAAC与AAC生成的NonceAAC是否相同;若不同,则丢弃REQInit;
(2)、根据包括所述KeyInfoAAC对应的临时私钥和所述KeyInfoREQ所包括的临时公钥进行密钥交换计算生成第一密钥K1,将K1结合NonceAAC、NonceREQ及其他信息(AAC和REQ采用的其他信息是相同的且可选的,譬如特定字符串等)利用协商的或预置的密钥导出算法计算消息加密密钥和消息完整性校验密钥。
S806、AAC向AS-AAC发送第一鉴别请求消息AACVeri。
所述AACVeri中包括REQInit、IDAAC和CertAAC
S807、AS-AAC接收所述AACVeri后,执行下述操作,包括:
(1)、利用加密证书对应的私钥解密REQInit中的EncPubAS得到CertREQ、IDREQ、NonceREQID、NonceREQPub
(2)、利用解密得到的CertREQ验证REQInit中的SigREQ
(3)、分别验证CertAAC和CertREQ的合法性得到ResAAC和ResREQ后,根据包括CertAAC和ResAAC在内的信息生成PubAAC,根据包括ResREQ在内的信息生成PubREQ,对IDREQ和NonceREQID进行异或运算生成IDREQ⊕NonceREQID,对PubREQ和NonceREQPub进行异或运算生成PubREQ⊕NonceREQPub
(4)、对包括IDREQ⊕NonceREQID、NonceREQ、PubAAC在内的信息进行签名计算生成第一数字签名SigAS_AAC1;对包括IDAAC、NonceAAC、PubREQ⊕NonceREQPub在内的信息进行签名计算生成第二数字签名SigAS_AAC2
S808、AS-AAC向AAC发送第一鉴别响应消息ASVeri。
所述ASVeri中包括IDREQ⊕NonceREQID、NonceREQ、PubAAC、SigAS_AAC1、IDAAC、NonceAAC、PubREQ⊕NonceREQPub和SigAS_AAC2。其中,IDREQ、NonceREQID、NonceREQ、IDAAC、NonceAAC、NonceREQPub应分别等于AACVeri中的相应字段。
S809、AAC接收所述ASVeri后,执行下述操作,包括:
(1)、检查IDAAC和NonceAAC是否分别与AAC自身的身份标识IDAAC、AAC生成的NonceAAC相同;
(2)、利用AS-AAC的公钥验证SigAS_AAC2
(3)、若上述检查与验证均通过,则利用消息加密密钥计算EncDataAAC;若上述检查与验证中任一步不通过时,则立即丢弃ASVeri;
(4)、计算SigAAC
(5)、根据需要计算MacTagAAC
S810、AAC向REQ发送第三鉴别响应消息AACAuth。
所述AACAuth中包括NonceREQ、NonceAAC、EncDataAAC、SigAAC及MacTagAAC。其中,NonceREQ和NonceAAC为可选字段,应分别等于REQInit中的NonceREQ和AAC生成的NonceAAC。EncDataAAC的加密数据包括IDREQ⊕NonceREQID、NonceREQ、PubAAC和SigAS_AAC1,且IDREQ⊕NonceREQID、NonceREQ、PubAAC、SigAS_AAC1应分别等于ASVeri中的相应字段。SigAAC的签名数据包括AACAuth中SigAAC之前的其他字段;MacTagAAC为可选字段,其计算如前所述。
S811、REQ接收所述AACAuth后,执行下述操作,包括:
(1)、若AACAuth中存在NonceREQ,则检查所述NonceREQ与REQ生成的NonceREQ是否相同;若AACAuth中存在NonceAAC,则检查所述NonceAAC与AACInit中的NonceAAC是否相同;
(2)、若AACAuth中存在MacTagAAC,则验证MacTagAAC;验证过程同图7实施例中的描述;
(3)、利用消息加密密钥采用对称加密算法解密EncDataAAC得到IDREQ⊕NonceREQID、NonceREQ、PubAAC和SigAS_AAC1
(4)、将IDREQ⊕NonceREQID与NonceREQID进行异或运算恢复IDREQ,检查恢复的IDREQ与REQ自身的身份标识IDREQ是否相同,检查NonceREQ与REQ生成的NonceREQ是否相同;
(5)、利用AS-AAC的公钥验证SigAS_AAC1,以及,利用解密得到的PubAAC中的CertAAC验证SigAAC
(6)、上述检查与验证中任一步不通过,则立即丢弃AACAuth;上述检查与验证均通过后,根据PubAAC中的ResAAC确定AAC的身份鉴别结果;若确定AAC为不合法时,结束此次鉴别过程;
(7)、利用消息加密密钥计算EncDataREQ
(8)、计算MacTagREQ;其计算过程同图7实施例中的描述。
S812、REQ向AAC发送第四鉴别响应消息REQAuth。
所述REQAuth中包括NonceAAC、NonceREQ、EncDataREQ和MacTagREQ。其中,NonceREQ和NonceAAC为可选字段,应分别等于REQ生成的NonceREQ和AACInit中的NonceAAC。EncDataREQ的加密数据包括NonceREQPub,且NonceREQPub应等于REQ生成的NonceREQPub
S813、AAC接收所述REQAuth后,执行以下操作,包括:
(1)、若REQAuth中存在NonceREQ,则检查所述NonceREQ与接收到的REQInit中的NonceREQ是否相同;若REQAuth中存在NonceAAC,则检查所述NonceAAC与AAC生成的NonceAAC是否相同;
(2)、验证MacTagREQ;验证过程同图7实施例中的描述;
(3)、利用消息加密密钥采用对称加密算法解密EncDataREQ得到NonceREQPub
(4)、将NonceREQPub与PubREQ⊕NonceREQPub进行异或运算恢复PubREQ
(5)、上述检查和验证均通过后,根据PubREQ中的ResREQ确定REQ的身份鉴别结果;若上述检查与验证中任一步不通过,则立即丢弃REQAuth。
需要说明的是,在S809中计算SigAAC的操作也可以改为在S806中先行执行,即在S806中,AAC先对AACVeri中的REQInit、IDAAC和CertAAC进行签名计算生成SigAAC,则S806的AACVeri中还包括SigAAC,在S807中,AS-AAC还需要验证SigAAC,验证通过后再执行后续操作;此情形下,在S809中AAC则不用计算SigAAC,相应的,S810的AACAuth中不包括SigAAC,S811中REQ也不再验证SigAAC,此时PubAAC中可以不包括CertAAC
参见图9,是漫游情况下身份鉴别方法的一个实施例,在该实施例中,REQ和AAC之间的消息加密密钥协商过程被并行地融合到身份鉴别过程中,更便于工程实施。其中,REQ的数字签名SigREQ由AAC验证,该方法包括:
S901、AAC生成NonceAAC和KeyInfoAAC,根据需要生成Security capabilitiesAAC
S902、AAC向REQ发送密钥请求消息AACInit。
所述AACInit中包括NonceAAC、KeyInfoAAC、Security capabilitiesAAC及IDAS_AAC。其中,Security capabilitiesAAC为可选字段;IDAS_AAC为可选字段,表示AAC信任的至少一个鉴别服务器的身份标识,用于使得REQ根据IDAS_AAC确定是否存在共同信任的鉴别服务器(下文同)。
S903、REQ生成NonceREQ、KeyInfoREQ、NonceREQID和NonceREQPub,根据需要生成Security capabilitiesREQ和IDAS_REQ,根据包括KeyInfoREQ对应的临时私钥和KeyInfoAAC所包括的临时公钥进行密钥交换计算生成第一密钥K1,将K1结合NonceAAC、NonceREQ及其他信息(REQ和AAC采用的其他信息是相同的且可选的,譬如特定字符串等)利用协商的或预置的密钥导出算法计算消息加密密钥和消息完整性校验密钥;利用加密证书的公钥计算REQ的身份信息密文EncPubAS;计算SigREQ
S904、REQ向AAC发送身份密文消息REQInit。
所述REQInit中包括NonceAAC、NonceREQ、IDAS_REQ、KeyInfoREQ、EncPubAS、SecuritycapabilitiesREQ及SigREQ。其中,NonceAAC、IDAS_REQ和Security capabilitiesREQ为可选字段,且NonceAAC应等于AACInit中的相应字段。EncPubAS的加密数据包括IDREQ、CertREQ、NonceREQID及NonceREQPub。SigREQ的签名数据包括REQInit中SigREQ之前的其他字段,当REQInit中不包括NonceAAC时,SigREQ的签名数据还包括AACInit中的NonceAAC字段。IDAS_REQ表示REQ信任的至少一个鉴别服务器的身份标识,当AACInit中存在IDAS_AAC时,REQ尽量从其信任的鉴别服务器中选择至少一个与IDAS_AAC中相同的鉴别服务器作为IDAS_REQ,若选择失败,则将自身信任的至少一个鉴别服务器作为IDAS_REQ;当AACInit中不存在IDAS_AAC时,REQ将自身信任的至少一个鉴别服务器作为IDAS_REQ(下文同)。
S905、AAC接收所述REQInit后,执行下述操作,包括:
(1)、若REQInit中存在NonceAAC,则检查所述NonceAAC与AAC生成的NonceAAC是否相同,若不同,则丢弃REQInit;
(2)、根据包括所述KeyInfoAAC对应的临时私钥和所述KeyInfoREQ所包括的临时公钥进行密钥交换计算生成第一密钥K1,将K1结合NonceAAC、NonceREQ及其他信息(AAC和REQ采用的其他信息是相同的且可选的,譬如特定字符串等)利用协商的或预置的密钥导出算法计算消息加密密钥和消息完整性校验密钥;也可以在AAC需要使用消息加密密钥和/或消息完整性校验密钥时再执行该计算;
(3)、若REQInit中携带IDAS_REQ且AACInit中携带IDAS_AAC,则AAC判断IDAS_REQ和IDAS_AAC是否存在至少一个相同的鉴别服务器的身份标识,若存在,即为非漫游情况,AAC从上述至少一个REQ和AAC共同信任的鉴别服务器的身份标识中,确定参与身份鉴别的第一鉴别服务器;若不存在,则为漫游情况,AAC需要根据IDAS_AAC确定参与身份鉴别的第一鉴别服务器AS-AAC,并将IDAS_REQ发送给AS-AAC,以便AS-AAC根据IDAS_REQ确定第二鉴别服务器AS-REQ;或者,
若REQInit中携带IDAS_REQ但AACInit中不携带IDAS_AAC,则AAC判断IDAS_REQ和AAC信任的鉴别服务器是否存在至少一个相同的鉴别服务器的身份标识,若存在,即为非漫游情况,AAC从上述至少一个REQ和AAC共同信任的鉴别服务器的身份标识中,确定参与身份鉴别的第一鉴别服务器;若不存在,则为漫游情况,AAC需要根据自身信任的鉴别服务器确定参与身份鉴别的第一鉴别服务器AS-AAC,并将IDAS_REQ发送给AS-AAC,以便AS-AAC根据IDAS_REQ确定第二鉴别服务器AS-REQ;
需要说明的是,此实施例判断出的结果应为漫游情况。
S906、AAC向AS-AAC发送第一鉴别请求消息AACVeri。
所述AACVeri中包括EncPubAS、NonceREQ、IDAS_REQ、IDAAC、CertAAC和NonceAAC。其中,IDAS_REQ为可选字段,且NonceREQ、IDAS_REQ应分别等于REQInit中的相应字段;NonceAAC应等于AAC生成的NonceAAC
S907、AS-AAC接收所述AACVeri后,执行下述操作,包括:
(1)、验证CertAAC的合法性得到ResAAC,根据包括CertAAC和ResAAC在内的信息生成PubAAC
(2)、若AACVeri中存在IDAS_REQ,则AS-AAC根据IDAS_REQ确定第二鉴别服务器AS-REQ;若不存在,则表示AS-AAC已确知AS-REQ;
(3)、计算第三数字签名SigAS_AAC3
S908、AS-AAC向AS-REQ发送第二鉴别请求消息AS-AACVeri。
所述AS-AACVeri中包括EncPubAS、NonceREQ、IDAAC、NonceAAC、PubAAC及SigAS_AAC3。其中,EncPubAS、NonceREQ、IDAAC、NonceAAC应分别等于AACVeri中的相应字段;SigAS_AAC3的签名数据包括AS-AACVeri中SigAS_AAC3之前的其他字段。
S909、AS-REQ接收所述AS-AACVeri后,利用AS-AAC的公钥验证SigAS_AAC3
若验证通过,执行S910。
S910、AS-REQ向CS-DEC发送解密请求消息AS-REQReq。
所述AS-REQReq中包括EncPubAS。其中,EncPubAS应等于AS-AACVeri中的相应字段。
S911、CS-DEC解密所述EncPubAS得到CertREQ、IDREQ、NonceREQID、NonceREQPub
S912、CS-DEC向AS-REQ发送解密响应消息CS-DECRep。
所述CS-DECRep包括解密得到的CertREQ、IDREQ、NonceREQID及NonceREQPub。其中,CertREQ、IDREQ、NonceREQID、NonceREQPub应等于AS-AACVeri中的相应字段。
S913、AS-REQ接收所述CS-DECRep后,执行下述操作,包括:
(1)、验证CertREQ的合法性得到ResREQ,根据包括CertREQ和ResREQ在内的信息生成PubREQ;对IDREQ和NonceREQID进行异或运算生成IDREQ⊕NonceREQID,对PubREQ和NonceREQPub进行异或运算生成PubREQ⊕NonceREQPub
(2)、对包括IDREQ⊕NonceREQID、NonceREQ、PubAAC在内的信息进行签名计算生成第一数字签名SigAS_REQ1,对包括IDAAC、NonceAAC、PubREQ⊕NonceREQPub在内的信息进行签名计算生成第四数字签名SigAS_REQ4
S914、AS-REQ向AS-AAC发送第二鉴别响应消息AS-REQVeri。
所述AS-REQVeri中包括IDREQ⊕NonceREQID、NonceREQ、PubAAC、SigAS_REQ1、IDAAC、NonceAAC、PubREQ⊕NonceREQPub和SigAS_REQ4。其中,IDREQ、NonceREQID、NonceREQPub应分别等于CS-DECRep中的相应字段;NonceREQ、IDAAC、NonceAAC、PubAAC应分别等于AS-AACVeri中的相应字段。
S915、AS-AAC利用AS-REQ的公钥验证所述SigAS_REQ4,若验证通过,则对包括IDAAC、NonceAAC、PubREQ⊕NonceREQPub在内的信息进行签名计算生成第二数字签名SigAS_AAC2
S916、AS-AAC向AAC发送第一鉴别响应消息ASVeri。
所述ASVeri中包括IDREQ⊕NonceREQID、NonceREQ、PubAAC、SigAS_REQ1、IDAAC、NonceAAC、PubREQ⊕NonceREQPub和SigAS_AAC2。其中,IDREQ⊕NonceREQID、NonceREQ、PubAAC、SigAS_REQ1、IDAAC、NonceAAC、PubREQ⊕NonceREQPub均来源于AS-REQVeri。
S917、AAC接收所述ASVeri后,执行下述操作,包括:
(1)、检查IDAAC和NonceAAC是否分别与AAC自身的身份标识IDAAC、AAC生成的NonceAAC相同;
(2)、利用AS-AAC的公钥验证SigAS_AAC2
(3)、若上述检查与验证均通过,则利用消息加密密钥计算EncDataAAC,若上述检查与验证中任一步不通过,则立即丢弃ASVeri;
(4)、计算SigAAC
(5)、根据需要计算MacTagAAC
S918、AAC向REQ发送第三鉴别响应消息AACAuth。
所述AACAuth中包括NonceREQ、NonceAAC、EncDataAAC、SigAAC及MacTagAAC。其中,SigAAC的签名数据包括AACAuth中SigAAC之前的其他字段;NonceREQ和NonceAAC为可选字段,且应分别等于REQInit中的NonceREQ和AAC生成的NonceAAC。EncDataAAC的加密数据包括IDREQ⊕NonceREQID、NonceREQ、PubAAC和SigAS_REQ1,其中,IDREQ⊕NonceREQID、NonceREQ、PubAAC和SigAS_REQ1应分别等于ASVeri中的相应字段。MacTagAAC为可选字段,其计算如图7实施例中所述。
S919、REQ接收所述AACAuth后,执行下述操作,包括:
(1)、若AACAuth中存在NonceREQ,则检查所述NonceREQ与REQ生成的NonceREQ是否相同;若AACAuth中存在NonceAAC,则检查所述NonceAAC与AACInit中的NonceAAC是否相同;
(2)、若AACAuth中存在MacTagAAC,则验证MacTagAAC;验证过程如图7实施例中所述;
(3)、利用消息加密密钥采用对称加密算法解密所述EncDataAAC得到IDREQ⊕NonceREQID、NonceREQ、PubAAC和SigAS_REQ1
(4)、将IDREQ⊕NonceREQID与NonceREQID进行异或运算恢复IDREQ,检查恢复的IDREQ是否与REQ自身的身份标识IDREQ相同;检查NonceREQ是否与REQ生成的NonceREQ相同;
(5)、利用AS-REQ的公钥验证SigAS_REQ1,以及,利用解密得到的PubAAC中的CertAAC验证SigAAC
(6)、上述检查与验证中任一步不通过,则立即丢弃AACAuth;上述检查与验证均通过后,根据PubAAC中的ResAAC确定AAC的身份鉴别结果;若确定AAC为不合法,则结束本次鉴别过程;
(7)、利用消息加密密钥计算EncDataREQ
(8)、计算MacTagREQ;计算过程如图7实施例中所述。
S920、REQ向AAC发送第四鉴别响应消息REQAuth。
所述REQAuth中包括NonceAAC、NonceREQ、EncDataREQ和MacTagREQ。其中,NonceREQ和NonceAAC为可选字段,且应分别等于REQ生成的NonceREQ和AACInit中的NonceAAC;EncDataREQ的加密数据包括NonceREQPub,且NonceREQPub应等于REQ生成的NonceREQPub
S921、AAC接收所述REQAuth后,执行下述操作,包括:
(1)、若REQAuth中存在NonceREQ,则检查所述NonceREQ与接收到的REQInit中的NonceREQ是否相同;若REQAuth中存在NonceAAC,则检查所述NonceAAC与AAC生成的NonceAAC是否相同;
(2)、验证MacTagREQ;验证过程如图7实施例中所述;
(3)、利用消息加密密钥采用对称加密算法解密EncDataREQ得到NonceREQPub
(4)、将NonceREQPub与PubREQ⊕NonceREQPub进行异或运算恢复PubREQ
(5)、利用PubREQ中的CertREQ验证SigREQ
(6)、上述检查和验证均通过后,根据PubREQ中的ResREQ确定REQ的身份鉴别结果;若上述检查与验证中任一步不通过,则立即丢弃REQAuth。
需要说明的是,(1)、S904的REQInit中也可以不包括SigREQ,而在S920的REQAuth中添加SigREQ,即在S920中,REQ先对包括REQAuth中的NonceAAC、NonceREQ、EncDataREQ在内的信息进行签名计算生成SigREQ;此情形下,S921中验证的SigREQ为REQAuth中的SigREQ。(2)、在S917中计算SigAAC的操作也可以改为在S906中先行执行,即在S906中,AAC先对包括EncPubAS、NonceREQ、IDAS_REQ、IDAAC、CertAAC和NonceAAC在内的信息进行签名计算生成SigAAC,则S906的AACVeri中还包括SigAAC,在S907中,AS-AAC还需要验证SigAAC,验证通过后再执行后续操作;此情形下,在S917中AAC则不用计算SigAAC,相应的,S918的AACAuth中不包括SigAAC,S919中REQ也不再验证SigAAC,此时PubAAC中可以不包括CertAAC
参见图10,是漫游情况下的身份鉴别方法的另一个实施例,在该实施例中,REQ和AAC之间的消息加密密钥协商过程被并行地融合到身份鉴别过程中,更便于工程实施。其中SigREQ由AS-REQ验证,该方法包括:
S1001、AAC生成NonceAAC和KeyInfoAAC,根据需要生成Security capabilitiesAAC
S1002、AAC向REQ发送密钥请求消息AACInit。
所述AACInit中包括NonceAAC、KeyInfoAAC、Security capabilitiesAAC和IDAS_AAC。其中,Security capabilitiesAAC与IDAS_AAC为可选字段。
S1003、REQ生成NonceREQ、KeyInfoREQ、NonceREQID和NonceREQPub,根据需要生成Security capabilitiesREQ和IDAS_REQ,根据包括KeyInfoREQ对应的临时私钥和KeyInfoAAC所包括的临时公钥进行密钥交换计算生成第一密钥K1,将K1结合NonceAAC、NonceREQ及其他信息(REQ和AAC采用的其他信息是相同的且可选的,譬如特定字符串等)利用协商的或预置的密钥导出算法计算消息加密密钥和消息完整性校验密钥,利用加密证书的公钥计算REQ的身份信息密文EncPubAS;计算SigREQ
S1004、REQ向AAC发送身份密文消息REQInit。
所述REQInit中包括EncPubAS、NonceAAC、NonceREQ、IDAS_REQ、KeyInfoREQ、SecuritycapabilitiesREQ及SigREQ。其中,NonceAAC应等于AACInit中的相应字段;SecuritycapabilitiesREQ和IDAS_REQ为可选字段。EncPubAS的加密数据包括IDREQ、CertREQ、NonceREQID、NonceREQPub;SigREQ的签名数据包括REQInit中SigREQ之前的其他字段。
S1005、AAC接收所述REQInit之后,执行下述操作,包括:
(1)、检查REQInit中的NonceAAC与AAC生成的NonceAAC是否相同;若不同,则丢弃REQInit;
(2)、根据包括所述KeyInfoAAC对应的临时私钥和所述KeyInfoREQ所包括的临时公钥进行密钥交换计算生成第一密钥K1,将K1结合NonceAAC、NonceREQ及其他信息(AAC和REQ采用的其他信息是相同的且可选的,譬如特定字符串等)利用协商的或预置的密钥导出算法计算消息加密密钥和消息完整性校验密钥;计算消息加密密钥和/或消息完整性校验密钥也可以在后续需要使用时再执行;
(3)、确定第一鉴别服务器AS-AAC如图9实施例中的相关描述;
需要说明的是,此实施例判断出的结果应为漫游情况。
S1006、AAC向AS-AAC发送第一鉴别请求消息AACVeri。
所述AACVeri中包括REQInit、IDAAC、CertAAC
S1007、AS-AAC接收所述AACVeri后,执行下述操作,包括:
(1)、验证CertAAC的合法性得到ResAAC,根据包括CertAAC和ResAAC在内的信息生成PubAAC
(2)、确定第二鉴别服务器AS-REQ如图9实施例中的相关描述;
(3)、计算第三数字签名SigAS_AAC3
S1008、AS-AAC向AS-REQ发送第二鉴别请求消息AS-AACVeri。
所述AS-AACVeri中包括REQInit、IDAAC、PubAAC及SigAS_AAC3。其中,REQInit、IDAAC应分别等于AACVeri中的REQInit、IDAAC。SigAS_AAC3的签名数据包括AS-AACVeri中SigAS_AAC3之前的其他字段。
S1009、AS-REQ接收所述AS-AACVeri后,利用AS-AAC的公钥验证SigAS_AAC3
若验证通过,执行S1010。
S1010、AS-REQ向CS-DEC发送解密请求消息AS-REQReq。
所述AS-REQReq中包括EncPubAS。其中,EncPubAS应等于AS-AACVeri中的相应字段。
S1011、CS-DEC解密所述EncPubAS得到CertREQ、IDREQ、NonceREQID、NonceREQPub
S1012、CS-DEC向AS-REQ发送解密响应消息CS-DECRep。
所述CS-DECRep中包括解密得到的CertREQ、IDREQ、NonceREQID、NonceREQPub。其中,CertREQ、IDREQ、NonceREQID、NonceREQPub应等于AS-AACVeri中的相应字段。
S1013、AS-REQ接收所述CS-DECRep后,执行下述操作,包括:
(1)、利用CertREQ验证所述SigREQ;若验证不通过,则丢弃CS-DECRep;
(2)、验证CertREQ的合法性得到ResREQ,根据包括ResREQ在内的信息生成PubREQ;对IDREQ和NonceREQID进行异或运算生成IDREQ⊕NonceREQID,对PubREQ和NonceREQPub进行异或运算生成PubREQ⊕NonceREQPub
(3)、对包括IDREQ⊕NonceREQID、NonceREQ、PubAAC在内的信息进行签名计算生成第一数字签名SigAS_REQ1,对包括IDAAC、NonceAAC、PubREQ⊕NonceREQPub在内的信息进行签名计算生成第四数字签名SigAS_REQ4
S1014、AS-REQ向AS-AAC发送第二鉴别响应消息AS-REQVeri。
所述AS-REQVeri中包括IDREQ⊕NonceREQID、NonceREQ、PubAAC、SigAS_REQ1、IDAAC、NonceAAC、PubREQ⊕NonceREQPub和SigAS_REQ4。其中,IDREQ、NonceREQID、NonceREQPub应分别等于CS-DECRep中的相应字段;NonceREQ、IDAAC、NonceAAC、PubAAC应分别等于AS-AACVeri中的相应字段。
S1015、AS-AAC利用AS-REQ的公钥验证所述SigAS_REQ4,若验证通过,则对包括IDAAC、NonceAAC、PubREQ⊕NonceREQPub在内的信息进行签名计算生成第二数字签名SigAS_AAC2
S1016、AS-AAC向AAC发送第一鉴别响应消息ASVeri。
所述ASVeri中包括IDREQ⊕NonceREQID、NonceREQ、PubAAC、SigAS_REQ1、IDAAC、NonceAAC、PubREQ⊕NonceREQPub和SigAS_AAC2。其中,IDREQ⊕NonceREQID、NonceREQ、PubAAC、SigAS_REQ1、IDAAC、NonceAAC、PubREQ⊕NonceREQPub均来源于AS-REQVeri。
S1017、AAC接收所述ASVeri后,执行下述操作,包括:
(1)、检查IDAAC和NonceAAC是否分别与AAC自身的身份标识IDAAC、AAC生成的NonceAAC相同;
(2)、利用AS-AAC的公钥验证SigAS_AAC2
(3)、若上述检查与验证均通过,则利用消息加密密钥计算EncDataAAC;若上述检查与验证中任一步不通过,则立即丢弃ASVeri;
(4)、计算SigAAC
(5)、根据需要计算MacTagAAC
S1018、AAC向REQ发送第三鉴别响应消息AACAuth。
所述AACAuth中包括NonceREQ、NonceAAC、EncDataAAC、SigAAC及MacTagAAC。其中,SigAAC的签名数据包括AACAuth中SigAAC之前的其他字段;NonceREQ和NonceAAC为可选字段,且应分别等于REQInit中的NonceREQ和AAC生成的NonceAAC。EncDataAAC的加密数据包括IDREQ⊕NonceREQID、NonceREQ、PubAAC和SigAS_REQ1,其中,IDREQ⊕NonceREQID、NonceREQ、PubAAC和SigAS_REQ1应分别等于ASVeri中的相应字段。MacTagAAC为可选字段,其计算如图7实施例中所述。
S1019、REQ接收所述AACAuth后,执行下述操作,包括:
(1)、若AACAuth中存在NonceREQ,则检查所述NonceREQ与REQ生成的NonceREQ是否相同;若AACAuth中存在NonceAAC,则检查所述NonceAAC与AACInit中的NonceAAC是否相同;
(2)、若AACAuth中存在MacTagAAC,则验证MacTagAAC;验证过程为如图7实施例所述;
(3)、利用消息加密密钥采用对称加密算法解密所述EncDataAAC得到IDREQ⊕NonceREQID、NonceREQ、PubAAC和SigAS_REQ1
(4)、将IDREQ⊕NonceREQID与NonceREQID进行异或运算恢复IDREQ,检查恢复的IDREQ是否与REQ自身的身份标识IDREQ相同;检查NonceREQ是否与REQ生成的NonceREQ相同;
(5)、利用AS-REQ的公钥验证SigAS_REQ1,以及,利用解密得到的PubAAC中的CertAAC验证SigAAC
(6)、上述检查与验证中任一步不通过,则立即丢弃AACAuth;上述检查与验证均通过后,根据PubAAC中的ResAAC确定AAC的身份鉴别结果;若确定AAC为不合法,则结束本次鉴别过程;
(7)、利用消息加密密钥计算EncDataREQ
(8)、计算MacTagREQ;计算过程如图7实施例中所述。
S1020、REQ向AAC发送第四鉴别响应消息REQAuth。
所述REQAuth中包括NonceAAC、NonceREQ、EncDataREQ和MacTagREQ。其中,NonceREQ和NonceAAC为可选字段,且应分别等于REQ生成的NonceREQ和AACInit中的NonceAAC。EncDataREQ的加密数据包括NonceREQPub,且NonceREQPub应等于REQ生成的NonceREQPub
S1021、AAC接收所述REQAuth后,执行下述操作,包括:
(1)、若REQAuth中存在NonceREQ,则检查所述NonceREQ与接收到的REQInit中的NonceREQ是否相同;若REQAuth中存在NonceAAC,检查所述NonceAAC与AAC生成的NonceAAC是否相同;
(2)、验证MacTagREQ;验证过程如图7实施例中所述;
(3)、利用消息加密密钥采用对称加密算法解密EncDataREQ得到NonceREQPub
(4)、将NonceREQPub与PubREQ⊕NonceREQPub进行异或运算恢复PubREQ
(5)、上述检查和验证均通过后,根据PubREQ中的ResREQ确定REQ的身份鉴别结果;若上述检查与验证中任一步不通过,则立即丢弃REQAuth。
需要说明的是,在S1017中计算SigAAC的操作也可以改为在S1006中先行执行,即在S1006中,AAC先对AACVeri中的REQInit、IDAAC、CertAAC进行签名计算生成SigAAC,则S1006的AACVeri中还包括SigAAC,在S1007中,AS-AAC还需要验证SigAAC,验证通过后再执行后续操作;此情形下,在S1017中AAC则不用计算SigAAC,相应的,S1018的AACAuth中不包括SigAAC,在S1019中REQ也不再验证SigAAC,此时PubAAC中可以不包括CertAAC
在上述各实施例中,每条消息还可以携带一个杂凑值HASHX_Y,该杂凑值HASHX_Y是该消息的发送方实体X利用HASH算法对接收到的对端实体Y发送的最新前序消息计算得到的,用于对端实体Y来验证实体X是否接收到完整的最新前序消息。其中,HASHREQ_AAC表示REQ对接收到的AAC发送的最新前序消息计算的杂凑值,HASHAAC_REQ表示AAC对接收到的REQ发送的最新前序消息计算的杂凑值,HASHAAC_AS-AAC表示AAC对接收到的AS-AAC发送的最新前序消息计算的杂凑值,HASHAS-AAC_AAC表示AS-AAC对接收到的AAC发送的最新前序消息计算的杂凑值,HASHAS-AAC_AS-REQ表示AS-AAC对接收到的AS-REQ发送的最新前序消息计算的杂凑值,HASHAS-REQ_AS-AAC表示AS-REQ对接收到的AS-AAC发送的最新前序消息计算的杂凑值。若发送方实体X当前发送的消息为实体X和实体Y之间交互的首条消息,意味着实体X未曾收到对端实体Y发送的前序消息,则该条消息中HASHX_Y可以不存在或者无意义。
对应的,对端实体Y接收到实体X发送的消息后,若该条消息中包含HASHX_Y,则当实体Y未曾向实体X发送过前序消息时,实体Y忽略HASHX_Y;当实体Y曾向实体X发送过前序消息时,实体Y利用杂凑算法对之前向实体X发送的最新前序消息在本地计算杂凑值,并与接收到的消息中携带的杂凑值HASHX_Y比较,若一致,则执行后续步骤,否则丢弃或者结束本次鉴别过程。
本发明中,对实体X而言,对端实体Y向实体X发送的前序消息指的是:实体X向对端实体Y发送消息M之前,接收过的对端实体Y向实体X发送的消息;对端实体Y向实体X发送的最新前序消息指的是:实体X向对端实体Y发送消息M之前,接收的对端实体Y向实体X发送的最新一条消息。若实体X向其对端实体Y发送的消息M是实体X和实体Y之间交互的第一条消息,则实体X向其对端实体Y发送消息M之前,不存在对端实体Y向实体X发送的前序消息。
上述图7、图8、图9和图10对应实施例中的可选字段和可选操作,在说明书附图的图7、图8、图9和图10中用“*”表示。以上所有实施例中涉及的消息中所包括的各个内容不限定顺序,且在没有特别说明的情况下,不限定消息接收方收到消息后对相关消息的操作顺序以及对消息中所包括的内容进行处理的顺序。
基于图1至图10对应的实施例,参见图11,本申请实施例提供了一种鉴别接入控制器AAC1100,包括:
获取单元1101,用于获取请求设备发送的身份密文消息,所述身份密文消息中包括所述请求设备的身份信息密文,所述身份信息密文是利用加密证书的公钥对包括所述请求设备的数字证书和第二密钥在内的加密数据加密生成的;
第一发送单元1102,用于向所述鉴别接入控制器信任的第一鉴别服务器发送第一鉴别请求消息,所述第一鉴别请求消息中包括所述请求设备的身份信息密文和所述鉴别接入控制器的数字证书;
第一接收单元1103,用于接收所述第一鉴别服务器发送的第一鉴别响应消息,所述第一鉴别响应消息中包括第一鉴别结果信息、第一数字签名、第二鉴别结果信息密文和第二数字签名,其中,所述第一鉴别结果信息中包括对所述鉴别接入控制器的数字证书的第一验证结果,所述第一数字签名是所述请求设备信任的第二鉴别服务器对包括所述第一鉴别结果信息在内的签名数据计算生成的数字签名,所述第二鉴别结果信息密文是利用所述第二密钥对包括第二鉴别结果信息在内的信息加密得到的,所述第二鉴别结果信息中包括对所述请求设备的数字证书的第二验证结果,所述第二数字签名是所述第一鉴别服务器对包括所述第二鉴别结果信息密文在内的签名数据计算生成的数字签名;
第一验证单元1104,用于利用所述第一鉴别服务器的公钥对所述第二数字签名进行验证;
第二发送单元1105,用于当所述第二数字签名验证通过时,向所述请求设备发送第三鉴别响应消息,所述第三鉴别响应消息中包括鉴别结果信息密文,所述鉴别结果信息密文是利用消息加密密钥对包括所述第一鉴别结果信息和所述第一数字签名在内的加密数据加密生成的;
第二接收单元1106,用于接收所述请求设备发送的第四鉴别响应消息,所述第四鉴别响应消息中包括第二密钥密文,所述第二密钥密文是利用所述消息加密密钥对包括所述第二密钥在内的信息加密得到的;
解密单元1107,用于利用所述消息加密密钥解密所述第二密钥密文得到所述第二密钥,以及,利用所述第二密钥解密所述第二鉴别结果信息密文得到所述第二鉴别结果信息;
第一确定单元1108,用于根据所述第二鉴别结果信息中的第二验证结果确定所述请求设备的身份鉴别结果。
可选的,鉴别接入控制器还包括:
第三发送单元,用于向所述请求设备发送密钥请求消息,所述密钥请求消息中包括所述鉴别接入控制器的密钥交换参数;获取单元1101获取的身份密文消息中还包括所述请求设备的密钥交换参数;
计算单元,用于根据包括所述鉴别接入控制器的密钥交换参数对应的临时私钥和所述请求设备的密钥交换参数所包括的临时公钥进行密钥交换计算生成第一密钥,根据包括所述第一密钥在内的信息利用密钥导出算法计算所述消息加密密钥。
可选的,所述第三发送单元发送的密钥请求消息中还包括所述鉴别接入控制器生成的第一随机数,获取单元1101获取的身份密文消息中还包括请求设备生成的第二随机数;
则所述计算单元具体用于根据包括所述第一密钥、所述第一随机数和所述第二随机数在内的信息计算所述消息加密密钥。
可选的,获取单元1101获取的身份密文消息中还包括所述第一随机数;则所述鉴别接入控制器还包括:
第二验证单元,用于对所述身份密文消息中的第一随机数和所述鉴别接入控制器生成的第一随机数的一致性进行验证;
若验证通过,则所述计算单元再计算所述消息加密密钥。
可选的,所述第三发送单元发送的密钥请求消息中还包括所述鉴别接入控制器支持的安全能力参数信息,则获取单元1101获取的身份密文消息中还包括特定安全策略,所述特定安全策略是所述请求设备根据所述鉴别接入控制器支持的安全能力参数信息确定的。
可选的,所述第三发送单元发送的密钥请求消息中还包括所述鉴别接入控制器信任的至少一个鉴别服务器的身份标识;获取单元1101获取的身份密文消息中还包括所述请求设备信任的至少一个鉴别服务器的身份标识;则所述鉴别接入控制器还包括:
第二确定单元,用于根据所述身份密文消息中所述请求设备信任的至少一个鉴别服务器的身份标识和所述密钥请求消息中所述鉴别接入控制器信任的至少一个鉴别服务器的身份标识,确定所述第一鉴别服务器。
可选的,获取单元1101获取的身份密文消息中还包括所述请求设备信任的至少一个鉴别服务器的身份标识;则所述鉴别接入控制器还包括:
第三确定单元,用于根据所述请求设备信任的至少一个鉴别服务器的身份标识和所述鉴别接入控制器信任的鉴别服务器的身份标识,确定所述第一鉴别服务器。
可选的,第一发送单元1102发送的第一鉴别请求消息中还包括所述鉴别接入控制器的身份标识和/或所述鉴别接入控制器生成的第一随机数;对应的,第一接收单元1103接收的第一鉴别响应消息中还包括所述鉴别接入控制器的身份标识和/或所述第一随机数;
则所述鉴别接入控制器还包括:
第三验证单元,用于对所述第一鉴别响应消息中的鉴别接入控制器的身份标识和所述鉴别接入控制器自身的身份标识的一致性进行验证,和/或,对所述第一鉴别响应消息中的所述第一随机数和所述鉴别接入控制器生成的第一随机数的一致性进行验证,验证通过后,第一确定单元1108再确定所述请求设备的身份鉴别结果。
可选的,获取单元1101获取的身份密文消息中还包括所述请求设备的数字签名,则第一确定单元1108还用于确定所述请求设备的数字签名是否验证通过,若确定所述请求设备的数字签名验证通过,则再根据所述第二验证结果确定所述请求设备的身份鉴别结果。
可选的,第一确定单元1108具体用于:
在解密单元1107解密所述第二鉴别结果信息密文得到的第二鉴别结果信息中还包括所述请求设备的数字证书时,利用所述请求设备的数字证书对所述请求设备的数字签名进行验证时,根据验证结果确定所述请求设备的数字签名是否验证通过;和/或,
所述第二鉴别服务器利用解密所述请求设备的身份信息密文得到的所述请求设备的数字证书对所述请求设备的数字签名进行验证,若第一接收单元1103接收到所述第一鉴别响应消息,则确定所述请求设备的数字签名已验证通过。
可选的,第二接收单元1106接收的第四鉴别响应消息中还包括所述请求设备的数字签名,解密单元1107利用所述第二密钥解密得到的所述第二鉴别结果信息中还包括所述请求设备的数字证书;则在第一确定单元1108确定所述请求设备的身份鉴别结果之前,第一确定单元1108还用于利用所述第二鉴别结果信息中的所述请求设备的数字证书对所述请求设备的数字签名进行验证,若验证通过,则再根据所述第二验证结果确定所述请求设备的身份鉴别结果。
可选的,第二发送单元1105发送的第三鉴别响应消息中还包括第一消息完整性校验码,所述第一消息完整性校验码是所述鉴别接入控制器利用消息完整性校验密钥对包括所述第三鉴别响应消息中除所述第一消息完整性校验码外的其他字段计算生成的;和/或,
第二接收单元1106接收的第四鉴别响应消息中还包括第二消息完整性校验码,所述第二消息完整性校验码是所述请求设备利用消息完整性校验密钥对包括所述第四鉴别响应消息中除所述第二消息完整性校验码外的其他字段计算生成的;则所述鉴别接入控制器还包括:
第四验证单元,用于利用消息完整性校验密钥验证所述第二消息完整性校验码,验证通过后,第一确定单元1108再根据所述第二验证结果确定所述请求设备的身份鉴别结果。
可选的,所述鉴别接入控制器向所述请求设备发送的消息还包括所述鉴别接入控制器对接收到的所述请求设备发送的最新前序消息计算的杂凑值;所述鉴别接入控制器向所述第一鉴别服务器发送的消息还包括所述鉴别接入控制器对接收到的所述第一鉴别服务器发送的最新前序消息计算的杂凑值。
参见图12,本申请实施例提供了一种请求设备REQ1200,包括:
第一发送单元1201,用于向鉴别接入控制器发送身份密文消息,所述身份密文消息中包括所述请求设备的身份信息密文,所述身份信息密文是利用加密证书的公钥对包括所述请求设备的数字证书和第二密钥在内的加密数据加密生成的;
第一接收单元1202,用于接收所述鉴别接入控制器发送的第三鉴别响应消息,所述第三鉴别响应消息中包括鉴别结果信息密文,所述鉴别结果信息密文是利用消息加密密钥对包括第一鉴别结果信息和第一数字签名在内的加密数据加密生成的;
第一解密单元1203,用于利用所述消息加密密钥对所述鉴别结果信息密文进行解密得到所述第一鉴别结果信息和所述第一数字签名;
第一验证单元1204,用于利用所述第二鉴别服务器的公钥对所述第一数字签名进行验证,若验证通过,则第一确定单元1205根据所述第一鉴别结果信息中的第一验证结果确定所述鉴别接入控制器的身份鉴别结果;当第一确定单元1205确定所述鉴别接入控制器的身份鉴别结果为合法时,第二发送单元1206向所述鉴别接入控制器发送第四鉴别响应消息;或者,
第一验证单元1204,用于利用所述第二鉴别服务器的公钥对所述第一数字签名进行验证,若验证通过,则第二发送单元1206向所述鉴别接入控制器发送第四鉴别响应消息以及第一确定单元1205根据所述第一鉴别结果信息中的第一验证结果确定所述鉴别接入控制器的身份鉴别结果;或者,
第一验证单元1204,用于利用所述第二鉴别服务器的公钥对所述第一数字签名进行验证;若所述第一数字签名验证通过,则第一确定单元1205根据所述第一鉴别结果信息中的第一验证结果确定所述鉴别接入控制器的身份鉴别结果;第二发送单元1206向所述鉴别接入控制器发送第四鉴别响应消息;
其中,所述第四鉴别响应消息中包括第二密钥密文,所述第二密钥密文是利用所述消息加密密钥对包括所述第二密钥在内的信息加密得到的。
可选的,所述请求设备还包括:
第二接收单元,用于接收所述鉴别接入控制器发送的密钥请求消息,所述密钥请求消息中包括所述鉴别接入控制器的密钥交换参数;
第一计算单元,用于根据包括所述请求设备的密钥交换参数对应的临时私钥和所述鉴别接入控制器的密钥交换参数所包括的临时公钥进行密钥交换计算生成第一密钥,根据包括所述第一密钥在内的信息利用密钥导出算法计算所述消息加密密钥;
则第一发送单元1201发送的身份密文消息中还包括所述请求设备的密钥交换参数。
可选的,所述第二接收单元接收的密钥请求消息中还包括所述鉴别接入控制器生成的第一随机数;
所述第一计算单元具体用于根据包括所述第一密钥、所述第一随机数和所述请求设备生成的第二随机数在内的信息计算所述消息加密密钥;
则第一发送单元1201发送的身份密文消息中还包括所述第二随机数。
可选的,所述第二接收单元接收的密钥请求消息中还包括所述鉴别接入控制器支持的安全能力参数信息;所述请求设备还包括:
第二确定单元,用于根据所述安全能力参数信息确定所述请求设备使用的特定安全策略;
则第一发送单元1201发送的身份密文消息中还包括所述特定安全策略。
可选的,所述第二接收单元接收的密钥请求消息中还包括所述鉴别接入控制器信任的至少一个鉴别服务器的身份标识;所述请求设备还包括:
第三确定单元,用于根据所述鉴别接入控制器信任的至少一个鉴别服务器的身份标识,确定所述请求设备信任的至少一个鉴别服务器的身份标识;
则第一发送单元1201发送的身份密文消息中还包括所述请求设备信任的至少一个鉴别服务器的身份标识。
可选的,第一发送单元1201发送的身份密文消息中还包括所述请求设备生成的第二随机数,和/或,所述身份密文消息中的所述身份信息密文的加密数据还包括所述请求设备的身份标识和第三密钥;
则第一接收单元1202接收的第三鉴别响应消息中的鉴别结果信息密文的加密数据还包括所述第二随机数和/或所述请求设备的身份标识密文;
第一解密单元1203利用所述消息加密密钥对所述鉴别结果信息密文进行解密还得到所述第二随机数和/或所述请求设备的身份标识密文;
则所述请求设备还包括:
第二验证单元,用于将解密得到的所述第二随机数与所述请求设备生成的第二随机数进行一致性验证,和/或,用于根据所述请求设备自身的身份标识和所述第三密钥对所述请求设备的身份标识密文进行验证,若验证通过,第一确定单元1205再确定所述鉴别接入控制器的身份鉴别结果。
可选的,第一确定单元1205在确定所述鉴别接入控制器的身份鉴别结果之前,还用于确定所述鉴别接入控制器的数字签名是否验证通过,若确定所述鉴别接入控制器的数字签名验证通过,则再根据所述第一验证结果确定所述鉴别接入控制器的身份鉴别结果。
可选的,第一确定单元1205具体用于:
当所述鉴别接入控制器向其信任的第一鉴别服务器发送的第一鉴别请求消息中还包括所述鉴别接入控制器的数字签名时,所述第一鉴别服务器利用所述第一鉴别请求消息中的所述鉴别接入控制器的数字证书,对所述鉴别接入控制器的数字签名进行验证,若第一接收单元1202接收到所述第三鉴别响应消息,则确定所述鉴别接入控制器的数字签名已验证通过;和/或,
当所述第三鉴别响应消息中还包括所述鉴别接入控制器的数字签名时,所述第一鉴别结果信息中还包括所述鉴别接入控制器的数字证书;则第一确定单元1205利用所述第一鉴别结果信息中的所述鉴别接入控制器的数字证书对所述鉴别接入控制器的数字签名进行验证,根据验证结果确定所述鉴别接入控制器的数字签名是否验证通过。
可选的,第一接收单元1202接收的第三鉴别响应消息中还包括第一消息完整性校验码,所述第一消息完整性校验码是所述鉴别接入控制器利用消息完整性校验密钥对包括所述第三鉴别响应消息中除所述第一消息完整性校验码外的其他字段计算生成的;则所述请求设备还包括:
第三验证单元,用于利用消息完整性校验密钥验证所述第一消息完整性校验码,验证通过后,第一确定单元1205再根据所述第一验证结果确定所述鉴别接入控制器的身份鉴别结果;和/或,
第二发送单元1206发送的第四鉴别响应消息中还包括第二消息完整性校验码,所述第二消息完整性校验码是所述请求设备利用消息完整性校验密钥对包括所述第四鉴别响应消息中除所述第二消息完整性校验码外的其他字段计算生成的。
可选的,所述请求设备向所述鉴别接入控制器发送的消息还包括所述请求设备对接收到的所述鉴别接入控制器发送的最新前序消息计算的杂凑值。
参见图13,本申请实施例提供了一种第一鉴别服务器AS-AAC1300,第一鉴别服务器AS-AAC1300为鉴别接入控制器信任的鉴别服务器,包括:
第一接收单元1301,用于接收鉴别接入控制器发送的第一鉴别请求消息,所述第一鉴别请求消息中包括请求设备的身份信息密文和所述鉴别接入控制器的数字证书;所述身份信息密文是利用加密证书的公钥对包括所述请求设备的数字证书和第二密钥在内的加密数据加密生成的;
第一发送单元1302,用于向所述鉴别接入控制器发送第一鉴别响应消息,所述第一鉴别响应消息中包括第一鉴别结果信息、第一数字签名、第二鉴别结果信息密文和第二数字签名,其中,所述第一鉴别结果信息中包括对所述鉴别接入控制器的数字证书的第一验证结果,所述第一数字签名是所述请求设备信任的第二鉴别服务器对包括所述第一鉴别结果信息在内的签名数据计算生成的数字签名,所述第二鉴别结果信息密文是利用第二密钥对包括第二鉴别结果信息在内的信息加密得到的,所述第二鉴别结果信息中包括对所述请求设备的数字证书的第二验证结果,所述第二数字签名是所述第一鉴别服务器对包括所述第二鉴别结果信息密文在内的签名数据计算生成的数字签名。
可选的,所述鉴别接入控制器信任的第一鉴别服务器和所述请求设备信任的第二鉴别服务器是同一个鉴别服务器,则所述第一鉴别服务器还包括:
第一解密单元,用于利用加密证书对应的私钥对所述请求设备的身份信息密文进行解密,得到所述请求设备的数字证书和所述第二密钥;
第一验证单元,用于对所述鉴别接入控制器的数字证书进行合法性验证得到第一验证结果,对所述请求设备的数字证书进行合法性验证得到第二验证结果;
第一生成单元,用于根据包括所述第一验证结果在内的信息生成所述第一鉴别结果信息,根据包括所述第二验证结果在内的信息生成所述第二鉴别结果信息,利用所述第二密钥对包括所述第二鉴别结果信息在内的信息加密生成第二鉴别结果信息密文,对包括所述第一鉴别结果信息在内的签名数据计算生成第一数字签名,对包括所述第二鉴别结果信息密文在内的签名数据计算生成第二数字签名,根据包括所述第一鉴别结果信息、所述第一数字签名、所述第二鉴别结果信息密文和所述第二数字签名在内的信息生成所述第一鉴别响应消息。
可选的,所述鉴别接入控制器信任的第一鉴别服务器和所述请求设备信任的第二鉴别服务器是两个不同的鉴别服务器,则所述第一鉴别服务器还包括:
第二验证单元,用于对所述鉴别接入控制器的数字证书进行合法性验证得到第一验证结果;
第二生成单元,用于根据包括所述第一验证结果在内的信息生成所述第一鉴别结果信息,对包括所述第一鉴别结果信息和所述请求设备的身份信息密文在内的签名数据计算生成第三数字签名;
第二发送单元,用于向第二鉴别服务器发送第二鉴别请求消息,所述第二鉴别请求消息中包括所述第一鉴别结果信息、所述请求设备的身份信息密文和所述第三数字签名;
第二接收单元,用于接收第二鉴别服务器发送的第二鉴别响应消息,所述第二鉴别响应消息中包括所述第一鉴别结果信息、所述第一数字签名、所述第二鉴别结果信息密文和第四数字签名,所述第四数字签名是所述第二鉴别服务器对包括所述第二鉴别结果信息密文在内的签名数据计算生成的数字签名;
第三验证单元,用于利用所述第二鉴别服务器的公钥验证所述第四数字签名;
第三生成单元,用于当所述第四数字签名验证通过时,对包括所述第二鉴别结果信息密文在内的签名数据计算生成第二数字签名,根据包括所述第一鉴别结果信息、所述第一数字签名、所述第二鉴别结果信息密文和所述第二数字签名在内的信息生成所述第一鉴别响应消息。
可选的,所述第一鉴别服务器向所述鉴别接入控制器发送的消息还包括所述第一鉴别服务器对接收到的所述鉴别接入控制器发送的最新前序消息计算的杂凑值;所述第一鉴别服务器向所述第二鉴别服务器发送的消息还包括所述第一鉴别服务器对接收到的所述第二鉴别服务器发送的最新前序消息计算的杂凑值。
参见图14,本申请实施例提供了一种第二鉴别服务器AS-REQ1400,第二鉴别服务器AS-REQ1400为请求设备信任的鉴别服务器,若鉴别接入控制器信任的第一鉴别服务器和所述请求设备信任的第二鉴别服务器是两个不同的鉴别服务器,则第二鉴别服务器AS-REQ1400包括:
接收单元1401,用于接收所述第一鉴别服务器发送的第二鉴别请求消息,所述第二鉴别请求消息中包括第一鉴别结果信息、所述请求设备的身份信息密文和第三数字签名;所述第三数字签名是所述第一鉴别服务器对包括所述第一鉴别结果信息和所述请求设备的身份信息密文在内的签名数据计算生成的数字签名;所述身份信息密文是利用加密证书的公钥对包括所述请求设备的数字证书和第二密钥在内的加密数据加密生成的;
验证单元1402,用于利用所述第一鉴别服务器的公钥对所述第三数字签名进行验证;
解密单元1403,用于当所述第三数字签名验证通过时,利用加密证书对应的私钥对所述请求设备的身份信息密文进行解密得到所述请求设备的数字证书和所述第二密钥;
验证单元1402还用于对所述请求设备的数字证书进行合法性验证得到第二验证结果;
生成单元1404,用于根据包括所述第二验证结果在内的信息生成所述第二鉴别结果信息,利用所述第二密钥对包括所述第二鉴别结果信息在内的信息加密生成第二鉴别结果信息密文,对包括所述第一鉴别结果信息在内的签名数据计算生成第一数字签名,对包括所述第二鉴别结果信息密文在内的签名数据计算生成第四数字签名;
发送单元1405,用于向所述第一鉴别服务器发送第二鉴别响应消息,所述第二鉴别响应消息中包括所述第一鉴别结果信息、所述第一数字签名、所述第二鉴别结果信息密文和所述第四数字签名。
可选的,所述第二鉴别服务器向所述第一鉴别服务器发送的消息还包括所述第二鉴别服务器对接收到的所述第一鉴别服务器发送的最新前序消息计算的杂凑值。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质可以是下述介质中的至少一种:只读存储器(英文:Read-Only Memory,缩写:ROM)、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备及系统实施例而言,由于其与方法实施例相一致和对应,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述,仅为本申请的一种具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。

Claims (46)

1.一种身份鉴别方法,其特征在于,所述方法包括:
鉴别接入控制器获取请求设备发送的身份密文消息,所述身份密文消息中包括所述请求设备的身份信息密文,所述身份信息密文是利用加密证书的公钥对包括所述请求设备的数字证书和第二密钥在内的加密数据加密生成的;
所述鉴别接入控制器向其信任的第一鉴别服务器发送第一鉴别请求消息,所述第一鉴别请求消息中包括所述请求设备的身份信息密文和所述鉴别接入控制器的数字证书;
所述鉴别接入控制器接收所述第一鉴别服务器发送的第一鉴别响应消息,所述第一鉴别响应消息中包括第一鉴别结果信息、第一数字签名、第二鉴别结果信息密文和第二数字签名,其中,所述第一鉴别结果信息中包括对所述鉴别接入控制器的数字证书的第一验证结果,所述第一数字签名是所述请求设备信任的第二鉴别服务器对包括所述第一鉴别结果信息在内的签名数据计算生成的数字签名,所述第二鉴别结果信息密文是利用所述第二密钥对包括第二鉴别结果信息在内的信息加密得到的,所述第二鉴别结果信息中包括对所述请求设备的数字证书的第二验证结果,所述第二数字签名是所述第一鉴别服务器对包括所述第二鉴别结果信息密文在内的签名数据计算生成的数字签名;
所述鉴别接入控制器利用所述第一鉴别服务器的公钥对所述第二数字签名进行验证,当所述第二数字签名验证通过时,向所述请求设备发送第三鉴别响应消息,所述第三鉴别响应消息中包括鉴别结果信息密文,所述鉴别结果信息密文是利用消息加密密钥对包括所述第一鉴别结果信息和所述第一数字签名在内的加密数据加密生成的;
所述请求设备利用所述消息加密密钥对所述鉴别结果信息密文进行解密得到所述第一鉴别结果信息和所述第一数字签名;
所述请求设备利用所述第二鉴别服务器的公钥对所述第一数字签名进行验证,若验证通过,则根据所述第一鉴别结果信息中的第一验证结果确定所述鉴别接入控制器的身份鉴别结果;当所述请求设备确定所述鉴别接入控制器的身份鉴别结果为合法时,向所述鉴别接入控制器发送第四鉴别响应消息;或者,
所述请求设备利用所述第二鉴别服务器的公钥对所述第一数字签名进行验证,若验证通过,则所述请求设备向所述鉴别接入控制器发送第四鉴别响应消息以及根据所述第一鉴别结果信息中的第一验证结果确定所述鉴别接入控制器的身份鉴别结果;或者,
所述请求设备利用所述第二鉴别服务器的公钥对所述第一数字签名进行验证;若所述第一数字签名验证通过,则所述请求设备根据所述第一鉴别结果信息中的第一验证结果确定所述鉴别接入控制器的身份鉴别结果;所述请求设备向所述鉴别接入控制器发送第四鉴别响应消息;
其中,所述第四鉴别响应消息中包括第二密钥密文,所述第二密钥密文是利用所述消息加密密钥对包括所述第二密钥在内的信息加密得到的;
所述鉴别接入控制器接收到所述第四鉴别响应消息后,利用所述消息加密密钥解密所述第二密钥密文得到所述第二密钥,利用所述第二密钥解密所述第二鉴别结果信息密文得到所述第二鉴别结果信息,根据所述第二鉴别结果信息中的第二验证结果确定所述请求设备的身份鉴别结果。
2.根据权利要求1所述的方法,其特征在于,在所述鉴别接入控制器获取请求设备发送的身份密文消息之前,所述方法还包括:
所述鉴别接入控制器向所述请求设备发送密钥请求消息,所述密钥请求消息中包括所述鉴别接入控制器的密钥交换参数;
所述请求设备根据包括所述请求设备的密钥交换参数对应的临时私钥和所述鉴别接入控制器的密钥交换参数所包括的临时公钥进行密钥交换计算生成第一密钥,根据包括所述第一密钥在内的信息利用密钥导出算法计算所述消息加密密钥;
对应的,所述身份密文消息中还包括所述请求设备的密钥交换参数;
所述鉴别接入控制器根据包括所述鉴别接入控制器的密钥交换参数对应的临时私钥和所述请求设备的密钥交换参数所包括的临时公钥进行密钥交换计算生成所述第一密钥,根据包括所述第一密钥在内的信息利用所述密钥导出算法计算所述消息加密密钥。
3.根据权利要求2所述的方法,其特征在于,所述密钥请求消息中还包括所述鉴别接入控制器生成的第一随机数;
则所述请求设备计算所述消息加密密钥具体包括:
所述请求设备根据包括所述第一密钥、所述第一随机数和所述请求设备生成的第二随机数在内的信息计算所述消息加密密钥;
对应的,所述身份密文消息中还包括所述第二随机数;
则所述鉴别接入控制器计算所述消息加密密钥具体包括:
所述鉴别接入控制器根据包括所述第一密钥、所述第一随机数和所述第二随机数在内的信息计算所述消息加密密钥。
4.根据权利要求3所述的方法,其特征在于,所述身份密文消息中还包括所述第一随机数;则在所述鉴别接入控制器计算所述消息加密密钥之前,所述方法还包括:
所述鉴别接入控制器对所述身份密文消息中的第一随机数和所述鉴别接入控制器生成的第一随机数的一致性进行验证;
若验证通过,则所述鉴别接入控制器再计算所述消息加密密钥。
5.根据权利要求2所述的方法,其特征在于,所述密钥请求消息中还包括所述鉴别接入控制器支持的安全能力参数信息,所述方法还包括:
所述请求设备根据所述安全能力参数信息确定所述请求设备使用的特定安全策略;
则所述身份密文消息中还包括所述特定安全策略。
6.根据权利要求2所述的方法,其特征在于,所述密钥请求消息中还包括所述鉴别接入控制器信任的至少一个鉴别服务器的身份标识;则所述方法还包括:
所述请求设备根据所述鉴别接入控制器信任的至少一个鉴别服务器的身份标识,确定所述请求设备信任的至少一个鉴别服务器的身份标识;
则所述身份密文消息中还包括所述请求设备信任的至少一个鉴别服务器的身份标识;所述方法还包括:
所述鉴别接入控制器根据所述身份密文消息中所述请求设备信任的至少一个鉴别服务器的身份标识和所述密钥请求消息中所述鉴别接入控制器信任的至少一个鉴别服务器的身份标识,确定所述第一鉴别服务器。
7.根据权利要求1所述的方法,其特征在于,所述身份密文消息中还包括所述请求设备信任的至少一个鉴别服务器的身份标识;则所述方法还包括:
所述鉴别接入控制器根据所述请求设备信任的至少一个鉴别服务器的身份标识和所述鉴别接入控制器信任的鉴别服务器的身份标识,确定所述第一鉴别服务器。
8.根据权利要求1所述的方法,其特征在于,所述第一鉴别请求消息中的身份信息密文的加密数据还包括所述请求设备的身份标识和第三密钥,所述第一鉴别请求消息中还包括所述鉴别接入控制器的身份标识;和/或,所述第一鉴别请求消息中还包括所述请求设备生成的第二随机数和所述鉴别接入控制器生成的第一随机数;
对应的,所述第一鉴别响应消息中还包括所述请求设备的身份标识密文和所述鉴别接入控制器的身份标识,所述请求设备的身份标识密文是利用所述第三密钥对包括所述请求设备的身份标识在内的信息加密生成的;和/或,所述第一鉴别响应消息中还包括所述第二随机数和所述第一随机数;
对应的,所述第三鉴别响应消息中的鉴别结果信息密文的加密数据还包括所述请求设备的身份标识密文和/或所述第二随机数;
则所述方法还包括:
所述请求设备利用所述消息加密密钥对所述鉴别结果信息密文进行解密还得到所述请求设备的身份标识密文和/或所述第二随机数,所述请求设备根据自身的身份标识和所述第三密钥对所述请求设备的身份标识密文进行验证,和/或,将解密得到的所述第二随机数与所述请求设备生成的第二随机数进行一致性验证,验证通过后,再确定所述鉴别接入控制器的身份鉴别结果;
所述鉴别接入控制器对所述第一鉴别响应消息中的鉴别接入控制器的身份标识和所述鉴别接入控制器自身的身份标识进行一致性验证,和/或,对所述第一鉴别响应消息中的所述第一随机数和所述鉴别接入控制器生成的第一随机数进行一致性验证,验证通过后,再确定所述请求设备的身份鉴别结果。
9.根据权利要求1所述的方法,其特征在于,所述身份密文消息中还包括所述请求设备的数字签名,则在所述鉴别接入控制器确定所述请求设备的身份鉴别结果之前,所述方法还包括:
所述鉴别接入控制器确定所述请求设备的数字签名是否验证通过,若确定所述请求设备的数字签名验证通过,则所述鉴别接入控制器再根据所述第二验证结果确定所述请求设备的身份鉴别结果。
10.根据权利要求9所述的方法,其特征在于,所述鉴别接入控制器确定所述请求设备的数字签名是否验证通过具体包括:
若所述第二鉴别结果信息中还包括所述请求设备的数字证书,则所述鉴别接入控制器利用所述第二鉴别结果信息中的所述请求设备的数字证书对所述请求设备的数字签名进行验证,根据验证结果确定所述请求设备的数字签名是否验证通过;或者,
所述第二鉴别服务器利用解密所述请求设备的身份信息密文得到的所述请求设备的数字证书对所述请求设备的数字签名进行验证,若所述鉴别接入控制器接收到所述第一鉴别响应消息,则确定所述请求设备的数字签名已验证通过。
11.根据权利要求1所述的方法,其特征在于,所述第四鉴别响应消息中还包括所述请求设备的数字签名,所述鉴别接入控制器利用所述第二密钥解密得到的所述第二鉴别结果信息中还包括所述请求设备的数字证书;则在所述鉴别接入控制器确定所述请求设备的身份鉴别结果之前,所述方法还包括:
所述鉴别接入控制器利用所述第二鉴别结果信息中的所述请求设备的数字证书,对所述请求设备的数字签名进行验证,若验证通过,则再根据所述第二验证结果确定所述请求设备的身份鉴别结果。
12.根据权利要求1所述的方法,其特征在于,在所述请求设备确定所述鉴别接入控制器的身份鉴别结果之前,所述方法还包括:
所述请求设备确定所述鉴别接入控制器的数字签名是否验证通过,若确定所述鉴别接入控制器的数字签名验证通过,则所述请求设备再根据所述第一验证结果确定所述鉴别接入控制器的身份鉴别结果。
13.根据权利要求12所述的方法,其特征在于,所述请求设备确定所述鉴别接入控制器的数字签名是否验证通过具体包括:
当所述第一鉴别请求消息中还包括所述鉴别接入控制器的数字签名时,所述第一鉴别服务器利用所述第一鉴别请求消息中的所述鉴别接入控制器的数字证书,对所述鉴别接入控制器的数字签名进行验证,若所述请求设备接收到所述第三鉴别响应消息,则所述请求设备确定所述鉴别接入控制器的数字签名已验证通过;或者,
当所述第三鉴别响应消息中还包括所述鉴别接入控制器的数字签名时,所述第一鉴别结果信息中还包括所述鉴别接入控制器的数字证书;则所述请求设备利用所述第一鉴别结果信息中的所述鉴别接入控制器的数字证书对所述鉴别接入控制器的数字签名进行验证,根据验证结果确定所述鉴别接入控制器的数字签名是否验证通过。
14.根据权利要求2所述的方法,其特征在于,所述第三鉴别响应消息中还包括第一消息完整性校验码,所述第一消息完整性校验码是所述鉴别接入控制器利用消息完整性校验密钥对包括所述第三鉴别响应消息中除所述第一消息完整性校验码外的其他字段计算生成的;则所述方法还包括:
所述请求设备利用消息完整性校验密钥验证所述第一消息完整性校验码,验证通过后,再根据所述第一验证结果确定所述鉴别接入控制器的身份鉴别结果;和/或,
所述第四鉴别响应消息中还包括第二消息完整性校验码,所述第二消息完整性校验码是所述请求设备利用消息完整性校验密钥对包括所述第四鉴别响应消息中除所述第二消息完整性校验码外的其他字段计算生成的;则所述方法还包括:
所述鉴别接入控制器利用消息完整性校验密钥验证所述第二消息完整性校验码,验证通过后,再根据所述第二验证结果确定所述请求设备的身份鉴别结果;
其中,所述鉴别接入控制器的消息完整性校验密钥与所述鉴别接入控制器的消息加密密钥的生成方式相同;所述请求设备的消息完整性校验密钥与所述请求设备的消息加密密钥的生成方式相同。
15.根据权利要求1至14任一项所述的方法,其特征在于,所述鉴别接入控制器信任的第一鉴别服务器和所述请求设备信任的第二鉴别服务器是同一个鉴别服务器,则所述方法还包括:
所述第一鉴别服务器对所述鉴别接入控制器的数字证书进行合法性验证得到第一验证结果,利用加密证书对应的私钥解密所述请求设备的身份信息密文得到所述请求设备的数字证书和所述第二密钥,对所述请求设备的数字证书进行合法性验证得到第二验证结果,根据包括所述第一验证结果在内的信息生成所述第一鉴别结果信息,根据包括所述第二验证结果在内的信息生成所述第二鉴别结果信息,利用所述第二密钥对包括所述第二鉴别结果信息在内的信息加密生成第二鉴别结果信息密文,对包括所述第一鉴别结果信息在内的签名数据计算生成第一数字签名,对包括所述第二鉴别结果信息密文在内的签名数据计算生成第二数字签名,根据包括所述第一鉴别结果信息、所述第一数字签名、所述第二鉴别结果信息密文和所述第二数字签名在内的信息生成所述第一鉴别响应消息。
16.根据权利要求1至14任一项所述的方法,其特征在于,所述鉴别接入控制器信任的第一鉴别服务器和所述请求设备信任的第二鉴别服务器是两个不同的鉴别服务器;则所述方法还包括:
所述第一鉴别服务器对所述鉴别接入控制器的数字证书进行合法性验证得到第一验证结果,根据包括所述第一验证结果在内的信息生成所述第一鉴别结果信息,对包括所述第一鉴别结果信息和所述请求设备的身份信息密文在内的签名数据计算生成第三数字签名;
所述第一鉴别服务器向所述第二鉴别服务器发送第二鉴别请求消息,所述第二鉴别请求消息中包括所述第一鉴别结果信息、所述请求设备的身份信息密文和所述第三数字签名;由所述第二鉴别服务器利用所述第一鉴别服务器的公钥对所述第三数字签名进行验证,验证通过后,利用加密证书对应的私钥解密所述请求设备的身份信息密文得到所述请求设备的数字证书和所述第二密钥,对所述请求设备的数字证书进行合法性验证得到第二验证结果,根据包括所述第二验证结果在内的信息生成所述第二鉴别结果信息,利用所述第二密钥对包括所述第二鉴别结果信息在内的信息加密生成第二鉴别结果信息密文,对包括所述第一鉴别结果信息在内的签名数据计算生成第一数字签名,对包括所述第二鉴别结果信息密文在内的签名数据计算生成第四数字签名;
所述第一鉴别服务器接收所述第二鉴别服务器发送的第二鉴别响应消息,所述第二鉴别响应消息中包括所述第一鉴别结果信息、所述第一数字签名、所述第二鉴别结果信息密文和所述第四数字签名;
所述第一鉴别服务器利用所述第二鉴别服务器的公钥验证所述第四数字签名,若验证通过,则所述第一鉴别服务器对包括所述第二鉴别结果信息密文在内的签名数据计算生成第二数字签名,根据包括所述第一鉴别结果信息、所述第一数字签名、所述第二鉴别结果信息密文和所述第二数字签名在内的信息生成所述第一鉴别响应消息。
17.根据权利要求1至14任一项所述的方法,其特征在于,所述请求设备向所述鉴别接入控制器发送的消息还包括所述请求设备对接收到的所述鉴别接入控制器发送的最新前序消息计算的杂凑值;
则所述鉴别接入控制器收到所述请求设备发送的消息时,先对接收到的消息中的杂凑值进行验证,验证通过后再执行后续操作;
所述鉴别接入控制器向所述请求设备发送的消息还包括所述鉴别接入控制器对接收到的所述请求设备发送的最新前序消息计算的杂凑值;
则所述请求设备收到所述鉴别接入控制器发送的消息时,先对接收到的消息中的杂凑值进行验证,验证通过后再执行后续操作;
所述鉴别接入控制器向所述第一鉴别服务器发送的消息还包括所述鉴别接入控制器对接收到的所述第一鉴别服务器发送的最新前序消息计算的杂凑值;
则所述第一鉴别服务器收到所述鉴别接入控制器发送的消息时,先对接收到的消息中的杂凑值进行验证,验证通过后再执行后续操作;
所述第一鉴别服务器向所述鉴别接入控制器发送的消息还包括所述第一鉴别服务器对接收到的所述鉴别接入控制器发送的最新前序消息的杂凑值;
则所述鉴别接入控制器收到所述第一鉴别服务器发送的消息时,先对接收到的消息中的杂凑值进行验证,验证通过后再执行后续操作;
所述第一鉴别服务器向所述第二鉴别服务器发送的消息还包括所述第一鉴别服务器对接收到的所述第二鉴别服务器发送的最新前序消息计算的杂凑值;
则所述第二鉴别服务器收到所述第一鉴别服务器发送的消息时,先对接收到的消息中的杂凑值进行验证,验证通过后再执行后续操作;
所述第二鉴别服务器向所述第一鉴别服务器发送的消息还包括所述第二鉴别服务器对接收到的所述第一鉴别服务器发送的最新前序消息计算的杂凑值;
则所述第一鉴别服务器收到所述第二鉴别服务器发送的消息时,先对接收到的消息中的杂凑值进行验证,验证通过后再执行后续操作。
18.一种鉴别接入控制器,其特征在于,所述鉴别接入控制器包括:
获取单元,用于获取请求设备发送的身份密文消息,所述身份密文消息中包括所述请求设备的身份信息密文,所述身份信息密文是利用加密证书的公钥对包括所述请求设备的数字证书和第二密钥在内的加密数据加密生成的;
第一发送单元,用于向所述鉴别接入控制器信任的第一鉴别服务器发送第一鉴别请求消息,所述第一鉴别请求消息中包括所述请求设备的身份信息密文和所述鉴别接入控制器的数字证书;
第一接收单元,用于接收所述第一鉴别服务器发送的第一鉴别响应消息,所述第一鉴别响应消息中包括第一鉴别结果信息、第一数字签名、第二鉴别结果信息密文和第二数字签名,其中,所述第一鉴别结果信息中包括对所述鉴别接入控制器的数字证书的第一验证结果,所述第一数字签名是所述请求设备信任的第二鉴别服务器对包括所述第一鉴别结果信息在内的签名数据计算生成的数字签名,所述第二鉴别结果信息密文是利用所述第二密钥对包括第二鉴别结果信息在内的信息加密得到的,所述第二鉴别结果信息中包括对所述请求设备的数字证书的第二验证结果,所述第二数字签名是所述第一鉴别服务器对包括所述第二鉴别结果信息密文在内的签名数据计算生成的数字签名;
第一验证单元,用于利用所述第一鉴别服务器的公钥对所述第二数字签名进行验证;
第二发送单元,用于当所述第二数字签名验证通过时,向所述请求设备发送第三鉴别响应消息,所述第三鉴别响应消息中包括鉴别结果信息密文,所述鉴别结果信息密文是利用消息加密密钥对包括所述第一鉴别结果信息和所述第一数字签名在内的加密数据加密生成的;
第二接收单元,用于接收所述请求设备发送的第四鉴别响应消息,所述第四鉴别响应消息中包括第二密钥密文,所述第二密钥密文是利用所述消息加密密钥对包括所述第二密钥在内的信息加密得到的;
解密单元,用于利用所述消息加密密钥解密所述第二密钥密文得到所述第二密钥,以及,利用所述第二密钥解密所述第二鉴别结果信息密文得到所述第二鉴别结果信息;
第一确定单元,用于根据所述第二鉴别结果信息中的第二验证结果确定所述请求设备的身份鉴别结果。
19.根据权利要求18所述的鉴别接入控制器,其特征在于,所述鉴别接入控制器还包括:
第三发送单元,用于向所述请求设备发送密钥请求消息,所述密钥请求消息中包括所述鉴别接入控制器的密钥交换参数;所述获取单元获取的身份密文消息中还包括所述请求设备的密钥交换参数;
计算单元,用于根据包括所述鉴别接入控制器的密钥交换参数对应的临时私钥和所述请求设备的密钥交换参数所包括的临时公钥进行密钥交换计算生成第一密钥,根据包括所述第一密钥在内的信息利用密钥导出算法计算所述消息加密密钥。
20.根据权利要求19所述的鉴别接入控制器,其特征在于,所述第三发送单元发送的密钥请求消息中还包括所述鉴别接入控制器生成的第一随机数,所述获取单元获取的身份密文消息中还包括请求设备生成的第二随机数;
则所述计算单元具体用于根据包括所述第一密钥、所述第一随机数和所述第二随机数在内的信息计算所述消息加密密钥。
21.根据权利要求20所述的鉴别接入控制器,其特征在于,所述获取单元获取的身份密文消息中还包括所述第一随机数;则所述鉴别接入控制器还包括:
第二验证单元,用于对所述身份密文消息中的第一随机数和所述鉴别接入控制器生成的第一随机数的一致性进行验证;
若验证通过,则所述计算单元再计算所述消息加密密钥。
22.根据权利要求19所述的鉴别接入控制器,其特征在于,所述第三发送单元发送的密钥请求消息中还包括所述鉴别接入控制器支持的安全能力参数信息,则所述获取单元获取的身份密文消息中还包括特定安全策略,所述特定安全策略是所述请求设备根据所述鉴别接入控制器支持的安全能力参数信息确定的。
23.根据权利要求19所述的鉴别接入控制器,其特征在于,所述第三发送单元发送的密钥请求消息中还包括所述鉴别接入控制器信任的至少一个鉴别服务器的身份标识;所述获取单元获取的身份密文消息中还包括所述请求设备信任的至少一个鉴别服务器的身份标识;则所述鉴别接入控制器还包括:
第二确定单元,用于根据所述身份密文消息中所述请求设备信任的至少一个鉴别服务器的身份标识和所述密钥请求消息中所述鉴别接入控制器信任的至少一个鉴别服务器的身份标识,确定所述第一鉴别服务器。
24.根据权利要求18所述的鉴别接入控制器,其特征在于,所述获取单元获取的身份密文消息中还包括所述请求设备信任的至少一个鉴别服务器的身份标识;则所述鉴别接入控制器还包括:
第三确定单元,用于根据所述请求设备信任的至少一个鉴别服务器的身份标识和所述鉴别接入控制器信任的鉴别服务器的身份标识,确定所述第一鉴别服务器。
25.根据权利要求18所述的鉴别接入控制器,其特征在于,所述第一发送单元发送的第一鉴别请求消息中还包括所述鉴别接入控制器的身份标识和/或所述鉴别接入控制器生成的第一随机数;对应的,所述第一接收单元接收的第一鉴别响应消息中还包括所述鉴别接入控制器的身份标识和/或所述第一随机数;
则所述鉴别接入控制器还包括:
第三验证单元,用于对所述第一鉴别响应消息中的鉴别接入控制器的身份标识和所述鉴别接入控制器自身的身份标识的一致性进行验证,和/或,对所述第一鉴别响应消息中的所述第一随机数和所述鉴别接入控制器生成的第一随机数的一致性进行验证,验证通过后,所述第一确定单元再确定所述请求设备的身份鉴别结果。
26.根据权利要求18所述的鉴别接入控制器,其特征在于,所述获取单元获取的身份密文消息中还包括所述请求设备的数字签名,则所述第一确定单元还用于确定所述请求设备的数字签名是否验证通过,若确定所述请求设备的数字签名验证通过,则再根据所述第二验证结果确定所述请求设备的身份鉴别结果。
27.根据权利要求26所述的鉴别接入控制器,其特征在于,所述第一确定单元具体用于:
在所述解密单元解密所述第二鉴别结果信息密文得到的第二鉴别结果信息中还包括所述请求设备的数字证书时,利用所述请求设备的数字证书对所述请求设备的数字签名进行验证时,根据验证结果确定所述请求设备的数字签名是否验证通过;和/或,
所述第二鉴别服务器利用解密所述请求设备的身份信息密文得到的所述请求设备的数字证书对所述请求设备的数字签名进行验证,若所述第一接收单元接收到所述第一鉴别响应消息,则确定所述请求设备的数字签名已验证通过。
28.根据权利要求18所述的鉴别接入控制器,其特征在于,所述第二接收单元接收的第四鉴别响应消息中还包括所述请求设备的数字签名,所述解密单元利用所述第二密钥解密得到的所述第二鉴别结果信息中还包括所述请求设备的数字证书;则在所述第一确定单元确定所述请求设备的身份鉴别结果之前,所述第一确定单元还用于利用所述第二鉴别结果信息中的所述请求设备的数字证书对所述请求设备的数字签名进行验证,若验证通过,则再根据所述第二验证结果确定所述请求设备的身份鉴别结果。
29.根据权利要求19所述的鉴别接入控制器,其特征在于,所述第二发送单元发送的第三鉴别响应消息中还包括第一消息完整性校验码,所述第一消息完整性校验码是所述鉴别接入控制器利用消息完整性校验密钥对包括所述第三鉴别响应消息中除所述第一消息完整性校验码外的其他字段计算生成的;和/或,
所述第二接收单元接收的第四鉴别响应消息中还包括第二消息完整性校验码,所述第二消息完整性校验码是所述请求设备利用消息完整性校验密钥对包括所述第四鉴别响应消息中除所述第二消息完整性校验码外的其他字段计算生成的;则所述鉴别接入控制器还包括:
第四验证单元,用于利用消息完整性校验密钥验证所述第二消息完整性校验码,验证通过后,所述第一确定单元再根据所述第二验证结果确定所述请求设备的身份鉴别结果。
30.根据权利要求18至29任一项所述的鉴别接入控制器,其特征在于,所述鉴别接入控制器向所述请求设备发送的消息还包括所述鉴别接入控制器对接收到的所述请求设备发送的最新前序消息计算的杂凑值;所述鉴别接入控制器向所述第一鉴别服务器发送的消息还包括所述鉴别接入控制器对接收到的所述第一鉴别服务器发送的最新前序消息计算的杂凑值。
31.一种请求设备,其特征在于,所述请求设备包括:
第一发送单元,用于向鉴别接入控制器发送身份密文消息,所述身份密文消息中包括所述请求设备的身份信息密文,所述身份信息密文是利用加密证书的公钥对包括所述请求设备的数字证书和第二密钥在内的加密数据加密生成的;
第一接收单元,用于接收所述鉴别接入控制器发送的第三鉴别响应消息,所述第三鉴别响应消息中包括鉴别结果信息密文,所述鉴别结果信息密文是利用消息加密密钥对包括第一鉴别结果信息和第一数字签名在内的加密数据加密生成的;
第一解密单元,用于利用所述消息加密密钥对所述鉴别结果信息密文进行解密得到所述第一鉴别结果信息和所述第一数字签名;
第一验证单元,用于利用所述第二鉴别服务器的公钥对所述第一数字签名进行验证,若验证通过,则第一确定单元根据所述第一鉴别结果信息中的第一验证结果确定所述鉴别接入控制器的身份鉴别结果;当所述第一确定单元确定所述鉴别接入控制器的身份鉴别结果为合法时,第二发送单元向所述鉴别接入控制器发送第四鉴别响应消息;或者,
用于利用所述第二鉴别服务器的公钥对所述第一数字签名进行验证,若验证通过,则第二发送单元向所述鉴别接入控制器发送第四鉴别响应消息以及第一确定单元根据所述第一鉴别结果信息中的第一验证结果确定所述鉴别接入控制器的身份鉴别结果;或者,
用于利用所述第二鉴别服务器的公钥对所述第一数字签名进行验证;若所述第一数字签名验证通过,则第一确定单元根据所述第一鉴别结果信息中的第一验证结果确定所述鉴别接入控制器的身份鉴别结果;第二发送单元向所述鉴别接入控制器发送第四鉴别响应消息;
其中,所述第四鉴别响应消息中包括第二密钥密文,所述第二密钥密文是利用所述消息加密密钥对包括所述第二密钥在内的信息加密得到的。
32.根据权利要求31所述的请求设备,其特征在于,所述请求设备还包括:
第二接收单元,用于接收所述鉴别接入控制器发送的密钥请求消息,所述密钥请求消息中包括所述鉴别接入控制器的密钥交换参数;
第一计算单元,用于根据包括所述请求设备的密钥交换参数对应的临时私钥和所述鉴别接入控制器的密钥交换参数所包括的临时公钥进行密钥交换计算生成第一密钥,根据包括所述第一密钥在内的信息利用密钥导出算法计算所述消息加密密钥;
则所述第一发送单元发送的身份密文消息中还包括所述请求设备的密钥交换参数。
33.根据权利要求32所述的请求设备,其特征在于,所述第二接收单元接收的密钥请求消息中还包括所述鉴别接入控制器生成的第一随机数;
所述第一计算单元具体用于根据包括所述第一密钥、所述第一随机数和所述请求设备生成的第二随机数在内的信息计算所述消息加密密钥;
则所述第一发送单元发送的身份密文消息中还包括所述第二随机数。
34.根据权利要求32所述的请求设备,其特征在于,所述第二接收单元接收的密钥请求消息中还包括所述鉴别接入控制器支持的安全能力参数信息;所述请求设备还包括:
第二确定单元,用于根据所述安全能力参数信息确定所述请求设备使用的特定安全策略;
则所述第一发送单元发送的身份密文消息中还包括所述特定安全策略。
35.根据权利要求32所述的请求设备,其特征在于,所述第二接收单元接收的密钥请求消息中还包括所述鉴别接入控制器信任的至少一个鉴别服务器的身份标识;所述请求设备还包括:
第三确定单元,用于根据所述鉴别接入控制器信任的至少一个鉴别服务器的身份标识,确定所述请求设备信任的至少一个鉴别服务器的身份标识;
则所述第一发送单元发送的身份密文消息中还包括所述请求设备信任的至少一个鉴别服务器的身份标识。
36.根据权利要求31所述的请求设备,其特征在于,所述第一发送单元发送的身份密文消息中还包括所述请求设备生成的第二随机数,和/或,所述身份密文消息中的所述身份信息密文的加密数据还包括所述请求设备的身份标识和第三密钥;
则所述第一接收单元接收的第三鉴别响应消息中的鉴别结果信息密文的加密数据还包括所述第二随机数和/或所述请求设备的身份标识密文;
所述第一解密单元利用所述消息加密密钥对所述鉴别结果信息密文进行解密还得到所述第二随机数和/或所述请求设备的身份标识密文;
则所述请求设备还包括:
第二验证单元,用于将解密得到的所述第二随机数与所述请求设备生成的第二随机数进行一致性验证,和/或,用于根据所述请求设备自身的身份标识和所述第三密钥对所述请求设备的身份标识密文进行验证,若验证通过,所述第一确定单元再确定所述鉴别接入控制器的身份鉴别结果。
37.根据权利要求32所述的请求设备,其特征在于,所述第一确定单元在确定所述鉴别接入控制器的身份鉴别结果之前,还用于确定所述鉴别接入控制器的数字签名是否验证通过,若确定所述鉴别接入控制器的数字签名验证通过,则再根据所述第一验证结果确定所述鉴别接入控制器的身份鉴别结果。
38.根据权利要求37所述的请求设备,其特征在于,所述第一确定单元具体用于:
当所述鉴别接入控制器向其信任的第一鉴别服务器发送的第一鉴别请求消息中还包括所述鉴别接入控制器的数字签名时,所述第一鉴别服务器利用所述第一鉴别请求消息中的所述鉴别接入控制器的数字证书,对所述鉴别接入控制器的数字签名进行验证,若所述第一接收单元接收到所述第三鉴别响应消息,则确定所述鉴别接入控制器的数字签名已验证通过;和/或,
当所述第三鉴别响应消息中还包括所述鉴别接入控制器的数字签名时,所述第一鉴别结果信息中还包括所述鉴别接入控制器的数字证书;则所述第一确定单元利用所述第一鉴别结果信息中的所述鉴别接入控制器的数字证书对所述鉴别接入控制器的数字签名进行验证,根据验证结果确定所述鉴别接入控制器的数字签名是否验证通过。
39.根据权利要求32所述的请求设备,其特征在于,所述第一接收单元接收的第三鉴别响应消息中还包括第一消息完整性校验码,所述第一消息完整性校验码是所述鉴别接入控制器利用消息完整性校验密钥对包括所述第三鉴别响应消息中除所述第一消息完整性校验码外的其他字段计算生成的;则所述请求设备还包括:
第三验证单元,用于利用消息完整性校验密钥验证所述第一消息完整性校验码,验证通过后,所述第一确定单元再根据所述第一验证结果确定所述鉴别接入控制器的身份鉴别结果;和/或,
所述第二发送单元发送的第四鉴别响应消息中还包括第二消息完整性校验码,所述第二消息完整性校验码是所述请求设备利用消息完整性校验密钥对包括所述第四鉴别响应消息中除所述第二消息完整性校验码外的其他字段计算生成的。
40.根据权利要求31至39任一项所述的请求设备,其特征在于,所述请求设备向所述鉴别接入控制器发送的消息还包括所述请求设备对接收到的所述鉴别接入控制器发送的最新前序消息计算的杂凑值。
41.一种第一鉴别服务器,其特征在于,所述第一鉴别服务器为鉴别接入控制器信任的鉴别服务器,包括:
第一接收单元,用于接收鉴别接入控制器发送的第一鉴别请求消息,所述第一鉴别请求消息中包括请求设备的身份信息密文和所述鉴别接入控制器的数字证书;所述身份信息密文是利用加密证书的公钥对包括所述请求设备的数字证书和第二密钥在内的加密数据加密生成的;
第一发送单元,用于向所述鉴别接入控制器发送第一鉴别响应消息,所述第一鉴别响应消息中包括第一鉴别结果信息、第一数字签名、第二鉴别结果信息密文和第二数字签名,其中,所述第一鉴别结果信息中包括对所述鉴别接入控制器的数字证书的第一验证结果,所述第一数字签名是所述请求设备信任的第二鉴别服务器对包括所述第一鉴别结果信息在内的签名数据计算生成的数字签名,所述第二鉴别结果信息密文是利用第二密钥对包括第二鉴别结果信息在内的信息加密得到的,所述第二鉴别结果信息中包括对所述请求设备的数字证书的第二验证结果,所述第二数字签名是所述第一鉴别服务器对包括所述第二鉴别结果信息密文在内的签名数据计算生成的数字签名。
42.根据权利要求41所述的第一鉴别服务器,其特征在于,所述鉴别接入控制器信任的第一鉴别服务器和所述请求设备信任的第二鉴别服务器是同一个鉴别服务器,则所述第一鉴别服务器还包括:
第一解密单元,用于利用加密证书对应的私钥对所述请求设备的身份信息密文进行解密,得到所述请求设备的数字证书和所述第二密钥;
第一验证单元,用于对所述鉴别接入控制器的数字证书进行合法性验证得到第一验证结果,对所述请求设备的数字证书进行合法性验证得到第二验证结果;
第一生成单元,用于根据包括所述第一验证结果在内的信息生成所述第一鉴别结果信息,根据包括所述第二验证结果在内的信息生成所述第二鉴别结果信息,利用所述第二密钥对包括所述第二鉴别结果信息在内的信息加密生成第二鉴别结果信息密文,对包括所述第一鉴别结果信息在内的签名数据计算生成第一数字签名,对包括所述第二鉴别结果信息密文在内的签名数据计算生成第二数字签名,根据包括所述第一鉴别结果信息、所述第一数字签名、所述第二鉴别结果信息密文和所述第二数字签名在内的信息生成所述第一鉴别响应消息。
43.根据权利要求41所述的第一鉴别服务器,其特征在于,所述鉴别接入控制器信任的第一鉴别服务器和所述请求设备信任的第二鉴别服务器是两个不同的鉴别服务器,则所述第一鉴别服务器还包括:
第二验证单元,用于对所述鉴别接入控制器的数字证书进行合法性验证得到第一验证结果;
第二生成单元,用于根据包括所述第一验证结果在内的信息生成所述第一鉴别结果信息,对包括所述第一鉴别结果信息和所述请求设备的身份信息密文在内的签名数据计算生成第三数字签名;
第二发送单元,用于向第二鉴别服务器发送第二鉴别请求消息,所述第二鉴别请求消息中包括所述第一鉴别结果信息、所述请求设备的身份信息密文和所述第三数字签名;
第二接收单元,用于接收第二鉴别服务器发送的第二鉴别响应消息,所述第二鉴别响应消息中包括所述第一鉴别结果信息、所述第一数字签名、所述第二鉴别结果信息密文和第四数字签名,所述第四数字签名是所述第二鉴别服务器对包括所述第二鉴别结果信息密文在内的签名数据计算生成的数字签名;
第三验证单元,用于利用所述第二鉴别服务器的公钥验证所述第四数字签名;
第三生成单元,用于当所述第四数字签名验证通过时,对包括所述第二鉴别结果信息密文在内的签名数据计算生成第二数字签名,根据包括所述第一鉴别结果信息、所述第一数字签名、所述第二鉴别结果信息密文和所述第二数字签名在内的信息生成所述第一鉴别响应消息。
44.根据权利要求41至43任一项所述的第一鉴别服务器,其特征在于,所述第一鉴别服务器向所述鉴别接入控制器发送的消息还包括所述第一鉴别服务器对接收到的所述鉴别接入控制器发送的最新前序消息计算的杂凑值;所述第一鉴别服务器向所述第二鉴别服务器发送的消息还包括所述第一鉴别服务器对接收到的所述第二鉴别服务器发送的最新前序消息计算的杂凑值。
45.一种第二鉴别服务器,其特征在于,所述第二鉴别服务器为请求设备信任的鉴别服务器,若鉴别接入控制器信任的第一鉴别服务器和所述请求设备信任的第二鉴别服务器是两个不同的鉴别服务器,则所述第二鉴别服务器包括:
接收单元,用于接收所述第一鉴别服务器发送的第二鉴别请求消息,所述第二鉴别请求消息中包括第一鉴别结果信息、所述请求设备的身份信息密文和第三数字签名;所述第三数字签名是所述第一鉴别服务器对包括所述第一鉴别结果信息和所述请求设备的身份信息密文在内的签名数据计算生成的数字签名;所述身份信息密文是利用加密证书的公钥对包括所述请求设备的数字证书和第二密钥在内的加密数据加密生成的;
验证单元,用于利用所述第一鉴别服务器的公钥对所述第三数字签名进行验证;
解密单元,用于当所述第三数字签名验证通过时,利用加密证书对应的私钥对所述请求设备的身份信息密文进行解密得到所述请求设备的数字证书和所述第二密钥;
所述验证单元还用于对所述请求设备的数字证书进行合法性验证得到第二验证结果;
生成单元,用于根据包括所述第二验证结果在内的信息生成所述第二鉴别结果信息,利用所述第二密钥对包括所述第二鉴别结果信息在内的信息加密生成第二鉴别结果信息密文,对包括所述第一鉴别结果信息在内的签名数据计算生成第一数字签名,对包括所述第二鉴别结果信息密文在内的签名数据计算生成第四数字签名;
发送单元,用于向所述第一鉴别服务器发送第二鉴别响应消息,所述第二鉴别响应消息中包括所述第一鉴别结果信息、所述第一数字签名、所述第二鉴别结果信息密文和所述第四数字签名。
46.根据权利要求45所述的第二鉴别服务器,其特征在于,所述第二鉴别服务器向所述第一鉴别服务器发送的消息还包括所述第二鉴别服务器对接收到的所述第一鉴别服务器发送的最新前序消息计算的杂凑值。
CN202011569233.5A 2020-12-26 2020-12-26 一种身份鉴别方法和装置 Pending CN114760045A (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202011569233.5A CN114760045A (zh) 2020-12-26 2020-12-26 一种身份鉴别方法和装置
PCT/CN2021/139997 WO2022135377A1 (zh) 2020-12-26 2021-12-21 身份鉴别方法、装置、设备、芯片、存储介质及程序
EP21909373.9A EP4270856A4 (en) 2020-12-26 2021-12-21 IDENTITY AUTHENTICATION METHOD AND APPARATUS, DEVICE, CHIP, RECORDING MEDIUM AND PROGRAM
US18/259,292 US20240064024A1 (en) 2020-12-26 2021-12-21 Identity authentication method and apparatus, and device, chip, storage medium and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011569233.5A CN114760045A (zh) 2020-12-26 2020-12-26 一种身份鉴别方法和装置

Publications (1)

Publication Number Publication Date
CN114760045A true CN114760045A (zh) 2022-07-15

Family

ID=82158807

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011569233.5A Pending CN114760045A (zh) 2020-12-26 2020-12-26 一种身份鉴别方法和装置

Country Status (4)

Country Link
US (1) US20240064024A1 (zh)
EP (1) EP4270856A4 (zh)
CN (1) CN114760045A (zh)
WO (1) WO2022135377A1 (zh)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100389555C (zh) * 2005-02-21 2008-05-21 西安西电捷通无线网络通信有限公司 一种适合有线和无线网络的接入认证方法
CN101631113B (zh) * 2009-08-19 2011-04-06 西安西电捷通无线网络通信股份有限公司 一种有线局域网的安全访问控制方法及其系统
WO2012048554A1 (zh) * 2010-10-13 2012-04-19 天维讯达无线电设备检测(北京)有限责任公司 一种访问控制方法及系统
WO2012048552A1 (zh) * 2010-10-13 2012-04-19 西安西电捷通无线网络通信股份有限公司 网络访问控制方法及系统
CN102014386B (zh) * 2010-10-15 2012-05-09 西安西电捷通无线网络通信股份有限公司 一种基于对称密码算法的实体鉴别方法及系统
US10187376B2 (en) * 2015-08-28 2019-01-22 Texas Instruments Incorporated Authentication of networked devices having low computational capacity

Also Published As

Publication number Publication date
EP4270856A1 (en) 2023-11-01
EP4270856A4 (en) 2024-05-22
WO2022135377A1 (zh) 2022-06-30
US20240064024A1 (en) 2024-02-22

Similar Documents

Publication Publication Date Title
CN107579826A (zh) 一种网络认证方法、中转节点及相关系统
EP4270858A1 (en) Identity authentication method and apparatus, device, chip, storage medium, and program
WO2022135391A1 (zh) 身份鉴别方法、装置、存储介质、程序、及程序产品
WO2018076798A1 (zh) 一种传输数据的方法和装置
WO2022135379A1 (zh) 一种身份鉴别方法和装置
WO2022135394A1 (zh) 身份鉴别方法、装置、存储介质、程序、及程序产品
WO2022135383A1 (zh) 一种身份鉴别方法和装置
JP2024500526A (ja) アイデンティティ認証方法、認証アクセスコントローラ及び要求機器、記憶媒体、プログラム、並びにプログラム製品
CN114760034A (zh) 一种身份鉴别方法和装置
CN114760045A (zh) 一种身份鉴别方法和装置
CN114760039A (zh) 一种身份鉴别方法和装置
WO2022135418A1 (zh) 一种身份鉴别方法和装置
WO2022135385A1 (zh) 一种身份鉴别方法和装置
RU2807058C1 (ru) Способ и аппарат для аутентификации идентификационной информации, устройство, микросхема, носитель для хранения информации и программа
WO2022135387A1 (zh) 一种身份鉴别方法和装置
WO2022135384A1 (zh) 一种身份鉴别方法和装置
WO2022135404A1 (zh) 身份鉴别方法、装置、存储介质、程序、及程序产品
WO2022135386A1 (zh) 一种身份鉴别方法和装置
WO2022135393A1 (zh) 身份鉴别方法、鉴别接入控制器、请求设备、鉴别服务器、存储介质、程序、及程序产品
CN114760031A (zh) 一种身份鉴别方法和装置
CN114760033A (zh) 一种身份鉴别方法和装置
CN114760030A (zh) 一种身份鉴别方法和装置
CN116015906A (zh) 用于隐私计算的节点授权方法、节点通信方法和装置
CN114760037A (zh) 一种身份鉴别方法和装置
KR20140111837A (ko) 컨텐츠 제공을 위한 서버 및 이의 동작 방법과 이에 관한 단말

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