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

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

Info

Publication number
WO2022135376A1
WO2022135376A1 PCT/CN2021/139990 CN2021139990W WO2022135376A1 WO 2022135376 A1 WO2022135376 A1 WO 2022135376A1 CN 2021139990 W CN2021139990 W CN 2021139990W WO 2022135376 A1 WO2022135376 A1 WO 2022135376A1
Authority
WO
WIPO (PCT)
Prior art keywords
authentication
requesting device
message
access controller
authentication server
Prior art date
Application number
PCT/CN2021/139990
Other languages
English (en)
French (fr)
Inventor
赖晓龙
曹军
铁满霞
赵晓荣
李琴
张变玲
张国强
黄振海
Original Assignee
西安西电捷通无线网络通信股份有限公司
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 西安西电捷通无线网络通信股份有限公司 filed Critical 西安西电捷通无线网络通信股份有限公司
Publication of WO2022135376A1 publication Critical patent/WO2022135376A1/zh

Links

Images

Classifications

    • 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
    • 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/0407Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
    • H04L63/0414Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden during transmission, i.e. party's identity is protected against eavesdropping, e.g. by using temporary identifiers, but is known to the other party or parties involved in the communication
    • 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
    • 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
    • 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
    • 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

Definitions

  • the present application relates to the technical field of network communication security, and in particular, to an identity authentication method and device.
  • communication networks usually require two-way identity authentication between users and network access points to ensure that legitimate users can communicate with legitimate networks.
  • the access point performs malicious billing, causing abnormal billing to users.
  • the present application provides an identity authentication method and device, which can realize the bidirectional identity authentication between the requesting device and the authentication access controller, protect the user's private information, and provide the follow-up charging, access traceability or avoid malicious intent. Provide basis for billing, etc.
  • an identity authentication method including:
  • the requesting device sends an authentication request message to the authentication access controller, where the authentication request message includes the temporary identity of the requesting device;
  • the authentication access controller sends a first authentication request message to the second authentication server it trusts, and the first authentication request message includes the temporary identity of the requesting device and the public authentication access controller. key, and receive the first authentication response message sent by the second authentication server, where the first authentication response message includes the authentication result of the authentication access controller and the authentication result of the first authentication server trusted by the requesting device. the first digital signature, the authentication result of the requesting device, the random number generated by the first authentication server and the second digital signature of the second authentication server;
  • the authentication access controller verifies the second digital signature of the second authentication server, and after the verification is passed, sends a first verification message to the requesting device, where the first verification message includes the authentication access controller
  • the requesting device verifies the first digital signature of the first authentication server and verifies the authentication access controller according to the authentication access controller's public key carried in the authentication result of the authentication access controller After the verification is passed, obtain the identity validity authentication result of the authentication access controller according to the authentication result of the authentication access controller, after determining that the identity of the authentication access controller is legal , send a second verification message to the authentication access controller, where the second verification message includes the digital signature of the requesting device; wherein the digital signature of the requesting device is a The information including the random number is generated by signature calculation;
  • the authentication access controller verifies the digital signature of the requesting device by using the public key of the requesting device carried in the authentication result of the requesting device, and obtains the request according to the authentication result of the requesting device
  • the identity validity authentication result of the device is verified, and after the identity of the requesting device is determined to be legal, a new temporary identity of the requesting device is generated, and then an authentication completion message and a first certificate deposit message are generated; wherein, the authentication is completed
  • the message includes the new temporary identity of the requesting device;
  • the first certificate message includes the new temporary identity of the requesting device and the digital signature of the requesting device;
  • the requesting device replaces the temporary identity of the requesting device with the new temporary identity of the requesting device in the authentication complete message;
  • the first authentication server verifies the digital signature of the requesting device in the first certificate deposit message by using the public key of the requesting device, and after the verification is passed, generates and saves the request passing record of the requesting device, The temporary identity of the requesting device is replaced with the new temporary identity of the requesting device in the first certificate message.
  • a second aspect of the present application provides a requesting device, including:
  • a sending module configured to send an authentication request message to the authentication access controller, where the authentication request message includes the temporary identity of the requesting device;
  • a receiving module configured to receive a first verification message sent by the authentication access controller, where the first verification message includes the authentication result of the authentication access controller, the first digital signature of the first authentication server, The certificate random number generated by the first authentication server and the first digital signature of the authentication access controller;
  • a verification module configured to verify the first digital signature of the first authentication server and verify the authentication access controller according to the public key of the authentication access controller carried in the authentication result of the authentication access controller The first digital signature of the device is verified, and after the verification is passed, the identity validity authentication result of the authentication access controller is obtained according to the authentication result of the authentication access controller;
  • the sending module is further configured to, after determining that the identity of the authentication access controller is legal, send a second verification message to the authentication access controller, where the second verification message includes the digital signature of the requesting device ;
  • the digital signature of the requesting device is generated by performing signature calculation on the information including the random number of the certificate of the first authentication server;
  • the receiving module is further configured to receive an authentication complete message sent by the authentication access controller, where the authentication complete message includes a new temporary identity of the requesting device, and the new temporary identity is the authentication access controller. Generated after the ingress controller verifies the digital signature of the requesting device according to the public key of the requesting device carried in the authentication result of the requesting device;
  • An update module configured to replace the temporary identity of the requesting device with the new temporary identity of the requesting device in the authentication completion message.
  • a third aspect of the present application provides an authentication access controller, including:
  • a receiving module configured to receive an authentication request message sent by a requesting device, where the authentication request message includes a temporary identity of the requesting device;
  • a sending module configured to send a first authentication request message to a second authentication server trusted by the authentication access controller, where the first authentication request message includes the temporary identity of the requesting device and the authentication access The public key of the controller;
  • the receiving module is further configured to receive a first authentication response message sent by the second authentication server, where the first authentication response message includes the authentication result of the authentication access controller, the request device trust The first digital signature of the first authentication server, the authentication result of the requesting device, the certificate random number generated by the first authentication server and the second digital signature of the second authentication server;
  • a verification module for verifying the second digital signature of the second authentication server
  • the sending module is further configured to send a first verification message to the requesting device after the second digital signature of the second authentication server passes the verification, where the first verification message includes the authentication access controller
  • the receiving module is further configured to receive a second verification message sent by the requesting device, where the second verification message includes a digital signature of the requesting device;
  • the information including the random number of the server's certificate is generated by signature calculation;
  • the verification module is further configured to verify the digital signature of the requesting device by using the public key of the requesting device carried in the authentication result of the requesting device;
  • the generating module is configured to obtain the identity legality authentication result of the requesting device according to the authentication result of the requesting device, and generate the said requesting device after the verification of the digital signature of the requesting device is passed and the identity of the requesting device is determined to be legal.
  • requesting the new temporary identity of the device and regenerates an authentication complete message and a first certificate deposit message; wherein the authentication complete message includes the new temporary identity of the requesting device; the first certificate deposit message includes the the new temporary identity of the requesting device and the digital signature of the requesting device;
  • the sending module is further configured to send the first certificate deposit message to the first authentication server trusted by the requesting device through the second authentication server, and send the authentication completion message to the requesting device.
  • a fourth aspect of the present application provides a second authentication server, including:
  • a receiving module configured to receive a first authentication request message sent by the authentication access controller, where the first authentication request message includes the temporary identity of the requesting device and the public key of the authentication access controller;
  • a sending module configured to send a first authentication response message to the authentication access controller, where the first authentication response message includes an authentication result of the authentication access controller, a first authentication result trusted by the requesting device The first digital signature of the authentication server, the authentication result of the requesting device, the random number generated by the first authentication server and the second digital signature of the second authentication server;
  • the receiving module is further configured to receive a first certificate deposit message generated by the authentication access controller, where the first certificate deposit message includes the new temporary identity of the requesting device and the digital signature of the requesting device ;
  • the digital signature of the requesting device is generated by the requesting device performing signature calculation on the information including the random number of the first authentication server.
  • a fifth aspect of the present application provides a first authentication server, including:
  • a verification module configured to use the public key of the requesting device to verify the digital signature of the requesting device in the first certificate deposit message, where the first certificate deposit message includes the new temporary identity of the requesting device and the The digital signature of the requesting device; the digital signature of the requesting device is generated by the requesting device performing signature calculation on the information including the random number of the first authentication server;
  • the replacement module is used to generate and save the request passing record of the requesting device after the verification of the digital signature of the requesting device is passed, and use the new temporary identity of the requesting device in the first certificate deposit message to replace the The temporary identity of the requesting device.
  • a sixth aspect of the present application provides a requesting device, including:
  • the processor is configured to call the program instructions stored in the memory, and execute the method on the requesting device side in the first aspect according to the obtained program.
  • a seventh aspect of the present application provides an authentication access controller, including:
  • the processor is configured to call the program instructions stored in the memory, and execute the method for identifying the access controller side in the first aspect according to the obtained program.
  • An eighth aspect of the present application provides a second authentication server, including:
  • the processor is configured to call the program instructions stored in the memory, and execute the method on the second authentication server side in the first aspect according to the obtained program.
  • a ninth aspect of the present application provides a first authentication server, including:
  • the processor is configured to call the program instructions stored in the memory, and execute the method on the first authentication server side in the first aspect according to the obtained program.
  • a tenth aspect of the present application provides a computer storage medium, where the computer storage medium stores computer-executable instructions, where the computer-executable instructions are used to cause the computer to execute the method described in the first aspect.
  • the requesting device uses the temporary identity identifier as its identity credential
  • the authentication access controller uses the public key as its identity credential. Then the authentication access controller sends a first authentication request message to the second authentication server it trusts, and the first authentication request message includes the temporary identity of the requesting device and the authentication access controller.
  • the second authentication server can check the validity of the public key of the authentication access controller to generate the authentication result of the authentication access controller, and generate the second digital signature of the second authentication server, requesting the device to trust
  • the first authentication server can find the public key of the requesting device according to the temporary identity of the requesting device and check its legality, thereby generating the authentication result of the requesting device, and generating the first digital signature of the first authentication server, in addition, the first authentication The server also generates a certificate storage random number, which is used to provide evidence for subsequent charging.
  • the random number and the second digital signature of the second authentication server generate a first authentication response message and return the first authentication response message to the authentication access controller; the authentication access controller verifies the second digital signature of the second authentication server, If the verification is passed, send a first verification message to the requesting device, where the first verification message includes the authentication result of the authentication access controller, the first digital signature of the first authentication server, and the certificate-storing random number generated by the first authentication server. and the first digital signature of the authentication access controller; after the first digital signature of the first authentication server and the first digital signature of the authentication access controller are verified, the requesting device is authenticated according to the authentication of the access controller. As a result, the validity of the identity of the authentication access controller is determined.
  • the requesting device determines that the identity of the authentication access controller is legitimate, it also sends a second verification message including the digital signature of the requesting device to the authentication access controller.
  • Information including random numbers is generated by signature calculation; the authentication access controller verifies the digital signature of the requesting device according to the public key of the requesting device carried in the authentication result of the requesting device, and determines the digital signature of the requesting device according to the authentication result of the requesting device.
  • the identity of the requesting device is legal, and after the verification is passed and the identity of the requesting device is determined to be legal, a new temporary identity is allocated to the requesting device, and then the authentication complete message and the first certificate message are generated, and the authentication complete message is sent to the requester.
  • the device sends the first authentication message to the first authentication server; correspondingly, the requesting device updates the temporary identity of the requesting device using the new temporary identity in the authentication complete message, and the first authentication server verifies the information in the first authentication message.
  • the digital signature of the requesting device, and after the verification is passed, the request passing record of the requesting device is generated and saved, which proves that the requesting device has requested to access the network at a specific time, and provides evidence for subsequent charging to avoid malicious charging.
  • the two-way identity authentication between the requesting device and the authentication access controller is realized; and the entity adopts the temporary identity identifier as the identity credential, and its real identity will not be leaked, thus ensuring user privacy.
  • FIG. 1 is a schematic diagram of an identity authentication method provided by an embodiment of the present application.
  • FIG. 2 is a schematic diagram of a method for requesting a device REQ and an authentication access controller AAC to negotiate a message integrity check key according to an embodiment of the present application;
  • FIG. 3 is a schematic diagram of an identity authentication method provided by an embodiment of the present application, wherein "*" represents an optional field or an optional operation;
  • FIG. 4 is a schematic diagram of an identity authentication method provided by an embodiment of the present application, wherein "*" represents an optional field or an optional operation;
  • FIG. 5 is a structural block diagram of a requesting device REQ provided by an embodiment of the present application.
  • FIG. 6 is a structural block diagram of an authentication access controller AAC according to an embodiment of the present application.
  • FIG. 7 is a structural block diagram of a second authentication server AS-AAC according to an embodiment of the present application.
  • FIG. 8 is a structural block diagram of a first authentication server AS-REQ provided by an embodiment of the present application.
  • FIG. 9 is a structural block diagram of another requesting device REQ provided by an embodiment of the present application.
  • FIG. 10 is a structural block diagram of another authentication access controller AAC provided by an embodiment of the present application.
  • FIG. 11 is a structural block diagram of another second authentication server AS-AAC provided by an embodiment of the present application.
  • FIG. 12 is a structural block diagram of another first authentication server AS-REQ provided by an embodiment of the present application.
  • the requesting device can access the network through the authentication access controller.
  • the authentication between the access controller and the requesting device is usually required.
  • Conduct two-way identity authentication (Mutual Identity Authentication, MIA for short).
  • the requesting device can be a terminal such as a mobile phone, a personal digital assistant (PDA), a tablet computer, etc.
  • the authentication access controller can be a network side device such as a wireless access point and a wireless router.
  • the requesting device may be a terminal device such as a desktop computer or a notebook computer, and the authentication access controller may be a network-side device such as a switch or a router.
  • the requesting device may be a terminal device such as a mobile phone and a tablet computer.
  • the authentication access controller may be a network side device such as a base station.
  • the present application is also applicable to various data communication scenarios such as other wired networks and short-range communication networks.
  • an embodiment of the present application provides an identity authentication method, in which the authentication access controller assigns a temporary identity identifier to the requesting device as its identity credential, and the authentication access controller itself uses the public key as the identity credential , when the requesting device accesses the network, it sends an authentication request message to the authentication access controller, and the authentication access controller sends a first authentication request message to the second authentication server it trusts, and the first authentication request message includes the requesting device
  • the first authentication server trusted by the requesting device generates the authentication result of the requesting device according to the temporary identity of the requesting device, and the second authentication server trusted by the access controller authenticates the The public key of the access controller is verified to generate an authentication result that authenticates the access controller, and then the second authentication server sends to the authentication access controller the first authentication result carrying the requesting device and the authentication access controller
  • An authentication response message the requesting device and the authentication access controller respectively obtain the authentication result of the other party to realize the two-way identity authentication. Since the requesting device uses a temporary identity identifier to realize identity authentication, it avoids the transmission of real identity information and ensures the security of its real identity information. In addition, after determining that the identity of the authentication access controller is legal, the requesting device also sends a second verification message to the authentication access controller, so that the authentication access controller assigns a new temporary identity to the requesting device, and sends a message to the first authentication server.
  • the certificate deposit message stores the certificate for the requesting device to access the network, provides evidence for subsequent charging, and avoids malicious billing.
  • a requesting device REQuester, REQ for short
  • an Authentication Access Controller AAC for short
  • an Authentication Server AS for short
  • the AS trusted by AAC is called the second authentication server AS-AAC, and the AS trusted by REQ is called the first authentication server AS-REQ.
  • AS-AAC and AS-REQ each hold digital certificates and private keys corresponding to digital certificates that comply with ISO/IEC 9594-8/ITU X.509, other standards or other technical systems.
  • the AS-REQ knows the ID or TID of the REQ and the public key PUB REQ of the corresponding REQ .
  • CS-DEC holds encryption certificates that comply with ISO/IEC9594-8/ITU X.509, other standards or other technical systems.
  • the private key corresponding to the encryption certificate; CS-DEC can be an independent server or reside in AS-REQ.
  • AS-AAC and AS-REQ can be the same AS or different ASs.
  • AS-AAC is the same as AS-REQ, it is a non-roaming situation; when AS-AAC is different from AS-REQ, it is a roaming situation.
  • AS-AAC and AS-REQ know each other's signature certificate or the public key in the signature certificate.
  • REQ and AAC are endpoints participating in the authentication process.
  • REQ establishes a connection with AAC, accesses services provided by AAC, and accesses AS through AAC;
  • AAC establishes a connection with REQ, provides services, communicates with REQ, and can directly access AS-AAC .
  • Both REQ and AAC have an ID that identifies an identity, and REQ also has a temporary identity, TID.
  • REQ and AAC respectively hold a pair of public and private keys (wherein, the public key of REQ and the public key of AAC are respectively denoted as PUB REQ and PUB AAC ), REQ and AAC know the digital certificate of the authentication server they trust or their corresponding digital certificate public key, and REQ knows the AS-REQ signature certificate or the public key in the AS-REQ signature certificate. In some application scenarios, the REQ also knows the CS-DEC encryption certificate or the public key in the CS-DEC encryption certificate. AS-AAC can verify the identity legality of AAC according to PUB AAC , AS-REQ can search the corresponding PUB REQ according to the ID or TID of REQ, and verify the identity legality of REQ according to PUB REQ .
  • the REQ sends an authentication request message ATTACH to the AAC.
  • the ATTACH includes the temporary identity identifier TID REQ of REQ .
  • the TID REQ is allocated by the AAC for the REQ.
  • the TID REQ is unique, that is, when multiple REQs request to access the network, the AAC allocates different TID REQs to each REQ to distinguish the REQs.
  • TID REQ has a validity period, which can realize the management of life cycle.
  • the AAC sends a first authentication request message AACVeri to the AS-AAC it trusts.
  • the AACVeri includes AAC's public key PUB AAC and the TID REQ .
  • the AAC receives the first authentication response message ASVeri sent by the AS-AAC.
  • the ASVeri includes the authentication result Res AAC of AAC, the first digital signature Sig AS_REQ1 of the AS-REQ trusted by REQ, the authentication result Res REQ of REQ, the random number Nonce AS_REQ generated by AS-REQ and the random number Nonce AS_REQ of AS-AAC.
  • the second digital signature Sig AS_AAC2 includes the authentication result Res AAC of AAC, the first digital signature Sig AS_REQ1 of the AS-REQ trusted by REQ, the authentication result Res REQ of REQ, the random number Nonce AS_REQ generated by AS-REQ and the random number Nonce AS_REQ of AS-AAC.
  • AS-AAC and AS-REQ are the same authentication server
  • AS-AAC the authentication server mutually trusted by REQ and AAC
  • AS-REQ can also be used.
  • TID REQ and the PUB AAC are authenticated by AS-AAC (also denoted AS-REQ).
  • AS-AAC judges whether TID REQ is valid, if it is valid, then look up the public key PUB REQ of the REQ corresponding to TID REQ , and check the validity of PUB REQ , according to including PUB REQ
  • the information including the inspection result and its inspection result will generate Res REQ , and generate the random number Nonce AS_AAC (which can also be expressed as Nonce AS_REQ ), so as to provide evidence for charging, and to check the legitimacy of PUB AAC , according to including PUB AAC and
  • the information including the inspection result generates Res AAC , and performs signature calculation on the information including Res AAC to generate the Sig AS_REQ1 representation, and performs signature calculation on the information including Res REQ and Nonce AS_REQ to generate the Sig AS_AAC2
  • ASVeri is generated from information including Res AAC , Sig AS_REQ1 , Res REQ , Nonce AS_REQ and Sig AS_AAC2
  • AS-AAC verifies the PUB AAC , specifically checking the legitimacy of PUB AAC , according to including PUB AAC and its inspection
  • the information including the result generates Res AAC , and then generates the second authentication request message AS-AACVeri according to the information including Res AAC and TID REQ in AACVeri, and sends AS-AACVeri to AS-REQ.
  • AS-REQ searches for the corresponding PUB REQ according to the TID REQ , checks the validity of the PUB REQ , generates Res REQ according to the information including the PUB REQ and its inspection result, and generates the random number Nonce AS_REQ to provide for billing evidence.
  • AS-REQ performs signature calculation on information including Res AAC to generate the Sig AS_REQ1 , and performs signature calculation on information including Res REQ and Nonce AS_REQ to generate the second digital signature of AS-REQ Sig AS_REQ2 , according to Res Information including AAC , Sig AS_REQ1 , Res REQ , Nonce AS_REQ and Sig AS_REQ2 generates a second authentication response message AS-REQVeri, and sends AS-REQVeri to AS-AAC.
  • AS-AAC verifies the Sig AS_REQ2 , after the verification passes, performs signature calculation on the information including Res REQ and Nonce AS_REQ to generate the Sig AS_AAC2 , according to the information including Res AAC , Sig AS_REQ1 , Res REQ , Nonce AS_REQ and Sig AS_AAC2 The information inside generates ASVeri.
  • AS-REQ can also determine whether the TID REQ meets the timeliness before generating the Nonce AS-REQ .
  • AS_REQ can also determine whether the TID REQ meets the timeliness before generating the Nonce AS-REQ .
  • AS_REQ can also determine whether the TID REQ meets the timeliness before generating the Nonce AS-REQ .
  • illegal elements can be prevented from using the invalid TID REQ to pretend to be the current user to initiate a request to access the network.
  • AAC knows the public key of AS-AAC, and it uses the public key of AS-AAC to verify Sig AS_AAC2 . If the verification passes, it means that the Res REQ and Nonce AS_REQ in ASVeri have not been tampered with, and you can continue to perform subsequent operations .
  • AAC sends a first verification message AACAuth to REQ.
  • the AACAuth includes the Res AAC , the Sig AS_REQ1 , the Nonce AS_REQ and the first digital signature Sig AAC1 of the AAC.
  • REQ verifies the Sig AS_REQ1 and verifies the Sig AAC1 according to the PUB AAC carried in the Res AAC , and after the verification is passed, obtains the identity legality authentication result of the AAC according to the Res AAC .
  • REQ knows the public key of AS-REQ, and it uses the public key of AS-REQ to verify the Sig AS_REQ1 ; and, REQ verifies Sig AAC1 according to the PUB AAC carried in the Res AAC , if the Sig AAC1 and all If the Sig AS_REQ1 verification is passed, the REQ can determine the legitimacy of the AAC identity according to the Res AAC , and realize the identity authentication of the AAC. If at least one verification fails, stop executing the next steps. If it is determined that the AAC identity is legal, perform S107.
  • REQ sends a second verification message REQAuth to the AAC.
  • the REQAuth includes the digital signature Sig REQ of REQ .
  • Sig REQ is generated by REQ performing signature calculation on information including the Nonce AS_REQ .
  • REQAuth may further include the first message integrity check code MacTag REQ generated by REQ , and before executing S108, AAC also needs to verify MacTag REQ , and then perform subsequent operations after the verification is passed.
  • the MacTag REQ is calculated and generated by the REQ using the message integrity check key pair between it and the AAC, including other fields in REQAuth except the MacTag REQ .
  • AAC verifies the MacTag REQ , it should use the message integrity check key pair between it and the REQ, including other fields in REQAuth except MacTag REQ , to calculate and generate MacTag REQ , and compare the calculated MacTag REQ with that in REQAuth. MacTag REQ is compared. If they are consistent, the verification is passed. If they are inconsistent, the verification is not passed.
  • AAC verifies the Sig REQ according to the public key PUB REQ of the REQ carried in the Res REQ and obtains the identity validity authentication result of the REQ according to the Res REQ, and generates a new REQ after the verification is passed and the identity of the REQ is confirmed to be legal.
  • the temporary identity identifier TID REQnew is used to generate the authentication completion message AACFinish and the first certification message AACUpdate.
  • the AAC sends an authentication completion message AACFinish to the REQ.
  • the AACFinish includes the TID REQnew .
  • the AACFinish of S109 may further include the second message integrity check code MacTag AAC generated by the AAC .
  • MacTag AAC is calculated and generated by AAC using the message integrity check key pair between it and REQ, including other fields in AACFinish except MacTag AAC .
  • REQ also needs to verify the MacTag AAC , and then perform subsequent operations after the verification is passed.
  • REQ verifies the MacTag AAC , it shall use the message integrity check key pair between it and the AAC, including other fields in AACFinish except the MacTag AAC , to calculate and generate the MacTag AAC , and compare the calculated MacTag AAC with the MacTag in AACFinish.
  • the AACs are compared, and if they are consistent, the verification passes, and if they are inconsistent, the verification fails.
  • the MacTag AAC verification If the MacTag AAC verification is passed, it indicates that the interaction between REQ and AAC is complete, and AACFinish is credible. REQ can replace TID REQ with TID REQnew in AACFinish to update the temporary identity. If the MacTag AAC verification fails, it indicates that the interaction between REQ and AAC is incomplete, and AACFinish cannot be trusted. REQ immediately discards AACFinish.
  • the AAC sends a first certificate deposit message AACUpdate to the AS-AAC.
  • the AACUpdate includes the TID REQnew and the Sig REQ .
  • the AACUpdate further includes the second digital signature Sig AAC2 of the AAC, and the Sig AAC2 is generated by the AAC performing signature calculation on other information before the Sig AAC2 in the AACUpdate.
  • AS-AAC can verify whether AACUpdate has been tampered with during transmission by verifying the Sig AAC2 .
  • AS-REQ uses PUB REQ to verify the Sig REQ in the AACUpdate, after the verification is passed, generates and saves a REQ request passing record, and replaces the TID REQ with the TID REQnew in the AACUpdate.
  • AS-AAC When AS-AAC and AS-REQ are the same authentication server, AAC directly sends AACUpdate to AS-AAC (also expressed as AS-REQ), and AS-AAC (also expressed as AS-REQ) uses PUB REQ to update AACUpdate
  • AS-AAC can also be expressed as AS-REQ
  • AS-AAC generates a REQ request pass record and records the request. Provide evidence for subsequent charges by keeping records locally or remotely.
  • AS-AAC also can be expressed as AS-REQ
  • AS-AAC also replaces TID REQ with TID REQnew in AACUpdate to realize the update of TID REQ .
  • AAC sends AACUpdate to AS-AAC, and AS-AAC calculates the information including the TID REQnew and the Sig REQ to generate the third digital signature of AS-AAC Sig AS_AAC3 , and then generate a second certification message ASUpdate according to the information including TID REQnew , Sig REQ and Sig AS_AAC3 , AS-AAC sends ASUpdate to AS-REQ, and AS-REQ verifies the Sig according to the public key of AS-AAC AS_AAC3 , if the verification is passed, then perform subsequent related steps, including verifying the Sig REQ , and after the verification is passed, generate and save the REQ request passing record, and perform the steps of replacing TID REQ with TID REQnew .
  • the execution order of S109 and S111 is not limited, and S109 may be executed first and then S111 may be executed, or S111 may be executed first and then S109 may be executed, or S109 and S111 may be executed simultaneously.
  • the AAC may first execute S111 to send the first certificate deposit message AACUpdate, and after passing the Sig REQ verification in the AACUpdate in S112, a first certificate deposit confirmation message is generated, and the AAC receives the first deposit confirmation message. After verifying the confirmation message, execute S109 to send the authentication completion message AACFinish to the REQ.
  • the identity authentication method provided by this application adopts TID REQ as the identity credential of REQ and PUB AAC as the identity credential of AAC.
  • REQ accesses the network, it sends an authentication request message to AS-AAC to request bidirectional Identity authentication, AS-AAC verifies the legality of PUB AAC to generate Res AAC , AS-REQ verifies TID REQ to generate Res REQ , then AS-AAC returns ASVeri to AAC, and AAC obtains Res REQ from AVSeri to determine the identity legitimacy of REQ , after confirming that the REQ's identity is legal, AAC sends AACAuth with Res AAC to REQ, and REQ determines the legality of AAC's identity according to Res AAC , which not only realizes the two-way identity authentication between REQ and AAC, but also protects the entity's privacy information.
  • the Res REQ in the ASVeri of S103 may indicate that the identity validity authentication result of REQ is legal, illegal, or empty (that is, the value of Res REQ is Null), so the AACAuth of S105 also includes AAC generation Flag AAC is used to indicate whether REQ needs to send its real identity ID REQ .
  • the Res REQ in the ASVeri indicates that the identity legality authentication result of the REQ is empty (that is, the value of the Res REQ is Null)
  • the Flag AAC flag can be 1, indicating that the REQ needs to send its real ID REQ in order to re-enable the REQ.
  • the Flag AAC identifier can be 0, indicating that the REQ does not need to send its real ID REQ .
  • REQ can use the public key of the encryption certificate to encrypt the information including ID REQ to generate REQ's identity ciphertext EncPub AS , then REQ to AAC You can also carry EncPub AS when sending REQAuth.
  • the AAC also sends a third authentication request message AACReVeri to the AS-AAC, where the AACReVeri includes the EncPub AS .
  • AS-AAC can also be expressed as AS-REQ
  • AS-AAC can decrypt EncPub AS with the private key of the encrypted certificate to obtain ID REQ , find PUB REQ according to ID REQ , and check PUB REQ
  • the validity of the Res REQ is generated, and the third authentication response message ASReVeri is generated according to the Res REQ .
  • the AAC receives the ASReVeri, and re-determines the identity validity of the REQ according to the Res REQ in the ASReVeri.
  • AS-AAC and AS-REQ are different authentication servers, after receiving the AACReVeri, AS-AAC also sends a fourth authentication request message AS-AACReVeri including the EncPub AS to AS-REQ, then AS-AAC- REQ can use the private key of the encrypted certificate to decrypt the EncPub AS to obtain the ID REQ , look up the PUB REQ according to the ID REQ , check the validity of the PUB REQ to generate the Res REQ , and generate the fourth authentication response message AS-REQReveri according to the Res REQ .
  • the AS-AAC After receiving the AS-REQReVeri, the AS-AAC generates a third authentication response message ASReVeri according to the Res REQ in the AS-REQReVeri; the AAC receives the ASReVeri and re-determines the identity validity of the REQ according to the Res REQ in the ASReVeri.
  • the message integrity check key used by REQ and AAC may be pre-shared between REQ and AAC, or obtained through negotiation between them. Therefore, this embodiment also provides a negotiation between REQ and AAC.
  • the method of the message integrity check key see Fig. 2, the method includes:
  • the REQ sends an authentication request message ATTACH to the AAC.
  • the ATTACH also includes the first key exchange parameter KeyInfo REQ generated by REQ .
  • the KeyInfo REQ includes the temporary public key of the REQ, wherein the key exchange refers to a key exchange algorithm such as Diffie-Hellman (DH for short).
  • the ATTACH can also include Security capabilities REQ , Security capabilities REQ represents the security capability parameter information supported by REQ, including the identity authentication suite supported by REQ (the identity authentication suite contains one or more identity authentication methods), key exchange algorithm and/or key derivation algorithms, etc., for the AAC to select a specific security policy to use.
  • AAC performs key exchange calculation according to the temporary private key corresponding to the second key exchange parameter KeyInfo AAC generated by AAC and the temporary public key included in the KeyInfo REQ to generate a first key,
  • the calculation data included uses the key derivation algorithm to calculate the message integrity check key.
  • the AAC can perform key exchange calculation according to the temporary private key corresponding to the KeyInfo AAC and the temporary public key included in the KeyInfo REQ to generate the first key,
  • the first key is combined with calculation data including Nonce REQ and the second random number Nonce AAC generated by AAC, and a negotiated or preset key derivation algorithm is used to calculate a message integrity check key.
  • the calculation object used in the algorithm operation is referred to as calculation data.
  • the negotiated key derivation algorithm may be the key derivation algorithm selected and used by the AAC according to the Security capabilities REQ sent by the REQ.
  • KeyInfo AAC is the key exchange parameter generated by AAC, including the temporary public key of AAC.
  • the temporary private key corresponding to the KeyInfo AAC is a temporary private key generated by the AAC and corresponding to the temporary public key of the AAC, that is, the temporary public key and the temporary private key are a pair of temporary public and private keys.
  • the AACAuth also includes the KeyInfo AAC generated by the AAC .
  • the AACAuth may further include the second random number Nonce AAC generated by the AAC .
  • REQ performs key exchange calculation according to the temporary private key corresponding to the KeyInfo REQ and the temporary public key included in the KeyInfo AAC to generate the first key, and calculates the first key according to the calculation data including the first key
  • the message integrity check key is calculated by using the key derivation algorithm.
  • AACAuth includes Nonce AAC
  • REQ performs key exchange calculation according to the temporary private key corresponding to KeyInfo REQ and the temporary public key included in KeyInfo AAC to generate the first key, and combines the first key to include Nonce REQ Calculate the message integrity check key using the negotiated or preset key derivation algorithm with the calculation data including Nonce AAC .
  • the negotiated key derivation algorithm may be the key derivation algorithm selected by the REQ according to the Security capabilities AAC sent by the AAC.
  • the temporary private key corresponding to KeyInfo REQ is a temporary private key corresponding to the temporary public key of REQ generated by REQ, that is, the temporary public key and the temporary private key are a pair of temporary public and private keys.
  • REQ and AAC can also negotiate a session key for encrypting session content.
  • AACAuth may also include AAC's identity ID AAC , and AAC calculates a session key (including a data encryption key or/and data according to the first key in combination with calculation data including TID REQ and ID AAC ) Integrity check key);
  • REQ calculates a session key (including a data encryption key or/and data according to the first key in combination with the calculation data including the TID REQ and the ID AAC ) Integrity check key).
  • the first key when the AAC calculates the session key by using the above method, the first key can be combined with the calculation data including the TID REQ and the ID AAC to calculate a string of key data, and the key data can be used as The data encryption key and/or the data integrity check key, or a part of the key data in the key data is used as the data encryption key, and the other part of the key data is used as the data integrity check key.
  • a string of key data can be calculated by combining the first key with the calculation data including the TID REQ and the ID AAC , and the key data can be used as data encryption
  • the key and/or the data integrity check key, or a part of the key data in the key data is used as the data encryption key, and the other part of the key data is used as the data integrity check key.
  • information such as random numbers and identity identifiers generated by REQ and/or AAC may be transmitted in messages exchanged during the identity authentication process.
  • the random number and/or ID carried in the received message should be the same as the random number and/or ID carried in the sent message. Loss or tampering of parameter information. Therefore, in some embodiments of the present application, the reliability of the authentication result can also be ensured by comparing whether the random numbers and/or identity identifiers in the sent and received messages are consistent.
  • the AACVeri of S102 when the ATTACH of S101 further includes Nonce REQ , the AACVeri of S102 also includes Nonce REQ and Nonce AAC , correspondingly, the ASVeri of S103 also includes Nonce REQ and Nonce AAC , and the AACAuth of S105 also includes Nonce REQ and Nonce AAC Nonce REQ and Nonce AAC , S107's REQAuth also includes Nonce AAC .
  • AAC can also verify the consistency of Nonce AAC in ASVeri and Nonce AAC generated by AAC (that is, Nonce AAC sent by AAC through AACVeri); similarly, when REQ sends AAC to AAC Before REQAuth, REQ can also verify the consistency of Nonce REQ in AACAuth and the Nonce REQ generated by REQ (that is, the Nonce REQ sent by REQ through ATTACH); further, before AAC generates TID REQnew in S108, AAC can also The consistency of the Nonce AAC in REQAuth and the Nonce AAC generated by AAC is verified. If the verification is passed, the next steps are performed.
  • the AACVeri of S102 further includes the ID AAC of the AAC, and correspondingly, the ASVeri of S103 also includes the ID AAC , and the AAC also needs to verify the consistency of the ID AAC in the ASVeri and the ID AAC of the AAC itself .
  • AS-AAC can first send AS-AAC (also It can be expressed as AS-REQ) to send AACUpdate, and AS-AAC (also expressed as AS-REQ) verifies the digital signature Sig REQ of REQ in AACUpdate, and generates the first confirmation message AS-AACAck after the verification is passed.
  • AS-AACAck it indicates that the AS-AAC (which can also be expressed as AS-REQ) has generated and saved the REQ request pass record, and then the AAC sends AACFinish to the REQ.
  • AAC can first send AACUpdate to AS-AAC, AS-AAC generates a second certificate message AS-AACUpdate according to AACUpdate, and sends AS-AACUpdate to AS-REQ.
  • AS-REQ verifies the digital signature Sig REQ of the REQ in the AS-AACUpdate, and if the verification is passed, generates a second certificate confirmation message AS-REQAck, and sends AS-REQAck to AS-AAC; AS-AAC according to AS-REQAck generates the first deposit confirmation message AS-AACAck, and sends AS-AACAck to AAC.
  • AAC receives AS-AACAck, it means that AS-REQ has generated and saved the REQ request pass record, then AAC sends REQ Send AACFinish, if AAC does not receive AS-AACAck within the specified time, the authentication process ends.
  • the embodiment of the present application also provides a method for determining the first authentication server and/or the second authentication server used in this authentication process by using information exchange between AAC and REQ:
  • REQ actively adds the identity Route AS of at least one authentication server trusted by it to ATTACH, so that AAC can base on the Route AS in ATTACH and the identity ID of at least one authentication server trusted by AAC itself.
  • AS_AAC determine the second authentication server AS-AAC participating in identity authentication. For example, AAC can determine whether there is at least one identical authentication server identity in Route AS and ID AS_AAC . If so, it is a non-roaming situation.
  • AAC determines from the identity of the authentication server mutually trusted by at least one REQ and AAC.
  • the second authentication server AS-AAC participating in identity authentication if it does not exist, it is a roaming situation.
  • AAC needs to determine the second authentication server AS-AAC participating in identity authentication according to the ID AS_AAC , and send the Route AS to AS-AAC, so that AS-AAC determines the first authentication server AS-REQ according to the Route AS .
  • the identity authentication method provided by the embodiments of the present application will be introduced below in combination with application scenarios of non-roaming and roaming. Among them, the following two situations are mainly introduced: (1) the identity authentication method of REQ identity protection in the non-roaming situation; (2) the identity authentication method of the REQ identity protection in the roaming situation.
  • AS-AAC (or AS-REQ) can be used to represent the authentication server jointly trusted by REQ and AAC.
  • the negotiation process of the message integrity check key between REQ and AAC is integrated into the identity authentication process in parallel, which is more convenient for engineering implementation.
  • the identification method includes:
  • REQ generates KeyInfo REQ and Nonce REQ , and generates Security capabilities REQ as required.
  • the REQ sends an authentication request message ATTACH to the AAC.
  • the ATTACH includes Security capabilities REQ , KeyInfo REQ , TID REQ , Nonce REQ and Route AS .
  • Security capabilities REQ is an optional field, indicating the security capability parameter information supported by REQ, including the identity authentication suite, key exchange algorithm and/or key derivation algorithm supported by REQ (the same below);
  • KeyInfo REQ is generated by REQ
  • the first key exchange parameter includes the temporary public key generated by REQ; TID REQ represents the temporary identity of REQ, Nonce REQ is the first random number generated by REQ, and Route AS represents the identity of the authentication server trusted by REQ.
  • the AAC sends the first authentication request message AACVeri to the AS-AAC.
  • the AACVeri includes TID REQ , Nonce REQ , ID AAC , Nonce AAC and PUB AAC .
  • ID AAC is an optional field
  • TID REQ and Nonce REQ should be equal to the corresponding fields in ATTACH
  • Nonce AAC is the second random number generated by AAC
  • ID AAC is the identity of AAC
  • PUB AAC is the public key of AAC.
  • AS-AAC After receiving the AACVeri, AS-AAC performs the following operations, including:
  • Res REQ includes the inspection result and PUB REQ ;
  • Res REQ includes the inspection result, and can also include PUB REQ according to the application scenario;
  • the value of the Res REQ is Null or other specific values. In this application, the value is Null for example.
  • the AS-AAC sends the first authentication response message ASVeri to the AAC.
  • the ASVeri includes TID REQ , Nonce REQ , Res AAC , Sig AS_AAC1 , ID AAC , Nonce AAC , Res REQ , Nonce AS_AAC and Sig AS_AAC2 .
  • TID REQ , Nonce REQ , ID AAC , and Nonce AAC should be equal to the corresponding fields in AACVeri respectively;
  • the signature data of Sig AS_AAC1 includes TID REQ , Nonce REQ and Res AAC ;
  • the signature data of Sig AS_AAC2 includes Nonce AAC , Res REQ and Nonce AS_AAC .
  • ID AAC is an optional field. If ID AAC exists, the signature data of Sig AS_AAC2 also includes ID AAC .
  • Flag AAC is used to indicate whether REQ is required to provide real ID REQ ; if the value of Res REQ is Null, then Flag AAC is identified as 1 (the identification of 1 here is just an example), indicating that REQ is required to provide real ID REQ , so that Re-authenticate the identity of REQ; if the value of Res REQ is not Null, the Flag AAC identifier is 0 (the identifier 0 here is just an example), indicating that REQ does not need to provide the real ID REQ .
  • AAC sends a first verification message AACAuth to REQ.
  • the AACAuth includes Security capabilities AAC , KeyInfo AAC , TID REQ , Nonce REQ , Res AAC , Sig AS_AAC1 , ID AAC , Nonce AAC , Nonce AS_AAC , Flag AAC and Sig AAC1 .
  • Security capabilities AAC is an optional field, indicating the selection of a specific security policy made by AAC according to the Security capabilities REQ , that is, the identity authentication method, key exchange algorithm and/or key derivation algorithm determined by AAC (the same below);
  • KeyInfo AAC is the second key exchange parameter generated by AAC, including the temporary public key generated by AAC; TID REQ , Nonce REQ , Res AAC , Sig AS_AAC1 , Nonce AAC , and Nonce AS_AAC should be equal to the corresponding fields in ASVeri respectively;
  • the signature data includes other fields before Sig AAC1 in AACAuth.
  • REQ After receiving the AACAuth, REQ performs the following operations, including:
  • REQ sends a second verification message REQAuth to the AAC.
  • the REQAuth includes Nonce AAC , EncPub AS , Sig REQ and MacTag REQ .
  • Nonce AAC should be equal to the corresponding field in AACAuth
  • EncPub AS is the ciphertext of REQ's identity, which is generated by REQ using the public key of the encryption certificate to encrypt the information including ID REQ .
  • Sig REQ is generated by REQ performing signature calculation on information including Nonce AS_AAC ; EncPub AS is an optional field, if the Flag AAC identifier is 0, REQAuth may not carry EncPub AS ; the calculation process of MacTag REQ is: use the message integrity
  • the integrity verification key uses the integrity verification algorithm to calculate the information including other fields in REQAuth except MacTag REQ to generate MacTag REQ .
  • AAC After receiving REQAuth, AAC performs the following operations, including:
  • AAC uses the message integrity check key and uses the integrity check algorithm to calculate the MacTag REQ locally for the information including other fields except the MacTag REQ in REQAuth (this calculation method is the same as the way REQ calculates the MacTag REQ ), The calculated MacTag REQ is compared with the received MacTag REQ . If they are consistent, the verification passes, and if they are inconsistent, the verification fails.
  • the AAC sends a third authentication request message AACReVeri to the AS-AAC.
  • the AACReVeri includes EncPub AS , ID AAC and Nonce AAC .
  • EncPub AS should be equal to EncPub AS in REQAuth; ID AAC is an optional field.
  • the AS-AAC After receiving the AACReVeri, the AS-AAC performs the following operations, including:
  • the AS-AAC sends a third authentication response message ASReVeri to the AAC.
  • the ASReVeri includes ID AAC , Nonce AAC , Res REQ and Sig AS_AAC4 .
  • the ID AAC is an optional field, and the AS-AAC determines whether the ID AAC is carried in the ASReVeri according to whether the ID AAC is carried in the AACReVeri.
  • Sig AS_AAC4 is an optional field, and its signature data includes Nonce AAC and Res REQ . When ID AAC exists in ASReVeri, the signature data of Sig AS_AAC4 also includes ID AAC .
  • the AAC After receiving the ASReVeri, the AAC performs the following operations, including:
  • ID AAC exists in ASReVeri, check whether ID AAC is the same as ID AAC of AAC itself; check whether Nonce AAC in ASReVeri is the same as Nonce AAC generated by AAC ;
  • the Flag AAC identifier is 1, it means that the REQ needs to provide the real ID REQ .
  • the REQAuth sent by the REQ to the AAC in S310 carries the EncPub AS , and the AAC needs to send the AACReVeri containing the EncPub AS to the AS-AAC.
  • AS-AAC decrypts the EncPub AS to obtain the ID REQ , and then searches for the PUB REQ according to the ID REQ and checks the validity of the PUB REQ , thereby generating the Res REQ , that is, it is necessary to execute S312 to S315; if the Flag AAC identifier is 0, it means that no need The REQ provides the real ID REQ .
  • the REQAuth sent by the REQ to the AAC in S310 does not carry the EncPub AS , that is, the AAC does not need to perform S312 to S315, and directly executes S316 and subsequent steps after the checks and verifications in S311 are passed.
  • the AAC generates a TID REQnew after determining that the identity of the REQ is legal, and calculates the second digital signature Sig AAC2 of the AAC as required.
  • the AAC sends the first certificate deposit message AACUpdate to the AS-AAC.
  • the AACUpdate includes TID REQ , TID REQnew , ID AAC , Nonce AAC , Sig REQ and Sig AAC2 .
  • ID AAC and Sig AAC2 are optional fields; TID REQ should be equal to TID REQ in ATTACH; Sig REQ should be equal to Sig REQ in REQAuth; the signature data of Sig AAC2 includes other fields before Sig AAC2 in AACUpdate.
  • the AS-AAC After receiving the AACUpdate, the AS-AAC performs the following operations, including:
  • the AS-AAC sends the first certificate deposit confirmation message ASAck to the AAC.
  • the ASAck includes ID AAC , Nonce AAC and Sig AS_AAC5 .
  • ID AAC and Sig AS_AAC5 are optional fields, and the signature data of Sig AS_AAC5 includes other fields before Sig AS_AAC5 in ASAck.
  • the S320 and AAC After receiving the ASAck, the S320 and AAC perform the following operations, including:
  • AAC combines K calculated in S311 with Nonce AAC , Nonce REQ , ID AAC , TID REQnew and other information (other information used by AAC and REQ is the same and optional, such as a specific character string, etc.) and uses the key to derive
  • the algorithm calculates the session key (including the data encryption key or/and the data integrity check key), which is used for the subsequent confidential communication of REQ and AAC.
  • the AAC sends an authentication completion message AACFinish to the REQ.
  • the AACFinish includes TID REQnew and MacTag AAC .
  • TID REQnew should be equal to TID REQnew in AACUpdate.
  • the calculation process of MacTag AAC is: use the message integrity check key and the integrity check algorithm to calculate and generate information including other fields in AACFish except MacTag AAC . MacTag REQ .
  • REQ uses the message integrity check key to calculate the MacTag AAC locally (the calculation method is the same as the way AAC calculates the MacTag AAC ) for the information including other fields in AACFish except the MacTag AAC by using the integrity check algorithm.
  • the calculated MacTag AAC is compared with the received MacTag AAC , and if they are consistent, the verification is passed; otherwise, the verification fails.
  • REQ combines the K calculated in S309 with Nonce AAC , Nonce REQ , ID AAC , TID REQnew and other information (other information used by REQ and AAC is the same and optional, such as a specific character string, etc.) and uses the key to derive
  • the algorithm calculates the session key (including the data encryption key or/and the data integrity check key), which is used for the subsequent confidential communication of REQ and AAC.
  • REQ uses TID REQ as the identity certificate, which avoids the leakage of real identity information and ensures privacy security.
  • TID REQ the identity certificate
  • S316 to S318 the evidence of REQ's access to the network is realized, which provides a basis for subsequent charging, access tracing or avoiding malicious billing.
  • the identification method includes:
  • REQ generates KeyInfo REQ and Nonce REQ , and generates Security capabilities REQ as required.
  • the REQ sends an authentication request message ATTACH to the AAC.
  • the ATTACH includes Security capabilities REQ , KeyInfo REQ , TID REQ , Nonce REQ and Route AS .
  • Security capabilities REQ is an optional field
  • TID REQ represents the temporary identity of REQ
  • Nonce REQ is the first random number generated by REQ
  • Route AS represents the identity of the authentication server trusted by REQ.
  • the AAC After receiving the ATTACH, the AAC performs the following operations, including:
  • the AS-AAC can be determined from at least one authentication server it trusts, and the AS-REQ can be determined according to the Route AS .
  • the AAC sends a first authentication request message AACVeri to the AS-AAC.
  • the AACVeri includes TID REQ , Nonce REQ , ID AAC , Nonce AAC and PUB AAC .
  • ID AAC is an optional field
  • TID REQ and Nonce REQ should be equal to the corresponding fields in ATTACH
  • Nonce AAC is the second random number generated by AAC
  • ID AAC is the identity of AAC
  • PUB AAC is the public key of AAC.
  • AS-AAC After receiving the AACVeri, AS-AAC performs the following operations, including:
  • AS-AAC sends a second authentication request message AS-AACVeri to AS-REQ.
  • the AS-AACVeri includes TID REQ , Nonce REQ , Res AAC , ID AAC , Nonce AAC and Sig AS_AAC4 .
  • TID REQ , Nonce REQ , Nonce AAC should be equal to the corresponding fields in AACVeri respectively.
  • the signature data of Sig AS_AAC4 includes TID REQ , Nonce REQ , Res AAC , ID AAC and Nonce AAC .
  • Res REQ (Value) after the verification is passed, look up PUB REQ according to TID REQ and check the legitimacy of PUB REQ , and generate Res REQ according to the inspection result and PUB REQ ; wherein, the value situation of Res REQ can be divided into the following three types:
  • Res REQ includes the inspection result and PUB REQ ;
  • Res REQ includes the inspection result, and can also include PUB REQ according to the application scenario;
  • the value of the Res REQ is Null or other specific values. In this application, the value is Null for example.
  • the AS-REQ sends the second authentication response message AS-REQVeri to the AS-AAC.
  • the AS-REQVeri includes TID REQ , Nonce REQ , Res AAC , Sig AS_REQ1 , ID AAC , Nonce AAC , Res REQ , Nonce AS_REQ , and Sig AS_REQ2 .
  • TID REQ , Nonce REQ , Res AAC , ID AAC , and Nonce AAC should be equal to the corresponding fields in AS-AACVeri respectively;
  • the signature data of Sig AS_REQ1 includes TID REQ , Nonce REQ and Res AAC , and the signature data of Sig AS_REQ2 includes ID AAC , Nonce AAC , Res REQ and Nonce AS_REQ .
  • the AS-AAC sends a first authentication response message ASVeri to the AAC.
  • the ASVeri includes TID REQ , Nonce REQ , Res AAC , Sig AS_REQ1 , ID AAC , Nonce AAC , Res REQ , Nonce AS_REQ and Sig AS_AAC2 .
  • ID AAC is an optional field.
  • the signature data of Sig AS_AAC2 includes Nonce AAC , Res REQ and Nonce AS_REQ ;
  • ID AAC is an optional field, if ID AAC exists, the signature data of Sig AS_AAC2 also includes ID AAC .
  • Flag AAC is used to indicate whether REQ needs to provide real ID REQ . If the value of Res REQ is Null, the Flag AAC identifier is 1 (the identifier of 1 here is just an example), indicating that REQ needs to provide the real ID REQ in order to re-verify the identity of REQ; if the value of Res REQ is not Null , the Flag AAC identifier is 0 (the identifier 0 here is just an example), indicating that REQ does not need to provide a real ID REQ .
  • S412 AAC sends a first authentication message AACAuth to REQ.
  • the AACAuth includes Security capabilities AAC , KeyInfo AAC , TID REQ , Nonce REQ , Res AAC , Sig AS_REQ1 , ID AAC , Nonce AAC , Nonce AS_REQ , Flag AAC and Sig AAC1 .
  • Security capabilities AAC is an optional field, TID REQ , Nonce REQ , Res AAC , Sig AS_REQ1 , Nonce AAC , Nonce AS_REQ should be equal to the corresponding fields in ASVeri respectively, and the signature data of Sig AAC1 includes other fields before Sig AAC1 in AACAuth .
  • REQ After receiving the AACAuth, REQ performs the following operations, including:
  • REQ sends a second verification message REQAuth to the AAC.
  • the REQAuth includes Nonce AAC , EncPub AS , Sig REQ and MacTag REQ .
  • Nonce AAC should be equal to Nonce AAC in AACAuth
  • EncPub AS is generated by REQ using the public key of the encryption certificate to encrypt information including ID REQ
  • Sig REQ is generated by REQ performing signature calculation on information including Nonce AS_REQ
  • EncPub AS is an optional field, if the Flag AAC identification is 0, then REQAuth may not carry EncPub AS ; the calculation process of MacTag REQ is described in the embodiment of FIG. 3 .
  • the AAC After receiving the REQAuth, the AAC performs the following operations, including:
  • the AAC sends a third authentication request message AACReVeri to the AS-AAC.
  • the AACReVeri includes EncPub AS , ID AAC and Nonce AAC .
  • EncPub AS should be equal to EncPub AS in REQAuth; ID AAC is an optional field.
  • AS-AAC sends a fourth authentication request message AS-AACReVeri to AS-REQ.
  • the AS-AACReVeri is generated by AS-AAC according to AACReVeri, and the AS-AACReVeri includes EncPub AS , ID AAC and Nonce AAC .
  • AS-REQ sends a fourth authentication response message AS-REQReveri to AS-AAC.
  • the AS-REQReveri includes ID AAC , Nonce AAC , Res REQ and Sig AS_REQ3 .
  • ID AAC and Nonce AAC should be respectively equal to the corresponding fields in AS-AACReVeri;
  • Sig AS_REQ3 is an optional field, and the signature data of Sig AS_REQ3 includes other fields before Sig AS_REQ3 in AS-REQReveri.
  • the AS-AAC sends a third authentication response message ASReVeri to the AAC.
  • the ASReVeri includes ID AAC , Nonce AAC , Res REQ and Sig AS_AAC5 .
  • ID AAC is an optional field
  • Sig AS_AAC5 is an optional field
  • its signature data includes Nonce AAC and Res REQ .
  • ID AAC is carried in ASReVeri
  • the signature data of Sig AS_AAC5 also includes ID AAC .
  • the AAC After receiving the ASReVeri, the AAC performs the following operations, including:
  • ID AAC exists in ASReVeri, check whether ID AAC is the same as ID AAC of AAC itself; check whether Nonce AAC in ASReVeri is the same as Nonce AAC generated by AAC ;
  • the Flag AAC identifier is 1, it means that REQ needs to provide the real ID REQ .
  • the REQAuth sent by REQ to AAC in S414 carries the EncPub AS , and S416 to S422 need to be executed so that the AS-REQ can verify the EncPub AS.
  • the AS decrypts to obtain the ID REQ , and then searches for the PUB REQ according to the ID REQ and checks the validity of the PUB REQ , thereby generating the Res REQ ; if the Flag AAC identifier is 0, it means that the REQ does not need to provide the real ID REQ , and at this time, the REQ in S414 is directed to The REQAuth sent by the AAC does not carry the EncPub AS , that is, the AAC does not need to execute S416 to S422, and directly executes S423 and subsequent steps after the checks and verifications in S415 are passed.
  • the AAC generates a TID REQnew after determining that the identity of the REQ is legal, and calculates the second digital signature Sig AAC2 of the AAC as required.
  • the AAC sends the first certificate deposit message AACUpdate to the AS-AAC.
  • the AACUpdate includes TID REQ , TID REQnew , ID AAC , Nonce AAC , Sig REQ and Sig AAC2 .
  • ID AAC and Sig AAC2 are optional fields; Sig REQ should be equal to Sig REQ in REQAuth.
  • the AS-AAC After receiving the AACUpdate, the AS-AAC performs the following operations, including:
  • AS-AAC sends a second certificate deposit message ASUpdate to AS-REQ.
  • the ASUpdate is generated according to AACUpdate, and the ASUpdate includes TID REQ , TID REQnew , ID AAC , Sig REQ and Sig AS_AAC3 .
  • TID REQ , TID REQnew , and Sig REQ should be respectively equal to the corresponding fields in AACUpdate;
  • Sig AS_AAC3 is an optional field, and its signature data includes other fields before Sig AS_AAC3 in ASUpdate.
  • AS-REQ After AS-REQ receives ASUpdate, it performs the following operations, including:
  • AS-REQ sends a second certificate deposit confirmation message AS-REQAck to AS-AAC.
  • the AS-REQAck includes ID AAC and Sig AS_REQ4 .
  • Sig AS_REQ4 is an optional field, and its signature data includes ID AAC .
  • the AS-AAC After receiving the AS-REQAck, the AS-AAC performs the following operations, including:
  • the AS-AAC sends the first certificate deposit confirmation message AS-AACAck to the AAC.
  • the AS-AACAck includes ID AAC , Nonce AAC and Sig AS_AAC6 .
  • Sig AS_AAC6 is an optional field, and its signature data includes Nonce AAC ;
  • ID AAC is an optional field, and when ID AAC exists in AS-AACAck, the signature data of Sig AS_AAC6 also includes ID AAC .
  • the AAC After receiving the AS-AACAck, the AAC performs the following operations, including:
  • AAC combines the K calculated in S415 with Nonce AAC , Nonce REQ , ID AAC , TID REQnew and other information (other information used by AAC and REQ is the same and optional, such as a specific character string, etc.) using the key to derive
  • the algorithm calculates the session key (including the data encryption key or/and the data integrity check key), which is used for the subsequent confidential communication of REQ and AAC.
  • the AAC sends an authentication completion message AACFinish to the REQ.
  • the AACFinish includes TID REQnew and MacTag AAC .
  • TID REQnew shall be equal to TID REQnew in AACUpdate .
  • the calculation of MacTag AAC is described in the example of FIG. 3 .
  • REQ combines the K calculated in S413 with Nonce AAC , Nonce REQ , ID AAC , TID REQnew and other information (other information used by REQ and AAC is the same and optional, such as a specific character string, etc.), and uses the key to derive
  • the algorithm calculates the session key (including the data encryption key or/and the data integrity check key), which is used for the subsequent confidential communication of REQ and AAC.
  • the two-way identity authentication of REQ and AAC is realized.
  • the real identity of REQ is not directly transmitted, which avoids the leakage of REQ's real identity information and ensures privacy security.
  • the evidence of the REQ's access to the network is realized, which provides evidence for subsequent charging and avoids the occurrence of malicious billing.
  • each message may also carry a hash value HASH X_Y , and the hash value HASH X_Y is calculated by the sender entity X of the message using the hash algorithm on the latest pre-order message sent by the peer entity Y received. obtained, which is used by the peer entity Y to verify whether the entity X has received the complete latest pre-order message.
  • HASH REQ_AAC represents the hash value calculated by REQ on the latest pre-order message sent by AAC received
  • HASH AAC_REQ represents the hash value calculated by AAC on the latest pre-order message sent by REQ received
  • HASH AAC_AS-AAC represents the hash value calculated by AAC on the received Hash value calculated by the latest pre-order message sent by the received AS-AAC
  • HASH AS-AAC _AAC represents the hash value calculated by AS-AAC for the latest pre-order message sent by the received AAC
  • HASH AS-AAC_AS-REQ represents the AS- The hash value calculated by AAC for the latest pre-order message sent by AS-REQ.
  • HASH AS-REQ_AS-AAC indicates the hash value calculated by AS-REQ for the latest pre-order message sent by AS-AAC. If the message currently sent by the sender entity X is the first message in the interaction between entity X and entity Y, it means that entity X has not received the pre-order message sent by the peer entity Y, then HASH X_Y may not exist in the message or meaningless.
  • entity Y uses the hash algorithm to calculate the hash value locally for the latest pre-order message previously sent to entity X, and compares it with the hash value HASH X_Y carried in the received message. Then execute the following steps, otherwise discard or end the current authentication process.
  • the pre-order message sent by peer entity Y to entity X refers to the received message M sent by peer entity Y to entity X before entity X sends message M to peer entity Y.
  • the latest pre-order message sent by peer entity Y to entity X refers to the latest message sent by peer entity Y to entity X before entity X sends message M to peer entity Y. If the message M sent by entity X to its peer entity Y is the first message exchanged between entity X and entity Y, then there is no peer entity Y to the entity before entity X sends message M to its peer entity Y The preorder message sent by X.
  • an embodiment of the present application further provides a requesting device REQ, including:
  • a sending module 510 configured to send an authentication request message to the authentication access controller, where the authentication request message includes the temporary identity of the requesting device;
  • a receiving module 520 configured to receive a first verification message sent by the authentication access controller, where the first verification message includes the authentication result of the authentication access controller and the first digital signature of the first authentication server , the random number for storage generated by the first authentication server and the first digital signature of the authentication access controller;
  • the verification module 530 is configured to verify the first digital signature of the first authentication server and the public key of the authentication access controller carried in the authentication result of the authentication access controller, to verify the authentication access controller.
  • the first digital signature of the access controller after the verification is passed, obtain the identity legality authentication result of the authentication access controller according to the authentication result of the authentication access controller;
  • the sending module 510 is further configured to, after determining that the identity of the authentication access controller is legal, send a second verification message to the authentication access controller, where the second verification message includes the digital signature of the requesting device; Wherein, the digital signature of the requesting device is generated by performing signature calculation on the information including the certificate-storing random number of the first authentication server;
  • the receiving module 520 is further configured to receive an authentication complete message sent by the authentication access controller, where the authentication complete message includes a new temporary identity of the requesting device, and the new temporary identity is the authentication access Generated by the controller after passing the digital signature verification of the requesting device according to the public key of the requesting device carried in the authentication result of the requesting device;
  • the updating module 540 is configured to replace the temporary identity of the requesting device with the new temporary identity of the requesting device in the authentication completion message.
  • the authentication complete message further includes a second message integrity check code generated by the authentication access controller, and the second message integrity check code is the authentication access controller using the second message integrity check code.
  • the message integrity check key pair with the requesting device includes the calculation and generation of other fields in the authentication complete message except the second message integrity check code;
  • the verification module 530 is further configured to verify the second message integrity check code in the authentication complete message.
  • the authentication request message further includes a first key exchange parameter generated by the requesting device, and the first verification message further includes a second key exchange parameter generated by the authentication access controller;
  • the requesting device further includes:
  • a first calculation module configured to perform key exchange calculation according to the temporary private key corresponding to the first key exchange parameter and the temporary public key included in the second key exchange parameter, and generate a first key according to the including
  • the calculation data including the first key uses a key derivation algorithm to calculate the message integrity check key.
  • the authentication request message further includes a first random number generated by the requesting device, and the first verification message also includes the first random number and a second random number generated by the authentication access controller. random number;
  • the verification module 530 is further configured to verify the consistency of the first random number in the first verification message and the first random number generated by the requesting device;
  • the calculation data for calculating the message integrity check key by the first calculation module further includes the first random number and the second random number.
  • the first verification message further includes the identity identifier of the authentication access controller
  • the requesting device further includes:
  • the second calculation module is configured to calculate a session key for subsequent secure communication according to information including the first key, the temporary identity of the requesting device and the identity of the authentication access controller.
  • the message sent by the requesting device to the authentication access controller further includes a hash value calculated by the requesting device on the received latest pre-order message sent by the authentication access controller.
  • an embodiment of the present application further provides an authentication access controller AAC, including:
  • a receiving module 610 configured to receive an authentication request message sent by a requesting device, where the authentication request message includes a temporary identity of the requesting device;
  • a sending module 620 is configured to send a first authentication request message to a second authentication server trusted by the authentication access controller, where the first authentication request message includes the temporary identity of the requesting device and the authentication access controller. Enter the public key of the controller;
  • the receiving module 610 is further configured to receive a first authentication response message sent by the second authentication server, where the first authentication response message includes the authentication result of the authentication access controller, the authentication result trusted by the requesting device.
  • a verification module 630 configured to verify the second digital signature of the second authentication server
  • the sending module 620 is further configured to send a first verification message to the requesting device after the second digital signature of the second authentication server passes the verification, where the first verification message includes the authentication access controller's ID.
  • the receiving module 610 is further configured to receive a second verification message sent by the requesting device, where the second verification message includes the digital signature of the requesting device;
  • the information including the random number of the certificate is generated by signature calculation;
  • the verification module 630 is further configured to use the public key of the requesting device carried in the authentication result of the requesting device to verify the digital signature of the requesting device;
  • the generating module 640 is configured to obtain the identity validity authentication result of the requesting device according to the authentication result of the requesting device, and generate the result after the verification of the digital signature of the requesting device is passed and the identity of the requesting device is determined to be legal. the new temporary identity of the requesting device, and then generate an authentication complete message and a first certificate message; wherein, the authentication complete message includes the new temporary identity of the requesting device; the first certificate message includes all the new temporary identity of the requesting device and the digital signature of the requesting device;
  • the sending module 620 is further configured to send the first certification message to the first authentication server trusted by the requesting device through the second authentication server, and send the authentication completion message to the requesting device.
  • the sending module 620 is further configured to send the first certificate deposit message, and after receiving the first certificate deposit confirmation message through the receiving module 610, send the authentication complete message to the requesting device;
  • the first certificate deposit confirmation message is generated after the first authentication server has passed the verification of the digital signature of the requesting device in the first certificate deposit message.
  • the authentication complete message sent by the sending module 620 further includes a second message integrity check code generated by the authentication access controller, where the second message integrity check code is the authentication access control code.
  • the message integrity check key pair between it and the requesting device is calculated and generated by the device including other fields in the authentication complete message except the second message integrity check code.
  • the authentication request message further includes a first key exchange parameter generated by the requesting device, and the first verification message further includes a second key exchange parameter generated by the authentication access controller;
  • the authentication access controller also includes:
  • the first calculation module is configured to perform key exchange calculation and generate a first key according to the temporary private key corresponding to the second key exchange parameter and the temporary public key included in the first key exchange parameter, and generate a first key according to the
  • the calculation data including the first key uses a key derivation algorithm to calculate the message integrity check key.
  • the authentication request message further includes a first random number generated by the requesting device, and the first authentication request message also includes the first random number and a random number generated by the authentication access controller. the second random number;
  • the first authentication response message further includes the first random number and the second random number
  • the first verification message also includes the first random number and the second random number
  • the The second verification message also includes the second random number
  • the verification module 630 is further configured to verify the difference between the second random number in the first authentication response message and the second random number generated by the authentication access controller before sending the first verification message to the requesting device. consistency; and before generating the new temporary identity of the requesting device, verifying the consistency of the second random number in the second verification message and the second random number generated by the authentication access controller;
  • the calculation data for calculating the message integrity check key by the first calculation module further includes the first random number and the second random number.
  • the authentication request message further includes security capability parameter information supported by the requesting device
  • the authentication access controller further includes:
  • a first determining module configured to determine a specific security policy used by the authentication access controller according to the security capability parameter information, and the first verification message further includes the specific security policy.
  • the authentication request message further includes an identity identifier of at least one authentication server trusted by the requesting device
  • the authentication access controller further includes:
  • the second determining module is configured to determine the second authentication server according to the identity of at least one authentication server trusted by the requesting device and the identity of the authentication server trusted by the authentication access controller in the request message.
  • the second verification message further includes a first message integrity check code generated by the requesting device, where the first message integrity check code is used by the requesting device to communicate with the authentication device.
  • the message integrity check key pair between the incoming controllers includes other fields in the second verification message except the first message integrity check code generated by calculation;
  • the verification module 630 is further configured to verify the first message integrity check code before the authentication access controller generates the new temporary identity of the requesting device.
  • the first verification message generated by the authentication access controller further includes an indication identifier, and the The indication identifier is used to instruct the requesting device to send its real identity identifier;
  • the second verification message also includes the identity ciphertext of the requesting device, and the ciphertext of the identity of the requesting device is generated by the requesting device using the public key of the encryption certificate to encrypt the identity of the requesting device. of;
  • the sending module 620 is further configured to send a third authentication request message to the second authentication server, where the third authentication request message includes the identity ciphertext of the requesting device;
  • the receiving module 610 is further configured to receive a third authentication response message sent by the second authentication server, where the third authentication response message includes the authentication result of the requesting device;
  • the verification module 630 is further configured to re-determine the identity validity of the requesting device according to the authentication result of the requesting device carried in the third authentication response message.
  • the first authentication request message further includes the identity of the authentication access controller; then the first authentication response message also includes the identity of the authentication access controller;
  • the verification module 630 is further configured to verify the identity of the authentication access controller in the first authentication response message and the authentication access controller itself before sending the first authentication message to the requesting device identity consistency.
  • the first verification message further includes the identity identifier of the authentication access controller
  • the authentication access controller also includes:
  • the second calculation module is configured to calculate a session key for subsequent secure communication according to information including the first key, the temporary identity of the requesting device and the identity of the authentication access controller.
  • the message sent by the authentication access controller to the requesting device further includes a hash value calculated by the authentication access controller on the received latest pre-order message sent by the requesting device; the authentication The message sent by the access controller to the second authentication server further includes a hash value calculated by the authentication access controller on the received latest pre-order message sent by the second authentication server.
  • an embodiment of the present application further provides a second authentication server AS-AAC, where the second authentication server AS-AAC is an authentication server trusted by the authentication access controller, including:
  • a receiving module 710 configured to receive a first authentication request message sent by the authentication access controller, where the first authentication request message includes the temporary identity of the requesting device and the public key of the authentication access controller;
  • the sending module 720 is configured to send a first authentication response message to the authentication access controller, where the first authentication response message includes the authentication result of the authentication access controller, the first authentication result trusted by the requesting device.
  • the receiving module 710 is further configured to receive a first certificate deposit message generated by the authentication access controller, where the first certificate deposit message includes the new temporary identity of the requesting device and the digital signature of the requesting device;
  • the digital signature of the requesting device is generated by the requesting device performing signature calculation on the information including the random number stored in the first authentication server.
  • the first certificate deposit message further includes a second digital signature of the authentication access controller, and the second digital signature of the authentication access controller is a verification of the information in the first certificate deposit message.
  • the other information before the second digital signature of the authentication access controller is generated by signature calculation;
  • the second authentication server further includes:
  • the verification module is used for verifying the second digital signature of the authentication access controller.
  • the second authentication server further includes:
  • the first processing module is used to check the validity of the public key of the authentication access controller to generate the authentication result of the authentication access controller; find and check the requesting device according to the temporary identity of the requesting device the validity of the public key, generate the authentication result of the requesting device and generate the certificate random number;
  • the first generation module is configured to calculate the first digital signature of the first authentication server according to the information including the authentication result of the authentication access controller, according to the authentication result including the requesting device and the The information including the certificate random number calculates the second digital signature of the second authentication server.
  • the second authentication server further includes:
  • a second processing module configured to check the validity of the public key of the authentication access controller, and generate an authentication result of the authentication access controller
  • a second generating module configured to generate a second authentication request message according to the first authentication request message, where the second authentication request message includes the temporary identity of the requesting device and the identity of the authentication access controller.
  • the sending module 720 is further configured to send the second authentication request message to the first authentication server;
  • the receiving module 710 is further configured to receive a second authentication response message sent by the first authentication server, where the second authentication response message includes the authentication result of the authentication access controller, the first authentication server the first digital signature of the requesting device, the authentication result of the requesting device, the random number for the deposit certificate, and the second digital signature of the first authentication server; the first digital signature of the first authentication server is based on the It is calculated and generated from the information including the authentication result of the authentication access controller, and the second digital signature of the first authentication server is based on the information including the authentication result of the requesting device and the certificate random number. calculated;
  • the second processing module is further configured to verify the second digital signature of the first authentication server, and after the verification is passed, the second generation module is further configured to include the authentication result of the requesting device and the Calculate the second digital signature of the second authentication server based on the information including the random number of the certificate, and generate the first authentication response message;
  • the second generation module is further configured to generate a second certificate deposit message according to the first certificate deposit message, and send the second certificate deposit message to the first authentication server through the sending module, and the first certificate deposit message is sent to the first authentication server.
  • the second certificate deposit message includes the new temporary identity of the requesting device, the digital signature of the requesting device, and the third digital signature of the second authentication server, wherein the third digital signature of the second authentication server is the The second authentication server is calculated and generated according to the information including the new temporary identity of the requesting device and the digital signature of the requesting device.
  • the receiving module 710 is further configured to receive the second certificate confirmation message generated and sent by the first authentication server after the third digital signature of the second authentication server in the second certificate deposit message is verified and passed. ;
  • the second processing module is further configured to verify the third digital signature of the first authentication server in the second certificate confirmation message;
  • the second generation module is further configured to generate a first certificate confirmation message after the third digital signature verification of the first authentication server is passed;
  • the sending module 720 is further configured to send the first certificate confirmation message to the authentication access controller.
  • the message sent by the second authentication server to the authentication access controller further includes a hash value calculated by the second authentication server on the received latest pre-order message sent by the authentication access controller.
  • the message sent by the second authentication server to the first authentication server further includes a hash value calculated by the second authentication server on the received latest pre-order message sent by the first authentication server.
  • an embodiment of the present application further provides a first authentication server AS-REQ, where the first authentication server AS-REQ is an authentication server that requests device trust, including:
  • the verification module 810 is configured to use the public key of the requesting device to verify the digital signature of the requesting device in the first certificate deposit message, where the first certificate deposit message includes the new temporary identity of the requesting device and all The digital signature of the requesting device; the digital signature of the requesting device is generated by the requesting device performing signature calculation on the information including the random number of the certificate of the first authentication server;
  • the replacement module 820 is configured to generate and save the request passing record of the requesting device after the verification of the digital signature of the requesting device is passed, and use the new temporary identity of the requesting device in the first certificate deposit message to replace the requested device. the temporary identity of the requesting device.
  • the first authentication server further includes:
  • the judgment module is configured to judge whether the temporary identification of the requesting device satisfies the timeliness before generating the certificate storage random number, and if so, the replacement module 820 generates the certificate storage random number.
  • the first authentication server further includes:
  • a receiving module configured to receive a second authentication request message sent by the second authentication server, wherein the second authentication request message includes the temporary identity of the requesting device and the authentication of the authentication access controller; right result;
  • the verification module 810 is further configured to search and check the validity of the public key of the requesting device according to the temporary identity of the requesting device, generate an authentication result of the requesting device and generate a random number for storage;
  • a calculation module configured to calculate the first digital signature of the first authentication server according to the information including the authentication result of the authentication access controller, according to the authentication result including the requesting device and the storage certificate
  • the information including the random number calculates the second digital signature of the first authentication server
  • a sending module configured to send a second authentication response message to the second authentication server, where the second authentication response message includes the authentication result of the authentication access controller, the first authentication result of the first authentication server digital signature, the authentication result of the requesting device, the random number of the certificate, and the second digital signature of the first authentication server;
  • the receiving module is further configured to receive a second certificate deposit message sent by the second authentication server, where the second certificate deposit message includes the new temporary identity of the requesting device, the digital signature of the requesting device and the The third digital signature of the second authentication server, wherein the third digital signature of the second authentication server is based on the new temporary identity of the requesting device and the digital signature of the requesting device by the second authentication server. generated by the calculation of the information included;
  • the verification module 810 is further configured to verify the third digital signature of the second authentication server, and determine that the verification is passed.
  • the message sent by the first authentication server to the second authentication server further includes a hash value calculated by the first authentication server on the received latest pre-order message sent by the second authentication server.
  • an embodiment of the present application further provides a requesting device, including:
  • the processor 902 is configured to call the program instructions stored in the memory 901, and execute the obtained program to realize the steps of REQ execution in the foregoing embodiment.
  • the requesting device may implement the corresponding processes implemented by REQ in each method of the embodiments of the present application, which will not be repeated here for brevity.
  • an embodiment of the present application further provides an authentication access controller, including:
  • the processor 1002 is configured to call the program instructions stored in the memory 1001, and execute according to the obtained program to implement the steps performed by the AAC in the foregoing embodiment.
  • the authentication access controller may implement the corresponding processes implemented by the AAC in the various methods in the embodiments of the present application, which will not be repeated here for brevity.
  • an embodiment of the present application further provides a second authentication server, including:
  • the processor 1102 is configured to call the program instructions stored in the memory 1101, and execute the obtained program to realize the steps performed by the AS-AAC in the foregoing embodiment.
  • the second authentication server may implement the corresponding processes implemented by the AS-AAC in each method in the embodiments of the present application, and for brevity, details are not described herein again.
  • an embodiment of the present application further provides a first authentication server, including:
  • the processor 1202 is configured to call the program instructions stored in the memory 1201, and execute according to the obtained program to realize the steps performed by the AS-REQ in the foregoing embodiment.
  • the first authentication server may implement the corresponding processes implemented by the AS-REQ in each method in the embodiments of the present application, which will not be repeated here for brevity.
  • the aforementioned program may be stored in a computer-readable storage medium, and when the program is executed, the execution includes the above The steps of the method embodiment; and the aforementioned storage medium may be at least one of the following media: read-only memory (English: Read-Only Memory, abbreviation: ROM), RAM, magnetic disk or optical disk and other various programs that can store programs medium of code.
  • ROM Read-Only Memory
  • each embodiment in this specification is described in a progressive manner, and the same and similar parts between the various embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. place.
  • the description is relatively simple, and reference may be made to some descriptions of the method embodiments for related parts.
  • the device and system embodiments described above are only schematic, wherein the modules described as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical modules, that is, they may be located in One place, or it can be distributed over multiple network elements. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution in this embodiment. Those of ordinary skill in the art can understand and implement it without creative effort.

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)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请公开了一种身份鉴别方法和装置,在本申请实施例中,包括采用临时身份标识作为请求设备的身份凭证,采用公钥作为鉴别接入控制器的身份凭证,引入鉴别服务器验证上述身份凭证,并向请求设备和鉴别接入控制器返回对应的鉴权结果,从而实现请求设备和鉴别接入控制器的双向身份鉴别,由于整个过程中未直接传输请求设备的真实身份,保障了实体隐私安全。当确定双方身份合法,以及请求设备信任的鉴别服务器在确定存证消息可信后,生成并保存请求通过记录,为后续收费、访问追溯或避免恶意计费等提供依据。

