Method and apparatus for communications with post-quantum cryptography
Patent Information
- Application Number
- EP2023959681
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-11-27
- Publication Date
- 2026-09-09
AI Technical Summary
The existing public key encryption schemes used in 5G systems are vulnerable to quantum attacks, which could lead to deanonymization of subscribers and loss of privacy protection.
The method involves using multiple post-quantum cryptography (PQC) algorithms or hybrid quantum-safe algorithms for key encapsulation, ensuring that the subscriber's privacy is maintained by deriving keys from multiple secure algorithms.
This approach provides robust privacy protection for subscribers in a post-quantum environment by ensuring that the security of the communication system is maintained as long as one of the used algorithms remains secure.
Smart Images

Figure CN2023134434_05062025_PF_FP_ABST
Abstract
Description
METHOD AND APPARATUS FOR COMMUNICATIONS WITH POST-QUANTUM CRYPTOGRAPHYTECHNICAL FIELD
[0001] Embodiments of the present application relate to the field of wireless technologies, and more specifically, to a method and an apparatus for communications with post-quantum cryptography (PQC) .BACKGROUND
[0002] The public key encryption scheme forms an integral part of communication protocols. Generally, Diffie-Hellman and RSA are public key algorithms used in the public key encryption scheme. The security of these public key algorithms is based on integer factorization or discrete logarithm log problems. The advancement in quantum computers is expected to pose a threat to the public key encryption scheme and would be solvable.
[0003] The public key encryption scheme is used to identify a subscriber to the core network in fifth generation (5G) systems before establishing a key. In 5G authentication and key agreement (AKA) , a user equipment (UE) generates a subscription concealed identifier (SUCI) from its subscription permanent identifier (SUPI) using the public key encryption scheme based on a home network (HN) public key. If the public key encryption scheme used were broken, the user could be deanonymized. An attacker in possession of the HN public key could calculate the private key in advance of a connection, allowing immediate calculation of the SUPI encryption key when the UE public key is seen. In this case, the public key encryption scheme would offer no privacy protection for the subscriber. Moreover, the public key encryption scheme is vulnerable to post-quantum threats.SUMMARY
[0004] Embodiments of the present application provide a method and an apparatus for communications with PQC to provide the privacy of a subscriber in a post-quantum safe communication.
[0005] According to a first aspect, an embodiment of the present application provides a method for communications with PQC, and the method could be performed by a first device for encryption. Unless otherwise specified, the first device may refer to the first device itself or an apparatus that supports the function of the first device.
[0006] The method includes: obtaining one or more public keys of a home network to which the first device belongs; determining multiple first keys and multiple first ciphertexts based on the one or more public keys and multiple key encapsulation algorithms, where the multiple key encapsulation algorithms include at least one PQC algorithm, the multiple first keys are in one-to-one correspondence with the multiple first ciphertexts, and each of the multiple first ciphertexts is encrypted based on the corresponding first key; determining a second key based on the multiple first keys; determining a second ciphertext by concatenating the multiple first ciphertexts; determining a third ciphertext and a first message authentication code (MAC) tag value based on the second key and a SUPI of the first device; determining a subscription concealed identifier (SUCI) of the first device, where the SUCI includes identifiers of the one or more public keys, the second ciphertext, the third ciphertext and the first MAC tag value; and outputting the SUCI.
[0007] According to the method above, a second key can be derived based on multiple first keys from multiple different key encapsulation algorithms. Combining multiple different key encapsulation algorithms can be secure as long as one of the multiple different key encapsulation algorithms is secure. Therefore, the method above is helpful to provide privacy in a post-quantum environment. Moreover, the multiple key encapsulation algorithms include at least one quantum-safe algorithm so that the method above can secure the SUPI encapsulation at the first device from quantum attacks.
[0008] With reference to the first aspect, in some embodiments, the one or more public keys include multiple different public keys.
[0009] With reference to the first aspect, determining a second key based on the multiple first keys includes: determining the second key by processing the multiple first keys with a first function, where the first function includes at least one of the following functions: a hash function, a concatenation function or a pseudo-random function (PRF) .
[0010] According to this embodiment, a general approach to derive the second key based on multiple first keys from multiple different key encapsulation algorithms is provided. This embodiment is helpful to to provide privacy in a post-quantum environment.
[0011] With reference to the first aspect, in some embodiments, determining a second key based on the multiple first keys includes: determining the second key based on the multiple first keys and the multiple first ciphertexts.
[0012] According to this embodiment, the second key is derived with an approach where the multiple first keys and the multiple first ciphertexts from multiple different key encapsulation algorithms are used. This embodiment is helpful to provide privacy in a post-quantum environment.
[0013] With reference to the first aspect, in some embodiments, determining the second key based on the multiple first keys and the multiple first ciphertexts includes: hash concatenating of each of the multiple first keys and its corresponding first ciphertext to obtain multiple hash results; and determining the second key by concatenating the multiple hash results.
[0014] According to this embodiment, the second key is derived with an approach where the multiple first keys and the multiple first ciphertexts from multiple different key encapsulation algorithms are hash concatenated. This embodiment is helpful to provide privacy in a post-quantum environment.
[0015] With reference to the first aspect, in some embodiments, the SUCI further includes a second MAC tag value for verifying the second ciphertext, and the method further includes: determining the second MAC tag value based on the second ciphertext.
[0016] According to this embodiment, as the second ciphertext can be verified based on the second MAC tag value, this embodiment can provide a better privacy in a post-quantum environment.
[0017] With reference to the first aspect, in some embodiments, the SUCI further includes a protection scheme identifier indicating a first protection scheme, where the first protection scheme is a PQC protection scheme or a PQC hybrid algorithm protection scheme, and outputs of the first protection scheme include the second ciphertext, the third ciphertext and the first MAC tag value.
[0018] With reference to the first aspect, in some embodiments, the SUCI further includes a second MAC tag value for verifying the second ciphertext, and the outputs of the first protection scheme further include the second MAC tag value.
[0019] With reference to the first aspect, in some embodiments, an elementary file for universal subscriber identity module service table (EFUST) of the first device includes a first service, where a value of the first service indicates that the first device supports PQC SUCI service.
[0020] With reference to the first aspect, in some embodiments, the EFUST further includes a second service, where a value of the second service is used to indicate whether the first device supports performing calculation of the PQC SUCI service by universal subscriber identity module (USIM) .
[0021] With reference to the first aspect, in some embodiments, determining a third ciphertext and a first MAC tag value based on the second key and a SUPI of the first device includes: deriving a third key and a fourth key from the second key; determining the third ciphertext by encrypting the SUPI of the first device with the third key; and determining the first MAC tag value based on the third ciphertext and the fourth key.
[0022] According to this embodiment, the second key could be input to a key derivation function and the procedure of symmetric key encryption could remain similar to the procedure in current ECIES-based SUPI encryption. This embodiment is helpful to provide privacy in a post-quantum environment.
[0023] With reference to the first aspect, in some embodiments, the first device is a UE.
[0024] According to a second aspect, an embodiment of the present application provides a communication method, and the method could be performed by a second device for decryption. Unless otherwise specified, the second device may refer to the second device itself or an apparatus that supports the function of the second device.
[0025] The second aspect provides a Subscriber Identity de-concealing method corresponding to the Subscriber Identity concealing method provided in the first aspect. The technical effect of the second aspect or any one of its embodiments can refer to the technical effect of the first aspect or the corresponding embodiment, and will not be repeated in the second aspect.
[0026] The method includes: obtaining a SUCI of a first device, where the SUCI includes identifiers of one or more public keys of a home network to which the first device belongs, a second ciphertext, a third ciphertext and a first MAC tag value, where the second ciphertext includes multiple first ciphertexts; determining multiple first keys based on one or more private keys, the multiple first ciphertexts, and multiple key decapsulation algorithms, where the multiple key decapsulation algorithms include at least one PQC algorithm, and the one or more private keys correspond to the identifiers of the one or more public keys ; determining a second key based on the multiple first keys; determining a third MAC tag value based on the second key and the third ciphertext; verifying the third ciphertext by comparing the first MAC tag value with the third MAC tag value; and when the third ciphertext is verified successfully, determining a SUPI of the first device based on the second key and the third ciphertext.
[0027] With reference to the second aspect, in some embodiments, the one or more public keys include multiple different public keys, and accordingly the one or more private keys include multiple different private keys.
[0028] With reference to the second aspect, in some embodiments, determining a second key based on the multiple first keys includes: determining the second key by processing the multiple first keys with a first function, where the first function includes at least one of the following functions: a hash function, a concatenation function or a PRF.
[0029] With reference to the second aspect, in some embodiments, determining a second key based on the multiple first keys includes: determining the second key based on the multiple first keys and the multiple first ciphertexts.
[0030] With reference to the second aspect, in some embodiments, determining the second key based on the multiple first keys and the multiple first ciphertexts includes: hash concatenating of each of the multiple first keys and its corresponding first ciphertext to obtain multiple hash results; and determining the second key by concatenating the multiple hash results.
[0031] With reference to the second aspect, in some embodiments, the SUCI further includes a second MAC tag value for verifying the second ciphertext, and the method further includes: determining a fourth MAC tag value based on the second ciphertext received in the SUCI; and verifying the second ciphertext by comparing the second MAC tag value with the fourth MAC tag value.
[0032] With reference to the second aspect, in some embodiments, the SUCI further includes a protection scheme identifier indicating a first protection scheme, where the first protection scheme is a PQC protection scheme or a PQC hybrid algorithm protection scheme, and outputs of the first protection scheme include the second ciphertext, the third ciphertext and the first MAC tag value.
[0033] With reference to the second aspect, in some embodiments, the SUCI further includes a second MAC tag value for verifying the second ciphertext, and the outputs of the first protection scheme further include the second MAC tag value.
[0034] With reference to the second aspect, in some embodiments, the method further includes: deriving a third key and a fourth key from the second key; where determining a SUPI of the first device based on the second key and the third ciphertext includes: determining the SUPI by decrypting the third ciphertext with the third key; and determining a third MAC tag value based on the second key and the third ciphertext includes: determining the third MAC tag value based on the fourth key and the third ciphertext.
[0035] With reference to the second aspect, in some embodiments, the first device is a UE and / or the second device is any one of the following: unified data management (UDM) , authentication credential repository and processing function (ARPF) or subscription identifier de-concealing function (SIDF) .
[0036] According to a third aspect, an embodiment of the present application provides an apparatus that is configured to implement the methods provided by the above-mentioned aspects or their embodiments. Specifically, the apparatus may include units and / or modules, such as a processing unit and / or a communication unit, for the execution of any of the methods provided by the above-mentioned aspects or their embodiments.
[0037] In an embodiment of the third aspect, the apparatus is the first device or the second device. When the apparatus is the first device or the second device, the communication unit may be a transceiver, or an input / output interface, or a communication interface. The processing unit may be at least one processor. Optionally, the transceiver is a transmitting and receiving circuit. Optionally, the input / output interface is an input / output circuit.
[0038] In another embodiment of the third aspect, the apparatus is a chip, a system on a chip or a circuit in the first device or the second device. When the apparatus is a chip, a system on a chip or a circuit in the first device or the second device, the communication unit may be an input / output interface, an interface circuit, an output circuit, an input circuit, a pin or a related circuit on the chip, the system on a chip or the circuit. The processing unit may be at least one processor, processing circuit or logic circuit, etc.
[0039] According to a fourth aspect, an embodiment of the present application provides an apparatus, and the apparatus includes one or more processors, where the one or more processors are configured to execute a computer program stored in a memory to implement any of the methods provided by the above-mentioned aspects or their embodiments.
[0040] In an embodiment of the fourth aspect, the apparatus further includes the memory.
[0041] In an embodiment of the fourth aspect or any one of the embodiments of the fourth aspect, the apparatus is the first device or the second device.
[0042] In another embodiment of the fourth aspect or any one of the embodiments of the fourth aspect, the apparatus is a chip, a system on a chip or a circuit in the first device or the second device.
[0043] According to a fifth aspect, an embodiment of the present application provides an apparatus, and the apparatus includes at least one processor and a communication interface, where the at least one processor is used to obtain a computer program or instructions stored in a memory through the communication interface to implement any of the methods provided by the above-mentioned aspects or their embodiments. The communication interface can be implemented by hardware or software.
[0044] In an embodiment of the fifth aspect, the apparatus further includes the memory.
[0045] According to a sixth aspect, an embodiment of the present application provides a processor which is configured to execute a computer program stored in a memory to implement any of the methods provided by the above-mentioned aspects or their embodiments.
[0046] According to a seventh aspect, an embodiment of the present application provides a computer-readable medium on which a program is recorded, where the program, when executed, enables a computer to implement any of the methods provided by the above-mentioned aspects or their embodiments.
[0047] According to an eighth aspect, an embodiment of the present application provides a computer program product, where the computer program product includes instructions to implement any of the methods provided by the above-mentioned aspects or their embodiments.
[0048] According to a ninth aspect, an embodiment of the present application provides a computer program, where the computer program, when executed, enables a computer to implement any of the methods provided by the above-mentioned aspects or their embodiments.
[0049] According to a tenth aspect, an embodiment of the present application provides a chip, where the chip includes at least one processor and a communication interface, where the at least one processor is used to obtain a computer program or instructions stored in a memory through the communication interface to implement any of the methods provided by the above-mentioned aspects or their embodiments. The communication interface can be implemented by hardware or software.
[0050] In an embodiment of the tenth aspect, the chip further includes the memory.
[0051] When the method provided in this application is executed by a chip, this application does not limit the number of chips for implementing the method. For example, the method may be executed by one chip, or the method may be executed by two or more chips. In addition, when the number of chips is two or more, there is no limitation on the chip manufacturers, which can be the same manufacturer or different manufacturers.
[0052] According to an eleventh aspect, an embodiment of the present application provides a communication system, where the communication system includes a communication apparatus used to perform the method according to the first aspect or its embodiments; and / or, a communication apparatus used to perform the method according to the second aspect or its embodiments.DESCRIPTION OF DRAWINGS
[0053] One or more embodiments are exemplarily described by corresponding accompanying drawings, and these exemplary illustrations and accompanying drawings constitute no limitation on the embodiments. Elements with the same reference numerals in the accompanying drawings are illustrated as similar elements, and the drawings are not limited to scale, in which:
[0054] Figure 1 is a schematic diagram of a communication system to which the embodiments of this application are applicable.
[0055] Figure 2 is a schematic diagram of an SUCI structure.
[0056] Figure 3 is a schematic diagram of ECIES-based SUPI encryption at a UE.
[0057] Figure 4 is a schematic diagram of ECIES-based SUPI decryption at an HN.
[0058] Figure 5 is a schematic diagram of a key encapsulation mechanism (KEM) .
[0059] Figure 6 is a schematic diagram of a communication method 600.
[0060] Figure 7 is a schematic diagram of a relationship between the specific embodiments and the method 600.
[0061] Figure 8 is a schematic diagram of concealing with concatenation using two KEMs at a UE.
[0062] Figure 9 is a schematic diagram of concealing with hash concatenation using two KEMs at a UE.
[0063] Figure 10 is a schematic diagram of concealing with the general approach at a UE.
[0064] Figure 11 is a schematic diagram of an updated Scheme Output.
[0065] Figure 12 is a schematic diagram of a new SUCI structure.
[0066] Figure 13 is a schematic diagram of a communication method 1300.
[0067] Figure 14 is a schematic diagram of a relationship between the specific embodiments and the method 1300.
[0068] Figure 15 is a schematic diagram of SUCI de-concealing with two KEMs at an HM.
[0069] Figure 16 is a schematic diagram of another SUCI de-concealing with two KEMs at an HM.
[0070] Figure 17 is a schematic diagram of a general SUCI de-concealing with two KEMs at an HM.
[0071] Figure 18 is a schematic diagram of an apparatus provided by the embodiments of this application.
[0072] Figure 19 is a schematic diagram of another apparatus provided by the embodiments of this application.
[0073] Figure 20 is a schematic diagram of a chip system provided by the embodiments of this application.DESCRIPTION OF EMBODIMENTS
[0074] In order to understand features and technical contents of embodiments of the present application in detail, implementations of the embodiments of the present application will be described in detail below with reference to the accompanying drawings, and the attached drawings are only for reference and illustration purposes, and are not intended to limit the embodiments of the present applications. In the following technical descriptions, for ease of explanation, numerous details are set forth to provide a thorough understanding of the disclosed embodiments.
[0075] The embodiments of the present application can be applied to various communication systems, such as: 5G or new radio (NR) systems, long term evolution (LTE) systems, LTE frequency division duplex (FDD) systems, LTE time division duplex (TDD) systems, universal mobile telecommunication system (UMTS) 、worldwide interoperability for microwave access (WiMAX) systems, public land mobile network (PLMN) , wireless local area network (WLAN) systems, satellite communication systems, sixth generation (6G) mobile communication systems, future communication systems, or a combination of multiple systems above. The embodiments of the present application can also be applied to device to device (D2D) communication systems, vehicle-to-everything (V2X) communication systems, machine to machine (M2M) communication systems, machine type communication (MTC) systems, and internet of things (IoT) communication systems, uncrewed aerial vehicle (UAV) communication systems or other communication systems.
[0076] For ease of understanding the embodiments of the present application, a communication system shown in Figure 1 is firstly used as an example to describe in detail a communication system to which the embodiments of this application are applicable.
[0077] Referring to Figure 1, as an illustrative example without limitation, a simplified schematic illustration of a communication system is provided. The communication system 100 includes three parts, namely a terminal device part, a data network (DN) part and an operator network part. The terminal device can also be referred to as a UE.
[0078] The terminal device is a device with a wireless transceiver function that can communicate with one or more core network (CN) devices via an access network device (or access device) in a radio access network (RAN) . The embodiments of this application do not limit the specific technology and the specific equipment form used by the terminal device.
[0079] The DN, also known as a packet data network (PDN) , is usually a network outside the operator network, such as a third-party network. Of course, in some implementations, the DN can also be deployed by the operator. A variety of services can be deployed on the DN to provide data and / or voice services to the terminal device. The operator network includes, but is not limited to, a (radio) access network (R) AN and a core network (CN) . The (R) AN can be regarded as a sub-network of the operator network and an implementation system between service nodes and the terminal device. To access the operator network, the terminal device first accesses the (R) AN, and then connects to the service nodes of the operator network through the (R) AN. The embodiments of this application do not limit the specific technology and the specific equipment form used by the access network device. The CN includes, but is not limited to, the following network functions (NF) : a user plane function (UPF) , a network exposure function (NEF) , a network repository function (NRF) , a policy control function (PCF) , a UDM, a UDR, an access and mobility management function (AMF) , a session management function (SMF) , and an application function (AF) .
[0080] It should be understood that the network architecture shown above is only an illustrative illustration and is not limited to the network architecture applicable to the embodiments of this application. Any network architecture capable of realizing the functions of each of the above network elements is applicable to the embodiments of this application.
[0081] Related technologies and concepts are introduced here firstly in order to have a better understanding of the technical solution proposed by the present application.
[0082] (1) SUPI
[0083] In 5G systems, a serving network uses an SUPI to authenticate a UE and establish a key agreement between the UE and the serving network. The SUPI is a global unique identifier used to authenticate a subscriber and is stored in a UDM or a unified data repository (UDR) , and a USIM.
[0084] An SUPI consists of:
[0085] - an international mobile subscriber identity (IMSI) ; or
[0086] - if the SUPI is not an IMSI, a non-IMSI-based network access identifier (NAI) .
[0087] The UE does not transmit the SUPI in clear and the SUPI is concealed to a temporary identifier SUCI. The UE generates the SUCI and transmits the SUCI to a UDM for initial registration. Upon receipt of the SUCI, the subscription identifier de-concealing function (SIDF) located at the authentication credential repository and processing function (ARPF) or the UDM performs de-concealment of the SUPI from the SUCI. Based on the SUPI, the UDM or ARPF chooses an authentication method according to the subscription data.
[0088] (2) SUCI structure
[0089] Figure 2 shows the SUCI structure. The UE shall construct the SUCI with the following data fields: SUPI Type, Home Network Identifier, Routing Indicator, Protection Scheme Identifier, Home Network Public Key Identifier, and Scheme Output. The format of the Home Network Identifier depends on the SUPI type. The format of the Scheme Output depends on the Protection Scheme. The Scheme Output includes elliptic curve cryptography (ECC) Ephemeral Public Key, Ciphertext and MAC Tag. Specific definitions of each of the data fields can refer to relevant standard protocols and will not be detailed here.
[0090] (3) SUPI encryption at the UE
[0091] Figure 3 shows elliptic curve integrated encryption scheme (ECIES) -based SUPI encryption at the UE. The UE shall use the provisioned public key of the home network and newly generated ECC ephemeral public-private key pair according to the ECIES parameters provisioned by the home network to obtain an ephemeral shared key, and then calculate a fresh SUCI based on the ephemeral shared key. A more detailed description can refer to relevant standard protocols and will not be detailed here.
[0092] (4) SUCI decryption at the HN
[0093] Figure 4 shows ECIES-based SUPI decryption at the HN. The ECIES scheme is employed at the home network to de-conceal the SUPI using the ephemeral public key provided by the UE in the SUCI (as shown in Figure 2) and the private key of the home network. A more detailed description can refer to relevant standard protocols and will not be detailed here.
[0094] (5) key encapsulation mechanism (KEM)
[0095] A KEM is a way of key exchange. Figure 5 shows the KEM.
[0096] Referring to Figure 5, the KEM is a triple of algorithms K= (KeyGenerate, Encapsulate, Decapsulate) and a corresponding key space K. At step one, Bob shall generate a public-secret key pair by using the probabilistic key generation algorithm KeyGenerate and provide the public key Pk to Alice. The KeyGenerate returns a public-secret-key-pair (Pk, sk) . At step two, after receiving the public key Pk, Alice shall obtain a ciphertext c as well as a key k € K by using the probabilistic encapsulation algorithm Encapsulate and provide the ciphertext c to Bob. The Encapsulate takes as input a public key Pk and outputs the ciphertext c and k. At step three, after receiving the ciphertext c, Bob shall obtain k by using the deterministic decapsulation algorithm Decapsulate. The Decapsulate takes as input a secret key sk and the ciphertext c and returns k € K or denoting failure.
[0097] As described in the background part above, if the public key encryption scheme used were broken, the public key encryption scheme would offer no privacy protection for the subscriber. Moreover, the public key encryption scheme is vulnerable to post-quantum threats.
[0098] To solve the problem above, embodiments of the present application provide a method and an apparatus for communications with PQC, which are helpful to provide privacy in a post-quantum environment.
[0099] The embodiments of the present application propose to use quantum-safe algorithms to preserve the privacy of the subscriber. Specifically, the embodiments of the present application propose to use multiple quantum-safe algorithms or hybrid quantum-safe algorithms, as combining two or more safe-algorithms can be secure as long as one of the two or more safe-algorithms is secure. Based on the embodiments of the present application, keying materials, such as the ephemeral shared key in Figure 3 and Figure 4, can be derived from the two or more secret values established by different key establishment primitives (i.e. different safe-algorithms) . The embodiments of the present application also provide a new structure for the SUCI and an elementary file for USIM service (EFUST) based on the multiple quantum-safe algorithms or the hybrid quantum-safe algorithms. Hybrid modes may be an initial step for the migration to post-quantum primitives.
[0100] The following describes SUPI encapsulation in the proposed solution of the present application.
[0101] Figure 6 is a schematic diagram of a communication method 600. The method 600 may be performed by a first device for encryption. Unless otherwise specified, the first device may refer to the first device itself or an apparatus that supports the function of the first device. As an example, the first device can be the UE in Figure 1 or any other device requiring SUCI encryption, such as a smart card, a universal integrated circuit card (UICC) , or an embedded universal integrated circuit card (eUICC) . The method 600 specifically includes the following steps.
[0102] At step 601, the first device obtains one or more public keys of a home network to which the first device belongs.
[0103] As an example, the one or more public keys may be one public key. As another example, the one or more public keys may include multiple different public keys.
[0104] In a possible implementation, the one or more public keys are provisioned.
[0105] At step 602, the first device determines multiple first keys and multiple first ciphertexts based on the one or more public keys and multiple key encapsulation algorithms, where the multiple first keys are in one-to-one correspondence with the multiple first ciphertexts, and each of the multiple first ciphertexts is encrypted based on the corresponding first key.
[0106] The multiple key encapsulation algorithms include at least one quantum-safe algorithm.
[0107] As an example, all the multiple key encapsulation algorithms are quantum-safe algorithms. In this case, the approach provided in the embodiments of this application may be referred to as a multi-quantum-safe approach.
[0108] As another example, a part of the multiple key encapsulation algorithms are quantum-safe algorithms. In this case, the approach provided in the embodiments of this application may be referred to as a hybrid quantum-safe approach. In an example of two key encapsulation algorithms, one of the two key encapsulation algorithms can be a traditional algorithm that is widely used, such as an algorithm approved either from National Institute of Standards and Technology (NIST) (e.g. ECDH) , International Organization for Standardization (ISO) (e.g. SM2) , or a standardization algorithm that is region / country specific, and another can be a quantum-safe algorithm which is intended to be adopted widely in the future.
[0109] The quantum-safe algorithms mentioned here can be post-quantum safe algorithms, such as post-quantum cryptography (PQC) algorithms.
[0110] The one or more public keys may be used as inputs of the multiple key encapsulation algorithms. In a case that the one or more public keys are one public key, the multiple key encapsulation algorithms use the same public key. In a case that the one or more public keys include multiple different public keys, the multiple key encapsulation algorithms may use different public keys.
[0111] In a possible implementation, each of one or more public keys may be used as a public key Pk, each of the multiple first keys may be used as a key k and each of the multiple first ciphertexts may be used as a ciphertext c in the KEM shown in Figure 5.
[0112] At step 603, the first device determines a second key based on the multiple first keys.
[0113] In a possible implementation, the first device determines the second key by processing the multiple first keys with a first function, where the first function includes at least one of the following functions: a hash function, a concatenation function or a PRF.
[0114] In another possible implementation, the first device determines the second key based on the multiple first keys and the multiple first ciphertexts. As an example, the first device determines the second key by hash concatenating of each of the multiple first keys and its corresponding first key to obtain multiple hash results and concatenating the multiple hash results.
[0115] At step 604, the first device determines a second ciphertext by concatenating the multiple first ciphertexts.
[0116] At step 605, the first device determines a third ciphertext and a first MAC tag value based on the second key and a SUPI of the first device.
[0117] In a possible implementation, the first device may determine the third ciphertext and the first MAC tag value by deriving a third key and a fourth key from the second key, determining the third ciphertext by encrypting the SUPI of the first device with the third key and determining the first MAC tag value based on the third ciphertext and the fourth key.
[0118] At step 606, the first device determines an SUCI of the first device, where the SUCI includes identifiers of the one or more public keys, the second ciphertext, the third ciphertext and the first MAC tag value.
[0119] At step 607, the first device outputs the SUCI.
[0120] In a possible implementation, the first device transmits the SUCI to a second device. As an example, the first device transmits the SUCI to the UDM for initial registration.
[0121] Thus, in the method 600, keying materials can be derived from multiple first keys established by multiple different key encapsulation algorithms. Combining multiple different key encapsulation algorithms can be secure as long as one of the multiple different key encapsulation algorithms is secure. Therefore, the method 600 is helpful to provide privacy in a post-quantum environment. Moreover, the multiple key encapsulation algorithms include at least one quantum-safe algorithm so that the method 600 can secure the SUPI encapsulation at the first device from quantum attacks.
[0122] In other embodiments of this application, the SUCI further includes a second MAC tag value for verifying the second ciphertext, and the method 600 further includes: determining the second MAC tag value based on the second ciphertext. As the second ciphertext can be verified based on the second MAC tag value, this embodiment can provide a better privacy in a post-quantum environment.
[0123] In other embodiments of this application, the SUCI further includes a protection scheme identifier indicating a first protection scheme, where the first protection scheme is a PQC protection scheme or a PQC hybrid algorithm protection scheme, and outputs of the first protection scheme include the second ciphertext, the third ciphertext and the first MAC tag value. When the SUCI includes the second MAC tag value, and the outputs of the first protection scheme further include the second MAC tag value.
[0124] In other embodiments of this application, an EFUST of the first device includes a first service, where a value of the first service indicates that the first device supports PQC SUCI service.
[0125] In other embodiments of this application, the EFUST of the first device further includes a second service, where a value of the second service is used to indicate whether the first device supports perform calculation of the PQC SUCI service by the USIM.
[0126] The following will describe some specific embodiments of the generation of the SUCI at a UE in detail in conjunction with Figure 7 to Figure 10. Figure 7 to Figure 10 take the combination of two key encapsulation algorithms as an example. In Figure 7 to Figure 10, two KEMs are employed in place of Diffie-Hellman for SUCI generation at the UE. The two key encapsulation algorithms can be two encapsulation algorithms in KEM1 and KEM2 respectively. The variations of KEM1 and KEM2 can be either of the following:
[0127] - One of them can be an algorithm approved either from NIST (e.g., ECDH) , ISO (e.g., SM2) , or a standardization algorithm that is region / country specific and another can be PQC.
[0128] - Both of them can be PQC.
[0129] Figure 7 shows a relationship between the specific embodiments and the method 600. Specifically, public key 1 of the HN and public key 2 of the HN imply the one or more public keys. KEM1and KEM2 imply the multiple key encapsulation algorithms. k1and k2 imply the multiple first keys. c1and c2 imply the multiple first ciphertexts. k implies the second key. c implies the second ciphertext. The ciphertext value implies the third ciphertext. The MAC tag value implies the first MAC tag value. MACkmac (c1 || c2) implies the second MAC tag value. The ephemeral encapsulation key (Eph. Enc. key) implies the third key. The ephemeral mac key (Eph. mac. key) implies the fourth key. The plaintext block implies the SUPI of the first device.
[0130] Embodiment 1: SUCI concatenation
[0131] The ephemeral shared key generation in Figure 4 can be replaced by a key which is generated by concatenating two keys from KEM1 and KEM2.
[0132] Figure 8 shows concealing with concatenation using two KEMs at a UE. The ephemeral shared key generation (i.e. Step 1to Step 2) in Figure 4 is replaced by Step 1 and Step 2 in Figure 8. In Figure 8, k is generated by concatenating the two keys (k1, k2) respectively from KEM1 and KEM2. Two KEMs are employed and k is obtained by k = k1 || k2. Two ciphertexts (c1, c2) respectively from KEM1 and KEM2 are concatenated to obtain a final ciphertext c, that is, c = c1 || c2. The symbol “||” indicates a concatenation. Additionally, a MACkmac for verifying the final ciphertext c is determined based on the final ciphertext c, that is, MACkmac (c1 || c2) . k is then input to the key derivation function and the procedure of symmetric key encryption remains similar to the prior procedure in Figure 4. The final outputs of the concealing with concatenation using two KEMs at the UE include the ciphertext c = c1 || c2, MACkmac (c1 || c2) , a Ciphertext value from Step 4 and a Mac tag value from Step 5.
[0133] Embodiment 2: SUCI hash concatenation
[0134] The ephemeral shared key generation in Figure 4 can be replaced by a key which is generated by hash concatenating the keys from KEM1 and KEM2.
[0135] Figure 9 shows concealing with hash concatenation using two KEMs at a UE. The ephemeral shared key generation (i.e. Step 1to Step 2) in Figure 4 can be replaced by Step 1 and Step 2 in Figure 9. In Figure 9, two KEMs are employed and k is generated with an approach where the keys and the ciphertexts of the two KEMs are hash concatenated. k is obtained by k=H (k1 || c1) || H (k2 || c2) . Two ciphertexts (c1, c2) respectively from KEM1 and KEM2 are concatenated to obtain a final ciphertext c, that is, c = c1 || c2. The symbol “||” indicates a concatenation. The Function H corresponds to Hash. Additionally, a MACkmac for verifying the final ciphertext c is determined based on the final ciphertext c, that is, MACkmac (c1 || c2) . k is then input to the key derivation function and the procedure of symmetric key encryption remains similar to the prior procedure in Figure 4. The final outputs of the concealing with hash concatenation using two KEMs at the UE include the ciphertext c = c1 || c2, MACkmac (c1 || c2) , a Ciphertext value from Step 4 and a Mac tag value from Step 5.
[0136] Moreover, k can also be derived by k= H (k1 || k2) . Different combinations of concatenation can be formed.
[0137] Embodiment 3: SUCI KEM General
[0138] In this embodiment, a general approach to derive k is provided.
[0139] Figure 10 shows concealing with the general approach at a UE. The ephemeral shared key generation (i.e. Step 1to Step 2) in Figure 4 can be replaced by Step 1 and Step 2 in Figure 10. In Figure 10, two KEMs are employed and k is obtained by k=F (k1, k2) . As an example, the Function F may correspond to Hash, concatenation, or a PRF. A final ciphertext c is obtained by c= F' (c1, c2) . As an example, the Function F'may corresponds to concatenation. Additionally, a MACkmac for verifying the final ciphertext c is determined based on the final ciphertext c, that is, MACkmac (F' (c1, c2) ) . k is then input to the key derivation function and the procedure of symmetric key encryption remains similar to the prior procedure in Figure 4. The final outputs of the concealing with hash concatenation using two KEMs at the UE include the ciphertext c = c1 || c2, MACkmac (F' (c1, c2) ) , a Ciphertext value from Step 4 and a Mac tag value from Step 5.
[0140] The following will describe a new SUCI structure provided by the embodiments of this application. Compared with the SUCI structure in Figure 2, the following data fields are updated to form the new SUCI structure: a Protection Scheme Identifier, a Home Network Public Key Identifier, and a Scheme Output.
[0141] 1) Protection Scheme Identifier
[0142] In the current standards, each protection scheme is identified by a Protection Scheme Identifier. The Protection Scheme Identifiers are as follows:
[0143] - null-scheme 0x0;
[0144] - Profile 0x1;
[0145] - Profile 0x2.
[0146] The values 0x3 -0xB are reserved for future standardized protection schemes. The values 0xC -0xF are reserved for proprietary protection schemes specified by the home operator.
[0147] In the embodiments of this application, the Protection Scheme Identifier can be extended to include the following profiles:
[0148] - Profile 0x3 –PQC Hybrid Algorithm1, e.g. Kyber + ECC;
[0149] - Profile 0x4 –PQC Hybrid Algorithm 2, e.g. NTRU + ECC;
[0150] - Profile 0x5 –PQC Algorithm1, e.g. Kyber;
[0151] - Profile 0x6 –PQC Algorithm 2, e.g. NTRU.
[0152] Profile 0x3 and Profile 0x4 are related to the hybrid approach which includes at least one post-quantum-safe algorithms and at least one traditional-safe algorithm. Profile 0x5 and Profile 0x6 are related to the multiple approach which includes only at least two post-quantum-safe algorithms.
[0153] 2) Home Network Public Key Identifier
[0154] One or more home network public key identifiers are used for the one or more public keys in KEMs.
[0155] 3) Scheme Output
[0156] In an example of the combination of two key encapsulation algorithm, the updated Scheme Output will be as follows as shown in Figure 11. The updated Scheme Output includes ciphertext c, MACkmac (c) , a Ciphertext value and a Mac tag value. It should be understood that the MACkmac (c) is optional.
[0157] In a possible implementation, the ECC Ephemeral Public Key is replaced by the ciphertext c and the MACkmac (c) .
[0158] According to Figure 11, Figure 12 represents one form of the new SUCI structure.
[0159] The following will describe a new elementary file for USIM service table (EFUST) provided by the embodiments of this application. This new EFUST includes services for PQC SUCI.
[0160] Table 1 represents an EFUST.
[0161] Table 1 EFUST
[0162] This EFUST indicates which services are available. If a service is not indicated as available in the USIM, the ME shall not select this service.
[0163] In a possible implementation, Up-to Service n°145 is defined in 3GPP and the services for PQC SUCI can start from 153. The service for PQC SUCI starts from 153 as it is the start of a new byte. Coding 1 bit is used to code each service:
[0164] bit = 1: service available;
[0165] bit = 0: service not available.
[0166] Services for SUCI in the current standards are defined as follows as shown in Table 2.
[0167] Table 2 Services for SUCI
[0168] According to the current way to define the services, the services for PQC SUCI are defined as follows as shown in Table 3.
[0169] Table 3 Services for PQC SUCI
[0170] Service n153 indicates the PQC support. If this bit =1 then PQC is supported else PQC is not supported. If Service no 153 = 1 only then Service no 154 is relevant.
[0171] Service n°154 indicates the PQC SUCI calculation is done by USIM if the bit = 1, else the PQC SUCI calculation is done by the ME.
[0172] The following describes SUPI decapsulation in the proposed solution of the present application.
[0173] Figure 13 is a schematic diagram of a communication method 1300. The method 1300 may be performed by a second device for decryption. Unless otherwise specified, the second device may refer to the second device itself or an apparatus that supports the function of the second device. As an example, the second device can be the UDM in Figure 1 or any other device requiring SUCI decryption, such as authentication credential repository and processing function (ARPF) or a subscription identifier de-concealing function (SIDF) . The method 1300 specifically includes the following steps.
[0174] At step 1301, the second device obtains an SUCI of a first device.
[0175] The SUCI of the first device may be generated in a way described in the method 600. The SUCI of the first device includes identifiers of one or more public keys of a home network to which the first device belongs, a second ciphertext, a third ciphertext and a first MAC tag value. The second ciphertext includes multiple first ciphertexts.
[0176] In a possible implementation, the second device may receive the SUCI from the first device.
[0177] At step 1302, the second device determines multiple first keys based on one or more private keys, the multiple first ciphertexts, and multiple key decapsulation algorithms.
[0178] The one or more private keys correspond to the identifiers of the one or more public keys in the SUCI. A detailed description of the one or more public keys may refer to Step 601.
[0179] The multiple key decapsulation algorithms correspond to the multiple key encapsulation algorithms, and include at least one quantum-safe algorithm. A detailed description of the multiple key decapsulation algorithms may refer to Step 602.
[0180] The one or more private keys and the multiple first ciphertexts may be used as inputs of the multiple key decapsulation algorithms. In a case that the one or more private keys are one private key, the multiple key decapsulation algorithms use the same private key. In a case that the one or more private keys include multiple different private keys, the multiple key decapsulation algorithms may use different private keys.
[0181] In a possible implementation, each of one or more private keys may be used as a private key sk, each of the multiple first keys may be used as a key k and each of the multiple first ciphertexts may be used as a ciphertext c in the KEM shown in Figure 5.
[0182] At step 1303, the second device determines a second key based on the multiple first keys.
[0183] A detailed description of Step 1303 may refer to Step 603.
[0184] At step 1304, the second device determines a third MAC tag value based on the second key and the third ciphertext.
[0185] The way of determining the third MAC tag value by the second device is the same as that the first device determines the first MAC tag value.
[0186] At step 1305, the second device verifies the third ciphertext by comparing the first MAC tag value with the third MAC tag value.
[0187] When the third MAC tag value matches with the first MAC tag value, the third ciphertext is verified successfully. When the third MAC tag value does not match with the first MAC tag value, the third ciphertext fails to be verified.
[0188] At step 1306, when the third ciphertext is verified successfully, the second device determines a SUPI of the first device based on the second key and the third ciphertext.
[0189] Thus, in the method 1300, keying materials can be derived from multiple first keys established by multiple different key decapsulation algorithms. Combining multiple different key decapsulation algorithms can be secure as long as one of the multiple different key decapsulation algorithms is secure. Therefore, the method 1300 is helpful to provide privacy in a post-quantum environment. Moreover, the multiple key decapsulation algorithms include at least one quantum-safe algorithm so that the method 1300 can secure the SUPI decapsulation at the second device from quantum attacks.
[0190] In other embodiments of this application, the SUCI further includes a second MAC tag value for verifying the second ciphertext, and the method 1300 further includes: determining a fourth MAC tag value based on the second ciphertext received in the SUCI and verifying the second ciphertext by comparing the second MAC tag value with the fourth MAC tag value. As the second ciphertext can be verified based on the second MAC tag value, this embodiment can provide a better privacy in a post-quantum environment.
[0191] In other embodiments of this application, the method 1300 further includes: the second device derives a third key and a fourth key from the second key. Based on this, the second device determines the SUPI of the first device by decrypting the third ciphertext with the third key and determines the third MAC tag value based on the fourth key.
[0192] The following will describe some specific embodiments of de-concealing of the SUCI at an HM in detail in conjunction with Figure 14 to Figure 17. Figure 14 to Figure 17 correspond to Figure 7 to Figure 10 respectively. Figure 14 to Figure 17 take the combination of two key encapsulation algorithms as an example. In Figure 14 to Figure 17, two KEMs are employed in place of Diffie-Hellman for SUCI de-concealing at the HM. The two key decapsulation algorithms can be two Decapsulate algorithms in KEM1 and KEM2 respectively.
[0193] Figure 14 shows a relationship between the specific embodiments and the method 1300. Specifically, private key 1 of the HN and private key 2 of the HN imply the one or more private keys. KEM1and KEM2 imply the multiple key decapsulation algorithms. k1and k2 imply the multiple first keys. c1and c2 imply the multiple first ciphertexts. k implies the second key. The ciphertext value implies the third ciphertext. The MAC tag value implies the first MAC tag value. The MACverikmac (c1 || c2) implies the fourth MAC tag value. The ephemeral encapsulation key (Eph. Enc. key) implies the third key. The ephemeral mac key (Eph. mac. key) implies the fourth key. The plaintext block implies the SUPI of the first device.
[0194] Embodiment 4
[0195] The ephemeral shared key generation in Figure 4 can be replaced by a key which is generated by concatenating two keys from KEM1 and KEM2.
[0196] Figure 15 represents SUCI de-concealing with two KEMs at an HM. For the de-capsulation mechanism, two private keys of the home network of the respective public keys and two ciphertexts that are transmitted in the SUCI from the first device to the home network are used. k is obtained by k = k1 || k2 and the ciphertext c transmitted in the SUCI is verified. k is then input to the key derivation function and the procedure of symmetric key decryption remains similar to the prior procedure in Figure 4.
[0197] Embodiment 5
[0198] The ephemeral shared key generation in Figure 4 can be replaced by a key which is generated by hash concatenating two keys from KEM1 and KEM2.
[0199] Figure 16 represents another SUCI de-concealing with two KEMs at an HM. For the de-capsulation mechanism, two private keys of the home network of the respective public keys and two ciphertexts that are transmitted in the SUCI from the first device to the home network are used. k is obtained by k=H (k1 || c1) || H (k2 || c2) and the ciphertext c transmitted in the SUCI is verified. k is then input to the key derivation function and the procedure of symmetric key decryption remains similar to the prior procedure in Figure 4.
[0200] Moreover, k can also be derived by k= H (k1 || k2) . Different combinations of concatenation can be formed.
[0201] Embodiment 6
[0202] In this embodiment, a general approach to derive k is provided.
[0203] Figure 17 represents a general SUCI de-concealing with two KEMs at an HM. For the de-capsulation mechanism, two private keys of the home network of the respective public keys and two ciphertexts that are transmitted in the SUCI from the first device to the home network are used. k is obtained by k=F (k1, k2) and the ciphertext c transmitted in the SUCI is verified. k is then input to the key derivation function and the procedure of symmetric key decryption remains similar to the prior procedure in Figure 4.
[0204] It should be noted that the above embodiments of this application may be implemented independently or together in an appropriate way.
[0205] The method provided in this application is described in detail above in conjunction with Figures 6 to 17. The apparatus embodiments of this application will be described in detail below in conjunction with Figures 18 to Figure 20.
[0206] It is understood that in order to implement the functions in the above embodiments, the apparatus in Figure 18 to Figure 20 may include the corresponding hardware architecture and / or software modules that perform each of the functions.
[0207] Figure 18 and Figure 19 provide possible structural diagrams of the apparatus. The apparatus may be used to implement the functions of the first device or the second device of the method embodiments described above, and thus the apparatus is able to achieve the beneficial effects of the method embodiments described above.
[0208] As shown in Figure 18, an apparatus 10 includes a communication unit 11 and a processing unit 12.
[0209] When the apparatus 10 is used to implement the functions of the first device in the method embodiments described above, the communication unit 11 is used for performing the sending and receiving Steps, such as Step 601 and Step 607, and the processing unit 12 is used for performing the processing steps, such as Step 602 to Step 606.
[0210] When the apparatus 10 is used to implement the functions of the second device in the method embodiments described above, the communication unit 11 is used for performing the sending and receiving Steps, such as Step 1301, and the processing unit 12 is used for performing the processing steps, such as Step 1302 to Step 1306.
[0211] More detailed descriptions of the communication unit 11 and the processing unit 12 may refer to the relevant descriptions in the method embodiments described above, and not be repeated here.
[0212] As shown in Figure 19, an apparatus 20 may include a processor 21. The processor 21 is coupled to a memory 23 which is used to store instructions. While the apparatus 20 is used to implement the method described above, the processor 21 is used to execute the instructions in the memory 23 to implement the functions of the processing unit 12 described above.
[0213] Optionally, the apparatus 20 further includes the memory 23.
[0214] Optionally, the apparatus 20 further includes an interface circuit 22. The processor 21 is coupled to the interface circuit 22. Understandably, the interface circuit 22 may be a transceiver or I / O interface. When the apparatus 20 is used to implement the method described above, the processor 21 is used to execute the instructions to implement the functions of the processing unit 12 and the interface circuit 22 is used to implement the functions of the communication unit 11.
[0215] Illustratively, when the apparatus 20 is a chip applied in the first device or the second device, the chip implements the function of the first device or the second device. The chip receives information from other modules (such as a radio frequency module or an antenna) in the first device or the second device, and the information is sent to the first device or the second device by another device. Optionally, the chip sends information to other modules (such as a radio frequency module or an antenna) in the first device or the second device, and the information is sent to another device.
[0216] Figure 20 represents a schematic illustration of a chip system 30 provided by the embodiments of this application. The chip system 30 (alternatively, the processing system) includes a logic circuit 31 and an input / output interface 32.
[0217] The logic circuit 31 can be the processing circuit in the chip system 30. The logic circuit 31 can be coupled to a storage unit and call instructions in the storage unit, so that the chip system 30 can realize the methods and functions of each embodiment of the application.
[0218] The input / output interface 32 can be the input and output circuit in the chip system 30 to output the information processed by the chip system 30, or to input the data or signaling information to be processed into the chip system 30 for processing.
[0219] As a scheme, the chip system 30 is used to implement the operations performed by the first device or the second device in the method embodiments above.
[0220] For example, a logic circuit 31 is used to implement the process-related operations performed by the first device or the second device in the method embodiments above. The input / output interface 32 is used to implement the transmit and / or receive related operations performed by the first device or the second device in the method embodiments above.
[0221] The embodiments of the application also provide an apparatus for communications with PQC, which includes one or more processors, where the one or more processors are configured to execute a computer program or instructions stored in a memory to implement any of the methods provided by the above-mentioned method embodiments.
[0222] The embodiments of the application also provide a processor which is configured to execute a computer program or instructions stored in a memory to implement any of the methods provided by the above-mentioned method embodiments.
[0223] The embodiments of the application also provide a computer-readable medium on which a program or instructions are recorded, where the program or the instructions, when executed, enables a computer to implement any of the methods provided by the above-mentioned method embodiments.
[0224] The embodiments of the application also provide a computer program product, where the computer program product includes instructions to implement any of the methods provided by the above-mentioned method embodiments.
[0225] The embodiments of the application also provide a computer program, where the computer program, when executed, enables a computer to implement any of the methods provided by the above-mentioned method embodiments.
[0226] The embodiments of the application also provide a chip, where the chip includes at least one processor and a communication interface, where the at least one processor is used to obtain a computer program or instructions stored in a memory through the communication interface to implement any of the methods provided by the above-mentioned method embodiments.
[0227] The embodiments of the application also provide a communication system, where the communication system includes the first device and / or the second device mentioned above.
[0228] In the embodiments of this application, “and / or” describes an association relationship between associated objects and represents that three relationships may exist. For example, A and / or B may represent the following three cases: Only A exists, both A and B exist, and only B exists. The character “ / ” generally indicates an “or” relationship between the associated objects. “multiple A” means two or more A. “At least one” means one or more. “At least one of A and B” , similar to “Aand / or B”, describes an association relationship between associated objects and represents that three relationships may exist. For example, at least one of A and B may represent the following three cases: Only A exists, both A and B exist, and only B exists.
[0229] The technical terms such as “ephemeral shared key” may be not limited by a specific name, and may also be other names.
[0230] Besides, the use of a singular form of “a” , “an” and “the” in the embodiments of the present application and the claims appended hereto is also intended to include a plural form, unless otherwise clearly indicated herein by context.
[0231] A person of ordinary skill in the art will be aware that, in combination with the examples described in the embodiments disclosed in this specification, units and algorithm steps may be implemented by using electronic hardware or a combination of computer software and electronic hardware. Whether the functions are performed by using hardware or software depends on particular applications and design constraint conditions of the technical solutions. A person skilled in the art may use different methods to implement the described functions for each particular application, but it should not be considered that the embodiment goes beyond the scope of this application.
[0232] It would be understood by a person skilled in the art that, for the purpose of convenience and brevity, in a detailed working process of the foregoing system, apparatus, and unit, reference may be made to a corresponding process in the foregoing method embodiments, and details are not described herein again.
[0233] In the several embodiments provided in this application, the disclosed system, apparatus, and method may be implemented in other manners. For example, the described apparatus embodiment is merely an example. For example, the unit division is a logical function division and other methods of division may be used in an actual embodiment. For example, a plurality of units or components may be combined or integrated into another system, or some features may be ignored or not performed. In addition, the displayed or discussed mutual couplings or direct couplings or communication connections may be implemented using various communication interfaces. The indirect couplings or communication connections between the apparatuses or units may be implemented in electronic, mechanical, or other forms.
[0234] In addition, function units in the embodiments of this application may be integrated into one processing unit, each of the units may exist alone physically, or two or more units may be integrated into one unit.
[0235] When the functions are implemented in the form of a software functional unit and sold or used as an independent product, the functions may be stored in a computer-readable storage medium. The technical solutions of this application may be implemented in the form of a software product. The software product is stored in a storage medium, and includes several instructions for instructing a computer device (which may be a personal computer, a server, a network device, or the like) to perform all or some of the steps of the methods described in the embodiments of this application. The foregoing storage medium includes any medium that can store program code, such as a USB flash drive, a removable hard disk, a ROM, a RAM, a magnetic disk, an optical disc or the like.
[0236] The units described as separate parts may be or may not be physically separate, and parts displayed as units may be or may not be physical units, may be located in one position, or may be distributed on a plurality of network units. Some or all of the units may be selected based on actual requirements to achieve the objectives of the solutions of the embodiments. In addition, functional units in the embodiments of this application may be integrated into one processing unit, or each of the units may exist alone physically, or two or more units are integrated into one unit.
[0237] The foregoing descriptions are merely specific embodiments of this application, but are not intended to limit the protection scope of this application. Any variation or replacement readily figured out by a person skilled in the art within the technical scope disclosed in this application shall fall within the protection scope of this application. Therefore, the protection scope of this application shall be subject to the protection scope of the claims.
Claims
1.A method for communications with post-quantum cryptography (PQC) , applying to a first device for encryption or a module in the first device and comprising:obtaining one or more public keys of a home network to which the first device belongs;determining multiple first keys and multiple first ciphertexts based on the one or more public keys and multiple key encapsulation algorithms, wherein the multiple key encapsulation algorithms comprise at least one PQC algorithm, the multiple first keys are in one-to-one correspondence with the multiple first ciphertexts, and each of the multiple first ciphertexts is encrypted based on the corresponding first key;determining a second key based on the multiple first keys;determining a second ciphertext by concatenating the multiple first ciphertexts;determining a third ciphertext and a first message authentication code (MAC) tag value based on the second key and a subscription permanent identifier (SUPI) of the first device;determining a subscription concealed identifier (SUCI) of the first device, wherein the SUCI comprises identifiers of the one or more public keys, the second ciphertext, the third ciphertext and the first MAC tag value; andoutputting the SUCI.2.The method according to claim 1, wherein determining a second key based on the multiple first keys comprises:determining the second key by processing the multiple first keys with a first function, wherein the first function comprises at least one of the following functions: a hash function, a concatenation function or a pseudo-random function (PRF) .3.The method according to claim 1, wherein determining a second key based on the multiple first keys comprises:determining the second key based on the multiple first keys and the multiple first ciphertexts.4.The method according to claim 3, wherein determining the second key based on the multiple first keys and the multiple first ciphertexts comprises:hash concatenating of each of the multiple first keys and its corresponding first ciphertext to obtain multiple hash results; anddetermining the second key by concatenating the multiple hash results.5.The method according to any one of claims 1 to 4, wherein the SUCI further comprises a second MAC tag value for verifying the second ciphertext, and the method further comprises:determining the second MAC tag value based on the second ciphertext.6.The method according to any one of claims 1 to 5, wherein the SUCI further comprises a protection scheme identifier indicating a first protection scheme, wherein the first protection scheme is a PQC protection scheme or a PQC hybrid algorithm protection scheme, and outputs of the first protection scheme comprise the second ciphertext, the third ciphertext and the first MAC tag value.7.The method according to any one of claims 1 to 6, wherein an elementary file for universal subscriber identity module service table (EFUST) of the first device comprises a first service, wherein a value of the first service indicates that the first device supports PQC SUCI service.8.The method according to claim 7, wherein the EFUST further comprises a second service, wherein a value of the second service is used to indicate whether the first device supports perform calculation of the PQC SUCI service by a universal subscriber identity module (USIM) .9.The method according to any one of claims 1 to 8, wherein the one or more public keys comprise multiple different public keys.10.A method for communications with post-quantum cryptography (PQC) , applying to a second device for decryption or a module in the second device and comprising:obtaining a subscription concealed identifier (SUCI) of a first device, wherein the SUCI comprises identifiers of one or more public keys of a home network to which the first device belongs, a second ciphertext, a third ciphertext and a first message authentication code (MAC) tag value, wherein the second ciphertext comprises multiple first ciphertexts;determining multiple first keys based on one or more private keys, the multiple first ciphertexts, and multiple key decapsulation algorithms, wherein the multiple key decapsulation algorithms comprise at least one PQC algorithm, and the one or more private keys correspond to the identifiers of the one or more public keys;determining a second key based on the multiple first keys;determining a third MAC tag value based on the second key and the third ciphertext;verifying the third ciphertext by comparing the first MAC tag value with the third MAC tag value; andwhen the third ciphertext is verified successfully, determining a subscription permanent identifier (SUPI) of the first device based on the second key and the third ciphertext.11.The method according to claim 10, wherein determining a second key based on the multiple first keys comprises:determining the second key by processing the multiple first keys with a first function, wherein the first function comprises at least one of the following functions: hash function, concatenation function or pseudo-random function (PRF) .12.The method according to claim 10, wherein determining a second key based on the multiple first keys comprises:determining the second key based on the multiple first keys and the multiple first ciphertexts.13.The method according to claim 12, wherein determining the second key based on the multiple first keys and the multiple first ciphertexts comprises:hash concatenating of each of the multiple first keys and its corresponding first ciphertext to obtain multiple hash results; anddetermining the second key by concatenating the multiple hash results.14.The method according to any one of claims 10 to 13, wherein the SUCI further comprises a second MAC tag value for verifying the second ciphertext, and the method further comprises:determining a fourth MAC tag value based on the second ciphertext received in the SUCI; andverifying the second ciphertext by comparing the second MAC tag value with the fourth MAC tag value.15.The method according to any one of claims 10 to 14, wherein the SUCI further comprises a protection scheme identifier indicating a first protection scheme, wherein the first protection scheme is a PQC protection scheme or a PQC hybrid algorithm protection scheme, and outputs of the first protection scheme comprise the second ciphertext, the third ciphertext and the first MAC tag value.16.The method according to any one of claims 10 to 15, wherein the one or more public keys comprise multiple different public keys, and accordingly the one or more private keys comprise multiple different private keys.17.A communication apparatus, wherein the apparatus comprises a processor and a memory storing instructions that are capable of being run on the processor, and when the instructions are run, the apparatus is enabled to perform the method according to any one of claims 1 to 16.18.The communication apparatus according to claim 17, wherein the communication apparatus is a chip or a chip system.19.A communication apparatus, wherein the apparatus comprises a function or a unit to perform the method according to any one of claims 1 to 16.20.A communication system, comprising:a communication apparatus used to perform the method according to any one of claims 1 to 9; and / or,a communication apparatus used to perform the method according to any one of claims 10 to 16.21.A computer-readable storage medium, comprising instructions, wherein when the instructions are run on a computer, the computer performs the method according to any one of claims 1 to 16.22.A computer program product, comprising instructions, wherein when the instructions are run on a computer, the computer performs the method according to any one of claims 1 to 16.