WO2025139994A1 - Communication method and apparatus - Google Patents
Communication method and apparatus Download PDFInfo
- Publication number
- WO2025139994A1 WO2025139994A1 PCT/CN2024/140605 CN2024140605W WO2025139994A1 WO 2025139994 A1 WO2025139994 A1 WO 2025139994A1 CN 2024140605 W CN2024140605 W CN 2024140605W WO 2025139994 A1 WO2025139994 A1 WO 2025139994A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- identifier
- terminal
- key
- authentication
- long
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0869—Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0866—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/03—Protecting confidentiality, e.g. by encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
- H04W12/041—Key generation or derivation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
- H04W12/69—Identity-dependent
Definitions
- the embodiments of the present application relate to the field of communication technology, and in particular, to a communication method and device.
- the user equipment authenticates itself with the network through the subscription data in the subscriber identity module (SIM) or the universal subscriber identity module (USIM) to obtain authorization to access the network.
- SIM subscriber identity module
- USIM universal subscriber identity module
- the network needs to obtain the permanent identity of the UE in order to obtain the corresponding long-term key K based on the permanent identity and then proceed with the authentication process.
- the permanent identity is sent directly in plain text, the user's permanent identity will be exposed, thereby destroying the user's privacy. Therefore, in the 5th generation (5G) network, an encryption mechanism for the user's permanent identity is introduced. When the user registers for the first time, the user's permanent identity information is encrypted to ensure the security of the user's permanent identity information.
- the existing encryption processing method for the user's permanent identity information requires the use of an asymmetric encryption mechanism with large communication and computing overhead, which may be unaffordable for individual terminals with limited capabilities.
- the present application provides a communication method and device to protect the security of user identity information.
- the present application provides a communication method, which can be applied to a terminal or a chip of a terminal, which is not specifically limited here, and the terminal can be a mobile phone, a vehicle-mounted device, an Internet of Things device, etc.
- the execution is as follows:
- Obtain a first identifier of a terminal and a first long-term key of the terminal send a first message, wherein the first message is used to trigger two-way authentication, the first message includes a second identifier of the terminal, the second identifier is used to determine a second long-term key for authenticating the terminal in the two-way authentication, the second identifier is determined based on the first identifier, and the second long-term key and the first long-term key are symmetric keys; receive first authentication data; perform authentication of the network in the two-way authentication based on a random number, the first long-term key and the first authentication data, wherein the random number is generated based on the first identifier.
- the above-mentioned two-way authentication can be understood as a two-way authentication between the terminal and the network identity, such as a primary authentication.
- the above-mentioned first identifier can be a random sequence code in the configuration parameters of the SIM or USIM, or a sequence code that follows the format of the user identity of the mobile communication network.
- the first identifier can also include a network identifier, such as a public land mobile network identifier (PLMN) identifier, etc., and this does not specifically limit how to construct the first identifier.
- PLMN public land mobile network identifier
- the first identifier can be updated with the number of occurrences of the two-way authentication.
- the terminal can obtain the first identifier from the configuration parameters of the SIM or USIM of the terminal.
- the device on the network side After the two-way authentication between the terminal and the network is successful, the device on the network side generates a new first identifier and sends it to the terminal.
- the terminal After the terminal stores the new first identifier, the terminal reads the first identifier from the storage location of the new first identifier (for example, SIM, USIM, or ME). It is not specifically limited here how the terminal obtains the first identifier.
- the terminal may determine the second identifier based on the first identifier.
- the first identifier is encrypted to obtain the second identifier; or the first identifier and the first long-term key of the terminal are encrypted to obtain the second identifier. How to determine the second identifier based on the first identifier is not specifically limited here.
- random numbers are also used.
- the random number of two-way authentication is generated according to the first identifier, and the network and the terminal do not need to carry random numbers during the signaling interaction of two-way authentication, thereby further improving the efficiency of two-way authentication and saving signaling resources.
- the terminal also receives the encrypted ciphertext and decrypts the encrypted ciphertext using the communication key to obtain a third identifier of the terminal, wherein the communication key is derived from the first long-term key, and the third identifier is used to generate a message for the terminal to trigger the two-way authentication again. Furthermore, the terminal may also store the third identifier.
- the terminal can update the first identifier based on the third identifier.
- the terminal and the network device perform two-way authentication again, the terminal can determine a new second identifier based on the updated first identifier. Based on this, the second identifier in the first message is different each time the two-way authentication is performed. Even if the second identifier is stolen, the identity information of the terminal cannot be obtained, thereby ensuring the security of the identity information of the terminal. Therefore, the message sent by the terminal to trigger the two-way authentication may not include the permanent identity identifier of the terminal, but includes the second identifier determined based on the updated first identifier. Even if the attacker obtains the second identifier in the first message, the identity of the terminal cannot be deciphered.
- the first message also includes: second authentication data for authenticating the terminal.
- the terminal directly carries the second authentication data used to authenticate the terminal in the first message, which facilitates the network to directly authenticate the terminal and can improve the efficiency of two-way authentication.
- a terminal parameter update process is used to receive the encrypted ciphertext.
- second authentication data for authenticating the terminal is received; and authentication of the terminal is performed based on the verification data and the second authentication data.
- the UDM/AUSF may receive the second authentication data, and the AUSF may perform authentication of the terminal based on the verification data and the second authentication data, which is not specifically limited in this application.
- a third identifier is generated, and the third identifier is used to generate a message for the terminal to trigger two-way authentication again; the third identifier is encrypted using a communication key to obtain an encrypted ciphertext, wherein the communication key is derived from the second long-term key; and the encrypted ciphertext is sent.
- the device on the network side also stores a third identifier.
- the receiving terminal before storing the third identifier, the receiving terminal receives confirmation information of successfully receiving the third identifier.
- the present application provides a communication method, which can be applied to a terminal or a chip of a terminal, which is not specifically limited here, and the terminal can be a mobile phone, a vehicle-mounted device, an Internet of Things device, etc.
- the execution is as follows:
- Obtain a first key identifier of the terminal the first key identifier indicating a first long-term key of the terminal; generate a communication key based on the first key identifier and the first long-term key; determine an identity hiding identifier, the identity hiding identifier includes a first encrypted ciphertext and a first key identifier, the first encrypted ciphertext is obtained by encrypting the first subscription permanent identifier of the terminal using the communication key; send the identity hiding identifier.
- the terminal generates a communication key based on the first key identifier and the first long-term key, and encrypts the first subscription permanent identifier preconfigured in the terminal based on the communication key to obtain a first encrypted ciphertext.
- the first encrypted ciphertext and the first key identifier are then sent to the network side as the content of the identity hiding identifier, so that the network side can determine the second long-term key and verify the first subscription permanent identifier.
- the terminal and the network side use symmetric (identical) communication keys for encryption and decryption, which can reduce the data processing complexity of the subscription permanent identifier encryption.
- the terminal also receives a second encrypted ciphertext and uses the communication key to decrypt the second encrypted ciphertext to obtain a second key identifier of the terminal, which is used to generate an identity hiding identifier for the terminal to access the network again. Further, the terminal may also store the second key identifier.
- the terminal can update the first key identifier based on the second key identifier.
- the communication key can be determined based on the second key identifier and the first long-term key, and the first subscription permanent identifier can be encrypted based on the communication key.
- the communication key is different from the communication key determined based on the first key identifier and the first long-term key. Based on this, each time the network is accessed, the first encrypted ciphertext encrypted by the communication key in the identity hiding identifier is different, and even if the identity hiding identifier is stolen, the user's identity information cannot be decrypted, thereby ensuring the security of the user's identity information.
- the technical solution provided in the embodiment of the present application can be applied to a 5G system, or to a future communication system or other similar communication systems.
- the technical solution provided in the embodiment of the present application can be applied to a cellular link, a public land mobile network (PLMN), a machine to machine (M2M) network, an Internet of Things (IoT) network or other networks.
- PLMN public land mobile network
- M2M machine to machine
- IoT Internet of Things
- It can also be applied to links between devices, such as a device to device (D2D) link.
- a D2D link can also be referred to as a sidelink, where the sidelink can also be referred to as a side link or a side link, etc.
- the above terms all refer to links established between devices of the same type, and their meanings are the same.
- the operator network may include one or more of the following network elements: authentication server function (AUSF), network exposure function (NEF), policy control function (PCF), unified data management (UDM), unified data repository (UDR), network repository function (NRF), access and mobility management function (AMF), session management function (SMF), access network and user plane function (UPF), etc.
- AUSF authentication server function
- NEF network exposure function
- PCF policy control function
- UDM unified data management
- UDR unified data repository
- NRF network repository function
- AMF access and mobility management function
- SMF session management function
- UPF user plane function
- the part other than the wireless access network part can be called the core network part.
- the operator network also includes an application function (AF).
- the AF may not belong to the operator network, but to a third party.
- the control plane functions mainly perform user registration and authentication, mobility management, and delivery of data packet forwarding strategies and QoS control strategies to the user plane functions.
- the control plane functions can be further refined to include other network elements besides UPF, such as AMF and SMF.
- AMF mainly performs the registration process when users access, as well as location management, access authentication/authorization and other functions during user mobility. In addition, it is also responsible for transmitting user policies between terminal devices and PCF.
- the connection between terminal devices and AMF can be called a non-access stratum (NAS) connection, and the messages transmitted between terminal devices and AMF are NAS messages.
- NAS non-access stratum
- SMF is mainly responsible for establishing corresponding session connections when users initiate services and providing specific services to users, such as sending data packet forwarding policies and QoS policies to UPF based on the NG4 interface between SMF and UPF.
- UDM is mainly responsible for storing the contract data of terminal devices, user access authorization and other functions.
- UDR is mainly responsible for the storage and access of contract data, policy data, application data and other types of data.
- PCF is mainly responsible for issuing business-related policies to AMF or SMF.
- NEF is mainly used to support the opening of capabilities and events.
- AF mainly transmits the application side's requirements on the network side to PCF, so that PCF generates corresponding policies.
- AF can be a third-party functional entity or an application service deployed by an operator, such as the Internet protocol (IP) multimedia subsystem (IMS) voice call service.
- IP Internet protocol
- IMS multimedia subsystem
- NRF can be used to provide network element discovery functions and provide network element information corresponding to the network element type based on requests from other network elements. NRF also provides network element management services, such as network element registration, update, deregistration, and network element status subscription and push.
- DN is a network outside the operator network.
- the operator network can access multiple DNs. Multiple services can be deployed on DN, which can provide data and/or voice services to terminal devices.
- DN is the private network of a smart factory.
- the sensors installed in the workshop of the smart factory can be terminal devices.
- the control server of the sensors is deployed in DN, and the control server can provide services for the sensors.
- the sensors can communicate with the control server, obtain instructions from the control server, and transmit the collected sensor data to the control server according to the instructions.
- DN is the internal office network of a company.
- the mobile phones or computers of the company's employees can be terminal devices.
- the employees' mobile phones or computers can access information and data resources on the company's internal office network.
- Nnssf, Nausf, Nnef, Nnrf, Npcf, Nudm, Naf, Namf, Nsmf, N1, N2, N3, N4, and N6 are interface sequence numbers. The meanings of these interface sequence numbers can be found in the meanings defined in the 3GPP protocol and are not limited here.
- the above network element or function can be a network element in a hardware device, a software function running on dedicated hardware, or a virtualized function instantiated on a platform (e.g., a cloud platform).
- a platform e.g., a cloud platform
- the above network element or function can be implemented by one device, or by multiple devices, or a functional module in one device, which is not specifically limited in the embodiments of the present application.
- the access and mobility management function (also referred to as the mobility management function), the authentication server function, and the unified data management in the embodiments of the present application may be the AMF, AUSF, and UDM in FIG. 1 , respectively, or may be a network element having the above-mentioned AMF, AUSF, and UDM functions in future communications such as the sixth generation (6G) network, and the embodiments of the present application are not limited to this.
- 6G sixth generation
- Home Network Identifier represents the home network identifier.
- SUPI type is IMSI
- the home network identifier consists of two parts:
- MNC Mobile Network Code
- the Home Network Identifier consists of a sequence of characters with variable length representing a domain name as specified in section 2.2 of IETF RFC 7542.
- the domain name shall correspond to the realm portion specified in the SUPI NAI format.
- Routing Indicator represents the routing identification, which consists of 1 to 4 decimal numbers allocated by the home network operator and provided in the USIM, allowing the network signaling with SUCI to be routed to the AUSF and UDM instances that can serve the user together with the home network identifier. If the routing indication is not configured on the USIM or ME, this data field should be set to 0.
- Protection Scheme Id represents the protection scheme identifier used for SUPI encryption, and consists of values in the range of 0-15. Protection Scheme Id represents the null scheme or non-null scheme specified in Appendix C of 3GPP TS 33.501 or the protection scheme specified by the HPLMN; if the SUPI type is GLI or GCI, the null scheme should be used. Currently, 3GPP defines this value as follows:
- null-scheme value is 0x0
- the NAS integrity key, RRC integrity key, and UP integrity key are all used to protect the integrity of the message.
- the NAS encryption key, RRC encryption key, and UP encryption key are all used to encrypt and protect the message.
- integrity protection and encryption protection can be performed, or one of the protections can be performed.
- security protection can be collectively referred to as security protection.
- the UE should generate UPU-MAC-I UE and include the generated UPU-MAC-I UE in the uplink NAS transmission message.
- UPU may also involve other specific details, which are not elaborated here. You can refer to the existing protocols for understanding.
- the first identifier can be understood as a temporary identity identifier of the terminal, and the first identifier can be updated as the number of two-way authentications occurs.
- the first identifier corresponding to the Xth two-way authentication between the terminal and the network is identifier A
- the first identifier corresponding to the X+1th two-way authentication between the terminal and the network is identifier B
- identifier A is different from identifier B.
- the first identifier may be a random sequence code or a sequence code in the format of a mobile communication network user identity identifier.
- the first identifier may also include a network identifier, such as a PLMN identifier, etc., and how to construct the first identifier is not specifically limited.
- the terminal may obtain the first identifier from the configuration parameters of the SIM or USIM of the terminal.
- the device on the network side After the two-way authentication between the terminal and the network is successful, the device on the network side generates a new first identifier and sends it to the terminal.
- the terminal After the terminal stores the new first identifier, the terminal reads the first identifier from the storage location of the new first identifier (for example, SIM, USIM, or ME). How the terminal obtains the first identifier is not specifically limited here.
- each first identifier is used for one two-way authentication, so that the first identifier of each two-way authentication in multiple two-way authentications is different. For example, each time a two-way authentication is performed with the network, a first identifier is selected from a resource pool of first identifiers as the first identifier used for the two-way authentication, and the first identifier is deleted from the resource pool.
- each first identifier can be used for multiple two-way authentications, but the first identifiers used by the same terminal in two consecutive two-way authentications are different. For example, each time a two-way authentication is performed with the network, a first identifier is selected from a resource pool of first identifiers as the first identifier used for the two-way authentication.
- the network side also configures the first identifier accordingly, for example, the first identifier is configured in the UDM or ARPF, and the configuration method is the same as the terminal.
- the second identifier is determined based on the first identifier in 6).
- the second identifier is updated as the first identifier is updated. For example, if the first identifier is identifier A, the second identifier corresponding to the first identifier is identifier 1; if the first identifier is identifier B, the second identifier corresponding to the first identifier is identifier 2. This is only an example and is not specifically limited.
- the second identifier can be carried in a two-way authentication request message between the terminal and the network, and indicates the identity information of the terminal in the two-way authentication process between the terminal and the network device.
- the second identifier is determined based on the first identifier.
- the first identifier can be reused as the second identifier (that is, the first identifier and the second identifier are the same identifier), or the first identifier can be encrypted to determine the second identifier.
- the second identifier can also be determined based on the first identifier and the long-term key of the terminal (the first long-term key or the second long-term key), such as the terminal (or the device on the network side) performs an encryption operation or a hash operation on the first identifier and the first long-term key to obtain the second identifier.
- KID H(K, RAND), where H represents a hash operation.
- K represents the first long-term key
- K represents the second long-term key
- RAND represents the first identifier
- KID represents the second identifier
- the second identifier can also be determined based on the first identifier, the first long-term key of the terminal, and the count value indicating the number of times the terminal triggers two-way authentication, such as performing an encryption operation or a hash operation on the first identifier, the first long-term key, and the count value to obtain the second identifier.
- KID H (K, RAND, COUNT), where COUNT represents the count value, H represents the hash operation, K represents the first long-term key, RAND represents the first identifier, and KID represents the second identifier.
- the device on the network side can pre-calculate the second identifier based on the first identifier, and store the correspondence between the first identifier, the second identifier and the second long-term key.
- the device on the network side can pre-calculate the second identifier according to the first identifier in accordance with the above-mentioned terminal to obtain the pre-calculated second identifier, which is not explained in detail here. It should be noted that when the device on the network side pre-calculates the second identifier, the first long-term key involved in calculating the second identifier needs to be replaced with the second long-term key.
- Symmetric key algorithm also known as symmetric encryption algorithm, private key encryption algorithm, shared key encryption algorithm, is a type of encryption algorithm in cryptography. This type of algorithm uses the same key for encryption and decryption, that is, the key is the same.
- A/B can mean A or B.
- “And/or” in this document is only a description of the association relationship of associated objects, indicating that there can be three relationships.
- a and/or B can mean: A exists alone, A and B exist at the same time, and B exists alone.
- “at least one” means one or more, and “plurality” means two or more.
- the words “first”, “second”, etc. do not limit the quantity and execution order, and the words “first”, “second”, etc. do not limit them to be different.
- the encryption processing mechanism In order to protect user privacy, there is an asymmetric encryption processing mechanism that encrypts the permanent identity (such as the above-mentioned SUPI).
- the encryption processing mechanism has high computational complexity and large computational consumption, and is unbearable for some terminal devices.
- the present application provides a processing scheme based on a symmetric encryption processing mechanism to protect the identity information of the terminal.
- the second identifier can be determined using the first identifier pre-configured by the terminal (applicable to the first access to the network and two-way authentication) or the updated first identifier from the network side (applicable to subsequent access to the network and two-way authentication).
- a two-way authentication process is performed between the terminal and the network, without using SUCI to perform a two-way authentication process between the terminal and the network (for example, 5G main authentication), such as implementation method one.
- the existing SUCI structure can also be modified, and the network can be accessed based on the modified SUCI, such as implementation method two.
- the present application does not specifically limit which specific scheme is used to encrypt the identity information of the terminal.
- the terminal in the following implementation method can be the terminal itself or a chip inside the terminal.
- the terminal can be a mobile phone, a vehicle-mounted device, an Internet of Things device, etc.
- the network may be a device on the network side or a chip of a device on the network side, which is not specifically limited here.
- the device on the network side may include UDM, AUSF, SEAF, and/or ARPF, etc.
- the device on the network side may be one network element or multiple network elements, or a device configured by multiple network elements, which is not specifically limited here. The following is an explanation based on different embodiments, which are as follows:
- Figure 4A is a schematic flow chart of a method embodiment of the present application, showing the detailed communication steps or operations of the method, but these steps or operations are only examples.
- the embodiment of the present application can also perform other operations or variations of the various operations in Figure 4A.
- the various steps in Figure 4A can be executed in a different order from that presented in Figure 4A, and it is possible that not all operations in Figure 4A need to be executed.
- Figure 4A takes the terminal and the network side device as an example for illustration. In actual application, it may also involve interaction with other devices, which will not be explained in detail here. As shown in Figure 4A, the method is executed as follows:
- Step 401 A terminal obtains a first identifier of the terminal and a first long-term key of the terminal.
- the terminal may obtain the first identifier from the configuration parameters of the SIM or USIM of the terminal.
- the device on the network side After the two-way authentication between the terminal and the network is successful, the device on the network side generates a new first identifier and sends it to the terminal.
- the terminal After the terminal stores the new first identifier, the terminal reads the first identifier from the storage location of the new first identifier (for example, SIM, USIM, or ME).
- the first identifier can be understood with reference to 6) above, which will not be repeated here.
- the first long-term key of the terminal can be obtained from the configuration parameters of the SIM or USIM of the terminal. Specifically, the first long-term key can be understood with reference to 5) above, which will not be repeated here.
- the terminal can be configured with a corresponding relationship between the first identifier and the first long-term key.
- the network side is configured with a corresponding relationship between the first identifier and the second long-term key (the second long-term key and the first long-term key are symmetric keys).
- the terminal also determines the second identifier based on the first identifier, which can be understood by referring to the above 7) and will not be repeated here.
- Step 402 The terminal sends a first message, wherein the first message is used to trigger two-way authentication and includes a second identifier.
- the device on the network side receives the first message.
- the first message mentioned above can be understood as a two-way authentication request message or a registration request message, and the present application does not specifically limit the message type of the first message.
- the first message can be sent by reusing existing message signaling or by using new message signaling, which is not specifically limited here.
- the first message further includes: second authentication data for authenticating the terminal, so that the network can directly authenticate the terminal and improve the efficiency of two-way authentication.
- the second authentication data can be derived from the first long-term key and the first identifier.
- RES* KDF(CK
- the second authentication data may not be sent at the same time as the second identifier, that is, it may be sent using a different message from the second identifier, which is not specifically limited in this application. It should be understood that the second authentication data may also be generated by the terminal after step 405 is executed and when it is determined that the terminal has successfully authenticated the network.
- the above-mentioned first message may also include indication information, and the indication information is used to indicate the method for determining the second identifier.
- the indication information is used to indicate that the second identifier is directly determined based on the first identifier, or is determined based on the first identifier and the first long-term key, or is determined based on the first identifier, the first long-term key and the count value. For example, if the indication information is index1, it indicates that the second identifier is directly determined based on the first identifier. If the indication information is index2, it indicates that the second identifier is determined based on the first identifier and the first long-term key.
- the indication information is index3, it indicates that the second identifier is determined based on the first identifier, the first long-term key and the count value.
- the first message may also include the count value, so that the device on the network side can more quickly determine the second long-term key that is symmetrical with the first long-term key based on the count value and the second identifier.
- Step 403 The network-side device determines the first identifier of the terminal and a second long-term key for authenticating the terminal in two-way authentication according to the second identifier, wherein the second long-term key and the first long-term key are symmetric keys.
- the device on the network side can perform pre-calculation based on the stored first identifier, determine the second identifier, and store the correspondence between the first identifier, the pre-calculated second identifier and the second long-term key. It should be understood that the pre-calculation can also use parameters such as the second long-term key, which is not limited in this application. For details, please refer to the description in 7) above.
- the device on the network side can search for the pre-calculated second identifier that is the same as the received second identifier, and determine the second long-term key based on the correspondence between the pre-calculated second identifier and the second long-term key.
- the device on the network side can also determine the first identifier based on the correspondence between the pre-calculated second identifier and the first identifier.
- other network side devices receive and save the second authentication data.
- the network side device determines the first verification data based on the second long-term key and the random number, and sends the first verification data to the other network side devices.
- the other network side devices verify the received second authentication data based on the first verification data.
- the network side device is UDM, and the other network side device is AUSF.
- the terminal generates the second authentication data and sends it to the device on the network side after step 406
- the device on the network side determines the first verification data based on the second long-term key and the random number, and sends the first verification data to other network side devices.
- Other network side devices store the first verification data, and use the first verification data to verify the second authentication data after receiving the second authentication data.
- the UDM may determine the first verification data and send the first verification data to the AUSF, and the AUSF stores the first verification data so that the received second authentication data can be verified after the terminal side sends the second authentication data in step 406.
- the device on the network side After receiving the second authentication data, the device on the network side can perform authentication on the terminal according to the verification data and the second authentication data.
- the first identifier can be updated so that the second identifier in the first message is different each time the two-way authentication is performed. Even if the second identifier is stolen during a certain two-way authentication, the identity information of the terminal cannot be obtained, thereby ensuring the security of the identity information of the terminal. Referring to FIG. 4B , after executing the above steps 401 to 407, it also includes:
- Step 408 When the terminal is successfully authenticated, the device on the network side generates a third identifier, and the third identifier is used to generate a message for the terminal to trigger two-way authentication again.
- Step 409 The device on the network side encrypts the third identifier using the communication key to obtain an encrypted ciphertext, wherein the communication key is derived from the second long-term key.
- the above step 409 may be performed by UDM or ARPF, for example, UDM generates a third identifier, and UDM uses the communication key to encrypt the third identifier to obtain an encrypted ciphertext.
- the above step 409 may also be performed by AUSF, for example, UDM sends the third identifier to AUSF, AUSF receives the third identifier, and then AUSF uses the communication key to encrypt the third identifier to obtain an encrypted ciphertext.
- Step 410 The device on the network side sends the encrypted ciphertext.
- the terminal receives the encrypted ciphertext.
- Step 411 The terminal uses the communication key to decrypt the encrypted ciphertext to obtain the third identifier of the terminal.
- the terminal can update the first identifier based on the third identifier.
- the terminal and the network device perform two-way authentication again, the terminal can determine a new second identifier based on the updated first identifier. Based on this, the second identifier in the first message is different each time the two-way authentication is performed. Even if the second identifier is stolen, the identity information of the terminal cannot be obtained, thereby ensuring the security of the identity information of the terminal. Therefore, the message sent by the terminal to trigger the two-way authentication may not include the permanent identity identifier of the terminal, but includes the second identifier determined based on the updated first identifier. Even if the attacker obtains the second identifier in the first message, the identity of the terminal cannot be deciphered.
- the first identifier may be obtained with reference to step 401 in FIG. 4A above.
- the UE obtains the first long-term key from the USIM and obtains the first identifier from the ME.
- This application does not specifically limit the method for obtaining the first identifier and the first long-term key.
- the characteristics of the first identifier may be understood with reference to 6) above and will not be described in detail here.
- the first message may also carry a count value, for example, when a count value is introduced when determining the second identifier.
- the first message may also carry indication information of a two-way authentication method, that is, the indication information of the above-mentioned 5G-AKA, EAP-AKA, or EAP-TLS.
- the second identifier can be transmitted between devices on the network side through different messages.
- SEAF sends an authentication request message to AUSF
- AUSF sends an authentication vector acquisition request message to UDM/ARPF.
- the authentication request message and the authentication vector acquisition request message carry the parameters introduced in 502 above.
- Step 505 UDM determines the first identifier of the terminal and the second long-term key for authenticating the UE in the two-way authentication based on the second identifier, and determines the first authentication data for authenticating the network in the two-way authentication based on the second long-term key and the random number, wherein the random number is generated based on the first identifier, and the second long-term key and the first long-term key of the UE are symmetric keys.
- the UDM may determine the first authentication data AUTN according to the second long-term key and the random number. It should be understood that the operation of the UDM in the present application may also be specifically performed by the ARPF. For ease of description, the UDM is used as an example in the following.
- UDM also determines the first verification data XRES* based on the second long-term key and the random number.
- MAC, where xor is exclusive OR, SQN is the serial number maintained by the UE and UDM, MAC f1(SQN
- AMF), AK f5(RAND), and the above f1, f2, f3, f4, and f5 are only examples, and the encryption function is not specifically limited here.
- the random number determined according to the first identifier is the same as the first identifier, the random number used in the above determination of the first authentication data and the first verification data can also be replaced by the first identifier.
- the execution order of the determination action of the UDM in the present application is not limited, for example, the first verification data XRES* may be determined first and then the first authentication data may be determined, and the present application does not make any limitation. Other embodiments are similar.
- Step 506 UDM sends first authentication data to AUSF.
- UDM also sends first verification data to AUSF. Accordingly, AUSF receives the first authentication data and the first verification data.
- the first authentication data and/or the first verification data is transmitted through an authentication vector acquisition response message.
- Step 507 AUSF stores the first verification data.
- AUSF stores the first verification data.
- the UE can be authenticated based on the first verification data.
- the key is deduced based on the first verification data to obtain the second verification data.
- AUSF deduce the first verification data XRES* to obtain the second verification data HXRES*. This can be understood by referring to the 5G main authentication, which will not be elaborated here.
- Step 508 AUSF sends first authentication data to SEAF.
- the second verification data and/or the first authentication data are transmitted via an authentication response message.
- Step 509 SEAF sends first authentication data to UE.
- UE receives the first authentication data.
- This step 509 can be sent via a NAS message. Specifically, it can be an authentication request message. To distinguish the authentication request message in step 503, the authentication request message in step 509 can be called a second authentication request message, and the authentication request message in step 503 can be called a first authentication request message.
- Step 510 The UE performs authentication of the network in a two-way authentication according to the random number, the first long-term key and the first authentication data.
- the second authentication data is generated according to the first long-term key and the random number.
- the UE includes two parts, the ME and the USIM, the ME can receive the first authentication data, and the USIM can calculate the second authentication data. Specifically, the ME can forward the first authentication data received in the NAS message to the USIM.
- the UE performs authentication of the network in the two-way authentication according to the random number, the first long-term key and the first authentication data. This can be understood by referring to the description of step 406 above and will not be repeated here.
- the second authentication data is generated based on the first long-term key and the random number.
- RES* KDF(CK
- KDF the key derivation function
- CK f3(K, RAND)
- IK f4(K, RAND)
- SN name is the service network name
- L0 is the length corresponding to the service network name
- RAND is a random number
- L1 is the length of the random number
- RES f2(K, RAND)
- L2 is the length of RES.
- the above f2, f3, and f4 are only examples, and the encryption function is not specifically limited here.
- the random number determined based on the first identifier is the same as the first identifier
- the random number used in the above determination of the first authentication data and the verification data can also be replaced by the first identifier.
- Step 511 UE sends second authentication data to SEAF.
- SEAF receives the second authentication data.
- the second authentication data may be carried in an authentication response message.
- Step 512 SEAF performs authentication based on the second authentication data.
- SEAF calculates the third authentication data HRES* based on the second authentication data, and verifies the third authentication data HRES* and the second verification data HXRES*.
- the specific calculation and verification methods can be understood with reference to the 5G main authentication, which will not be repeated here. If the third authentication data HRES* and the second verification data HXRES* are the same, the authentication is successful. Specifically, it means that the UE has the right to access the visited network. It should be understood that the authentication of the UE by the network side can specifically include the authentication in step 512 and/or the authentication in step 514.
- Step 513 SEAF sends the second authentication data to AUSF. Accordingly, AUSF receives the second authentication data.
- the second authentication data may be carried in an authentication request message and transmitted.
- the authentication request message may be referred to as a third authentication request message.
- Step 514 AUSF performs authentication based on the second authentication data.
- the AUSF performs verification based on the second authentication data RES* and the first verification data XRES*. If RES* and XRES* are the same, it is considered that the UE is successfully authenticated. Specifically, it means that the UE has the authority to access the home network.
- Step 515a AUSF sends the authentication result to SEAF.
- SEAF receives the authentication result.
- Step 515b AUSF sends the authentication result to UDM.
- UDM receives the authentication result.
- step 515a and step 515b The execution order of step 515a and step 515b is not specifically limited here. If the AUSF believes that the UE has the authority to access the home network, the authentication result is authentication success, and if the AUSF believes that the UE does not have the authority to access the home network, the authentication result is authentication failure.
- the network side may also update the first identifier.
- the steps are as follows:
- Step 516 If the authentication result received by the UDM is successful, a third identifier is generated for the UE.
- the UDM may also encrypt the third identifier to obtain an encrypted ciphertext.
- the UDM may encrypt RAND' to generate an encrypted ciphertext. This may be understood by referring to steps 408 and 409 in FIG. 4B above, and will not be described in detail here.
- Step 517 UDM sends the encrypted ciphertext or the third identifier to the UE through the UPU process.
- the encrypted ciphertext is transmitted through the UPU process.
- the encrypted ciphertext is used as the UPU data in the UPU process.
- the UDM may also use the UPU process to encrypt and transmit the third identifier.
- the third identifier is used as UPU data in the UPU process.
- step 517 is used as an example for UDM to send encrypted ciphertext to UE through the UPU process.
- Step 518a The UE decrypts the encrypted ciphertext to obtain the third identifier, or directly decrypts to obtain the third identifier.
- the UE stores a third identifier.
- the third identifier is an updated first identifier, for example, used to generate a message for the terminal to trigger the two-way authentication again, that is, the third identifier is used as the first identifier in step 501 during the next two-way authentication.
- the UE can replace the original first identifier with the third identifier, or the UE retains the original first identifier and further stores the third identifier. No limitation is made.
- the UE after obtaining the third identifier, the UE sends a confirmation message to the UDM indicating that the UE successfully receives the third identifier, so as to trigger the execution of step 518b.
- Step 518b The UDM stores the third identifier.
- the UDM may update the first identifier to the third identifier, see step 518a for details.
- the UDM may also pre-calculate a new second identifier based on the third identifier.
- step 518a and step 518b are not specifically limited here.
- This method uses a symmetric encryption mechanism to protect user privacy.
- the first identifier also replaces the random number in the main authentication process, which can save the cost of the main authentication process.
- the use of a 256-bit symmetric encryption algorithm can achieve the beneficial effect of anti-quantum attack and reduce the computing and transmission consumption introduced by the post-quantum encryption algorithm.
- the UE obtains the first identifier of the UE and the first long-term key of the UE, and determines the second identifier according to the first identifier.
- the UE also generates second authentication data according to the first long-term key and a random number. The random number is generated according to the first identifier.
- the generation of the second authentication data can be understood by referring to step 510 in FIG. 5 , which will not be described in detail here.
- Step 602 UE sends a second identifier and second authentication data to SEAF.
- SEAF receives the second identifier and second authentication data.
- the second identifier and the second authentication data may be carried in the first message, and the first message may be a registration request message or an identity response message. That is, the second identifier and the second authentication data may be carried in the registration request message initiated by the UE, or the network side may initiate an identity request, so that the identity response message sent by the UE carries the second identifier and the second authentication data.
- the first message may also carry a count value, for example, when a count value is introduced when determining the second identifier.
- the first message may also carry indication information of a two-way authentication method, that is, the indication information of the above-mentioned 5G-AKA, EAP-AKA, or EAP-TLS.
- the second authentication data may be determined with reference to step 510 in FIG. 5 , and is not specifically limited here.
- Step 603 SEAF forwards the second identifier and the second authentication data to AUSF. Accordingly, AUSF receives the second identifier and the second authentication data.
- Step 604 AUSF forwards the second identifier to UDM. Accordingly, UDM receives the second identifier.
- the AUSF stores second authentication data.
- the AUSF also forwards the second authentication data to the UDM. Accordingly, the UDM receives the second authentication data.
- the second identifier can be transmitted between devices on the network side through different messages, and the second authentication data and the second identifier can be carried in the same message.
- SEAF sends an authentication request message to AUSF
- AUSF sends an authentication vector acquisition request message to UDM.
- the authentication request message and the authentication vector acquisition request message carry the parameters introduced in step 602 above.
- the first authentication data may be determined by referring to step 505 in Fig. 5 above, which will not be described in detail herein.
- the first verification data may also be determined by referring to step 505 in Fig. 5 above.
- Step 606 UDM sends the first authentication data to AUSF.
- AUSF receives the first authentication data.
- the UDM also sends the first verification data to the AUSF in step 606. Accordingly, the AUSF receives the first verification data.
- the first authentication data and/or the first verification data may be transmitted via an authentication vector acquisition response message.
- Step 607 UDM/AUSF authenticates the second authentication data.
- Step 607 in FIG. 6 is illustrated by taking the AUSF authenticating the second authentication data as an example.
- the UDM may use the first verification data to verify the second authentication data to thereby authenticate the terminal.
- the AUSF If the AUSF does not forward the second authentication data to the UDM in step 604, the AUSF verifies the second authentication data received in step 603 and stored in step 604 according to the first verification data received in step 606, thereby authenticating the terminal. That is, the AUSF stores the second authentication data in step 604.
- the UDM/AUSF performs authentication based on the second authentication data RES* and the first verification data XRES*. If RES* and XRES* are the same, it is considered that the UE is successfully authenticated.
- step 607 can occur after the first verification data is determined in step 605 on the UDM side, or after the first verification data is received in step 606 on the AUSF side, and is not limited here.
- Step 608 UDM obtains the authentication result.
- the UDM verifies the second authentication data according to the above step 607 to obtain an authentication result.
- the AUSF verifies the second authentication data according to the above step 607 to obtain an authentication result, and sends the authentication result to the UDM, so that the UDM obtains the authentication result.
- step 608 is described by taking the example of the AUSF sending the authentication result to the UDM.
- the network side may also update the first identifier.
- the steps are as follows:
- Step 609 If the authentication result received by the UDM is successful, a third identifier is generated for the UE.
- Step 610 UDM sends a third identifier or encrypted ciphertext to AUSF.
- step 610 in which the UDM sends the third identifier to the AUSF is taken as an example for explanation.
- Step 611 AUSF encrypts the third identifier to generate an encrypted ciphertext.
- UDM may also encrypt the third identifier, generate encrypted ciphertext, and send the encrypted ciphertext to AUSF.
- the UDM If in the above step 609, the UDM generates a third identifier and encrypts the third identifier to generate an encrypted ciphertext, then the above step 610 is that the UDM sends the encrypted ciphertext to the AUSF, and the above step 611 may not be executed.
- Step 612 AUSF sends the encrypted ciphertext and the first authentication data to SEAF.
- SEAF receives the encrypted ciphertext and the first authentication data.
- the encrypted ciphertext and/or the first authentication data are transmitted via an authentication response message.
- the first authentication data can be sent through the same message as the encrypted ciphertext; it can also be sent through different messages, for example, after step 607, AUSF sends the first authentication data and after step 610 or 611, AUSF sends the first encrypted ciphertext.
- Step 613 SEAF sends the encrypted ciphertext and the first authentication data to the UE.
- the UE receives the encrypted ciphertext and the first authentication data.
- This step 613 can be sent via a NAS message. Specifically, it can be an authentication request message. To distinguish the authentication request message in step 603, the authentication request message in step 613 can be called a second authentication request message, and the authentication request message in step 603 can be called a first authentication request message.
- the first authentication data and the encrypted ciphertext may be sent through the same message; or may be sent through different messages.
- Step 614 The UE performs authentication of the network in the two-way authentication according to the random number, the first long-term key and the first authentication data.
- step 510 in FIG. 5 The specific authentication may be understood by referring to step 510 in FIG. 5 above, which will not be described in detail here.
- the encrypted ciphertext is decrypted to obtain the third identifier, and the third identifier is stored.
- the third identifier is the updated first identifier, for example, used to generate a message for the terminal to trigger the two-way authentication again, that is, the third identifier is used as the first identifier in step 601 during the next two-way authentication.
- the UE can replace the original first identifier with the third identifier, or the UE can retain the original first identifier and further store the third identifier. No limitation is made.
- Step 615 UE sends a message of successful network authentication to UDM through SEAF and AUSF.
- UDM receives the message of successful network authentication of UE.
- step 609 can also be performed after step 615, that is, UDM generates a third identifier (the encrypted ciphertext is similar and will not be repeated) and sends the third identifier when determining that both authentications are successful.
- the UDM may generate the third identifier first, and then send the third identifier after step 615. That is, the UDM sends the third identifier when determining that both bidirectional authentications are successful.
- Step 616 The UDM stores the third identifier.
- the UDM may update the first identifier to the third identifier, see step 518a for details.
- the UDM may also pre-calculate a new second identifier based on the third identifier.
- This method uses a symmetric cryptographic mechanism to protect user privacy while combining the transmission of the terminal's identity (i.e., the first identification), the main authentication, and the transmission process of the new terminal identity (i.e., the third identification), thereby saving transmission consumption.
- the use of a 256-bit symmetric cryptographic algorithm can achieve the beneficial effect of anti-quantum attack and reduce the computation and transmission consumption introduced by the post-quantum cryptographic algorithm.
- this process sends the second identification together with the second authentication data used to authenticate the terminal, which can save signaling overhead and improve data processing efficiency.
- Step 701 to step 708 are the same as the execution process of step 601 to step 608 in FIG. 6 , which can be understood by reference and will not be described in detail here.
- Step 709 AUSF sends the first authentication data to SEAF. Accordingly, SEAF receives the first authentication data.
- the first authentication data is transmitted through an authentication vector acquisition response message.
- Step 710 SEAF sends first authentication data to UE.
- UE receives the first authentication data.
- This step 710 may be sent via a NAS message. Specifically, it may be an authentication request message. To distinguish the authentication request message in step 703, the authentication request message in step 710 may be referred to as a second authentication request message, and the authentication request message in step 703 may be referred to as a first authentication request message.
- Step 711 The UE performs authentication of the network in a two-way authentication according to the random number, the first long-term key and the first authentication data.
- step 510 in FIG. 5 This can be understood by referring to step 510 in FIG. 5 , and will not be described in detail here.
- Step 712 UE sends a message of successful network authentication to UDM through SEAF and AUSF.
- UDM receives the message of successful network authentication of UE.
- Step 713 If the authentication result received by the UDM is successful, a third identifier is generated for the UE.
- UDM can also encrypt the third identifier to obtain encrypted ciphertext.
- the third identifier is RAND'
- UDM can encrypt RAND' to generate encrypted ciphertext.
- the process of generating the third identifier and encrypting the third identifier can be understood by referring to steps 408 and 409 in FIG. 4B , or step 516 in FIG. 5 , or step 609 in FIG. 6 , and will not be described in detail here.
- Step 714 UDM sends a third identifier or encrypted ciphertext to the UE through the UPU process.
- step 714 is taken as an example for explaining that the UDM sends encrypted ciphertext to the UE through the UPU process.
- Step 715a The UE decrypts the encrypted ciphertext to obtain the third identifier, or directly decrypts to obtain the third identifier.
- the UE stores a third identifier.
- the third identifier is an updated first identifier, for example, used to generate a message for the terminal to trigger the two-way authentication again, that is, the third identifier is used as the first identifier in step 701 during the next two-way authentication.
- the UE can replace the original first identifier with the third identifier, or the UE retains the original first identifier and further stores the third identifier. No limitation is made.
- the UE sends a confirmation message to the UDM indicating that the UE successfully receives the third identifier, so as to trigger the execution of step 715b.
- Step 715b UDM stores the third identifier.
- the UDM may update the first identifier to the third identifier, see step 715a for details.
- the UDM may also pre-calculate a new second identifier based on the third identifier.
- This method combines the transmission process of the terminal identity (i.e., the first identification) transmission, the main authentication and the new terminal identity (i.e., the third identification) transmission process while using a symmetric cryptographic mechanism to protect user privacy, thereby saving transmission consumption.
- the use of a 256-bit symmetric cryptographic algorithm can achieve the beneficial effect of anti-quantum attack and reduce the calculation and transmission consumption introduced by the post-quantum cryptographic algorithm.
- the process sends the second identification together with the second authentication data used to authenticate the terminal, which can save signaling overhead and improve data processing efficiency.
- the scheme of Figure 7 has smaller changes and is more adapted to the needs of the current communication system.
- Step 801 A terminal obtains a first key identifier of the terminal, where the first key identifier indicates a first long-term key of the terminal.
- the terminal may obtain the first key identifier from the configuration parameters of the SIM or USIM of the terminal.
- the network-side device After the terminal's identity authentication is successful, the network-side device generates a new first key identifier and sends it to the terminal. After the terminal stores the new first key identifier, the terminal reads the first key identifier from the storage location of the new first key identifier (e.g., SIM, USIM, or ME).
- the storage location of the new first key identifier e.g., SIM, USIM, or ME.
- the first key identifier is obtained from the ME, and the first long-term key is obtained from the USIM or the SIM.
- the first long-term key and the first key identifier are obtained from the USIM or SIM.
- the first key identifier may be a temporary key identifier generated by the network after the terminal is successfully authenticated and sent to the UE, and the first key identifier is not specifically limited herein.
- the terminal also obtains a first subscription permanent identifier preconfigured in the terminal.
- the terminal may obtain the first subscription permanent identifier from a SIM or a USIM.
- the terminal may preconfigure multiple first key identifiers, for example, a first key identifier resource pool.
- each first key identifier is used only for one identity authentication, so that the first key identifier for each identity authentication in multiple identity authentications is different. For example, each time when authenticating with the network, a first key identifier is selected from the first key identifier resource pool as the first key identifier used for identity authentication, and the selected first key identifier in the first key identifier resource pool is deleted.
- a first key identifier is selected from a resource pool of first key identifiers as a first key identifier used for identity authentication, the selected first key identifier is not deleted.
- Step 802 The terminal generates a communication key based on the first key identifier and the first long-term key.
- the terminal may use the first long-term key to perform encryption operation on the first key identifier to obtain the communication key.
- the communication key is a symmetric key for encrypting and protecting the SUPI, EK
- MK KDF(K, KID, SN Name), where EK
- Step 803 The terminal determines an identity hiding identifier, where the identity hiding identifier includes a first encrypted ciphertext and a first key identifier, where the first encrypted ciphertext is obtained by encrypting the first subscription permanent identifier of the terminal using a communication key.
- the identity hiding identifier may be understood as SUCI, and the first subscription permanent identifier may be understood as SUPI, which are not specifically limited herein.
- the structure of SUCI in this application is shown in FIG9 , which is equivalent to replacing the Home Network Public Key Id in the existing SUCI with KID.
- the communication key EK is used to encrypt SUPI to generate a first encrypted ciphertext C
- the communication key MK is used to encrypt the ciphertext generated by SUPI to perform integrity protection, and generate a message authentication code MAC tag value.
- the scheme out part of SUCI is the concatenation of the first encrypted ciphertext C and the message authentication code MAC tag value, that is, C
- the scheme out part of SUCI does not need to transmit a temporary public key. Instead, only the encrypted first ciphertext and the message authentication code MAC tag value can be sent.
- Step 804 The terminal sends an identity hiding identifier.
- the device on the network side receives the identity hiding identifier.
- the above step 804 may be sent via a registration request or an identity authentication request, which is not specifically limited here.
- Step 805 The network-side device determines a second long-term key and a preconfigured second subscription permanent identifier of the terminal according to the first key identifier, and the second long-term key and the first long-term key of the terminal are symmetric keys.
- the device on the network side obtains the first key identifier from the received identity hiding identifier according to the data structure of the identity hiding identifier, for example, obtains the first key identifier KID from the location where the SUCI stores the KID, and the device on the network side (for example, UDM or ARPF) can pre-configure the correspondence between the first key identifier and the second long-term key and the pre-configured second subscription permanent identifier of the terminal.
- the device on the network side can retrieve the second long-term key and the pre-configured second subscription permanent identifier according to the first key identifier.
- Step 806 The device on the network side determines the communication key according to the second long-term key, and uses the communication key to decrypt the first encrypted ciphertext to obtain the first subscription permanent identifier of the terminal.
- step 806 The method for determining the communication key in the above step 806 can be understood by referring to step 802 and will not be repeated here.
- the device on the network side can obtain the first encrypted ciphertext C and the message authentication code MAC tag value from the received identity hiding identifier according to the data structure of the identity hiding identifier.
- the message authentication code MAC tag value is verified using the communication key MK and the first encrypted ciphertext. If the verification passes, the first encrypted ciphertext C is decrypted using the communication key CK to obtain the first subscription permanent identifier of the terminal.
- the verification of MAC tag value can be performed in the following manner: the first encrypted ciphertext C is MAC calculated using the communication key MK to obtain the message authentication code MAC tag value2, and the MAC tag value2 is compared to see if they are the same. If they are the same, the verification passes, and if they are not the same, the verification fails.
- Step 807 The network-side device authenticates the terminal according to the first subscription permanent identifier and the second subscription permanent identifier.
- the above steps 806 and 807 can both be executed by UDM or ARPF.
- the terminal authentication is successful; if they are not the same, the terminal authentication fails.
- the network side device can deduce the communication keys EK and MK based on the first key identifier, the service network, etc., and use MK to perform integrity check on the MAC tag value of the schemeout part. If the MAC tag value is verified, the first encrypted ciphertext is decrypted using EK to obtain the decoded SUPI (that is, the first subscription permanent identifier).
- the network side device compares the decrypted SUPI with the pre-configured SUPI retrieved by the first key identifier in the above step 805 to see if they are consistent; if they are consistent, the network side device considers that the terminal identity authentication is successful.
- the terminal generates a communication key based on the first key identifier and the first long-term key, and encrypts the first subscription permanent identifier preconfigured in the terminal based on the communication key to obtain a first encrypted ciphertext.
- the first encrypted ciphertext and the first key identifier are then sent to the network side as the content of the identity hiding identifier, so that the network side can determine the second long-term key and verify the first subscription permanent identifier.
- the terminal and the network side use symmetric (identical) communication keys for encryption and decryption, which can reduce the data processing complexity of the subscription permanent identifier encryption.
- the first key identifier can be updated to ensure that the first key identifier in the SUCI is different during the terminal identity authentication. Even if the first key identifier is stolen during a terminal authentication, the identity of the terminal cannot be obtained, thereby ensuring the security of the terminal identity information. Referring to FIG. 8B, after executing the above steps 801 to 807, the following steps are also included:
- Step 808 When the terminal is successfully authenticated, the network-side device generates a second key identifier, which is used to generate an identity hiding identifier for the terminal to access the network again.
- the second key identifier can be a random number generated by a random number generator.
- the second key identifier can be composed of a random number generated by a random number generator and a proprietary identifier (for example, a PLMN identifier).
- the device on the network side (for example, UDM) maintains a resource pool of second key identifiers, and each time the network successfully authenticates the terminal, a second key identifier is randomly selected from the resource pool.
- the device on the network side maintains an increasing serial number of a fixed length, and each time the network successfully authenticates a terminal, the current serial number is selected as the second key identifier of the terminal.
- the generation method of the second key identifier is not specifically limited here.
- the above step 808 can be performed by UDM or ARPF.
- the device on the network side stores a second key identifier.
- the second key identifier is an updated first key identifier, for example, used to generate an identity hiding identifier for the terminal to access the network again, that is, the second key identifier is used as the first key identifier in step 801 the next time the terminal accesses the network.
- the UDM can replace the original first key identifier with the second key identifier, or the UDM retains the original first key identifier and further stores the second key identifier. No limitation is made.
- Step 809 The device on the network side uses the communication key to encrypt the second key identifier to obtain a second encrypted ciphertext.
- a second key identifier is generated for the terminal.
- UDM or ARPF can use EK to encrypt the second key identifier to obtain a second encrypted ciphertext.
- Step 810 The device on the network side sends a second encrypted ciphertext.
- the second encrypted ciphertext in the above step 810 may be transmitted to the terminal by the UDM or ARPF via the AUSF and SEAF.
- the device on the network side may also use the terminal parameter update process to transmit the encrypted ciphertext.
- the encrypted ciphertext is transmitted through the UPU process.
- the second encrypted ciphertext is used as the UPU data in the UPU process.
- the device on the network side may also use a UPU process to encrypt and transmit the second key identifier.
- the second key identifier is used as UPU data in the UPU process.
- Step 811 The terminal uses the communication key to decrypt the second encrypted ciphertext to obtain a second key identifier of the terminal.
- the terminal may store the second key identifier, and it should be understood that the second key identifier is an updated first key identifier, for example, used to generate an identity hiding identifier for the terminal to access the network again, that is, the second key identifier is used as the first key identifier in step 801 the next time the terminal accesses the network.
- the terminal may replace the original first key identifier with the second key identifier, or the terminal may retain the original first key identifier and further store the second key identifier. No limitation is made.
- the terminal may send a confirmation message to the network side device indicating that the terminal has successfully received the second key identifier.
- the network side device may store the second key identifier.
- the terminal can update the first key identifier based on the second key identifier.
- the communication key can be determined based on the second key identifier and the first long-term key, and the first subscription permanent identifier can be encrypted based on the communication key.
- the communication key is different from the communication key determined based on the first key identifier and the first long-term key. Based on this, each time the network is accessed, the first encrypted ciphertext encrypted by the communication key in the identity hiding identifier is different, and even if the identity hiding identifier is stolen, the user's identity information cannot be decrypted, thereby ensuring the security of the user's identity information.
- each device may include a hardware structure and/or software module corresponding to each function.
- the embodiments of the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present application.
- the embodiment of the present application can divide the functional units of the device according to the above method example, for example, each functional unit can be divided according to each function, or two or more functions can be integrated into one unit.
- the above integrated unit can be implemented in the form of hardware or in the form of software functional units.
- FIG10 shows a possible exemplary block diagram of a communication device involved in an embodiment of the present application.
- the communication device 1000 may include: a processing unit 1001 and a transceiver unit 1002.
- the processing unit 1001 is used to control and manage the actions of the communication device 1000.
- the transceiver unit 1002 is used to support the communication of the communication device 1000 with other devices.
- the transceiver unit 1002 may include a receiving unit and/or a sending unit, which are respectively used to perform receiving and sending operations.
- the communication device 1000 may also include a storage unit for storing program code and/or data of the communication device 1000.
- the transceiver unit may be referred to as an input-output unit, a communication unit, etc., and the transceiver unit may be a transceiver; the processing unit may be a processor.
- the communication device is a module (such as a chip) in a communication device
- the transceiver unit may be an input-output interface, an input-output circuit or an input-output pin, etc., and may also be referred to as an interface, a communication interface or an interface circuit, etc.
- the processing unit may be a processor, a processing circuit or a logic circuit, etc.
- the device may be the above-mentioned terminal, network side equipment such as SEAF, AUSF and UDM, etc.
- the specific execution process may refer to the description of the above-mentioned method embodiment and will not be described in detail here.
- the communication device 1000 is a terminal, and the processing unit 1001 is used to obtain a first identifier of the terminal and a first long-term key of the terminal; the transceiver unit 1002 is used to send a first message, wherein the first message is used to trigger two-way authentication, the first message includes a second identifier, and the second identifier is used to determine a second long-term key for authenticating the terminal in the two-way authentication, the second identifier is determined based on the first identifier, and the second long-term key and the first long-term key are symmetric keys; the transceiver unit 1002 is also used to receive first authentication data; the processing unit 1001 is also used to perform authentication of the network in the two-way authentication based on a random number, the first long-term key and the first authentication data, wherein the random number is generated based on the first identifier.
- the transceiver unit 1002 is also used to receive encrypted ciphertext; the processing unit 1001 is also used to decrypt the encrypted ciphertext using a communication key to obtain a third identifier of the terminal, wherein the communication key is derived from the first long-term key, and the third identifier is used to generate a message for the terminal to trigger two-way authentication again.
- the first message also includes: second authentication data for authenticating the terminal.
- the transceiver unit 1002 is further configured to send a confirmation message indicating that the terminal has successfully received the third identifier.
- the transceiver unit 1002 is further configured to receive encrypted ciphertext using a terminal parameter update process.
- the second identifier is determined by one of the following:
- the first identifier or, the first identifier and the first long-term key; or, the first identifier, the first long-term key, and a count value, wherein the count value indicates the number of times the terminal triggers two-way authentication.
- the communication device 1000 is a device on the network side (for example, UDM), and the transceiver unit 1002 is used to receive the second identifier of the terminal; the processing unit 1001 is used to determine the first identifier of the terminal and the second long-term key for authenticating the terminal in two-way authentication based on the second identifier, and the second long-term key and the first long-term key of the terminal are symmetric keys; the verification data is determined based on the second long-term key and the random number, and the verification data is used to perform authentication of the terminal in two-way authentication, and the random number is determined based on the first identifier; the first authentication data used to authenticate the network in two-way authentication is determined based on the second long-term key and the random number; the transceiver unit 1002 is also used to send the first authentication data.
- the processing unit 1001 is used to determine the first identifier of the terminal and the second long-term key for authenticating the terminal in two-way authentication based on the second identifier, and the
- the communication device 1000 is a terminal
- the processing unit 1001 is used to obtain a first key identifier of the terminal, the first key identifier indicating a first long-term key of the terminal; generate a communication key based on the first key identifier and the first long-term key; determine an identity hiding identifier, the identity hiding identifier includes a first encrypted ciphertext and a first key identifier, the first encrypted ciphertext is obtained by encrypting the first subscription permanent identifier of the terminal using the communication key; the transceiver unit 1002 is used to send the identity hiding identifier.
- the transceiver unit 1002 is also used to receive a second encrypted ciphertext; the processing unit 1001 is also used to decrypt the second encrypted ciphertext using the communication key to obtain a second key identifier of the terminal, and the second key identifier is used to generate an identity hiding identifier for the terminal to access the network again.
- the transceiver unit 1002 is further configured to receive the second encrypted ciphertext using a terminal parameter update procedure.
- the communication device 1000 is a device on the network side (such as UDM or ARPF), and the transceiver unit 1002 is used to receive the identity hiding identifier of the terminal, and the identity hiding identifier includes a first encrypted ciphertext and a first key identifier; the processing unit 1001 is used to determine the second long-term key and the pre-configured second subscription permanent identifier of the terminal according to the first key identifier, and the second long-term key and the first long-term key of the terminal are symmetric keys; the first encrypted ciphertext is decrypted based on the communication key to obtain the first subscription permanent identifier of the terminal, and the communication key is derived from the second long-term key; the terminal is authenticated according to the first subscription permanent identifier and the second subscription permanent identifier.
- the identity hiding identifier includes a first encrypted ciphertext and a first key identifier
- the processing unit 1001 is used to determine the second long-term key and the pre-configured second subscription permanent identifier of
- the processing unit 1001 is also used to generate a second key identifier, which is used to generate an identity hiding identifier for the terminal to access the network again; the second key identifier is encrypted using the communication key to obtain a second encrypted ciphertext; and the transceiver unit 1002 is also used to send the second encrypted ciphertext.
- the processing unit 1001 is configured to store the second key identifier.
- the transceiver unit 1002 is further configured to receive confirmation information that the terminal successfully receives the second key identifier.
- the transceiver unit 1002 is further configured to send the second encrypted ciphertext using a terminal parameter update process.
- the present application also provides a communication device 1100.
- the communication device 1100 may be a chip or a chip system.
- the communication device may be located in a device involved in any of the above method embodiments, such as a first terminal, a network device, etc., to perform actions corresponding to the device.
- the chip system may consist of the chip, or may include the chip and other discrete devices.
- the communication device 1100 includes a processor 1110 .
- the processor 1110 is used to execute the computer program stored in the memory 1120 to implement the actions of each device in any of the above method embodiments.
- the communication device 1100 may further include a memory 1120 for storing computer programs.
- the memory 1120 is coupled to the processor 1110. Coupling is an indirect coupling or communication connection between devices, units or modules, which can be electrical, mechanical or other forms, for information exchange between devices, units or modules.
- the memory 1120 is integrated with the processor 1110.
- the processor 1110 and the memory 1120 may be one or more and are not limited.
- the communication device 1100 may include or exclude the transceiver 1130, which is illustrated by a dotted box in the figure.
- the communication device 1100 may exchange information with other devices through the transceiver 1130.
- the transceiver 1130 may be a circuit, a bus, or any other device that can be used for information exchange.
- the communication device 1100 may be the first terminal or the network device in the implementation of the above methods.
- the specific connection medium between the above-mentioned transceiver 1130, the processor 1110 and the memory 1120 is not limited.
- the memory 1120, the processor 1110 and the transceiver 1130 are connected by a bus in FIG. 11, and the bus is represented by a thick line in FIG. 11.
- the connection mode between other components is only for schematic illustration and is not limited.
- the bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in FIG. 11, but it does not mean that there is only one bus or one type of bus.
- the processor can be a general-purpose processor, a digital signal processor, an application-specific integrated circuit, a field programmable gate array or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component, and can implement or execute the various methods, steps and logic block diagrams disclosed in the embodiment of the present application.
- the general-purpose processor can be a microprocessor or any conventional processor, etc.
- the steps of the method disclosed in the embodiment of the present application can be directly embodied as a hardware processor to be executed, or a combination of hardware and software modules in the processor can be executed.
- the memory may be a non-volatile memory, such as a hard disk drive (HDD) or a solid-state drive (SSD), etc., or a volatile memory (volatile memory), such as a random-access memory (RAM).
- the memory may also be any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto.
- the memory in the embodiments of the present application may also be a circuit or any other device that can implement a storage function, for storing computer programs, program instructions and/or data.
- the embodiments of the present application also provide another communication device 1200, including: an interface circuit 1210 and a logic circuit 1220; the interface circuit 1210 can be understood as an input-output interface, which can be used to execute the receiving and sending steps of each device in any of the above method embodiments; the logic circuit 1220 can be used to run codes or instructions to execute the method executed by each device in any of the above embodiments, which will not be repeated.
- the embodiments of the present application further provide a computer-readable storage medium, which stores instructions.
- the computer-readable storage medium may include: a USB flash drive, a mobile hard disk, a read-only memory, a random access memory, a magnetic disk or an optical disk, and other media that can store program codes.
- an embodiment of the present application provides a communication system, which includes the terminal, UDM, AUSF, SEAF, and/or ARPF and other devices mentioned in any of the above method embodiments, and can be used to execute the method executed by each device in any of the above method embodiments.
- the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present application may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, compact disc read-only memory (CD-ROM), optical storage, etc.) containing computer-usable program code.
- CD-ROM compact disc read-only memory
- optical storage etc.
- These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer-readable memory produce a product including an instruction device that implements the functions specified in one or more processes in the flowchart and/or one or more boxes in the block diagram.
- These computer program instructions may also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, whereby the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one or more processes in the flowchart and/or one or more boxes in the block diagram.
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)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
相关申请的交叉引用CROSS-REFERENCE TO RELATED APPLICATIONS
本申请要求在2023年12月28日提交中华人民共和国国家知识产权局、申请号为202311862415.5、申请名称为“一种通信方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims priority to the Chinese patent application filed with the State Intellectual Property Office of the People's Republic of China on December 28, 2023, with application number 202311862415.5 and application name "A Communication Method and Device", all contents of which are incorporated by reference in this application.
本申请实施例涉及通信技术领域,尤其涉及一种通信方法及装置。The embodiments of the present application relate to the field of communication technology, and in particular, to a communication method and device.
移动通信网络中,用户设备(user equipment,UE)通过用户识别模块(subscriber identity module,SIM)或者全球用户身份模块(universal subscriber identity module,USIM)中的订阅数据与网络侧进行相互认证,从而获得接入网络的授权。无论采用何种方式进行认证,网络侧都需要获得UE的永久身份标识,以根据永久身份标识获得对应的长期密钥K,从而进行认证流程。In a mobile communication network, the user equipment (UE) authenticates itself with the network through the subscription data in the subscriber identity module (SIM) or the universal subscriber identity module (USIM) to obtain authorization to access the network. Regardless of the authentication method, the network needs to obtain the permanent identity of the UE in order to obtain the corresponding long-term key K based on the permanent identity and then proceed with the authentication process.
然而,如果直接明文发送永久身份标识,将暴露用户的永久身份标识,从而破坏用户的隐私。因此,在第5代(the 5th generation,5G)网络中,引入了对用户永久身份标识的加密机制,用户在首次注册时,对用户的永久身份标识信息进行加密处理,以确保用户的永久身份标识信息的安全性。但是,现有对用户的永久身份标识信息的加密处理方式需使用通信和计算开销较大的非对称加密机制,对于个别能力受限的终端来说,可能是无法承受的。However, if the permanent identity is sent directly in plain text, the user's permanent identity will be exposed, thereby destroying the user's privacy. Therefore, in the 5th generation (5G) network, an encryption mechanism for the user's permanent identity is introduced. When the user registers for the first time, the user's permanent identity information is encrypted to ensure the security of the user's permanent identity information. However, the existing encryption processing method for the user's permanent identity information requires the use of an asymmetric encryption mechanism with large communication and computing overhead, which may be unaffordable for individual terminals with limited capabilities.
本申请提供一种通信方法及装置,以保护用户身份信息的安全。The present application provides a communication method and device to protect the security of user identity information.
第一方面,本申请提供一种通信方法,该方法可应用于终端或终端的芯片,在此不具体限定,终端可以为手机、车载设备、物联网设备等。执行如下:In a first aspect, the present application provides a communication method, which can be applied to a terminal or a chip of a terminal, which is not specifically limited here, and the terminal can be a mobile phone, a vehicle-mounted device, an Internet of Things device, etc. The execution is as follows:
获得终端的第一标识和终端的第一长期密钥;发送第一消息,其中,第一消息用于触发双向认证,第一消息包括终端的第二标识,第二标识用于确定双向认证中对终端进行认证的第二长期密钥,第二标识是根据第一标识确定的,第二长期密钥与第一长期密钥为对称密钥;接收第一认证数据;根据随机数、第一长期密钥和第一认证数据执行双向认证中对网络的认证,其中,随机数是根据第一标识产生的。Obtain a first identifier of a terminal and a first long-term key of the terminal; send a first message, wherein the first message is used to trigger two-way authentication, the first message includes a second identifier of the terminal, the second identifier is used to determine a second long-term key for authenticating the terminal in the two-way authentication, the second identifier is determined based on the first identifier, and the second long-term key and the first long-term key are symmetric keys; receive first authentication data; perform authentication of the network in the two-way authentication based on a random number, the first long-term key and the first authentication data, wherein the random number is generated based on the first identifier.
上述双向认证可以理解为终端与网络身份的双向认证,如,主认证。上述第一标识可以为SIM或USIM配置参数中的随机序列码,或者遵循移动通信网络用户身份标识格式的序列码。第一标识中还可包括网络标识,如公共陆地移动网络标识(public land mobile network,PLMN)标识等,此不具体限定如何构造第一标识。该第一标识可随着双向认证的发生次数更新。例如,终端与网络第X次主认证对应的第一标识为标识A,终端与网络第X+1次主认证对应的第一标识为标识B,标识A与标识B不同。可选的,终端可从终端的SIM或USIM的配置参数中获取第一标识。或者,终端与网络的双向认证成功后,网络侧的设备产生新的第一标识并发送至终端,终端存储新的第一标识后,终端从所述新的第一标识的存储位置(例如,SIM、USIM、或者ME)读取第一标识。在此不具体限定终端如何获取第一标识。The above-mentioned two-way authentication can be understood as a two-way authentication between the terminal and the network identity, such as a primary authentication. The above-mentioned first identifier can be a random sequence code in the configuration parameters of the SIM or USIM, or a sequence code that follows the format of the user identity of the mobile communication network. The first identifier can also include a network identifier, such as a public land mobile network identifier (PLMN) identifier, etc., and this does not specifically limit how to construct the first identifier. The first identifier can be updated with the number of occurrences of the two-way authentication. For example, the first identifier corresponding to the Xth primary authentication between the terminal and the network is identifier A, and the first identifier corresponding to the X+1th primary authentication between the terminal and the network is identifier B, and identifier A is different from identifier B. Optionally, the terminal can obtain the first identifier from the configuration parameters of the SIM or USIM of the terminal. Alternatively, after the two-way authentication between the terminal and the network is successful, the device on the network side generates a new first identifier and sends it to the terminal. After the terminal stores the new first identifier, the terminal reads the first identifier from the storage location of the new first identifier (for example, SIM, USIM, or ME). It is not specifically limited here how the terminal obtains the first identifier.
此外,终端可基于第一标识确定第二标识。例如,对第一标识进行加密处理得到第二标识;或对第一标识以及终端的第一长期密钥进行加密处理得到第二标识,在此不具体限定如何根据第一标识确定第二标识。In addition, the terminal may determine the second identifier based on the first identifier. For example, the first identifier is encrypted to obtain the second identifier; or the first identifier and the first long-term key of the terminal are encrypted to obtain the second identifier. How to determine the second identifier based on the first identifier is not specifically limited here.
本申请中,终端通过向网络发送携带第二标识的第一消息可以触发双向认证,从而使得网络可基于第二标识确定与终端的第一长期密钥对称的第二长期密钥,并基于第二长期密钥对终端进行认证。而终端可根据第一标识产生随机数,基于第一长期密钥、来自网络的第一认证数据、以及随机数进行对网络的认证。终端和网络采用对称密钥的方式进行双向认证,不需要复杂的计算,简化处理逻辑。对于能力有限的终端来说,是可以承受的。In the present application, the terminal can trigger two-way authentication by sending a first message carrying a second identifier to the network, so that the network can determine a second long-term key symmetric to the first long-term key of the terminal based on the second identifier, and authenticate the terminal based on the second long-term key. The terminal can generate a random number based on the first identifier, and authenticate the network based on the first long-term key, the first authentication data from the network, and the random number. The terminal and the network use a symmetric key method for two-way authentication, which does not require complex calculations and simplifies the processing logic. For terminals with limited capabilities, this is affordable.
在终端和网络的双向认证的过程中,还会用到随机数。本申请中,双向认证的随机数是根据第一标识产生,网络与终端在双向认证的信令交互时无需携带随机数,从而可以进一步提高双向认证的效率,节约信令资源。In the process of two-way authentication between the terminal and the network, random numbers are also used. In this application, the random number of two-way authentication is generated according to the first identifier, and the network and the terminal do not need to carry random numbers during the signaling interaction of two-way authentication, thereby further improving the efficiency of two-way authentication and saving signaling resources.
在一种可选的方式中,终端还接收加密密文;使用通信密钥解密加密密文,以得到终端的第三标识,其中,通信密钥为从第一长期密钥推演得到的,第三标识用于产生终端再次触发双向认证的消息。进一步地,终端还可以存储第三标识。In an optional manner, the terminal also receives the encrypted ciphertext and decrypts the encrypted ciphertext using the communication key to obtain a third identifier of the terminal, wherein the communication key is derived from the first long-term key, and the third identifier is used to generate a message for the terminal to trigger the two-way authentication again. Furthermore, the terminal may also store the third identifier.
本申请中,终端可基于该第三标识更新第一标识,当终端与网络设备再次执行双向认证时,终端可基于该更新的第一标识确定新的第二标识。基于此,每次双向认证时,第一消息中的第二标识都是不同的,即使该第二标识被窃取也不能获得终端的身份信息,进而可以保证终端的身份信息的安全。因而,终端发送的触发双向认证的消息中可以不包括终端的永久身份标识,而是包括根据更新的第一标识确定的第二标识,即使攻击者获取该第一消息中第二标识也无法破译出终端的身份。In the present application, the terminal can update the first identifier based on the third identifier. When the terminal and the network device perform two-way authentication again, the terminal can determine a new second identifier based on the updated first identifier. Based on this, the second identifier in the first message is different each time the two-way authentication is performed. Even if the second identifier is stolen, the identity information of the terminal cannot be obtained, thereby ensuring the security of the identity information of the terminal. Therefore, the message sent by the terminal to trigger the two-way authentication may not include the permanent identity identifier of the terminal, but includes the second identifier determined based on the updated first identifier. Even if the attacker obtains the second identifier in the first message, the identity of the terminal cannot be deciphered.
在一种可选的方式中,第一消息还包括:用于对终端进行认证的第二认证数据。In an optional manner, the first message also includes: second authentication data for authenticating the terminal.
本申请中,终端直接在第一消息中携带用于对终端进行认证的第二认证数据,便于网络直接对终端进行认证,可以提高双向认证的效率。In the present application, the terminal directly carries the second authentication data used to authenticate the terminal in the first message, which facilitates the network to directly authenticate the terminal and can improve the efficiency of two-way authentication.
在一种可选的方式中,终端还发送终端成功接收第三标识的确认消息。以便网络侧的设备确定终端侧已收到该第三标识,从而也可以存储第三标识。In an optional manner, the terminal further sends a confirmation message indicating that the terminal has successfully received the third identifier, so that the device on the network side determines that the terminal side has received the third identifier, and thus the third identifier can also be stored.
在一种可选的方式中,采用终端参数更新流程接收加密密文。In an optional manner, a terminal parameter update process is used to receive the encrypted ciphertext.
本申请中,终端通过复用现有的终端参数更新流程接收加密密文可以提高数据处理效率。In the present application, the terminal can improve data processing efficiency by reusing the existing terminal parameter update process to receive encrypted ciphertext.
在一种可选的方式中,终端还发送成功接收第三标识的确认消息,以便网络侧的设备明确存储第三标识的时机。In an optional manner, the terminal further sends a confirmation message of successfully receiving the third identifier, so that the device on the network side clearly knows the timing of storing the third identifier.
在一种可选的方式中,第二标识是根据以下一种参数组合确定的:In an optional manner, the second identifier is determined according to a combination of the following parameters:
第一标识;或,第一标识、第一长期密钥;或,第一标识、第一长期密钥、计数值,计数值指示终端触发双向认证的次数。The first identifier; or, the first identifier and the first long-term key; or, the first identifier, the first long-term key, and a count value, wherein the count value indicates the number of times the terminal triggers two-way authentication.
本申请中,第二标识可根据第一标识确定,如复用第一标识为第二标识,或者对第一标识进行加密处理确定第二标识,该方式简单便捷。第二标识还可根据第一标识、第一长期密钥确定,如对第一标识、第一长期密钥进行加密运算或哈希运算确定。第二标识,还可根据第一标识、第一长期密钥以及指示终端触发双向认证的次数的计数值确定,如对第一标识、长期密钥以及计数值进行加密运算或哈希运算确定。In the present application, the second identifier can be determined based on the first identifier, such as reusing the first identifier as the second identifier, or encrypting the first identifier to determine the second identifier. This method is simple and convenient. The second identifier can also be determined based on the first identifier and the first long-term key, such as performing an encryption operation or a hash operation on the first identifier and the first long-term key. The second identifier can also be determined based on the first identifier, the first long-term key, and the count value indicating the number of times the terminal triggers two-way authentication, such as performing an encryption operation or a hash operation on the first identifier, the long-term key, and the count value.
第二方面,本申请提供一种通信方法,该方法可应用于网络侧的设备或网络侧的设备的芯片,在此不具体限定。网络侧的设备可以包括统一数据管理(unified data management,UDM)、认证服务器功能(authentication server function,AUSF)、安全锚点功能(security anchor function,SEAF)、和/或认证凭据存储库和处理函数(authentication credential repository and processing function,ARPF)等,网络侧的设备可以是其中的一个网元、或者多个网元、或者是多个网元合设的设备,在此不具体限定。执行如下:In the second aspect, the present application provides a communication method, which can be applied to a device on the network side or a chip of a device on the network side, which is not specifically limited here. The device on the network side may include unified data management (UDM), authentication server function (AUSF), security anchor function (SEAF), and/or authentication credential repository and processing function (ARPF), etc. The device on the network side may be one of the network elements, or multiple network elements, or a device composed of multiple network elements, which is not specifically limited here. Execute as follows:
接收终端的第二标识;根据第二标识确定终端的第一标识和双向认证中对终端进行认证的第二长期密钥,第二长期密钥与终端的第一长期密钥为对称密钥;根据第二长期密钥、随机数确定校验数据,校验数据用于执行双向认证中对终端的认证,随机数是根据第一标识确定的;根据第二长期密钥、随机数确定用于双向认证中对网络进行认证的第一认证数据;发送第一认证数据。具体地,上述步骤可通过UDM或ARPF执行。Receive the second identifier of the terminal; determine the first identifier of the terminal and the second long-term key for authenticating the terminal in the two-way authentication according to the second identifier, the second long-term key and the first long-term key of the terminal are symmetric keys; determine verification data according to the second long-term key and the random number, the verification data is used to perform the authentication of the terminal in the two-way authentication, the random number is determined according to the first identifier; determine the first authentication data used for authenticating the network in the two-way authentication according to the second long-term key and the random number; send the first authentication data. Specifically, the above steps can be performed by UDM or ARPF.
在一种可选的方式中,接收用于对终端进行认证的第二认证数据;根据校验数据和第二认证数据执行对终端的认证。具体地,可以是UDM/AUSF接收第二认证数据,AUSF根据校验数据和第二认证数据执行对终端的认证,本申请在此不具体限定。In an optional manner, second authentication data for authenticating the terminal is received; and authentication of the terminal is performed based on the verification data and the second authentication data. Specifically, the UDM/AUSF may receive the second authentication data, and the AUSF may perform authentication of the terminal based on the verification data and the second authentication data, which is not specifically limited in this application.
在一种可选的方式中,接收用于对终端进行认证的第二认证数据包括认证服务器功能(例如AUSF)接收认证请求消息,认证请求消息携带第二认证数据和终端的第二标识;认证服务器功能(例如AUSF)存储第二认证数据,并向统一数据管理功能(例如,UDM或ARPF)发送终端的第二标识;接收终端的第二标识包括统一数据管理功能(例如,UDM或ARPF)接收来自认证服务器功能(例如AUSF)的终端的第二标识;根据第二标识确定终端的第一标识和第二长期密钥,根据第二长期密钥、随机数确定校验数据包括:统一数据管理功能(例如,UDM或ARPF)根据第二标识确定终端的第一标识和第二长期密钥,并根据第二长期密钥、随机数确定校验数据;统一数据管理功能(例如,UDM或ARPF)向认证服务器功能(例如AUSF)发送校验数据;根据校验数据和第二认证数据执行对终端的认证包括:认证服务器功能(例如AUSF)根据校验数据和第二认证数据执行对终端的认证。In an optional manner, receiving second authentication data for authenticating a terminal includes an authentication server function (e.g., AUSF) receiving an authentication request message carrying the second authentication data and a second identifier of the terminal; the authentication server function (e.g., AUSF) storing the second authentication data and sending the second identifier of the terminal to a unified data management function (e.g., UDM or ARPF); receiving the second identifier of the terminal includes the unified data management function (e.g., UDM or ARPF) receiving the second identifier of the terminal from the authentication server function (e.g., AUSF); determining the first identifier and the second long-term key of the terminal based on the second identifier, and determining verification data based on the second long-term key and a random number includes: the unified data management function (e.g., UDM or ARPF) determining the first identifier and the second long-term key of the terminal based on the second identifier, and determining verification data based on the second long-term key and a random number; the unified data management function (e.g., UDM or ARPF) sending verification data to the authentication server function (e.g., AUSF); performing authentication of the terminal based on the verification data and the second authentication data includes: the authentication server function (e.g., AUSF) performing authentication of the terminal based on the verification data and the second authentication data.
在一种可选的方式中,接收用于对终端进行认证的第二认证数据包括认证服务器功能(例如AUSF)接收认证请求消息,认证请求消息携带第二认证数据和终端的第二标识;方法还包括:向统一数据管理功能(例如,UDM或ARPF)发送终端的第二标识和第二认证数据;接收终端的第二标识包括统一数据管理功能接收来自认证服务器功能(例如,UDM或ARPF)的终端的第二标识和第二认证数据;根据第二标识确定终端的第一标识和第二长期密钥,根据第二长期密钥、随机数确定校验数据包括:统一数据管理功能(例如,UDM或ARPF)根据第二标识确定终端的第一标识和第二长期密钥,并根据第二长期密钥、随机数确定校验数据;根据校验数据和第二认证数据执行对终端的认证包括:统一数据管理功能(例如,UDM或ARPF)根据校验数据和第二认证数据执行对终端的认证。In an optional manner, receiving second authentication data for authenticating a terminal includes an authentication server function (e.g., AUSF) receiving an authentication request message carrying the second authentication data and a second identifier of the terminal; the method also includes: sending the second identifier of the terminal and the second authentication data to a unified data management function (e.g., UDM or ARPF); receiving the second identifier of the terminal includes the unified data management function receiving the second identifier and second authentication data of the terminal from the authentication server function (e.g., UDM or ARPF); determining the first identifier and second long-term key of the terminal based on the second identifier, and determining verification data based on the second long-term key and a random number includes: the unified data management function (e.g., UDM or ARPF) determines the first identifier and second long-term key of the terminal based on the second identifier, and determines verification data based on the second long-term key and a random number; performing authentication of the terminal based on the verification data and the second authentication data includes: the unified data management function (e.g., UDM or ARPF) performs authentication of the terminal based on the verification data and the second authentication data.
在一种可选的方式中,根据第二长期密钥、随机数确定第一认证数据,发送第一认证数据包括:统一数据管理功能(例如,UDM或ARPF)根据第二长期密钥、随机数确定第一认证数据,通过认证服务器功能向终端发送第一认证数据。In an optional manner, the first authentication data is determined based on the second long-term key and the random number, and sending the first authentication data includes: a unified data management function (for example, UDM or ARPF) determines the first authentication data based on the second long-term key and the random number, and sends the first authentication data to the terminal through the authentication server function.
在一种可选的方式中,安全锚点功能(例如,SEAF)接收第一消息,第一消息用于触发双向认证,第一消息包括终端的第二标识和第二认证数据;安全锚点功能向认证服务器功能发送认证请求消息。In an optional manner, a security anchor function (eg, SEAF) receives a first message, the first message is used to trigger two-way authentication, the first message includes a second identifier of the terminal and second authentication data; the security anchor function sends an authentication request message to an authentication server function.
在一种可选的方式中,在对终端认证成功的情况下,产生第三标识,第三标识用于产生终端再次触发双向认证的消息;使用通信密钥加密第三标识以得到加密密文,其中,通信密钥为从第二长期密钥推演得到的;发送加密密文。In an optional manner, when the terminal is successfully authenticated, a third identifier is generated, and the third identifier is used to generate a message for the terminal to trigger two-way authentication again; the third identifier is encrypted using a communication key to obtain an encrypted ciphertext, wherein the communication key is derived from the second long-term key; and the encrypted ciphertext is sent.
在一种可选的方式中,网络侧的设备还存储第三标识。In an optional manner, the device on the network side also stores a third identifier.
在一种可选的方式中,存储第三标识之前,接收终端成功接收第三标识的确认信息。In an optional manner, before storing the third identifier, the receiving terminal receives confirmation information of successfully receiving the third identifier.
在一种可选的方式中,采用终端参数更新流程发送加密密文。In an optional manner, the encrypted ciphertext is sent using a terminal parameter update process.
第三方面,本申请提供一种通信方法,该方法可应用于终端或终端的芯片,在此不具体限定,终端可以为手机、车载设备、物联网设备等。执行如下:In a third aspect, the present application provides a communication method, which can be applied to a terminal or a chip of a terminal, which is not specifically limited here, and the terminal can be a mobile phone, a vehicle-mounted device, an Internet of Things device, etc. The execution is as follows:
获取终端的第一密钥标识,第一密钥标识指示终端的第一长期密钥;基于第一密钥标识以及第一长期密钥生成通信密钥;确定身份隐藏标识符,身份隐藏标识符包括第一加密密文以及第一密钥标识,第一加密密文为使用通信密钥对终端的第一订阅永久标识符进行加密得到的;发送身份隐藏标识符。Obtain a first key identifier of the terminal, the first key identifier indicating a first long-term key of the terminal; generate a communication key based on the first key identifier and the first long-term key; determine an identity hiding identifier, the identity hiding identifier includes a first encrypted ciphertext and a first key identifier, the first encrypted ciphertext is obtained by encrypting the first subscription permanent identifier of the terminal using the communication key; send the identity hiding identifier.
本申请中,终端基于第一密钥标识以及第一长期密钥生成通信密钥,基于通信密钥对预配置在终端的第一订阅永久标识符进行加密处理得到第一加密密文。之后将第一加密密文以及第一密钥标识作为身份隐藏标识符的内容发送至网络侧,以便网络侧确定第二长期密钥,并且能够对第一订阅永久标识符进行校验。该方式中终端和网络侧采用对称(相同)的通信密钥进行加解密处理,可以降低订阅永久标识符加密的数据处理复杂度。In the present application, the terminal generates a communication key based on the first key identifier and the first long-term key, and encrypts the first subscription permanent identifier preconfigured in the terminal based on the communication key to obtain a first encrypted ciphertext. The first encrypted ciphertext and the first key identifier are then sent to the network side as the content of the identity hiding identifier, so that the network side can determine the second long-term key and verify the first subscription permanent identifier. In this way, the terminal and the network side use symmetric (identical) communication keys for encryption and decryption, which can reduce the data processing complexity of the subscription permanent identifier encryption.
具体地,第一密钥标识用于确定网络侧的第二长期密钥,第二长期密钥和第一长期密钥为对称密钥。Specifically, the first key identifier is used to determine the second long-term key on the network side, and the second long-term key and the first long-term key are symmetric keys.
在一种可选的方式中,终端还接收第二加密密文;使用通信密钥解密第二加密密文,以得到终端的第二密钥标识,第二密钥标识用于产生终端再次接入网络的身份隐藏标识符。进一步地,终端还可以存储第二密钥标识。In an optional manner, the terminal also receives a second encrypted ciphertext and uses the communication key to decrypt the second encrypted ciphertext to obtain a second key identifier of the terminal, which is used to generate an identity hiding identifier for the terminal to access the network again. Further, the terminal may also store the second key identifier.
本申请中,终端可基于该第二密钥标识更新第一密钥标识,当终端再次接入网络时,可基于该第二密钥标识以及第一长期密钥确定通信密钥,并基于该通信密钥对第一订阅永久标识符进行加密处理,该通信密钥与基于第一密钥标识以及第一长期密钥确定的通信密钥不同。基于此,每次接入网络时,身份隐藏标识符中通信密钥加密的第一加密密文都是不同的,即使身份隐藏标识符被窃取也不能解密用户的身份信息,进而可以保证用户的身份信息的安全。In the present application, the terminal can update the first key identifier based on the second key identifier. When the terminal accesses the network again, the communication key can be determined based on the second key identifier and the first long-term key, and the first subscription permanent identifier can be encrypted based on the communication key. The communication key is different from the communication key determined based on the first key identifier and the first long-term key. Based on this, each time the network is accessed, the first encrypted ciphertext encrypted by the communication key in the identity hiding identifier is different, and even if the identity hiding identifier is stolen, the user's identity information cannot be decrypted, thereby ensuring the security of the user's identity information.
在一种可选的方式中,终端还发送成功接收第二密钥标识的确认消息,以便网络侧的设备明确存储第二密钥标识的时机。In an optional manner, the terminal further sends a confirmation message of successfully receiving the second key identifier, so that the device on the network side clearly knows the timing of storing the second key identifier.
在一种可选的方式中,采用终端参数更新流程接收第二加密密文。In an optional manner, a terminal parameter update process is used to receive the second encrypted ciphertext.
本申请中,终端通过复用现有的终端参数更新流程接收第二加密密文可以提高数据处理效率。In the present application, the terminal can improve data processing efficiency by reusing the existing terminal parameter update process to receive the second encrypted ciphertext.
第四方面,本申请提供一种通信方法,该方法可应用于网络侧的设备或网络侧的设备的芯片。网络侧的设备可以包括UDM、AUSF、SEAF、和/或ARPF等,网络侧的设备可以是其中的一个网元、或者多个网元、或者是多个网元合设的设备,在此不具体限定。执行如下:In a fourth aspect, the present application provides a communication method, which can be applied to a device on the network side or a chip of a device on the network side. The device on the network side may include UDM, AUSF, SEAF, and/or ARPF, etc. The device on the network side may be one network element, or multiple network elements, or a device with multiple network elements, which is not specifically limited here. Execute as follows:
接收终端的身份隐藏标识符,身份隐藏标识符包括第一加密密文以及第一密钥标识;根据第一密钥标识确定第二长期密钥以及预配置的终端的第二订阅永久标识符,第二长期密钥与终端的第一长期密钥为对称密钥;基于通信密钥对第一加密密文进行解密,以得到终端的第一订阅永久标识符,通信密钥是从第二长期密钥推演的;根据第一订阅永久标识符和第二订阅永久标识符对终端进行认证。An identity-hiding identifier of a receiving terminal is provided, wherein the identity-hiding identifier includes a first encrypted ciphertext and a first key identifier; a second long-term key and a pre-configured second subscription permanent identifier of the terminal are determined according to the first key identifier, wherein the second long-term key and the first long-term key of the terminal are symmetric keys; the first encrypted ciphertext is decrypted based on a communication key to obtain the first subscription permanent identifier of the terminal, wherein the communication key is derived from the second long-term key; and the terminal is authenticated according to the first subscription permanent identifier and the second subscription permanent identifier.
在一种可选的方式中,在对终端认证成功的情况下,产生第二密钥标识,第二密钥标识用于产生终端再次接入网络的身份隐藏标识符;使用通信密钥加密第二密钥标识,得到第二加密密文;发送第二加密密文。In an optional manner, when the terminal is successfully authenticated, a second key identifier is generated, the second key identifier is used to generate an identity hiding identifier for the terminal to access the network again; the second key identifier is encrypted using the communication key to obtain a second encrypted ciphertext; and the second encrypted ciphertext is sent.
在一种可选的方式中,存储第二密钥标识。In an optional manner, the second key identifier is stored.
在一种可选的方式中,存储第二密钥标识之前,接收终端成功接收第二密钥标识的确认信息。In an optional manner, before storing the second key identifier, the receiving terminal receives confirmation information of successfully receiving the second key identifier.
在一种可选的方式中,采用终端参数更新流程发送第二加密密文。In an optional manner, the second encrypted ciphertext is sent using a terminal parameter update process.
第五方面,本申请实施例提供一种通信装置,所述通信装置可以为终端(比如第一方面(或第三方面)中的终端或者设置在终端内部的芯片)还可以为网络侧的设备(比如第二方面(或第四方面)中的网络侧的设备或设置在网络侧的设备内部的芯片)。所述通信装置具备实现上述第一方面至第四方面的功能,比如,所述通信装置包括执行上述第一方面至第四方面涉及步骤所对应的模块或单元或手段(means),所述功能或单元或手段可以通过软件实现,或者通过硬件实现,也可以通过硬件执行相应的软件实现。In a fifth aspect, an embodiment of the present application provides a communication device, which may be a terminal (such as the terminal in the first aspect (or the third aspect) or a chip disposed inside the terminal) or a device on the network side (such as the device on the network side in the second aspect (or the fourth aspect) or a chip disposed inside the device on the network side). The communication device has the functions of implementing the above-mentioned first to fourth aspects. For example, the communication device includes a module or unit or means corresponding to the steps involved in the above-mentioned first to fourth aspects. The functions or units or means may be implemented by software or by hardware, or the corresponding software may be implemented by hardware.
在一种可能的设计中,所述通信装置包括处理单元、收发单元,其中,收发单元可以用于收发信号,以实现该通信装置和其它装置之间的通信,比如,收发单元用于接收第一消息;处理单元可以用于执行该通信装置的一些内部操作。所述收发单元可以称为输入输出单元、通信单元等,所述收发单元可以是收发器;所述处理单元可以是处理器。当通信装置是通信设备中的模块(如,芯片)时,所述收发单元可以是输入输出接口、输入输出电路或输入输出管脚等,也可以称为接口、通信接口或接口电路等;所述处理单元可以是处理器、处理电路或逻辑电路等。In one possible design, the communication device includes a processing unit and a transceiver unit, wherein the transceiver unit can be used to send and receive signals to realize communication between the communication device and other devices, for example, the transceiver unit is used to receive a first message; the processing unit can be used to perform some internal operations of the communication device. The transceiver unit can be called an input-output unit, a communication unit, etc., and the transceiver unit can be a transceiver; the processing unit can be a processor. When the communication device is a module (such as a chip) in a communication device, the transceiver unit can be an input-output interface, an input-output circuit or an input-output pin, etc., and can also be called an interface, a communication interface or an interface circuit, etc.; the processing unit can be a processor, a processing circuit or a logic circuit, etc.
在又一种可能的设计中,所述通信装置包括处理器,还可以包括收发器,所述收发器用于收发信号,所述处理器执行程序指令,以完成上述第一方面至第四方面中任意可能的设计或实现方式中的方法。其中,所述通信装置还可以包括一个或多个存储器,所述存储器用于与处理器耦合,所述存储器可以保存实现上述第一方面涉及的功能的必要计算机程序或指令。所述处理器可执行所述存储器存储的计算机程序或指令,当所述计算机程序或指令被执行时,使得所述通信装置实现上述第一方面至第四方面中任意可能的设计或实现方式中的方法。In another possible design, the communication device includes a processor and may also include a transceiver, the transceiver is used to send and receive signals, and the processor executes program instructions to complete the method in any possible design or implementation of the first aspect to the fourth aspect. The communication device may also include one or more memories, the memory is used to couple with the processor, and the memory can store the necessary computer programs or instructions for implementing the functions involved in the first aspect. The processor can execute the computer program or instructions stored in the memory, and when the computer program or instructions are executed, the communication device implements the method in any possible design or implementation of the first aspect to the fourth aspect.
在又一种可能的设计中,所述通信装置包括处理器,处理器可以用于与存储器耦合。所述存储器可以保存实现上述第一方面至第四方面涉及的功能的必要计算机程序或指令。所述处理器可执行所述存储器存储的计算机程序或指令,当所述计算机程序或指令被执行时,使得所述通信装置实现上述第一方面至第四方面中任意可能的设计或实现方式中的方法。In another possible design, the communication device includes a processor, which can be used to couple with a memory. The memory can store necessary computer programs or instructions for implementing the functions involved in the first to fourth aspects above. The processor can execute the computer program or instructions stored in the memory, and when the computer program or instructions are executed, the communication device implements the method in any possible design or implementation of the first to fourth aspects above.
在又一种可能的设计中,所述通信装置包括处理器和接口电路,其中,处理器用于通过所述接口电路与其它装置通信,并执行上述第一方面至第四方面中任意可能的设计或实现方式中的方法。In another possible design, the communication device includes a processor and an interface circuit, wherein the processor is used to communicate with other devices through the interface circuit and execute the method in any possible design or implementation of the first to fourth aspects above.
可以理解地,上述第五方面中,处理器可以通过硬件来实现也可以通过软件来实现,当通过硬件实现时,该处理器可以是逻辑电路、集成电路等;当通过软件来实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现。此外,以上处理器可以为一个或多个,存储器可以为一个或多个。存储器可以与处理器集成在一起,或者存储器与处理器分离设置。在具体实现过程中,存储器可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请实施例对存储器的类型以及存储器与处理器的设置方式不做限定。It can be understood that in the fifth aspect above, the processor can be implemented by hardware or by software. When implemented by hardware, the processor can be a logic circuit, an integrated circuit, etc.; when implemented by software, the processor can be a general-purpose processor, which is implemented by reading the software code stored in the memory. In addition, the above processors can be one or more, and the memories can be one or more. The memory can be integrated with the processor, or the memory can be separately set from the processor. In the specific implementation process, the memory can be integrated with the processor on the same chip, or can be set on different chips respectively. The embodiment of the present application does not limit the type of memory and the setting method of the memory and the processor.
第六方面,本申请实施例提供一种通信系统,该通信系统包括上述的终端以及网络侧的设备。In a sixth aspect, an embodiment of the present application provides a communication system, which includes the above-mentioned terminal and a network-side device.
第七方面,本申请提供了一种芯片系统,该芯片系统包括处理器,还可以包括存储器,用于实现上述第一方面至第四方面所述的方法。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。In a seventh aspect, the present application provides a chip system, which includes a processor and may also include a memory, for implementing the methods described in the first to fourth aspects above. The chip system may be composed of a chip, or may include a chip and other discrete devices.
第八方面,本申请还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机可读指令,当计算机可读指令在计算机上运行时,以使得计算机执行如第一方面至第四方面中的方法。In an eighth aspect, the present application further provides a computer-readable storage medium, in which computer-readable instructions are stored. When the computer-readable instructions are executed on a computer, the computer executes the methods in the first to fourth aspects.
第九方面,本申请提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面至第四方面各实施例的方法。In a ninth aspect, the present application provides a computer program product comprising instructions, which, when executed on a computer, enables the computer to execute the methods of the embodiments of the first to fourth aspects described above.
上述第二方面至第九方面可以达到的技术效果,请参照上述第一方面中相应可能设计方案可以达到的技术效果说明,本申请这里不再重复赘述。For the technical effects that can be achieved in the above-mentioned second to ninth aspects, please refer to the description of the technical effects that can be achieved by the corresponding possible design schemes in the above-mentioned first aspect, and this application will not repeat them here.
图1示出了本申请实施例提供的一种5G网络架构的示意图;FIG1 is a schematic diagram of a 5G network architecture provided in an embodiment of the present application;
图2示出了一种SUCI的结构示意图;FIG2 shows a schematic diagram of the structure of a SUCI;
图3A示出了一种5G密钥推演的示意图;FIG3A shows a schematic diagram of 5G key derivation;
图3B示出了一种UPU流程的示意图;FIG3B shows a schematic diagram of a UPU process;
图4A示出了本申请实施例提供的一种通信方法的流程示意图;FIG4A shows a schematic flow chart of a communication method provided in an embodiment of the present application;
图4B示出了本申请实施例提供的一种通信方法的流程示意图;FIG4B shows a schematic flow chart of a communication method provided in an embodiment of the present application;
图5示出了本申请实施例提供的一种通信方法的流程示意图;FIG5 is a schematic diagram showing a flow chart of a communication method provided in an embodiment of the present application;
图6示出了本申请实施例提供的一种通信方法的流程示意图;FIG6 shows a schematic flow chart of a communication method provided in an embodiment of the present application;
图7示出了本申请实施例提供的一种通信方法的流程示意图;FIG7 shows a schematic flow chart of a communication method provided in an embodiment of the present application;
图8A示出了本申请实施例提供的一种通信方法的流程示意图;FIG8A shows a schematic flow chart of a communication method provided in an embodiment of the present application;
图8B示出了本申请实施例提供的一种通信方法的流程示意图;FIG8B shows a schematic flow chart of a communication method provided in an embodiment of the present application;
图9示出了本申请实施例提供的一种SUCI的结构示意图;FIG9 shows a schematic structural diagram of a SUCI provided in an embodiment of the present application;
图10示出了本申请实施例提供的一种通信装置的结构示意图;FIG10 shows a schematic diagram of the structure of a communication device provided in an embodiment of the present application;
图11示出了本申请实施例提供的一种通信装置的结构示意图;FIG11 is a schematic diagram showing the structure of a communication device provided in an embodiment of the present application;
图12示出了本申请实施例提供的一种通信装置的结构示意图。FIG12 shows a schematic diagram of the structure of a communication device provided in an embodiment of the present application.
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述。方法实施例中的具体操作方法也可以应用于装置实施例或系统实施例中。其中,在本申请的描述中,除非另有说明,“多个”的含义是两个或两个以上。因此装置与方法的实施可以相互参见,重复之处不再赘述。In order to make the purpose, technical solution and advantages of the present application clearer, the present application will be further described in detail below with reference to the accompanying drawings. The specific operating method in the method embodiment can also be applied to the device embodiment or system embodiment. Among them, in the description of the present application, unless otherwise specified, the meaning of "multiple" is two or more. Therefore, the implementation of the device and the method can refer to each other, and the repetitions will not be repeated.
本申请实施例提供的技术方案可以应用于5G系统,或者应用于未来的通信系统或其他类似的通信系统。另外,本申请实施例提供的技术方案可以应用于蜂窝链路、公共陆地移动网络(public land mobile network,PLMN)、机器到机器(machine to machine,M2M)网络、物联网(internet of things,IoT)网络或者其他网络。也可以应用于设备间的链路,例如设备到设备(device to device,D2D)链路。D2D链路,也可以称为侧行链路(sidelink),其中侧行链路也可以称为边链路或副链路等。在本申请实施例中,上述的术语都是指相同类型的设备之间建立的链路,其含义相同。所谓相同类型的设备,可以是终端设备到终端设备之间的链路,也可以是基站到基站之间的链路,还可以是中继节点到中继节点之间的链路等,本申请实施例对此不作限定。对于终端设备和终端设备之间的链路,有第三代合作伙伴计划(third generation partnership project,3GPP)的版本(Release,Rel)-12/13定义的D2D链路,也有3GPP为车联网定义的车到车、车到手机、或车到任何实体的V2X链路,包括Rel-14/15。还包括Rel-18及后续版本的基于新无线(new radio,NR)系统的V2X链路等。The technical solution provided in the embodiment of the present application can be applied to a 5G system, or to a future communication system or other similar communication systems. In addition, the technical solution provided in the embodiment of the present application can be applied to a cellular link, a public land mobile network (PLMN), a machine to machine (M2M) network, an Internet of Things (IoT) network or other networks. It can also be applied to links between devices, such as a device to device (D2D) link. A D2D link can also be referred to as a sidelink, where the sidelink can also be referred to as a side link or a side link, etc. In the embodiment of the present application, the above terms all refer to links established between devices of the same type, and their meanings are the same. The so-called devices of the same type can be links between terminal devices, links between base stations, links between relay nodes, etc., and the embodiment of the present application does not limit this. For the links between terminal devices, there are D2D links defined in Release (Rel)-12/13 of the third generation partnership project (3GPP), and V2X links defined by 3GPP for vehicle-to-vehicle, vehicle-to-mobile phone, or vehicle-to-any-entity for the Internet of Vehicles, including Rel-14/15. It also includes V2X links based on the new radio (NR) system in Rel-18 and subsequent versions.
参考图1为一种适用于本申请的5G网络架构示意图。图1所示的5G网络架构中可包括三部分,分别是终端设备部分、数据网络(data network,DN)和运营商网络部分。下面对其中的部分网元的功能进行简单介绍说明。Reference Figure 1 is a schematic diagram of a 5G network architecture applicable to the present application. The 5G network architecture shown in Figure 1 may include three parts, namely, a terminal device part, a data network (DN) and an operator network part. The functions of some of the network elements are briefly introduced below.
其中,运营商网络可包括以下网元中的一个或多个:认证服务器功能(authentication server function,AUSF)、网络开放功能(network exposure function,NEF)、策略控制功能(policy control function,PCF)、统一数据管理(unified data management,UDM)、统一数据库(unified data repository,UDR)、网络存储功能(network repository function,NRF)、接入与移动性管理功能(access and mobility management function,AMF)、会话管理功能(session management function,SMF)、接入网以及用户面功能(user plane function,UPF)等。上述运营商网络中,除无线接入网部分之外的部分可以称为核心网部分。在一种可能的实现方法中,运营商网络中还包括应用功能(application function,AF)。或者,AF也可能不属于运营商网络,而是属于第三方。Among them, the operator network may include one or more of the following network elements: authentication server function (AUSF), network exposure function (NEF), policy control function (PCF), unified data management (UDM), unified data repository (UDR), network repository function (NRF), access and mobility management function (AMF), session management function (SMF), access network and user plane function (UPF), etc. In the above-mentioned operator network, the part other than the wireless access network part can be called the core network part. In a possible implementation method, the operator network also includes an application function (AF). Alternatively, the AF may not belong to the operator network, but to a third party.
终端设备(terminal device),又可称为是用户设备(user equipment,UE),是一种具有无线收发功能的设备,可以部署在陆地上,包括室内或室外、手持或车载;也可以部署在水面上(如轮船等);还可以部署在空中(例如飞机、气球和卫星上等)。终端设备可以是手机(mobile phone)、平板电脑(pad)、带无线收发功能的电脑、虚拟现实(virtual reality,VR)终端、增强现实(augmented reality,AR)终端、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程医疗(remote medical)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等。Terminal device, also known as user equipment (UE), is a device with wireless transceiver function. It can be deployed on land, including indoors or outdoors, handheld or vehicle-mounted; it can also be deployed on the water (such as ships); it can also be deployed in the air (such as airplanes, balloons and satellites). Terminal devices can be mobile phones, tablet computers, computers with wireless transceiver functions, virtual reality (VR) terminals, augmented reality (AR) terminals, wireless terminals in industrial control, wireless terminals in self-driving, wireless terminals in remote medical, wireless terminals in smart grids, wireless terminals in transportation safety, wireless terminals in smart cities, wireless terminals in smart homes, etc.
上述终端设备可通过运营商网络提供的接口(例如N1等)与运营商网络建立连接,使用运营商网络提供的数据和/或语音等服务。终端设备还可通过运营商网络访问DN,使用DN上部署的运营商业务,和/或第三方提供的业务。其中,上述第三方可为运营商网络和终端设备之外的服务方,可为终端设备提供数据和/或语音等服务。其中,上述第三方的具体表现形式,具体可根据实际应用场景确定,在此不做限制。The above-mentioned terminal device can establish a connection with the operator network through the interface provided by the operator network (such as N1, etc.), and use the data and/or voice services provided by the operator network. The terminal device can also access the DN through the operator network, use the operator services deployed on the DN, and/or services provided by a third party. Among them, the above-mentioned third party may be a service provider other than the operator network and the terminal device, and can provide data and/or voice services to the terminal device. Among them, the specific form of expression of the above-mentioned third party can be determined according to the actual application scenario, and is not limited here.
核心网部分包括用户面功能和控制面功能。The core network part includes user plane functions and control plane functions.
用户面功能包括UPF。UPF作为和数据网络的接口,完成用户面数据(如分组数据包)转发、服务质量(quality of service,QoS)控制、基于会话/流级的计费统计,带宽限制等功能。User plane functions include UPF. As an interface with the data network, UPF completes functions such as user plane data (such as packet data) forwarding, quality of service (QoS) control, session/flow-level billing statistics, and bandwidth limitation.
控制面功能主要进行用户注册认证、移动性管理、向用户面功能下发数据包转发策略、QoS控制策略等。控制面功能可以进一步细化包括除UPF之外的其它网元,如AMF和SMF等。The control plane functions mainly perform user registration and authentication, mobility management, and delivery of data packet forwarding strategies and QoS control strategies to the user plane functions. The control plane functions can be further refined to include other network elements besides UPF, such as AMF and SMF.
其中,AMF,主要进行用户接入时的注册流程,以及用户移动过程中的位置管理、接入认证/授权等功能。此外,还负责在终端设备与PCF间传递用户策略。终端设备和AMF之间的连接可称为是非接入层(non-access stratum,NAS)连接,终端设备和AMF之间传输的消息即是NAS消息。Among them, AMF mainly performs the registration process when users access, as well as location management, access authentication/authorization and other functions during user mobility. In addition, it is also responsible for transmitting user policies between terminal devices and PCF. The connection between terminal devices and AMF can be called a non-access stratum (NAS) connection, and the messages transmitted between terminal devices and AMF are NAS messages.
SMF,主要进行用户发起业务时建立相应的会话连接,为用户提供具体服务,如基于SMF与UPF之间的NG4接口向UPF下发数据包转发策略、QoS策略等功能。SMF is mainly responsible for establishing corresponding session connections when users initiate services and providing specific services to users, such as sending data packet forwarding policies and QoS policies to UPF based on the NG4 interface between SMF and UPF.
AUSF,主要负责对用户进行认证,确定终端设备的合法性,以确定是否允许终端设备接入网络。AUSF is mainly responsible for authenticating users and determining the legitimacy of terminal devices to determine whether to allow terminal devices to access the network.
UDM,主要负责存储终端设备的签约数据、用户接入授权等功能。UDM is mainly responsible for storing the contract data of terminal devices, user access authorization and other functions.
UDR,主要负责签约数据、策略数据、应用数据等类型数据的存取功能。UDR is mainly responsible for the storage and access of contract data, policy data, application data and other types of data.
PCF,主要负责向AMF或SMF下发业务相关的策略。PCF is mainly responsible for issuing business-related policies to AMF or SMF.
NEF,主要用于支持能力和事件的开放。NEF is mainly used to support the opening of capabilities and events.
AF,主要向PCF传递应用侧对网络侧的需求,使得PCF生成对应的策略。AF可以是第三方功能实体,也可以是运营商部署的应用服务,如网络协议(internet protocol,IP)多媒体子系统(IP Multimedia Subsystem,IMS)语音呼叫业务。AF mainly transmits the application side's requirements on the network side to PCF, so that PCF generates corresponding policies. AF can be a third-party functional entity or an application service deployed by an operator, such as the Internet protocol (IP) multimedia subsystem (IMS) voice call service.
NRF,可用于提供网元发现功能,基于其他网元的请求,提供网元类型对应的网元信息。NRF还提供网元管理服务,如网元注册、更新、去注册以及网元状态订阅和推送等。NRF can be used to provide network element discovery functions and provide network element information corresponding to the network element type based on requests from other network elements. NRF also provides network element management services, such as network element registration, update, deregistration, and network element status subscription and push.
DN,是位于运营商网络之外的网络,运营商网络可以接入多个DN,DN上可部署多种业务,可为终端设备提供数据和/或语音等服务。例如,DN是某智能工厂的私有网络,智能工厂安装在车间的传感器可为终端设备,DN中部署了传感器的控制服务器,控制服务器可为传感器提供服务。传感器可与控制服务器通信,获取控制服务器的指令,根据指令将采集的传感器数据传送给控制服务器等。又例如,DN是某公司的内部办公网络,该公司员工的手机或者电脑可为终端设备,员工的手机或者电脑可以访问公司内部办公网络上的信息、数据资源等。DN is a network outside the operator network. The operator network can access multiple DNs. Multiple services can be deployed on DN, which can provide data and/or voice services to terminal devices. For example, DN is the private network of a smart factory. The sensors installed in the workshop of the smart factory can be terminal devices. The control server of the sensors is deployed in DN, and the control server can provide services for the sensors. The sensors can communicate with the control server, obtain instructions from the control server, and transmit the collected sensor data to the control server according to the instructions. For another example, DN is the internal office network of a company. The mobile phones or computers of the company's employees can be terminal devices. The employees' mobile phones or computers can access information and data resources on the company's internal office network.
图1中Nnssf、Nausf、Nnef、Nnrf、Npcf、Nudm、Naf、Namf、Nsmf、N1、N2、N3、N4,以及N6为接口序列号。这些接口序列号的含义可参见3GPP协议中定义的含义,在此不做限制。In Figure 1, Nnssf, Nausf, Nnef, Nnrf, Npcf, Nudm, Naf, Namf, Nsmf, N1, N2, N3, N4, and N6 are interface sequence numbers. The meanings of these interface sequence numbers can be found in the meanings defined in the 3GPP protocol and are not limited here.
可以理解的是,上述网元或者功能既可以是硬件设备中的网络元件,也可以是在专用硬件上运行软件功能,或者是平台(例如,云平台)上实例化的虚拟化功能。可选的,上述网元或者功能可以由一个设备实现,也可以由多个设备共同实现,还可以是一个设备内的一个功能模块,本申请实施例对此不作具体限定。It is understandable that the above network element or function can be a network element in a hardware device, a software function running on dedicated hardware, or a virtualized function instantiated on a platform (e.g., a cloud platform). Optionally, the above network element or function can be implemented by one device, or by multiple devices, or a functional module in one device, which is not specifically limited in the embodiments of the present application.
本申请实施例中的接入与移动性管理功能(又可称为是移动性管理功能)、认证服务器功能、统一数据管理分别可以是图1中的AMF、AUSF、UDM,也可以是未来通信如第六代(6th generation,6G)网络中具有上述AMF、AUSF、UDM的功能的网元,本申请实施例对此不限定。The access and mobility management function (also referred to as the mobility management function), the authentication server function, and the unified data management in the embodiments of the present application may be the AMF, AUSF, and UDM in FIG. 1 , respectively, or may be a network element having the above-mentioned AMF, AUSF, and UDM functions in future communications such as the sixth generation (6G) network, and the embodiments of the present application are not limited to this.
为了便于理解本申请实施例,下面先对本申请实施例中涉及的术语或处理流程作简单说明。In order to facilitate understanding of the embodiments of the present application, the terms or processing flows involved in the embodiments of the present application are briefly described below.
1)SUCI是通过对终端的SUPI进行加密处理得到的,用于保护用户的身份信息,其中SUCI的数据结构如图2所示,包括SUPI-type、Home Network Identifier、Routing Indicator、Protection Scheme Id、Home Network Public Key Id以及Scheme Output。1) SUCI is obtained by encrypting the terminal's SUPI and is used to protect the user's identity information. The data structure of SUCI is shown in Figure 2, including SUPI-type, Home Network Identifier, Routing Indicator, Protection Scheme Id, Home Network Public Key Id and Scheme Output.
其中,SUPI-type代表SUPI的类型,由0~7范围内的值组成,用于标识SUCI中隐藏的SUPI的类型。可参照下述表1指示,如,0指示SUPI为IMSI类型。此外,还可以通过此字段判断SUPI使用的是IMSI还是NAI格式。Among them, SUPI-type represents the type of SUPI, which consists of values in the range of 0 to 7 and is used to identify the type of SUPI hidden in SUCI. Refer to the following Table 1 for indication, for example, 0 indicates that the SUPI is of IMSI type. In addition, this field can also be used to determine whether the SUPI uses the IMSI or NAI format.
表1
Table 1
其中,Home Network Identifier代表归属网络标识,当SUPI类型为IMSI时,归属网络标识符由两部分组成:Among them, Home Network Identifier represents the home network identifier. When the SUPI type is IMSI, the home network identifier consists of two parts:
移动国家码(MCC),由三位十进制数字组成,MCC唯一标识移动订阅的住所国家;Mobile Country Code (MCC), consisting of three decimal digits, the MCC uniquely identifies the country of residence of the mobile subscription;
移动网络代码(MNC),由两位或三位十进制数字组成,MNC识别移动签约的归属PLMN或SNPN。Mobile Network Code (MNC), consisting of two or three decimal digits, identifies the home PLMN or SNPN of the mobile subscription.
当SUPI类型为网络特定标识符、GLI或GCI时,家庭网络标识符由一系列具有可变长度的字符组成,表示IETF RFC 7542第2.2条规定的域名。对于GLI或GCI,域名应对应于SUPI NAI格式中指定的领域部分。When the SUPI Type is Network Specific Identifier, GLI, or GCI, the Home Network Identifier consists of a sequence of characters with variable length representing a domain name as specified in section 2.2 of IETF RFC 7542. For GLI or GCI, the domain name shall correspond to the realm portion specified in the SUPI NAI format.
其中,Routing Indicator代表路由标识,由家庭网络运营商分配并在USIM中提供的1至4位十进制数字组成,允许与家庭网络标识符一起将具有SUCI的网络信令路由到能够为用户服务的AUSF和UDM实例。如果USIM或ME上没有配置路由指示,则该数据字段应设置为0。Among them, Routing Indicator represents the routing identification, which consists of 1 to 4 decimal numbers allocated by the home network operator and provided in the USIM, allowing the network signaling with SUCI to be routed to the AUSF and UDM instances that can serve the user together with the home network identifier. If the routing indication is not configured on the USIM or ME, this data field should be set to 0.
其中,Protection Scheme Id代表对SUPI加密使用的保护方案标识符,由0-15范围内的值组成。Protection Scheme Id代表3GPP TS 33.501附录C中规定的空方案或非空方案或HPLMN规定的保护方案;如果SUPI类型为GLI或GCI,则应使用空方案。目前3GPP对此值的定义如下:Where Protection Scheme Id represents the protection scheme identifier used for SUPI encryption, and consists of values in the range of 0-15. Protection Scheme Id represents the null scheme or non-null scheme specified in Appendix C of 3GPP TS 33.501 or the protection scheme specified by the HPLMN; if the SUPI type is GLI or GCI, the null scheme should be used. Currently, 3GPP defines this value as follows:
null-scheme(值为0x0);null-scheme (value is 0x0);
Profile<A>(值为0x1);Profile<A>(value is 0x1);
Profile<B>(值为0x2);Profile<B>(value is 0x2);
值0x3-0xB保留用于未来的标准化保护方案,0xC-0xF为归属运营商指定的专有保护方案保留。Values 0x3-0xB are reserved for future standardized protection schemes, and 0xC-0xF are reserved for proprietary protection schemes specified by the home operator.
其中,Home Network Public Key Id代表归属网络的公钥信息,由0到255的值组成。Home Network Public Key Id表示由HPLMN或SNPN提供的公钥标识之一,标识生成保护SUPI使用的网络侧公钥。当且仅当使用空保护方案时,此数据字段应设置为值0。Wherein, Home Network Public Key Id represents the public key information of the home network, and consists of a value from 0 to 255. Home Network Public Key Id represents one of the public key identifiers provided by the HPLMN or SNPN, and identifies the network-side public key used to generate the protection SUPI. This data field shall be set to the value 0 if and only if the null protection scheme is used.
其中,Scheme Output代表对IMSI的MSIN部分或者NAI的username部分加密之后的结果,由可变长度或十六进制数字组成的字符串组成,具体取决于所使用的保护方案。具体地,ME根据保护方案标识符,根据ECIES算法规定的参数新生成的ECC(椭圆曲线密码学)临时公钥,使用临时公钥和USIM中存储的归属网络调配的公钥,按照SEGE中关于ECIES规范定义的加密操作进行操作得到Scheme Output。具体来说,先将通过密钥交换算法产生的秘密值作为密钥导出函数KDF的输入,产生对应的保护密钥,即:Among them, Scheme Output represents the result of encrypting the MSIN part of the IMSI or the username part of the NAI, and consists of a string of variable length or hexadecimal digits, depending on the protection scheme used. Specifically, the ME generates a new ECC (elliptic curve cryptography) temporary public key based on the protection scheme identifier and the parameters specified by the ECIES algorithm, uses the temporary public key and the public key allocated by the home network stored in the USIM, and performs the encryption operation defined in the ECIES specification in SEGE to obtain Scheme Output. Specifically, the secret value generated by the key exchange algorithm is first used as the input of the key derivation function KDF to generate the corresponding protection key, that is:
生成长度为enckeylen+icblen+mackeylen的密钥数据K。Generate key data K of length enckeylen+icblen+mackeylen.
将K的最左边的enckeylen八位字节解析为加密密钥EK,将K的中间icblen八位字节解析为ICB(加密的输入),将K的最右边的mackeylen八位字节解析为MAC密钥MK。最终输出Scheme Output为ECC临时公钥(Eph.public key)、使用EK对SUPI进行加密产生的密文值(Ciphertext value)、使用MK对产生的密文值进行MAC计算产生的MAC标记值(MAC-tag value)和任何其他参数的级联。Parse the leftmost enckeylen octet of K as the encryption key EK, parse the middle icblen octet of K as ICB (encrypted input), and parse the rightmost mackeylen octet of K as the MAC key MK. The final output Scheme Output is the concatenation of the ECC temporary public key (Eph.public key), the ciphertext value (Ciphertext value) generated by encrypting SUPI with EK, the MAC tag value (MAC-tag value) generated by MAC calculation of the generated ciphertext value using MK, and any other parameters.
2)5G密钥推演可参考图3A来理解,密钥层次结构中包括以下密钥:K(终端长期密钥),CK,IK,AUSF密钥(KAUSF),SEAF密钥(KSEAF),AMF密钥(KAMF),NAS完整性密钥(KNASint),NAS加密密钥(KNASenc),N3IWF密钥(KN3IWF),gNB密钥(KgNB),RRC完整性密钥(KRRCint),RRC加密密钥(KRRCenc),UP完整性密钥(KUPint),UP加密密钥(KUPenc)。以网络侧为例:2) 5G key derivation can be understood by referring to Figure 3A. The key hierarchy includes the following keys: K (terminal long-term key), CK, IK, AUSF key (K AUSF ), SEAF key (K SEAF ), AMF key (K AMF ), NAS integrity key (K NASint ), NAS encryption key (K NASenc ), N3IWF key (K N3IWF ), gNB key (K gNB ), RRC integrity key (K RRCint ), RRC encryption key (K RRCenc ), UP integrity key (K UPint ), UP encryption key (K UPenc ). Take the network side as an example:
在HPLMN中,UDM根据CK,IK推演得到AUSF密钥,将AUSF密钥提供给AUSF。AUSF根据AUSF密钥推演得到SEAF密钥,将SEAF密钥提供给服务网络中的SEAF。In the HPLMN, the UDM derives the AUSF key based on the CK and IK and provides the AUSF key to the AUSF. The AUSF derives the SEAF key based on the AUSF key and provides the SEAF key to the SEAF in the service network.
在服务网络中,SEAF根据SEAF密钥推演得到AMF密钥,将AMF密钥提供给AMF。In the service network, SEAF derives the AMF key based on the SEAF key and provides the AMF key to AMF.
AMF根据AMF密钥推演得到NAS完整性密钥和NAS加密密钥,NAS完整性密钥和NAS加密密钥可用于对AMF与终端设备之间的NAS连接上传输的NAS消息进行保护。此外,AMF还可以根据AMF密钥推演得到N3IWF密钥、gNB密钥,将N3IWF密钥提供给N3IWF,N3IWF密钥用于保护后续的非3GPP接入的数据流量,以及,将gNB密钥和下一跳(next hop,NH)参数提供给gNB。AMF derives NAS integrity key and NAS encryption key based on AMF key, which can be used to protect NAS messages transmitted on NAS connection between AMF and terminal equipment. In addition, AMF can also derive N3IWF key and gNB key based on AMF key, and provide N3IWF key to N3IWF, which is used to protect the subsequent non-3GPP access data traffic, and provide gNB key and next hop (NH) parameter to gNB.
gNB根据gNB密钥和NH参数生成RRC完整性密钥、RRC加密密钥、UP完整性密钥,UP加密密钥。其中,RRC完整性密钥和RRC加密密钥用于对gNB与终端设备之间传输的RRC消息进行保护;UP完整性密钥和UP加密密钥用于对gNB与终端设备之间传输的用户面数据进行保护。The gNB generates the RRC integrity key, RRC encryption key, UP integrity key, and UP encryption key based on the gNB key and NH parameters. The RRC integrity key and RRC encryption key are used to protect the RRC messages transmitted between the gNB and the terminal device; the UP integrity key and UP encryption key are used to protect the user plane data transmitted between the gNB and the terminal device.
进一步的,NAS完整性密钥、RRC完整性密钥、UP完整性密钥均是用于对消息进行完整性保护的。NAS加密密钥、RRC加密密钥、UP加密密钥均是用于对消息进行加密保护的。Furthermore, the NAS integrity key, RRC integrity key, and UP integrity key are all used to protect the integrity of the message. The NAS encryption key, RRC encryption key, and UP encryption key are all used to encrypt and protect the message.
以NAS完整性密钥和NAS加密密钥为例:Take NAS integrity key and NAS encryption key as an example:
在AMF向终端设备发送下行NAS消息时,AMF和终端设备可以根据NAS完整性密钥,对下行NAS消息进行完整性保护,具体地,AMF可以根据NAS消息和NAS完整性密钥,生成用于对NAS消息进行完整性保护的消息认证码(message authentication code,MAC),进而将NAS消息和MAC一起发送给终端设备。相应的,终端设备接收来自AMF的MAC和NAS消息,根据MAC和本地存储的NAS完整性密钥,对NAS消息进行完整性验证。此外,AMF和终端设备还可以根据NAS加密密钥,对下行NAS消息进行加密保护,具体地,AMF可以根据NAS加密密钥对NAS消息进行加密,得到加密之后的NAS消息,随后,AMF向终端设备发送加密之后的NAS消息。相应的,终端设备接收来自AMF的加密之后的NAS消息,根据本地存储的NAS加密密钥对加密之后的NAS消息进行解密。When AMF sends a downlink NAS message to a terminal device, AMF and the terminal device can perform integrity protection on the downlink NAS message based on the NAS integrity key. Specifically, AMF can generate a message authentication code (MAC) for integrity protection of the NAS message based on the NAS message and the NAS integrity key, and then send the NAS message and MAC together to the terminal device. Accordingly, the terminal device receives the MAC and NAS message from AMF, and performs integrity verification on the NAS message based on the MAC and the locally stored NAS integrity key. In addition, AMF and the terminal device can also perform encryption protection on the downlink NAS message based on the NAS encryption key. Specifically, AMF can encrypt the NAS message based on the NAS encryption key to obtain the encrypted NAS message, and then AMF sends the encrypted NAS message to the terminal device. Accordingly, the terminal device receives the encrypted NAS message from AMF, and decrypts the encrypted NAS message based on the locally stored NAS encryption key.
同理的,在终端设备向AMF发送上行NAS消息时,终端设备和AMF可以根据NAS完整性密钥,对上行NAS消息进行完整性保护,以及,根据NAS加密密钥,对上行NAS消息进行加密保护。具体可参见上述AMF向终端设备发送下行NAS消息中的描述。Similarly, when the terminal device sends an uplink NAS message to the AMF, the terminal device and the AMF can perform integrity protection on the uplink NAS message based on the NAS integrity key, and perform encryption protection on the uplink NAS message based on the NAS encryption key. For details, please refer to the description of the AMF sending a downlink NAS message to the terminal device.
可以理解,AMF与终端设备之间传输NAS消息时,可以既执行完整性保护又执行加密保护,或者,执行其中的一种保护。本申请中,完整性保护和加密保护可统称为是安全保护。It is understood that when transmitting NAS messages between the AMF and the terminal device, both integrity protection and encryption protection can be performed, or one of the protections can be performed. In this application, integrity protection and encryption protection can be collectively referred to as security protection.
3)双向认证是指终端通过(U)SIM卡中的订阅数据(如长期密钥K)与网络侧进行相互认证,从而获得接入网络的授权。以5G为例,有以下三种双向认证方法:5G-AKA(5G认证和密钥管理)、EAP-AKA(可扩展身份验证协议—身份验证和密钥管理)、EAP-TLS(可扩展身份验证协议-TLS)。其中,5G-AKA流程中归属网络认证中心向访问网络的安全锚点(SEAF)提供一组5G认证向量和对应的校验数据HXRES*,访问网络用这些参数对UE认证后,还需要将UE的认证响应发给归属网络认证中心做进一步的认证,归属网络再将认证结果发给访问网络。在5G中,上述的双向认证也可称为5G主认证,上述的认证方法可参照现有协议来理解在此不展开说明。3) Bidirectional authentication means that the terminal authenticates with the network through the subscription data (such as long-term key K) in the (U)SIM card, so as to obtain authorization to access the network. Taking 5G as an example, there are three bidirectional authentication methods: 5G-AKA (5G Authentication and Key Management), EAP-AKA (Extensible Authentication Protocol-Authentication and Key Management), and EAP-TLS (Extensible Authentication Protocol-TLS). Among them, in the 5G-AKA process, the home network authentication center provides a set of 5G authentication vectors and corresponding verification data HXRES* to the security anchor point (SEAF) of the access network. After the access network authenticates the UE with these parameters, it is also necessary to send the UE's authentication response to the home network authentication center for further authentication, and the home network then sends the authentication result to the access network. In 5G, the above-mentioned bidirectional authentication can also be called 5G main authentication. The above-mentioned authentication method can be understood by referring to the existing protocol and will not be explained in detail here.
4)UE参数更新流程(UE parameter updata)简称UPU流程是在UE成功认证并注册到3GPP系统(如5G系统)后,UDM触发的流程。可参考图3B来理解,下述以UE、AMF、AUSF以及UDM之间的数据交互为例来说明,执行如下:4) UE parameter update process (UE parameter updata), referred to as UPU process, is the process triggered by UDM after UE successfully authenticates and registers to 3GPP system (such as 5G system). Please refer to Figure 3B for understanding. The following takes the data interaction between UE, AMF, AUSF and UDM as an example, and is executed as follows:
步骤301,UDM决定执行UPU。Step 301, UDM decides to execute UPU.
具体地,当UE注册到5G系统时,UDM决定使用控制面流程执行UPU。如果要更新UE参数(例如,更新路由ID数据)的最终消费者是USIM,则UDM应使用安全分组机制来保护这些参数,以更新存储在USIM上的参数。然后,UDM应通过包括受安全分组保护的参数(如果有)以及最终消费者为ME的任何UE参数来构造UE参数更新数据(UPU数据)。Specifically, when the UE registers to the 5G system, the UDM decides to perform UPU using the control plane procedure. If the final consumer of the UE parameters to be updated (e.g., updating the routing ID data) is the USIM, the UDM shall use the security grouping mechanism to protect these parameters to update the parameters stored on the USIM. The UDM shall then construct the UE parameter update data (UPU data) by including the parameters protected by the security grouping (if any) and any UE parameters whose final consumer is the ME.
步骤302,UDM向AUSF发送Nausf_UPUProtection(UPU保护)消息,该消息中携带身份标识SUPI和UPU数据。Step 302, UDM sends a Nausf_UPUProtection (UPU protection) message to AUSF, which carries the identity SUPI and UPU data.
具体地,UDM应选择向持有UE最新KAUSF的AUSF发起上述的调用。如果UDM决定UE确认接收到的UE参数更新数据的安全检查成功,则UDM应在UE参数更新数据中设置相应的指示,并将ACK指示包含在Nausf_UPUProtection服务操作消息中,以指示需要UPU-XMAC-IUE(UE对UPU确认消息进行MAC计算),其中,UPU-XMAC-IUE是参考现有的协议根据KAUSF推演得到的,在此不展开说明。Specifically, UDM shall choose to initiate the above call to the AUSF holding the latest K AUSF of the UE. If UDM decides that the security check of the received UE parameter update data is successful, UDM shall set the corresponding indication in the UE parameter update data and include the ACK indication in the Nausf_UPUProtection service operation message to indicate that UPU-XMAC-I UE is required (UE performs MAC calculation on the UPU confirmation message), where UPU-XMAC-IUE is derived from K AUSF with reference to the existing protocol and will not be described in detail here.
步骤303,AUSF向UDM发送Nausf_UPUProtection Response(UPU保护响应)消息,该消息中携带UPU-MAC-IAUSF(AUSF对UE参数更新数据进行MAC计算)和CounterUPU(UPU的计数器)。Step 303, AUSF sends a Nausf_UPUProtection Response (UPU protection response) message to UDM, which carries UPU-MAC-I AUSF (AUSF performs MAC calculation on UE parameter update data) and Counter UPU (UPU counter).
如果UDM消息中携带了ACK指示,此响应消息还应携带UPU-XMAC-IUE。其中,UPU-MAC-IAUSF是参考现有的协议根据KAUSF推演得到的,在此不展开说明。If the UDM message carries an ACK indication, the response message should also carry UPU-XMAC-I UE . UPU-MAC-I AUSF is derived from K AUSF with reference to the existing protocol and will not be described in detail here.
步骤304,UDM向AMF发送Nudm_SDM_Notification(业务数据管理通知(subscriber data management service data management,SDM))消息,该消息中携带UPU数据、UPU-MAC-IAUSF和CounterUPU。Step 304: UDM sends a Nudm_SDM_Notification (subscriber data management service data management, SDM) message to AMF, which carries UPU data, UPU-MAC-I AUSF and Counter UPU .
如果UDM发送了ACK指示,AMF应临时存储期望的UPU-XMAC-IUE。If the UDM sends an ACK indication, the AMF shall temporarily store the expected UPU-XMAC-I UE .
步骤305,AMF向服务的UE发送下行NAS传输消息,该消息中携带UPU数据、UPU-MAC-IAUSF和CounterUPU。Step 305: AMF sends a downlink NAS transmission message to the served UE, which carries UPU data, UPU-MAC-I AUSF and Counter UPU .
步骤306,UE验证UPU数据。Step 306: The UE verifies the UPU data.
具体地,UE可按照与接收到的UE参数更新数据和CounterUPU上的AUSF相同的方式计算UPU-MAC-IAUSF,并验证其是否与下行NAS传输消息中UPU透明容器内接收到的UPU-MAC-IAUSF值匹配。如果UPU-MAC-IAUSF验证成功,且UPU数据包含受安全分组保护的参数ME应将安全分组转发给USIM。如果UPU-MAC-IAUSF验证成功,且UPU数据包含未受安全数据包保护的任何参数,则ME应使用UDM更新数据中接收到的参数更新其存储的参数。Specifically, the UE may calculate the UPU-MAC-I AUSF in the same manner as the received UE parameter update data and AUSF on the Counter UPU , and verify whether it matches the UPU-MAC-I AUSF value received in the UPU transparent container in the downlink NAS transport message. If the UPU-MAC-I AUSF verification succeeds and the UPU data contains parameters protected by a security packet, the ME shall forward the security packet to the USIM. If the UPU-MAC-I AUSF verification succeeds and the UPU data contains any parameters not protected by a security packet, the ME shall update its stored parameters with the parameters received in the UDM update data.
步骤307,如果UDM已请求UE确认,并且UE已成功验证并更新UDM提供的UE参数更新数据,则UE应向服务AMF发送上行NAS传输消息。Step 307: If the UDM has requested UE confirmation and the UE has successfully verified and updated the UE parameter update data provided by the UDM, the UE shall send an uplink NAS transport message to the serving AMF.
具体地,UE应生成UPU-MAC-IUE,并将生成的UPU-MAC-IUE包含在上行NAS传输消息中。Specifically, the UE should generate UPU-MAC-I UE and include the generated UPU-MAC-I UE in the uplink NAS transmission message.
步骤308,AMF应向UDM发送Nudm_SDM_Info(SDM信息)请求消息,该消息中携带UPU-MAC-IUE。Step 308: AMF shall send a Nudm_SDM_Info (SDM information) request message to UDM, which carries UPU-MAC-I UE .
步骤309,UDM应将接收到的UPU-MAC-IUE与UDM在步骤304中临时存储的期望的UPU-XMAC-IUE进行比较。In step 309 , the UDM shall compare the received UPU-MAC-I UE with the expected UPU-XMAC-I UE temporarily stored by the UDM in step 304 .
UPU可能还涉及到其他具体细节,在此不展开说明,可参考现有的协议来理解。UPU may also involve other specific details, which are not elaborated here. You can refer to the existing protocols for understanding.
5)长期密钥5) Long-term key
用户(终端)与核心网络如(统一数据管理网元(UDM))共享的密钥。终端的长期密钥可以预配置在SIM卡中,例如存储在SIM卡的安全环境中。网络的长期密钥可以存储在UDM中。为便于描述,将终端的长期密钥称为第一长期密钥,网络的长期密钥称为第二长期密钥。应理解,在使用对称密钥算法的情况下,第一长期密钥和第二长期密钥相同,相应的,密钥标识也是相同的。因而,第一长期密钥和第二长期密钥可以不做区分,都称为长期密钥。A key shared by a user (terminal) and a core network such as a unified data management network element (UDM). The long-term key of the terminal can be pre-configured in the SIM card, for example, stored in a secure environment of the SIM card. The long-term key of the network can be stored in the UDM. For ease of description, the long-term key of the terminal is referred to as the first long-term key, and the long-term key of the network is referred to as the second long-term key. It should be understood that when a symmetric key algorithm is used, the first long-term key and the second long-term key are the same, and accordingly, the key identifier is also the same. Therefore, the first long-term key and the second long-term key can be indistinguishable and are both referred to as long-term keys.
6)第一标识可以理解为终端的临时身份标识,该第一标识可随着双向认证的发生次数更新,如,终端与网络第X次双向认证对应的第一标识为标识A,终端与网络第X+1次双向认证对应的第一标识为标识B,标识A与标识B不同。在此仅示例性说明,并不具体限定。6) The first identifier can be understood as a temporary identity identifier of the terminal, and the first identifier can be updated as the number of two-way authentications occurs. For example, the first identifier corresponding to the Xth two-way authentication between the terminal and the network is identifier A, and the first identifier corresponding to the X+1th two-way authentication between the terminal and the network is identifier B, and identifier A is different from identifier B. This is only an exemplary description and is not specifically limited.
第一标识具体可以为随机序列码,或者遵循移动通信网络用户身份标识格式的序列码。第一标识中除了包括上述的信息外,还可包括网络标识,如PLMN标识等,此不具体限定如何构造第一标识。The first identifier may be a random sequence code or a sequence code in the format of a mobile communication network user identity identifier. In addition to the above information, the first identifier may also include a network identifier, such as a PLMN identifier, etc., and how to construct the first identifier is not specifically limited.
可选的,终端可从终端的SIM或USIM的配置参数中获取第一标识。或者,终端与网络的双向认证成功后,网络侧的设备产生新的第一标识并发送至终端,终端存储新的第一标识后,终端从所述新的第一标识的存储位置(例如,SIM、USIM、或者ME)读取第一标识。在此不具体限定终端如何获取第一标识。Optionally, the terminal may obtain the first identifier from the configuration parameters of the SIM or USIM of the terminal. Alternatively, after the two-way authentication between the terminal and the network is successful, the device on the network side generates a new first identifier and sends it to the terminal. After the terminal stores the new first identifier, the terminal reads the first identifier from the storage location of the new first identifier (for example, SIM, USIM, or ME). How the terminal obtains the first identifier is not specifically limited here.
可选的,终端可预配置多个第一标识,例如第一标识的资源池。Optionally, the terminal may preconfigure multiple first identifiers, such as a resource pool of first identifiers.
在一种可选的实现方式中,每个第一标识用于一次双向认证,从而使得多次双向认证中每次双向认证的第一标识不同。例如,每次与网络双向认证时,从第一标识的资源池中选择一个第一标识作为双向认证使用的第一标识,同时从所述资源池中删除该第一标识。In an optional implementation, each first identifier is used for one two-way authentication, so that the first identifier of each two-way authentication in multiple two-way authentications is different. For example, each time a two-way authentication is performed with the network, a first identifier is selected from a resource pool of first identifiers as the first identifier used for the two-way authentication, and the first identifier is deleted from the resource pool.
在另一种可选的实现方式中,每个第一标识可用于多次双向认证,但相邻两次双向认证同一终端使用的第一标识不同。例如,每次与网络双向认证时,从第一标识的资源池中选择一个第一标识作为双向认证使用的第一标识。In another optional implementation, each first identifier can be used for multiple two-way authentications, but the first identifiers used by the same terminal in two consecutive two-way authentications are different. For example, each time a two-way authentication is performed with the network, a first identifier is selected from a resource pool of first identifiers as the first identifier used for the two-way authentication.
对于上述配置的方法,网络侧也相应的配置第一标识,例如UDM或ARPF中配置有第一标识,配置方式同终端。For the above configuration method, the network side also configures the first identifier accordingly, for example, the first identifier is configured in the UDM or ARPF, and the configuration method is the same as the terminal.
7)第二标识是根据6)中的第一标识确定的。7) The second identifier is determined based on the first identifier in 6).
第二标识随着第一标识的更新而更新,如,第一标识为标识A,此时第一标识对应的第二标识为标识1;第一标识为标识B,此时第一标识对应的第二标识为标识2。在此仅示例性说明,并不具体限定。第二标识可通过终端和网络的双向认证请求消息携带,在终端和网络设备的双向认证流程中,指示终端的身份信息。The second identifier is updated as the first identifier is updated. For example, if the first identifier is identifier A, the second identifier corresponding to the first identifier is identifier 1; if the first identifier is identifier B, the second identifier corresponding to the first identifier is identifier 2. This is only an example and is not specifically limited. The second identifier can be carried in a two-way authentication request message between the terminal and the network, and indicates the identity information of the terminal in the two-way authentication process between the terminal and the network device.
第二标识是根据第一标识确定的。具体地,可以复用第一标识为第二标识(也即是第一标识和第二标识是同一标识),或者对第一标识进行加密处理确定第二标识。第二标识还可根据第一标识、终端的长期密钥(第一长期密钥或第二长期密钥)确定,如终端(或网络侧的设备)对第一标识、第一长期密钥进行加密运算或哈希运算以得到第二标识。例如,KID=H(K,RAND),其中,H表示哈希运算。若终端计算第二标识,那么K表示第一长期密钥;若网络侧的设备计算第二标识,那么K表示第二长期密钥。RAND表示第一标识,KID表示第二标识。The second identifier is determined based on the first identifier. Specifically, the first identifier can be reused as the second identifier (that is, the first identifier and the second identifier are the same identifier), or the first identifier can be encrypted to determine the second identifier. The second identifier can also be determined based on the first identifier and the long-term key of the terminal (the first long-term key or the second long-term key), such as the terminal (or the device on the network side) performs an encryption operation or a hash operation on the first identifier and the first long-term key to obtain the second identifier. For example, KID=H(K, RAND), where H represents a hash operation. If the terminal calculates the second identifier, then K represents the first long-term key; if the device on the network side calculates the second identifier, then K represents the second long-term key. RAND represents the first identifier, and KID represents the second identifier.
在终端申请接入网络并执行网络双向认证的流程时,由于网络拥堵、网络侧的设备故障等原因可能造成上述流程执行失败,若终端仍采用上述流程执行失败的第二标识再一次的执行接入和双向认证流程,可能会存在安全风险。基于此,第二标识还可以是根据第一标识、终端的第一长期密钥以及指示终端触发双向认证的次数的计数值确定,如对第一标识、第一长期密钥以及计数值进行加密运算或哈希运算以得到第二标识。例如,KID=H(K,RAND,COUNT),其中,COUNT表示计数值,H表示哈希运算,K表示第一长期密钥,RAND表示第一标识,KID表示第二标识。When the terminal applies to access the network and executes the process of two-way network authentication, the above process may fail due to network congestion, equipment failure on the network side, etc. If the terminal still uses the second identifier that failed to execute the above process to execute the access and two-way authentication process again, there may be security risks. Based on this, the second identifier can also be determined based on the first identifier, the first long-term key of the terminal, and the count value indicating the number of times the terminal triggers two-way authentication, such as performing an encryption operation or a hash operation on the first identifier, the first long-term key, and the count value to obtain the second identifier. For example, KID = H (K, RAND, COUNT), where COUNT represents the count value, H represents the hash operation, K represents the first long-term key, RAND represents the first identifier, and KID represents the second identifier.
可选的,网络侧的设备(例如,UDM或ARPF)可根据第一标识预计算第二标识,并存储第一标识、第二标识以及第二长期密钥的对应关系。具体地,网络侧的设备可参照上述终端根据第一标识确定第二标识的方式进行预计算,得到预计算的第二标识,在此不展开说明。需要说明的是,网络侧的设备预计算第二标识时,上述参与计算第二标识的第一长期密钥需要替换为第二长期密钥。Optionally, the device on the network side (for example, UDM or ARPF) can pre-calculate the second identifier based on the first identifier, and store the correspondence between the first identifier, the second identifier and the second long-term key. Specifically, the device on the network side can pre-calculate the second identifier according to the first identifier in accordance with the above-mentioned terminal to obtain the pre-calculated second identifier, which is not explained in detail here. It should be noted that when the device on the network side pre-calculates the second identifier, the first long-term key involved in calculating the second identifier needs to be replaced with the second long-term key.
8)对称密钥算法,又称为对称加密算法、私钥加密算法、共享密钥加密算法,是密码学中的一类加密算法。该类算法在加密和解密时使用相同的密钥,也即是密钥相同。8) Symmetric key algorithm, also known as symmetric encryption algorithm, private key encryption algorithm, shared key encryption algorithm, is a type of encryption algorithm in cryptography. This type of algorithm uses the same key for encryption and decryption, that is, the key is the same.
在本文中,除非另有说明,“/”表示“或”的意思,例如,A/B可以表示A或B。本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。此外,“至少一个”是指一个或多个,“多个”是指两个或两个以上。“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。In this document, unless otherwise specified, "/" means "or", for example, A/B can mean A or B. "And/or" in this document is only a description of the association relationship of associated objects, indicating that there can be three relationships. For example, A and/or B can mean: A exists alone, A and B exist at the same time, and B exists alone. In addition, "at least one" means one or more, and "plurality" means two or more. The words "first", "second", etc. do not limit the quantity and execution order, and the words "first", "second", etc. do not limit them to be different.
需要说明的是,本文中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。It should be noted that, in this document, the words "exemplary" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in this application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a specific way.
为了保护用户隐私,现有存在非对称的加密处理机制对永久身份标识(如上述的SUPI)进行加密处理,但是该加密处理机制计算复杂度高,计算消耗量大,对于某些终端设备来说是无法承载的。In order to protect user privacy, there is an asymmetric encryption processing mechanism that encrypts the permanent identity (such as the above-mentioned SUPI). However, the encryption processing mechanism has high computational complexity and large computational consumption, and is unbearable for some terminal devices.
基于此,本申请提供基于对称的加密处理机制以保护终端的身份信息的处理方案。具体地,可利用终端预配置的第一标识(适用于初次接入网络并进行双向认证)或者来自网络侧的更新的第一标识(适用于后续接入网路并进行双向认证)确定第二标识。并基于第二标识进行终端与网络之间的双向认证流程,而不采用SUCI执行终端与网络进行双向认证流程(例如,5G主认证),如实施方式一。作为另一种可选的方法,还可以对现有的SUCI结构改造,基于改造的SUCI接入网络,如实施方式二,本申请在此不具体限定具体采用哪种方案来对终端的身份信息进行加密处理。下述具体介绍本申请的实施方式。下述实施方式中的终端可为终端本身还可以为终端内部的芯片,终端可以为手机、车载设备、物联网设备等。网络可以为网络侧的设备或网络侧的设备的芯片,在此不具体限定,网络侧的设备可以包括UDM、AUSF、SEAF、和/或ARPF等,网络侧的设备可以是其中的一个网元或者是多个网元,或者多个网元合设的设备,在此不具体限定。接下来基于不同的实施例来说明,具体如下:Based on this, the present application provides a processing scheme based on a symmetric encryption processing mechanism to protect the identity information of the terminal. Specifically, the second identifier can be determined using the first identifier pre-configured by the terminal (applicable to the first access to the network and two-way authentication) or the updated first identifier from the network side (applicable to subsequent access to the network and two-way authentication). And based on the second identifier, a two-way authentication process is performed between the terminal and the network, without using SUCI to perform a two-way authentication process between the terminal and the network (for example, 5G main authentication), such as implementation method one. As another optional method, the existing SUCI structure can also be modified, and the network can be accessed based on the modified SUCI, such as implementation method two. The present application does not specifically limit which specific scheme is used to encrypt the identity information of the terminal. The following specifically introduces the implementation method of the present application. The terminal in the following implementation method can be the terminal itself or a chip inside the terminal. The terminal can be a mobile phone, a vehicle-mounted device, an Internet of Things device, etc. The network may be a device on the network side or a chip of a device on the network side, which is not specifically limited here. The device on the network side may include UDM, AUSF, SEAF, and/or ARPF, etc. The device on the network side may be one network element or multiple network elements, or a device configured by multiple network elements, which is not specifically limited here. The following is an explanation based on different embodiments, which are as follows:
实施方式一Implementation Method 1
下面结合图4A,以具体地方法实施例对本申请的技术方案进行详细说明。需要说明的是,图4A是本申请的方法实施例的示意性流程图,示出了该方法的详细的通信步骤或操作,但这些步骤或操作仅是示例,本申请实施例还可以执行其它操作或者图4A中的各种操作的变形。此外,图4A中的各个步骤可以分别按照与图4A所呈现的不同的顺序来执行,并且有可能并非要执行图4A中的全部操作。图4A中以终端、网络侧设备为例来说明,在实际应用时,可能还涉及到与其他设备的交互,在此不展开说明,如图4A所示,该方法执行如下:In conjunction with Figure 4A, the technical solution of the present application is described in detail with a specific method embodiment. It should be noted that Figure 4A is a schematic flow chart of a method embodiment of the present application, showing the detailed communication steps or operations of the method, but these steps or operations are only examples. The embodiment of the present application can also perform other operations or variations of the various operations in Figure 4A. In addition, the various steps in Figure 4A can be executed in a different order from that presented in Figure 4A, and it is possible that not all operations in Figure 4A need to be executed. Figure 4A takes the terminal and the network side device as an example for illustration. In actual application, it may also involve interaction with other devices, which will not be explained in detail here. As shown in Figure 4A, the method is executed as follows:
步骤401,终端获得终端的第一标识和终端的第一长期密钥。Step 401: A terminal obtains a first identifier of the terminal and a first long-term key of the terminal.
可选的,终端可从终端的SIM或USIM的配置参数中获取第一标识。或者,终端与网络的双向认证成功后,网络侧的设备产生新的第一标识并发送至终端,终端存储新的第一标识后,终端从所述新的第一标识的存储位置(例如,SIM、USIM、或者ME)读取第一标识。具体地,可参照上述6)来理解第一标识,在此不赘述。终端的第一长期密钥可从终端的SIM或USIM的配置参数中获取。具体地,可参照上述5)来理解第一长期密钥,在此不赘述。应理解,终端都可以配置有第一标识和第一长期密钥的对应关系。网络侧配置有第一标识和第二长期密钥(第二长期密钥与第一长期密钥为对称密钥)的对应关系。Optionally, the terminal may obtain the first identifier from the configuration parameters of the SIM or USIM of the terminal. Alternatively, after the two-way authentication between the terminal and the network is successful, the device on the network side generates a new first identifier and sends it to the terminal. After the terminal stores the new first identifier, the terminal reads the first identifier from the storage location of the new first identifier (for example, SIM, USIM, or ME). Specifically, the first identifier can be understood with reference to 6) above, which will not be repeated here. The first long-term key of the terminal can be obtained from the configuration parameters of the SIM or USIM of the terminal. Specifically, the first long-term key can be understood with reference to 5) above, which will not be repeated here. It should be understood that the terminal can be configured with a corresponding relationship between the first identifier and the first long-term key. The network side is configured with a corresponding relationship between the first identifier and the second long-term key (the second long-term key and the first long-term key are symmetric keys).
此外,终端还根据第一标识确定第二标识,可参照上述7)来理解,在此不赘述。In addition, the terminal also determines the second identifier based on the first identifier, which can be understood by referring to the above 7) and will not be repeated here.
步骤402,终端发送第一消息,其中,第一消息用于触发双向认证,第一消息包括第二标识。相应地,网络侧的设备接收第一消息。Step 402: The terminal sends a first message, wherein the first message is used to trigger two-way authentication and includes a second identifier. Correspondingly, the device on the network side receives the first message.
上述的第一消息可理解为双向认证请求消息,或者注册请求消息,本申请在此不具体限定第一消息的消息类型。该第一消息可以复用现有的消息信令发送,还可采用新的消息信令发送,在此不具体限定。The first message mentioned above can be understood as a two-way authentication request message or a registration request message, and the present application does not specifically limit the message type of the first message. The first message can be sent by reusing existing message signaling or by using new message signaling, which is not specifically limited here.
可选的,上述的第一消息还包括:用于对终端进行认证的第二认证数据,便于网络直接对终端进行认证,提高双向认证的效率。其中,第二认证数据可根据第一长期密钥和第一标识推演得到。例如,RES*=KDF(CK||IK,SN Name,L0,RAND,L1,RES,L2),其中,RES*为第二认证数据,KDF为密钥导出函数,CK=f3(K,RAND),IK=f4(K,RAND),SN name为服务网络名称,L0为服务网络名称对应的长度,RAND为第一标识,L1为第一标识的长度,RES=f2(K,RAND),L2是RES的长度。应理解,上述的第二认证数据也可不与第二标识同时发送,也即是与第二标识采用不同的消息发送,本申请在此不具体限定。应理解,上述的第二认证数据还可在步骤405执行之后,且确定终端对网络认证成功的情况下,由终端生成。Optionally, the first message further includes: second authentication data for authenticating the terminal, so that the network can directly authenticate the terminal and improve the efficiency of two-way authentication. The second authentication data can be derived from the first long-term key and the first identifier. For example, RES*=KDF(CK||IK, SN Name, L0, RAND, L1, RES, L2), where RES* is the second authentication data, KDF is the key derivation function, CK=f3(K, RAND), IK=f4(K, RAND), SN name is the service network name, L0 is the length corresponding to the service network name, RAND is the first identifier, L1 is the length of the first identifier, RES=f2(K, RAND), and L2 is the length of RES. It should be understood that the second authentication data may not be sent at the same time as the second identifier, that is, it may be sent using a different message from the second identifier, which is not specifically limited in this application. It should be understood that the second authentication data may also be generated by the terminal after step 405 is executed and when it is determined that the terminal has successfully authenticated the network.
另外,上述的第一消息中还可能包括指示信息,该指示信息用于指示第二标识的确定方式。具体地,该指示信息用于指示第二标识是根据第一标识直接确定的,或者根据第一标识和第一长期密钥确定的,或者根据第一标识、第一长期密钥以及计数值确定的。例如,若指示信息为index1,则指示第二标识根据第一标识直接确定。若指示信息为index2,则指示第二标识根据第一标识、第一长期密钥确定。若指示信息为index3,则指示第二标识根据第一标识、第一长期密钥以及计数值确定。对于第二标识根据第一标识、第一长期密钥以及计数值确定的情况,第一消息中还可以包括该计数值,以使网络侧的设备根据该计数值以及第二标识更加快速地确定与该第一长期密钥对称的第二长期密钥。In addition, the above-mentioned first message may also include indication information, and the indication information is used to indicate the method for determining the second identifier. Specifically, the indication information is used to indicate that the second identifier is directly determined based on the first identifier, or is determined based on the first identifier and the first long-term key, or is determined based on the first identifier, the first long-term key and the count value. For example, if the indication information is index1, it indicates that the second identifier is directly determined based on the first identifier. If the indication information is index2, it indicates that the second identifier is determined based on the first identifier and the first long-term key. If the indication information is index3, it indicates that the second identifier is determined based on the first identifier, the first long-term key and the count value. In the case where the second identifier is determined based on the first identifier, the first long-term key and the count value, the first message may also include the count value, so that the device on the network side can more quickly determine the second long-term key that is symmetrical with the first long-term key based on the count value and the second identifier.
步骤403,网络侧的设备根据第二标识确定终端的第一标识和双向认证中对终端进行认证的第二长期密钥,其中,第二长期密钥与第一长期密钥为对称密钥。Step 403: The network-side device determines the first identifier of the terminal and a second long-term key for authenticating the terminal in two-way authentication according to the second identifier, wherein the second long-term key and the first long-term key are symmetric keys.
具体地,网络侧的设备可存储第一标识以及第二长期密钥,例如,UDM存储或ARPF存储。Specifically, the device on the network side may store the first identifier and the second long-term key, for example, UDM storage or ARPF storage.
网络侧的设备可根据存储的第一标识进行预计算,确定第二标识,并存储该第一标识、预计算的第二标识与第二长期密钥的对应关系。应理解,预计算还可以用到第二长期密钥等参数,本申请不做限定,具体可参照上述7)中的描述来理解。网络侧的设备在步骤402中接收到第二标识后,可查找与接收到的第二标识相同的预计算的第二标识,基于预计算的第二标识与第二长期密钥的对应关系,确定第二长期密钥。并且,网络侧的设备还可根据预计算的第二标识与第一标识的对应关系确定第一标识。The device on the network side can perform pre-calculation based on the stored first identifier, determine the second identifier, and store the correspondence between the first identifier, the pre-calculated second identifier and the second long-term key. It should be understood that the pre-calculation can also use parameters such as the second long-term key, which is not limited in this application. For details, please refer to the description in 7) above. After receiving the second identifier in step 402, the device on the network side can search for the pre-calculated second identifier that is the same as the received second identifier, and determine the second long-term key based on the correspondence between the pre-calculated second identifier and the second long-term key. In addition, the device on the network side can also determine the first identifier based on the correspondence between the pre-calculated second identifier and the first identifier.
或者,网络侧的设备存储第一标识和第二长期密钥的对应关系。网络侧的设备(例如,UDM)接收到第二标识后,根据网络侧的设备存储的第一标识计算对应的第二标识,比对计算的第二标识与接收到的第二标识是否相同。如果相同,则确定该计算的第二标识对应的第一标识,以及与该第一标识对应的第二长期密钥。作为不同的实现方式,网络侧的设备可以对于每个第一标识都计算对应的第二标识,然后再进行比对,也可以计算出一个第二标识就进行比对,直到比对得到相同的第二标识则可以停止计算和比对。本申请对此不做限定。Alternatively, a device on the network side stores the correspondence between the first identifier and the second long-term key. After receiving the second identifier, the device on the network side (for example, UDM) calculates the corresponding second identifier based on the first identifier stored by the device on the network side, and compares the calculated second identifier with the received second identifier to see if they are the same. If they are the same, determine the first identifier corresponding to the calculated second identifier, and the second long-term key corresponding to the first identifier. As a different implementation method, the device on the network side can calculate the corresponding second identifier for each first identifier, and then compare it, or it can calculate a second identifier and compare it, and stop calculating and comparing until the same second identifier is obtained through comparison. This application does not limit this.
步骤404,网络侧的设备根据第二长期密钥、随机数确定用于双向认证中对网络进行认证的第一认证数据。Step 404: The device on the network side determines the first authentication data used to authenticate the network in the two-way authentication according to the second long-term key and the random number.
具体地,网络侧的设备可根据第二长期密钥以及用于双向认证的随机数推演第一认证数据。例如,UDM确定第一认证数据或ARPF确定第一认证数据。其中,网络侧的设备接收到第二标识后,网络侧的设备根据第二标识确定的第一标识。之后,网络侧的设备可根据第一标识产生随机数。例如,直接将第一标识作为随机数;截取第一标识中的部分内容作为随机数。或者,对第一标识进行加密运算或者哈希运算确定随机数;对第一标识中的部分内容进行加密运算或者哈希运算确定随机数。由于随机数是根据第一标识产生的,网络与终端在双向认证的信令交互时无需携带随机数,可以进一步提高数据处理效率,节约信令资源。Specifically, the device on the network side can deduce the first authentication data based on the second long-term key and the random number used for two-way authentication. For example, UDM determines the first authentication data or ARPF determines the first authentication data. Among them, after the device on the network side receives the second identifier, the device on the network side determines the first identifier based on the second identifier. Afterwards, the device on the network side can generate a random number based on the first identifier. For example, directly use the first identifier as a random number; intercept part of the content in the first identifier as a random number. Alternatively, perform an encryption operation or a hash operation on the first identifier to determine the random number; perform an encryption operation or a hash operation on part of the content in the first identifier to determine the random number. Since the random number is generated based on the first identifier, the network and the terminal do not need to carry random numbers during the signaling interaction of two-way authentication, which can further improve data processing efficiency and save signaling resources.
下述示例性介绍第一认证数据的推演流程。网络侧的设备根据第一标识,确定对应的随机数,根据第二长期密钥和随机数,计算对应的第一认证数据。例如,UDM使用随机数和第二长期密钥进行运算,获得AK,根据随机数、第二长期密钥、产生的序列号和标识位AMF进行运算,获得MAC,AUTN=(SQN异或AK)||AMF||MAC,其中,AUTN为第一认证数据。The following example introduces the deduction process of the first authentication data. The device on the network side determines the corresponding random number based on the first identifier, and calculates the corresponding first authentication data based on the second long-term key and the random number. For example, UDM uses the random number and the second long-term key to perform operations to obtain AK, and performs operations based on the random number, the second long-term key, the generated serial number and the identification bit AMF to obtain MAC, AUTN = (SQN XOR AK) || AMF || MAC, where AUTN is the first authentication data.
上述步骤404中,网络侧的设备根据第二长期密钥确定第一认证数据可参照下述图5中的步骤505来理解,或图6中的步骤605来理解,或图7中的步骤705来理解。In the above step 404, the network side device determines the first authentication data according to the second long-term key, which can be understood by referring to step 505 in Figure 5, or step 605 in Figure 6, or step 705 in Figure 7.
步骤405,网络侧的设备发送第一认证数据。相应地,终端接收第一认证数据。Step 405: The device on the network side sends the first authentication data. Correspondingly, the terminal receives the first authentication data.
具体地,网络侧的设备发送第一认证数据可以理解为多个网元将第一认证数据传输至终端。例如,UDM向AUSF发送第一认证数据。之后,AUSF向SEAF发送第一认证数据。SEAF向UE发送第一认证数据。网络侧的设备发送第一认证数据的执行流程可参照下述图5中的步骤506、步骤508、步骤509来理解,或者,参照下述图6中步骤606、步骤612、步骤613来理解,或者,参照下述图7中的步骤706、步骤709步骤710来理解在此不赘述。Specifically, the sending of the first authentication data by the device on the network side can be understood as multiple network elements transmitting the first authentication data to the terminal. For example, UDM sends the first authentication data to AUSF. Afterwards, AUSF sends the first authentication data to SEAF. SEAF sends the first authentication data to the UE. The execution process of the sending of the first authentication data by the device on the network side can be understood with reference to steps 506, 508, and 509 in Figure 5 below, or with reference to steps 606, 612, and 613 in Figure 6 below, or with reference to steps 706, 709, and 710 in Figure 7 below, which will not be repeated here.
步骤406,终端根据随机数、第一长期密钥和第一认证数据执行双向认证中对网络的认证。Step 406: The terminal performs authentication of the network in a two-way authentication according to the random number, the first long-term key and the first authentication data.
其中,随机数是终端根据第一标识产生的,可参照上述步骤404中网络侧的设备根据第一标识产生随机数来理解,在此不赘述。第一长期密钥可参照上述步骤401获取。The random number is generated by the terminal according to the first identifier, which can be understood by referring to the network device generating a random number according to the first identifier in the above step 404, and will not be described here. The first long-term key can be obtained by referring to the above step 401.
可选的,终端根据第一长期密钥、随机数确定第三校验数据,对第三校验数据和第一认证数据进行校验。Optionally, the terminal determines third verification data based on the first long-term key and the random number, and verifies the third verification data and the first authentication data.
具体地,终端接收第一认证数据(AUTN=(SQN异或AK)||AMF||MAC)后,根据第一长期密钥和随机数进行运算,以获得AK。之后将AK与第一认证数据进行异或,以获得SQN,校验SQN是否在正确范围内,如果是,对SQN、第一认证数据中的AMF、第一长期密钥,进行运算,以获得MAC’,比对第一认证数据中的MAC和MAC’是否相同,若相同,则终端对网络认证成功。其中,AK、MAC’可认为是第三校验数据Specifically, after the terminal receives the first authentication data (AUTN = (SQN XOR AK) || AMF || MAC), it performs calculations based on the first long-term key and the random number to obtain AK. Then, AK is XORed with the first authentication data to obtain SQN, and it is verified whether SQN is within the correct range. If so, the SQN, the AMF in the first authentication data, and the first long-term key are calculated to obtain MAC', and the MAC in the first authentication data and MAC' are compared to see if they are the same. If they are the same, the terminal successfully authenticates the network. Among them, AK and MAC' can be considered as the third verification data.
在一种可选的实现方式中,终端对网络认证成功后,产生用于对终端进行认证的第二认证数据,并将第二认证数据发送给网络。例如AUSF,和/或,SEAF接收到该第二认证数据,并根据上述步骤404中所述第一校验数据和/或第二校验数据进行校验。In an optional implementation, after the terminal successfully authenticates the network, second authentication data for authenticating the terminal is generated and sent to the network. For example, AUSF and/or SEAF receives the second authentication data and performs verification according to the first verification data and/or the second verification data in step 404.
可选的,若上述步骤402中第一消息不包括第二认证数据,那么步骤406执行后,且确定终端对网络认证成功的情况下,终端还发送第二认证数据。网络侧的设备接收到第二认证数据后,可执行步骤407。可选的,若步骤402中第一消息包括第二认证数据,那么网络侧设备可以在步骤402之后执行步骤407。应理解,步骤407和步骤404的顺序不做限定。Optionally, if the first message in the above step 402 does not include the second authentication data, then after step 406 is executed, and if it is determined that the terminal successfully authenticates the network, the terminal also sends the second authentication data. After the network-side device receives the second authentication data, step 407 may be executed. Optionally, if the first message in step 402 includes the second authentication data, the network-side device may execute step 407 after step 402. It should be understood that the order of step 407 and step 404 is not limited.
步骤407,网络侧的设备根据第二长期密钥、随机数确定校验数据,并根据校验数据执行双向认证中对终端的认证,其中,随机数是根据第一标识确定的。In step 407, the network-side device determines verification data according to the second long-term key and the random number, and performs authentication of the terminal in the two-way authentication according to the verification data, wherein the random number is determined according to the first identifier.
具体地,网络侧的设备可根据第二长期密钥、随机数确定校验数据。其中,随机数参见步骤404中的介绍。Specifically, the device on the network side may determine the verification data according to the second long-term key and the random number, wherein the random number refers to the introduction in step 404.
可选的,如果步骤402中第一消息包括第二认证数据。在一种可选的实现方式中,网络侧的设备根据第二长期密钥、随机数确定第一校验数据,并使用第一校验数据对第二认证数据进行校验。Optionally, if the first message includes the second authentication data in step 402. In an optional implementation, the network-side device determines the first verification data according to the second long-term key and the random number, and uses the first verification data to verify the second authentication data.
在另一种可选的实现方式中,其他网络侧设备收到第二认证数据并保存。网络侧的设备根据第二长期密钥、随机数确定第一校验数据,并将第一校验数据发送给上述其他网络侧设备。上述其他网络侧设备对接收到的第二认证数据根据第一校验数据进行校验。在一种具体的实现方式中,网络侧的设备为UDM,其他网络侧设备为AUSF。In another optional implementation, other network side devices receive and save the second authentication data. The network side device determines the first verification data based on the second long-term key and the random number, and sends the first verification data to the other network side devices. The other network side devices verify the received second authentication data based on the first verification data. In a specific implementation, the network side device is UDM, and the other network side device is AUSF.
可选的,如果第二认证数据不在步骤402的第一消息中发送,而是在步骤406后终端产生第二认证数据并发送给网络侧的设备,则网络侧的设备根据第二长期密钥、随机数确定第一校验数据,并将第一校验数据发送给其他网络侧设备。其他网络侧设备存储第一校验数据,并在后续收到第二认证数据后使用第一校验数据对第二认证数据进行校验。例如,可以是UDM确定第一校验数据,并将第一校验数据发送给AUSF,AUSF存储第一校验数据,以便后续在步骤406终端侧发送第二认证数据之后对接收到的第二认证数据进行校验。Optionally, if the second authentication data is not sent in the first message of step 402, but the terminal generates the second authentication data and sends it to the device on the network side after step 406, the device on the network side determines the first verification data based on the second long-term key and the random number, and sends the first verification data to other network side devices. Other network side devices store the first verification data, and use the first verification data to verify the second authentication data after receiving the second authentication data. For example, the UDM may determine the first verification data and send the first verification data to the AUSF, and the AUSF stores the first verification data so that the received second authentication data can be verified after the terminal side sends the second authentication data in step 406.
在一种可选的实现方式中,AUSF存储第一校验数据后,还可计算第二校验数据,并将第二校验数据发送给SEAF,SEAF存储第二校验数据,以便后续在步骤406终端侧发送第二认证数据之后对接收到的第二认证数据进行校验。In an optional implementation, after AUSF stores the first verification data, it may also calculate the second verification data and send the second verification data to SEAF. SEAF stores the second verification data so as to verify the received second authentication data after the terminal side sends the second authentication data in step 406.
例如,UDM根据第二长期密钥、随机数确定第一校验数据XRES*,并将第一校验数据发送给AUSF;AUSF根据第一校验数据XRES*确定第二校验数据HXRES*。For example, UDM determines the first verification data XRES* according to the second long-term key and the random number, and sends the first verification data to AUSF; AUSF determines the second verification data HXRES* according to the first verification data XRES*.
网络侧的设备可在接收到第二认证数据后,根据校验数据和第二认证数据执行对终端的认证。After receiving the second authentication data, the device on the network side can perform authentication on the terminal according to the verification data and the second authentication data.
具体地,UDM根据第二长期密钥、随机数确定第一校验数据XRES*,并将第一校验数据XRES*发送给AUSF;AUSF存储第一校验数据XRES*,并根据该第一校验数据XRES*确定第二校验数据HXRES*。AUSF将第二校验数据HXRES*发送给SEAF,SEAF存储第二校验数据HXRES*。进而,SEAF接收到来自终端的第二认证数据RES*,并根据第二认证数据RES*计算第三认证数据HRES*。SEAF将第二校验数据HXRES*与第三认证数据HRES*进行校验,若第二校验数据HXRES*与第三认证数据HRES*相同,SEAF则对终端认证成功。SEAF向AUSF发送第二认证数据RES*。AUSF根据第二认证数据RES*和第一校验数据XRES*进行校验,若第二认证数据RES*和第一校验数据XRES*相同,AUSF则对终端认证成功。其中,SEAF和AUSF对终端认证成功,则认为网络对终端认证成功。Specifically, UDM determines the first verification data XRES* based on the second long-term key and the random number, and sends the first verification data XRES* to AUSF; AUSF stores the first verification data XRES*, and determines the second verification data HXRES* based on the first verification data XRES*. AUSF sends the second verification data HXRES* to SEAF, and SEAF stores the second verification data HXRES*. Further, SEAF receives the second authentication data RES* from the terminal, and calculates the third authentication data HRES* based on the second authentication data RES*. SEAF verifies the second verification data HXRES* with the third authentication data HRES*. If the second verification data HXRES* is the same as the third authentication data HRES*, SEAF successfully authenticates the terminal. SEAF sends the second authentication data RES* to AUSF. AUSF verifies the second authentication data RES* with the first verification data XRES*. If the second authentication data RES* is the same as the first verification data XRES*, AUSF successfully authenticates the terminal. If SEAF and AUSF successfully authenticate the terminal, it is considered that the network successfully authenticates the terminal.
上述步骤407可参照下述图5中的步骤512-步骤514来理解,或者,下述图6中步骤607来理解,或者下述图7中的步骤707来理解,在此不赘述。The above step 407 can be understood by referring to steps 512 to 514 in FIG. 5 , or by referring to step 607 in FIG. 6 , or by referring to step 707 in FIG. 7 , and will not be described in detail here.
本申请中,终端通过向网络发送携带第二标识的第一消息可以触发双向认证,从而使得网络可基于第二标识确定与终端的第一长期密钥对称的第二长期密钥,并基于第二长期密钥对终端进行认证。而终端可根据第一标识产生随机数,基于第一长期密钥、来自网络的第一认证数据、以及随机数进行对网络的认证。终端和网络采用对称密钥的方式进行双向认证,不需要复杂的计算,简化处理逻辑。对于能力有限的终端来说,是可以承受的。In the present application, the terminal can trigger two-way authentication by sending a first message carrying a second identifier to the network, so that the network can determine a second long-term key symmetric to the first long-term key of the terminal based on the second identifier, and authenticate the terminal based on the second long-term key. The terminal can generate a random number based on the first identifier, and authenticate the network based on the first long-term key, the first authentication data from the network, and the random number. The terminal and the network use a symmetric key method for two-way authentication, which does not require complex calculations and simplifies the processing logic. For terminals with limited capabilities, this is affordable.
进一步地,在终端和网络的双向认证的过程中,双向认证的随机数是根据第一标识产生,网络与终端在双向认证的信令交互时无需携带随机数,从而可以进一步提高双向认证的效率,节约信令资源。Furthermore, during the two-way authentication process between the terminal and the network, the random number for the two-way authentication is generated based on the first identifier, and the network and the terminal do not need to carry the random number during the signaling interaction for the two-way authentication, thereby further improving the efficiency of the two-way authentication and saving signaling resources.
在终端与网络再一次执行双向认证时,可更新第一标识,以使得每次双向认证时,第一消息中的第二标识都是不同的,即使某次双向认证时第二标识被窃取也不能获取终端的身份信息,进而可以保证终端的身份信息的安全。可参照图4B来执行,在执行完上述的步骤401-步骤407后,还包括:When the terminal and the network perform two-way authentication again, the first identifier can be updated so that the second identifier in the first message is different each time the two-way authentication is performed. Even if the second identifier is stolen during a certain two-way authentication, the identity information of the terminal cannot be obtained, thereby ensuring the security of the identity information of the terminal. Referring to FIG. 4B , after executing the above steps 401 to 407, it also includes:
步骤408,在对终端认证成功的情况下,网络侧的设备产生第三标识,第三标识用于产生终端再次触发双向认证的消息。Step 408: When the terminal is successfully authenticated, the device on the network side generates a third identifier, and the third identifier is used to generate a message for the terminal to trigger two-way authentication again.
具体地,第三标识可以是通过随机数发生器产生的随机数。或者,第三标识可以由随机数发生器产生的随机数与专有标识(例如,PLMN标识)构成。或者,网络侧的设备(例如,UDM)维护有第三标识的资源池,每次网络对终端认证成功后,从该资源池中随机选择一个第三标识。或者,网络侧的设备维护有一个固定长度的递增序列号,每次网络对某终端认证成功后,选择当前序列号作为终端的第三标识。在此不具体限定第三标识的生成方式。上述步骤408可由UDM或ARPF执行。Specifically, the third identifier may be a random number generated by a random number generator. Alternatively, the third identifier may be composed of a random number generated by a random number generator and a proprietary identifier (for example, a PLMN identifier). Alternatively, a device on the network side (for example, UDM) maintains a resource pool of third identifiers, and each time the network successfully authenticates a terminal, a third identifier is randomly selected from the resource pool. Alternatively, a device on the network side maintains an increasing serial number of a fixed length, and each time the network successfully authenticates a terminal, the current serial number is selected as the third identifier of the terminal. The method for generating the third identifier is not specifically limited here. The above step 408 can be performed by UDM or ARPF.
可选的,网络侧的设备存储第三标识。应理解,该第三标识为更新的第一标识,例如用于产生所述终端再次触发所述双向认证的消息,也即是下一次双向认证时使用第三标识作为步骤401中的第一标识。具体地,网络侧的设备可以将原第一标识替换为该第三标识,或者网络侧的设备保留原第一标识,进一步存储第三标识。不做限定。Optionally, the device on the network side stores a third identifier. It should be understood that the third identifier is an updated first identifier, for example, used to generate a message for the terminal to trigger the two-way authentication again, that is, the third identifier is used as the first identifier in step 401 during the next two-way authentication. Specifically, the device on the network side can replace the original first identifier with the third identifier, or the device on the network side retains the original first identifier and further stores the third identifier. No limitation is made.
步骤409,网络侧的设备使用通信密钥加密第三标识,得到加密密文,其中,通信密钥为根据第二长期密钥推演得到的。Step 409: The device on the network side encrypts the third identifier using the communication key to obtain an encrypted ciphertext, wherein the communication key is derived from the second long-term key.
具体地,通信密钥可以为根据第二长期密钥进行推演得到的密钥,或者根据第一标识和第二长期密钥进行推演得到的密钥,在此不具体限定,通信密钥的产生方式。Specifically, the communication key may be a key derived from the second long-term key, or a key derived from the first identifier and the second long-term key. The method for generating the communication key is not specifically limited herein.
上述步骤409可由UDM或ARPF执行,例如,UDM产生第三标识,UDM采用通信密钥对第三标识进行加密得到加密密文。上述步骤409可还可由AUSF执行,例如,UDM向AUSF发送第三标识,AUSF接收第三标识,之后AUSF采用通信密钥对第三标识进行加密得到加密密文。The above step 409 may be performed by UDM or ARPF, for example, UDM generates a third identifier, and UDM uses the communication key to encrypt the third identifier to obtain an encrypted ciphertext. The above step 409 may also be performed by AUSF, for example, UDM sends the third identifier to AUSF, AUSF receives the third identifier, and then AUSF uses the communication key to encrypt the third identifier to obtain an encrypted ciphertext.
可选的,网络的设备还可使用通信密钥对第一标识和第三标识进行加密,得到加密密文。Optionally, the network device may also use the communication key to encrypt the first identifier and the third identifier to obtain an encrypted ciphertext.
步骤410,网络侧的设备发送加密密文。相应地,终端接收加密密文。Step 410: The device on the network side sends the encrypted ciphertext. Correspondingly, the terminal receives the encrypted ciphertext.
加密密文可由UDM或ARPF可经由AUSF、SEAF传输至终端。可选的,网络侧的设备还可采用终端参数更新流程传输加密密文。例如,通过UPU流程传输加密密文。具体地,将加密密文作为UPU流程中的UPU数据。The encrypted ciphertext may be transmitted to the terminal by the UDM or ARPF via the AUSF and SEAF. Optionally, the device on the network side may also use the terminal parameter update process to transmit the encrypted ciphertext. For example, the encrypted ciphertext is transmitted through the UPU process. Specifically, the encrypted ciphertext is used as the UPU data in the UPU process.
可选的,网络侧的设备还可采用UPU流程对第三标识进行加密传输。具体地,将第三标识作为UPU流程中的UPU数据。Optionally, the device on the network side may also use a UPU process to encrypt and transmit the third identifier. Specifically, the third identifier is used as UPU data in the UPU process.
步骤411,终端使用通信密钥解密加密密文,以得到终端的第三标识。Step 411: The terminal uses the communication key to decrypt the encrypted ciphertext to obtain the third identifier of the terminal.
终端得到所述第三标识后,可以存储所述第三标识。应理解,该第三标识为更新的第一标识,例如用于产生所述终端再次触发所述双向认证的消息,也即是下一次双向认证时使用第三标识作为步骤401中的第一标识。具体地,终端可以将原第一标识替换为该第三标识,或者终端保留原第一标识,进一步存储第三标识。不做限定。After the terminal obtains the third identifier, the third identifier can be stored. It should be understood that the third identifier is an updated first identifier, for example, used to generate a message for the terminal to trigger the two-way authentication again, that is, the third identifier is used as the first identifier in step 401 during the next two-way authentication. Specifically, the terminal can replace the original first identifier with the third identifier, or the terminal retains the original first identifier and further stores the third identifier. No limitation is made.
可选的,终端还可在解密加密密文得到第三标识后,向网络侧的设备发送终端成功接收第三标识的确认消息。网络侧的设备接收到该确认消息后,网络侧设备可存储第三标识。Optionally, after decrypting the encrypted ciphertext to obtain the third identifier, the terminal may send a confirmation message to the network side device indicating that the terminal has successfully received the third identifier. After the network side device receives the confirmation message, the network side device may store the third identifier.
本申请中,终端可基于该第三标识更新第一标识,当终端与网络设备再次执行双向认证时,终端可基于该更新的第一标识确定新的第二标识。基于此,每次双向认证时,第一消息中的第二标识都是不同的,即使该第二标识被窃取也不能获得终端的身份信息,进而可以保证终端的身份信息的安全。因而,终端发送的触发双向认证的消息中可以不包括终端的永久身份标识,而是包括根据更新的第一标识确定的第二标识,即使攻击者获取该第一消息中第二标识也无法破译出终端的身份。In the present application, the terminal can update the first identifier based on the third identifier. When the terminal and the network device perform two-way authentication again, the terminal can determine a new second identifier based on the updated first identifier. Based on this, the second identifier in the first message is different each time the two-way authentication is performed. Even if the second identifier is stolen, the identity information of the terminal cannot be obtained, thereby ensuring the security of the identity information of the terminal. Therefore, the message sent by the terminal to trigger the two-way authentication may not include the permanent identity identifier of the terminal, but includes the second identifier determined based on the updated first identifier. Even if the attacker obtains the second identifier in the first message, the identity of the terminal cannot be deciphered.
在上述图4A-图4B的方案中,终端的身份标识使用第一标识替代现有流程中的SUPI来做双向认证。应理解,SUPI虽然不在本实施例中作为双向认证使用,但是仍然可以保留,在双向认证完成之后的流程中,网络侧设备的内部仍然使用SUPI作为用户的身份标识,以便网络侧设备追踪用户的日志等信息。具体地,网络侧设备可以根据第一标识或者第二标识确定SUPI,进而使用SUPI。比如,上述UPU流程中,仍然可以使用SUPI,而不采用第一标识作为终端的标识。In the scheme of Figures 4A-4B above, the terminal's identity uses the first identifier to replace the SUPI in the existing process for two-way authentication. It should be understood that although SUPI is not used as a two-way authentication in this embodiment, it can still be retained. In the process after the two-way authentication is completed, the network side device still uses SUPI as the user's identity identifier so that the network side device can track the user's log and other information. Specifically, the network side device can determine the SUPI based on the first identifier or the second identifier, and then use the SUPI. For example, in the above UPU process, SUPI can still be used instead of using the first identifier as the terminal identifier.
下述参考图5-图7处理流程来展开说明本申请的方案,下述图中以双向认证为主认证为例来说明,但是,并不限定双向认证为主认证,还可以为其他认证。下述以UE、SEAF、AUSF以及UDM的数据交互为例来说明,其中,UDM还可以为ARPF。部分网元可能是合设的,如,SEAF与AUSF合设,或者SEAF、AUSF以及UDM是合设的,在此不具体限定。在下述图5-图7中流程执行前,UE与UDM均可预配置长期密钥以及第一标识。具体地,UE预配第一长期密钥以及第一标识。UDM预配置第二长期密钥以及第一标识。The following processing flow with reference to Figures 5 to 7 is used to expand the scheme of the present application. The following figures take two-way authentication as an example for explanation, but it is not limited to two-way authentication as the main authentication, and other authentications can also be used. The following takes the data interaction between UE, SEAF, AUSF and UDM as an example for explanation, wherein UDM can also be ARPF. Some network elements may be jointly set up, such as SEAF and AUSF, or SEAF, AUSF and UDM are jointly set up, which is not specifically limited here. Before the execution of the process in the following Figures 5 to 7, both UE and UDM can pre-configure a long-term key and a first identifier. Specifically, the UE pre-configures a first long-term key and a first identifier. The UDM pre-configures a second long-term key and a first identifier.
参照图5,执行如下:Referring to Figure 5, the execution is as follows:
步骤501,UE获得UE的第一标识和UE的第一长期密钥,并根据第一标识确定第二标识。Step 501: The UE obtains a first identifier of the UE and a first long-term key of the UE, and determines a second identifier according to the first identifier.
具体地,可参照上述图4A中的步骤401获得第一标识。在一种可选的实现方式中,UE从USIM获得第一长期密钥,从ME获得第一标识,本申请并不对第一标识以及第一长期密钥的获取方式具体限定。第一标识的特性可参照上述6)来理解,在此不赘述。Specifically, the first identifier may be obtained with reference to step 401 in FIG. 4A above. In an optional implementation, the UE obtains the first long-term key from the USIM and obtains the first identifier from the ME. This application does not specifically limit the method for obtaining the first identifier and the first long-term key. The characteristics of the first identifier may be understood with reference to 6) above and will not be described in detail here.
第二标识的确定方式可参照7)来理解,在此不赘述。The method for determining the second identifier can be understood by referring to 7), which will not be elaborated here.
步骤502,UE向SEAF发送第二标识。相应地,SEAF接收第二标识。Step 502: The UE sends a second identifier to the SEAF. Correspondingly, the SEAF receives the second identifier.
具体地,该第二标识可以是携带在第一消息中,第一消息具体可以是注册请求消息或者身份响应消息。也即是可以是UE发起的注册请求消息中携带第二标识,或者网络侧发起身份请求,从而UE发送的身份响应消息中携带第二标识。Specifically, the second identifier may be carried in the first message, and the first message may be a registration request message or an identity response message. That is, the registration request message initiated by the UE may carry the second identifier, or the network side may initiate an identity request, so that the identity response message sent by the UE carries the second identifier.
该第一消息还可以携带计数值,例如对于确定第二标识时引入计数值的情况。另外,该第一消息还可以携带双向认证方法的指示信息,也即上述的5G-AKA、EAP-AKA、或EAP-TLS的指示信息等。The first message may also carry a count value, for example, when a count value is introduced when determining the second identifier. In addition, the first message may also carry indication information of a two-way authentication method, that is, the indication information of the above-mentioned 5G-AKA, EAP-AKA, or EAP-TLS.
步骤503,SEAF向AUSF发送第二标识。相应地,AUSF接收第二标识。Step 503: SEAF sends a second identifier to AUSF. Correspondingly, AUSF receives the second identifier.
步骤504,SEAF向UDM发送第二标识。相应地,UDM接收第二标识。Step 504: SEAF sends the second identifier to UDM. Correspondingly, UDM receives the second identifier.
应理解,第二标识在网络侧的设备间传递是可以通过不同的消息进行。It should be understood that the second identifier can be transmitted between devices on the network side through different messages.
例如,SEAF接收第一消息后,向AUSF发送认证请求消息,AUSF接收该认证请求消息后,向UDM/ARPF发送认证向量获取请求消息。该认证请求消息、认证向量获取请求消息携带上述502中介绍参数。For example, after receiving the first message, SEAF sends an authentication request message to AUSF, and after receiving the authentication request message, AUSF sends an authentication vector acquisition request message to UDM/ARPF. The authentication request message and the authentication vector acquisition request message carry the parameters introduced in 502 above.
步骤505,UDM根据第二标识确定终端的第一标识和双向认证中对UE进行认证的第二长期密钥,并根据第二长期密钥、随机数确定用于所述双向认证中对网络进行认证的第一认证数据,其中,随机数是根据第一标识产生的,第二长期密钥与UE的第一长期密钥为对称密钥。Step 505, UDM determines the first identifier of the terminal and the second long-term key for authenticating the UE in the two-way authentication based on the second identifier, and determines the first authentication data for authenticating the network in the two-way authentication based on the second long-term key and the random number, wherein the random number is generated based on the first identifier, and the second long-term key and the first long-term key of the UE are symmetric keys.
具体地,UDM收到第二标识后确定第二长期密钥和第一标识,可参照上述图4A中的步骤403的描述来理解,在此不赘述。此外,随机数的产生方式也可参照上述图4A中的步骤403来理解。Specifically, after receiving the second identifier, the UDM determines the second long-term key and the first identifier, which can be understood by referring to the description of step 403 in FIG. 4A above, and will not be repeated here. In addition, the method of generating random numbers can also be understood by referring to step 403 in FIG. 4A above.
UDM可根据第二长期密钥、随机数确定第一认证数据AUTN。应理解,本申请中UDM的操作具体也可以是ARPF执行的,为便于描述,后续以UDM为示例。The UDM may determine the first authentication data AUTN according to the second long-term key and the random number. It should be understood that the operation of the UDM in the present application may also be specifically performed by the ARPF. For ease of description, the UDM is used as an example in the following.
可选的,UDM还根据第二长期密钥、随机数确定第一校验数据XRES*。Optionally, UDM also determines the first verification data XRES* based on the second long-term key and the random number.
例如,UDM基于第二长期密钥、随机数计算CK、IK,其中,CK=f3(K,RAND)IK=f4(K,RAND),其中,f3、f4为加密函数,K为第二长期密钥,RAND为随机数。之后UDM基于CK、IK进一步进行推演得到第一认证数据AUTN和第一校验数据(XRES*)。其中,XRES*可用于AUSF对终端的网络认证。XRES可通过第二长期密钥与随机数的加密计算确定,例如,XRES=f2(K,RAND),其中,f2为加密函数,K为第二长期密钥,RAND为随机数。XRES*是对CK、IK、随机数、服务网络名称的加密计算确定的。例如,XRES*=KDF(CK||IK,SN Name,L0,RAND,L1,XRES,L2),其中,KDF为密钥导出函数,SN name为服务网络名称,L0为服务网络名称对应的长度,RAND为随机数,L1为随机数的长度,L2是XRES的长度。AUTN可对随机数、认证管理字段AMF加密运算来确定,例如,AUTN=SQN xor AK||AMF||MAC,其中,xor为异或,SQN为UE和UDM维护的序列号,MAC=f1(SQN||RAND||AMF),AK=f5(RAND),上述的f1、f2、f3、f4、f5仅仅是示例,在此不具体限定加密函数为哪个。可选的,若根据第一标识确定的随机数与第一标识相同,上述确定第一认证数据和第一校验数据中采用的随机数还可替换为第一标识。For example, UDM calculates CK and IK based on the second long-term key and the random number, where CK=f3(K, RAND)IK=f4(K, RAND), where f3 and f4 are encryption functions, K is the second long-term key, and RAND is a random number. Then, UDM further deduce the first authentication data AUTN and the first verification data (XRES*) based on CK and IK. Wherein, XRES* can be used by AUSF for network authentication of the terminal. XRES can be determined by encryption calculation of the second long-term key and the random number, for example, XRES=f2(K, RAND), where f2 is an encryption function, K is the second long-term key, and RAND is a random number. XRES* is determined by encryption calculation of CK, IK, random number, and service network name. For example, XRES*=KDF(CK||IK,SN Name,L0,RAND,L1,XRES,L2), where KDF is a key derivation function, SN name is the service network name, L0 is the length corresponding to the service network name, RAND is a random number, L1 is the length of the random number, and L2 is the length of XRES. AUTN can be determined by encrypting the random number and the authentication management field AMF, for example, AUTN=SQN xor AK||AMF||MAC, where xor is exclusive OR, SQN is the serial number maintained by the UE and UDM, MAC=f1(SQN||RAND||AMF), AK=f5(RAND), and the above f1, f2, f3, f4, and f5 are only examples, and the encryption function is not specifically limited here. Optionally, if the random number determined according to the first identifier is the same as the first identifier, the random number used in the above determination of the first authentication data and the first verification data can also be replaced by the first identifier.
可选的,在密钥推演时,将KID也作为输入,即CK=f3(K,RAND,KID),IK=f4(K,RAND,KID),其中,KID为第二标识。Optionally, when deducing the key, KID is also used as input, that is, CK=f3(K, RAND, KID), IK=f4(K, RAND, KID), where KID is the second identifier.
应理解,本申请中的UDM的确定动作的执行顺序是不限定的,比如也可以先确定第一校验数据XRES*再确定第一认证数据,本申请不做限定。其他实施例类似。It should be understood that the execution order of the determination action of the UDM in the present application is not limited, for example, the first verification data XRES* may be determined first and then the first authentication data may be determined, and the present application does not make any limitation. Other embodiments are similar.
步骤506,UDM向AUSF发送第一认证数据。可选的,步骤506中UDM还向AUSF发送第一校验数据。相应地,AUSF接收第一认证数据和第一校验数据。Step 506: UDM sends first authentication data to AUSF. Optionally, in step 506, UDM also sends first verification data to AUSF. Accordingly, AUSF receives the first authentication data and the first verification data.
具体地,所述第一认证数据和/或第一校验数据通过认证向量获取响应消息传递。Specifically, the first authentication data and/or the first verification data is transmitted through an authentication vector acquisition response message.
步骤507,AUSF存储第一校验数据。Step 507, AUSF stores the first verification data.
可选的,AUSF存储第一校验数据。从而在步骤514时,可以根据该第一校验数据对UE进行认证。根据第一校验数据进行密钥推演,得到第二校验数据。例如,AUSF对第一校验数据XRES*进行推演得到第二校验数据HXRES*。可参照5G主认证,来理解,在此不赘述。Optionally, AUSF stores the first verification data. Thus, in step 514, the UE can be authenticated based on the first verification data. The key is deduced based on the first verification data to obtain the second verification data. For example, AUSF deduce the first verification data XRES* to obtain the second verification data HXRES*. This can be understood by referring to the 5G main authentication, which will not be elaborated here.
步骤508,AUSF向SEAF发送第一认证数据。Step 508, AUSF sends first authentication data to SEAF.
可选的,AUSF还向SEAF发送第二校验数据。相应地,SEAF接收第一认证数据和第二校验数据,并存储第二校验数据。从而步骤512中SEAF可以基于该第二校验数据进行校验。Optionally, AUSF also sends second verification data to SEAF. Accordingly, SEAF receives the first authentication data and the second verification data, and stores the second verification data. Thus, SEAF can perform verification based on the second verification data in step 512.
具体地,该第二校验数据和/或第一认证数据通过认证响应消息传递。Specifically, the second verification data and/or the first authentication data are transmitted via an authentication response message.
步骤509,SEAF向UE发送第一认证数据。相应地,UE接收第一认证数据。Step 509: SEAF sends first authentication data to UE. Correspondingly, UE receives the first authentication data.
该步骤509可通过NAS消息发送。具体地,可以是认证请求消息。为区分步骤503中的认证请求消息,可以将步骤509中的认证请求消息称为第二认证请求消息,步骤503中的认证请求消息称为第一认证请求消息。This step 509 can be sent via a NAS message. Specifically, it can be an authentication request message. To distinguish the authentication request message in step 503, the authentication request message in step 509 can be called a second authentication request message, and the authentication request message in step 503 can be called a first authentication request message.
步骤510,UE根据随机数、第一长期密钥和第一认证数据执行双向认证中对网络的认证。Step 510: The UE performs authentication of the network in a two-way authentication according to the random number, the first long-term key and the first authentication data.
若终端对网络认证成功,则根据第一长期密钥、随机数生成第二认证数据。If the terminal successfully authenticates the network, the second authentication data is generated according to the first long-term key and the random number.
需要说明的是,UE包括ME和USIM两部分,ME可接收第一认证数据,USIM可计算第二认证数据。具体地,ME可将在NAS消息中收到的第一认证数据转发给USIM。It should be noted that the UE includes two parts, the ME and the USIM, the ME can receive the first authentication data, and the USIM can calculate the second authentication data. Specifically, the ME can forward the first authentication data received in the NAS message to the USIM.
UE根据随机数、第一长期密钥和第一认证数据执行双向认证中对网络的认证,可参照上述步骤406的描述来理解,在此不赘述。The UE performs authentication of the network in the two-way authentication according to the random number, the first long-term key and the first authentication data. This can be understood by referring to the description of step 406 above and will not be repeated here.
若终端对网络认证成功,则根据第一长期密钥、随机数生成第二认证数据。例如,RES*=KDF(CK||IK,SN Name,L0,RAND,L1,RES,L2),其中,RES*为第二认证数据,KDF为密钥导出函数,CK=f3(K,RAND),IK=f4(K,RAND),SN name为服务网络名称,L0为服务网络名称对应的长度,RAND为随机数,L1为随机数的长度,RES=f2(K,RAND),L2是RES的长度。上述的f2、f3、f4仅仅是示例,在此不具体限定加密函数为哪个。可选的,若根据第一标识确定的随机数与第一标识相同,上述确定第一认证数据和校验数据中采用的随机数还可替换为第一标识。If the terminal successfully authenticates the network, the second authentication data is generated based on the first long-term key and the random number. For example, RES*=KDF(CK||IK, SN Name, L0, RAND, L1, RES, L2), where RES* is the second authentication data, KDF is the key derivation function, CK=f3(K, RAND), IK=f4(K, RAND), SN name is the service network name, L0 is the length corresponding to the service network name, RAND is a random number, L1 is the length of the random number, RES=f2(K, RAND), and L2 is the length of RES. The above f2, f3, and f4 are only examples, and the encryption function is not specifically limited here. Optionally, if the random number determined based on the first identifier is the same as the first identifier, the random number used in the above determination of the first authentication data and the verification data can also be replaced by the first identifier.
可选的,在密钥推演时,将KID也作为输入,即CK=f3(K,RAND,KID),IK=f4(K,RAND,KID),其中,KID为第二标识。Optionally, when deducing the key, KID is also used as input, that is, CK=f3(K, RAND, KID), IK=f4(K, RAND, KID), where KID is the second identifier.
步骤511,UE向SEAF发送第二认证数据。相应地,SEAF接收第二认证数据。Step 511: UE sends second authentication data to SEAF. Correspondingly, SEAF receives the second authentication data.
具体地,第二认证数据可以携带在认证响应消息中传递。Specifically, the second authentication data may be carried in an authentication response message.
步骤512,SEAF根据第二认证数据进行认证。Step 512: SEAF performs authentication based on the second authentication data.
具体地,SEAF根据第二认证数据计算第三认证数据HRES*,将该第三认证数据HRES*和第二校验数据HXRES*进行校验。具体计算和校验的方法可参照5G主认证,来理解,在此不赘述。若该第三认证数据HRES*和第二校验数据HXRES*相同,则认证成功。具体地,表示UE具有接入拜访网络的权限。应理解,网络侧对UE的认证具体可以包括步骤512中的认证和/或步骤514的认证。Specifically, SEAF calculates the third authentication data HRES* based on the second authentication data, and verifies the third authentication data HRES* and the second verification data HXRES*. The specific calculation and verification methods can be understood with reference to the 5G main authentication, which will not be repeated here. If the third authentication data HRES* and the second verification data HXRES* are the same, the authentication is successful. Specifically, it means that the UE has the right to access the visited network. It should be understood that the authentication of the UE by the network side can specifically include the authentication in step 512 and/or the authentication in step 514.
步骤513,SEAF向AUSF发送第二认证数据。相应地,AUSF接收第二认证数据。Step 513: SEAF sends the second authentication data to AUSF. Accordingly, AUSF receives the second authentication data.
具体地,第二认证数据可以携带在认证请求消息中传递。为区分,该认证请求消息可以称为第三认证请求消息。Specifically, the second authentication data may be carried in an authentication request message and transmitted. For distinction, the authentication request message may be referred to as a third authentication request message.
步骤514,AUSF根据第二认证数据进行认证。Step 514, AUSF performs authentication based on the second authentication data.
具体地,AUSF根据第二认证数据RES*和第一校验数据XRES*进行校验。若RES*和XRES*相同,则认为对UE认证成功。具体地,表示UE具有接入家庭网络的权限。Specifically, the AUSF performs verification based on the second authentication data RES* and the first verification data XRES*. If RES* and XRES* are the same, it is considered that the UE is successfully authenticated. Specifically, it means that the UE has the authority to access the home network.
步骤515a,AUSF向SEAF发送认证结果。相应地,SEAF接收认证结果。Step 515a, AUSF sends the authentication result to SEAF. Correspondingly, SEAF receives the authentication result.
步骤515b,AUSF向UDM发送认证结果。相应地,UDM接收认证结果。Step 515b, AUSF sends the authentication result to UDM. Correspondingly, UDM receives the authentication result.
在此不具体限定,步骤515a和步骤515b的执行顺序。若AUSF认为UE具有接入家庭网络的权限,则认证结果为认证成功,若AUSF认为UE不具有接入家庭网络的权限,则认证结果为认证失败。The execution order of step 515a and step 515b is not specifically limited here. If the AUSF believes that the UE has the authority to access the home network, the authentication result is authentication success, and if the AUSF believes that the UE does not have the authority to access the home network, the authentication result is authentication failure.
进一步地,网络侧还可以更新第一标识。步骤如下:Furthermore, the network side may also update the first identifier. The steps are as follows:
步骤516,若UDM收到认证结果为认证成功,则为该UE产生第三标识。Step 516: If the authentication result received by the UDM is successful, a third identifier is generated for the UE.
可选地,UDM还可以对该第三标识加密以得到加密密文。例如,第三标识为RAND’,UDM可对RAND’进行加密,产生加密密文。可参照上述图4B中的步骤408和步骤409来理解在此不赘述。Optionally, the UDM may also encrypt the third identifier to obtain an encrypted ciphertext. For example, if the third identifier is RAND', the UDM may encrypt RAND' to generate an encrypted ciphertext. This may be understood by referring to steps 408 and 409 in FIG. 4B above, and will not be described in detail here.
步骤517,UDM通过UPU流程向UE发送加密密文或者第三标识。Step 517: UDM sends the encrypted ciphertext or the third identifier to the UE through the UPU process.
例如,通过UPU流程传输加密密文。具体地,将加密密文作为UPU流程中的UPU数据。For example, the encrypted ciphertext is transmitted through the UPU process. Specifically, the encrypted ciphertext is used as the UPU data in the UPU process.
可选的,UDM还可采用UPU流程对第三标识进行加密传输。具体地,将第三标识作为UPU流程中的UPU数据。图5中以步骤517为UDM通过UPU流程向UE发送加密密文为例来说明。Optionally, the UDM may also use the UPU process to encrypt and transmit the third identifier. Specifically, the third identifier is used as UPU data in the UPU process. In FIG5, step 517 is used as an example for UDM to send encrypted ciphertext to UE through the UPU process.
步骤518a,UE解密加密密文,获得第三标识,或者直接解密获得第三标识。Step 518a: The UE decrypts the encrypted ciphertext to obtain the third identifier, or directly decrypts to obtain the third identifier.
可选的,UE存储第三标识。应理解,该第三标识为更新的第一标识,例如用于产生所述终端再次触发所述双向认证的消息,也即是下一次双向认证时使用第三标识作为步骤501中的第一标识。具体地,UE可以将原第一标识替换为该第三标识,或者UE保留原第一标识,进一步存储第三标识。不做限定。Optionally, the UE stores a third identifier. It should be understood that the third identifier is an updated first identifier, for example, used to generate a message for the terminal to trigger the two-way authentication again, that is, the third identifier is used as the first identifier in step 501 during the next two-way authentication. Specifically, the UE can replace the original first identifier with the third identifier, or the UE retains the original first identifier and further stores the third identifier. No limitation is made.
可选的,UE获得第三标识后,向UDM发送UE成功接收第三标识的确认消息,以触发步骤518b的执行。Optionally, after obtaining the third identifier, the UE sends a confirmation message to the UDM indicating that the UE successfully receives the third identifier, so as to trigger the execution of step 518b.
步骤518b,UDM存储第三标识。Step 518b: The UDM stores the third identifier.
具体地,UDM可将第一标识更新为第三标识,具体参见步骤518a。此外,UDM还可基于第三标识预计算新的第二标识。Specifically, the UDM may update the first identifier to the third identifier, see step 518a for details. In addition, the UDM may also pre-calculate a new second identifier based on the third identifier.
在此不具体限定,步骤518a和步骤518b的执行顺序。The execution order of step 518a and step 518b is not specifically limited here.
该方法在采用对称密码机制保护用户隐私同时,第一标识还替代主认证流程中的随机数,可节省主认证流程的开销。另外,在抗量子攻击的场景下,使用256位的对称密码算法,可达到抗量子攻击的有益效果,降低后量子密码算法引入的计算和传输消耗。This method uses a symmetric encryption mechanism to protect user privacy. At the same time, the first identifier also replaces the random number in the main authentication process, which can save the cost of the main authentication process. In addition, in the scenario of anti-quantum attack, the use of a 256-bit symmetric encryption algorithm can achieve the beneficial effect of anti-quantum attack and reduce the computing and transmission consumption introduced by the post-quantum encryption algorithm.
参照图6,执行如下:Referring to Figure 6, the execution is as follows:
步骤601,UE获得UE的第一标识和UE的第一长期密钥,并根据第一标识确定第二标识。UE还根据第一长期密钥、随机数生成第二认证数据。其中,随机数是根据第一标识产生的。第一标识和第一长期密钥的获取,以及第二标识的确定可参照上述图5中的步骤501来理解,在此不在赘述。In step 601, the UE obtains the first identifier of the UE and the first long-term key of the UE, and determines the second identifier according to the first identifier. The UE also generates second authentication data according to the first long-term key and a random number. The random number is generated according to the first identifier. The acquisition of the first identifier and the first long-term key, and the determination of the second identifier can be understood with reference to step 501 in FIG. 5 above, and will not be repeated here.
第二认证数据的生成可参照上述图5中的步骤510来理解,在此不赘述。The generation of the second authentication data can be understood by referring to step 510 in FIG. 5 , which will not be described in detail here.
步骤602,UE向SEAF发送第二标识以及第二认证数据。相应地,SEAF接收第二标识以及第二认证数据。Step 602: UE sends a second identifier and second authentication data to SEAF. Correspondingly, SEAF receives the second identifier and second authentication data.
具体地,该第二标识以及第二认证数据可以是携带在第一消息中,第一消息具体可以是注册请求消息或者身份响应消息。也即是可以是UE发起的注册请求消息中携带第二标识以及第二认证数据,或者网络侧发起身份请求,从而UE发送的身份响应消息中携带第二标识以及第二认证数据。Specifically, the second identifier and the second authentication data may be carried in the first message, and the first message may be a registration request message or an identity response message. That is, the second identifier and the second authentication data may be carried in the registration request message initiated by the UE, or the network side may initiate an identity request, so that the identity response message sent by the UE carries the second identifier and the second authentication data.
该第一消息还可以携带计数值,例如对于确定第二标识时引入计数值的情况。另外,该第一消息还可以携带双向认证方法的指示信息,也即上述的5G-AKA、EAP-AKA、或EAP-TLS的指示信息等。The first message may also carry a count value, for example, when a count value is introduced when determining the second identifier. In addition, the first message may also carry indication information of a two-way authentication method, that is, the indication information of the above-mentioned 5G-AKA, EAP-AKA, or EAP-TLS.
第二认证数据可参照上述图5中步骤510来确定,在此不具体限定。The second authentication data may be determined with reference to step 510 in FIG. 5 , and is not specifically limited here.
步骤603,SEAF向AUSF转发第二标识以及第二认证数据。相应地,AUSF接收第二标识以及第二认证数据。Step 603: SEAF forwards the second identifier and the second authentication data to AUSF. Accordingly, AUSF receives the second identifier and the second authentication data.
步骤604,AUSF向UDM转发第二标识。相应地,UDM接收第二标识。Step 604: AUSF forwards the second identifier to UDM. Accordingly, UDM receives the second identifier.
可选的,AUSF存储第二认证数据。Optionally, the AUSF stores second authentication data.
可选的,AUSF还向UDM转发第二认证数据。相应地,UDM接收第二认证数据。Optionally, the AUSF also forwards the second authentication data to the UDM. Accordingly, the UDM receives the second authentication data.
应理解,第二标识在网络侧的设备间传递是可以通过不同的消息进行。且第二认证数据可以和第二标识携带在同一消息中。It should be understood that the second identifier can be transmitted between devices on the network side through different messages, and the second authentication data and the second identifier can be carried in the same message.
例如,SEAF接收第一消息后,向AUSF发送认证请求消息,AUSF接收该认证请求消息后,向UDM发送认证向量获取请求消息。该认证请求消息、认证向量获取请求消息携带上述步骤602中介绍参数。For example, after receiving the first message, SEAF sends an authentication request message to AUSF, and after receiving the authentication request message, AUSF sends an authentication vector acquisition request message to UDM. The authentication request message and the authentication vector acquisition request message carry the parameters introduced in step 602 above.
步骤605,UDM根据第二标识确定终端的第一标识和双向认证中对UE进行认证的第二长期密钥,并根据第二长期密钥、随机数确定用于双向认证中对网络进行认证的第一认证数据,其中,随机数是根据第一标识产生的,第二长期密钥与UE的第一长期密钥为对称密钥。In step 605, the UDM determines the first identifier of the terminal and the second long-term key for authenticating the UE in the two-way authentication based on the second identifier, and determines the first authentication data for authenticating the network in the two-way authentication based on the second long-term key and the random number, wherein the random number is generated based on the first identifier, and the second long-term key and the first long-term key of the UE are symmetric keys.
可参照上述图5中的步骤505来确定第一认证数据,在此不在赘述。此外,还可参照上述图5中的步骤505确定第一校验数据。The first authentication data may be determined by referring to step 505 in Fig. 5 above, which will not be described in detail herein. In addition, the first verification data may also be determined by referring to step 505 in Fig. 5 above.
步骤606,UDM向AUSF发送第一认证数据。相应的,AUSF接收第一认证数据。Step 606: UDM sends the first authentication data to AUSF. Correspondingly, AUSF receives the first authentication data.
可选的,如果步骤604中AUSF存储了第二认证数据,则步骤606中UDM还向AUSF发送第一校验数据。相应地,AUSF接收第一校验数据。Optionally, if the AUSF stores the second authentication data in step 604, the UDM also sends the first verification data to the AUSF in step 606. Accordingly, the AUSF receives the first verification data.
具体地,所述第一认证数据和/或第一校验数据可通过认证向量获取响应消息传递。Specifically, the first authentication data and/or the first verification data may be transmitted via an authentication vector acquisition response message.
步骤607,UDM/AUSF对第二认证数据进行认证。Step 607: UDM/AUSF authenticates the second authentication data.
图6中步骤607以AUSF对第二认证数据进行认证为例来说明。Step 607 in FIG. 6 is illustrated by taking the AUSF authenticating the second authentication data as an example.
如果步骤604中AUSF向UDM转发了第二认证数据,则UDM可以使用第一校验数据对第二认证数据进行校验从而实现对终端的认证。If the AUSF forwards the second authentication data to the UDM in step 604, the UDM may use the first verification data to verify the second authentication data to thereby authenticate the terminal.
如果步骤604中AUSF未向UDM转发第二认证数据,则AUSF根据步骤606中接收到的第一校验数据,对步骤603中接收到并在步骤604中存储的第二认证数据进行校验从而实现对终端的认证。也即是步骤604中AUSF存储了所述第二认证数据。If the AUSF does not forward the second authentication data to the UDM in step 604, the AUSF verifies the second authentication data received in step 603 and stored in step 604 according to the first verification data received in step 606, thereby authenticating the terminal. That is, the AUSF stores the second authentication data in step 604.
具体地,UDM/AUSF根据第二认证数据RES*和第一校验数据XRES*进行认证。若RES*和XRES*相同,则认为对UE认证成功。Specifically, the UDM/AUSF performs authentication based on the second authentication data RES* and the first verification data XRES*. If RES* and XRES* are the same, it is considered that the UE is successfully authenticated.
需注意,上述步骤607可以发生在UDM侧步骤605中确定第一校验数据之后,也可以发生在AUSF侧步骤606接收第一校验数据之后,此处不做限定。It should be noted that the above step 607 can occur after the first verification data is determined in step 605 on the UDM side, or after the first verification data is received in step 606 on the AUSF side, and is not limited here.
步骤608,UDM获得认证结果。Step 608: UDM obtains the authentication result.
在一种可选的实现方式中,UDM根据上述步骤607对第二认证数据进行校验获得认证结果。在另一种可选的实现方式中,AUSF根据上述步骤607进行第二认证数据的校验获得认证结果,并将认证结果发送给UDM,从而,UDM获得认证结果。在图6中,步骤608以AUSF发送认证结果给UDM为例进行说明。In an optional implementation, the UDM verifies the second authentication data according to the above step 607 to obtain an authentication result. In another optional implementation, the AUSF verifies the second authentication data according to the above step 607 to obtain an authentication result, and sends the authentication result to the UDM, so that the UDM obtains the authentication result. In FIG6 , step 608 is described by taking the example of the AUSF sending the authentication result to the UDM.
进一步地,网络侧还可以更新第一标识。步骤如下:Furthermore, the network side may also update the first identifier. The steps are as follows:
步骤609,若UDM收到认证结果为认证成功,则为该UE产生第三标识。Step 609: If the authentication result received by the UDM is successful, a third identifier is generated for the UE.
可选地,UDM还可以对该第三标识加密以得到加密密文。例如,第三标识为RAND’,UDM可对RAND’进行加密,产生加密密文。可参照上述图4B中的步骤408和步骤409,或者图5中的步骤516来理解,在此不赘述。Optionally, the UDM may also encrypt the third identifier to obtain an encrypted ciphertext. For example, if the third identifier is RAND', the UDM may encrypt RAND' to generate an encrypted ciphertext. This may be understood by referring to steps 408 and 409 in FIG. 4B above, or step 516 in FIG. 5, which will not be described in detail here.
步骤610,UDM向AUSF发送第三标识或者加密密文。Step 610, UDM sends a third identifier or encrypted ciphertext to AUSF.
图6中以步骤610为UDM向AUSF发送第三标识为例来说明。In FIG. 6 , step 610 in which the UDM sends the third identifier to the AUSF is taken as an example for explanation.
步骤611,AUSF对第三标识进行加密,产生加密密文。Step 611, AUSF encrypts the third identifier to generate an encrypted ciphertext.
可选的,UDM还可对第三标识进行加密,产生加密密文,将加密密文发送至AUSF。Optionally, UDM may also encrypt the third identifier, generate encrypted ciphertext, and send the encrypted ciphertext to AUSF.
若在上述步骤609中,UDM产生第三标识并对第三标识进行加密产生加密密文,那么上述步骤610则为UDM向AUSF发送加密密文,上述步骤611则可不执行。If in the above step 609, the UDM generates a third identifier and encrypts the third identifier to generate an encrypted ciphertext, then the above step 610 is that the UDM sends the encrypted ciphertext to the AUSF, and the above step 611 may not be executed.
步骤612,AUSF向SEAF发送加密密文和第一认证数据。相应地,SEAF接收加密密文和第一认证数据。Step 612: AUSF sends the encrypted ciphertext and the first authentication data to SEAF. Correspondingly, SEAF receives the encrypted ciphertext and the first authentication data.
具体地,该加密密文和/或第一认证数据通过认证响应消息传递。Specifically, the encrypted ciphertext and/or the first authentication data are transmitted via an authentication response message.
应理解,所述第一认证数据可以和加密密文通过同一条消息发送;也可以通过不同消息发送,例如在步骤607之后AUSF发送第一认证数据而在步骤610或者611之后AUSF发送第一加密密文。It should be understood that the first authentication data can be sent through the same message as the encrypted ciphertext; it can also be sent through different messages, for example, after step 607, AUSF sends the first authentication data and after step 610 or 611, AUSF sends the first encrypted ciphertext.
步骤613,SEAF向UE发送加密密文和第一认证数据。相应地,UE接收加密密文和第一认证数据。Step 613: SEAF sends the encrypted ciphertext and the first authentication data to the UE. Correspondingly, the UE receives the encrypted ciphertext and the first authentication data.
该步骤613可通过NAS消息发送。具体地,可以是认证请求消息。为区分步骤603中的认证请求消息,可以将步骤613中的认证请求消息称为第二认证请求消息,步骤603中的认证请求消息称为第一认证请求消息。This step 613 can be sent via a NAS message. Specifically, it can be an authentication request message. To distinguish the authentication request message in step 603, the authentication request message in step 613 can be called a second authentication request message, and the authentication request message in step 603 can be called a first authentication request message.
与步骤612描述类似,所述第一认证数据可以和加密密文通过同一条消息发送;也可以通过不同消息发送。Similar to the description of step 612, the first authentication data and the encrypted ciphertext may be sent through the same message; or may be sent through different messages.
步骤614,UE根据随机数、第一长期密钥和第一认证数据执行双向认证中对网络的认证。Step 614: The UE performs authentication of the network in the two-way authentication according to the random number, the first long-term key and the first authentication data.
具体认证可参照上述图5中的步骤510来理解,在此不赘述。The specific authentication may be understood by referring to step 510 in FIG. 5 above, which will not be described in detail here.
若终端对网络认证成功,解密加密密文获得第三标识,并存储第三标识。应理解,该第三标识为更新的第一标识,例如用于产生所述终端再次触发所述双向认证的消息,也即是下一次双向认证时使用第三标识作为步骤601中的第一标识。具体地,UE可以将原第一标识替换为该第三标识,或者UE保留原第一标识,进一步存储第三标识。不做限定。If the terminal successfully authenticates the network, the encrypted ciphertext is decrypted to obtain the third identifier, and the third identifier is stored. It should be understood that the third identifier is the updated first identifier, for example, used to generate a message for the terminal to trigger the two-way authentication again, that is, the third identifier is used as the first identifier in step 601 during the next two-way authentication. Specifically, the UE can replace the original first identifier with the third identifier, or the UE can retain the original first identifier and further store the third identifier. No limitation is made.
步骤615,UE通过SEAF、AUSF向UDM发送对网络认证成功的消息。相应地,UDM接收UE对网络认证成功的消息。Step 615: UE sends a message of successful network authentication to UDM through SEAF and AUSF. Correspondingly, UDM receives the message of successful network authentication of UE.
应理解,步骤609也可以在步骤615之后执行,也即是UDM在确定双向认证都成功的情况下生成第三标识(加密密文也是类似的,不再赘述),并发送第三标识。It should be understood that step 609 can also be performed after step 615, that is, UDM generates a third identifier (the encrypted ciphertext is similar and will not be repeated) and sends the third identifier when determining that both authentications are successful.
或者UDM还可以先生成第三标识,在步骤615之后再发送第三标识。也即是UDM在确定双向认证都成功的情况下发送第三标识。Alternatively, the UDM may generate the third identifier first, and then send the third identifier after step 615. That is, the UDM sends the third identifier when determining that both bidirectional authentications are successful.
步骤616,UDM存储第三标识。Step 616: The UDM stores the third identifier.
具体地,UDM可将第一标识更新为第三标识,具体参见步骤518a。此外,UDM还可基于第三标识预计算新的第二标识。Specifically, the UDM may update the first identifier to the third identifier, see step 518a for details. In addition, the UDM may also pre-calculate a new second identifier based on the third identifier.
该方法在采用对称密码机制保护用户隐私同时,将终端的身份标识(也即第一标识)传输、主认证和新的终端身份标识(也即第三标识)传输流程结合,节省了传输消耗。另外,在抗量子攻击的场景下,使用256位的对称密码算法,可达到抗量子攻击的有益效果,降低后量子密码算法引入的计算和传输消耗。此外,该流程将第二标识与用于对终端进行认证的第二认证数据一起发送可以节省信令开销,提高数据处理效率。This method uses a symmetric cryptographic mechanism to protect user privacy while combining the transmission of the terminal's identity (i.e., the first identification), the main authentication, and the transmission process of the new terminal identity (i.e., the third identification), thereby saving transmission consumption. In addition, in the scenario of anti-quantum attack, the use of a 256-bit symmetric cryptographic algorithm can achieve the beneficial effect of anti-quantum attack and reduce the computation and transmission consumption introduced by the post-quantum cryptographic algorithm. In addition, this process sends the second identification together with the second authentication data used to authenticate the terminal, which can save signaling overhead and improve data processing efficiency.
参照图7,执行如下:Referring to Figure 7, the execution is as follows:
步骤701-步骤708与上述图6中步骤601-步骤608的执行流程相同,可参照理解,在此不展开说明。Step 701 to step 708 are the same as the execution process of step 601 to step 608 in FIG. 6 , which can be understood by reference and will not be described in detail here.
步骤709,AUSF向SEAF发送第一认证数据。相应地,SEAF接收第一认证数据。Step 709: AUSF sends the first authentication data to SEAF. Accordingly, SEAF receives the first authentication data.
具体地,所述第一认证数据通过认证向量获取响应消息传递。Specifically, the first authentication data is transmitted through an authentication vector acquisition response message.
步骤710,SEAF向UE发送第一认证数据。相应地,UE接收第一认证数据。Step 710: SEAF sends first authentication data to UE. Correspondingly, UE receives the first authentication data.
该步骤710可通过NAS消息发送。具体地,可以是认证请求消息。为区分步骤703中的认证请求消息,可以将步骤710中的认证请求消息称为第二认证请求消息,步骤703中的认证请求消息称为第一认证请求消息。This step 710 may be sent via a NAS message. Specifically, it may be an authentication request message. To distinguish the authentication request message in step 703, the authentication request message in step 710 may be referred to as a second authentication request message, and the authentication request message in step 703 may be referred to as a first authentication request message.
步骤711,UE根据随机数、第一长期密钥和第一认证数据执行双向认证中对网络的认证。Step 711: The UE performs authentication of the network in a two-way authentication according to the random number, the first long-term key and the first authentication data.
可参照上述图5中的步骤510来理解,在此不赘述。This can be understood by referring to step 510 in FIG. 5 , and will not be described in detail here.
步骤712,UE通过SEAF、AUSF向UDM发送对网络认证成功的消息。相应地,UDM接收UE对网络认证成功的消息。Step 712: UE sends a message of successful network authentication to UDM through SEAF and AUSF. Correspondingly, UDM receives the message of successful network authentication of UE.
步骤713,若UDM收到认证结果为认证成功,则为该UE产生第三标识。Step 713: If the authentication result received by the UDM is successful, a third identifier is generated for the UE.
可选地,UDM还可以对该第三标识加密以得到加密密文。例如第三标识为RAND’,UDM可对RAND’进行加密,产生加密密文。Optionally, UDM can also encrypt the third identifier to obtain encrypted ciphertext. For example, if the third identifier is RAND', UDM can encrypt RAND' to generate encrypted ciphertext.
第三标识的产生以及对第三标识进行加密的过程可参照上述图4B中的步骤408和步骤409,或者图5中的步骤516,或者图6中的步骤609来理解,在此不赘述。The process of generating the third identifier and encrypting the third identifier can be understood by referring to steps 408 and 409 in FIG. 4B , or step 516 in FIG. 5 , or step 609 in FIG. 6 , and will not be described in detail here.
步骤714,UDM通过UPU流程向UE发送第三标识或者加密密文。Step 714: UDM sends a third identifier or encrypted ciphertext to the UE through the UPU process.
可参照上述图5中的步骤517来理解,在此不赘述。图7中以步骤714为UDM通过UPU流程向UE发送加密密文为例来说明。This can be understood by referring to step 517 in Figure 5 above, which will not be described in detail here. In Figure 7, step 714 is taken as an example for explaining that the UDM sends encrypted ciphertext to the UE through the UPU process.
步骤715a,UE解密加密密文,获得第三标识,或者直接解密获得第三标识。Step 715a: The UE decrypts the encrypted ciphertext to obtain the third identifier, or directly decrypts to obtain the third identifier.
可选的,UE存储第三标识。应理解,该第三标识为更新的第一标识,例如用于产生所述终端再次触发所述双向认证的消息,也即是下一次双向认证时使用第三标识作为步骤701中的第一标识。具体地,UE可以将原第一标识替换为该第三标识,或者UE保留原第一标识,进一步存储第三标识。不做限定。Optionally, the UE stores a third identifier. It should be understood that the third identifier is an updated first identifier, for example, used to generate a message for the terminal to trigger the two-way authentication again, that is, the third identifier is used as the first identifier in step 701 during the next two-way authentication. Specifically, the UE can replace the original first identifier with the third identifier, or the UE retains the original first identifier and further stores the third identifier. No limitation is made.
可选的,UE获得第三标识后,向UDM发送UE成功接收第三标识的确认消息,以触发步骤715b的执行。Optionally, after obtaining the third identifier, the UE sends a confirmation message to the UDM indicating that the UE successfully receives the third identifier, so as to trigger the execution of step 715b.
步骤715b,UDM存储第三标识。Step 715b: UDM stores the third identifier.
具体地,UDM可将第一标识更新为第三标识,具体参见步骤715a。此外,UDM还可基于第三标识预计算新的第二标识。Specifically, the UDM may update the first identifier to the third identifier, see step 715a for details. In addition, the UDM may also pre-calculate a new second identifier based on the third identifier.
在此不具体限定,步骤715a和步骤715b的执行顺序。The execution order of step 715a and step 715b is not specifically limited here.
该方法在采用对称密码机制保护用户隐私同时,将终端的身份标识(也即第一标识)传输、主认证和新的终端身份标识(也即第三标识)传输流程结合,节省了传输消耗。另外,在抗量子攻击的场景下,使用256位的对称密码算法,可达到抗量子攻击的有益效果,降低后量子密码算法引入的计算和传输消耗。此外,该流程将第二标识与用于对终端进行认证的第二认证数据一起发送可以节省信令开销,提高数据处理效率。此外,相对于图6的方案而言,图7的方案改动更小,更加适配当前通信系统的需求。This method combines the transmission process of the terminal identity (i.e., the first identification) transmission, the main authentication and the new terminal identity (i.e., the third identification) transmission process while using a symmetric cryptographic mechanism to protect user privacy, thereby saving transmission consumption. In addition, in the scenario of anti-quantum attack, the use of a 256-bit symmetric cryptographic algorithm can achieve the beneficial effect of anti-quantum attack and reduce the calculation and transmission consumption introduced by the post-quantum cryptographic algorithm. In addition, the process sends the second identification together with the second authentication data used to authenticate the terminal, which can save signaling overhead and improve data processing efficiency. In addition, compared with the scheme of Figure 6, the scheme of Figure 7 has smaller changes and is more adapted to the needs of the current communication system.
实施方式二、Implementation Method 2:
下面结合图8A,以具体的方法实施例对本申请的技术方案进行详细说明。需要说明的是,图8A是本申请的方法实施例的示意性流程图,示出了该方法的详细的通信步骤或操作,但这些步骤或操作仅是示例,本申请实施例还可以执行其它操作或者图8A中的各种操作的变形。此外,图8A中的各个步骤可以分别按照与图8A所呈现的不同的顺序来执行,并且有可能并非要执行图8A中的全部操作。图8A中以终端、网络侧的设备为例来说明,在实际应用时,可能还涉及到与其他设备的交互,在此不展开说明,如图8A所示,该方法执行如下:The technical solution of the present application is described in detail with reference to a specific method embodiment in conjunction with FIG. 8A . It should be noted that FIG. 8A is a schematic flow chart of a method embodiment of the present application, showing detailed communication steps or operations of the method, but these steps or operations are only examples, and the embodiment of the present application can also perform other operations or variations of the various operations in FIG. 8A . In addition, the various steps in FIG. 8A can be performed in an order different from that presented in FIG. 8A , and it is possible that not all operations in FIG. 8A need to be performed. FIG. 8A takes the terminal and the equipment on the network side as an example for illustration. In actual application, it may also involve interaction with other devices, which will not be described in detail here. As shown in FIG. 8A , the method is performed as follows:
步骤801,终端获取终端的第一密钥标识,第一密钥标识指示终端的第一长期密钥。Step 801: A terminal obtains a first key identifier of the terminal, where the first key identifier indicates a first long-term key of the terminal.
可选的,终端可从终端的SIM或USIM的配置参数中获取第一密钥标识。或者,终端的身份认证成功后,网络侧的设备产生新的第一密钥标识并发送至终端,终端存储新的第一密钥标识后,终端从所述新的第一密钥标识的存储位置(例如,SIM、USIM、或者ME)读取第一密钥标识。Optionally, the terminal may obtain the first key identifier from the configuration parameters of the SIM or USIM of the terminal. Alternatively, after the terminal's identity authentication is successful, the network-side device generates a new first key identifier and sends it to the terminal. After the terminal stores the new first key identifier, the terminal reads the first key identifier from the storage location of the new first key identifier (e.g., SIM, USIM, or ME).
在一种可选的实现方式中,从ME获得第一密钥标识,从USIM或SIM获得第一长期密钥。In an optional implementation manner, the first key identifier is obtained from the ME, and the first long-term key is obtained from the USIM or the SIM.
在另一种可选的实现方式中,从USIM或SIM获得第一长期密钥和第一密钥标识。第一密钥标识可以为网络对终端认证成功后生成并发送给UE的临时密钥标识,在此不具体限定第一密钥标识。In another optional implementation, the first long-term key and the first key identifier are obtained from the USIM or SIM. The first key identifier may be a temporary key identifier generated by the network after the terminal is successfully authenticated and sent to the UE, and the first key identifier is not specifically limited herein.
此外,终端还获取预配置在终端中的第一订阅永久标识符。具体地,终端可从SIM或USIM获取第一订阅永久标识符。In addition, the terminal also obtains a first subscription permanent identifier preconfigured in the terminal. Specifically, the terminal may obtain the first subscription permanent identifier from a SIM or a USIM.
可选的,终端可预配置多个第一密钥标识,例如,第一密钥标识资源池。在一种可选的实现方式中,每个第一密钥标识仅用于一次身份认证,从而使得多次身份认证中每次身份认证的第一密钥标识不同,例如,每次与网络认证时,从第一密钥标识的资源池中选择一个第一密钥标识作为身份认证使用的第一密钥标识,并删除第一密钥标识资源池中所述选择的第一密钥标识。Optionally, the terminal may preconfigure multiple first key identifiers, for example, a first key identifier resource pool. In an optional implementation, each first key identifier is used only for one identity authentication, so that the first key identifier for each identity authentication in multiple identity authentications is different. For example, each time when authenticating with the network, a first key identifier is selected from the first key identifier resource pool as the first key identifier used for identity authentication, and the selected first key identifier in the first key identifier resource pool is deleted.
在另一种可选的实现方式中,从第一密钥标识的资源池中选择一个第一密钥标识作为身份认证使用的第一密钥标识后,不删除所述选择的第一密钥标识。In another optional implementation manner, after a first key identifier is selected from a resource pool of first key identifiers as a first key identifier used for identity authentication, the selected first key identifier is not deleted.
步骤802,终端基于第一密钥标识以及第一长期密钥生成通信密钥。Step 802: The terminal generates a communication key based on the first key identifier and the first long-term key.
具体地,终端可使用第一长期密钥对第一密钥标识进行加密运算得到通信密钥。例如,通信密钥为对SUPI进行加密保护的对称密钥,EK||MK=KDF(K,KID,SN Name),其中,EK||MK为通信密钥,K为第一长期密钥,KID也即第一密钥标识,SN Name为服务网络名称,KDF为密钥导出函数。Specifically, the terminal may use the first long-term key to perform encryption operation on the first key identifier to obtain the communication key. For example, the communication key is a symmetric key for encrypting and protecting the SUPI, EK||MK=KDF(K, KID, SN Name), where EK||MK is the communication key, K is the first long-term key, KID is also the first key identifier, SN Name is the service network name, and KDF is the key derivation function.
步骤803,终端确定身份隐藏标识符,身份隐藏标识符包括第一加密密文以及第一密钥标识,第一加密密文为使用通信密钥对终端的第一订阅永久标识符进行加密得到的。Step 803: The terminal determines an identity hiding identifier, where the identity hiding identifier includes a first encrypted ciphertext and a first key identifier, where the first encrypted ciphertext is obtained by encrypting the first subscription permanent identifier of the terminal using a communication key.
其中,身份隐藏标识符可以理解为SUCI,第一订阅永久标识符可以理解为SUPI,在此不具体限定。The identity hiding identifier may be understood as SUCI, and the first subscription permanent identifier may be understood as SUPI, which are not specifically limited herein.
具体地,若第一密钥标识为KID,那么本申请中SUCI的构造如图9所示,相当于将现有的SUCI中的Home Network Public Key Id替换为KID。其中,使用通信密钥EK对SUPI进行加密产生第一加密密文C,使用通信密钥MK对SUPI加密产生的密文进行完整性保护,产生消息认证码MAC tag value。SUCI的scheme out部分为第一加密密文C及消息认证码MAC tag value的串联,即C||MAC tag value。Specifically, if the first key identifier is KID, then the structure of SUCI in this application is shown in FIG9 , which is equivalent to replacing the Home Network Public Key Id in the existing SUCI with KID. Among them, the communication key EK is used to encrypt SUPI to generate a first encrypted ciphertext C, and the communication key MK is used to encrypt the ciphertext generated by SUPI to perform integrity protection, and generate a message authentication code MAC tag value. The scheme out part of SUCI is the concatenation of the first encrypted ciphertext C and the message authentication code MAC tag value, that is, C||MAC tag value.
由于使用了对称机制,SUCI的scheme out部分,不需要传送临时公钥,可只发送加密后的第一加密密文和消息验证码MAC tag value。Since a symmetric mechanism is used, the scheme out part of SUCI does not need to transmit a temporary public key. Instead, only the encrypted first ciphertext and the message authentication code MAC tag value can be sent.
步骤804,终端发送身份隐藏标识符。相应地,网络侧的设备接收身份隐藏标识符。Step 804: The terminal sends an identity hiding identifier. Correspondingly, the device on the network side receives the identity hiding identifier.
上述步骤804可通过注册请求发送,也可通过身份认证请求发送,在此不具体限定。The above step 804 may be sent via a registration request or an identity authentication request, which is not specifically limited here.
步骤805,网络侧的设备根据第一密钥标识确定第二长期密钥以及预配置的终端的第二订阅永久标识符,第二长期密钥与终端的第一长期密钥为对称密钥。Step 805: The network-side device determines a second long-term key and a preconfigured second subscription permanent identifier of the terminal according to the first key identifier, and the second long-term key and the first long-term key of the terminal are symmetric keys.
具体地,网络侧的设备根据身份隐藏标识符的数据结构从接收到的身份隐藏标识符中获得第一密钥标识,例如,从上述SUCI存放KID的位置获得第一密钥标识KID,网络侧的设备(例如,UDM或ARPF)可以预配置第一密钥标识与第二长期密钥、预配置的终端的第二订阅永久标识符的对应关系。网络侧的设备接收第一密钥标识后,可根据第一密钥标识检索获得第二长期密钥以及预配置的第二订阅永久标识符。Specifically, the device on the network side obtains the first key identifier from the received identity hiding identifier according to the data structure of the identity hiding identifier, for example, obtains the first key identifier KID from the location where the SUCI stores the KID, and the device on the network side (for example, UDM or ARPF) can pre-configure the correspondence between the first key identifier and the second long-term key and the pre-configured second subscription permanent identifier of the terminal. After receiving the first key identifier, the device on the network side can retrieve the second long-term key and the pre-configured second subscription permanent identifier according to the first key identifier.
步骤806,网络侧的设备根据第二长期密钥,确定通信密钥,使用通信密钥对第一加密密文进行解密,以得到终端的第一订阅永久标识符。Step 806: The device on the network side determines the communication key according to the second long-term key, and uses the communication key to decrypt the first encrypted ciphertext to obtain the first subscription permanent identifier of the terminal.
上述步骤806中的通信密钥的确定方式可参照步骤802来理解在此不赘述。The method for determining the communication key in the above step 806 can be understood by referring to step 802 and will not be repeated here.
具体地,网络侧的设备确定通信密钥CK||MK后,网络侧的设备可根据身份隐藏标识符的数据结构从接收到的身份隐藏标识符中获得第一加密密文C和消息认证码MAC tag value。首先使用通信密钥MK和第一加密密文对消息认证码MAC tag value进行校验,如果校验通过,则使用通信密钥CK对第一加密密文C进行解密,获得终端的第一订阅永久标识符。其中,对MAC tag value进行校验可通过如下方式执行:使用通信密钥MK对第一加密密文C进行MAC计算得到消息认证码MAC tag value2,比对MAC tag value2与MAC tag value是否相同,如果相同,则校验通过,如果不相同,则校验不通过。Specifically, after the device on the network side determines the communication key CK||MK, the device on the network side can obtain the first encrypted ciphertext C and the message authentication code MAC tag value from the received identity hiding identifier according to the data structure of the identity hiding identifier. First, the message authentication code MAC tag value is verified using the communication key MK and the first encrypted ciphertext. If the verification passes, the first encrypted ciphertext C is decrypted using the communication key CK to obtain the first subscription permanent identifier of the terminal. The verification of MAC tag value can be performed in the following manner: the first encrypted ciphertext C is MAC calculated using the communication key MK to obtain the message authentication code MAC tag value2, and the MAC tag value2 is compared to see if they are the same. If they are the same, the verification passes, and if they are not the same, the verification fails.
步骤807,网络侧的设备根据第一订阅永久标识符和第二订阅永久标识符对终端进行认证。Step 807: The network-side device authenticates the terminal according to the first subscription permanent identifier and the second subscription permanent identifier.
上述步骤806和步骤807均可通过UDM或ARPF来执行。The above steps 806 and 807 can both be executed by UDM or ARPF.
具体地,若第一订阅永久标识符和第二订阅永久标识符相同,则对终端认证成功,若不相同则对终端认证失败。具体地,网络侧设备可根据第一密钥标识、服务网络等推演通信密钥EK、MK,使用MK对schemeout部分的MAC tag value进行完整性校验。如果MAC tag value校验通过,使用EK解密第一加密密文,获得解码的SUPI(也即第一订阅永久标识符)。网络侧的设备比对解密的SUPI和上述步骤805中通过第一密钥标识检索到的预配置的SUPI是否一致;若一致,则网络侧的设备认为终端身份认证通过。Specifically, if the first subscription permanent identifier and the second subscription permanent identifier are the same, the terminal authentication is successful; if they are not the same, the terminal authentication fails. Specifically, the network side device can deduce the communication keys EK and MK based on the first key identifier, the service network, etc., and use MK to perform integrity check on the MAC tag value of the schemeout part. If the MAC tag value is verified, the first encrypted ciphertext is decrypted using EK to obtain the decoded SUPI (that is, the first subscription permanent identifier). The network side device compares the decrypted SUPI with the pre-configured SUPI retrieved by the first key identifier in the above step 805 to see if they are consistent; if they are consistent, the network side device considers that the terminal identity authentication is successful.
本申请中,终端基于第一密钥标识以及第一长期密钥生成通信密钥,基于通信密钥对预配置在终端的第一订阅永久标识符进行加密处理得到第一加密密文。之后将第一加密密文以及第一密钥标识作为身份隐藏标识符的内容发送至网络侧,以便网络侧确定第二长期密钥,并且能够对第一订阅永久标识符进行校验。该方式中终端和网络侧采用对称(相同)的通信密钥进行加解密处理,可以降低订阅永久标识符加密的数据处理复杂度。In the present application, the terminal generates a communication key based on the first key identifier and the first long-term key, and encrypts the first subscription permanent identifier preconfigured in the terminal based on the communication key to obtain a first encrypted ciphertext. The first encrypted ciphertext and the first key identifier are then sent to the network side as the content of the identity hiding identifier, so that the network side can determine the second long-term key and verify the first subscription permanent identifier. In this way, the terminal and the network side use symmetric (identical) communication keys for encryption and decryption, which can reduce the data processing complexity of the subscription permanent identifier encryption.
在网络对终端身份认证成功后,可更新第一密钥标识,以保证终端身份认证时,SUCI中的第一密钥标识都是不同的。即使某次终端认证时,第一密钥标识被窃取也不能获取终端的身份,进而可以保证终端的身份信息的安全。可参照图8B来执行,在执行完上述的步骤801-步骤807还包括:After the network successfully authenticates the terminal identity, the first key identifier can be updated to ensure that the first key identifier in the SUCI is different during the terminal identity authentication. Even if the first key identifier is stolen during a terminal authentication, the identity of the terminal cannot be obtained, thereby ensuring the security of the terminal identity information. Referring to FIG. 8B, after executing the above steps 801 to 807, the following steps are also included:
步骤808,网络侧的设备在对终端认证成功的情况下,产生第二密钥标识,第二密钥标识用于产生终端再次接入网络的身份隐藏标识符。Step 808: When the terminal is successfully authenticated, the network-side device generates a second key identifier, which is used to generate an identity hiding identifier for the terminal to access the network again.
具体地,第二密钥标识可以是通过随机数发生器产生的随机数。或者,第二密钥标识可以由随机数发生器产生的随机数与专有标识(例如,PLMN标识)构成。或者,网络侧的设备(例如,UDM)维护有第二密钥标识的资源池,每次网络对终端认证成功后,从该资源池中随机选择一个第二密钥标识。或者,网络侧的设备维护有一个固定长度的递增序列号,每次网络对某终端认证成功后,选择当前序列号作为终端的第二密钥标识。在此不具体限定第二密钥标识的生成方式。上述步骤808可由UDM或ARPF执行。Specifically, the second key identifier can be a random number generated by a random number generator. Alternatively, the second key identifier can be composed of a random number generated by a random number generator and a proprietary identifier (for example, a PLMN identifier). Alternatively, the device on the network side (for example, UDM) maintains a resource pool of second key identifiers, and each time the network successfully authenticates the terminal, a second key identifier is randomly selected from the resource pool. Alternatively, the device on the network side maintains an increasing serial number of a fixed length, and each time the network successfully authenticates a terminal, the current serial number is selected as the second key identifier of the terminal. The generation method of the second key identifier is not specifically limited here. The above step 808 can be performed by UDM or ARPF.
可选的,网络侧的设备存储第二密钥标识。应理解,该第二密钥标识为更新的第一密钥标识,例如用于产生所述终端再次接入网络的身份隐藏标识符,也即是下一次终端接入网络时使用第二密钥标识作为步骤801中的第一密钥标识。具体地,UDM可以将原第一密钥标识替换为该第二密钥标识,或者UDM保留原第一密钥标识,进一步存储第二密钥标识。不做限定。Optionally, the device on the network side stores a second key identifier. It should be understood that the second key identifier is an updated first key identifier, for example, used to generate an identity hiding identifier for the terminal to access the network again, that is, the second key identifier is used as the first key identifier in step 801 the next time the terminal accesses the network. Specifically, the UDM can replace the original first key identifier with the second key identifier, or the UDM retains the original first key identifier and further stores the second key identifier. No limitation is made.
步骤809,网络侧的设备使用通信密钥加密第二密钥标识,得到第二加密密文。Step 809: The device on the network side uses the communication key to encrypt the second key identifier to obtain a second encrypted ciphertext.
如果终端身份验证通过,为终端产生第二密钥标识。UDM或ARPF可使用EK加密第二密钥标识,得到第二加密密文。If the terminal identity authentication is passed, a second key identifier is generated for the terminal. UDM or ARPF can use EK to encrypt the second key identifier to obtain a second encrypted ciphertext.
步骤810,网络侧的设备发送第二加密密文。Step 810: The device on the network side sends a second encrypted ciphertext.
上述步骤810中的第二加密密文可由UDM或ARPF可经由AUSF、SEAF传输至终端。可选的,网络侧的设备还可采用终端参数更新流程传输加密密文。例如,通过UPU流程传输加密密文。具体地,将第二加密密文作为UPU流程中的UPU数据。The second encrypted ciphertext in the above step 810 may be transmitted to the terminal by the UDM or ARPF via the AUSF and SEAF. Optionally, the device on the network side may also use the terminal parameter update process to transmit the encrypted ciphertext. For example, the encrypted ciphertext is transmitted through the UPU process. Specifically, the second encrypted ciphertext is used as the UPU data in the UPU process.
可选的,网络侧的设备还可采用UPU流程对第二密钥标识进行加密传输。具体地,将第二密钥标识作为UPU流程中的UPU数据。Optionally, the device on the network side may also use a UPU process to encrypt and transmit the second key identifier. Specifically, the second key identifier is used as UPU data in the UPU process.
步骤811,终端使用通信密钥解密第二加密密文,以得到终端的第二密钥标识。Step 811: The terminal uses the communication key to decrypt the second encrypted ciphertext to obtain a second key identifier of the terminal.
相应地,终端可存储第二密钥标识,应理解,该第二密钥标识为更新的第一密钥标识,例如用于产生所述终端再次接入网络的身份隐藏标识符,也即是下一次终端接入网络时使用第二密钥标识作为步骤801中的第一密钥标识。具体地,终端可以将原第一密钥标识替换为该第二密钥标识,或者终端保留原第一密钥标识,进一步存储第二密钥标识。不做限定。Accordingly, the terminal may store the second key identifier, and it should be understood that the second key identifier is an updated first key identifier, for example, used to generate an identity hiding identifier for the terminal to access the network again, that is, the second key identifier is used as the first key identifier in step 801 the next time the terminal accesses the network. Specifically, the terminal may replace the original first key identifier with the second key identifier, or the terminal may retain the original first key identifier and further store the second key identifier. No limitation is made.
可选的,终端还可在解密第二加密密文得到第二密钥标识后,向网络侧的设备发送终端成功接收第二密钥标识的确认消息。网络侧的设备接收到该确认消息后,网络侧设备可存储第二密钥标识。Optionally, after decrypting the second encrypted ciphertext to obtain the second key identifier, the terminal may send a confirmation message to the network side device indicating that the terminal has successfully received the second key identifier. After the network side device receives the confirmation message, the network side device may store the second key identifier.
本申请中,终端可基于该第二密钥标识更新第一密钥标识,当终端再次接入网络时,可基于该第二密钥标识以及第一长期密钥确定通信密钥,并基于该通信密钥对第一订阅永久标识符进行加密处理,该通信密钥与基于第一密钥标识以及第一长期密钥确定的通信密钥不同。基于此,每次接入网络时,身份隐藏标识符中通信密钥加密的第一加密密文都是不同的,即使身份隐藏标识符被窃取也不能解密用户的身份信息,进而可以保证用户的身份信息的安全。In the present application, the terminal can update the first key identifier based on the second key identifier. When the terminal accesses the network again, the communication key can be determined based on the second key identifier and the first long-term key, and the first subscription permanent identifier can be encrypted based on the communication key. The communication key is different from the communication key determined based on the first key identifier and the first long-term key. Based on this, each time the network is accessed, the first encrypted ciphertext encrypted by the communication key in the identity hiding identifier is different, and even if the identity hiding identifier is stolen, the user's identity information cannot be decrypted, thereby ensuring the security of the user's identity information.
上述主要从设备交互的角度对本申请实施例提供的方案进行了介绍。可以理解的是,为了实现上述功能,各个设备可以包括执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请的实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。The above mainly introduces the solution provided by the embodiment of the present application from the perspective of device interaction. It is understandable that, in order to implement the above functions, each device may include a hardware structure and/or software module corresponding to each function. It should be easily appreciated by those skilled in the art that, in combination with the units and algorithm steps of each example described in the embodiments disclosed herein, the embodiments of the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present application.
本申请实施例可以根据上述方法示例对设备进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。The embodiment of the present application can divide the functional units of the device according to the above method example, for example, each functional unit can be divided according to each function, or two or more functions can be integrated into one unit. The above integrated unit can be implemented in the form of hardware or in the form of software functional units.
在采用集成的单元的情况下,图10示出了本申请实施例中所涉及的通信装置的可能的示例性框图。如图10所示,通信装置1000可以包括:处理单元1001和收发单元1002。处理单元1001用于对通信装置1000的动作进行控制管理。收发单元1002用于支持通信装置1000与其他设备的通信。可选地,收发单元1002可以包括接收单元和/或发送单元,分别用于执行接收和发送操作。可选的,通信装置1000还可以包括存储单元,用于存储通信装置1000的程序代码和/或数据。所述收发单元可以称为输入输出单元、通信单元等,所述收发单元可以是收发器;所述处理单元可以是处理器。当通信装置是通信设备中的模块(如,芯片)时,所述收发单元可以是输入输出接口、输入输出电路或输入输出管脚等,也可以称为接口、通信接口或接口电路等;所述处理单元可以是处理器、处理电路或逻辑电路等。具体地,该装置可以为上述的终端、网络侧设备如SEAF、AUSF以及UDM等。具体执行流程可参见上述方法实施例的描述在此不展开说明。In the case of using an integrated unit, FIG10 shows a possible exemplary block diagram of a communication device involved in an embodiment of the present application. As shown in FIG10, the communication device 1000 may include: a processing unit 1001 and a transceiver unit 1002. The processing unit 1001 is used to control and manage the actions of the communication device 1000. The transceiver unit 1002 is used to support the communication of the communication device 1000 with other devices. Optionally, the transceiver unit 1002 may include a receiving unit and/or a sending unit, which are respectively used to perform receiving and sending operations. Optionally, the communication device 1000 may also include a storage unit for storing program code and/or data of the communication device 1000. The transceiver unit may be referred to as an input-output unit, a communication unit, etc., and the transceiver unit may be a transceiver; the processing unit may be a processor. When the communication device is a module (such as a chip) in a communication device, the transceiver unit may be an input-output interface, an input-output circuit or an input-output pin, etc., and may also be referred to as an interface, a communication interface or an interface circuit, etc.; the processing unit may be a processor, a processing circuit or a logic circuit, etc. Specifically, the device may be the above-mentioned terminal, network side equipment such as SEAF, AUSF and UDM, etc. The specific execution process may refer to the description of the above-mentioned method embodiment and will not be described in detail here.
在一个实施例中,通信装置1000为终端,处理单元1001用于获得终端的第一标识和终端的第一长期密钥;收发单元1002用于发送第一消息,其中,第一消息用于触发双向认证,第一消息包括第二标识,第二标识用于确定双向认证中对终端进行认证的第二长期密钥,第二标识是根据第一标识确定的,第二长期密钥与第一长期密钥为对称密钥;收发单元1002还用于接收第一认证数据;处理单元1001还用于根据随机数、第一长期密钥和第一认证数据执行双向认证中对网络的认证,其中,随机数是根据第一标识产生的。In one embodiment, the communication device 1000 is a terminal, and the processing unit 1001 is used to obtain a first identifier of the terminal and a first long-term key of the terminal; the transceiver unit 1002 is used to send a first message, wherein the first message is used to trigger two-way authentication, the first message includes a second identifier, and the second identifier is used to determine a second long-term key for authenticating the terminal in the two-way authentication, the second identifier is determined based on the first identifier, and the second long-term key and the first long-term key are symmetric keys; the transceiver unit 1002 is also used to receive first authentication data; the processing unit 1001 is also used to perform authentication of the network in the two-way authentication based on a random number, the first long-term key and the first authentication data, wherein the random number is generated based on the first identifier.
在一种可选的方式中,收发单元1002还用于接收加密密文;处理单元1001还用于使用通信密钥解密加密密文,以得到终端的第三标识,其中,通信密钥为从第一长期密钥推演得到的,第三标识用于产生终端再次触发双向认证的消息。In an optional manner, the transceiver unit 1002 is also used to receive encrypted ciphertext; the processing unit 1001 is also used to decrypt the encrypted ciphertext using a communication key to obtain a third identifier of the terminal, wherein the communication key is derived from the first long-term key, and the third identifier is used to generate a message for the terminal to trigger two-way authentication again.
在一种可选的方式中,第一消息还包括:用于对终端进行认证的第二认证数据。In an optional manner, the first message also includes: second authentication data for authenticating the terminal.
在一种可选的方式中,收发单元1002还用于发送终端成功接收第三标识的确认消息。In an optional manner, the transceiver unit 1002 is further configured to send a confirmation message indicating that the terminal has successfully received the third identifier.
在一种可选的方式中,收发单元1002还用于采用终端参数更新流程接收加密密文。In an optional manner, the transceiver unit 1002 is further configured to receive encrypted ciphertext using a terminal parameter update process.
在一种可选的方式中,第二标识通过以下一种确定:In an optional manner, the second identifier is determined by one of the following:
第一标识;或,第一标识、第一长期密钥;或,第一标识、第一长期密钥、计数值,计数值指示终端触发双向认证的次数。The first identifier; or, the first identifier and the first long-term key; or, the first identifier, the first long-term key, and a count value, wherein the count value indicates the number of times the terminal triggers two-way authentication.
在一个实施例中,通信装置1000为网络侧的设备(例如,UDM),收发单元1002用于接收终端的第二标识;处理单元1001用于根据第二标识确定终端的第一标识和双向认证中对终端进行认证的第二长期密钥,第二长期密钥与终端的第一长期密钥为对称密钥;根据第二长期密钥、随机数确定校验数据,校验数据用于执行双向认证中对终端的认证,随机数是根据第一标识确定的;根据第二长期密钥、随机数确定用于双向认证中对网络进行认证的第一认证数据;收发单元1002还用于发送第一认证数据。In one embodiment, the communication device 1000 is a device on the network side (for example, UDM), and the transceiver unit 1002 is used to receive the second identifier of the terminal; the processing unit 1001 is used to determine the first identifier of the terminal and the second long-term key for authenticating the terminal in two-way authentication based on the second identifier, and the second long-term key and the first long-term key of the terminal are symmetric keys; the verification data is determined based on the second long-term key and the random number, and the verification data is used to perform authentication of the terminal in two-way authentication, and the random number is determined based on the first identifier; the first authentication data used to authenticate the network in two-way authentication is determined based on the second long-term key and the random number; the transceiver unit 1002 is also used to send the first authentication data.
在还一个实施例中,通信装置1000为终端,处理单元1001用于获取终端的第一密钥标识,第一密钥标识指示终端的第一长期密钥;基于第一密钥标识以及第一长期密钥生成通信密钥;确定身份隐藏标识符,身份隐藏标识符包括第一加密密文以及第一密钥标识,第一加密密文为使用通信密钥对终端的第一订阅永久标识符进行加密得到的;收发单元1002用于发送身份隐藏标识符。In another embodiment, the communication device 1000 is a terminal, and the processing unit 1001 is used to obtain a first key identifier of the terminal, the first key identifier indicating a first long-term key of the terminal; generate a communication key based on the first key identifier and the first long-term key; determine an identity hiding identifier, the identity hiding identifier includes a first encrypted ciphertext and a first key identifier, the first encrypted ciphertext is obtained by encrypting the first subscription permanent identifier of the terminal using the communication key; the transceiver unit 1002 is used to send the identity hiding identifier.
在一种可选的方式中,收发单元1002还用于接收第二加密密文;处理单元1001还用于使用通信密钥解密第二加密密文,以得到终端的第二密钥标识,第二密钥标识用于产生终端再次接入网络的身份隐藏标识符。In an optional manner, the transceiver unit 1002 is also used to receive a second encrypted ciphertext; the processing unit 1001 is also used to decrypt the second encrypted ciphertext using the communication key to obtain a second key identifier of the terminal, and the second key identifier is used to generate an identity hiding identifier for the terminal to access the network again.
在一种可选的方式中,收发单元1002还用于采用终端参数更新流程接收第二加密密文。In an optional manner, the transceiver unit 1002 is further configured to receive the second encrypted ciphertext using a terminal parameter update procedure.
在再一个实施例中,通信装置1000为网络侧的设备(例如UDM或ARPF),收发单元1002用于接收终端的身份隐藏标识符,身份隐藏标识符包括第一加密密文以及第一密钥标识;处理单元1001用于根据第一密钥标识确定第二长期密钥以及预配置的终端的第二订阅永久标识符,第二长期密钥与终端的第一长期密钥为对称密钥;基于通信密钥对第一加密密文进行解密,以得到终端的第一订阅永久标识符,通信密钥是从第二长期密钥推演的;根据第一订阅永久标识符和第二订阅永久标识符对终端进行认证。In another embodiment, the communication device 1000 is a device on the network side (such as UDM or ARPF), and the transceiver unit 1002 is used to receive the identity hiding identifier of the terminal, and the identity hiding identifier includes a first encrypted ciphertext and a first key identifier; the processing unit 1001 is used to determine the second long-term key and the pre-configured second subscription permanent identifier of the terminal according to the first key identifier, and the second long-term key and the first long-term key of the terminal are symmetric keys; the first encrypted ciphertext is decrypted based on the communication key to obtain the first subscription permanent identifier of the terminal, and the communication key is derived from the second long-term key; the terminal is authenticated according to the first subscription permanent identifier and the second subscription permanent identifier.
在一种可选的方式中,在对终端认证成功的情况下,处理单元1001还用于产生第二密钥标识,第二密钥标识用于产生终端再次接入网络的身份隐藏标识符;使用通信密钥加密第二密钥标识,得到第二加密密文;收发单元1002还用于发送第二加密密文。In an optional manner, when the terminal is successfully authenticated, the processing unit 1001 is also used to generate a second key identifier, which is used to generate an identity hiding identifier for the terminal to access the network again; the second key identifier is encrypted using the communication key to obtain a second encrypted ciphertext; and the transceiver unit 1002 is also used to send the second encrypted ciphertext.
在一种可选的方式中,处理单元1001用于存储第二密钥标识。In an optional manner, the processing unit 1001 is configured to store the second key identifier.
在一种可选的方式中,处理单元1001存储第二密钥标识之前,收发单元1002还用于接收终端成功接收第二密钥标识的确认信息。In an optional manner, before the processing unit 1001 stores the second key identifier, the transceiver unit 1002 is further configured to receive confirmation information that the terminal successfully receives the second key identifier.
在一种可选的方式中,收发单元1002还用于采用终端参数更新流程发送第二加密密文。In an optional manner, the transceiver unit 1002 is further configured to send the second encrypted ciphertext using a terminal parameter update process.
如图11所示,为本申请还提供的一种通信装置1100。通信装置1100可以是芯片或芯片系统。该通信装置可以位于上述任一方法实施例所涉及的设备中,例如第一终端、网络设备等,以执行该设备所对应的动作。As shown in FIG11 , the present application also provides a communication device 1100. The communication device 1100 may be a chip or a chip system. The communication device may be located in a device involved in any of the above method embodiments, such as a first terminal, a network device, etc., to perform actions corresponding to the device.
可选的,芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。Optionally, the chip system may consist of the chip, or may include the chip and other discrete devices.
通信装置1100包括处理器1110。The communication device 1100 includes a processor 1110 .
处理器1110,用于执行存储器1120中存储的计算机程序,以实现上述任一方法实施例中各个设备的动作。The processor 1110 is used to execute the computer program stored in the memory 1120 to implement the actions of each device in any of the above method embodiments.
通信装置1100还可以包括存储器1120,用于存储计算机程序。The communication device 1100 may further include a memory 1120 for storing computer programs.
可选地,存储器1120和处理器1110之间耦合。耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。可选的,存储器1120与处理器1110集成在一起。Optionally, the memory 1120 is coupled to the processor 1110. Coupling is an indirect coupling or communication connection between devices, units or modules, which can be electrical, mechanical or other forms, for information exchange between devices, units or modules. Optionally, the memory 1120 is integrated with the processor 1110.
其中,处理器1110和存储器1120均可以为一个或多个,不予限制。The processor 1110 and the memory 1120 may be one or more and are not limited.
可选的,在实际应用中,通信装置1100中可以包括收发器1130,也可不包括收发器1130,图中以虚线框来示意,通信装置1100可以通过收发器1130和其它设备进行信息交互。收发器1130可以是电路、总线、或者其它任意可以用于进行信息交互的装置。Optionally, in practical applications, the communication device 1100 may include or exclude the transceiver 1130, which is illustrated by a dotted box in the figure. The communication device 1100 may exchange information with other devices through the transceiver 1130. The transceiver 1130 may be a circuit, a bus, or any other device that can be used for information exchange.
在一种可能的实施方式中,该通信装置1100可以为上述各方法实施中的第一终端、网络设备。In a possible implementation, the communication device 1100 may be the first terminal or the network device in the implementation of the above methods.
本申请实施例中不限定上述收发器1130、处理器1110以及存储器1120之间的具体连接介质。本申请实施例在图11中以存储器1120、处理器1110以及收发器1130之间通过总线连接,总线在图11中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图11中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。在本申请实施例中,处理器可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实施或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。In the embodiment of the present application, the specific connection medium between the above-mentioned transceiver 1130, the processor 1110 and the memory 1120 is not limited. In the embodiment of the present application, the memory 1120, the processor 1110 and the transceiver 1130 are connected by a bus in FIG. 11, and the bus is represented by a thick line in FIG. 11. The connection mode between other components is only for schematic illustration and is not limited. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in FIG. 11, but it does not mean that there is only one bus or one type of bus. In the embodiment of the present application, the processor can be a general-purpose processor, a digital signal processor, an application-specific integrated circuit, a field programmable gate array or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component, and can implement or execute the various methods, steps and logic block diagrams disclosed in the embodiment of the present application. The general-purpose processor can be a microprocessor or any conventional processor, etc. The steps of the method disclosed in the embodiment of the present application can be directly embodied as a hardware processor to be executed, or a combination of hardware and software modules in the processor can be executed.
在本申请实施例中,存储器可以是非易失性存储器,比如硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD)等,还可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM)。存储器还可以是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器还可以是电路或者其它任意能够实施存储功能的装置,用于存储计算机程序、程序指令和/或数据。In the embodiments of the present application, the memory may be a non-volatile memory, such as a hard disk drive (HDD) or a solid-state drive (SSD), etc., or a volatile memory (volatile memory), such as a random-access memory (RAM). The memory may also be any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory in the embodiments of the present application may also be a circuit or any other device that can implement a storage function, for storing computer programs, program instructions and/or data.
基于以上实施例,参见图12,本申请实施例还提供另一种通信装置1200,包括:接口电路1210和逻辑电路1220;接口电路1210,可以理解为输入输出接口,可用于执行上述任一方法实施例中各个设备的收发步骤;逻辑电路1220可用于运行代码或指令以执行上述任一实施例中各个设备执行的方法,不再赘述。Based on the above embodiments, referring to FIG. 12 , the embodiments of the present application also provide another communication device 1200, including: an interface circuit 1210 and a logic circuit 1220; the interface circuit 1210 can be understood as an input-output interface, which can be used to execute the receiving and sending steps of each device in any of the above method embodiments; the logic circuit 1220 can be used to run codes or instructions to execute the method executed by each device in any of the above embodiments, which will not be repeated.
基于以上实施例,本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有指令,当所述指令被执行时,使上述任一方法实施例中各个设备执行的方法被实施。该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。Based on the above embodiments, the embodiments of the present application further provide a computer-readable storage medium, which stores instructions. When the instructions are executed, the method executed by each device in any of the above method embodiments is implemented. The computer-readable storage medium may include: a USB flash drive, a mobile hard disk, a read-only memory, a random access memory, a magnetic disk or an optical disk, and other media that can store program codes.
基于以上实施例,本申请实施例提供一种通信系统,该通信系统包括上述任一方法实施例中提及的终端、UDM、AUSF、SEAF、和/或ARPF等设备,可用于执行上述任一方法实施例中各个设备执行的方法。Based on the above embodiments, an embodiment of the present application provides a communication system, which includes the terminal, UDM, AUSF, SEAF, and/or ARPF and other devices mentioned in any of the above method embodiments, and can be used to execute the method executed by each device in any of the above method embodiments.
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、紧凑型光盘只读储存器(compact disc read-only memory,CD-ROM)、光学存储器等)上实施的计算机程序产品的形式。It should be understood by those skilled in the art that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present application may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, compact disc read-only memory (CD-ROM), optical storage, etc.) containing computer-usable program code.
本申请是参照根据本申请的方法、装置(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理装置的处理器以产生一个机器,使得通过计算机或其他可编程数据处理装置的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。The present application is described with reference to the flowchart and/or block diagram of the method, device (system), and computer program product according to the present application. It should be understood that each process and/or box in the flowchart and/or block diagram, as well as the combination of the process and/or box in the flowchart and/or block diagram can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device produce a device for implementing the functions specified in one process or multiple processes in the flowchart and/or one box or multiple boxes in the block diagram.
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理装置以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer-readable memory produce a product including an instruction device that implements the functions specified in one or more processes in the flowchart and/or one or more boxes in the block diagram.
这些计算机程序指令也可装载到计算机或其他可编程数据处理装置上,使得在计算机或其他可编程装置上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程装置上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。These computer program instructions may also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, whereby the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one or more processes in the flowchart and/or one or more boxes in the block diagram.
Claims (30)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202311862415.5 | 2023-12-28 | ||
| CN202311862415.5A CN120238862A (en) | 2023-12-28 | 2023-12-28 | Communication method and device |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025139994A1 true WO2025139994A1 (en) | 2025-07-03 |
Family
ID=96164673
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2024/140605 Pending WO2025139994A1 (en) | 2023-12-28 | 2024-12-19 | Communication method and apparatus |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN120238862A (en) |
| WO (1) | WO2025139994A1 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN120434055A (en) * | 2025-07-08 | 2025-08-05 | 北京普龙科技有限公司 | Robot data interaction encryption method, device, terminal, and storage medium |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2018208221A1 (en) * | 2017-05-09 | 2018-11-15 | 华为国际有限公司 | Network authentication method, network device and terminal device |
| CN111404666A (en) * | 2019-01-02 | 2020-07-10 | 中国移动通信有限公司研究院 | A key generation method, terminal device and network device |
| CN114650533A (en) * | 2020-12-17 | 2022-06-21 | 华为技术有限公司 | Wireless communication method and communication device |
| EP4047969A1 (en) * | 2021-02-22 | 2022-08-24 | Nokia Technologies Oy | Enhancements for authentication in cellular communication networks |
-
2023
- 2023-12-28 CN CN202311862415.5A patent/CN120238862A/en active Pending
-
2024
- 2024-12-19 WO PCT/CN2024/140605 patent/WO2025139994A1/en active Pending
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2018208221A1 (en) * | 2017-05-09 | 2018-11-15 | 华为国际有限公司 | Network authentication method, network device and terminal device |
| CN111404666A (en) * | 2019-01-02 | 2020-07-10 | 中国移动通信有限公司研究院 | A key generation method, terminal device and network device |
| CN114650533A (en) * | 2020-12-17 | 2022-06-21 | 华为技术有限公司 | Wireless communication method and communication device |
| EP4047969A1 (en) * | 2021-02-22 | 2022-08-24 | Nokia Technologies Oy | Enhancements for authentication in cellular communication networks |
Non-Patent Citations (1)
| Title |
|---|
| "3rd Generation Partnership Project; Technical Specification Group Services and System Aspects; Study on authentication enhancements in 5G System; (Release 17)", 3GPP STANDARD; TECHNICAL REPORT; 3GPP TR 33.846, 3RD GENERATION PARTNERSHIP PROJECT (3GPP), MOBILE COMPETENCE CENTRE ; 650, ROUTE DES LUCIOLES ; F-06921 SOPHIA-ANTIPOLIS CEDEX ; FRANCE, no. V0.12.0, 3 June 2021 (2021-06-03), Mobile Competence Centre ; 650, route des Lucioles ; F-06921 Sophia-Antipolis Cedex ; France , pages 1 - 63, XP052029418 * |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN120434055A (en) * | 2025-07-08 | 2025-08-05 | 北京普龙科技有限公司 | Robot data interaction encryption method, device, terminal, and storage medium |
Also Published As
| Publication number | Publication date |
|---|---|
| CN120238862A (en) | 2025-07-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11582231B2 (en) | Key-derivation verification in telecommunications network | |
| US10943005B2 (en) | Secure authentication of devices for internet of things | |
| US10694376B2 (en) | Network authentication method, network device, terminal device, and storage medium | |
| CN108347410B (en) | Security implementation method, device and system | |
| US10455414B2 (en) | User-plane security for next generation cellular networks | |
| CN108012264B (en) | Encrypted IMSI-based scheme for 802.1x bearer hotspot and Wi-Fi call authentication | |
| US11582233B2 (en) | Secure authentication of devices for Internet of Things | |
| US11909869B2 (en) | Communication method and related product based on key agreement and authentication | |
| JP7101775B2 (en) | Security protection methods and equipment | |
| US11316670B2 (en) | Secure communications using network access identity | |
| CN117546441A (en) | Secure communication method and device, terminal equipment and network equipment | |
| WO2017091959A1 (en) | Data transmission method, user equipment and network side device | |
| WO2020248624A1 (en) | Communication method, network device, user equipment and access network device | |
| CN108810890A (en) | Anchor key generation method, equipment and system | |
| Elouafiq | Authentication and Encryption in GSM and 3GUMTS: An Emphasis on Protocols and Algorithms | |
| KR102818272B1 (en) | Data transmission method and system, electronic device and computer-readable storage medium | |
| CN104219650B (en) | Method for sending user identity authentication information and user equipment | |
| US20250039667A1 (en) | Secure information pushing by service applications in communication networks | |
| Behrad et al. | Securing authentication for mobile networks, a survey on 4G issues and 5G answers | |
| CN116321158B (en) | Certificate-based local UE authentication | |
| WO2025139994A1 (en) | Communication method and apparatus | |
| KR102300487B1 (en) | Method, cloud server and host for secure and lightweight subflow establishment in mptcp | |
| WO2025158368A1 (en) | Partial user plane protection in mobile networks | |
| WO2025210501A1 (en) | Security algorithm management in communication network environment | |
| WO2025210504A1 (en) | Security algorithm management in communication network environment |
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: 24910923 Country of ref document: EP Kind code of ref document: A1 |