Description

一种身份鉴别方法和装置
相关申请的交叉引用
本申请要求在2020年12月26日提交中国专利局、申请号为202011569199.1、申请名称为“一种身份鉴别方法和装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及网络通信安全技术领域,特别是涉及一种身份鉴别方法和装置。
背景技术
目前,通信网络通常要求在用户和网络接入点之间执行双向身份鉴别,确保合法用户能够与合法网络通信,在已有的实体鉴别方案中,通常不能保护用户的隐私信息,且会存在网络接入点进行恶意计费,给用户造成异常收费的问题。
发明内容
为了解决上述技术问题,本申请提供了一种身份鉴别方法和装置,能够实现请求设备和鉴别接入控制器的双向身份鉴别,并且保障用户的隐私信息,以及为后续收费、访问追溯或避免恶意计费等提供依据。
有鉴于此,本申请第一方面提供了一种身份鉴别方法,包括:
请求设备向鉴别接入控制器发送鉴别请求消息,所述鉴别请求消息中包括所述请求设备的临时身份标识;
所述鉴别接入控制器向其信任的第二鉴别服务器发送第一鉴权请求消息,所述第一鉴权请求消息包括所述请求设备的临时身份标识和所述鉴别接入控制器的公钥,接收所述第二鉴别服务器发送的第一鉴权响应消息,所述第一鉴权响应消息包括所述鉴别接入控制器的鉴权结果、所述请求设备信任的第一鉴别服务器的第一数字签名、所述请求设备的鉴权结果、所述第一鉴别服务器生成的存证随机数和所述第二鉴别服务器的第二数字签名;
所述鉴别接入控制器验证所述第二鉴别服务器的第二数字签名,验证通过后,向所述请求设备发送第一验证消息,所述第一验证消息中包括所述鉴别接入控制器的鉴权结果、所述第一鉴别服务器的第一数字签名、所述第一鉴别服务器生成的存证随机数和所述鉴别接入控制器的第一数字签名;
所述请求设备验证所述第一鉴别服务器的第一数字签名以及根据所述鉴别接入控制器的鉴权结果中携带的所述鉴别接入控制器的公钥验证所述鉴别接入控制器的第一数字签名,验证通过后,根据所述鉴别接入控制器的鉴权结果获得所述鉴别接入控制器的身份合法性鉴别结果,在确定所述鉴别接入控制器的身份合法后,向所述鉴别接入控制器发送第二验证消息,所述第二验证消息包括所述请求设备的数字签名;其中,所述请求设备的数字签名是对包括所述第一鉴别服务器的存证随机数在内的信息进行签名计算生成的;
所述鉴别接入控制器利用所述请求设备的鉴权结果中携带的所述请求设备的公钥对所述请求设备的数字签名进行验证以及根据所述请求设备的鉴权结果获得所述请求设备的身份合法性鉴别结果,验证通过且在确定所述请求设备的身份合法后产生所述请求设备的新临时身份标识,再生成鉴别完成消息和第一存证消息;其中,所述鉴别完成消息中包括所述请求设备的新临时身份标识;所述第一存证消息中包括所述请求设备的新临时身份标识和所述请求设备的数字签名;
所述请求设备使用所述鉴别完成消息中所述请求设备的新临时身份标识替换所述请求设备的临时身份标识;
所述第一鉴别服务器利用所述请求设备的公钥对所述第一存证消息中的所述请求设备的数字签名进行验证,验证通过后,生成并保存所述请求设备的请求通过记录,使用所述第一存证消息中所述请求设备的新临时身份标识替换所述请求设备的临时身份标识。
本申请第二方面提供了一种请求设备,包括:
发送模块,用于向鉴别接入控制器发送鉴别请求消息,所述鉴别请求消息中包括所述请求设备的临时身份标识;
接收模块,用于接收所述鉴别接入控制器发送的第一验证消息,所述第一验证消息中包括所述鉴别接入控制器的鉴权结果、第一鉴别服务器的第一数字签名、所述第一鉴别服务器生成的存证随机数和所述鉴别接入控制器的第一数字签名;
验证模块,用于验证所述第一鉴别服务器的第一数字签名以及根据所述鉴别接入控制器的鉴权结果中携带的所述鉴别接入控制器的公钥验证所述鉴别接入控制器的第一数字签名,验证通过后,根据所述鉴别接入控制器的鉴权结果获得所述鉴别接入控制器的身份合法性鉴别结果;
所述发送模块,还用于在确定所述鉴别接入控制器的身份合法后,向所述鉴别接入控制器发送第二验证消息,所述第二验证消息包括所述请求设备的数字签名;其中,所述请求设备的数字签名是对包括所述第一鉴别服务器的存证随机数在内的信息进行签名计算生成的;
所述接收模块,还用于接收所述鉴别接入控制器发送的鉴别完成消息,所述鉴别完成消息中包括所述请求设备的新临时身份标识,所述新临时身份标识是所述鉴别接入控制器根据所述请求设备的鉴权结果中携带的所述请求设备的公钥对所述请求设备的数字签名验证通过后生成的;
更新模块,用于使用所述鉴别完成消息中所述请求设备的新临时身份标识替换所述请求设备的临时身份标识。
本申请第三方面提供了一种鉴别接入控制器,包括:
接收模块,用于接收请求设备发送的鉴别请求消息,所述鉴别请求消息中包括所述请求设备的临时身份标识;
发送模块,用于向所述鉴别接入控制器信任的第二鉴别服务器发送第一鉴权请求消息,所述第一鉴权请求消息包括所述请求设备的临时身份标识和所述鉴别接入控制器的公钥;
所述接收模块,还用于接收所述第二鉴别服务器发送的第一鉴权响应消息,所述第一鉴权响应消息包括所述鉴别接入控制器的鉴权结果、所述请求设备信任的第一鉴别服务器的第一数字签名、所述请求设备的鉴权结果、所述第一鉴别服务器生成的存证随机数和所述第二鉴别服务器的第二数字签名;
验证模块,用于验证所述第二鉴别服务器的第二数字签名;
所述发送模块,还用于在所述第二鉴别服务器的第二数字签名验证通过后,向所述请求设备发送第一验证消息,所述第一验证消息中包括所述鉴别接入控制器的鉴权结果、所述第一鉴别服务器的第一数字签名、所述第一鉴别服务器生成的存证随机数和所述鉴别接入控制器的第一数字签名;
所述接收模块,还用于接收所述请求设备发送的第二验证消息,所述第二验证消息包括所述请求设备的数字签名;所述请求设备的数字签名是对包括所述第一鉴别服务器的存证随机数在内的信息进行签名计算生成的;
所述验证模块,还用于利用所述请求设备的鉴权结果中携带的所述请求设备的公钥对所述请求设备的数字签名进行验证;
生成模块,用于根据所述请求设备的鉴权结果获得所述请求设备的身份合法性鉴别结果,在所述请求设备的数字签名验证通过且在确定所述请求设备的身份合法后产生所述请求设备的新临时身份标识,再生成鉴别完成消息和第一存证消息;其中,所述鉴别完成消息中包括所述请求设备的新临时身份标识;所述第一存证消息中包括所述请求设备的新临时身份标识和所述请求设备的数字签名;
所述发送模块,还用于通过所述第二鉴别服务器向所述请求设备信任的第一鉴别服务器发送所述第一存证消息,以及向所述请求设备发送所述鉴别完成消息。
本申请第四方面提供了一种第二鉴别服务器,包括:
接收模块,用于接收鉴别接入控制器发送的第一鉴权请求消息,所述第一鉴权请求消息包括请求设备的临时身份标识和所述鉴别接入控制器的公钥;
发送模块,用于向所述鉴别接入控制器发送第一鉴权响应消息,所述第一鉴权响应消息包括所述鉴别接入控制器的鉴权结果、所述请求设备信任的第一鉴别服务器的第一数字签名、所述请求设备的鉴权结果、所述第一鉴别服务器生成的存证随机数和所述第二鉴别服务器的第二数字签名;
所述接收模块,还用于接收所述鉴别接入控制器生成的第一存证消息,所述第一存证消息中包括所述请求设备的新临时身份标识和所述请求设备的数字签名;所述请求设备的数字签名是所述请求设备对包括所述第一鉴别服务器的存证随机数在内的信息进行签名计算生成的。
本申请第五方面提供了一种第一鉴别服务器,包括:
验证模块,用于利用请求设备的公钥对第一存证消息中的所述请求设备的数字签名进行验证,所述第一存证消息中包括所述请求设备的新临时身份标识和所述请求设备的数字签名;所述请求设备的数字签名是所述请求设备对包括所述第一鉴别服务器的存证随机数在内的信息进行签名计算生成的;
替换模块,用于在所述请求设备的数字签名验证通过后,生成并保存所述请求设备的请求通过记录,使用所述第一存证消息中所述请求设备的新临时身份标识替换所述请求设备的临时身份标识。
本申请第六方面提供了一种请求设备,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述第一方面中请求设备侧的方法。
本申请第七方面提供了一种鉴别接入控制器,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述第一方面中鉴别接入控制器侧的方法。
本申请第八方面提供了一种第二鉴别服务器,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述第一方面中第二鉴别服务器侧的方法。
本申请第九方面提供了一种第一鉴别服务器,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述第一方面中第一鉴别服务器侧的方法。
本申请第十方面提供了一种计算机存储介质,所述计算机存储介质存储有计算机可执行指令,所述计算机可执行指令用于使所述计算机执行上述第一方面所述的方法。
由上述技术方案可以看出,请求设备采用临时身份标识作为其身份凭证,鉴别接入控制器采用公钥作为其身份凭证,在身份鉴别过程中,请求设备向鉴别接入控制器发送包括请求设备的临时身份标识的鉴别请求消息,然后鉴别接入控制器向其信任的第二鉴别服务器发送第一鉴权请求消息,第一鉴权请求消息包括请求设备的临时身份标识和鉴别接入控制器的公钥,如此,第二鉴别服务器能够检查鉴别接入控制器的公钥的合法性从而生成鉴别接入控制器的鉴权结果,并生成第二鉴别服务器的第二数字签名,请求设备信任的第一鉴别服务器能够根据请求设备的临时身份标识查找请求设备的公钥并检查其合法性,从而生成请求设备的鉴权结果,并生成第一鉴别服务器的第一数字签名,此外第一鉴别服务器还生成存证随机数,用于为后续收费提供证据,第二鉴别服务器根据鉴别接入控制器的鉴权结果、第一鉴别服务器的第一数字签名、请求设备的鉴权结果、存证随机数和第二鉴别服务器的第二数字签名生成第一鉴权响应消息并向鉴别接入控制器返回第一鉴权响应消息;鉴别接入控制器验证第二鉴别服务器的第二数字签名,验证通过,则向请求设备发送第一验证消息,第一验证消息包括鉴别接入控制器的鉴权结果、第一鉴别服务器的第一数字签名、所述第一鉴别服务器生成的存证随机数和所述鉴别接入控制器的第一数字签名;请求设备在第一鉴别服务器的第一数字签名和鉴别接入控制器的第一数字签名验证通过后,根据鉴别接入控制器的鉴权结果确定鉴别接入控制器的身份合法性。
此外,请求设备确定鉴别接入控制器的身份合法后,还向鉴别接入控制器发送包括请求设备的数字签名的第二验证消息,请求设备的数字签名是对包括第一鉴别服务器的存证随机数在内的信息进行签名计算生成的;鉴别接入控制器根据请求设备的鉴权结果中携带的请求设备的公钥验证请求设备的数字签名以及根据所述请求设备的鉴权结果确定所述请求设备的身份合法性,在验证通过且确定所述请求设备的身份合法后为请求设备分配新临时身份标识,再生成鉴别完成消息和第一存证消息,并将鉴别完成消息发送给请求设备,将第一存证消息发送给第一鉴别服务器;相应的,请求设备使用鉴别完成消息中的新临时身份标识更新请求设备的临时身份标识,第一鉴别服务器验证第一存证消息中的请求设备的数字签名,并在验证通过后生成并保存请求设备的请求通过记录,证明请求设备在特定时间有请求访问网络的行为,为后续收费提供证据避免恶意收费。如此实现请求设备和鉴别接入控制器的双向身份鉴别;并且实体采用临时身份标识作为身份凭证,其真实身份不会被泄露,保障了用户隐私。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种身份鉴别方法的示意图;
图2为本申请实施例提供的一种请求设备REQ和鉴别接入控制器AAC协商消息完整性校验密钥的方法的示意图;
图3为本申请实施例提供的一种身份鉴别方法的示意图,其中“*”表示可选的字段或可选的操作;
图4为本申请实施例提供的一种身份鉴别方法的示意图,其中“*”表示可选的字段或可选的操作;
图5为本申请实施例提供的一种请求设备REQ的结构框图;
图6为本申请实施例提供的一种鉴别接入控制器AAC的结构框图;
图7为本申请实施例提供的一种第二鉴别服务器AS-AAC的结构框图;
图8为本申请实施例提供的一种第一鉴别服务器AS-REQ的结构框图;
图9为本申请实施例提供的另一种请求设备REQ的结构框图;
图10为本申请实施例提供的另一种鉴别接入控制器AAC的结构框图;
图11为本申请实施例提供的另一种第二鉴别服务器AS-AAC的结构框图;
图12为本申请实施例提供的另一种第一鉴别服务器AS-REQ的结构框图。
具体实施方式
在通信网络中,请求设备可以通过鉴别接入控制器访问网络,为了确保访问网络的请求设备属于合法用户,以及请求设备访问的网络为合法网络,鉴别接入控制器和请求设备之间通常需要进行双向身份鉴别(Mutual Identity Authentication,简称MIA)。
以目前的无线通信和移动通信场景为例,在请求设备通过鉴别接入控制器访问无线网络的场景下,请求设备可以为手机、个人数字助理(Personal Digital Assistant,简称PDA)、平板电脑等终端设备,鉴别接入控制器可以是无线接入点、无线路由器等网络侧设备。在请求设备通过鉴别接入控制器访问有线网络的场景下,请求设备可以为台式机、笔记本电脑等终端设备,鉴别接入控制器可以是交换机或路由器等网络侧设备。在请求设备通过鉴别接入控制器接入第四/五代移动通信技术(The 4th/5th Generation mobile communication technology,简称4G/5G)网络的场景下,请求设备可以为手机、平板电脑等终端设备,鉴别接入控制器可以为基站等网络侧设备。当然,本申请同样适用于其他有线网络、近距离通信网络等各种数据通信场景。
然而在已有的实体鉴别方案中,通常不能保护用户的隐私信息,且会存在网络接入点恶意计费,给用户造成异常收费的问题。为了解决上述问题,本申请实施例提供一种身份鉴别方法,在该方法中,鉴别接入控制器为请求设备分配临时身份标识作为其身份凭证,鉴别接入控制器自身采用公钥作为身份凭证,请求设备在接入网络时,向鉴别接入控制器发送鉴别请求消息,鉴别接入控制器向其信任的第二鉴别服务器发送第一鉴权请求消息,第一鉴权请求消息包括请求设备的临时身份标识和鉴别接入控制器的公钥,请求设备信任的第一鉴别服务器根据请求设备的临时身份标识生成请求设备的鉴权结果,鉴别接入控制器信任的第二鉴别服务器对鉴别接入控制器的公钥进行验证生成鉴别接入控制器的鉴权结果,然后第二鉴别服务器向鉴别接入控制器发送携带请求设备和鉴别接入控制器的鉴权结果及相关签名的第一鉴权响应消息,请求设备和鉴别接入控制器分别获取对方的鉴权结果实现双向身份鉴别。由于请求设备采用临时身份标识实现身份鉴别,避免传输真实身份信息,保障其真实身份信息的安全。此外,请求设备在确定鉴别接入控制器身份合法后,还向鉴别接入控制器发送第二验证消息,以便鉴别接入控制器为请求设备分配新临时身份标识,并向第一鉴别服务器发送存证消息,对请求设备访问网络行为进行存证,为后续收费提供证据,避免恶意计费。
为便于介绍,在本申请实施例中,将以请求设备(REQuester,简称REQ)、鉴别接入控制器(Authentication Access Controller,简称AAC)和鉴别服务器(Authentication Server,简称AS)为例对一种身份鉴别方法进行介绍。
其中,AAC信任的AS称为第二鉴别服务器AS-AAC,REQ信任的AS称为第一鉴别服务器AS-REQ。AS-AAC和AS-REQ各自持有符合ISO/IEC 9594-8/ITU X.509、其他标准或其他技术体系规定的数字证书和数字证书对应的私钥。AS-REQ知晓REQ的ID或者TID及其所对应的REQ的公钥PUB REQ。另,系统中还可以存在证书解密服务器(Certificate Sever-Decrypt,简称CS-DEC),CS-DEC持有符合ISO/IEC9594-8/ITU X.509、其他标准或其他技术体系规定的加密证书和加密证书对应的私钥;CS-DEC可以是独立的服务器,也可以驻留在AS-REQ中。
AS-AAC和AS-REQ可以是同一AS也可以是不同的AS,当AS-AAC与AS-REQ相同时,即非漫游情况;当AS-AAC与AS-REQ不同时,即漫游情况,此时AS-AAC与AS-REQ相互知晓对方的签名证书或签名证书中的公钥。
REQ和AAC是参与身份鉴别过程的端点,REQ与AAC建立连接,访问AAC提供的服务,且通过AAC访问AS;AAC与REQ建立连接,提供服务,并与REQ通信,且可直接访问AS-AAC。REQ和AAC均具有标识身份的ID,且REQ还具有临时身份标识TID。REQ与AAC分别持有一对公私钥(其中,REQ的公钥与AAC的公钥分别记为PUB REQ和PUB AAC),REQ和AAC知晓其信任的鉴别服务器的数字证书或其数字证书对应的公钥,且REQ知晓AS-REQ的签名证书或AS-REQ签名证书中的公钥,在某些应用场景中REQ还知晓CS-DEC的加密证书或CS-DEC加密证书中的公钥。AS-AAC能够根据PUB AAC验证AAC的身份合法性,AS-REQ能够根据REQ的ID或TID查找所对应的PUB REQ,并根据PUB REQ验证REQ的身份合法性。
下面结合图1,说明本申请实施例提供的一种身份鉴别方法,该方法包括:
S101、REQ向AAC发送鉴别请求消息ATTACH。
所述ATTACH中包括REQ的临时身份标识TID REQ。其中,TID REQ是由AAC为REQ分配的,在实际应用中TID REQ具有唯一性,即多个REQ请求接入网络时,AAC分别为每个REQ分配不同的TID REQ, 以便对REQ进行区分。
一方面,可以通过临时身份标识实现身份鉴别,避免真实身份信息泄露,另一方面TID REQ具有有效期,可以实现生命周期的管理。
S102、AAC向其信任的AS-AAC发送第一鉴权请求消息AACVeri。
所述AACVeri包括AAC的公钥PUB AAC和所述TID REQ
S103、AAC接收AS-AAC发送的第一鉴权响应消息ASVeri。
所述ASVeri包括AAC的鉴权结果Res AAC、REQ信任的AS-REQ的第一数字签名Sig AS_REQ1、REQ的鉴权结果Res REQ、AS-REQ生成的存证随机数Nonce AS_REQ和AS-AAC的第二数字签名Sig AS_AAC2
需要说明的是,当AS-AAC和AS-REQ为同一个鉴别服务器时,REQ和AAC共同信任的鉴别服务器可以用AS-AAC(当然也可以用AS-REQ)来表示。此情形下,由AS-AAC(也可以表示为AS-REQ)对所述TID REQ和所述PUB AAC进行验证。例如,由AS-AAC(也可以表示为AS-REQ)判断TID REQ是否有效,若有效,则查找TID REQ所对应的REQ的公钥PUB REQ,并检查PUB REQ的合法性,根据包括PUB REQ及其检查结果在内的信息生成Res REQ,并生成存证随机数Nonce AS_AAC(也可以表示为Nonce AS_REQ),以便为计费提供证据,以及,检查PUB AAC的合法性,根据包括PUB AAC及其检查结果在内的信息生成Res AAC,并对包括Res AAC在内的信息进行签名计算生成所述Sig AS_REQ1表示,对包括Res REQ和Nonce AS_REQ在内的信息进行签名计算生成所述Sig AS_AAC2,根据包括Res AAC、Sig AS_REQ1、Res REQ、Nonce AS_REQ和Sig AS_AAC2在内的信息生成ASVeri。
当AAC信任的AS-AAC和REQ信任的AS-REQ为不同鉴别服务器时,此情形下,由AS-AAC验证所述PUB AAC,具体为检查PUB AAC的合法性,根据包括PUB AAC及其检查结果在内的信息生成Res AAC,然后根据Res AAC和AACVeri中的TID REQ在内的信息生成第二鉴权请求消息AS-AACVeri,并向AS-REQ发送AS-AACVeri。
AS-REQ根据TID REQ查找对应的PUB REQ,并检查PUB REQ的合法性,根据包括PUB REQ及其检查结果在内的信息生成Res REQ,并生成存证随机数Nonce AS_REQ,以便为计费提供证据。接着,AS-REQ对包括Res AAC在内的信息进行签名计算生成所述Sig AS_REQ1,对包括Res REQ和Nonce AS_REQ在内的信息进行签名计算生成AS-REQ的第二数字签名Sig AS_REQ2,根据Res AAC、Sig AS_REQ1、Res REQ、Nonce AS_REQ和Sig AS_REQ2在内的信息生成第二鉴权响应消息AS-REQVeri,并向AS-AAC发送AS-REQVeri。
AS-AAC验证所述Sig AS_REQ2,验证通过后,对包括Res REQ和Nonce AS_REQ在内的信息进行签名计算生成所述Sig AS_AAC2,根据包括Res AAC、Sig AS_REQ1、Res REQ、Nonce AS_REQ和Sig AS_AAC2在内的信息生成ASVeri。
需要说明的是,考虑到临时身份标识的时效性,AS-REQ在产生Nonce AS-REQ之前,还可以判断所述TID REQ是否满足时效性,若是,则AS-REQ再产生存证随机数Nonce AS_REQ。如此,可以避免非法分子利用失效TID REQ伪装成当前用户发起访问网络的请求。
S104、AAC验证所述Sig AS_AAC2
具体的,AAC知晓AS-AAC的公钥,其利用AS-AAC的公钥对Sig AS_AAC2进行验证,若验证通过,则表明ASVeri中的Res REQ和Nonce AS_REQ并未被篡改,可以继续执行后续操作。
S105、AAC向REQ发送第一验证消息AACAuth。
所述AACAuth中包括所述Res AAC、所述Sig AS_REQ1、所述Nonce AS_REQ和AAC的第一数字签名Sig AAC1
S106、REQ验证所述Sig AS_REQ1以及根据所述Res AAC中携带的PUB AAC验证所述Sig AAC1,验证通过后,根据所述Res AAC获得AAC的身份合法性鉴别结果。
具体的,REQ知晓AS-REQ的公钥,其利用AS-REQ的公钥对所述Sig AS_REQ1进行验证;以及,REQ根据Res AAC中携带的PUB AAC验证Sig AAC1,若所述Sig AAC1和所述Sig AS_REQ1验证均通过,则REQ可以根据Res AAC确定AAC身份合法性,实现对AAC的身份鉴别。若有至少一项验证不通过,则停止执行后续步骤。若确定AAC身份合法,则执行S107。
S107、REQ向AAC发送第二验证消息REQAuth。
所述REQAuth中包括REQ的数字签名Sig REQ。Sig REQ是REQ对包括所述Nonce AS_REQ在内的信息进行签名计算生成的。
可选的,REQAuth中还可以包括REQ生成的第一消息完整性校验码MacTag REQ,则在执行S108之前,AAC还要验证MacTag REQ,验证通过后再执行后续操作。其中,MacTag REQ是REQ利用其与AAC之间的消息完整性校验密钥对包括REQAuth中除MacTag REQ外的其他字段计算生成的。则AAC在验证MacTag REQ时,应利用其与REQ之间的消息完整性校验密钥对包括REQAuth中除MacTag REQ外的其他字段计算生成MacTag REQ,并将计算出的MacTag REQ与REQAuth中的MacTag REQ进行比较,若一致,则验证通过,若不一致,则验证不通过。
S108、AAC根据所述Res REQ中携带的REQ的公钥PUB REQ验证所述Sig REQ以及根据所述Res REQ获得REQ的身份合法性鉴别结果,验证通过且确认REQ的身份合法后产生REQ的新临时身份标识TID REQnew,再生成鉴别完成消息AACFinish和第一存证消息AACUpdate。
S109、AAC向REQ发送鉴别完成消息AACFinish。
其中,所述AACFinish中包括所述TID REQnew
S110、REQ使用所述AACFinish中的TID REQnew替换所述TID REQ
可选的,S109的AACFinish中还可以包括AAC生成的第二消息完整性校验码MacTag AAC。MacTag AAC是AAC利用其与REQ之间的消息完整性校验密钥对包括AACFinish中除MacTag AAC外的其他字段计算生成的。相应的,在执行S110之前,REQ还要验证MacTag AAC,验证通过后再执行后续操作。REQ在验证MacTag AAC时,应利用其与AAC之间的消息完整性校验密钥对包括AACFinish中除MacTag AAC外的其他字段计算生成MacTag AAC,并将计算出的MacTag AAC与AACFinish中的MacTag AAC进行比较,若一致,则验证通过,若不一致,则验证不通过。
若MacTag AAC验证通过,则表明REQ与AAC的交互是完整的,AACFinish是可信的,REQ可以采用AACFinish中的TID REQnew替换TID REQ,实现临时身份标识的更新。若MacTag AAC验证不通过,则表明REQ与AAC的交互是不完整的,AACFinish不可信,REQ立即丢弃AACFinish。
S111、AAC向AS-AAC发送第一存证消息AACUpdate。
所述AACUpdate中包括所述TID REQnew和所述Sig REQ
可选的,所述AACUpdate中还包括AAC的第二数字签名Sig AAC2,所述Sig AAC2是AAC对AACUpdate中Sig AAC2之前的其他信息进行签名计算生成的。如此,AS-AAC可以通过对所述Sig AAC2进行验证以确定AACUpdate在传输过程中是否被篡改。
S112、AS-REQ利用PUB REQ对所述AACUpdate中的Sig REQ进行验证,验证通过后,生成并保存REQ的请求通过记录,使用所述AACUpdate中的TID REQnew替换TID REQ
当AS-AAC和AS-REQ为同一个鉴别服务器时,AAC直接向AS-AAC(也可以表示为AS-REQ)发送AACUpdate,AS-AAC(也可以表示为AS-REQ)利用PUB REQ对AACUpdate中的Sig REQ进行验证,若验证通过,则表明REQ在该时间段发起入网请求并成功入网,基于此,AS-AAC(也可以表示为AS-REQ)生成REQ的请求通过记录,并将请求通过记录保存在本地或远端,为后续收费提供证据。此外,AS-AAC(也可以表示为AS-REQ)还使用AACUpdate中的TID REQnew替换TID REQ,实现TID REQ的更新。
当AS-AAC和AS-REQ为不同鉴别服务器时,AAC向AS-AAC发送AACUpdate,AS-AAC对包括所述TID REQnew和所述Sig REQ在内的信息计算生成AS-AAC的第三数字签名Sig AS_AAC3,再根据包括TID REQnew、Sig REQ和Sig AS_AAC3在内的信息生成第二存证消息ASUpdate,AS-AAC向AS-REQ发送ASUpdate,AS-REQ根据AS-AAC的公钥验证所述Sig AS_AAC3,若验证通过,则再执行后续相关步骤,包括验证Sig REQ,并在验证通过后生成并保存REQ的请求通过记录,以及执行用TID REQnew替换TID REQ的步骤。
在实际应用中,不限定S109和S111的执行顺序,可以先执行S109后执行S111,也可以先执行S111后执行S109,还可以同时执行S109和S111。
可选的,AAC可以先执行S111即发送所述第一存证消息AACUpdate,S112中对所述AACUpdate中的Sig REQ验证通过后,生成第一存证确认消息,AAC接收到所述第一存证确认消息后再执行S109即向REQ发送所述鉴别完成消息AACFinish。
由上可知,本申请提供的身份鉴别方法,通过采用TID REQ作为REQ的身份凭证,采用PUB AAC作为AAC的身份凭证,REQ在接入网络时,向AS-AAC发送鉴别请求消息,请求进行双向身份鉴别,AS-AAC验证PUB AAC的合法性生成Res AAC,AS-REQ验证TID REQ生成Res REQ,然后AS-AAC向AAC返回ASVeri,AAC从ASVeri中获取Res REQ,从而确定REQ的身份合法性,当确定REQ身份合法后,AAC向REQ发送携带有Res AAC的AACAuth,REQ根据Res AAC确定AAC的身份合法性,如此既实现了REQ和AAC的双向身份鉴别,又保障了实体的隐私信息。
请参考图1,S103的ASVeri中的所述Res REQ可以表示REQ的身份合法性鉴别结果为合法、不合法、或空(即Res REQ取值为Null),因此S105的AACAuth中还包括AAC生成的指示标识Flag AAC,Flag AAC用于指示是否需要REQ发送其真实的身份标识ID REQ。例如,若ASVeri中的所述Res REQ表示REQ的身份合法性鉴别结果为空(即Res REQ取值为Null),则Flag AAC标识可以为1,表示需要REQ发送其真实的ID REQ,以便重新对REQ的身份进行验证;若ASVeri中的所述Res REQ表示REQ的身份合法性鉴别结果为合法或不合法,则Flag AAC标识可以为0,表示不需要REQ发送其真实的ID REQ。当需要REQ发送其真实的ID REQ时,则为了保障REQ的隐私安全,REQ可以利用加密证书的公钥对包括ID REQ在内的信息加密生成REQ的身份标识密文EncPub AS,则REQ向AAC发送REQAuth时还可以携带EncPub AS
相应地,AAC还向AS-AAC发送第三鉴权请求消息AACReVeri,所述AACReVeri中包括所述EncPub AS。若AS-AAC与AS-REQ为同一鉴别服务器,则AS-AAC(也可以表示为AS-REQ)可以利用加密证书的私钥解密EncPub AS得到ID REQ,根据ID REQ查找PUB REQ,检查PUB REQ的合法性生成Res REQ,并根据Res REQ生成第三鉴权响应消息ASReVeri。AAC接收所述ASReVeri,并根据ASReVeri中的Res REQ重新确定REQ的身份合法性。
若AS-AAC与AS-REQ为不同的鉴别服务器,则AS-AAC接收所述AACReVeri后,还要向AS-REQ发送包括所述EncPub AS的第四鉴权请求消息AS-AACReVeri,则AS-REQ可以利用加密证书的私钥解密EncPub AS得到ID REQ,根据ID REQ查找PUB REQ,检查PUB REQ的合法性生成Res REQ,并根据Res REQ生成第四鉴权响应消息AS-REQReVeri。AS-AAC接收所述AS-REQReVeri后,根据AS-REQReVeri中的Res REQ生成第三鉴权响应消息ASReVeri;AAC接收所述ASReVeri,并根据ASReVeri中的Res REQ重新确定REQ的身份合法性。
以上实施例中,REQ与AAC使用的消息完整性校验密钥可以是REQ与AAC之间预先共享的,也可以是二者协商得到的,因此本实施例还提供了一种REQ和AAC协商消息完整性校验密钥的方法,参见图2,所述方法包括:
S201、REQ向AAC发送鉴别请求消息ATTACH。
所述ATTACH中还包括REQ生成的第一密钥交换参数KeyInfo REQ。所述KeyInfo REQ包括REQ的临时公钥,其中,密钥交换是指如迪菲·赫尔曼(Diffie-Hellman,简称DH)等密钥交换算法。所述ATTACH中还可以包括Security capabilities REQ,Security capabilities REQ表示REQ支持的安全能力参数信息,包括REQ支持的身份鉴别套件(身份鉴别套件中包含一种或多种身份鉴别方法)、密钥交换算法和/或密钥导出算法等,以供AAC据以选择要使用的特定安全策略。
S202、AAC根据包括AAC生成的第二密钥交换参数KeyInfo AAC对应的临时私钥和所述KeyInfo REQ包括的临时公钥进行密钥交换计算生成第一密钥,根据包括所述第一密钥在内的计算数据利用密钥导出算法计算出消息完整性校验密钥。
若S201中的ATTACH中还包括REQ生成的第一随机数Nonce REQ,则AAC可以根据包括KeyInfo AAC对应的临时私钥和KeyInfo REQ包括的临时公钥进行密钥交换计算生成第一密钥,将所述第一密钥结合包括Nonce REQ和AAC生成的第二随机数Nonce AAC在内的计算数据,利用协商的或预置的密钥导出算法计算消息完整性校验密钥。本申请中,将算法运算时采用的计算对象称为计算数据。协商的密钥导出算法可以是AAC根据REQ发送的Security capabilities REQ而选择使用的密钥导出算法。其中,KeyInfo AAC是AAC产生的密钥交换参数,包括AAC的临时公钥。KeyInfo AAC对应的临时私钥是AAC产生的对应于AAC的临时公钥的临时私钥,即所述临时公钥和临时私钥是一对临时公私钥对。
S203、AAC向REQ发送第一验证消息AACAuth。
所述AACAuth中还包括AAC生成的KeyInfo AAC
当S201中的ATTACH中还包括Nonce REQ时,所述AACAuth中还可以包括AAC生成的第二随机数Nonce AAC
S204、REQ根据包括所述KeyInfo REQ对应的临时私钥和所述KeyInfo AAC包括的临时公钥进行密钥交换计算生成所述第一密钥,根据包括所述第一密钥在内的计算数据利用所述密钥导出算法计算出所述消息完整性校验密钥。
若AACAuth中包括Nonce AAC,则REQ根据包括KeyInfo REQ对应的临时私钥和KeyInfo AAC包括的临时公钥进行密钥交换计算生成所述第一密钥,将所述第一密钥结合包括Nonce REQ和Nonce AAC在内的计算数据,利用协商的或预置的密钥导出算法计算消息完整性校验密钥。协商的密钥导出算法可以是REQ根据AAC发送的Security capabilities AAC而选择使用的密钥导出算法。其中,KeyInfo REQ对应的临时私钥是REQ产生的对应于REQ的临时公钥的临时私钥,即所述临时公钥和临时私钥是一对临时公私钥对。
在实际应用时,为了实现保密通信,REQ和AAC还可以协商会话密钥,用于对会话内容加密。具体地,AACAuth中还可以包括AAC的身份标识ID AAC,AAC根据所述第一密钥结合包括TID REQ和ID AAC在内的计算数据计算出会话密钥(包括数据加密密钥或/和数据完整性校验密钥);对应地,REQ根据所述第一密钥结合包括所述TID REQ和所述ID AAC在内的计算数据计算出会话密钥(包括数据加密密钥或/和数据完整性校验密钥)。
其中,AAC利用上述方式计算会话密钥时,可以将所述第一密钥结合包括所述TID REQ和所述ID AAC在内的计算数据计算出一串密钥数据,该密钥数据可以作为数据加密密钥和/或数据完整性校验密钥,或者,将该密钥数据中的一部分密钥数据作为数据加密密钥,将另一部分密钥数据作为数据完整性校验密钥。REQ利用上述方式计算会话密钥时,可以将所述第一密钥结合包括所述TID REQ和所述ID AAC在内的计算数据计算出一串密钥数据,该密钥数据可以作为数据加密密钥和/或数据完整性校验密钥,或 者,将该密钥数据中的一部分密钥数据作为数据加密密钥,将另一部分密钥数据作为数据完整性校验密钥。
需要说明的是,REQ和/或AAC产生的随机数、身份标识等信息可以在身份鉴别过程中交互的消息中进行传递。正常情况下,接收的消息中携带的随机数和/或身份标识与发送的消息中携带的随机数和/或身份标识应该相同,但在遇到网络抖动或攻击等情况时,可能造成消息中参数信息的丢失或篡改。因此本申请的一些实施例中,还可以通过比较收发消息中的随机数和/或身份标识是否一致来保障鉴别结果的可靠性。
在一些实施例中,当S101的ATTACH中还包括Nonce REQ时,S102的AACVeri中还包括Nonce REQ和Nonce AAC,对应地,S103的ASVeri中还包括Nonce REQ和Nonce AAC,S105的AACAuth中还包括Nonce REQ和Nonce AAC,S107的REQAuth中还包括Nonce AAC。如此,在AAC向REQ发送AACAuth之前,AAC还可以先验证ASVeri中的Nonce AAC和AAC生成的Nonce AAC(也就是AAC通过AACVeri发出去的Nonce AAC)的一致性;类似地,在REQ向AAC发送REQAuth之前,REQ还可以先验证AACAuth中Nonce REQ和REQ生成的Nonce REQ(也就是REQ通过ATTACH发出去的Nonce REQ)的一致性;进一步地,在S108中AAC产生TID REQnew之前,AAC还可对REQAuth中的Nonce AAC和AAC生成的Nonce AAC的一致性进行验证,若验证通过,则执行后续步骤。
在另一些实施例中,S102的AACVeri中还包括AAC的身份标识ID AAC,对应地,S103的ASVeri中还包括ID AAC,则AAC还要验证ASVeri中ID AAC与AAC自身的ID AAC的一致性。
考虑到实际应用中还可能存在REQ为了逃避计费而恶意发送错误的REQ的数字签名的情况,则当AS-AAC和AS-REQ为相同的鉴别服务器时,AAC可以先向AS-AAC(也可以表示为AS-REQ)发送AACUpdate,由AS-AAC(也可以表示为AS-REQ)对AACUpdate中REQ的数字签名Sig REQ进行验证,验证通过后生成第一存证确认消息AS-AACAck,若AAC接收到AS-AACAck,则表明AS-AAC(也可以表示为AS-REQ)已生成并保存REQ的请求通过记录,AAC再向REQ发送AACFinish。
当AS-AAC和AS-REQ为不同的鉴别服务器时,AAC可以先向AS-AAC发送AACUpdate,AS-AAC根据AACUpdate生成第二存证消息AS-AACUpdate,并向AS-REQ发送AS-AACUpdate。AS-REQ对所述AS-AACUpdate中的REQ的数字签名Sig REQ进行验证,若验证通过,则生成第二存证确认消息AS-REQAck,并向AS-AAC发送AS-REQAck;AS-AAC根据AS-REQAck生成第一存证确认消息AS-AACAck,并向AAC发送AS-AACAck,若AAC接收到AS-AACAck,则表明AS-REQ已生成并保存REQ的请求通过记录,则AAC再向REQ发送AACFinish,若AAC在规定时间内未接收到AS-AACAck,则结束此次鉴别过程。
此外,本申请实施例还提供了利用AAC和REQ之间信息交互来确定本次鉴别过程所使用的第一鉴别服务器和/或第二鉴别服务器的方法:
请参考图1,在S101中,REQ主动将其信任的至少一个鉴别服务器的身份标识Route AS添加至ATTACH中,以便AAC根据ATTACH中的Route AS和AAC自身信任的至少一个鉴别服务器的身份标识ID AS_AAC,确定参与身份鉴别的第二鉴别服务器AS-AAC。例如,AAC可以判断Route AS和ID AS_AAC中是否存在至少一个相同的鉴别服务器的身份标识,若存在,即为非漫游情况,AAC从上述至少一个REQ和AAC共同信任的鉴别服务器的身份标识中确定参与身份鉴别的第二鉴别服务器AS-AAC;若不存在,则为漫游情况,AAC需要根据ID AS_AAC确定参与身份鉴别的第二鉴别服务器AS-AAC,并将Route AS发送给AS-AAC,以便AS-AAC根据Route AS确定第一鉴别服务器AS-REQ。
由于REQ和AAC信任的鉴别服务器可以相同也可以不同,当REQ和AAC信任的鉴别服务器相同时,即为非漫游情况;当REQ和AAC信任的鉴别服务器不同时,即为漫游的情况。基于前述实施例,下面结合非漫游和漫游的应用场景,对本申请实施例提供的身份鉴别方法进行介绍。其中,主要针对以下两种情况进行介绍:(1)非漫游情况下,REQ身份保护的身份鉴别方法;(2)漫游情况下,REQ身份保护的身份鉴别方法。
参见图3,为上述(1)情况下的一种身份鉴别方法的实施例,此情形下可以用AS-AAC(也可以用AS-REQ)表示REQ和AAC共同信任的鉴别服务器。在该实施例中,REQ和AAC之间的消息完整性校验密钥的协商过程被并行地融合到了身份鉴别过程中,更便于工程实施。该身份鉴别方法包括:
S301、REQ生成KeyInfo REQ和Nonce REQ,根据需要生成Security capabilities REQ
S302、REQ向AAC发送鉴别请求消息ATTACH。
所述ATTACH中包括Security capabilities REQ、KeyInfo REQ、TID REQ、Nonce REQ和Route AS。其中,Security capabilities REQ为可选字段,表示REQ支持的安全能力参数信息,包括REQ支持的身份鉴别套件、密钥交换算法和/或密钥导出算法等(下文同);KeyInfo REQ是REQ生成的第一密钥交换参数,包括REQ产生的临时公钥;TID REQ表示REQ的临时身份标识,Nonce REQ为REQ产生的第一随机数,Route AS表示REQ信任的鉴别服务器的身份标识。
S303、AAC接收到ATTACH后,执行下述操作(若无特别说明或逻辑上的关系,下述(1)、(2)……编号的动作并不因为有编号而存在必然的先后顺序,全文同),包括:
(1)生成Nonce AAC
(2)判断Route AS与自身信任的鉴别服务器的身份标识是否相同,若相同,则确定为非漫游情况。
需要说明的是,本实施例中判断结果为非漫游情况。
S304、AAC向AS-AAC发送第一鉴权请求消息AACVeri。
所述AACVeri中包括TID REQ、Nonce REQ、ID AAC、Nonce AAC和PUB AAC。其中,ID AAC为可选字段,TID REQ和Nonce REQ应等于ATTACH中的相应字段,Nonce AAC为AAC生成的第二随机数,ID AAC为AAC的身份标识,PUB AAC为AAC的公钥。
S305、AS-AAC接收到AACVeri后,执行下述操作,包括:
(1)检查PUB AAC的合法性,根据检查结果及PUB AAC生成Res AAC
(2)根据TID REQ查找PUB REQ并检查PUB REQ的合法性,根据检查结果及PUB REQ生成Res REQ;其中,Res REQ的取值情况可以分成以下三种:
A.检查结果为合法时,Res REQ包括检查结果及PUB REQ
B.检查结果为不合法时,Res REQ包括检查结果,根据应用场景也可以包括PUB REQ
C.当TID REQ无效,或AS-AAC根据本地策略需要根据REQ的真实身份标识检查REQ的身份合法性,则Res REQ取值为空(Null)或者其他特定值,本申请中以取值为Null为例。
(3)生成存证随机数Nonce AS_AAC;其中,当检查结果为不合法时,可以不产生Nonce AS_AAC,则在后续步骤中ASVeri中不包括Nonce AS_AAC
(4)计算AS-AAC的第一数字签名和第二数字签名Sig AS_AAC1和Sig AS_AAC2
S306、AS-AAC向AAC发送第一鉴权响应消息ASVeri。
所述ASVeri中包括TID REQ、Nonce REQ、Res AAC、Sig AS_AAC1、ID AAC、Nonce AAC、Res REQ、Nonce AS_AAC和Sig AS_AAC2。其中,TID REQ、Nonce REQ、ID AAC、Nonce AAC应分别等于AACVeri中的相应字段;Sig AS_AAC1的签名数据包括TID REQ、Nonce REQ和Res AAC;Sig AS_AAC2的签名数据包括Nonce AAC、Res REQ和Nonce AS_AAC。ID AAC为可选字段,若存在ID AAC,则Sig AS_AAC2的签名数据还包括ID AAC
S307、AAC接收到ASVeri后,执行下述操作,包括:
(1)根据需要生成Security capabilities AAC
(2)若ASVeri中存在ID AAC,则检查ID AAC是否与AAC自身的ID AAC相同;检查Nonce AAC是否与AAC生成的Nonce AAC相同;
(3)验证Sig AS_AAC2
(4)上述检查与验证中任一步不通过,则立即丢弃ASVeri;上述检查与验证通过后,根据Res REQ生成Flag AAC,或者,上述检查与验证通过后,若Res REQ表示REQ为不合法时,则根据本地策略可以丢弃ASVeri或结束本次鉴别过程,否则,根据Res REQ生成Flag AAC
(5)生成KeyInfo AAC
(6)计算AAC的第一数字签名Sig AAC1
其中,Flag AAC用于指示是否需要REQ提供真实的ID REQ;若Res REQ取值为Null,则Flag AAC标识为1(这里标识为1仅仅是个示例),表示需要REQ提供真实的ID REQ,以便重新对REQ的身份进行验证;若Res REQ取值不为Null,则Flag AAC标识为0(这里标识为0仅仅是个示例),表示不需要REQ提供真实的ID REQ
S308、AAC向REQ发送第一验证消息AACAuth。
所述AACAuth包括Security capabilities AAC、KeyInfo AAC、TID REQ、Nonce REQ、Res AAC、Sig AS_AAC1、ID AAC、Nonce AAC、Nonce AS_AAC、Flag AAC和Sig AAC1。其中,Security capabilities AAC为可选字段,表示AAC根据Security capabilities REQ作出的特定安全策略的选择,即AAC确定使用的身份鉴别方法、密钥交换算法和/或密钥导出算法等(下文同);KeyInfo AAC是AAC产生的第二密钥交换参数,包括AAC生成的临时公钥;TID REQ、Nonce REQ、Res AAC、Sig AS_AAC1、Nonce AAC、Nonce AS_AAC应分别等于ASVeri中的相应字段;Sig AAC1的签名数据包括AACAuth中Sig AAC1之前的其他字段。
S309、REQ接收到AACAuth后,执行下述操作,包括:
(1)检查TID REQ和Nonce REQ是否分别与REQ自身的TID REQ、REQ生成的Nonce REQ相同;
(2)获取Res AAC中的PUB AAC,利用PUB AAC验证Sig AAC1
(3)验证Sig AS_AAC1
(4)上述检查与验证通过后,根据AACAuth中的Res AAC得到AAC的身份鉴别结果;
(5)根据包括KeyInfo REQ对应的临时私钥和KeyInfo AAC包括的临时公钥进行密钥交换计算得到第一密钥K,将K结合Nonce AAC、Nonce REQ及其他信息(REQ和AAC采用的其他信息是相同的且可选 的,譬如特定字符串等)利用协商的或预置的密钥导出算法计算消息完整性校验密钥;当然,这一步也可以移至在需要使用消息完整性校验密钥时再执行;
(6)若Flag AAC标识为1,则计算EncPub AS
(7)计算REQ的数字签名Sig REQ
(8)计算MacTag REQ
S310、REQ向AAC发送第二验证消息REQAuth。
所述REQAuth中包括Nonce AAC、EncPub AS、Sig REQ和MacTag REQ。其中,Nonce AAC应等于AACAuth中的相应字段;EncPub AS为REQ的身份标识密文,其是REQ利用加密证书的公钥对包括ID REQ在内的信息加密生成的。Sig REQ是REQ对包括Nonce AS_AAC在内的信息进行签名计算生成的;EncPub AS为可选字段,若Flag AAC标识为0,则REQAuth可以不携带EncPub AS;MacTag REQ的计算过程为:利用消息完整性校验密钥采用完整性校验算法对包括REQAuth中除MacTag REQ外的其他字段在内的信息计算生成MacTag REQ
S311、AAC接收到REQAuth后,执行下述操作,包括:
(1)检查Nonce AAC是否与AAC生成的Nonce AAC相同,若不同,则立即丢弃REQAuth;
(2)根据包括KeyInfo AAC对应的临时私钥和KeyInfo REQ包括的临时公钥进行密钥交换计算得到第一密钥K,将K结合Nonce AAC、Nonce REQ及其他信息(AAC和REQ采用的其他信息是相同的且可选的,譬如特定字符串等)利用协商的或预置的密钥导出算法计算消息完整性校验密钥;
(3)验证MacTag REQ
AAC利用消息完整性校验密钥采用完整性校验算法对包括REQAuth中除MacTag REQ外的其他字段在内的信息在本地计算MacTag REQ(该计算方式与REQ计算MacTag REQ的方式相同),将计算的MacTag REQ与接收到的MacTag REQ进行比较,若一致,则验证通过,若不一致,则验证不通过。
(4)上述检查与验证中任一步不通过,则立即丢弃REQAuth;上述检查与验证通过后,则根据Flag AAC执行下述操作,若Flag AAC标识为0,则验证Sig REQ;若Flag AAC标识为1,则AAC向AS-AAC发送第三鉴权请求消息AACReVeri。
S312、AAC向AS-AAC发送第三鉴权请求消息AACReVeri。
所述AACReVeri包括EncPub AS、ID AAC和Nonce AAC。其中,EncPub AS应等于REQAuth中的EncPub AS;ID AAC为可选字段。
S313、AS-AAC接收到AACReVeri后,执行下述操作,包括:
(1)解密EncPub AS得到ID REQ
(2)根据ID REQ查找对应的PUB REQ
(3)检查PUB REQ的合法性生成Res REQ
(4)根据需要计算Sig AS_AAC4
S314、AS-AAC向AAC发送第三鉴权响应消息ASReVeri。
所述ASReVeri包括ID AAC、Nonce AAC、Res REQ和Sig AS_AAC4。其中,ID AAC为可选字段,AS-AAC根据AACReVeri中是否携带ID AAC确定在ASReVeri中是否携带ID AAC。Sig AS_AAC4为可选字段,其签名数据包括Nonce AAC和Res REQ,当ASReVeri中存在ID AAC时,Sig AS_AAC4的签名数据还包括ID AAC
S315、AAC接收到ASReVeri后,执行下述操作,包括:
(1)若ASReVeri中存在ID AAC,则检查ID AAC是否与AAC自身的ID AAC相同;检查ASReVeri中的Nonce AAC是否与AAC生成的Nonce AAC相同;
(2)若ASReVeri中存在Sig AS_AAC4,则验证Sig AS_AAC4
(3)根据Res REQ中的PUB REQ验证Sig REQ
(4)上述检查与验证通过后,根据ASReVeri中的Res REQ得到REQ的身份鉴别结果;上述检查与验证中任一步不通过,则立即丢弃ASReVeri。
需要说明的是,若Flag AAC标识为1,则表示需要REQ提供真实的ID REQ,此时S310中REQ向AAC发送的REQAuth中携带EncPub AS,AAC需要向AS-AAC发送包含EncPub AS的AACReVeri,以便AS-AAC对EncPub AS解密得到ID REQ,再根据ID REQ查找PUB REQ并检查PUB REQ的合法性,从而生成Res REQ,即需要执行S312至S315;若Flag AAC标识为0,则表示不需要REQ提供真实的ID REQ,此时S310中REQ向AAC发送的REQAuth中不携带EncPub AS,即AAC无需执行S312至S315,在S311中的检查和验证均通过后直接执行S316及后续步骤。
S316、AAC确定REQ的身份合法后产生TID REQnew,根据需要计算AAC的第二数字签名Sig AAC2
S317、AAC向AS-AAC发送第一存证消息AACUpdate。
所述AACUpdate包括TID REQ、TID REQnew、ID AAC、Nonce AAC、Sig REQ和Sig AAC2。其中,ID AAC、Sig AAC2为可选字段;TID REQ应等于ATTACH中的TID REQ;Sig REQ应等于REQAuth中的Sig REQ;Sig AAC2的签 名数据包括AACUpdate中Sig AAC2之前的其他字段。
S318、AS-AAC接收到AACUpdate后,执行下述操作,包括:
(1)若AACUpdate中存在Sig AAC2,则验证Sig AAC2
(2)验证Sig REQ
(3)上述验证通过后,则保存TID REQnew并替换TID REQ;上述验证中任一步不通过,则立即丢弃AACUpdate;
(4)根据需要计算Sig AS_AAC5
S319、AS-AAC向AAC发送第一存证确认消息ASAck。
所述ASAck包括ID AAC、Nonce AAC和Sig AS_AAC5。其中,ID AAC、Sig AS_AAC5为可选字段,Sig AS_AAC5的签名数据包括ASAck中Sig AS_AAC5之前的其他字段。
S320、AAC接收到ASAck后,执行下述操作,包括:
(1)若ASAck中存在ID AAC,则检查ID AAC是否与AAC自身的ID AAC相同;检查Nonce AAC是否与AAC生成的Nonce AAC相同;
(2)若ASAck中存在Sig AS_AAC5,则验证Sig AS_AAC5
(3)上述检查与验证通过后,计算MacTag AAC,上述检查与验证中任一步不通过,则立即丢弃ASAck;
(4)计算会话密钥。
其中,AAC将S311中计算的K结合Nonce AAC、Nonce REQ、ID AAC、TID REQnew及其他信息(AAC和REQ采用的其他信息是相同的且可选的,譬如特定字符串等)利用密钥导出算法计算出会话密钥(包括数据加密密钥或/和数据完整性校验密钥),用于REQ和AAC后续的保密通信。
S321、AAC向REQ发送鉴别完成消息AACFinish。
所述AACFinish包括TID REQnew和MacTag AAC。其中,TID REQnew应等于AACUpdate中的TID REQnew,MacTag AAC的计算过程为:利用消息完整性校验密钥采用完整性校验算法对包括AACFinsh中除MacTag AAC外的其他字段在内的信息计算生成MacTag REQ
S322、REQ接收到AACFinish后,执行下述操作,包括:
(1)验证MacTag AAC
REQ利用消息完整性校验密钥采用完整性校验算法对包括AACFinsh中除MacTag AAC外的其他字段在内的信息在本地计算MacTag AAC(该计算方式与AAC计算MacTag AAC的方式相同),将计算得到的MacTag AAC与接收到的MacTag AAC进行比较,若一致,则验证通过,否则,验证不通过。
(2)保存TID REQnew并替换TID REQ
(3)计算会话密钥。
其中,REQ将S309中计算的K结合Nonce AAC、Nonce REQ、ID AAC、TID REQnew及其他信息(REQ和AAC采用的其他信息是相同的且可选的,譬如特定字符串等)利用密钥导出算法计算出会话密钥(包括数据加密密钥或/和数据完整性校验密钥),用于REQ和AAC后续的保密通信。
由此,实现了REQ和AAC的双向身份鉴别,在该身份鉴别过程中,REQ以TID REQ作为身份凭证,避免了真实身份信息泄露,保障隐私安全。此外,通过S316至S318实现了对REQ访问网络行为的存证,为后续收费、访问追溯或避免恶意计费等提供依据。
参见图4,为上述(2)情况下的一种身份鉴别方法的实施例。在该实施例中,REQ和AAC之间的消息完整性校验密钥的协商过程被并行地融合到了身份鉴别过程中,更便于工程实施。该身份鉴别方法包括:
S401、REQ生成KeyInfo REQ和Nonce REQ,根据需要生成Security capabilities REQ
S402、REQ向AAC发送鉴别请求消息ATTACH。
所述ATTACH中包括Security capabilities REQ、KeyInfo REQ、TID REQ、Nonce REQ和Route AS。其中,Security capabilities REQ为可选字段,TID REQ表示REQ的临时身份标识,Nonce REQ为REQ产生的第一随机数,Route AS表示REQ信任的鉴别服务器的身份标识。
S403、AAC接收到ATTACH后,执行下述操作,包括:
(1)生成Nonce AAC
(2)判断Route AS与自身信任的鉴别服务器的身份标识是否相同,若不同,则确定为漫游情况,可以从自身信任的至少一个鉴别服务器中确定AS-AAC,根据Route AS确定AS-REQ。
需要说明的是,本实施例中判断结果为漫游情况。
S404、AAC向AS-AAC发送第一鉴权请求消息AACVeri。
所述AACVeri中包括TID REQ、Nonce REQ、ID AAC、Nonce AAC和PUB AAC。其中,ID AAC为可选字段,TID REQ和Nonce REQ应等于ATTACH中的相应字段,Nonce AAC为AAC生成的第二随机数,ID AAC为AAC的身份标识,PUB AAC为AAC的公钥。
S405、AS-AAC接收到AACVeri后,执行下述操作,包括:
(1)检查PUB AAC的合法性,根据检查结果和PUB AAC生成Res AAC
(2)根据需要计算Sig AS_AAC4
S406、AS-AAC向AS-REQ发送第二鉴权请求消息AS-AACVeri。
所述AS-AACVeri中包括TID REQ、Nonce REQ、Res AAC、ID AAC、Nonce AAC和Sig AS_AAC4。其中,TID REQ、Nonce REQ、Nonce AAC应分别等于AACVeri中的相应字段。Sig AS_AAC4的签名数据包括TID REQ、Nonce REQ、Res AAC、ID AAC和Nonce AAC
S407、AS-REQ接收到AS-AACVeri后,执行下述操作,包括:
(1)若AS-AACVeri中存在Sig AS_AAC4,则验证Sig AS_AAC4
(2)验证通过后,根据TID REQ查找PUB REQ并检查PUB REQ的合法性,根据检查结果和PUB REQ生成Res REQ;其中,Res REQ的取值情况可以分成以下三种:
A.检查结果为合法时,Res REQ包括检查结果及PUB REQ
B.检查结果为不合法时,Res REQ包括检查结果,根据应用场景也可以包括PUB REQ
C.当TID REQ无效,或AS-REQ根据本地策略需要根据REQ的真实身份标识检查REQ的身份合法性,则Res REQ取值为空(Null)或者其他特定值,本申请中以取值为Null为例。
(3)生成存证随机数Nonce AS_REQ;其中,当检查结果为不合法时,可以不产生Nonce AS_REQ,则在后续步骤中AS-REQVeri中不包括Nonce AS_REQ
(4)计算AS-REQ的第一数字签名和第二数字签名Sig AS_REQ1和Sig AS_REQ2
S408、AS-REQ向AS-AAC发送第二鉴权响应消息AS-REQVeri。
所述AS-REQVeri中包括TID REQ、Nonce REQ、Res AAC、Sig AS_REQ1、ID AAC、Nonce AAC、Res REQ、Nonce AS_REQ、Sig AS_REQ2。其中,TID REQ、Nonce REQ、Res AAC、ID AAC、Nonce AAC应分别等于AS-AACVeri中的相应字段;Sig AS_REQ1的签名数据包括TID REQ、Nonce REQ和Res AAC,Sig AS_REQ2的签名数据包括ID AAC、Nonce AAC、Res REQ和Nonce AS_REQ
S409、AS-AAC接收到AS-REQVeri后,执行下述操作,包括:
(1)验证Sig AS_REQ2
(2)验证通过后,计算AS-AAC的第二数字签名Sig AS_AAC2
S410、AS-AAC向AAC发送第一鉴权响应消息ASVeri。
所述ASVeri中包括TID REQ、Nonce REQ、Res AAC、Sig AS_REQ1、ID AAC、Nonce AAC、Res REQ、Nonce AS_REQ和Sig AS_AAC2。其中,ID AAC为可选字段。Sig AS_AAC2的签名数据包括Nonce AAC、Res REQ和Nonce AS_REQ;ID AAC为可选字段,若存在ID AAC,则Sig AS_AAC2的签名数据还包括ID AAC
S411、AAC接收到ASVeri后,执行下述操作,包括:
(1)根据需要生成Security capabilites AAC
(2)若ASVeri中存在ID AAC,则检查ID AAC是否与AAC自身的ID AAC相同;检查Nonce AAC是否与AAC生成的Nonce AAC相同;
(3)验证Sig AS_AAC2
(4)上述检查与验证中任一步不通过,则立即丢弃ASVeri;上述检查与验证通过后,根据Res REQ生成Flag AAC,或者,上述检查与验证通过后,若Res REQ表示REQ为不合法时,则根据本地策略可以丢弃ASVeri或结束本次鉴别过程,否则,根据Res REQ生成Flag AAC
(5)生成KeyInfo AAC
(6)计算AAC的第一数字签名Sig AAC1
其中,Flag AAC用于指示是否需要REQ提供真实的ID REQ。若Res REQ取值为Null,则Flag AAC标识为1(这里标识为1仅仅是个示例),表示需要REQ提供真实的ID REQ,以便重新对REQ的身份进行验证;若Res REQ取值不为Null,则Flag AAC标识为0(这里标识为0仅仅是个示例),表示不需要REQ提供真实的ID REQ
S412、AAC向REQ发送第一验证消息AACAuth。
所述AACAuth中包括Security capabilites AAC、KeyInfo AAC、TID REQ、Nonce REQ、Res AAC、Sig AS_REQ1、ID AAC、Nonce AAC、Nonce AS_REQ、Flag AAC和Sig AAC1。其中,Security capabilites AAC为可选字段,TID REQ、Nonce REQ、Res AAC、Sig AS_REQ1、Nonce AAC、Nonce AS_REQ应分别等于ASVeri中的相应字段,Sig AAC1的签名数据包括AACAuth中Sig AAC1之前的其他字段。
S413、REQ接收到AACAuth后,执行下述操作,包括:
(1)检查TID REQ和Nonce REQ是否分别与REQ自身的TID REQ、REQ生成的Nonce REQ相同;
(2)获取Res AAC中的PUB AAC,利用PUB AAC验证Sig AAC1
(3)验证Sig AS_REQ1
(4)上述检查与验证通过后,根据AACAuth中的Res AAC得到AAC的身份鉴别结果;
(5)根据包括KeyInfo REQ对应的临时私钥和KeyInfo AAC包括的临时公钥进行密钥交换计算得到第一密钥K,将K结合Nonce AAC、Nonce REQ及其他信息(REQ和AAC采用的其他信息是相同的且可选的,譬如特定字符串等)利用协商的或预置的密钥导出算法计算消息完整性校验密钥;当然,这一步也可以移至在需要使用消息完整性校验密钥时再执行;
(6)若Flag AAC标识为1,则计算EncPub AS
(7)计算REQ的数字签名Sig REQ
(8)计算MacTag REQ
S414、REQ向AAC发送第二验证消息REQAuth。
所述REQAuth中包括Nonce AAC、EncPub AS、Sig REQ和MacTag REQ。其中,Nonce AAC应等于AACAuth中的Nonce AAC;EncPub AS是REQ利用加密证书的公钥对包括ID REQ在内的信息加密生成的;Sig REQ是REQ对包括Nonce AS_REQ在内的信息进行签名计算生成的;EncPub AS为可选字段,若Flag AAC标识为0,则REQAuth可以不携带EncPub AS;MacTag REQ的计算过程如图3实施例中所述。
S415、AAC接收到REQAuth后,执行下述操作,包括:
(1)检查Nonce AAC是否与AAC生成的Nonce AAC相同;
(2)根据包括KeyInfo AAC对应的临时私钥和KeyInfo REQ包括的临时公钥进行密钥交换计算得到第一密钥K,将K结合Nonce AAC、Nonce REQ及其他信息(AAC和REQ采用的其他信息是相同的且可选的,譬如特定字符串等)利用协商的或预置的密钥导出算法计算消息完整性校验密钥;
(3)验证MacTag REQ;验证过程如图3实施例中所述;
(4)上述检查与验证中任一步不通过,则立即丢弃REQAuth;上述检查与验证通过后,则根据Flag AAC执行下述操作,若Flag AAC标识为0,则验证Sig REQ;若Flag AAC标识为1,则AAC向AS-AAC发送第三鉴权请求消息AACReVeri。
S416、AAC向AS-AAC发送第三鉴权请求消息AACReVeri。
所述AACReVeri包括EncPub AS、ID AAC和Nonce AAC。其中,EncPub AS应等于REQAuth中的EncPub AS;ID AAC为可选字段。
S417、AS-AAC向AS-REQ发送第四鉴权请求消息AS-AACReVeri。
所述AS-AACReVeri是AS-AAC根据AACReVeri生成的,所述AS-AACReVeri包括EncPub AS、ID AAC和Nonce AAC
S418、AS-REQ接收到AS-AACReVeri后,执行下述操作,包括:
(1)解密EncPub AS得到ID REQ
(2)根据解密得到的ID REQ查找对应的PUB REQ
(3)检查PUB REQ的合法性,根据检查结果生成Res REQ
(4)根据需要计算Sig AS_REQ3
S419、AS-REQ向AS-AAC发送第四鉴权响应消息AS-REQReVeri。
所述AS-REQReVeri包括ID AAC、Nonce AAC、Res REQ和Sig AS_REQ3。其中,ID AAC、Nonce AAC应分别等于AS-AACReVeri中的相应字段;Sig AS_REQ3为可选字段,Sig AS_REQ3的签名数据包括AS-REQReVeri中Sig AS_REQ3之前的其他字段。
S420、AS-AAC接收到AS-REQReVeri后,执行下述操作,包括:
(1)若AS-REQReVeri中存在Sig AS_REQ3,则验证Sig AS_REQ3
(2)验证通过后,根据需要计算Sig AS_AAC5
S421、AS-AAC向AAC发送第三鉴权响应消息ASReVeri。
所述ASReVeri包括ID AAC、Nonce AAC、Res REQ和Sig AS_AAC5。其中,ID AAC为可选字段;Sig AS_AAC5为可选字段,其签名数据包括Nonce AAC和Res REQ,当ASReVeri中携带有ID AAC时,则Sig AS_AAC5的签名数据还包括ID AAC
S422、AAC接收到ASReVeri后,执行下述操作,包括:
(1)若ASReVeri中存在ID AAC,则检查ID AAC是否与AAC自身的ID AAC相同;检查ASReVeri中的Nonce AAC是否与AAC生成的Nonce AAC相同;
(2)若ASReVeri中存在Sig AS_AAC5,则验证Sig AS_AAC5
(3)根据Res REQ中的PUB REQ验证Sig REQ
(4)上述检查与验证通过后,根据ASReVeri中的Res REQ得到REQ的身份鉴别结果;上述检查与验证中任一步不通过,则立即丢弃ASReVeri。
需要说明的是,若Flag AAC标识为1,则表示需要REQ提供真实的ID REQ,此时S414中REQ向AAC发送的REQAuth中携带EncPub AS,且需要执行S416至S422,以便AS-REQ对EncPub AS解密得到ID REQ, 再根据ID REQ查找PUB REQ并检查PUB REQ的合法性,从而生成Res REQ;若Flag AAC标识为0,则表示不需要REQ提供真实的ID REQ,此时S414中REQ向AAC发送的REQAuth中不携带EncPub AS,即AAC不必执行S416至S422,在S415中的检查和验证均通过后直接执行S423及后续步骤。
S423、AAC确定REQ的身份合法后产生TID REQnew,根据需要计算AAC的第二数字签名Sig AAC2
S424、AAC向AS-AAC发送第一存证消息AACUpdate。
所述AACUpdate包括TID REQ、TID REQnew、ID AAC、Nonce AAC、Sig REQ和Sig AAC2。其中,ID AAC、Sig AAC2为可选字段;Sig REQ应等于REQAuth中的Sig REQ
S425、AS-AAC接收到AACUpdate后,执行下述操作,包括:
(1)若AACUpdate中存在Sig AAC2,则验证Sig AAC2
(2)根据需要计算AS-AAC的第三数字签名Sig AS_AAC3
S426、AS-AAC向AS-REQ发送第二存证消息ASUpdate。
所述ASUpdate是根据AACUpdate生成的,所述ASUpdate包括TID REQ、TID REQnew、ID AAC、Sig REQ和Sig AS_AAC3。其中,TID REQ、TID REQnew、Sig REQ应分别等于AACUpdate中的相应字段;Sig AS_AAC3为可选字段,其签名数据包括ASUpdate中Sig AS_AAC3之前的其他字段。
S427、AS-REQ接收到ASUpdate后,执行下述操作,包括:
(1)若ASUpdate中存在Sig AS_AAC3,则验证Sig AS_AAC3
(2)验证Sig REQ
(3)验证通过后,保存TID REQnew并替换TID REQ
(4)根据需要计算Sig AS_REQ4
S428、AS-REQ向AS-AAC发送第二存证确认消息AS-REQAck。
所述AS-REQAck包括ID AAC和Sig AS_REQ4。其中,Sig AS_REQ4为可选字段,其签名数据包括ID AAC
S429、AS-AAC接收到AS-REQAck后,执行下述操作,包括:
(1)若AS-REQAck中存在Sig AS_REQ4,则验证Sig AS_REQ4
(2)根据需要计算Sig AS_AAC6
S430、AS-AAC向AAC发送第一存证确认消息AS-AACAck。
所述AS-AACAck中包括ID AAC、Nonce AAC和Sig AS_AAC6。其中,Sig AS_AAC6为可选字段,其签名数据包括Nonce AAC;ID AAC为可选字段,当AS-AACAck中存在ID AAC时Sig AS_AAC6的签名数据还包括ID AAC
S431、AAC在接收到AS-AACAck后,执行下述操作,包括:
(1)若AS-AACAck中存在ID AAC,则检查ID AAC是否与AAC自身的ID AAC相同;检查Nonce AAC是否与AAC生成的Nonce AAC相同;
(2)若AS-AACAck中存在Sig AS_AAC6,则验证Sig AS_AAC6
(3)上述检查与验证通过后,计算MacTag AAC;上述检查与验证中任一步不通过,则立即丢弃AS-AACAck;
(4)计算会话密钥。
其中,AAC将S415中计算的K结合Nonce AAC、Nonce REQ、ID AAC、TID REQnew及其他信息(AAC和REQ采用的其他信息是相同的且可选的,譬如特定字符串等)利用密钥导出算法计算出会话密钥(包括数据加密密钥或/和数据完整性校验密钥),用于REQ和AAC后续的保密通信。
S432、AAC向REQ发送鉴别完成消息AACFinish。
所述AACFinish中包括TID REQnew和MacTag AAC。其中,TID REQnew应等于AACUpdate中的TID REQnew。MacTag AAC的计算如图3实施例中所述。
S433、REQ接收到AACFinish后,执行下述操作,包括:
(1)验证MacTag AAC;验证过程如图3实施例中所述;
(2)保存TID REQnew并替换TID REQ
(3)计算会话密钥。
其中,REQ将S413中计算的K结合Nonce AAC、Nonce REQ、ID AAC、TID REQnew及其他信息(REQ和AAC采用的其他信息是相同的且可选的,譬如特定字符串等)利用密钥导出算法计算出会话密钥(包括数据加密密钥或/和数据完整性校验密钥),用于REQ和AAC后续的保密通信。
由此,实现REQ和AAC的双向身份鉴别,在该身份鉴别过程中,未直接传输REQ的真实身份,避免了REQ真实身份信息泄露,保障隐私安全。此外,通过S424至S430实现了对REQ访问网络行为的存证,为后续收费提供证据,避免了恶意计费现象产生。
在上述各实施例中,每条消息还可以携带一个杂凑值HASH X_Y,该杂凑值HASH X_Y是该消息的发送方实体X利用杂凑算法对接收到的对端实体Y发送的最新前序消息计算得到的,用于对端实体Y来验证实体X是否接收到完整的最新前序消息。其中,HASH REQ_AAC表示REQ对接收到的AAC发送的 最新前序消息计算的杂凑值,HASH AAC_REQ表示AAC对接收到的REQ发送的最新前序消息计算的杂凑值,HASH AAC_AS-AAC表示AAC对接收到的AS-AAC发送的最新前序消息计算的杂凑值,HASH AS-AAC _AAC表示AS-AAC对接收到的AAC发送的最新前序消息计算的杂凑值,HASH AS-AAC_AS-REQ表示AS-AAC对接收到的AS-REQ发送的最新前序消息计算的杂凑值,HASH AS-REQ_AS-AAC表示AS-REQ对接收到的AS-AAC发送的最新前序消息计算的杂凑值。若发送方实体X当前发送的消息为实体X和实体Y之间交互的首条消息,意味着实体X未曾收到对端实体Y发送的前序消息,则该条消息中HASH X_Y可以不存在或者无意义。
对应的,对端实体Y接收到实体X发送的消息后,若该条消息中包含HASH X_Y,则当实体Y未曾向实体X发送过前序消息时,实体Y忽略HASH X_Y;当实体Y曾向实体X发送过前序消息时,实体Y利用杂凑算法对之前向实体X发送的最新前序消息在本地计算杂凑值,并与接收到的消息中携带的杂凑值HASH X_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发送的前序消息。
上述图3至图4所对应实施例中的可选字段和可选操作,在说明书附图的图3至图4中用“*”表示。以上所有实施例涉及的消息中所包括的各个内容不限定顺序,并且在没有特别说明的情况下,不限定消息接收方收到消息后对相关消息的操作顺序以及对消息中所包括的内容进行处理的顺序。
基于图1至图4对应的方法实施例,参见图5,本申请实施例还提供了一种请求设备REQ,包括:
发送模块510,用于向鉴别接入控制器发送鉴别请求消息,所述鉴别请求消息中包括所述请求设备的临时身份标识;
接收模块520,用于接收所述鉴别接入控制器发送的第一验证消息,所述第一验证消息中包括所述鉴别接入控制器的鉴权结果、第一鉴别服务器的第一数字签名、所述第一鉴别服务器生成的存证随机数和所述鉴别接入控制器的第一数字签名;
验证模块530,用于验证所述第一鉴别服务器的第一数字签名以及根据所述鉴别接入控制器的鉴权结果中携带的所述鉴别接入控制器的公钥,验证所述鉴别接入控制器的第一数字签名,验证通过后,根据所述鉴别接入控制器的鉴权结果获得所述鉴别接入控制器的身份合法性鉴别结果;
发送模块510,还用于在确定所述鉴别接入控制器的身份合法后,向所述鉴别接入控制器发送第二验证消息,所述第二验证消息包括所述请求设备的数字签名;其中,所述请求设备的数字签名是对包括所述第一鉴别服务器的存证随机数在内的信息进行签名计算生成的;
接收模块520,还用于接收所述鉴别接入控制器发送的鉴别完成消息,所述鉴别完成消息中包括所述请求设备的新临时身份标识,所述新临时身份标识是所述鉴别接入控制器根据所述请求设备的鉴权结果中携带的所述请求设备的公钥对所述请求设备的数字签名验证通过后生成的;
更新模块540,用于使用所述鉴别完成消息中所述请求设备的新临时身份标识替换所述请求设备的临时身份标识。
可选的,所述鉴别完成消息中还包括所述鉴别接入控制器生成的第二消息完整性校验码,所述第二消息完整性校验码是所述鉴别接入控制器利用其与所述请求设备之间的消息完整性校验密钥对包括所述鉴别完成消息中除所述第二消息完整性校验码外的其他字段计算生成的;
则验证模块530还用于对所述鉴别完成消息中的第二消息完整性校验码进行验证。
可选的,所述鉴别请求消息中还包括所述请求设备生成的第一密钥交换参数,所述第一验证消息中还包括所述鉴别接入控制器生成的第二密钥交换参数;所述请求设备还包括:
第一计算模块,用于根据包括所述第一密钥交换参数对应的临时私钥和所述第二密钥交换参数所包括的临时公钥进行密钥交换计算生成第一密钥,根据包括所述第一密钥在内的计算数据利用密钥导出算法计算出所述消息完整性校验密钥。
可选的,所述鉴别请求消息中还包括所述请求设备生成的第一随机数,所述第一验证消息中还包括所述第一随机数和所述鉴别接入控制器生成的第二随机数;
验证模块530还用于验证所述第一验证消息中的第一随机数和所述请求设备生成的第一随机数的一致性;
所述第一计算模块计算所述消息完整性校验密钥的计算数据还包括所述第一随机数和所述第二随机数。
可选的,所述第一验证消息中还包括所述鉴别接入控制器的身份标识;
所述请求设备还包括:
第二计算模块,用于根据包括所述第一密钥、所述请求设备的临时身份标识和所述鉴别接入控制器的身份标识在内的信息计算用于后续保密通信的会话密钥。
可选的,所述请求设备向所述鉴别接入控制器发送的消息还包括所述请求设备对接收到的所述鉴别接入控制器发送的最新前序消息计算的杂凑值。
参见图6,本申请实施例还提供了一种鉴别接入控制器AAC,包括:
接收模块610,用于接收请求设备发送的鉴别请求消息,所述鉴别请求消息中包括所述请求设备的临时身份标识;
发送模块620,用于向所述鉴别接入控制器信任的第二鉴别服务器发送第一鉴权请求消息,所述第一鉴权请求消息包括所述请求设备的临时身份标识和所述鉴别接入控制器的公钥;
接收模块610,还用于接收所述第二鉴别服务器发送的第一鉴权响应消息,所述第一鉴权响应消息包括所述鉴别接入控制器的鉴权结果、所述请求设备信任的第一鉴别服务器的第一数字签名、所述请求设备的鉴权结果、所述第一鉴别服务器生成的存证随机数和所述第二鉴别服务器的第二数字签名;
验证模块630,用于验证所述第二鉴别服务器的第二数字签名;
发送模块620,还用于在所述第二鉴别服务器的第二数字签名验证通过后,向所述请求设备发送第一验证消息,所述第一验证消息中包括所述鉴别接入控制器的鉴权结果、所述第一鉴别服务器的第一数字签名、所述第一鉴别服务器生成的存证随机数和所述鉴别接入控制器的第一数字签名;
接收模块610,还用于接收所述请求设备发送的第二验证消息,所述第二验证消息包括所述请求设备的数字签名;所述请求设备的数字签名是对包括所述第一鉴别服务器的存证随机数在内的信息进行签名计算生成的;
验证模块630,还用于利用所述请求设备的鉴权结果中携带的所述请求设备的公钥对所述请求设备的数字签名进行验证;
生成模块640,用于根据所述请求设备的鉴权结果获得所述请求设备的身份合法性鉴别结果,在所述请求设备的数字签名验证通过且在确定所述请求设备的身份合法后产生所述请求设备的新临时身份标识,再生成鉴别完成消息和第一存证消息;其中,所述鉴别完成消息中包括所述请求设备的新临时身份标识;所述第一存证消息中包括所述请求设备的新临时身份标识和所述请求设备的数字签名;
发送模块620,还用于通过所述第二鉴别服务器向所述请求设备信任的第一鉴别服务器发送所述第一存证消息,以及向所述请求设备发送所述鉴别完成消息。
可选的,发送模块620,还用于发送所述第一存证消息,并在通过接收模块610接收第一存证确认消息后,向所述请求设备发送所述鉴别完成消息;
所述第一存证确认消息是第一鉴别服务器对所述第一存证消息中的所述请求设备的数字签名验证通过后生成的。
可选的,发送模块620发送的鉴别完成消息中还包括所述鉴别接入控制器生成的第二消息完整性校验码,所述第二消息完整性校验码是所述鉴别接入控制器利用其与所述请求设备之间的消息完整性校验密钥对包括所述鉴别完成消息中除所述第二消息完整性校验码外的其他字段计算生成的。
可选的,所述鉴别请求消息中还包括所述请求设备生成的第一密钥交换参数,所述第一验证消息中还包括所述鉴别接入控制器生成的第二密钥交换参数;所述鉴别接入控制器还包括:
第一计算模块,用于根据包括所述第二密钥交换参数对应的临时私钥和所述第一密钥交换参数所包括的临时公钥进行密钥交换计算生成第一密钥,根据包括所述第一密钥在内的计算数据利用密钥导出算法计算出所述消息完整性校验密钥。
可选的,所述鉴别请求消息中还包括所述请求设备生成的第一随机数,所述第一鉴权请求消息中还包括所述第一随机数和所述鉴别接入控制器生成的第二随机数;
所述第一鉴权响应消息中还包括所述第一随机数和所述第二随机数,所述第一验证消息中还包括所述第一随机数和所述第二随机数,所述第二验证消息中还包括所述第二随机数;
验证模块630,还用于在向所述请求设备发送第一验证消息之前,验证所述第一鉴权响应消息中的第二随机数和所述鉴别接入控制器生成的第二随机数的一致性;以及在产生所述请求设备的新临时身份标识之前,对所述第二验证消息中的第二随机数和所述鉴别接入控制器生成的第二随机数的一致性进行验证;
所述第一计算模块计算所述消息完整性校验密钥的计算数据还包括所述第一随机数和所述第二随机数。
可选的,所述鉴别请求消息中还包括所述请求设备支持的安全能力参数信息,所述鉴别接入控制器还包括:
第一确定模块,用于根据所述安全能力参数信息确定所述鉴别接入控制器使用的特定安全策略,则所述第一验证消息中还包括所述特定安全策略。
可选的,所述鉴别请求消息还包括所述请求设备信任的至少一个鉴别服务器的身份标识,所述鉴别接入控制器还包括:
第二确定模块,用于根据所述请求消息中所述请求设备信任的至少一个鉴别服务器的身份标识和所述鉴别接入控制器信任的鉴别服务器的身份标识,确定所述第二鉴别服务器。
可选的,所述第二验证消息中还包括所述请求设备生成的第一消息完整性校验码,所述第一消息完整性校验码是所述请求设备利用其与所述鉴别接入控制器之间的消息完整性校验密钥对包括所述第二验证消息中除所述第一消息完整性校验码外的其他字段计算生成的;
则验证模块630,还用于在所述鉴别接入控制器产生所述请求设备的新临时身份标识之前,对所述第一消息完整性校验码进行验证。
可选的,当所述请求设备的鉴权结果表示需要所述请求设备发送其真实的身份标识时,则所述鉴别接入控制器生成的所述第一验证消息中还包括指示标识,所述指示标识用于指示所述请求设备发送其真实的身份标识;
则所述第二验证消息中还包括所述请求设备的身份标识密文,所述请求设备的身份标识密文是所述请求设备利用加密证书的公钥对所述请求设备的身份标识加密生成的;
则发送模块620,还用于向所述第二鉴别服务器发送第三鉴权请求消息,所述第三鉴权请求消息中包括所述请求设备的身份标识密文;
接收模块610,还用于接收所述第二鉴别服务器发送的第三鉴权响应消息,所述第三鉴权响应消息中包括所述请求设备的鉴权结果;
则验证模块630,还用于根据所述第三鉴权响应消息中携带的所述请求设备的鉴权结果重新确定所述请求设备的身份合法性。
可选的,所述第一鉴权请求消息中还包括所述鉴别接入控制器的身份标识;则所述第一鉴权响应消息中还包括所述鉴别接入控制器的身份标识;
验证模块630,还用于在向所述请求设备发送第一验证消息之前,验证所述第一鉴权响应消息中的所述鉴别接入控制器的身份标识和所述鉴别接入控制器自身的身份标识的一致性。
可选的,所述第一验证消息中还包括所述鉴别接入控制器的身份标识;
所述鉴别接入控制器还包括:
第二计算模块,用于根据包括所述第一密钥、所述请求设备的临时身份标识和所述鉴别接入控制器的身份标识在内的信息计算用于后续保密通信的会话密钥。
可选的,所述鉴别接入控制器向所述请求设备发送的消息还包括所述鉴别接入控制器对接收到的所述请求设备发送的最新前序消息计算的杂凑值;所述鉴别接入控制器向所述第二鉴别服务器发送的消息还包括所述鉴别接入控制器对接收到的所述第二鉴别服务器发送的最新前序消息计算的杂凑值。
参见图7,本申请实施例还提供了一种第二鉴别服务器AS-AAC,第二鉴别服务器AS-AAC为鉴别接入控制器信任的鉴别服务器,包括:
接收模块710,用于接收鉴别接入控制器发送的第一鉴权请求消息,所述第一鉴权请求消息包括请求设备的临时身份标识和所述鉴别接入控制器的公钥;
发送模块720,用于向所述鉴别接入控制器发送第一鉴权响应消息,所述第一鉴权响应消息包括所述鉴别接入控制器的鉴权结果、所述请求设备信任的第一鉴别服务器的第一数字签名、所述请求设备的鉴权结果、所述第一鉴别服务器生成的存证随机数和所述第二鉴别服务器的第二数字签名;
接收模块710,还用于接收所述鉴别接入控制器生成的第一存证消息,所述第一存证消息中包括所述请求设备的新临时身份标识和所述请求设备的数字签名;所述请求设备的数字签名是所述请求设备对包括所述第一鉴别服务器的存证随机数在内的信息进行签名计算生成的。
可选的,所述第一存证消息中还包括所述鉴别接入控制器的第二数字签名,所述鉴别接入控制器的第二数字签名是对所述第一存证消息中所述鉴别接入控制器的第二数字签名之前的其他信息进行签名计算生成的;
则所述第二鉴别服务器还包括:
验证模块,用于对所述鉴别接入控制器的第二数字签名进行验证。
可选的,所述第一鉴别服务器和所述第二鉴别服务器相同时,所述第二鉴别服务器还包括:
第一处理模块,用于检查所述鉴别接入控制器的公钥的合法性生成所述鉴别接入控制器的鉴权结果;根据所述请求设备的临时身份标识查找并检查所述请求设备的公钥的合法性,产生所述请求设备的鉴权结果并产生存证随机数;
第一生成模块,用于根据包括所述鉴别接入控制器的鉴权结果在内的信息计算所述第一鉴别服务器的第一数字签名,根据包括所述请求设备的鉴权结果和所述存证随机数在内的信息计算所述第二鉴别服务器的第二数字签名。
可选的,所述第一鉴别服务器和所述第二鉴别服务器不同时,则所述第二鉴别服务器还包括:
第二处理模块,用于检查所述鉴别接入控制器的公钥的合法性,产生所述鉴别接入控制器的鉴权结果;
第二生成模块,用于根据所述第一鉴权请求消息生成第二鉴权请求消息,所述第二鉴权请求消息包括所述请求设备的临时身份标识和所述鉴别接入控制器的鉴权结果;
发送模块720,还用于向所述第一鉴别服务器发送所述第二鉴权请求消息;
接收模块710,还用于接收所述第一鉴别服务器发送的第二鉴权响应消息,所述第二鉴权响应消息包括所述鉴别接入控制器的鉴权结果、所述第一鉴别服务器的第一数字签名、所述请求设备的鉴权结果、所述存证随机数以及所述第一鉴别服务器的第二数字签名;所述第一鉴别服务器的第一数字签名是根据包括所述鉴别接入控制器的鉴权结果在内的信息计算生成的,所述第一鉴别服务器的第二数字签名是根据包括所述请求设备的鉴权结果和所述存证随机数在内的信息计算生成的;
所述第二处理模块,还用于验证所述第一鉴别服务器的第二数字签名,在验证通过后,所述第二生成模块还用于根据包括所述请求设备的鉴权结果和所述存证随机数在内的信息计算所述第二鉴别服务器的第二数字签名,生成所述第一鉴权响应消息;
所述第二生成模块,还用于根据所述第一存证消息生成第二存证消息,并通过所述发送模块向所述第一鉴别服务器发送所述第二存证消息,所述第二存证消息包括所述请求设备的新临时身份标识、所述请求设备的数字签名和所述第二鉴别服务器的第三数字签名,其中,所述第二鉴别服务器的第三数字签名是所述第二鉴别服务器根据包括所述请求设备的新临时身份标识和所述请求设备的数字签名在内的信息计算生成的。
可选的,接收模块710,还用于接收所述第一鉴别服务器在所述第二存证消息中的第二鉴别服务器的第三数字签名验证通过后生成并发送的第二存证确认消息;
所述第二处理模块,还用于验证所述第二存证确认消息中的所述第一鉴别服务器的第三数字签名;
所述第二生成模块,还用于在所述第一鉴别服务器的第三数字签名验证通过后生成第一存证确认消息;
发送模块720,还用于向所述鉴别接入控制器发送所述第一存证确认消息。
可选的,所述第二鉴别服务器向所述鉴别接入控制器发送的消息还包括所述第二鉴别服务器对接收到的所述鉴别接入控制器发送的最新前序消息计算的杂凑值;所述第二鉴别服务器向所述第一鉴别服务器发送的消息还包括所述第二鉴别服务器对接收到的所述第一鉴别服务器发送的最新前序消息计算的杂凑值。
参见图8,本申请实施例还提供了一种第一鉴别服务器AS-REQ,第一鉴别服务器AS-REQ为请求设备信任的鉴别服务器,包括:
验证模块810,用于利用请求设备的公钥对第一存证消息中的所述请求设备的数字签名进行验证,所述第一存证消息中包括所述请求设备的新临时身份标识和所述请求设备的数字签名;所述请求设备的数字签名是所述请求设备对包括所述第一鉴别服务器的存证随机数在内的信息进行签名计算生成的;
替换模块820,用于在所述请求设备的数字签名验证通过后,生成并保存所述请求设备的请求通过记录,使用所述第一存证消息中所述请求设备的新临时身份标识替换所述请求设备的临时身份标识。
可选的,所述第一鉴别服务器还包括:
判断模块,用于在产生所述存证随机数之前,判断所述请求设备的临时身份标识是否满足时效性,若是,则替换模块820产生所述存证随机数。
可选的,所述第一鉴别服务器和所述鉴别接入控制器信任的第二鉴别服务器不同时,所述第一鉴别服务器还包括:
接收模块,用于接收所述第二鉴别服务器发送的第二鉴权请求消息,其中,所述第二鉴权请求消息包括所述请求设备的临时身份标识和所述鉴别接入控制器的鉴权结果;
验证模块810,还用于根据所述请求设备的临时身份标识查找并检查所述请求设备的公钥的合法性,产生所述请求设备的鉴权结果并产生存证随机数;
计算模块,用于根据包括所述鉴别接入控制器的鉴权结果在内的信息计算所述第一鉴别服务器的第一数字签名,根据包括所述请求设备的鉴权结果和所述存证随机数在内的信息计算所述第一鉴别服务器的第二数字签名;
发送模块,用于向所述第二鉴别服务器发送第二鉴权响应消息,所述第二鉴权响应消息包括所述鉴别接入控制器的鉴权结果、所述第一鉴别服务器的第一数字签名、所述请求设备的鉴权结果、所述存证随机数以及所述第一鉴别服务器的第二数字签名;
所述接收模块,还用于接收所述第二鉴别服务器发送的第二存证消息,所述第二存证消息包括所述请求设备的新临时身份标识、所述请求设备的数字签名和所述第二鉴别服务器的第三数字签名,其中, 所述第二鉴别服务器的第三数字签名是所述第二鉴别服务器根据包括所述请求设备的新临时身份标识和所述请求设备的数字签名在内的信息计算生成的;
验证模块810,还用于验证所述第二鉴别服务器的第三数字签名,并且确定验证通过。
可选的,所述第一鉴别服务器向所述第二鉴别服务器发送的消息还包括所述第一鉴别服务器对接收到的所述第二鉴别服务器发送的最新前序消息计算的杂凑值。
参见图9,本申请实施例还提供了一种请求设备,包括:
存储器901,用于存储程序指令;
处理器902,用于调用所述存储器901中存储的程序指令,按照获得的程序执行以实现上述实施例中的REQ执行的步骤。
应理解,该请求设备可以实现本申请实施例的各个方法中由REQ实现的相应流程,为了简洁,在此不再赘述。
参见图10,本申请实施例还提供了一种鉴别接入控制器,包括:
存储器1001,用于存储程序指令;
处理器1002,用于调用所述存储器1001中存储的程序指令,按照获得的程序执行以实现上述实施例中的AAC执行的步骤。
应理解,该鉴别接入控制器可以实现本申请实施例的各个方法中由AAC实现的相应流程,为了简洁,在此不再赘述。
参见图11,本申请实施例还提供了一种第二鉴别服务器,包括:
存储器1101,用于存储程序指令;
处理器1102,用于调用所述存储器1101中存储的程序指令,按照获得的程序执行以实现上述实施例中的AS-AAC执行的步骤。
应理解,该第二鉴别服务器可以实现本申请实施例的各个方法中由AS-AAC实现的相应流程,为了简洁,在此不再赘述。
参见图12,本申请实施例还提供了一种第一鉴别服务器,包括:
存储器1201,用于存储程序指令;
处理器1202,用于调用所述存储器1201中存储的程序指令,按照获得的程序执行以实现上述实施例中的AS-REQ执行的步骤。
应理解,该第一鉴别服务器可以实现本申请实施例的各个方法中由AS-REQ实现的相应流程,为了简洁,在此不再赘述。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质可以是下述介质中的至少一种:只读存储器(英文:Read-Only Memory,缩写:ROM)、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备及系统实施例而言,由于其与方法实施例相一致和对应,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及系统实施例仅仅是示意性的,其中作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述,仅为本申请的一种具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。

Claims (49)

  1. 一种身份鉴别方法,其特征在于,所述方法包括:
    请求设备向鉴别接入控制器发送鉴别请求消息,所述鉴别请求消息中包括所述请求设备的临时身份标识;
    所述鉴别接入控制器向其信任的第二鉴别服务器发送第一鉴权请求消息,所述第一鉴权请求消息包括所述请求设备的临时身份标识和所述鉴别接入控制器的公钥,接收所述第二鉴别服务器发送的第一鉴权响应消息,所述第一鉴权响应消息包括所述鉴别接入控制器的鉴权结果、所述请求设备信任的第一鉴别服务器的第一数字签名、所述请求设备的鉴权结果、所述第一鉴别服务器生成的存证随机数和所述第二鉴别服务器的第二数字签名;
    所述鉴别接入控制器验证所述第二鉴别服务器的第二数字签名,验证通过后,向所述请求设备发送第一验证消息,所述第一验证消息中包括所述鉴别接入控制器的鉴权结果、所述第一鉴别服务器的第一数字签名、所述第一鉴别服务器生成的存证随机数和所述鉴别接入控制器的第一数字签名;
    所述请求设备验证所述第一鉴别服务器的第一数字签名以及根据所述鉴别接入控制器的鉴权结果中携带的所述鉴别接入控制器的公钥验证所述鉴别接入控制器的第一数字签名,验证通过后,根据所述鉴别接入控制器的鉴权结果获得所述鉴别接入控制器的身份合法性鉴别结果,在确定所述鉴别接入控制器的身份合法后,向所述鉴别接入控制器发送第二验证消息,所述第二验证消息包括所述请求设备的数字签名;其中,所述请求设备的数字签名是对包括所述第一鉴别服务器的存证随机数在内的信息进行签名计算生成的;
    所述鉴别接入控制器利用所述请求设备的鉴权结果中携带的所述请求设备的公钥对所述请求设备的数字签名进行验证以及根据所述请求设备的鉴权结果获得所述请求设备的身份合法性鉴别结果,验证通过且在确定所述请求设备的身份合法后产生所述请求设备的新临时身份标识,再生成鉴别完成消息和第一存证消息;其中,所述鉴别完成消息中包括所述请求设备的新临时身份标识;所述第一存证消息中包括所述请求设备的新临时身份标识和所述请求设备的数字签名;
    所述请求设备使用所述鉴别完成消息中所述请求设备的新临时身份标识替换所述请求设备的临时身份标识;
    所述第一鉴别服务器利用所述请求设备的公钥对所述第一存证消息中的所述请求设备的数字签名进行验证,验证通过后,生成并保存所述请求设备的请求通过记录,使用所述第一存证消息中所述请求设备的新临时身份标识替换所述请求设备的临时身份标识。
  2. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    所述鉴别接入控制器发送所述第一存证消息,所述第一鉴别服务器对所述第一存证消息中的所述请求设备的数字签名验证通过后,生成第一存证确认消息;
    所述鉴别接入控制器接收所述第一存证确认消息后,向所述请求设备发送所述鉴别完成消息。
  3. 根据权利要求1所述的方法,其特征在于,所述鉴别完成消息中还包括所述鉴别接入控制器生成的第二消息完整性校验码,所述第二消息完整性校验码是所述鉴别接入控制器利用其与所述请求设备之间的消息完整性校验密钥对包括所述鉴别完成消息中除所述第二消息完整性校验码外的其他字段计算生成的;
    则所述请求设备在使用所述鉴别完成消息中所述请求设备的新临时身份标识替换所述请求设备的临时身份标识之前,所述方法还包括:所述请求设备对所述鉴别完成消息中的第二消息完整性校验码进行验证。
  4. 根据权利要求3所述的方法,其特征在于,所述鉴别请求消息中还包括所述请求设备生成的第一密钥交换参数,所述第一验证消息中还包括所述鉴别接入控制器生成的第二密钥交换参数;则所述方法还包括:
    所述请求设备根据包括所述第一密钥交换参数对应的临时私钥和所述第二密钥交换参数所包括的临时公钥进行密钥交换计算生成第一密钥,根据包括所述第一密钥在内的计算数据利用密钥导出算法计算出所述消息完整性校验密钥;
    所述鉴别接入控制器根据包括所述第二密钥交换参数对应的临时私钥和所述第一密钥交换参数所包括的临时公钥进行密钥交换计算生成所述第一密钥,根据包括所述第一密钥在内的计算数据利用所述密钥导出算法计算出所述消息完整性校验密钥。
  5. 根据权利要求4所述的方法,其特征在于,所述鉴别请求消息中还包括所述请求设备生成的第一随机数,所述第一鉴权请求消息中还包括所述第一随机数和所述鉴别接入控制器生成的第二随机数;
    所述第一鉴权响应消息中还包括所述第一随机数和所述第二随机数,所述第一验证消息中还包括所 述第一随机数和所述第二随机数,所述第二验证消息中还包括所述第二随机数;
    则所述鉴别接入控制器向所述请求设备发送第一验证消息之前,还包括:
    所述鉴别接入控制器验证所述第一鉴权响应消息中的第二随机数和所述鉴别接入控制器生成的第二随机数的一致性;
    则所述请求设备向所述鉴别接入控制器发送第二验证消息之前,还包括:
    所述请求设备验证所述第一验证消息中的第一随机数和所述请求设备生成的第一随机数的一致性;
    则在所述鉴别接入控制器产生所述请求设备的新临时身份标识之前,还包括:
    所述鉴别接入控制器对所述第二验证消息中的第二随机数和所述鉴别接入控制器生成的第二随机数的一致性进行验证;
    所述鉴别接入控制器和所述请求设备计算所述消息完整性校验密钥的计算数据还包括所述第一随机数和所述第二随机数。
  6. 根据权利要求1所述的方法,其特征在于,所述鉴别请求消息中还包括所述请求设备支持的安全能力参数信息,则所述方法还包括:
    所述鉴别接入控制器根据所述安全能力参数信息确定所述鉴别接入控制器使用的特定安全策略,则所述第一验证消息中还包括所述特定安全策略。
  7. 根据权利要求1所述的方法,其特征在于,所述鉴别请求消息还包括所述请求设备信任的至少一个鉴别服务器的身份标识,则所述方法还包括:
    所述鉴别接入控制器根据所述鉴别请求消息中所述请求设备信任的至少一个鉴别服务器的身份标识和所述鉴别接入控制器信任的鉴别服务器的身份标识,确定所述第二鉴别服务器。
  8. 根据权利要求1所述的方法,其特征在于,所述第一鉴别服务器和所述第二鉴别服务器相同时,则所述方法还包括:
    所述第一鉴别服务器接收所述第一鉴权请求消息后,检查所述鉴别接入控制器的公钥的合法性,产生所述鉴别接入控制器的鉴权结果;根据所述请求设备的临时身份标识查找并检查所述请求设备的公钥的合法性,产生所述请求设备的鉴权结果以及产生存证随机数;根据包括所述鉴别接入控制器的鉴权结果在内的信息计算所述第一鉴别服务器的第一数字签名,根据包括所述请求设备的鉴权结果和所述存证随机数在内的信息计算所述第二鉴别服务器的第二数字签名,向所述鉴别接入控制器发送第一鉴权响应消息,所述第一鉴权响应消息包括所述鉴别接入控制器的鉴权结果、所述第一鉴别服务器的第一数字签名、所述请求设备的鉴权结果、所述第一鉴别服务器生成的存证随机数以及所述第二鉴别服务器的第二数字签名。
  9. 根据权利要求1所述的方法,其特征在于,所述第一存证消息中还包括所述鉴别接入控制器的第二数字签名,其中,所述鉴别接入控制器的第二数字签名是对所述第一存证消息中所述鉴别接入控制器的第二数字签名之前的其他信息进行签名计算生成的;则所述方法还包括:
    所述第二鉴别服务器对所述鉴别接入控制器的第二数字签名进行验证。
  10. 根据权利要求3所述的方法,其特征在于,所述第二验证消息中还包括所述请求设备生成的第一消息完整性校验码,所述第一消息完整性校验码是所述请求设备利用其与所述鉴别接入控制器之间的消息完整性校验密钥对包括所述第二验证消息中除所述第一消息完整性校验码外的其他字段计算生成的;
    则在所述鉴别接入控制器产生所述请求设备的新临时身份标识之前,所述方法还包括:
    所述鉴别接入控制器对所述第一消息完整性校验码进行验证。
  11. 根据权利要求1所述的方法,其特征在于,当所述请求设备的鉴权结果表示需要所述请求设备发送其真实的身份标识时,则所述鉴别接入控制器生成的所述第一验证消息中还包括指示标识,所述指示标识用于指示所述请求设备发送其真实的身份标识;
    则所述第二验证消息中还包括所述请求设备的身份标识密文,所述请求设备的身份标识密文是所述请求设备利用加密证书的公钥对所述请求设备的身份标识加密生成的;则所述方法还包括:
    所述鉴别接入控制器向所述第二鉴别服务器发送第三鉴权请求消息,所述第三鉴权请求消息中包括所述请求设备的身份标识密文;
    所述鉴别接入控制器接收所述第二鉴别服务器发送的第三鉴权响应消息,所述第三鉴权响应消息中包括所述请求设备的鉴权结果;
    则所述鉴别接入控制器根据所述第三鉴权响应消息中携带的所述请求设备的鉴权结果重新确定所述请求设备的身份合法性。
  12. 根据权利要求1所述的方法,其特征在于,所述第一鉴权请求消息中还包括所述鉴别接入控制器的身份标识;
    则所述第一鉴权响应消息中还包括所述鉴别接入控制器的身份标识,所述鉴别接入控制器向所述请 求设备发送第一验证消息之前,还包括:
    所述鉴别接入控制器验证所述第一鉴权响应消息中的所述鉴别接入控制器的身份标识和所述鉴别接入控制器自身的身份标识的一致性。
  13. 根据权利要求4所述的方法,其特征在于,所述第一验证消息中还包括所述鉴别接入控制器的身份标识,所述方法还包括:
    所述鉴别接入控制器根据包括所述第一密钥、所述请求设备的临时身份标识和所述鉴别接入控制器的身份标识在内的信息计算用于后续保密通信的会话密钥;
    所述请求设备根据包括所述第一密钥、所述请求设备的临时身份标识和所述鉴别接入控制器的身份标识在内的信息计算用于后续保密通信的会话密钥。
  14. 根据权利要求1所述的方法,其特征在于,所述第一鉴别服务器和所述第二鉴别服务器不同时,则所述方法还包括:
    所述第二鉴别服务器接收所述鉴别接入控制器发送的第一鉴权请求消息,检查所述鉴别接入控制器的公钥的合法性,产生所述鉴别接入控制器的鉴权结果,向所述第一鉴别服务器发送所述第二鉴权请求消息;所述第二鉴权请求消息包括所述请求设备的临时身份标识和所述鉴别接入控制器的鉴权结果;
    所述第一鉴别服务器根据所述请求设备的临时身份标识查找并检查所述请求设备的公钥的合法性,产生所述请求设备的鉴权结果并产生存证随机数,根据包括所述鉴别接入控制器的鉴权结果在内的信息计算所述第一鉴别服务器的第一数字签名,根据包括所述请求设备的鉴权结果和所述存证随机数在内的信息计算所述第一鉴别服务器的第二数字签名,向所述第二鉴别服务器发送第二鉴权响应消息,所述第二鉴权响应消息包括所述鉴别接入控制器的鉴权结果、所述第一鉴别服务器的第一数字签名、所述请求设备的鉴权结果、所述存证随机数以及所述第一鉴别服务器的第二数字签名;
    所述第二鉴别服务器验证所述第一鉴别服务器的第二数字签名,验证通过后,根据包括所述请求设备的鉴权结果和所述存证随机数在内的信息计算所述第二鉴别服务器的第二数字签名,生成所述第一鉴权响应消息;
    所述鉴别接入控制器向所述第二鉴别服务器发送所述第一存证消息;所述第二鉴别服务器根据所述第一存证消息生成第二存证消息,向所述第一鉴别服务器发送所述第二存证消息,所述第二存证消息包括所述请求设备的新临时身份标识、所述请求设备的数字签名和所述第二鉴别服务器的第三数字签名;其中,所述第二鉴别服务器的第三数字签名是所述第二鉴别服务器根据包括所述请求设备的新临时身份标识和所述请求设备的数字签名在内的信息计算生成的;所述第一鉴别服务器验证所述第二鉴别服务器的第三数字签名,且确定验证通过。
  15. 根据权利要求14所述的方法,其特征在于,所述第一鉴别服务器验证所述第二存证消息中的第二鉴别服务器的第三数字签名,验证通过后,生成并向所述第二鉴别服务器发送第二存证确认消息;
    所述第二鉴别服务器接收所述第二存证确认消息,验证所述第二存证确认消息中的所述第一鉴别服务器的第三数字签名,验证通过后,生成并向所述鉴别接入控制器发送第一存证确认消息;
    所述鉴别接入控制器接收所述第一存证确认消息后再向所述请求设备发送所述鉴别完成消息。
  16. 根据权利要求1至15任一项所述的方法,其特征在于,所述方法还包括:
    所述请求设备向所述鉴别接入控制器发送的消息还包括所述请求设备对接收到的所述鉴别接入控制器发送的最新前序消息计算的杂凑值;则所述鉴别接入控制器收到所述请求设备发送的消息时,对接收到的消息中的杂凑值进行验证,且确定验证通过;
    所述鉴别接入控制器向所述请求设备发送的消息还包括所述鉴别接入控制器对接收到的所述请求设备发送的最新前序消息计算的杂凑值;则所述请求设备收到所述鉴别接入控制器发送的消息时,对接收到的消息中的杂凑值进行验证,且确定验证通过;
    所述鉴别接入控制器向所述第二鉴别服务器发送的消息还包括所述鉴别接入控制器对接收到的所述第二鉴别服务器发送的最新前序消息计算的杂凑值;则所述第二鉴别服务器收到所述鉴别接入控制器发送的消息时,对接收到的消息中的杂凑值进行验证,且确定验证通过;
    所述第二鉴别服务器向所述鉴别接入控制器发送的消息还包括所述第二鉴别服务器对接收到的所述鉴别接入控制器发送的最新前序消息计算的杂凑值;则所述鉴别接入控制器收到所述第二鉴别服务器发送的消息时,对接收到的消息中的杂凑值进行验证,且确定验证通过;
    所述第一鉴别服务器向所述第二鉴别服务器发送的消息还包括所述第一鉴别服务器对接收到的所述第二鉴别服务器发送的最新前序消息计算的杂凑值;则所述第二鉴别服务器收到所述第一鉴别服务器发送的消息时,对接收到的消息中的杂凑值进行验证,且确定验证通过;
    所述第二鉴别服务器向所述第一鉴别服务器发送的消息还包括所述第二鉴别服务器对接收到的所述第一鉴别服务器发送的最新前序消息计算的杂凑值;则所述第一鉴别服务器收到所述第二鉴别服务器发送的消息时,对接收到的消息中的杂凑值进行验证,且确定验证通过。
  17. 一种请求设备,其特征在于,包括:
    发送模块,用于向鉴别接入控制器发送鉴别请求消息,所述鉴别请求消息中包括所述请求设备的临时身份标识;
    接收模块,用于接收所述鉴别接入控制器发送的第一验证消息,所述第一验证消息中包括所述鉴别接入控制器的鉴权结果、第一鉴别服务器的第一数字签名、所述第一鉴别服务器生成的存证随机数和所述鉴别接入控制器的第一数字签名;
    验证模块,用于验证所述第一鉴别服务器的第一数字签名以及根据所述鉴别接入控制器的鉴权结果中携带的所述鉴别接入控制器的公钥验证所述鉴别接入控制器的第一数字签名,验证通过后,根据所述鉴别接入控制器的鉴权结果获得所述鉴别接入控制器的身份合法性鉴别结果;
    所述发送模块,还用于在确定所述鉴别接入控制器的身份合法后,向所述鉴别接入控制器发送第二验证消息,所述第二验证消息包括所述请求设备的数字签名;其中,所述请求设备的数字签名是对包括所述第一鉴别服务器的存证随机数在内的信息进行签名计算生成的;
    所述接收模块,还用于接收所述鉴别接入控制器发送的鉴别完成消息,所述鉴别完成消息中包括所述请求设备的新临时身份标识,所述新临时身份标识是所述鉴别接入控制器根据所述请求设备的鉴权结果中携带的所述请求设备的公钥对所述请求设备的数字签名验证通过后生成的;
    更新模块,用于使用所述鉴别完成消息中所述请求设备的新临时身份标识替换所述请求设备的临时身份标识。
  18. 根据权利要求17所述的请求设备,其特征在于,所述鉴别完成消息中还包括所述鉴别接入控制器生成的第二消息完整性校验码,所述第二消息完整性校验码是所述鉴别接入控制器利用其与所述请求设备之间的消息完整性校验密钥对包括所述鉴别完成消息中除所述第二消息完整性校验码外的其他字段计算生成的;
    则所述验证模块,还用于对所述鉴别完成消息中的第二消息完整性校验码进行验证。
  19. 根据权利要求18所述的请求设备,其特征在于,所述鉴别请求消息中还包括所述请求设备生成的第一密钥交换参数,所述第一验证消息中还包括所述鉴别接入控制器生成的第二密钥交换参数;所述请求设备还包括:
    第一计算模块,用于根据包括所述第一密钥交换参数对应的临时私钥和所述第二密钥交换参数所包括的临时公钥进行密钥交换计算生成第一密钥,根据包括所述第一密钥在内的计算数据利用密钥导出算法计算出所述消息完整性校验密钥。
  20. 根据权利要求19所述的请求设备,其特征在于,所述鉴别请求消息中还包括所述请求设备生成的第一随机数,所述第一验证消息中还包括所述第一随机数和所述鉴别接入控制器生成的第二随机数;
    所述验证模块还用于验证所述第一验证消息中的第一随机数和所述请求设备生成的第一随机数的一致性;
    所述第一计算模块计算所述消息完整性校验密钥的计算数据还包括所述第一随机数和所述第二随机数。
  21. 根据权利要求19所述的请求设备,其特征在于,所述第一验证消息中还包括所述鉴别接入控制器的身份标识;所述请求设备还包括:
    第二计算模块,用于根据包括所述第一密钥、所述请求设备的临时身份标识和所述鉴别接入控制器的身份标识在内的信息计算用于后续保密通信的会话密钥。
  22. 根据权利要求17至21任一项所述的请求设备,其特征在于,所述请求设备向所述鉴别接入控制器发送的消息还包括所述请求设备对接收到的所述鉴别接入控制器发送的最新前序消息计算的杂凑值。
  23. 一种鉴别接入控制器,其特征在于,包括:
    接收模块,用于接收请求设备发送的鉴别请求消息,所述鉴别请求消息中包括所述请求设备的临时身份标识;
    发送模块,用于向所述鉴别接入控制器信任的第二鉴别服务器发送第一鉴权请求消息,所述第一鉴权请求消息包括所述请求设备的临时身份标识和所述鉴别接入控制器的公钥;
    所述接收模块,还用于接收所述第二鉴别服务器发送的第一鉴权响应消息,所述第一鉴权响应消息包括所述鉴别接入控制器的鉴权结果、所述请求设备信任的第一鉴别服务器的第一数字签名、所述请求设备的鉴权结果、所述第一鉴别服务器生成的存证随机数和所述第二鉴别服务器的第二数字签名;
    验证模块,用于验证所述第二鉴别服务器的第二数字签名;
    所述发送模块,还用于在所述第二鉴别服务器的第二数字签名验证通过后,向所述请求设备发送第一验证消息,所述第一验证消息中包括所述鉴别接入控制器的鉴权结果、所述第一鉴别服务器的第一数字签名、所述第一鉴别服务器生成的存证随机数和所述鉴别接入控制器的第一数字签名;
    所述接收模块,还用于接收所述请求设备发送的第二验证消息,所述第二验证消息包括所述请求设备的数字签名;所述请求设备的数字签名是对包括所述第一鉴别服务器的存证随机数在内的信息进行签名计算生成的;
    所述验证模块,还用于利用所述请求设备的鉴权结果中携带的所述请求设备的公钥对所述请求设备的数字签名进行验证;
    生成模块,用于根据所述请求设备的鉴权结果获得所述请求设备的身份合法性鉴别结果,在所述请求设备的数字签名验证通过且在确定所述请求设备的身份合法后产生所述请求设备的新临时身份标识,再生成鉴别完成消息和第一存证消息;其中,所述鉴别完成消息中包括所述请求设备的新临时身份标识;所述第一存证消息中包括所述请求设备的新临时身份标识和所述请求设备的数字签名;
    所述发送模块,还用于通过所述第二鉴别服务器向所述请求设备信任的第一鉴别服务器发送所述第一存证消息,以及向所述请求设备发送所述鉴别完成消息。
  24. 根据权利要求23所述的鉴别接入控制器,其特征在于,所述发送模块,还用于发送所述第一存证消息,并在通过所述接收模块接收第一存证确认消息后,向所述请求设备发送所述鉴别完成消息;
    所述第一存证确认消息是第一鉴别服务器对所述第一存证消息中的所述请求设备的数字签名验证通过后生成的。
  25. 根据权利要求23所述的鉴别接入控制器,其特征在于,所述发送模块发送的鉴别完成消息中还包括所述鉴别接入控制器生成的第二消息完整性校验码,所述第二消息完整性校验码是所述鉴别接入控制器利用其与所述请求设备之间的消息完整性校验密钥对包括所述鉴别完成消息中除所述第二消息完整性校验码外的其他字段计算生成的。
  26. 根据权利要求25所述的鉴别接入控制器,其特征在于,所述鉴别请求消息中还包括所述请求设备生成的第一密钥交换参数,所述第一验证消息中还包括所述鉴别接入控制器生成的第二密钥交换参数;所述鉴别接入控制器还包括:
    第一计算模块,用于根据包括所述第二密钥交换参数对应的临时私钥和所述第一密钥交换参数所包括的临时公钥进行密钥交换计算生成第一密钥,根据包括所述第一密钥在内的计算数据利用密钥导出算法计算出所述消息完整性校验密钥。
  27. 根据权利要求26所述的鉴别接入控制器,其特征在于,所述鉴别请求消息中还包括所述请求设备生成的第一随机数,所述第一鉴权请求消息中还包括所述第一随机数和所述鉴别接入控制器生成的第二随机数;
    所述第一鉴权响应消息中还包括所述第一随机数和所述第二随机数,所述第一验证消息中还包括所述第一随机数和所述第二随机数,所述第二验证消息中还包括所述第二随机数;
    所述验证模块,还用于在向所述请求设备发送第一验证消息之前,验证所述第一鉴权响应消息中的第二随机数和所述鉴别接入控制器生成的第二随机数的一致性;以及在产生所述请求设备的新临时身份标识之前,对所述第二验证消息中的第二随机数和所述鉴别接入控制器生成的第二随机数的一致性进行验证;
    所述第一计算模块计算所述消息完整性校验密钥的计算数据还包括所述第一随机数和所述第二随机数。
  28. 根据权利要求23所述的鉴别接入控制器,其特征在于,所述鉴别请求消息中还包括所述请求设备支持的安全能力参数信息,所述鉴别接入控制器还包括:
    第一确定模块,用于根据所述安全能力参数信息确定所述鉴别接入控制器使用的特定安全策略,则所述第一验证消息中还包括所述特定安全策略。
  29. 根据权利要求23所述的鉴别接入控制器,其特征在于,所述鉴别请求消息还包括所述请求设备信任的至少一个鉴别服务器的身份标识,所述鉴别接入控制器还包括:
    第二确定模块,用于根据所述鉴别请求消息中所述请求设备信任的至少一个鉴别服务器的身份标识和所述鉴别接入控制器信任的鉴别服务器的身份标识,确定所述第二鉴别服务器。
  30. 根据权利要求23所述的鉴别接入控制器,其特征在于,所述第二验证消息中还包括所述请求设备生成的第一消息完整性校验码,所述第一消息完整性校验码是所述请求设备利用其与所述鉴别接入控制器之间的消息完整性校验密钥对包括所述第二验证消息中除所述第一消息完整性校验码外的其他字段计算生成的;
    则所述验证模块,还用于在所述鉴别接入控制器产生所述请求设备的新临时身份标识之前,对所述第一消息完整性校验码进行验证。
  31. 根据权利要求23所述的鉴别接入控制器,其特征在于,当所述请求设备的鉴权结果表示需要所述请求设备发送其真实的身份标识时,则所述鉴别接入控制器生成的所述第一验证消息中还包括指示标识,所述指示标识用于指示所述请求设备发送其真实的身份标识;
    则所述第二验证消息中还包括所述请求设备的身份标识密文,所述请求设备的身份标识密文是所述请求设备利用加密证书的公钥对所述请求设备的身份标识加密生成的;
    则所述发送模块,还用于向所述第二鉴别服务器发送第三鉴权请求消息,所述第三鉴权请求消息中包括所述请求设备的身份标识密文;
    所述接收模块,还用于接收所述第二鉴别服务器发送的第三鉴权响应消息,所述第三鉴权响应消息中包括所述请求设备的鉴权结果;
    则所述验证模块,还用于根据所述第三鉴权响应消息中携带的所述请求设备的鉴权结果重新确定所述请求设备的身份合法性。
  32. 根据权利要求23所述的鉴别接入控制器,其特征在于,所述第一鉴权请求消息中还包括所述鉴别接入控制器的身份标识;则所述第一鉴权响应消息中还包括所述鉴别接入控制器的身份标识;
    所述验证模块,还用于在向所述请求设备发送第一验证消息之前,验证所述第一鉴权响应消息中的所述鉴别接入控制器的身份标识和所述鉴别接入控制器自身的身份标识的一致性。
  33. 根据权利要求26所述的鉴别接入控制器,其特征在于,所述第一验证消息中还包括所述鉴别接入控制器的身份标识;所述鉴别接入控制器还包括:
    第二计算模块,用于根据包括所述第一密钥、所述请求设备的临时身份标识和所述鉴别接入控制器的身份标识在内的信息计算用于后续保密通信的会话密钥。
  34. 根据权利要求23至33任一项所述的鉴别接入控制器,其特征在于,所述鉴别接入控制器向所述请求设备发送的消息还包括所述鉴别接入控制器对接收到的所述请求设备发送的最新前序消息计算的杂凑值;所述鉴别接入控制器向所述第二鉴别服务器发送的消息还包括所述鉴别接入控制器对接收到的所述第二鉴别服务器发送的最新前序消息计算的杂凑值。
  35. 一种第二鉴别服务器,其特征在于,包括:
    接收模块,用于接收鉴别接入控制器发送的第一鉴权请求消息,所述第一鉴权请求消息包括请求设备的临时身份标识和所述鉴别接入控制器的公钥;
    发送模块,用于向所述鉴别接入控制器发送第一鉴权响应消息,所述第一鉴权响应消息包括所述鉴别接入控制器的鉴权结果、所述请求设备信任的第一鉴别服务器的第一数字签名、所述请求设备的鉴权结果、所述第一鉴别服务器生成的存证随机数和所述第二鉴别服务器的第二数字签名;
    所述接收模块,还用于接收所述鉴别接入控制器生成的第一存证消息,所述第一存证消息中包括所述请求设备的新临时身份标识和所述请求设备的数字签名;所述请求设备的数字签名是所述请求设备对包括所述第一鉴别服务器的存证随机数在内的信息进行签名计算生成的。
  36. 根据权利要求35所述的第二鉴别服务器,其特征在于,所述第一存证消息中还包括所述鉴别接入控制器的第二数字签名,所述鉴别接入控制器的第二数字签名是对所述第一存证消息中所述鉴别接入控制器的第二数字签名之前的其他信息进行签名计算生成的;
    则所述第二鉴别服务器还包括:
    验证模块,用于对所述鉴别接入控制器的第二数字签名进行验证。
  37. 根据权利要求35所述的第二鉴别服务器,其特征在于,所述第一鉴别服务器和所述第二鉴别服务器相同时,所述第二鉴别服务器还包括:
    第一处理模块,用于检查所述鉴别接入控制器的公钥的合法性生成所述鉴别接入控制器的鉴权结果;根据所述请求设备的临时身份标识查找并检查所述请求设备的公钥的合法性,产生所述请求设备的鉴权结果并产生存证随机数;
    第一生成模块,用于根据包括所述鉴别接入控制器的鉴权结果在内的信息计算所述第一鉴别服务器的第一数字签名,根据包括所述请求设备的鉴权结果和所述存证随机数在内的信息计算所述第二鉴别服务器的第二数字签名。
  38. 根据权利要求35所述的第二鉴别服务器,其特征在于,所述第一鉴别服务器和所述第二鉴别服务器不同时,则所述第二鉴别服务器还包括:
    第二处理模块,用于检查所述鉴别接入控制器的公钥的合法性,产生所述鉴别接入控制器的鉴权结果;
    第二生成模块,用于根据所述第一鉴权请求消息生成第二鉴权请求消息,所述第二鉴权请求消息包括所述请求设备的临时身份标识和所述鉴别接入控制器的鉴权结果;
    所述发送模块,还用于向所述第一鉴别服务器发送所述第二鉴权请求消息;
    所述接收模块,还用于接收所述第一鉴别服务器发送的第二鉴权响应消息,所述第二鉴权响应消息包括所述鉴别接入控制器的鉴权结果、所述第一鉴别服务器的第一数字签名、所述请求设备的鉴权结果、所述存证随机数以及所述第一鉴别服务器的第二数字签名;所述第一鉴别服务器的第一数字签名是根据包括所述鉴别接入控制器的鉴权结果在内的信息计算生成的,所述第一鉴别服务器的第二数字签名是根 据包括所述请求设备的鉴权结果和所述存证随机数在内的信息计算生成的;
    所述第二处理模块,还用于验证所述第一鉴别服务器的第二数字签名,在验证通过后,所述第二生成模块还用于根据包括所述请求设备的鉴权结果和所述存证随机数在内的信息计算所述第二鉴别服务器的第二数字签名,生成所述第一鉴权响应消息;
    所述第二生成模块,还用于根据所述第一存证消息生成第二存证消息,并通过所述发送模块向所述第一鉴别服务器发送所述第二存证消息,所述第二存证消息包括所述请求设备的新临时身份标识、所述请求设备的数字签名和所述第二鉴别服务器的第三数字签名,其中,所述第二鉴别服务器的第三数字签名是所述第二鉴别服务器根据包括所述请求设备的新临时身份标识和所述请求设备的数字签名在内的信息计算生成的。
  39. 根据权利要求38所述的第二鉴别服务器,其特征在于,所述接收模块,还用于接收所述第一鉴别服务器在所述第二存证消息中的第二鉴别服务器的第三数字签名验证通过后生成并发送的第二存证确认消息;
    所述第二处理模块,还用于验证所述第二存证确认消息中的所述第一鉴别服务器的第三数字签名;
    所述第二生成模块,还用于在所述第一鉴别服务器的第三数字签名验证通过后生成第一存证确认消息;
    所述发送模块,还用于向所述鉴别接入控制器发送所述第一存证确认消息。
  40. 根据权利要求35至39任一项所述的第二鉴别服务器,其特征在于,所述第二鉴别服务器向所述鉴别接入控制器发送的消息还包括所述第二鉴别服务器对接收到的所述鉴别接入控制器发送的最新前序消息计算的杂凑值;所述第二鉴别服务器向所述第一鉴别服务器发送的消息还包括所述第二鉴别服务器对接收到的所述第一鉴别服务器发送的最新前序消息计算的杂凑值。
  41. 一种第一鉴别服务器,其特征在于,包括:
    验证模块,用于利用请求设备的公钥对第一存证消息中的所述请求设备的数字签名进行验证,所述第一存证消息中包括所述请求设备的新临时身份标识和所述请求设备的数字签名;所述请求设备的数字签名是所述请求设备对包括所述第一鉴别服务器的存证随机数在内的信息进行签名计算生成的;
    替换模块,用于在所述请求设备的数字签名验证通过后,生成并保存所述请求设备的请求通过记录,使用所述第一存证消息中所述请求设备的新临时身份标识替换所述请求设备的临时身份标识。
  42. 根据权利要求41所述的第一鉴别服务器,其特征在于,还包括:判断模块,用于在产生所述存证随机数之前,判断所述请求设备的临时身份标识是否满足时效性,若是,则所述替换模块产生所述存证随机数。
  43. 根据权利要求41所述的第一鉴别服务器,其特征在于,所述第一鉴别服务器和所述鉴别接入控制器信任的第二鉴别服务器不同时,所述第一鉴别服务器还包括:
    接收模块,用于接收所述第二鉴别服务器发送的第二鉴权请求消息,其中,所述第二鉴权请求消息包括所述请求设备的临时身份标识和所述鉴别接入控制器的鉴权结果;
    所述验证模块,还用于根据所述请求设备的临时身份标识查找并检查所述请求设备的公钥的合法性,产生所述请求设备的鉴权结果并产生存证随机数;
    计算模块,用于根据包括所述鉴别接入控制器的鉴权结果在内的信息计算所述第一鉴别服务器的第一数字签名,根据包括所述请求设备的鉴权结果和所述存证随机数在内的信息计算所述第一鉴别服务器的第二数字签名;
    发送模块,用于向所述第二鉴别服务器发送第二鉴权响应消息,所述第二鉴权响应消息包括所述鉴别接入控制器的鉴权结果、所述第一鉴别服务器的第一数字签名、所述请求设备的鉴权结果、所述存证随机数以及所述第一鉴别服务器的第二数字签名;
    所述接收模块,还用于接收所述第二鉴别服务器发送的第二存证消息,所述第二存证消息包括所述请求设备的新临时身份标识、所述请求设备的数字签名和所述第二鉴别服务器的第三数字签名,其中,所述第二鉴别服务器的第三数字签名是所述第二鉴别服务器根据包括所述请求设备的新临时身份标识和所述请求设备的数字签名在内的信息计算生成的;
    所述验证模块,还用于验证所述第二鉴别服务器的第三数字签名,并且确定验证通过。
  44. 根据权利要求41至43任一项所述的第一鉴别服务器,其特征在于,所述第一鉴别服务器向所述第二鉴别服务器发送的消息还包括所述第一鉴别服务器对接收到的所述第二鉴别服务器发送的最新前序消息计算的杂凑值。
  45. 一种请求设备,其特征在于,所述请求设备包括:
    存储器,用于存储程序指令;
    处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行如权利要求1~16任一项中请求设备侧的方法。
  46. 一种鉴别接入控制器,其特征在于,所述鉴别接入控制器包括:
    存储器,用于存储程序指令;
    处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行如权利要求1~16任一项中鉴别接入控制器侧的方法。
  47. 一种第二鉴别服务器,其特征在于,所述第二鉴别服务器包括:
    存储器,用于存储程序指令;
    处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行如权利要求1~16任一项中第二鉴别服务器侧的方法。
  48. 一种第一鉴别服务器,其特征在于,所述第一鉴别服务器包括:
    存储器,用于存储程序指令;
    处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行如权利要求1~16任一项中第一鉴别服务器侧的方法。
  49. 一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机可执行指令,所述计算机可执行指令用于使所述计算机执行权利要求1~16任一项所述的方法。
PCT/CN2021/139990 2020-12-26 2021-12-21 一种身份鉴别方法和装置 WO2022135376A1 (zh)

Applications Claiming Priority (2)

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

Publications (1)

Publication Number Publication Date
WO2022135376A1 true WO2022135376A1 (zh) 2022-06-30

Family

ID=82158805

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/139990 WO2022135376A1 (zh) 2020-12-26 2021-12-21 一种身份鉴别方法和装置

Country Status (2)

Country Link
CN (1) CN114760032A (zh)
WO (1) WO2022135376A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1564626A (zh) * 2004-03-22 2005-01-12 西安电子科技大学 基于漫游密钥交换认证协议的无线局域网安全接入方法
CN101132280A (zh) * 2007-10-16 2008-02-27 西安西电捷通无线网络通信有限公司 一种wapi证书鉴别方法
CN101631114A (zh) * 2009-08-19 2010-01-20 西安西电捷通无线网络通信有限公司 一种基于公钥证书的身份鉴别方法及其系统
US20140149739A1 (en) * 2010-03-15 2014-05-29 Blackberry Limited Use of certificate authority to control a device's access to services
CN111355745A (zh) * 2020-03-12 2020-06-30 西安电子科技大学 基于边缘计算网络架构的跨域身份认证方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1564626A (zh) * 2004-03-22 2005-01-12 西安电子科技大学 基于漫游密钥交换认证协议的无线局域网安全接入方法
CN101132280A (zh) * 2007-10-16 2008-02-27 西安西电捷通无线网络通信有限公司 一种wapi证书鉴别方法
CN101631114A (zh) * 2009-08-19 2010-01-20 西安西电捷通无线网络通信有限公司 一种基于公钥证书的身份鉴别方法及其系统
US20140149739A1 (en) * 2010-03-15 2014-05-29 Blackberry Limited Use of certificate authority to control a device's access to services
CN111355745A (zh) * 2020-03-12 2020-06-30 西安电子科技大学 基于边缘计算网络架构的跨域身份认证方法

Also Published As

Publication number Publication date
CN114760032A (zh) 2022-07-15

Similar Documents

Publication Publication Date Title
KR102018971B1 (ko) 네트워크 액세스 디바이스가 무선 네트워크 액세스 포인트를 액세스하게 하기 위한 방법, 네트워크 액세스 디바이스, 애플리케이션 서버 및 비휘발성 컴퓨터 판독가능 저장 매체
CN102036242B (zh) 一种移动通讯网络中的接入认证方法和系统
EP4231680A1 (en) Identity authentication system, method and apparatus, device, and computer readable storage medium
WO2022135391A1 (zh) 身份鉴别方法、装置、存储介质、程序、及程序产品
CN114091009A (zh) 利用分布式身份标识建立安全链接的方法
CN110876142B (zh) 一种基于标识的wifi认证方法
WO2022135383A1 (zh) 一种身份鉴别方法和装置
WO2022135379A1 (zh) 一种身份鉴别方法和装置
WO2022135376A1 (zh) 一种身份鉴别方法和装置
WO2022135394A1 (zh) 身份鉴别方法、装置、存储介质、程序、及程序产品
WO2022135399A1 (zh) 身份鉴别方法、鉴别接入控制器和请求设备、存储介质、程序、及程序产品
US20240064011A1 (en) Identity authentication method and apparatus, device, chip, storage medium, and program
CN111918292B (zh) 一种接入方法及装置
WO2022135382A1 (zh) 一种身份鉴别方法和装置
WO2022135387A1 (zh) 一种身份鉴别方法和装置
WO2022135384A1 (zh) 一种身份鉴别方法和装置
WO2022135385A1 (zh) 一种身份鉴别方法和装置
WO2022135418A1 (zh) 一种身份鉴别方法和装置
WO2022135386A1 (zh) 一种身份鉴别方法和装置
WO2022135404A1 (zh) 身份鉴别方法、装置、存储介质、程序、及程序产品
CN114978741B (zh) 一种系统间认证方法及系统
WO2022135378A1 (zh) 一种身份鉴别方法和装置
KR101431010B1 (ko) 하드웨어 인증 모듈을 이용한 액세스 포인트 인증 장치 및 방법
WO2022135380A1 (zh) 一种身份鉴别方法和装置
CN111918291B (zh) 一种接入方法及装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21909372

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21909372

Country of ref document: EP

Kind code of ref document: A1