WO2023178529A1 - 生成密钥的方法及装置 - Google Patents

生成密钥的方法及装置 Download PDF

Info

Publication number
WO2023178529A1
WO2023178529A1 PCT/CN2022/082354 CN2022082354W WO2023178529A1 WO 2023178529 A1 WO2023178529 A1 WO 2023178529A1 CN 2022082354 W CN2022082354 W CN 2022082354W WO 2023178529 A1 WO2023178529 A1 WO 2023178529A1
Authority
WO
WIPO (PCT)
Prior art keywords
update request
key
terminal device
random number
mac
Prior art date
Application number
PCT/CN2022/082354
Other languages
English (en)
French (fr)
Inventor
甘露
熊丽晖
曹进
李晟
马如慧
熊一清
李晖
Original Assignee
Oppo广东移动通信有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oppo广东移动通信有限公司 filed Critical Oppo广东移动通信有限公司
Priority to PCT/CN2022/082354 priority Critical patent/WO2023178529A1/zh
Publication of WO2023178529A1 publication Critical patent/WO2023178529A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security

Definitions

  • the present application relates to the field of communication technology, and more specifically, to a method and device for generating a key.
  • K AF can be used for encrypted communication between application function (AF) network elements and terminal equipment to ensure communication security.
  • K AF usually has a validity period, and after the validity period of the K AF expires, the K AF needs to be renewed.
  • the update of K AF requires the terminal device to re-authenticate the master, and this update method is relatively complicated. If a new master authentication is not performed, the regenerated K AF will be the same as the K AF before the update, which will cause the problem of K AF being reused.
  • This application provides a method and device for generating a key, which can solve the problem of K AF being reused.
  • a method for generating a key including: a first device generates a first K AF based on a random number, the first K AF is used for communication between a terminal device and the AF, and the first K AF is used for communication between a terminal device and the AF.
  • the device is an end device or AAnF.
  • a method for generating a key including: a second device receiving a random number sent by a first device, the first device being one of a terminal device and an AAnF, and the second device being the The other one of the terminal device and the AAnF; the second device generates a first K AF based on the random number, and the first K AF is used for communication between the terminal device and the AF.
  • a method for generating a key including: the AF receives the first K AF sent by the AAnF, the first K AF is generated by the AAnF based on a random number, and the first K AF is used for Communication between the AF and the terminal device.
  • a device for generating a key is provided.
  • the device is a first device, and the first device is a terminal device or an AAnF.
  • the device includes: a generating unit configured to generate a first key based on a random number. K AF , the first K AF is used for communication between the terminal device and the AF.
  • a device for generating a key is provided.
  • the device is a second device.
  • the device includes: a receiving unit configured to receive a random number sent by a first device.
  • the first device is a terminal device and One of the AAnFs, the second device is the terminal device and the other one of the AAnFs; a generating unit configured to generate a first K AF based on the random number, and the first K AF is used for the Describes the communication between the terminal device and AF.
  • a device for generating a key is provided.
  • the device is an AF.
  • the device includes: a receiving unit configured to receive the first K AF sent by the AAnF.
  • the first K AF is based on the AAnF. Random numbers are generated, and the first K AF is used for communication between the AF and the terminal device.
  • a seventh aspect provides a device for generating a key, including a memory and a processor, the memory is used to store a program, and the processor is used to call the program in the memory to execute the first to third aspects. method described in any aspect.
  • An eighth aspect provides a device, including a processor, for calling a program from a memory to execute the method described in any one of the first to third aspects.
  • a ninth aspect provides a chip, including a processor for calling a program from a memory, so that a device installed with the chip executes the method described in any one of the first to third aspects.
  • a computer-readable storage medium is provided with a program stored thereon, and the program causes a computer to execute the method described in any one of the first to third aspects.
  • a computer program product including a program that causes a computer to execute the method described in any one of the first to third aspects.
  • a computer program is provided, the computer program causing a computer to perform the method described in any one of the first to third aspects.
  • random numbers are introduced to generate different K AF . Since the random number changes, a different random number can be generated each time K AF needs to be generated. Further, based on different random numbers, different K AF can be generated, thereby avoiding the problem that the regenerated K AF is the same as the K AF before updating. In addition, since random numbers are introduced in the process of generating K AF , the K AF can be updated without the terminal device performing a new master authentication, thereby reducing the complexity of the K AF update.
  • 1A-1C are example diagrams of communication systems to which embodiments of the present application can be applied.
  • Figure 2 is a schematic flow chart of generating K AKMA based on primary authentication.
  • Figure 3 is a schematic flow chart of generating K AF based on K AKMA .
  • Figure 4 is a schematic flowchart of a method for generating a key provided by an embodiment of the present application.
  • Figure 5 is a schematic flowchart of another method for generating a key provided by an embodiment of the present application.
  • Figure 6 is a schematic flowchart of another method for generating a key provided by an embodiment of the present application.
  • Figure 7 is a schematic flowchart of another method for generating a key provided by an embodiment of the present application.
  • FIG. 8 is a schematic flowchart of another method for generating a key provided by an embodiment of the present application.
  • Figure 9 is a schematic structural diagram of a device for generating a key provided by an embodiment of the present application.
  • Figure 10 is a schematic structural diagram of another device for generating a key provided by an embodiment of the present application.
  • Figure 11 is a schematic structural diagram of another device for generating a key provided by an embodiment of the present application.
  • Figure 12 is a schematic structural diagram of a device provided by an embodiment of the present application.
  • GSM global system of mobile communication
  • CDMA code division multiple access
  • WCDMA broadband code division multiple access
  • GPRS general packet radio service
  • LTE long term evolution
  • LTE-A advanced long term evolution
  • NR new radio
  • evolution system of NR system LTE (LTE-based access to unlicensed spectrum, LTE-U) system on unlicensed spectrum, NR (NR-based access to on unlicensed spectrum) unlicensed spectrum (NR-U) system, NTN system, universal mobile telecommunication system (UMTS), wireless local area networks (WLAN), wireless fidelity (wireless fidelity, WiFi), fifth-generation communications (5th-generation, 5G) system or other communication systems, such as future communication systems, such as the sixth generation mobile communication system, and satellite communication systems.
  • GSM global system of mobile communication
  • CDMA code division multiple access
  • WCDMA broadband code division multiple access
  • GPRS general packet radio service
  • LTE long term evolution
  • LTE-A advanced long term evolution
  • new radio new radio
  • NR evolution system of
  • D2D device to device
  • M2M machine to machine
  • MTC machine type communication
  • V2V vehicle to vehicle
  • V2X vehicle to everything
  • CA carrier aggregation
  • DC dual connectivity
  • SA standalone
  • the communication system in the embodiment of the present application can be applied to the unlicensed spectrum, where the unlicensed spectrum can also be considered as a shared spectrum; or the communication system in the embodiment of the present application can also be applied to the licensed spectrum, where the licensed spectrum can also be Considered dedicated spectrum.
  • NTN systems can be applied to NTN systems and also to terrestrial communication networks (terrestrial networks, TN) systems.
  • TN systems include NR-based NTN systems and IoT-based NTN systems.
  • the embodiments of this application describe various embodiments in combination with network equipment and terminal equipment.
  • the terminal equipment may also be called user equipment (UE), access terminal, subscriber unit, user station, mobile station, mobile station (mobile station). station, MS), mobile terminal (mobile Terminal, MT), remote station, remote terminal, mobile device, user terminal, terminal, wireless communication equipment, user agent or user device, etc.
  • the terminal device may be a station (STATION, ST) in WLAN, a cellular phone, a cordless phone, a session initiation protocol (session initiation protocol, SIP) phone, or a wireless local loop (wireless local loop).
  • WLL station
  • PDA personal digital assistant
  • handheld device with wireless communication capabilities computing device or other processing device connected to a wireless modem
  • vehicle-mounted device wearable device
  • next-generation communication system such as NR network terminal equipment in the public land mobile network (public land mobile network, PLMN) network that will evolve in the future.
  • PLMN public land mobile network
  • a terminal device may refer to a device that provides voice and/or data connectivity to users, and may be used to connect people, things, and machines, such as handheld devices, vehicle-mounted devices, etc. with wireless connection functions.
  • the terminal device in the embodiment of the present application can be a mobile phone (mobile phone), a tablet computer (Pad), a notebook computer, a handheld computer, a mobile internet device (mobile internet device, MID), a wearable device, a virtual reality (virtual reality, VR) equipment, augmented reality (AR) equipment, wireless terminals in industrial control, wireless terminals in self-driving, wireless terminals in remote medical surgery, smart Wireless terminals in smart grid, wireless terminals in transportation safety, wireless terminals in smart city, wireless terminals in smart home, etc.
  • VR virtual reality
  • AR augmented reality
  • the UE may be used to act as a base station.
  • a UE may act as a scheduling entity that provides sidelink signals between UEs in V2X or D2D, etc.
  • a scheduling entity that provides sidelink signals between UEs in V2X or D2D, etc.
  • cell phones and cars use sidelink signals to communicate with each other.
  • Cell phones and smart home devices communicate between each other without having to relay communication signals through base stations.
  • the terminal device can be deployed on land, including indoor or outdoor, handheld, wearable or vehicle-mounted; it can also be deployed on water (such as ships, etc.); it can also be deployed in the air (such as aircraft, balloons and satellites). superior).
  • the terminal device may be a mobile phone (mobile phone), a tablet computer (pad), a computer with wireless transceiver functions, a virtual reality (VR) terminal device, or an augmented reality (AR) terminal.
  • Equipment wireless terminal equipment in industrial control, wireless terminal equipment in self-driving, wireless terminal equipment in remote medical, wireless terminal equipment in smart grid , wireless terminal equipment in transportation safety, wireless terminal equipment in smart city, or wireless terminal equipment in smart home, etc.
  • the terminal equipment involved in the embodiments of this application may also be called terminal, user equipment (UE), access terminal equipment, vehicle-mounted terminal, industrial control terminal, UE unit, UE station, mobile station, mobile station, remote station , remote terminal equipment, mobile equipment, UE terminal equipment, wireless communication equipment, UE agent or UE device, etc.
  • Terminal equipment can also be fixed or mobile.
  • the terminal device may also be a wearable device.
  • Wearable devices can also be called wearable smart devices. It is a general term for applying wearable technology to intelligently design daily wear and develop wearable devices, such as glasses, gloves, watches, clothing and shoes, etc.
  • a wearable device is a portable device that is worn directly on the body or integrated into the user's clothing or accessories. Wearable devices are not just hardware devices, but also achieve powerful functions through software support, data interaction, and cloud interaction.
  • wearable smart devices include full-featured, large-sized devices that can achieve complete or partial functions without relying on smartphones, such as smart watches or smart glasses, and those that only focus on a certain type of application function and need to cooperate with other devices such as smartphones.
  • the network device in the embodiment of the present application may be a device used to communicate with a terminal device.
  • the network device may also be called an access network device or a wireless access network device.
  • the network device may be a base station.
  • the network device in the embodiment of this application may refer to a radio access network (radio access network, RAN) node (or device) that connects the terminal device to the wireless network.
  • radio access network radio access network, RAN node (or device) that connects the terminal device to the wireless network.
  • the base station can broadly cover various names as follows, or be replaced with the following names, such as: Node B (NodeB), evolved base station (evolved NodeB, eNB), next generation base station (next generation NodeB, gNB), relay station, Access point, transmission point (transmitting and receiving point, TRP), transmitting point (TP), main station MeNB, secondary station SeNB, multi-standard wireless (MSR) node, home base station, network controller, access node , wireless node, access point (AP), transmission node, transceiver node, base band unit (BBU), remote radio unit (RRU), active antenna unit (active antenna unit) , AAU), radio head (remote radio head, RRH), central unit (central unit, CU), distributed unit (distributed unit, DU), positioning node, etc.
  • NodeB Node B
  • eNB evolved base station
  • next generation NodeB next generation NodeB, gNB
  • relay station Access point
  • transmission point transmission point
  • the base station may be a macro base station, a micro base station, a relay node, a donor node or the like, or a combination thereof.
  • a base station may also refer to a communication module, modem or chip used in the aforementioned equipment or devices.
  • the base station can also be a mobile switching center and a device that undertakes base station functions in device-to-device D2D, vehicle-to-everything (V2X), machine-to-machine (M2M) communications, and in 6G networks.
  • Base stations can support networks with the same or different access technologies. The embodiments of this application do not limit the specific technology and specific equipment form used by the network equipment.
  • Base stations can be fixed or mobile.
  • a helicopter or drone may be configured to act as a mobile base station, and one or more cells may move based on the mobile base station's location.
  • a helicopter or drone may be configured to serve as a device that communicates with another base station.
  • the network device in the embodiment of this application may refer to a CU or a DU, or the network device includes a CU and a DU.
  • gNB can also include AAU.
  • Network equipment and terminal equipment can be deployed on land, indoors or outdoors, handheld or vehicle-mounted; they can also be deployed on water; they can also be deployed on aircraft, balloons and satellites in the sky. In the embodiments of this application, the scenarios in which network devices and terminal devices are located are not limited.
  • the network device may have mobile characteristics, for example, the network device may be a mobile device.
  • network equipment may be satellites or balloon stations.
  • the satellite can be a low earth orbit (LEO) satellite, a medium earth orbit (MEO) satellite, a geosynchronous orbit (geostationary earth orbit, GEO) satellite, a high elliptical orbit (High Elliptical Orbit, HEO) satellite ) satellite, etc.
  • the network device may also be a base station installed on land, water, or other locations.
  • network equipment can provide services for a cell, and terminal equipment communicates with the network equipment through transmission resources (for example, frequency domain resources, or spectrum resources) used by the cell.
  • the cell can be a network equipment ( For example, a cell corresponding to a base station).
  • the cell can belong to a macro base station or a base station corresponding to a small cell.
  • the small cell here can include: urban cell (metro cell), micro cell (micro cell), pico cell ( Pico cells, femto cells, etc. These small cells have the characteristics of small coverage and low transmission power, and are suitable for providing high-rate data transmission services.
  • FIG. 1A is a schematic architectural diagram of a communication system provided by an embodiment of the present application.
  • the communication system 100 may include a network device 110 , and the network device 110 may be a device that communicates with a terminal device 120 (also known as a communication terminal or terminal).
  • the network device 110 can provide communication coverage for a specific geographical area and can communicate with terminal devices located within the coverage area.
  • Figure 1A exemplarily shows one network device and two terminal devices.
  • the communication system 100 may include multiple network devices and other numbers of terminals may be included within the coverage of each network device.
  • Equipment the embodiments of this application do not limit this.
  • FIG. 1B is a schematic architectural diagram of another communication system provided by an embodiment of the present application.
  • a terminal device 1101 and a satellite 1102. Wireless communication can be performed between the terminal device 1101 and the satellite 1102.
  • the network formed between the terminal device 1101 and the satellite 1102 may also be called NTN.
  • the satellite 1102 may have the function of a base station, and the terminal device 1101 and the satellite 1102 may communicate directly.
  • the satellite 1102 can be called a network device.
  • the communication system may include multiple network devices 1102, and the coverage of each network device 1102 may include other numbers of terminal devices, which is not limited in the embodiments of the present application.
  • FIG. 1C is an architectural schematic diagram of another communication system provided by an embodiment of the present application.
  • Figure 1C which includes a terminal device 1201, a satellite 1202 and a base station 1203.
  • Wireless communication can be performed between the terminal device 1201 and the satellite 1202, and communication can be performed between the satellite 1202 and the base station 1203.
  • the network formed between the terminal device 1201, the satellite 1202 and the base station 1203 may also be called NTN.
  • the satellite 1202 may not have the function of a base station, and the communication between the terminal device 1201 and the base station 1203 needs to be relayed through the satellite 1202 .
  • the base station 1203 can be called a network device.
  • the communication system may include multiple network devices 1203, and the coverage of each network device 1203 may include other numbers of terminal devices, which is not limited in the embodiments of the present application.
  • Figures 1A to 1C are only used as examples to illustrate the systems to which this application is applicable.
  • the methods shown in the embodiments of this application can also be applied to other systems, such as 5G communication systems, LTE communication systems, etc. , the embodiments of this application do not specifically limit this.
  • the wireless communication system shown in Figures 1A-1C may also include a mobility management entity (mobility management entity, MME), access and mobility management function (AMF) , authentication and key management for applications (AKMA), authentication server function (AUSF), UDM, AKMA anchor function (AKMA anchor function, AAnF), AF and others Network entity, this is not limited in the embodiments of this application.
  • MME mobility management entity
  • AMF access and mobility management function
  • AKMA authentication and key management for applications
  • AUSF authentication server function
  • UDM authentication server function
  • AKMA anchor function AKMA anchor function
  • AF and others Network entity this is not limited in the embodiments of this application.
  • the communication device may include a network device 110 and a terminal device 120 with communication functions.
  • the network device 110 and the terminal device 120 may be the specific devices described above, which will not be described again here.
  • the communication device may also include other devices in the communication system 100, such as network controllers, mobility management entities and other network entities, which are not limited in the embodiments of this application.
  • the "instruction” mentioned in the embodiments of this application may be a direct instruction, an indirect instruction, or an association relationship.
  • a indicates B which can mean that A directly indicates B, for example, B can be obtained through A; it can also mean that A indirectly indicates B, for example, A indicates C, and B can be obtained through C; it can also mean that there is an association between A and B. relation.
  • correlate can mean that there is a direct correspondence or indirect correspondence between the two, it can also mean that there is an associated relationship between the two, or it can mean indicating and being instructed, configuration and being. Configuration and other relationships.
  • Configuration in the embodiment of this application may include configuring through at least one of system messages, radio resource control (radio resource control, RRC) signaling, and media access control element (MAC CE) .
  • RRC radio resource control
  • MAC CE media access control element
  • predefined or “preset” can be achieved by pre-saving corresponding codes, tables or other methods that can be used to indicate relevant information in devices (for example, including terminal devices and network devices).
  • predefined can refer to what is defined in the protocol.
  • the "protocol” may refer to a standard protocol in the communication field, which may include, for example, LTE protocol, NR protocol, and related protocols applied in future communication systems. This application does not limit this.
  • the K AF key can be used to communicate between the UE and the AF, and the K AF can be used to securely protect the communication.
  • the K AF key generation process involves multiple functional network elements, such as AMF, AUSF, UDM, AAnF, AF, etc. These functional network elements are introduced below.
  • AMF is mainly used for mobility management and access management, etc., and can be used to implement other functions in MME functions besides session management, such as legal interception and access authorization/authentication.
  • AUSF is used for authentication services, generating keys, realizing two-way authentication of UE, and supports a unified authentication framework.
  • AUSF is mainly used for mutual authentication between the UE and the network, and to generate a security key for use in subsequent processes.
  • UDM can be used to handle UE identification, access authentication, registration and mobility management, etc.
  • AF is used for data routing at the application layer, access to network open functions, and interaction with the policy framework for policy control.
  • AAnF is used to generate the AKMA anchor key K AKMA , and the application key K AF .
  • AAnF and UE can generate K AF in the same way.
  • AAnF can send the generated K AF to AF.
  • the AF and the UE can communicate based on the same key K AF to ensure communication security.
  • the generation process of K AF can be divided into two stages.
  • the first stage is the stage of generating K AKMA based on the main authentication, as shown in Figure 2; the second stage is the stage of generating K AF based on K AKMA , as shown in Figure 3.
  • These two stages are sometimes referred to as the key agreement process below.
  • These two stages are introduced below.
  • step S201 the UE and AUSF execute the main authentication process.
  • Primary authentication can be understood as the process in which the UE authenticates the AMF and/or AUSF, and the AUSF authenticates the UE when the UE registers with the core network.
  • This process is also called two-way authentication. Specifically, this process may be that during the registration process, the core network device and the UE interact through messages, and the UE and the core network device respectively compare the parameter to be verified provided by the other party with another parameter generated by themselves. If the parameters to be verified provided by the other party are the same as the parameters generated by the UE, the authentication between the UE and the core network device interacts through AUSF and UDM to obtain authentication information (see step S202 and step S203). For example, authentication credentials (AKA authentication vector (AV)), the authentication method uses the Nudm_UEAuthentication_Get Request service operation.
  • AKA authentication vector AV
  • the AUSF sends a UE authentication request to the UDM.
  • the UE authentication request may include the identification information of the UE.
  • the identification information of the UE may be one or more of subscription permanent identifier (SUPI) or subscription concealed identifier (SUCI), general public subscription identifier (GPSI) .
  • SUPI subscription permanent identifier
  • SUCI subscription concealed identifier
  • GPSI general public subscription identifier
  • the UDM sends a UE authentication response to the AUSF.
  • the UE authentication response may include AV.
  • the UE authentication response may also include AKMA Ind and/or RID.
  • the UDM may also indicate to the AUSF whether AKMA keys need to be generated for the UE.
  • step S204 after completing the main authentication, the UE and AUSF obtain the common key K AUSF . If the AUSF receives UDM indication information, and the indication information indicates that the AUSF needs to generate an AKMA key for the UE, the AUSF stores K AUSF , and after the primary authentication is successful, generates the AKMA anchor keys K AKMA and K AKMA based on K AUSF .
  • AKMA key identity A-KID. It can be understood that KAKMA and A-KID have a corresponding relationship, and A-KID can uniquely identify its corresponding KAKMA .
  • the UE can also use the same calculation method as AUSF to generate K AKMA and A-KID.
  • KAKMA is a UE granular key, that is, each UE has its own unique KAKMA .
  • step S205 after AUSF generates KAKMA and A-KID, it uses Naanf_AKMA_AnchorKey_Regfister to send the latest key material to AAnF.
  • the latest key material may include, for example, the UE's identification information (such as SUPI), A-KID and KAKMA .
  • AAnF stores the latest key material.
  • step S206 AAnF uses Naanf_AKMA_AnchorKey_Regfister to send a response message to AUSF.
  • the UE may send an application session establishment request to the AF.
  • the application session establishment request may include the A-KID.
  • the AF sends an AKMA application key acquisition request to the AAnF.
  • the AKMA application key acquisition request may include the A-KID and the AF identity (AF identity, AF-ID).
  • the A-KID is the A-KID in the application session establishment request.
  • the AKMA application key acquisition request may also include a request for the UE's identity (UE identity, UE-ID).
  • UE-ID includes one or more of SUPI, SUCI, and GPSI.
  • step S303 after receiving the AKMA application key acquisition request, AAnF can determine the corresponding KAKMA based on the A-KID, and generate the key K AF based on the KAKMA .
  • AAnF sends K AF to AF.
  • AAnF can send an AKMA application key acquisition response to AF.
  • the application key acquisition response may include K AF , the validity period of K AF (K AF expTime), UE-ID, etc.
  • the AKMA application key acquisition response may include the UE-ID. If the AKMA application key acquisition request in step S302 does not include a request for UE-ID, the AKMA application key acquisition response may not include the UE-ID.
  • the AF can obtain the key K AF for communicating with the UE.
  • step S305 the AF sends an application session establishment response to the UE.
  • the UE can also generate K AF in the same way as AAnF, that is, the way in which the UE generates K AF based on K AKMA is the same as the way in which AAnF generates K AF based on K AKMA .
  • the UE and AF can communicate using the same key K AF .
  • TLS premaster secret transport layer security protocol
  • TLS session key TLS session key
  • KDF key derivation function
  • KDF can be any key derivation function that can satisfy computational security.
  • KDF can be HMAC-SHA-256 or HMAC-SM3.
  • the following uses KDF as an example to illustrate the key generation method.
  • -L0 The length of "AKMA” (such as 0x00 0x04);
  • the input key is K AUSF .
  • the entered key is K AKMA .
  • AF_ID AF's FQDN
  • A-KID may include two parts: RID and A-TID.
  • RID is included in SUPI, and A-TID can be generated based on K AUSF .
  • A-TID can be generated from K AUSF .
  • -L0 The length of "A-TID" (such as 0x00 0x05);
  • the entered key is K AUSF .
  • a validity period is usually set for the K AF .
  • the validity period of K AF means that K AF can last for the same length of time.
  • the UE and the AF can use the K AF to communicate.
  • the UE needs to regenerate a new K AF .
  • K AF can only be updated if K AUSF is updated. If K AUSF does not change, K AF does not change.
  • the update of K AUSF depends on the main certification. Only after passing the new main certification can different K AUSF be generated. That is to say, currently, the UE updates K AF by performing new primary authentication. After the validity period of K AF expires, the UE can generate a new K AUSF by performing a new primary authentication, then use the new K AUSF to generate a new K AKMA , and use the new K AKMA to generate an updated K AF .
  • K AF In order to reduce the complexity of updating K AF , some communication protocols, such as TS 33.535 5.2 stipulates that after K AF expires, K AF can be regenerated based on the existing KAKMA .
  • K AKMA if the UE does not perform primary authentication again, K AKMA will not change; if K AKMA does not change, K AF will not change. That is to say, if the UE does not perform primary authentication again when K AF expires, the UE will generate the same K AF based on the existing K AKMA as before the update, which will cause the problem of K AF being reused. If the UE uses expired K AF to communicate with the AF, it will have an impact on the security of the communication.
  • embodiments of the present application provide a new way of generating key K AF .
  • random numbers (Nonce) are introduced to generate different K AF .
  • K AF can be generated based on random numbers, so that K AF before and after the update is different. Since the random number changes, a different random number can be generated every time K AF needs to be updated. Further, based on different random numbers, different K AF can be generated, thereby updating K AF to enhance the security of data transmission between the UE and the AF.
  • random numbers can be generated by a random number generator. Each time K AF needs to be generated, a random number is generated by a random number generator.
  • random numbers can be generated with a counter.
  • the value of the random number gradually increases as the number of updates increases. Each time the number of updates increases, the value of the random number increases by 1. For example, when K AF is generated for the first time, the value of the random number is 0; when K AF is generated for the second time, the value of the random number is 1; when K AF is generated for the third time, the value of the random number is 1. is 2, and so on.
  • the value of the random number can also be other values, such as 1, 2 or 3, etc.
  • random numbers can be generated by a timer.
  • the value of the random number is the value of the timer.
  • the timer can start counting from 0. For example, when K AF is generated for the first time, the value of the random number is 0, and the timer starts counting; when K AF is generated subsequently, the value of the random number is the value of the timer.
  • the value of the random number can be the number of hours, minutes or seconds of the timer. If the value of the random number is the number of hours of the timer, the value of the random number can be between 0 and 24. For example, if the timer is 14 hours, 10 minutes and 25 seconds, the random number value is 14.
  • the timer can also only record hours instead of minutes and seconds, for example, the timer time is 14 hours. If the value of the random number is the number of minutes of the timer, the value of the random number can be between 0 and 60. For example, if the timer is 14 hours, 10 minutes and 25 seconds, the random number value is 10. Of course, the timer can also only record minutes instead of hours and seconds, for example, the timer time is 10 minutes. If the value of the random number is the number of seconds of the timer, the value of the random number can be between 0 and 60. For example, if the timer is 14 hours, 10 minutes and 25 seconds, the random number value is 25. Of course, the timer can also only record seconds instead of hours and minutes, for example, the timer time is 25 seconds. Of course, the timer can also start timing from other times (such as the current absolute time), which is not specifically limited in the embodiments of the present application.
  • the solution of the embodiment of the present application will be introduced in detail below with reference to Figure 4 .
  • the method shown in Figure 4 can be performed by an end device or an AAnF.
  • the terminal device and the AAnF can generate the first K AF based on the same method.
  • the method shown in Figure 4 may include step S410.
  • step S410 the first device generates the first K AF based on the random number.
  • the first device is the terminal device or AAnF.
  • the random number may be introduced during the process of generating KAKMA from K AUSF , or may be introduced during the process of generating the first K AF from KAKMA . This is not specifically limited in the embodiment of the present application. The following mainly introduces the solution of introducing random numbers in the process of generating the first K AF from K AKMA .
  • the first K AF may be generated based solely on random numbers.
  • the random number parameter can be added to the original calculation method (such as method 1) to generate the first K AF .
  • the first K AF can be generated based on KAKMA and random numbers.
  • the random number can also be combined with other parameters besides K AKMA to generate the first K AF .
  • another parameter can be generated based on the random number, and then the first K AF can be generated based on the parameter.
  • the above-mentioned multiple implementation methods can be used alone or in combination with each other. This is not specifically limited in the embodiments of the present application.
  • the terminal device or AAnF may jointly generate the first K AF based on the random number, KAKMA , and the third parameter.
  • the third parameter may include one or more of the following: random number, AF-ID, length of AF-ID, and constant FC.
  • embodiments of the present application can add random numbers to the input parameters of the KDF, thereby generating the first K AF .
  • the input S of KDF can be as follows, where P1 and L1 are added input parameters related to random numbers.
  • FC 0xXX (for example 0x82);
  • the entered key is K AKMA .
  • the terminal device or AAnF can jointly generate the first based on the random number, the length of the random number, AF-ID, the length of AF-ID, K AKMA and the constant FC.
  • the above parameters are only an example and do not limit the solutions of the embodiments of the present application.
  • the input parameters of KDF include random numbers.
  • the input parameters of KDF may only include the above-mentioned P1 and L1, but not P0 and L0.
  • the input key can be replaced by other parameters other than K AKMA , such as K AF to be updated.
  • the second device in the embodiment of the present application can also generate the first K AF based on the same method as the first device, that is, the second device can also generate the first K AF based on the random number.
  • the first device is one of the terminal device and the AAnF
  • the second device is the other one of the terminal device and the AAnF.
  • the first device is a terminal device
  • the second device is AAnF
  • the first device is AAnF
  • the second device is a terminal device.
  • the random number in the embodiment of this application is generated by the first device, that is, the random number can be generated by the terminal device or by the AAnF.
  • the second device may receive the random number generated by the first device, and generate the first K AF based on the random number.
  • the solution of the embodiment of the present application will be described in detail below with the first device being the terminal device and the AAnF respectively.
  • Example 1 The first device is the terminal device and the second device is AAnF
  • step S510 the AF sends the first K AF update request message to the terminal device.
  • the first K AF update request message is used to request to update K AF .
  • step S520 after receiving the first K AF update request message, the terminal device may generate a random number in response to the first K AF update request message. Further, the terminal device can generate the first K AF based on the random number.
  • the AF when the AF sends the first K AF update request message, there may be a situation where the previous message is replayed, which is obviously not a real message for updating K AF . Based on this, when the AF sends the first K AF update request message, the AF may carry the A-KID in the first K AF update request message, so that the terminal device can verify the validity of the A-KID. After receiving the first K AF update request message, the terminal device can verify the validity of the A-KID in the first K AF update request message. Only when the legality verification of A-KID passes, the terminal device generates a random number.
  • a legal A-KID may mean that the A-KID is the last A-KID used by the terminal device, or that the A-KID is the latest A-KID in the terminal device.
  • the terminal device If the terminal device performs a new primary authentication when updating the K AF , the terminal device generates a new A-KID. In this case, the A-KID in the first K AF update request message is different from the latest A-KID in the terminal device, but is consistent with the A-KID last used by the terminal device. If the terminal device does not perform a new master authentication when updating the K AF , the A-KID in the first K AF update request message is consistent with the latest A-KID in the terminal device.
  • the solution of the embodiment of the present application can be applied to the situation where the terminal device has not performed a new master authentication, and can also be applied to the situation where the terminal device has performed a new master authentication. That is to say, when the K AF is updated, regardless of whether the terminal device After a new master authentication is performed, the terminal device can generate the first K AF based on random numbers.
  • the terminal device can use the new KAKMA to generate the first K AF based on the traditional method (the method shown in Figure 2 and Figure 3).
  • Whether the terminal device has performed a new primary authentication can be determined based on the A-KID in the first K AF update request message. If the A-KID in the first K AF update request message is consistent with the latest A-KID in the terminal device, it means that the terminal device has not performed a new primary authentication; if the A-KID in the first K AF update request message is consistent with the terminal device If the latest A-KID in the device is inconsistent, it means that the terminal device has undergone a new primary authentication.
  • the AF may also encrypt and/or integrity protect the first K AF update request message.
  • the AF may encrypt and/or integrity protect the first K AF update request message using the K AF to be updated.
  • the AF can use the K AF to be updated to encrypt the first K AF update request message.
  • the terminal device can use the K AF to be updated to encrypt the first K AF update request message. Decrypt.
  • the AF may use the K AF to be updated to perform integrity protection on the first K AF update request message.
  • the AF may generate MAC 1 based on the K AF to be updated and the first K AF update request message.
  • the AF may send the first K AF update request message together with MAC1 to the terminal device.
  • the terminal device may generate MAC 1' according to the first K AF update request message and the K AF to be updated. If MAC 1 and MAC 1' are consistent, the terminal device can confirm that the first K AF update request message is complete and has not been tampered with. If MAC 1 and MAC 1' are inconsistent, the terminal device can confirm that the first K AF update request message is incomplete and its integrity is destroyed.
  • the K AF to be updated can be understood as the shared key for generating the MAC.
  • the algorithm used by the AF to encrypt and/or integrity protect the first K AF update request message may be defined in the protocol or any algorithm negotiated between the AF and the terminal device.
  • the algorithm may be an algorithm supported by the AF, so that the AF may use the algorithm to encrypt and/or integrity protect the first K AF update request message.
  • the first K AF update request message may also include a first algorithm identifier.
  • the first algorithm identifier may be an algorithm identifier supported by AF.
  • the first algorithm identification may include an encryption algorithm identification and/or an integrity protection algorithm identification.
  • the first algorithm identifier may refer to an algorithm identifier for encrypting the first K AF update request message and/or an algorithm identifier for integrity protection.
  • the encryption algorithm can be the encryption algorithm used in 5G, such as 128-NEAI, 128-NEA2, and 128-NEA3.
  • the encryption algorithm may be an encryption algorithm used in 4G, such as 128-EEAI, 128-EEA2, and 128-EEA.
  • the integrity protection algorithm may be the integrity protection algorithm used in 5G, such as 128-NIAI, 128-NIA2, and 128-NIA3.
  • the integrity protection algorithm may be an integrity protection algorithm used in 4G, such as 128-EIAI, 128-EIA2, and 128-EIA3.
  • the terminal device can also send the generated random number to AAnF.
  • the terminal device can send the random number directly to AAnF, or the terminal device can also send the random number to AAnF through AF.
  • the terminal device can first send the random number to the AF, and then the AF forwards the random number to the AAnF.
  • step S530 the terminal device sends a first K AF update request reply message to the AF, where the first K AF update request reply message includes a random number.
  • step S540 after receiving the first K AF update request reply message, the AF may send a second K AF update request message to the AAnF, where the second K AF update request message carries a random number.
  • AAnF may generate the first K AF based on the same method as the terminal device, that is, AAnF may generate the first K AF based on random numbers. Further, in step S560, the AAnF may send a second K AF update request reply message to the AF, where the second K AF update request reply message includes the first K AF . In some embodiments, the second K AF update request reply message may also include the validity period of the first K AF , UE-ID and other information.
  • the UE-ID can be one or more of SUPI, SUCI, and GPSI.
  • step S570 after receiving the second K AF update request reply message sent by the AAnF, the AF may send a session key establishment response to the terminal device, and the session key establishment response may be a session key reconstruction response. As a result, the session establishment between the terminal device and the AF is completed.
  • the terminal device while generating a random number, the terminal device also generates a first MAC (also called MAC UE ).
  • the first MAC is obtained by performing integrity protection on the first information, and the first MAC can be used to determine whether the first information has been tampered with.
  • the first information includes one or more of random numbers and A-KID.
  • the A-KID can be the latest A-KID in the terminal device.
  • the first information may include a random number, and the first MAC may be used to verify the legitimacy of the random number.
  • the first information may include a random number and A-KID, and the first MAC may be used to verify the legitimacy of the random number and A-KID.
  • the terminal device may generate the first MAC based on the first key and the first information.
  • the first key may be the first K AKMA or the first K AF .
  • the following is an example of how to generate the first MAC.
  • the first MAC may be generated based on the first parameters.
  • the first parameter may include one or more of the following: random number, length of random number, K AF to be updated, length of K AF to be updated, first K AF , A-KID, length of A-KID ,K AKMA ,constant.
  • the above A-KID can be the latest A-KID
  • K AKMA can be the latest K AKMA .
  • the terminal device will generate a new KAKMA after each primary authentication. Moreover, the K AKMA generated for each main authentication is different.
  • the latest KAKMA can be understood as the last or most recent KAKMA generated by the terminal device.
  • the latest A-KID can also be understood as the last or most recently generated A-KID by the terminal device.
  • the second update request message sent by the AF to the AAnF may also include the AF-ID.
  • the constant in the first parameter may be agreed in the protocol, or may be agreed in advance between the terminal device and the AAnF or AF, which is not specifically limited in the embodiments of this application.
  • the embodiment of the present application may use KDF to generate the first MAC.
  • the first key is KAKMA.
  • KDF KAKMA
  • the input key is KAKMA.
  • the first MAC is generated based on a constant, a random number, the length of the random number, K AF to be updated, the length of K AF to be updated, A-KID, the length of A-KID, and KAKMA.
  • FC is a constant.
  • the last two digits of FC may be agreed upon in the agreement.
  • the random numbers in P0 and L0 can be used to protect the integrity of the message.
  • the AF may send the random number through the second K AF update request message.
  • the AAnF may generate a MAC based on the random number in the second K AF update request message. If the random number is tampered with by an attacker, it will cause the MAC generated by AAnF to be inconsistent with the MAC UE sent by AF, so that the second K AF update request message can be detected as incomplete. If this occurs, the AAnF may refuse to update the K AF .
  • the K AF to be updated in P1 and L1 can be used to avoid AF replaying previous messages. If the AF replays previous messages, the MAC generated by AAnF based on the K AF to be updated will be different from the MAC UE sent by the AF. In this case, AAnF can reject the update of K AF .
  • the A-KID in P2 and L2 can be the latest A-KID.
  • A-KID in P2 and L2 can be used to protect message integrity.
  • the AF may send the A-KID through the second K AF update request message.
  • the AAnF may generate a MAC based on the A-KID in the second K AF update request message. If the A-KID is tampered with by an attacker, the MAC generated by the AAnF will be inconsistent with the MAC UE sent by the AF, thereby detecting that the second K AF update request message is incomplete. In this case, the AAnF may refuse to update the K AF .
  • the first key is the first KAF.
  • KDF the process of using KDF to generate MAC, the following parameters can be used as input to KDF:
  • the input key is the first KAF.
  • the first MAC is generated based on the constant, the random number, the length of the random number, the K AF to be updated, the length of the K AF to be updated, the A-KID, the length of the A-KID and the first KAF.
  • FC, P0, L0, P1, L1, P2, and L2 can be found in the above description. For the sake of simplicity, they will not be introduced here.
  • P1 and L1 can be used to resist replay shock. If the first KAF is used as the input key, the first KAF also has the effect of resisting replay impact. Therefore, in some embodiments, the two parameters P1 and L1 may not be used, that is, the following parameters may be used as the input of KDF:
  • the input key is the first KAF.
  • the first MAC is generated based on the constant, the random number, the length of the random number, the A-KID, the length of the A-KID, and the first KAF.
  • the first MAC may be verified by AAnF, may be verified by AF, or may be verified by both AAnF and AF, which is not specifically limited in the embodiment of this application.
  • the first MAC is verified by AAnF.
  • the terminal device may send the first information and the first MAC to the AAnF.
  • AAnF will verify the first MAC.
  • AAnF can use the first key and the first information to generate the first MAC'.
  • AAnF compares the first MAC' with the first MAC. If the first MAC' is consistent with the first MAC, then the first MAC verification passes and the first information has not been tampered with; if the first MAC' is inconsistent with the first MAC, then The first MAC verification failed and the first information was tampered with.
  • the terminal device sends the first information and the first MAC to the AAnF, which may mean that the terminal device sends the first information and the first MAC to the AAnF through the AF.
  • the terminal device sends a first K AF update request reply message to the AF, where the first K AF update request reply message includes the first information and the first MAC.
  • the AF sends a second K AF update request message to the AAnF, where the second K AF update request message includes the first information and the first MAC.
  • the second K AF update request message may also include AF-ID.
  • AAnF may first verify the first MAC. When the first MAC verification passes, AAnF generates the first K AF based on the random number. If the first MAC is generated based on the first K AF , that is, the first key is the first K AF , then in step S550, AAnF may first generate the first K AF based on the random number. Then, the first MAC is verified based on the first K AF .
  • the AAnF sends the second K AF update request reply message to the AF (see step S560); if the first MAC verification fails, the AAnF may not send the second K AF update request reply message to the AF.
  • the first MAC is verified by AF. If the first MAC is generated based on the first K AF , that is, the first key is the first K AF , then the AF may, after receiving the second K AF update request reply message sent by the AAnF (step S560), then A MAC for verification. If the first MAC is verified by the AF, in step S550, the AAnF may not verify the first MAC, but directly generate the first K AF based on the random number.
  • step S530 the AF receives the first K AF update request reply message sent by the terminal device, and the first K AF update request reply message includes the first information And the first MAC.
  • step S540 the AF sends a second K AF update request message to the AAnF.
  • the second K AF update request message may not include the first MAC.
  • the second K AF update request message includes A-KID, AF-ID and random number.
  • the AF receives the second K AF update request reply message sent by the AAnF, and the second K AF update request reply message includes the first K AF .
  • AF checks the first MAC.
  • the AF may use the first K AF and the first information to generate the first MAC'.
  • AF compares the first MAC' with the first MAC. If the first MAC' is consistent with the first MAC, then the first MAC verification passes and the first information has not been tampered with; if the first MAC' is inconsistent with the first MAC, then The first MAC verification failed and the first information was tampered with.
  • the AF may send a session key establishment response to the terminal device. If the first MAC verification fails, the AF may not send a session key establishment response to the terminal device.
  • the AF may also encrypt and/or integrity protect the session key establishment response.
  • the AF may use the first K AF to encrypt and/or integrity protect the session key establishment response.
  • the AF may use the first K AF to encrypt the session key establishment response.
  • the terminal device may use the first K AF to decrypt the session key establishment response.
  • the AF may use the first K AF to perform integrity protection on the session key establishment response.
  • the AF may generate MAC 2 based on the first K AF and the session key establishment response.
  • the AF may send a session key establishment response along with MAC 2 to the end device.
  • the terminal device may generate MAC 2' based on the session key establishment response and the first K AF . If MAC 2 and MAC 2' are consistent, the terminal device can confirm that the session key establishment response is complete and has not been tampered with. If MAC 2 and MAC 2' are inconsistent, the end device can confirm that the session key establishment response is incomplete and its integrity is compromised.
  • the first K AF can be understood as the shared key to generate the MAC.
  • the AF Before sending the first K AF update request message to the terminal device, the AF may also receive a session establishment request sent by the terminal device, as shown in step S502 in Figure 5 .
  • the session establishment request may include a second parameter, and the second parameter may include one or more of the following: UE-ID, AF-ID, and A-KID. This second parameter can be used by AF to find the corresponding K AF .
  • the AF may also determine the K AF corresponding to the second parameter based on the second parameter. If the AF detects that the validity period of the K AF has expired, the AF may send a session establishment response to the terminal device.
  • the session establishment response may include the above-mentioned first K AF update request message, as shown in step S510 in Figure 5.
  • the session establishment response may also include indication information, and the indication information may be used to indicate the reason why the session establishment fails. For example, the reason for the session establishment failure may be that the validity period of the K AF expires.
  • the indication information may be used to indicate the expiration of the validity period of the K AF , or the indication information includes a K AF update identifier of the K AF expiration.
  • the terminal device may also encrypt and/or integrity protect the session establishment request.
  • the terminal device may use the K AF to be updated to encrypt and/or integrity protect the session establishment request.
  • the terminal device can use the K AF to be updated to encrypt the session establishment request.
  • the terminal device can use the K AF to be updated to decrypt the session establishment request.
  • the terminal device can use the K AF to be updated to perform integrity protection on the session establishment request.
  • the terminal device may generate MAC 3 based on the K AF to be updated and the session establishment request.
  • the end device can send a session establishment request to the AF along with MAC 3.
  • AF can generate MAC 3' according to the session establishment request and the K AF to be updated. If MAC 3 and MAC 3' are consistent, AF can confirm that the session establishment request is complete and has not been tampered with. If MAC 3 and MAC 3' are inconsistent, the AF can confirm that the session establishment request is incomplete and its integrity is compromised.
  • the K AF to be updated can be understood as the shared key for generating the MAC.
  • the terminal device and the AF may not update the first K AF immediately, but may wait until The first K AF is updated after the current session ends to ensure the continuity of communication between the terminal device and the AF.
  • the terminal device and the AF can generate the first TLS session session key based on the first K AF . That is, the end device and the AF can encrypt the session using the first TLS session session key.
  • the terminal device and AF can generate a second TLS session based on the first K AF key.
  • the second TLS session key is different from the first TLS session key.
  • the terminal device and the AF can generate different TLS session keys based on the first K AF , so that the terminal device and the AF can continue to communicate using the different TLS session keys to ensure communication security.
  • Example 2 The first device is AAnF, and the second device is the terminal device
  • step S610 the AF sends the first K AF update request message to the AAnF.
  • the first K AF update request message is used to request to update K AF .
  • step S620 after receiving the first K AF update request message, the AAnF may generate a random number in response to the first K AF update request message. Further, AAnF can generate the first K AF based on the random number.
  • the AF when the AF sends the first K AF update request message, there may be a situation where the previous message is replayed, which is obviously not a real message for updating K AF . Based on this, when the AF sends the first K AF update request message, the AF may carry the A-KID in the first K AF update request message, so that the AAnF verifies the validity of the A-KID. After receiving the first K AF update request message, the AAnF can verify the validity of the A-KID in the first K AF update request message. AAnF will generate random numbers only when the legality verification of A-KID passes.
  • a legal A-KID may mean that the A-KID is the last A-KID used by AAnF, or that the A-KID is the latest A-KID in AAnF.
  • AAnF can obtain a new A-KID.
  • the A-KID in the first K AF update request message is different from the latest A-KID in AAnF, but is consistent with the A-KID last used by AAnF. If there is no new master authentication between AAnF and the terminal device when updating K AF , the A-KID in the first K AF update request message is consistent with the latest A-KID in AAnF.
  • the solution of the embodiment of the present application can be applied to the situation where the terminal device has not performed a new master authentication, and can also be applied to the situation where the terminal device has performed a new master authentication. That is to say, when the K AF is updated, regardless of whether the terminal device After a new master authentication is performed, AAnF can generate the first K AF based on random numbers.
  • AAnF can use the new KAKMA to generate the first K AF based on the traditional method (the method shown in Figure 2 and Figure 3).
  • AAnF can determine based on the A-KID in the first K AF update request message. If the A-KID in the first K AF update request message is consistent with the latest A-KID in AAnF, it means that the terminal device has not performed a new master authentication; if the A-KID in the first K AF update request message is consistent with the latest A-KID in AAnF If the latest A-KID is inconsistent, it means that the terminal device has undergone a new primary authentication.
  • AAnF can also send the generated random number to the terminal device.
  • AAnF can send random numbers directly to the terminal device, or AAnF can also send random numbers to the terminal device through AF. For example, AAnF can first send the random number to the AF, and then the AF forwards the random number to the terminal device.
  • step S630 AAnF sends a first K AF update request reply message to the AF, and the first K AF update request reply message includes a random number.
  • step S640 after receiving the first K AF update request reply message, the AF may send a second K AF update request message to the terminal device, where the second K AF update request message carries a random number.
  • the second K AF update request message may also be a session establishment message.
  • the first K AF update request reply message may also include the first K AF .
  • This first K AF can be used for communication between the AF and the terminal device. After receiving the first K AF , the AF can use the K AF to communicate with the terminal device.
  • the first K AF update request reply message may also include the validity period of the first K AF .
  • the validity period of the first K AF can be used by the AF to determine the expiration time of the first K AF . After the first K AF expires, the AF can initiate the process of updating the K AF .
  • the first K AF update request reply message may also include UE-ID.
  • the UE-ID may be one or more of SUPI, SUCI, and GPSI.
  • the second K AF update request message may include the first information and the first MAC.
  • the first MAC is obtained by performing integrity protection on the first information, and the first MAC can be used to determine whether the first information has been tampered with.
  • the first information includes one or more of random numbers and A-KID.
  • A-KID can be the latest A-KID in AF or AAnF.
  • the first information may include a random number, and the first MAC may be used to verify the legitimacy of the random number.
  • the first information may include a random number and A-KID, and the first MAC may be used to verify the legitimacy of the random number and A-KID.
  • the method of generating the first MAC can be found in the description of Example 1. For the sake of brevity, it will not be described again here.
  • the first MAC may be generated based on the first key and the first information. After receiving the first information and the first MAC, the terminal device can use the first key and the first information to generate the first MAC'. The terminal device compares the first MAC' with the first MAC. If the first MAC' is consistent with the first MAC, the first MAC verification passes and the first information has not been tampered with; if the first MAC' is inconsistent with the first MAC, Then the first MAC verification fails and the first information is tampered with.
  • the first MAC may be generated by AAnF or AF, which is not specifically limited in the embodiment of the present application.
  • the first MAC is generated by AAnF.
  • AAnF can send the first MAC to the terminal device through AF.
  • AAnF may generate a random number, and generate a first K AF and a first MAC (also called MAC AAnF ) based on the random number.
  • the AAnF sends a first K AF update request reply message to the AF, where the first K AF update request reply message includes the first MAC.
  • the first K AF update request reply message includes the first K AF , the validity period of the first K AF , UE-ID, A-KID, random number, and first MAC.
  • the first MAC is generated by AF.
  • AAnF may not generate the first MAC, that is, AAnF generates a random number, and generates the first K AF based on the random number.
  • the AAnF sends a first K AF update request reply message to the AF, and the first K AF update request reply message does not include the first MAC.
  • the first K AF update request reply message includes the first K AF , the validity period of the first K AF , the UE-ID, the A-KID, and the random number.
  • the AF may generate the first MAC (also called MAC AF ).
  • the second K AF update request message sent by the AF to the terminal device may also include the AF-ID.
  • the second K AF update request message may also include a K AF update indication indicator (K AF ChangeInd), which is used to instruct the terminal device to update the K AF .
  • the AF may also encrypt and/or integrity protect the second K AF update request message.
  • the AF may encrypt and/or integrity protect the second K AF update request message using the first K AF .
  • the AF may use the first K AF to encrypt the second K AF update request message.
  • the terminal device may use the first K AF to decrypt the second K AF update request message.
  • the AF may use the first K AF to perform integrity protection on the second K AF update request message.
  • the AF may generate MAC 4 based on the first K AF and second K AF update request messages.
  • the AF may send a second K AF update request message along with MAC 4 to the terminal device.
  • the terminal device may generate MAC 4' according to the second K AF update request message and the first K AF . If MAC 4 and MAC 4' are consistent, the terminal device can confirm that the second K AF update request message is complete and has not been tampered with. If MAC 4 and MAC 4' are inconsistent, the terminal device can confirm that the second K AF update request message is incomplete and its integrity is destroyed.
  • the first K AF can be understood as the shared key to generate the MAC.
  • the algorithm used by the AF to encrypt and/or integrity protect the second K AF update request message may be defined in the protocol or any algorithm negotiated between the AF and the terminal device.
  • the algorithm may be an algorithm supported by the AF, so that the AF may use the algorithm to encrypt and/or integrity protect the first K AF update request message.
  • the second K AF update request message may also include the first algorithm identifier.
  • the first algorithm identifier may be an algorithm identifier supported by AF.
  • the first algorithm identification may include an encryption algorithm identification and/or an integrity protection algorithm identification.
  • the first algorithm identifier may refer to an algorithm identifier for encrypting the second K AF update request message and/or an algorithm identifier for integrity protection.
  • step S650 if the first MAC is generated based on K AKMA , the terminal device can first verify the first MAC. If the first MAC verification passes, the terminal device generates the first K AF ; if the first MAC verification fails, then The terminal device may refuse to generate the first K AF . If the first MAC is generated based on the first K AF , the terminal device may first generate the first K AF and then verify the first MAC based on the first K AF .
  • the terminal device may send a second K AF update request reply message to the AF, and the second K AF update request reply message may be used to indicate that the K AF update is completed, see step S660.
  • the AF After receiving the second K AF update request reply message sent by the terminal device, the AF can determine that the session establishment with the terminal device is completed.
  • the second K AF update request reply message may also be called a session establishment response message.
  • the terminal device may also encrypt and/or integrity protect the second K AF update request reply message.
  • the terminal device may use the first K AF to encrypt and/or integrity protect the second K AF update request reply message.
  • the terminal device can use the first K AF to encrypt the second K AF update request reply message.
  • the AF can use the first K AF to encrypt the second K AF update request reply message. Decrypt.
  • the terminal device may use the first K AF to perform integrity protection on the second K AF update request reply message.
  • the terminal device may generate the MAC 5 based on the first K AF and the second K AF update request reply message.
  • the terminal device may send a second K AF update request reply message along with MAC 5 to the AF.
  • the AF may generate MAC 5' based on the second K AF update request reply message and the first K AF . If MAC5 and MAC 5' are consistent, the AF can confirm that the second K AF update request reply message is complete and has not been tampered with. If MAC 5 and MAC 5' are inconsistent, the AF can confirm that the second K AF update request reply message is incomplete and its integrity is destroyed.
  • the first K AF can be understood as the shared key to generate the MAC.
  • the AF Before sending the first K AF update request message to the AAnF, the AF may also receive a session establishment request sent by the terminal device, see step S602.
  • the session establishment request may include a second parameter, and the second parameter may include one or more of the following: UE-ID, AF-ID, and A-KID. This second parameter can be used by AF to find the corresponding K AF .
  • the AF may also determine the K AF corresponding to the second parameter based on the second parameter. If the AF detects that the validity period of the K AF has expired, the AF may send a session establishment response to the terminal device.
  • the session establishment response may include the above-mentioned second K AF update request message, as shown in step S640 in Figure 6.
  • the session establishment response may also include indication information, and the indication information may be used to indicate the reason why the session establishment fails. For example, the reason for the session establishment failure may be that the validity period of the K AF expires.
  • the indication information may be used to indicate the expiration of the validity period of the K AF , or the indication information includes a K AF update identifier of the K AF expiration.
  • the terminal device may also encrypt and/or integrity protect the session establishment request.
  • the terminal device may use the K AF to be updated to encrypt and/or integrity protect the session establishment request.
  • the terminal device can use the K AF to be updated to encrypt the session establishment request.
  • the terminal device can use the K AF to be updated to decrypt the session establishment request.
  • the terminal device can use the K AF to be updated to perform integrity protection on the session establishment request.
  • the terminal device may generate MAC 3 based on the K AF to be updated and the session establishment request.
  • the end device can send a session establishment request to the AF along with MAC 3.
  • AF can generate MAC 3' according to the session establishment request and the K AF to be updated. If MAC 3 and MAC 3' are consistent, AF can confirm that the session establishment request is complete and has not been tampered with. If MAC 3 and MAC 3' are inconsistent, the AF can confirm that the session establishment request is incomplete and its integrity is compromised.
  • the K AF to be updated can be understood as the shared key for generating the MAC.
  • the terminal device and the AF may not update the first K AF immediately, but may wait until The first K AF is updated after the current session ends to ensure the continuity of communication between the terminal device and the AF.
  • the terminal device and the AF can generate the first TLS session session key based on the first K AF . That is, the end device and the AF can encrypt the session using the first TLS session session key.
  • the terminal device and AF can generate a second TLS session based on the first K AF key.
  • the second TLS session key is different from the first TLS session key.
  • the terminal device and the AF can generate different TLS session keys based on the first K AF , so that the terminal device and the AF can continue to communicate using the different TLS session keys to ensure communication security.
  • AAnF and AF can communicate directly or through network exposure function (NEF), that is, messages transmitted between AAnF and AF can be forwarded by NEF.
  • NEF network exposure function
  • the second K AF update request message and the second K AF update request reply message can be forwarded by NEF.
  • the first K AF update request message and the first K AF update request reply message can be forwarded by NEF.
  • Figure 9 is a schematic structural diagram of a device for generating a key provided by an embodiment of the present application.
  • the device 900 shown in Figure 9 may be the first device described above, and the first device may be a terminal device or an AAnF.
  • the apparatus 900 may include a generating unit 910.
  • the generating unit 910 is configured to generate a first K AF based on a random number, where the first K AF is used for communication between the terminal device and the application function AF.
  • the apparatus 900 further includes: a sending unit 920, configured to send first information and a first message authentication code MAC to the AF or the second device, where the first MAC is a
  • the information is obtained by performing integrity protection.
  • the first information includes one or more of the key identification of K AKMA and the random number.
  • the first device is one of the terminal device and the AAnF.
  • the second device is the other one of the terminal device and the AAnF.
  • the first MAC is obtained by performing integrity protection on the first information using the first K AF .
  • the first MAC is generated based on a first parameter, and the first parameter includes one or more of the following: the random number, the length of the random number, K AF to be updated, The length of the K AF to be updated, the first K AF , the key identifier of the latest KAKMA , the length of the key identifier of the latest KAKMA , the latest KAKMA , and constants.
  • the sending unit 920 is configured to: send a first K AF update request reply message to the AF, where the first K AF update request reply message includes the first information and the first MAC, so that the AF sends the first information and the first MAC to the second device through a second K AF update request message.
  • the first device is the AAnF
  • the first K AF update request reply message further includes one or more of the following information: the first K AF , the first K AF validity period and terminal device identification.
  • the apparatus 900 further includes: a receiving unit, configured to receive the first K AF update request message sent by the AF; and the generating unit 910, configured to respond to the first K AF update request message to generate the random number.
  • the first K AF update request message includes the key identification of K AKMA , and the generating unit is used to:
  • the random number is generated.
  • the first device is the terminal device
  • the apparatus 900 further includes: a sending unit configured to send a session establishment request to the AF, where the session establishment request includes a second parameter, so The second parameter includes one or more of the following: the identification of the terminal device, the identification of the AF, and the key identification of the K AKMA ; the receiving unit is used to receive the session establishment response sent by the AF, and the session The first K AF update request message is included in the establishment response.
  • the session establishment request uses the K AF to be updated for encryption and/or integrity protection.
  • the first K AF update request message includes indication information, and the indication information is used to indicate that the validity period of the K AF has expired.
  • the first K AF update request message uses the K AF to be updated for encryption and/or integrity protection.
  • the first K AF update request message includes a first algorithm identifier
  • the first algorithm identifier includes an encryption algorithm identifier and/or an integrity protection algorithm identifier
  • the device 900 further includes: a decryption unit , used to decrypt and/or verify the integrity of the first K AF update request message using the algorithm corresponding to the first algorithm identifier.
  • the generating unit 910 is configured to generate the first K AF based on the latest KAKMA in the first device and the random number.
  • the generating unit 910 is configured to: generate the first K AF based on the latest KAKMA in the first device, the random number and a third parameter, wherein the third parameter Including one or more of the following: the length of the random number, the identifier of AF, the length of the identifier of AF, and a constant.
  • the first device is the terminal device
  • the generating unit 910 is configured to: generate a first transport layer security protocol TLS session key based on the first K AF ; if the first The validity period of K AF expires and the session between the terminal device and the AF has not ended, then based on the first K AF , a second TLS session key is generated, and the second TLS session key is the same as The first TLS session key is different; the device 900 further includes a communication unit configured to communicate with the AF based on the second TLS session key.
  • the AAnf and the AF communicate through the network opening function NEF.
  • Figure 10 is a schematic structural diagram of a device for generating a key provided by an embodiment of the present application.
  • the apparatus 1000 shown in Figure 10 may be the second device described above, and the second device may be a terminal device or an AAnF.
  • the device 1000 may include a receiving unit 1010 and a generating unit 1020.
  • the receiving unit 1010 is configured to receive a random number sent by a first device, which is one of the authentication and key management anchor functions AAnF of a terminal device and an application, and the second device is the terminal. device and another one of the AAnF.
  • the generating unit 1020 is configured to generate a first K AF based on the random number, where the K AF is used for communication between the terminal device and the application function AF.
  • the receiving unit 1010 is further configured to: receive the first information and the first message authentication code MAC sent by the AF, where the first information includes the random number and the key identification of K AKMA One or more of the above, the first MAC is obtained by performing integrity protection on the first information; the device 1000 further includes a verification unit for verifying the first MAC.
  • the verification unit is configured to verify the first MAC using the first K AF .
  • the generating unit 1020 is configured to: generate the first K AF based on the random number if the first MAC verification passes.
  • the first MAC is generated based on a first parameter, and the first parameter includes one or more of the following: the random number, the length of the random number, K AF to be updated, The length of the K AF to be updated, the first K AF , the key identifier of the latest KAKMA , the length of the key identifier of the latest KAKMA , the latest KAKMA , and constants.
  • the second device is the terminal device, and the first MAC is generated by the AF.
  • the first MAC is generated by the first device, and the receiving unit 1010 is configured to: receive a second K AF update request message sent by the AF, the second K AF update request message including the first information and the first MAC, the first information and the first MAC in the second K AF update request message are replied by the first device through the first K AF update request message The message is sent to the AF.
  • the second device is the terminal device, and the second K AF update request message uses the first K AF for encryption and/or integrity protection.
  • the second K AF update request message includes a first algorithm identifier
  • the first algorithm identifier includes an encryption algorithm identifier and/or an integrity protection algorithm identifier
  • the device 1000 further includes: a decryption unit , used to decrypt and/or integrity verify the second K AF update request message using the algorithm corresponding to the first algorithm identifier.
  • the first device is the AAnF
  • the first K AF update request reply message further includes one or more of the following information: the first K AF , the first K AF validity period and terminal device identification.
  • the random number is generated by the first device upon receipt of the first K AF update request message sent by the AF.
  • the first K AF update request message includes the key identifier of KAKMA
  • the random number is the key identifier of KAKMA in the first K AF update request message and the key identifier of KAKMA . Generated when the historical K AKMA key identification in the first device is consistent.
  • the second device is a terminal device
  • the apparatus 1000 further includes: a sending unit configured to send a session establishment request to the AF, so that the AF sends the first session establishment request to the AAnF.
  • K AF update request message the session establishment request includes a second parameter
  • the second parameter includes one or more of the following: an identification of the terminal device, an identification of the AF, and a key identification of the K AKMA .
  • the session establishment request uses the K AF to be updated for encryption and/or integrity protection.
  • the first K AF update request message includes indication information, and the indication information is used to indicate that the validity period of the K AF has expired.
  • the generating unit 1020 is configured to generate the first K AF based on the latest KAKMA in the second device and the random number.
  • the generating unit 1020 is configured to: generate the first K AF based on the latest KAKMA in the second device, the random number and a third parameter, wherein the third parameter Including one or more of the following: the length of the random number, the identifier of AF, the length of the identifier of AF, and a constant.
  • the second device is the terminal device
  • the generating unit 1020 is configured to: generate a first transport layer security protocol TLS session key based on the first K AF ; if the first The validity period of K AF expires and the session between the terminal device and the AF has not ended, then based on the first K AF , a second TLS session key is generated, and the second TLS session key is the same as The first TLS session key is different; the device 1000 further includes a communication unit configured to communicate with the AF based on the second TLS session key.
  • the AAnf and the AF communicate through the network opening function NEF.
  • FIG. 11 is a schematic structural diagram of a device for generating a key provided by an embodiment of the present application.
  • the device 1100 shown in FIG. 11 may be the AF described above.
  • the device 1100 may include a receiving unit 1110.
  • the receiving unit 1110 is configured to receive the first K AF sent by the AAnF, where the first K AF is generated by the AAnF based on a random number, and the first K AF is used for communication between the AF and the terminal device.
  • the receiving unit 1110 is configured to: receive the first information and the first message authentication code MAC sent by the first device, where the first MAC is obtained by performing integrity protection on the first information,
  • the first information includes one or more of the key identification of K AKMA and the random number, wherein the first device is the terminal device or the AAnF.
  • the first device is the terminal device, and the device further includes a verification unit 1120, configured to verify the first MAC.
  • the first information and the first MAC are sent by the first device to the AF through a first K AF update request reply message.
  • the receiving unit 1110 is configured to receive a first K AF update request reply message sent by the first device, where the first K AF update request reply message includes first information, and the first information includes K One or more of the key identification of AKMA and the random number, the first device is the AAnF, and the device 1100 further includes a protection unit for integrity protection of the first information, Obtain the first MAC.
  • the first device is the AAnF
  • the first K AF update request reply message also includes one or more of the following information: the key identification of the latest K AKMA , the first -K AF , the validity period of the first K AF , and the identification of the terminal device.
  • the first K AF update request reply message also includes a key identifier of KAKMA , and the key identifier of KAKMA is used by the second device to verify the validity of the random number. verify.
  • the apparatus 1100 further includes: a sending unit configured to send a second K AF update request message to a second device, where the second K AF update request message includes the first information and the third A MAC; wherein the first device is one of the terminal device and the AAnF, and the second device is the other of the terminal device and the AAnF.
  • the second device is a terminal device, and the second K AF update request message uses the first K AF for encryption and/or integrity protection.
  • the second K AF update request message also includes a first algorithm identifier
  • the first algorithm identifier includes an encryption algorithm identifier and/or an integrity protection algorithm identifier
  • the second K AF update request message The message is encrypted and/or integrity protected using the first algorithm identifier.
  • the first MAC is obtained by performing integrity protection on the first information using the first K AF .
  • the first MAC is generated based on a first parameter, and the first parameter includes one or more of the following: the random number, the length of the random number, K AF to be updated, The length of the K AF to be updated, the first K AF , the key identifier of the latest KAKMA , the length of the key identifier of the latest KAKMA , the latest KAKMA , and constants.
  • the apparatus 1100 further includes: a sending unit, configured to send a first K AF update request message to the first device, where the first K AF update request message is used to trigger the first device Generate said random number.
  • the receiving unit 1110 is configured to receive a session establishment request sent by the terminal device, where the session establishment request includes a second parameter, and the second parameter includes one or more of the following: The identity of the terminal device, the identity of the AF, and the key identity of K AKMA ; the device 1100 also includes a sending unit for sending a session establishment response to the first device, where the session establishment response includes the first K AF update request message.
  • the session establishment request uses the K AF to be updated for encryption and/or integrity protection.
  • the first K AF update request message includes indication information, and the indication information is used to indicate that the validity period of the K AF has expired.
  • the first device is a terminal device, and the first K AF update request message uses the K AF to be updated for encryption and/or integrity protection.
  • the first K AF update request message includes a first algorithm identifier
  • the first algorithm identifier includes an encryption algorithm identifier and/or an integrity protection algorithm identifier
  • the first K AF update request message Use the algorithm corresponding to the first algorithm identification to perform encryption and/or integrity protection.
  • the first K AF is generated by the AAnF based on the latest K AKMA in the AAnF and the random number.
  • the first K AF is generated by the AAnF based on the latest KAKMA in the AAnF, the random number and a third parameter, wherein the third parameter includes one of the following Or more: the length of the random number, the identifier of AF, the length of the identifier of AF, and a constant.
  • the apparatus 1100 further includes: a generating unit configured to generate a first transport layer security protocol TLS session key based on the first K AF ; if the validity period of the first K AF expires, While the session between the terminal device and the AF has not ended, a second TLS session key is generated based on the first K AF , and the second TLS session key is the same as the first TLS session key.
  • the keys are different; a communication unit, configured to communicate with the terminal device based on the second TLS session key.
  • the AAnf and the AF communicate through the network opening function NEF.
  • Figure 12 is a schematic structural diagram of a device for generating a key according to an embodiment of the present application.
  • the dashed line in Figure 12 indicates that the unit or module is optional.
  • the device 1200 can be used to implement the method described in the above method embodiment.
  • Device 1200 may be a chip, terminal device, AF or AAnF.
  • Apparatus 1200 may include one or more processors 1210.
  • the processor 1210 can support the device 1200 to implement the method described in the foregoing method embodiments.
  • the processor 1210 may be a general-purpose processor or a special-purpose processor.
  • the processor may be a central processing unit (CPU).
  • the processor can also be another general-purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), or an off-the-shelf programmable gate array (FPGA) Or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
  • DSP digital signal processor
  • ASIC application specific integrated circuit
  • FPGA off-the-shelf programmable gate array
  • a general-purpose processor may be a microprocessor or the processor may be any conventional processor, etc.
  • Apparatus 1200 may also include one or more memories 1220.
  • the memory 1220 stores a program, which can be executed by the processor 1210, so that the processor 1210 executes the method described in the foregoing method embodiment.
  • the memory 1220 may be independent of the processor 1210 or integrated in the processor 1210.
  • Device 1200 may also include a transceiver 1230.
  • Processor 1210 may communicate with other devices or chips through transceiver 1230.
  • the processor 1210 can transmit and receive data with other devices or chips through the transceiver 1230.
  • An embodiment of the present application also provides a computer-readable storage medium for storing a program.
  • the computer-readable storage medium can be applied in the terminal or network device provided by the embodiments of the present application, and the program causes the computer to execute the methods performed by the terminal or network device in various embodiments of the present application.
  • An embodiment of the present application also provides a computer program product.
  • the computer program product includes a program.
  • the computer program product can be applied in the terminal or network device provided by the embodiments of the present application, and the program causes the computer to execute the methods performed by the terminal or network device in various embodiments of the present application.
  • An embodiment of the present application also provides a computer program.
  • the computer program can be applied to the terminal or network device provided by the embodiments of the present application, and the computer program causes the computer to execute the methods performed by the terminal or network device in various embodiments of the present application.
  • B corresponding to A means that B is associated with A, and B can be determined based on A.
  • determining B based on A does not mean determining B only based on A.
  • B can also be determined based on A and/or other information.
  • the size of the sequence numbers of the above-mentioned processes does not mean the order of execution.
  • the execution order of each process should be determined by its functions and internal logic, and should not be used in the embodiments of the present application.
  • the implementation process constitutes any limitation.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请提供了一种生成密钥的方法及装置,能够解决K AF被重复使用的问题。该方法包括:第一设备基于随机数,生成第一K AF,所述第一K AF用于终端设备与AF之间的通信,所述第一设备为终端设备或AAnF。

Description

生成密钥的方法及装置 技术领域
本申请涉及通信技术领域,并且更为具体地,涉及一种生成密钥的方法及装置。
背景技术
应用功能(application function,AF)网元和终端设备之间可以使用K AF进行加密通信,以保证通信的安全性。K AF通常具有有效期,在K AF的有效期到期后,需要对K AF进行更新。目前,K AF的更新需要终端设备重新进行主认证,这种更新方式比较复杂。如果不进行新的主认证,则重新生成K AF与更新之前的K AF相同,会导致K AF被重复使用的问题。
发明内容
本申请提供一种生成密钥的方法及装置,能够解决K AF被重复使用的问题。
第一方面,提供了一种生成密钥的方法,包括:第一设备基于随机数,生成第一K AF,所述第一K AF用于终端设备与AF之间的通信,所述第一设备为终端设备或AAnF。
第二方面,提供了一种生成密钥的方法,包括:第二设备接收第一设备发送的随机数,所述第一设备为终端设备和AAnF中的一个,所述第二设备为所述终端设备和所述AAnF中的另一个;所述第二设备基于所述随机数,生成第一K AF,所述第一K AF用于所述终端设备与AF之间的通信。
第三方面,提供了一种生成密钥的方法,包括:AF接收AAnF发送的第一K AF,所述第一K AF是所述AAnF基于随机数生成的,所述第一K AF用于所述AF与终端设备之间的通信。
第四方面,提供了一种生成密钥的装置,所述装置为第一设备,所述第一设备为终端设备或AAnF,所述装置包括:生成单元,用于基于随机数,生成第一K AF,所述第一K AF用于终端设备与AF之间的通信。
第五方面,提供了一种生成密钥的装置,所述装置为第二设备,所述装置包括:接收单元,用于接收第一设备发送的随机数,所述第一设备为终端设备和AAnF中的一个,所述第二设备为所述终端设备和所述AAnF中的另一个;生成单元,用于基于所述随机数,生成第一K AF,所述第一K AF用于所述终端设备与AF之间的通信。
第六方面,提供了一种生成密钥的装置,所述装置为AF,所述装置包括:接收单元,用于接收AAnF发送的第一K AF,所述第一K AF是所述AAnF基于随机数生成的,所述第一K AF用于所述AF与终端设备之间的通信。
第七方面,提供一种生成密钥的装置,包括存储器和处理器,所述存储器用于存储程序,所述处理器用于调用所述存储器中的程序,以执行如第一方面至第三方面中任一方面所述的方法。
第八方面,提供一种装置,包括处理器,用于从存储器中调用程序,以执行如第一方面至第三方面中任一方面所述的方法。
第九方面,提供一种芯片,包括处理器,用于从存储器调用程序,使得安装有所述芯片的设备执行如第一方面至第三方面中任一方面所述的方法。
第十方面,提供一种计算机可读存储介质,其上存储有程序,所述程序使得计算机执行如第一方面至第三方面中任一方面所述的方法。
第十一方面,提供一种计算机程序产品,包括程序,所述程序使得计算机执行如第一方面至第三方面中任一方面所述的方法。
第十二方面,提供一种计算机程序,所述计算机程序使得计算机执行如第一方面至第三方面中任一方面所述的方法。
本申请在生成密钥K AF的过程中,通过引入随机数,从而生成不同的K AF。由于随机数是变化的,在每次需要生成K AF时,可以生成不同的随机数。进一步地,基于不同的随机数,可以生成不同的K AF,从而可以避免重新生成的K AF与更新之前的K AF相同的问题。另外,由于在生成K AF的过程中引入了随机数,从而也可以在终端设备没有进行新的主认证的情况下实现对K AF的更新,从而可以降低K AF更新的复杂性。
附图说明
图1A-图1C是可应用本申请实施例的通信系统的示例图。
图2为基于主认证生成K AKMA的流程示意图。
图3为基于K AKMA生成K AF的流程示意图。
图4是本申请实施例提供的一种生成密钥的方法的流程示意图。
图5是本申请实施例提供的另一种生成密钥的方法的流程示意图。
图6是本申请实施例提供的另一种生成密钥的方法的流程示意图。
图7是本申请实施例提供的另一种生成密钥的方法的流程示意图。
图8是本申请实施例提供的另一种生成密钥的方法的流程示意图。
图9是本申请实施例提供的一种生成密钥的装置的示意性结构图。
图10是本申请实施例提供的另一种生成密钥的装置的示意性结构图。
图11是本申请实施例提供的另一种生成密钥的装置的示意性结构图。
图12是本申请实施例提供的装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。针对本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例的技术方案可以应用于各种通信系统,例如:全球移动通讯(global system of mobile communication,GSM)系统、码分多址(code division multiple access,CDMA)系统、宽带码分多址(wideband code division multiple access,WCDMA)系统、通用分组无线业务(general packet radio service,GPRS)、长期演进(long term evolution,LTE)系统、先进的长期演进(advanced long term evolution,LTE-A)系统、新无线(new radio,NR)系统、NR系统的演进系统、非授权频谱上的LTE(LTE-based access to unlicensed spectrum,LTE-U)系统、非授权频谱上的NR(NR-based access to unlicensed spectrum,NR-U)系统、NTN系统、通用移动通信系统(universal mobile telecommunication system,UMTS)、无线局域网(wireless local area networks,WLAN)、无线保真(wireless fidelity,WiFi)、第五代通信(5th-generation,5G)系统或其他通信系统,例如未来的通信系统,如第六代移动通信系统,又如卫星通信系统等。
通常来说,传统的通信系统支持的连接数有限,也易于实现,然而,随着通信技术的发展,移动通信系统将不仅支持传统的通信,还将支持例如,设备到设备(device to device,D2D)通信,机器到机器(machine to machine,M2M)通信,机器类型通信(machine type communication,MTC),车辆间(vehicle to vehicle,V2V)通信,或车联网(vehicle to everything,V2X)通信等,本申请实施例也可以应用于这些通信系统。
本申请实施例中的通信系统可以应用于载波聚合(carrier aggregation,CA)场景,也可以应用于双连接(dual connectivity,DC)场景,还可以应用于独立(standalone,SA)布网场景。
本申请实施例中的通信系统可以应用于非授权频谱,其中,非授权频谱也可以认为是共享频谱;或者,本申请实施例中的通信系统也可以应用于授权频谱,其中,授权频谱也可以认为是专用频谱。
本申请实施例可应用于NTN系统,也可应用于地面通信网络(terrestrial networks,TN)系统。作为示例而非限定,NTN系统包括基于NR的NTN系统和基于IoT的NTN系统。
本申请实施例结合网络设备和终端设备描述了各个实施例,其中,终端设备也可以称为用户设备(user equipment,UE)、接入终端、用户单元、用户站、移动站、移动台(mobile station,MS)、移动终端(mobile Terminal,MT)、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置等。
在本申请实施例中,终端设备可以是WLAN中的站点(STATION,ST),可以是蜂窝电话、无绳电话、会话启动协议(session initiation protocol,SIP)电话、无线本地环路(wireless local loop,WLL)站、个人数字处理(personal digital assistant,PDA)设备、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、车载设备、可穿戴设备、下一代通信系统例如NR网络中的终端设备,或者未来演进的公共陆地移动网络(public land mobile network,PLMN)网络中的终端设备等。
在本申请实施例中,终端设备可以是指向用户提供语音和/或数据连通性的设备,可以用于连接人、物和机,例如具有无线连接功能的手持式设备、车载设备等。本申请的实施例中的终端设备可以是手机(mobile phone)、平板电脑(Pad)、笔记本电脑、掌上电脑、移动互联网设备(mobile internet device,MID)、可穿戴设备,虚拟现实(virtual reality,VR)设备、增强现实(augmented reality,AR)设备、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety) 中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等。可选地,UE可以用于充当基站。例如,UE可以充当调度实体,其在V2X或D2D等中的UE之间提供侧行链路信号。比如,蜂窝电话和汽车利用侧行链路信号彼此通信。蜂窝电话和智能家居设备之间通信,而无需通过基站中继通信信号。
在本申请实施例中,终端设备可以部署在陆地上,包括室内或室外、手持、穿戴或车载;也可以部署在水面上(如轮船等);还可以部署在空中(例如飞机、气球和卫星上等)。
在本申请实施例中,终端设备可以是手机(mobile phone)、平板电脑(pad)、带无线收发功能的电脑、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制(industrial control)中的无线终端设备、无人驾驶(self driving)中的无线终端设备、远程医疗(remote medical)中的无线终端设备、智能电网(smart grid)中的无线终端设备、运输安全(transportation safety)中的无线终端设备、智慧城市(smart city)中的无线终端设备或智慧家庭(smart home)中的无线终端设备等。本申请实施例所涉及的终端设备还可以称为终端、用户设备(user equipment,UE)、接入终端设备、车载终端、工业控制终端、UE单元、UE站、移动站、移动台、远方站、远程终端设备、移动设备、UE终端设备、无线通信设备、UE代理或UE装置等。终端设备也可以是固定的或者移动的。
作为示例而非限定,在本申请实施例中,该终端设备还可以是可穿戴设备。可穿戴设备也可以称为穿戴式智能设备,是应用穿戴式技术对日常穿戴进行智能化设计、开发出可以穿戴的设备的总称,如眼镜、手套、手表、服饰及鞋等。可穿戴设备即直接穿在身上,或是整合到用户的衣服或配件的一种便携式设备。可穿戴设备不仅仅是一种硬件设备,更是通过软件支持以及数据交互、云端交互来实现强大的功能。广义穿戴式智能设备包括功能全、尺寸大、可不依赖智能手机实现完整或者部分的功能,例如:智能手表或智能眼镜等,以及只专注于某一类应用功能,需要和其它设备如智能手机配合使用,如各类进行体征监测的智能手环、智能首饰等。
本申请实施例中的网络设备可以是用于与终端设备通信的设备,该网络设备也可以称为接入网设备或无线接入网设备,如网络设备可以是基站。本申请实施例中的网络设备可以是指将终端设备接入到无线网络的无线接入网(radio access network,RAN)节点(或设备)。基站可以广义的覆盖如下中的各种名称,或与如下名称进行替换,比如:节点B(NodeB)、演进型基站(evolved NodeB,eNB)、下一代基站(next generation NodeB,gNB)、中继站、接入点、传输点(transmitting and receiving point,TRP)、发射点(transmitting point,TP)、主站MeNB、辅站SeNB、多制式无线(MSR)节点、家庭基站、网络控制器、接入节点、无线节点、接入点(access piont,AP)、传输节点、收发节点、基带单元(base band unit,BBU)、射频拉远单元(remote radio unit,RRU)、有源天线单元(active antenna unit,AAU)、射频头(remote radio head,RRH)、中心单元(central unit,CU)、分布式单元(distributed unit,DU)、定位节点等。基站可以是宏基站、微基站、中继节点、施主节点或类似物,或其组合。基站还可以指用于设置于前述设备或装置内的通信模块、调制解调器或芯片。基站还可以是移动交换中心以及设备到设备D2D、车辆外联(vehicle-to-everything,V2X)、机器到机器(machine-to-machine,M2M)通信中承担基站功能的设备、6G网络中的网络侧设备、未来的通信系统中承担基站功能的设备等。基站可以支持相同或不同接入技术的网络。本申请的实施例对网络设备所采用的具体技术和具体设备形态不做限定。
基站可以是固定的,也可以是移动的。例如,直升机或无人机可以被配置成充当移动基站,一个或多个小区可以根据该移动基站的位置移动。在其他示例中,直升机或无人机可以被配置成用作与另一基站通信的设备。
在一些部署中,本申请实施例中的网络设备可以是指CU或者DU,或者,网络设备包括CU和DU。gNB还可以包括AAU。
网络设备和终端设备可以部署在陆地上,包括室内或室外、手持或车载;也可以部署在水面上;还可以部署在空中的飞机、气球和卫星上。本申请实施例中对网络设备和终端设备所处的场景不做限定。
作为示例而非限定,在本申请实施例中,网络设备可以具有移动特性,例如网络设备可以为移动的设备。在本申请一些实施例中,网络设备可以为卫星、气球站。例如,卫星可以为低地球轨道(low earth orbit,LEO)卫星、中地球轨道(medium earth orbit,MEO)卫星、地球同步轨道(geostationary earth orbit,GEO)卫星、高椭圆轨道(High Elliptical Orbit,HEO)卫星等。在本申请一些实施例中,网络设备还可以为设置在陆地、水域等位置的基站。
在本申请实施例中,网络设备可以为小区提供服务,终端设备通过该小区使用的传输资源(例如,频域资源,或者说,频谱资源)与网络设备进行通信,该小区可以是网络设备(例如基站)对应的小区,小区可以属于宏基站,也可以属于小小区(small cell)对应的基站,这里的小小区可以包括:城市小区(metro cell)、微小区(micro cell)、微微小区(pico cell)、毫微微小区(femto cell)等,这些小小 区具有覆盖范围小、发射功率低的特点,适用于提供高速率的数据传输服务。
示例性的,图1A为本申请实施例提供的一种通信系统的架构示意图。如图1A所示,通信系统100可以包括网络设备110,网络设备110可以是与终端设备120(或称为通信终端、终端)通信的设备。网络设备110可以为特定的地理区域提供通信覆盖,并且可以与位于该覆盖区域内的终端设备进行通信。
图1A示例性地示出了一个网络设备和两个终端设备,在本申请一些实施例中,该通信系统100可以包括多个网络设备并且每个网络设备的覆盖范围内可以包括其它数量的终端设备,本申请实施例对此不做限定。
示例性的,图1B为本申请实施例提供的另一种通信系统的架构示意图。请参见图1B,包括终端设备1101和卫星1102,终端设备1101和卫星1102之间可以进行无线通信。终端设备1101和卫星1102之间所形成的网络还可以称为NTN。在图1B所示的通信系统的架构中,卫星1102可以具有基站的功能,终端设备1101和卫星1102之间可以直接通信。在系统架构下,可以将卫星1102称为网络设备。在本申请一些实施例中,通信系统中可以包括多个网络设备1102,并且每个网络设备1102的覆盖范围内可以包括其它数量的终端设备,本申请实施例对此不做限定。
示例性的,图1C为本申请实施例提供的另一种通信系统的架构示意图。请参见图1C,包括终端设备1201、卫星1202和基站1203,终端设备1201和卫星1202之间可以进行无线通信,卫星1202与基站1203之间可以通信。终端设备1201、卫星1202和基站1203之间所形成的网络还可以称为NTN。在图1C所示的通信系统的架构中,卫星1202可以不具有基站的功能,终端设备1201和基站1203之间的通信需要通过卫星1202的中转。在该种系统架构下,可以将基站1203称为网络设备。在本申请一些实施例中,通信系统中可以包括多个网络设备1203,并且每个网络设备1203的覆盖范围内可以包括其它数量的终端设备,本申请实施例对此不做限定。
需要说明的是,图1A-图1C只是以示例的形式示意本申请所适用的系统,当然,本申请实施例所示的方法还可以适用于其它系统,例如,5G通信系统、LTE通信系统等,本申请实施例对此不作具体限定。
在本申请一些实施例中,图1A-图1C所示的无线通信系统还可以包括移动性管理实体(mobility management entity,MME)、接入与移动性管理功能(access and mobility management function,AMF)、应用程序的身份验证和密钥管理(authentication and key management for applications,AKMA)、身份验证服务器功能(authentication server function,AUSF)、UDM、AKMA锚点功能(AKMA anchor function,AAnF)、AF等其他网络实体,本申请实施例对此不作限定。
应理解,本申请实施例中网络/系统中具有通信功能的设备可称为通信设备。以图1A示出的通信系统100为例,通信设备可包括具有通信功能的网络设备110和终端设备120,网络设备110和终端设备120可以为上文所述的具体设备,此处不再赘述;通信设备还可包括通信系统100中的其他设备,例如网络控制器、移动管理实体等其他网络实体,本申请实施例中对此不做限定。
应理解,在本申请的实施例中提到的“指示”可以是直接指示,也可以是间接指示,还可以是表示具有关联关系。举例说明,A指示B,可以表示A直接指示B,例如B可以通过A获取;也可以表示A间接指示B,例如A指示C,B可以通过C获取;还可以表示A和B之间具有关联关系。
在本申请实施例的描述中,术语“对应”可表示两者之间具有直接对应或间接对应的关系,也可以表示两者之间具有关联关系,也可以是指示与被指示、配置与被配置等关系。
本申请实施例中的“配置”可以包括通过系统消息、无线资源控制(radio resource control,RRC)信令和媒体接入控制单元(media access control control element,MAC CE)中的至少一种来配置。
在本申请一些实施例中,"预定义的"或"预设的"可以通过在设备(例如,包括终端设备和网络设备)中预先保存相应的代码、表格或其他可用于指示相关信息的方式来实现,本申请对于其具体的实现方式不做限定。比如预定义的可以是指协议中定义的。
在本申请一些实施例中,所述"协议"可以指通信领域的标准协议,例如可以包括LTE协议、NR协议以及应用于未来的通信系统中的相关协议,本申请对此不做限定。
为了便于理解,先对本申请实施例涉及的一些相关技术知识进行介绍。以下相关技术作为可选方案与本申请实施例的技术方案可以进行任意结合,其均属于本申请实施例的保护范围。本申请实施例包括以下内容中的至少部分内容。
AKMA密钥架构
UE与AF之间可以使用K AF密钥进行通信,K AF可用于对通信进行安全保护。K AF密钥的生成过程涉及到多个功能网元,如AMF、AUSF、UDM、AAnF、AF等,下面对这些功能网元进行介绍。
AMF主要用于移动性管理和接入管理等,可以用于实现MME功能中除会话管理之外的其他功能, 例如,合法监听以及接入授权/鉴权等功能。
AUSF用于鉴权服务、产生密钥、实现对UE的双向鉴权,支持统一的鉴权框架。在本申请实施例中,AUSF主要用于在UE和网络之间进行相互认证,并生成安全密钥以便在后续的流程中使用。
UDM可用于处理UE标识,接入鉴权,注册以及移动性管理等。
AF用于进行应用层的数据路由,接入网络开放功能,与策略框架交互进行策略控制等。
AAnF用于生成AKMA锚点密钥K AKMA,以及应用密钥K AF。AAnF和UE可以采用相同的方式生成K AF。在生成K AF后,AAnF可以将生成的K AF发送至AF。由此,AF和UE可以基于相同的密钥K AF进行通信,以保证通信的安全性。
下面结合图2和图3,对K AF的生成过程进行介绍。K AF的生成过程可以分为两个阶段,第一阶段为基于主认证生成K AKMA的阶段,如图2所示;第二阶段为基于K AKMA生成K AF的阶段,如图3所示。这两个阶段在后文有时也称为密钥协商过程。下面对这两个阶段分别进行介绍。
参见图2,在步骤S201、UE和AUSF执行主认证流程。
主认证,可以理解为UE在向核心网注册的过程中,UE对AMF和/或AUSF进行鉴权,AUSF对UE进行鉴权的过程。该过程也称为双向鉴权。该过程具体可以是在注册过程中,核心网设备和UE通过消息交互,UE和核心网设备分别将对方提供的待验证参数,与自己生成的另一个参数进行对比。若对方提供的待验证参数与自身生成的参数相同,则UE和核心网设备之间的认证通过AUSF和UDM进行交互,获取认证信息(参见步骤S202和步骤S203)。例如,认证凭证(AKA认证向量(authentication vector,AV)),认证方法使用Nudm_UEAuthentication_Get Request服务操作。
在步骤S202,AUSF向UDM发送UE认证请求。该UE认证请求中可以包括UE的标识信息。UE的标识信息可以为订阅永久标识符(subscription permanent identifier,SUPI)或订阅隐藏标识符(subscription concealed identifier,SUCI)、通用公共订阅标识符(generic public subscription identifier,GPSI)中的一种或多种。
在步骤S203,UDM向AUSF发送UE认证响应。该UE认证响应中可以包括AV。在一些实施例中,该UE认证响应中还可以包括AKMA Ind和/或RID。在一些实施例中,UDM还可以向AUSF指示是否需要为UE生成AKMA密钥。
在步骤S204,在完成主认证后,UE与AUSF获得共有密钥K AUSF。如果AUSF收到UDM的指示信息,且该指示信息指示AUSF需要为UE生成AKMA密钥,则AUSF存储K AUSF,并在主认证成功后,基于K AUSF生成AKMA锚定密钥K AKMA和K AKMA的密钥标识(AKMA key identity,A-KID)。可以理解的是,K AKMA和A-KID具有对应关系,A-KID可以唯一地标识与其对应的K AKMA。另外,UE也可以采用与AUSF相同的计算方式,生成K AKMA和A-KID。也就是说,UE基于K AUSF生成K AKMA和A-KID的方式,与AUSF基于K AUSF生成K AKMA和A-KID的方式相同。K AKMA是UE粒度的密钥,即每个UE有其专有的K AKMA
在步骤S205,AUSF生成K AKMA和A-KID后,使用Naanf_AKMA_AnchorKey_Regfister将最新的密钥材料发送至AAnF,最新的密钥材料例如可以包括UE的标识信息(如SUPI)、A-KID以及K AKMA。AAnF存储最新的密钥材料。
在步骤S206,AAnF使用Naanf_AKMA_AnchorKey_Regfister向AUSF发送响应消息。
参见图3,在步骤S301、在成功完成主认证以及生成K AKMA后,UE可以向AF发送应用程序会话建立请求。该应用程序会话建立请求中可以包括A-KID。
在步骤S302,AF向AAnF发送AKMA应用密钥获取请求。该AKMA应用密钥获取请求中可以包括A-KID以及AF的标识(AF identity,AF-ID)。该A-KID为应用程序会话建立请求中的A-KID。在一些实施例中,AKMA应用密钥获取请求中还可以包括对UE的标识(UE identity,UE-ID)的请求。UE-ID包括SUPI、SUCI、GPSI中的一种或多种。
在步骤S303,AAnF接收到AKMA应用密钥获取请求后,可以基于A-KID确定对应的K AKMA,并基于K AKMA生成密钥K AF
在步骤S304,AAnF向AF发送K AF。例如,AAnF可以向AF发送AKMA应用密钥获取响应。该应用密钥获取响应中可以包括K AF、K AF的有效期(K AFexpTime),UE-ID等。在一些实施例中,如果步骤S302中的AKMA应用密钥获取请求中包括对UE-ID的请求,则AKMA应用密钥获取响应可以包括UE-ID。如果步骤S302中的AKMA应用密钥获取请求中不包括UE-ID的请求,则AKMA应用密钥获取响应可以不包括UE-ID。在接收到AKMA应用密钥获取响应后,AF便可以获得与UE进行通信的密钥K AF
在步骤S305,AF向UE发送应用程序会话建立响应。
可以理解的是,UE也可以采用与AAnF相同的方式生成K AF,即,UE基于K AKMA生成K AF的方 式与AAnF基于K AKMA生成K AF的方式相同。由此,UE和AF可以使用相同的密钥K AF进行通信。
UE和AF获得对称密钥K AF后,可以基于K AF生成传输层安全协议(transport layer security,TLS)预主密钥(TLS premaster secret)。进一步地,UE和AF可以基于TLS预主密钥生成TLS会话密钥(TLS session key)。TLS会话密钥可用于UE和AF之间的通信。
本申请实施例对上述密钥(如K AKMA、A-KID、K AF等)的生成方式不做具体限定。例如,可以使用密钥派生函数(key derivation function,KDF)来生成上述密钥。KDF可以为任意一种能够满足计算安全的密钥派生函数,例如KDF可以为HMAC-SHA-256或HMAC-SM3。下面以KDF为例,对密钥的生成方式进行举例说明。
例如,从K AUSF生成K AKMA时,可以使用以下参数作为KDF的输入S:
-FC=0xXX(例如0x80);
-P0=“AKMA”;
-L0=“AKMA”的长度(如0x00 0x04);
-P1=SUPI;
-L1=SUPI的长度;
输入的密钥(key)为K AUSF
又例如,从K AKMA生成K AF时,可以使用以下参数作为KDF的输入S:
-FC=0xXX(例如0x82);
-P0=AF_ID;
-L0=AF_ID的长度;
输入的密钥为K AKMA
其中,AF_ID=AF的FQDN||Ua*安全协议标识符。
再例如,A-KID可以包括RID和A-TID两部分。其中,RID包含在SUPI中,A-TID可以基于K AUSF生成。当从K AUSF生成A-TID时,可以使用以下参数作为KDF的输入S:
-FC=0xXX(例如0x81);
-P0=“A-TID”;
-L0=“A-TID”的长度(如0x00 0x05);
-P1=SUPI;
-L1=SUPI的长度;
输入的密钥为K AUSF
为了使得终端设备与AF之间的通信安全得到有效保障,通常会为K AF设置有效期。K AF的有效期表示K AF可以持续不变的时长。在K AF的有效期内,UE和AF可以使用该K AF进行通信。在K AF的有效期到期后,UE需要重新生成新的K AF
由上文描述的密钥生成过程可知,K AF的更新取决于K AUSF。只有对K AUSF进行了更新,K AF才能得到更新。如果K AUSF没有发生变化,则K AF不会发生变化。而K AUSF的更新取决于主认证,只有经过了新的主认证,才能生成不同的K AUSF。也就是说,目前,UE是通过进行新的主认证来更新K AF。在K AF的有效期到期后,UE可以通过进行新的主认证生成新的K AUSF,进而使用新的K AUSF生成新的K AKMA,并使用新的K AKMA生成更新后的K AF
但是,上述更新K AF的方案中,UE在每次需要更新K AF时,都需要重复执行图2和图3所示的流程,这会增加更新K AF的复杂性。
为了降低更新K AF的复杂性,一些通信协议,如TS 33.535的5.2中规定,在K AF到期后,可以基于现有的K AKMA重新生成K AF
但是,基于现有的生成密钥的方式,如果UE不重新进行主认证,则K AKMA不会发生变化;K AKMA不发生变化,则K AF不会发生变化。也就是说,如果K AF到期时,UE没有重新进行主认证,则UE基于现有的K AKMA会生成与更新之前相同的K AF,这将会导致K AF被重复使用的问题。而UE使用过期的K AF与AF进行通信,将会对通信的安全性产生影响。
为了解决上述问题,本申请实施例提供了一种新的生成密钥K AF的方式,在生成密钥K AF的过程中,通过引入随机数(Nonce),从而生成不同的K AF。例如,在进行K AF更新时,可以基于随机数生成K AF,从而使得更新前后的K AF不同。由于随机数是变化的,在每次需要更新K AF时,可以生成不同的随机数。进一步地,基于不同的随机数,可以生成不同的K AF,从而实现对K AF的更新,以增强UE与AF之间数据传输的安全性。
随机数的生成方式有多种,本申请实施例对此不做具体限定。作为一个示例,随机数可以通过随机数生成器(random number generator)生成。在每次需要生成K AF时,由随机数生成器生成一个随机数。
作为另一个示例,随机数可以通过计数器(count)生成。随机数的取值随着更新次数的增加而逐渐增加。每增加一次更新次数,随机数的取值加1。例如,在第一次生成K AF时,随机数的取值为0;在第二次生成K AF时,随机数的取值为1;在第三次生成K AF时,随机数的取值为2,以此类推。当然,第一次生成K AF时,随机数的取值也可以为其他值,如1,2或3等。
作为再一个示例,随机数可以通过计时器(timer)生成。在对K AF进行更新时,随机数的取值为计时器的取值。计时器可以从0开始计时。例如,在第一次生成K AF时,随机数的取值为0,此时计时器开始计时;在之后生成K AF时,随机数的取值为计时器的取值。随机数的取值可以为计时器的小时数、分钟数或秒数等。如果随机数的取值为计时器的小时数,则随机数的取值可以为0~24之间。例如,计时器的时间为14时10分25秒,则随机数取值为14。当然,计时器也可以仅记录小时数,而不记录分钟数和秒数,如计时器的时间为14时。如果随机数的取值为计时器的分钟数,则随机数的取值可以为0~60之间。例如,计时器的时间为14时10分25秒,则随机数的取值为10。当然,计时器也可以仅记录分钟数,而不记录小时数和秒数,如计时器的时间为10分。如果随机数的取值为计时器的秒数,则随机数的取值可以为0~60之间。例如,计时器的时间为14时10分25秒,则随机数的取值为25。当然,计时器的也可以仅记录秒数,而不记录小时数和分钟数,如计时器的时间为25秒。当然,计时器也可以从其他时间(如当前绝对时间)开始计时,本申请实施例对此不做具体限定。
下面结合图4,对本申请实施例的方案进行详细介绍。图4所示的方法可以由终端设备或AAnF执行。终端设备和AAnF可以基于相同的方式,生成第一K AF。图4所示的方法可以包括步骤S410。
在步骤S410、第一设备基于随机数,生成第一K AF。第一设备为终端设备或AAnF。
随机数可以是在从K AUSF生成K AKMA的过程中引入,也可以是在从K AKMA生成第一K AF的过程中引入,本申请实施例对此不做具体限定。下文主要针对从K AKMA生成第一K AF的过程中,引入随机数的方案进行介绍。
基于随机数,生成第一K AF的方式有多种,本申请实施例对此不做具体限定。作为一个示例,可以仅基于随机数,生成第一K AF。作为另一个示例,为了与现有协议具有较好的兼容性,尽量减少对现有协议的改动,可以在原有的计算方式(如方式一)中增加随机数这个参数,从而生成第一K AF。例如,可以基于K AKMA以及随机数,生成第一K AF。作为又一个示例,随机数也可以结合除K AKMA之外的其他参数,来生成第一K AF。作为再一个示例,可以基于随机数,生成另外一个参数,然后再基于该参数,生成第一K AF。上述多种实现方式可以单独使用,也可以相互结合使用,本申请实施例对此不做具体限定。
下面对基于K AKMA以及随机数,生成第一K AF的实现方式进行举例说明。在一些实施例中,终端设备或AAnF可以基于随机数、K AKMA以及第三参数,共同生成第一K AF。第三参数可以包括以下中的一种或多种:随机数、AF-ID、AF-ID的长度以及常量FC。
以上文描述的KDF生成第一K AF为例,本申请实施例可以在KDF的输入参数中增加随机数,从而生成第一K AF。在该情况下,KDF的输入S可以如下,其中,P1和L1为增加的与随机数有关的输入参数。
FC=0xXX(例如0x82);
P0=AF_ID;
L0=AF_ID的长度;
P1=Nonce;
L1=Nonce的长度;
输入的密钥为K AKMA
由上可知,终端设备或AAnF可以基于随机数、随机数的长度、AF-ID、AF-ID的长度、K AKMA以及常量FC,共同生成第一。
可以理解的是,上述参数仅是一个示例,不对本申请实施例的方案造成限定。只要KDF的输入参数中包括随机数即可。例如,KDF的输入参数中可以仅包括上述P1和L1,而不包括P0和L0。又例如,输入的密钥可以换成K AKMA之外的其他参数,如待更新的K AF
本申请实施例的第二设备也可以基于与第一设备相同的方式,生成第一K AF,即第二设备也可以基于随机数,生成第一K AF。第一设备为终端设备和AAnF中的一个,第二设备为终端设备和AAnF中的另一个。换句话说,如果第一设备为终端设备,则第二设备为AAnF;如果第一设备为AAnF,则第二设备为终端设备。
本申请实施例中的随机数是第一设备生成的,即随机数可以是终端设备生成的,也可以是AAnF生成的。第二设备可以接收第一设备生成的随机数,并基于该随机数,生成第一K AF
为了方便描述,下文以第一设备分别为终端设备和AAnF,对本申请实施例的方案进行详细描述。
示例一、第一设备为终端设备,第二设备为AAnF
下面结图5和图6,对本申请实施例的方案进行详细介绍。图6和图5的区别在于步骤S540、步骤S550以及步骤S565,下文将会详细介绍。
在步骤S510、AF向终端设备发送第一K AF更新请求消息。该第一K AF更新请求消息用于请求更新K AF。在步骤S520、接收到第一K AF更新请求消息后,终端设备可以响应于该第一K AF更新请求消息,生成随机数。进一步地,终端设备可以基于该随机数,生成第一K AF
在一些实施例中,AF发送第一K AF更新请求消息时,可能会存在以前的消息被重放的情况,这显然并不是真正的用于更新K AF的消息。基于此,AF在发送第一K AF更新请求消息时,可以在第一K AF更新请求消息中携带A-KID,以使终端设备对该A-KID的合法性进行验证。接收到第一K AF更新请求消息后,终端设备可以对第一K AF更新请求消息中的A-KID的合法性进行验证。只有在A-KID的合法性验证通过的情况下,终端设备才生成随机数。如果A-KID的合法性验证不通过,终端设备可以拒绝生成随机数,即拒绝对K AF进行更新。A-KID合法可以指该A-KID为终端设备上一次使用过的A-KID,或者,该A-KID为终端设备中最新的A-KID。
如果在对K AF进行更新时,终端设备进行了新的主认证,由此,终端设备生成了一个新的A-KID。在该情况下,第一K AF更新请求消息中的A-KID与终端设备中最新的A-KID不同,而是与终端设备上次使用过的A-KID一致。如果在对K AF进行更新时,终端设备没有进行新的主认证,则第一K AF更新请求消息中的A-KID与终端设备中最新的A-KID一致。
本申请实施例的方案可以适用于终端设备没有进行新的主认证的情况,也适用于终端设备进行了新的主认证的情况,也就是说,在对K AF进行更新时,不论终端设备是否进行了新的主认证,终端设备都可以基于随机数,生成第一K AF
当然,在一些实施例中,如果终端设备进行了新的主认证,终端设备可以基于传统的方式(如图2和图3所示的方式),利用新的K AKMA,生成第一K AF
终端设备是否进行了新的主认证,可以基于第一K AF更新请求消息中的A-KID进行判断。如果第一K AF更新请求消息中的A-KID与终端设备中最新的A-KID一致,则表示终端设备没有进行新的主认证;如果第一K AF更新请求消息中的A-KID与终端设备中最新的A-KID不一致,则表示终端设备进行了新的主认证。
为了保证第一K AF更新请求消息的安全性,AF还可以对第一K AF更新请求消息进行加密和/或完整性保护。AF可以使用待更新的K AF对第一K AF更新请求消息进行加密和/或完整性保护。例如,AF可以使用待更新的K AF对第一K AF更新请求消息进行加密,终端设备接收到第一K AF更新请求消息后,可以使用待更新的K AF对第一K AF更新请求消息进行解密。
又例如,AF可以使用待更新的K AF对第一K AF更新请求消息进行完整性保护。AF可以基于待更新的K AF和第一K AF更新请求消息生成MAC 1。AF可以向终端设备发送第一K AF更新请求消息以及MAC1。终端设备可以根据第一K AF更新请求消息以及待更新的K AF,生成MAC 1’。如果MAC 1和MAC 1’一致,则终端设备可以确认第一K AF更新请求消息完整,未被篡改。如果MAC 1和MAC 1’不一致,则终端设备可以确认第一K AF更新请求消息不完整,其完整性遭到破坏。其中,待更新的K AF可以理解为生成MAC的共享密钥。
AF对第一K AF更新请求消息进行加密和/或完整性保护的算法可以是协议中定义的,或者是AF与终端设备协商的任一种算法。该算法可以为AF支持的算法,使得AF可以使用该算法对第一K AF更新请求消息进行加密和/或完整性保护。
在一些实施例中,第一K AF更新请求消息中还可以包括第一算法标识。该第一算法标识可以为AF支持的算法标识。该第一算法标识可以包括加密算法标识和/或完整性保护算法标识。第一算法标识可以指对第一K AF更新请求消息进行加密的算法标识和/或完整性保护的算法标识。在接收到第一K AF更新请求消息后,终端设备可以使用第一算法标识对应的算法对第一K AF更新请求消息进行解密和/或完整性检验。
本申请实施例对加密算法的类型不做具体限定。例如,该加密算法可以是5G中使用的加密算法,如128-NEAI、128-NEA2、128-NEA3。又例如,该加密算法可以是4G中使用的加密算法,如128-EEAI、128-EEA2、128-EEA。
本申请实施例对完整性保护算法的类型不做具体限定。例如,该完整性保护算法可以是5G中使用的完整性保护算法,如128-NIAI、128-NIA2、128-NIA3。又例如,该完整性保护算法可以是4G中使用的完整性保护算法,如128-EIAI、128-EIA2、128-EIA3。
上述对加密算法和完整性保护算法类型的举例也同样适用于后文的描述。
为了使得AAnF生成的K AF与终端设备生成的K AF相同,终端设备还可以将生成的随机数发送给 AAnF。终端设备可以将随机数直接发送给AAnF,或者,终端设备也可以通过AF将随机数发送给AAnF。例如,终端设备可以将随机数先发送给AF,然后由AF将随机数转发至AAnF。
在步骤S530、终端设备向AF发送第一K AF更新请求回复消息,该第一K AF更新请求回复消息中包括随机数。在步骤S540、接收到第一K AF更新请求回复消息后,AF可以向AAnF发送第二K AF更新请求消息,该第二K AF更新请求消息中携带随机数。
在步骤S550、AAnF可以基于与终端设备相同的方式,生成第一K AF,即AAnF基于随机数,生成第一K AF。进一步地,在步骤S560、AAnF可以向AF发送第二K AF更新请求回复消息,该第二K AF更新请求回复消息中包括第一K AF。在一些实施例中,该第二K AF更新请求回复消息中还可以包括第一K AF的有效期、UE-ID等信息。UE-ID可以为SUPI、SUCI、GPSI中的一种或多种。
在步骤S570、AF接收到AAnF发送的第二K AF更新请求回复消息后,可以向终端设备发送会话密钥建立响应,该会话密钥建立响应可以为会话密钥重建响应。由此,终端设备与AF之间的会话建立完成。
在一些实施例中,在步骤S520、终端设备在生成随机数的同时,还会生成第一MAC(也称为MAC UE)。其中,第一MAC是对第一信息进行完整性保护得到的,第一MAC可以用于确定第一信息是否被篡改。第一信息包括随机数和A-KID中的一种或多种。其中,A-KID可以为终端设备中最新的A-KID。例如,第一信息可包括随机数,第一MAC可用于对随机数的合法性进行验证。又例如,第一信息可以包括随机数和A-KID,第一MAC可用于对随机数和A-KID的合法性进行验证。
终端设备可以基于第一密钥以及第一信息,生成第一MAC。其中,第一密钥可以为第一K AKMA或第一K AF。下面对第一MAC的生成方式进行举例说明。
第一MAC可以基于第一参数生成。第一参数可以包括以下中的一种或多种:随机数、随机数的长度、待更新的K AF、待更新的K AF的长度、第一K AF、A-KID、A-KID的长度、K AKMA、常量。
上述A-KID可以为最新A-KID,K AKMA可以为最新K AKMA。终端设备在每次进行主认证之后,都会生成一个新的K AKMA。并且,每次主认证生成的K AKMA都不同。最新K AKMA可以理解为终端设备最后一次或者最近一次生成的K AKMA。同样地,最新A-KID也可以理解为终端设备最后一次或者最近一次生成的A-KID。
在一些实施例中,AF向AAnF发送的第二更新请求消息中除了包括第一信息(随机数和/或A-KID)和第一MAC之外,还可以包括AF-ID。
第一参数中的常量可以是协议中约定的,或者也可以是终端设备与AAnF或AF提前约定的,本申请实施例对此不做具体限定。
第一MAC的生成方式有多种,本申请实施例对此不做具体限定。例如,本申请实施例可以使用KDF来生成第一MAC。
在一些实施例中,第一密钥为KAKMA,在使用KDF生成第一MAC的过程中,可以使用以下参数作为KDF的输入:
-FC=0xXX;
-P0=随机数;
-L0=随机数的长度;
-P1=待更新的K AF
-L1=待更新的K AF的长度;
-P2=A-KID;
-L2=A-KID的长度;
输入密钥为KAKMA。
在该情况下,第一MAC基于常量、随机数、随机数的长度、待更新的K AF、待更新的K AF的长度、A-KID、A-KID的长度以及KAKMA生成。
其中,FC为常量。在一些实施例中,FC的后两位可以是协议中约定的。
上述参数中,P0和L0中的随机数可用于保护消息的完整性。例如,AF可以通过第二K AF更新请求消息发送随机数。AAnF可以基于该第二K AF更新请求消息中的随机数生成MAC。如果随机数被攻击者篡改,将会导致AAnF生成的MAC与AF发来的MAC UE不一致,从而能够检测出第二K AF更新请求消息不完整。如果出现这种情况,AAnF可以拒绝对K AF进行更新。
P1和L1中的待更新的K AF可用于避免AF将以前的消息重放。如果AF将以前的消息重放,那么AAnF基于待更新的K AF生成的MAC与AF发来的MAC UE将会不同,在该情况下,AAnF可以拒绝K AF的更新。
P2和L2中的A-KID可以为最新A-KID。P2和L2中的A-KID可用于保护消息的完整性。例如, AF可以通过第二K AF更新请求消息发送A-KID。AAnF可以基于该第二K AF更新请求消息中的A-KID生成MAC。如果A-KID被攻击者篡改,将会导致AAnF生成的MAC与AF发来的MAC UE不一致,从而能够检测出第二K AF更新请求消息不完整。在该情况下,AAnF可以拒绝对K AF进行更新。
在另一些实施例中,第一密钥为第一KAF,在使用KDF生成MAC的过程中,可以使用以下参数作为KDF的输入:
-FC=0xXX;
-P0=随机数;
-L0=随机数的长度;
-P1=待更新的K AF
-L1=待更新的K AF的长度;
-P2=A-KID;
-L2=A-KID的长度;
输入密钥为第一KAF。
在该情况下,第一MAC基于常量、随机数、随机数的长度、待更新的K AF、待更新的K AF的长度、A-KID、A-KID的长度以及第一KAF生成。其中,FC、P0、L0、P1、L1、P2、L2的相关介绍可以参见上文的描述,为了简洁,此处不再介绍。
由上文的描述可知,P1和L1可用于抵抗重放冲击。如果将第一KAF作为输入密钥,第一KAF也具有抵抗重放冲击的作用。因此,在一些实施例中,也可以不使用P1和L1这两个参数,即可以使用以下参数作为KDF的输入:
-FC=0xXX;
-P0=随机数;
-L0=随机数的长度;
-P1=A-KID;
-L1=A-KID的长度;
输入密钥为第一KAF。
在该情况下,第一MAC基于常量、随机数、随机数的长度、A-KID、A-KID的长度以及第一KAF生成。
第一MAC可以是由AAnF进行验证的,也可以是由AF进行验证的,或者是由AAnF和AF共同验证的,本申请实施例对此不作具体限定。
作为一个示例,第一MAC由AAnF进行验证。终端设备可以将第一信息以及第一MAC发送给AAnF。AAnF接收到第一信息以及第一MAC后,会对第一MAC进行验证。AAnF可以使用第一密钥以及第一信息,生成第一MAC’。AAnF将第一MAC’与第一MAC进行比较,如果第一MAC’与第一MAC一致,则第一MAC验证通过,第一信息未被篡改;如果第一MAC’与第一MAC不一致,则第一MAC验证不通过,第一信息被篡改。
终端设备将第一信息以及第一MAC发送给AAnF,可以指终端设备通过AF将第一信息以及第一MAC发送给AAnF。例如,参见图5,在步骤S530、终端设备向AF发送第一K AF更新请求回复消息,该第一K AF更新请求回复消息中包括第一信息以及第一MAC。在步骤S540、AF向AAnF发送第二K AF更新请求消息,该第二K AF更新请求消息包括第一信息以及第一MAC。当然,在一些实施例中,第二K AF更新请求消息中还可以包括AF-ID。
如果第一MAC是基于K AKMA生成的,即第一密钥为K AKMA,则在步骤S550、AAnF可以先对第一MAC进行验证。在第一MAC验证通过的情况下,AAnF基于随机数,生成第一K AF。如果第一MAC是基于第一K AF生成的,即第一密钥为第一K AF,则在步骤S550、AAnF可以先基于随机数,生成第一K AF。然后再基于第一K AF,对第一MAC进行验证。如果第一MAC验证通过,则AAnF向AF发送第二K AF更新请求回复消息(参见步骤S560);如果第一MAC验证不通过,则AAnF可以不向AF发送第二K AF更新请求回复消息。
作为另一个示例,第一MAC由AF进行验证。如果第一MAC是基于第一K AF生成的,即第一密钥为第一K AF,则AF可以在接收到AAnF发送的第二K AF更新请求回复消息(步骤S560)后,再对第一MAC进行验证。如果第一MAC由AF进行验证,则在步骤S550、AAnF可不对第一MAC进行验证,而直接基于随机数,生成第一K AF
参见图6,假设第一MAC是基于第一K AF生成的,在步骤S530、AF接收终端设备发送的第一K AF更新请求回复消息,该第一K AF更新请求回复消息中包括第一信息以及第一MAC。在步骤S540、AF向AAnF发送第二K AF更新请求消息,该第二K AF更新请求消息中可以不包括第一MAC。如第二K AF 更新请求消息包括A-KID、AF-ID和随机数。在步骤S560、AF接收AAnF发送的第二K AF更新请求回复消息,该第二K AF更新请求回复消息中包括第一K AF。在步骤S565、AF对第一MAC进行检查。AF可以使用第一K AF以及第一信息,生成第一MAC’。AF将第一MAC’与第一MAC进行比较,如果第一MAC’与第一MAC一致,则第一MAC验证通过,第一信息未被篡改;如果第一MAC’与第一MAC不一致,则第一MAC验证不通过,第一信息被篡改。
如果第一MAC验证通过,则AF可以向终端设备发送会话密钥建立响应。如果第一MAC验证未通过,则AF可以不向终端设备发送会话密钥建立响应。
为了保证会话密钥建立响应的安全性,AF还可以对会话密钥建立响应进行加密和/或完整性保护。AF可以使用第一K AF对会话密钥建立响应进行加密和/或完整性保护。例如,AF可以使用第一K AF对会话密钥建立响应进行加密,终端设备接收到会话建立请求后,可以使用第一K AF对会话密钥建立响应进行解密。
又例如,AF可以使用第一K AF对会话密钥建立响应进行完整性保护。AF可以基于第一K AF和会话密钥建立响应生成MAC 2。AF可以向终端设备发送会话密钥建立响应以及MAC 2。终端设备可以根据会话密钥建立响应以及第一K AF,生成MAC 2’。如果MAC 2和MAC 2’一致,则终端设备可以确认会话密钥建立响应完整,未被篡改。如果MAC 2和MAC 2’不一致,则终端设备可以确认会话密钥建立响应不完整,其完整性遭到破坏。其中,第一K AF可以理解为生成MAC的共享密钥。
AF在向终端设备发送第一K AF更新请求消息之前,还可以接收终端设备发送的会话建立请求,如图5中的步骤S502。该会话建立请求中可以包括第二参数,该第二参数可以包括以下中的一种或多种:UE-ID、AF-ID以及A-KID。该第二参数可用于AF查找对应的K AF
AF接收到会话建立请求后,还可以基于第二参数,确定与第二参数对应的K AF。如果AF检测到该K AF的有效期到期,则AF可以向终端设备发送会话建立响应。该会话建立响应中可以包含上述第一K AF更新请求消息,如图5中的步骤S510。在一些实施例中,该会话建立响应中还可以包括指示信息,该指示信息可用于指示会话建立失败的原因。例如,会话建立失败的原因可以为K AF的有效期到期,在该情况下,该指示信息可用于指示K AF的有效期到期,或者该指示信息包含K AF到期的K AF更新标识。
为了保证会话建立请求的安全性,终端设备还可以对会话建立请求进行加密和/或完整性保护。终端设备可以使用待更新的K AF对会话建立请求进行加密和/或完整性保护。例如,终端设备可以使用待更新的K AF对会话建立请求进行加密,AF接收到会话建立请求后,可以使用待更新的K AF对会话建立请求进行解密。
又例如,终端设备可以使用待更新的K AF对会话建立请求进行完整性保护。终端设备可以基于待更新的K AF和会话建立请求生成MAC 3。终端设备可以向AF发送会话建立请求以及MAC 3。AF可以根据会话建立请求以及待更新的K AF,生成MAC 3’。如果MAC 3和MAC 3’一致,则AF可以确认会话建立请求完整,未被篡改。如果MAC 3和MAC 3’不一致,则AF可以确认会话建立请求不完整,其完整性遭到破坏。其中,待更新的K AF可以理解为生成MAC的共享密钥。
在一些实施例中,第一K AF的有效期到期时,终端设备和AF之间的会话还未结束,在该情况下,终端设备和AF可以不用立即更新第一K AF,而是可以等到当前的会话结束之后再更新第一K AF,以保证终端设备和AF之间通信的连续性。
由上文的描述可知,在终端设备和AF获得对称密钥第一K AF后,终端设备和AF可以基于该第一K AF,生成第一TLS会话会话密钥。也就是说,终端设备和AF可以使用第一TLS会话会话密钥对会话进行加密。
如果K AF的有效期到期,而终端设备与AF之间的会话还未结束,为了保证终端设备和AF之间通信的安全性,终端设备和AF可以基于第一K AF,生成第二TLS会话密钥。该第二TLS会话密钥与第一TLS会话密钥不同。终端设备与AF可以基于第一K AF,生成不同的TLS会话密钥,使得终端设备与AF之间可以使用该不同的TLS会话密钥继续进行通信,以保证通信的安全性。
示例二、第一设备为AAnF,第二设备为终端设备
下面结合图7和图8,对本申请实施例的方案进行详细介绍。图8和图7的区别在于步骤S620、步骤S630、步骤S635,下文将会详细介绍。
在步骤S610、AF向AAnF发送第一K AF更新请求消息。该第一K AF更新请求消息用于请求更新K AF。在步骤S620,接收到第一K AF更新请求消息后,AAnF可以响应于该第一K AF更新请求消息,生成随机数。进一步地,AAnF可以基于该随机数,生成第一K AF
在一些实施例中,AF发送第一K AF更新请求消息时,可能会存在以前的消息被重放的情况,这显然并不是真正的用于更新K AF的消息。基于此,AF在发送第一K AF更新请求消息时,可以在第一K AF更新请求消息中携带A-KID,以使AAnF对该A-KID的合法性进行验证。接收到第一K AF更新请求消 息后,AAnF可以对第一K AF更新请求消息中的A-KID的合法性进行验证。只有在A-KID的合法性验证通过的情况下,AAnF才生成随机数。如果A-KID的合法性验证不通过,AAnF可以拒绝生成随机数,即拒绝对K AF进行更新。A-KID合法可以指该A-KID为AAnF上一次使用过的A-KID,或者,该A-KID为AAnF中最新的A-KID。
如果在对K AF进行更新时,AAnF和终端设备之间进行了新的主认证,由此,AAnF可以获得一个新的A-KID。在该情况下,第一K AF更新请求消息中的A-KID与AAnF中最新的A-KID不同,而是与AAnF上次使用过的A-KID一致。如果在对K AF进行更新时,AAnF和终端设备之间没有进行新的主认证,则第一K AF更新请求消息中的A-KID与AAnF中最新的A-KID一致。
本申请实施例的方案可以适用于终端设备没有进行新的主认证的情况,也适用于终端设备进行了新的主认证的情况,也就是说,在对K AF进行更新时,不论终端设备是否进行了新的主认证,AAnF都可以基于随机数,生成第一K AF
当然,在一些实施例中,如果终端设备进行了新的主认证,AAnF可以基于传统的方式(如图2和图3所示的方式),利用新的K AKMA,生成第一K AF
对于终端设备是否进行了新的主认证,AAnF可以基于第一K AF更新请求消息中的A-KID进行判断。如果第一K AF更新请求消息中的A-KID与AAnF中最新的A-KID一致,则表示终端设备没有进行新的主认证;如果第一K AF更新请求消息中的A-KID与AAnF中最新的A-KID不一致,则表示终端设备进行了新的主认证。
为了使得终端设备生成的K AF与AAnF生成的K AF相同,AAnF还可以将生成的随机数发送给终端设备。AAnF可以将随机数直接发送给终端设备,或者,AAnF也可以通过AF将随机数发送给终端设备。例如,AAnF可以将随机数先发送给AF,然后由AF将随机数转发至终端设备。
如图6所示,在步骤S630、AAnF向AF发送第一K AF更新请求回复消息,该第一K AF更新请求回复消息中包括随机数。在步骤S640、接收到第一K AF更新请求回复消息后,AF可以向终端设备发送第二K AF更新请求消息,该第二K AF更新请求消息中携带随机数。可选地,该第二K AF更新请求消息也可以为会话建立消息。
在一些实施例中,该第一K AF更新请求回复消息中还可以包括第一K AF。该第一K AF可用于AF与终端设备之间的通信。AF接收到该第一K AF后,可以使用该K AF与终端设备进行通信。
在一些实施例中,该第一K AF更新请求回复消息中还可以包括第一K AF的有效期。该第一K AF的有效期可用于AF判断该第一K AF的到期时间。在第一K AF到期后,AF可以发起更新K AF的流程。
在一些实施例中,该第一K AF更新请求回复消息中还可以包括UE-ID。该UE-ID可以为SUPI、SUCI、GPSI中的一种或多种。
在一些实施例中,在步骤S640,第二K AF更新请求消息中可以包括第一信息以及第一MAC。第一MAC是对第一信息进行完整性保护得到的,第一MAC可以用于确定第一信息是否被篡改。第一信息包括随机数和A-KID中的一种或多种。其中,A-KID可以为AF或AAnF中最新的A-KID。例如,第一信息可包括随机数,第一MAC可用于对随机数的合法性进行验证。又例如,第一信息可以包括随机数和A-KID,第一MAC可用于对随机数和A-KID的合法性进行验证。
第一MAC的生成方式可以参见示例一的描述,为了简洁,此处不再赘述。
第一MAC可以是基于第一密钥以及第一信息生成的。终端设备接收到第一信息以及第一MAC后,可以使用第一密钥以及第一信息,生成第一MAC’。终端设备将第一MAC’与第一MAC进行比较,如果第一MAC’与第一MAC一致,则第一MAC验证通过,第一信息未被篡改;如果第一MAC’与第一MAC不一致,则第一MAC验证不通过,第一信息被篡改。
第一MAC可以是由AAnF生成的,也可以是由AF生成的,本申请实施例对此不作具体限定。
作为一个示例,第一MAC由AAnF生成。AAnF可以通过AF向终端设备发送第一MAC。参见图7,在步骤S620、AAnF可以生成随机数,并基于随机数生成第一K AF以及第一MAC(也称为MAC AAnF)。在步骤S630、AAnF向AF发送第一K AF更新请求回复消息,该第一K AF更新请求回复消息中包括第一MAC。例如,第一K AF更新请求回复消息中包括第一K AF、第一K AF的有效期、UE-ID、A-KID、随机数、第一MAC。
作为另一个示例,第一MAC由AF生成。参见图8,如果第一MAC由AF生成,则在步骤S620、AAnF可以不生成第一MAC,即AAnF生成随机数,以及基于随机数生成第一K AF。在步骤S630、AAnF向AF发送第一K AF更新请求回复消息,该第一K AF更新请求回复消息中不包括第一MAC。例如,第一K AF更新请求回复消息中包括第一K AF、第一K AF的有效期、UE-ID、A-KID、随机数。在步骤S635、在接收到第一K AF更新请求回复消息后,AF可以生成第一MAC(也称为MAC AF)。
在一些实施例中,AF向终端设备发送的第二K AF更新请求消息中除了包括第一信息和第一MAC 之外,还可以包括AF-ID。在一些实施例中,第二K AF更新请求消息中还可以包括K AF更新指示标识(K AFChangeInd),用于指示终端设备对K AF进行更新。
为了保证第二K AF更新请求消息的安全性,AF还可以对第二K AF更新请求消息进行加密和/或完整性保护。AF可以使用第一K AF对第二K AF更新请求消息进行加密和/或完整性保护。例如,AF可以使用第一K AF对第二K AF更新请求消息进行加密,终端设备接收到第二K AF更新请求消息后,可以使用第一K AF对第二K AF更新请求消息进行解密。
又例如,AF可以使用第一K AF对第二K AF更新请求消息进行完整性保护。AF可以基于第一K AF和第二K AF更新请求消息生成MAC 4。AF可以向终端设备发送第二K AF更新请求消息以及MAC 4。终端设备可以根据第二K AF更新请求消息以及第一K AF,生成MAC 4’。如果MAC 4和MAC 4’一致,则终端设备可以确认第二K AF更新请求消息完整,未被篡改。如果MAC 4和MAC 4’不一致,则终端设备可以确认第二K AF更新请求消息不完整,其完整性遭到破坏。其中,第一K AF可以理解为生成MAC的共享密钥。
AF对第二K AF更新请求消息进行加密和/或完整性保护的算法可以是协议中定义的,或者是AF与终端设备协商的任一种算法。该算法可以为AF支持的算法,使得AF可以使用该算法对第一K AF更新请求消息进行加密和/或完整性保护。
在一些实施例中,第二K AF更新请求消息中还可以包括第一算法标识。该第一算法标识可以为AF支持的算法标识。该第一算法标识可以包括加密算法标识和/或完整性保护算法标识。第一算法标识可以指对第二K AF更新请求消息进行加密的算法标识和/或完整性保护的算法标识。在接收到第二K AF更新请求消息后,终端设备可以使用第一算法标识对应的算法对第二K AF更新请求消息进行解密和/或完整性检验。
在步骤S650、如果第一MAC基于K AKMA生成,则终端设备可以先对第一MAC进行验证,如果第一MAC验证通过,则终端设备生成第一K AF;如果第一MAC验证未通过,则终端设备可以拒绝生成第一K AF。如果第一MAC基于第一K AF生成,则终端设备可以先生成第一K AF,然后基于第一K AF对第一MAC进行验证。
进一步地,如果第一MAC验证通过,终端设备可以向AF发送第二K AF更新请求回复消息,该第二K AF更新请求回复消息可用于指示K AF更新完成,参见步骤S660。
AF接收到终端设备发送的第二K AF更新请求回复消息后,可以确定与终端设备之间的会话建立完成。该第二K AF更新请求回复消息也可以称为会话建立响应消息。
为了保证第二K AF更新请求回复消息的安全性,终端设备还可以对第二K AF更新请求回复消息进行加密和/或完整性保护。终端设备可以使用第一K AF对第二K AF更新请求回复消息进行加密和/或完整性保护。例如,终端设备可以使用第一K AF对第二K AF更新请求回复消息进行加密,AF接收到第二K AF更新请求回复消息后,可以使用第一K AF对第二K AF更新请求回复消息进行解密。
又例如,终端设备可以使用第一K AF对第二K AF更新请求回复消息进行完整性保护。终端设备可以基于第一K AF和第二K AF更新请求回复消息生成MAC 5。终端设备可以向AF发送第二K AF更新请求回复消息以及MAC 5。AF可以根据第二K AF更新请求回复消息以及第一K AF,生成MAC 5’。如果MAC5和MAC 5’一致,则AF可以确认第二K AF更新请求回复消息完整,未被篡改。如果MAC 5和MAC 5’不一致,则AF可以确认第二K AF更新请求回复消息不完整,其完整性遭到破坏。其中,第一K AF可以理解为生成MAC的共享密钥。
AF在向AAnF发送第一K AF更新请求消息之前,还可以接收终端设备发送的会话建立请求,参见步骤S602。该会话建立请求中可以包括第二参数,该第二参数可以包括以下中的一种或多种:UE-ID、AF-ID以及A-KID。该第二参数可用于AF查找对应的K AF
AF接收到会话建立请求后,还可以基于第二参数,确定与第二参数对应的K AF。如果AF检测到该K AF的有效期到期,则AF可以向终端设备发送会话建立响应。该会话建立响应中可以包含上述第二K AF更新请求消息,如图6中的步骤S640。在一些实施例中,该会话建立响应中还可以包括指示信息,该指示信息可用于指示会话建立失败的原因。例如,会话建立失败的原因可以为K AF的有效期到期,在该情况下,该指示信息可用于指示K AF的有效期到期,或者该指示信息包含K AF到期的K AF更新标识。
为了保证会话建立请求的安全性,终端设备还可以对会话建立请求进行加密和/或完整性保护。终端设备可以使用待更新的K AF对会话建立请求进行加密和/或完整性保护。例如,终端设备可以使用待更新的K AF对会话建立请求进行加密,AF接收到会话建立请求后,可以使用待更新的K AF对会话建立请求进行解密。
又例如,终端设备可以使用待更新的K AF对会话建立请求进行完整性保护。终端设备可以基于待更新的K AF和会话建立请求生成MAC 3。终端设备可以向AF发送会话建立请求以及MAC 3。AF可以根 据会话建立请求以及待更新的K AF,生成MAC 3’。如果MAC 3和MAC 3’一致,则AF可以确认会话建立请求完整,未被篡改。如果MAC 3和MAC 3’不一致,则AF可以确认会话建立请求不完整,其完整性遭到破坏。其中,待更新的K AF可以理解为生成MAC的共享密钥。
在一些实施例中,第一K AF的有效期到期时,终端设备和AF之间的会话还未结束,在该情况下,终端设备和AF可以不用立即更新第一K AF,而是可以等到当前的会话结束之后再更新第一K AF,以保证终端设备和AF之间通信的连续性。
由上文的描述可知,在终端设备和AF获得对称密钥第一K AF后,终端设备和AF可以基于该第一K AF,生成第一TLS会话会话密钥。也就是说,终端设备和AF可以使用第一TLS会话会话密钥对会话进行加密。
如果K AF的有效期到期,而终端设备与AF之间的会话还未结束,为了保证终端设备和AF之间通信的安全性,终端设备和AF可以基于第一K AF,生成第二TLS会话密钥。该第二TLS会话密钥与第一TLS会话密钥不同。终端设备与AF可以基于第一K AF,生成不同的TLS会话密钥,使得终端设备与AF之间可以使用该不同的TLS会话密钥继续进行通信,以保证通信的安全性。
需要说明的是,AAnF与AF之间可以直接进行通信,也可以通过网络开放功能(network exposure function,NEF)进行通信,即AAnF与AF之间传输的消息可以经过NEF的转发。以图5和图6为例,第二K AF更新请求消息和第二K AF更新请求回复消息可以经过NEF的转发。以图7和图8为例,第一K AF更新请求消息和第一K AF更新请求回复消息可以经过NEF的转发。
上文结合图4至图8,详细描述了本申请的方法实施例,下面结合图9至图12,详细描述本申请的装置实施例。应理解,方法实施例的描述与装置实施例的描述相互对应,因此,未详细描述的部分可以参见前面方法实施例。
图9是本申请实施例提供的一种生成密钥的装置的示意性结构图。图9所示的装置900可以为上文描述的第一设备,第一设备可以为终端设备或AAnF。该装置900可以包括生成单元910。
生成单元910,用于基于随机数,生成第一K AF,所述第一K AF用于终端设备与应用功能AF之间的通信。
在一些实施例中,所述装置900还包括:发送单元920,用于向所述AF或第二设备发送第一信息和第一消息认证码MAC,所述第一MAC是对所述第一信息进行完整性保护得到的,所述第一信息包括K AKMA的密钥标识和所述随机数中的一种或多种,所述第一设备为所述终端设备和所述AAnF中的一个,所述第二设备为所述终端设备和所述AAnF中的另一个。
在一些实施例中,所述第一MAC是使用所述第一K AF对所述第一信息进行完整性保护得到的。
在一些实施例中,所述第一MAC基于第一参数生成,所述第一参数包括以下中的一种或多种:所述随机数、所述随机数的长度、待更新的K AF、待更新的K AF的长度、所述第一K AF、最新K AKMA的密钥标识、最新K AKMA的密钥标识的长度、最新K AKMA、常量。
在一些实施例中,所述发送单元920用于:向所述AF发送第一K AF更新请求回复消息,所述第一K AF更新请求回复消息中包括所述第一信息和所述第一MAC,以使所述AF通过第二K AF更新请求消息向所述第二设备发送所述第一信息和所述第一MAC。
在一些实施例中,所述第一设备为所述AAnF,所述第一K AF更新请求回复消息中还包括以下信息中的一种或多种:所述第一K AF、所述第一K AF的有效期、终端设备的标识。
在一些实施例中,所述装置900还包括:接收单元,用于接收所述AF发送的第一K AF更新请求消息;所述生成单元910,用于响应于所述第一K AF更新请求消息,生成所述随机数。
在一些实施例中,所述第一K AF更新请求消息中包括K AKMA的密钥标识,所述生成单元用于:
在所述第一K AF更新请求消息中的K AKMA的密钥标识与所述第一设备中的历史K AKMA的密钥标识一致的情况下,生成所述随机数。
在一些实施例中,所述第一设备为所述终端设备,所述装置900还包括:发送单元,用于向所述AF发送会话建立请求,所述会话建立请求中包括第二参数,所述第二参数包括以下中的一种或多种:终端设备的标识、AF的标识、K AKMA的密钥标识;所述接收单元,用于接收所述AF发送的会话建立响应,所述会话建立响应中包括所述第一K AF更新请求消息。
在一些实施例中,所述会话建立请求使用待更新的K AF进行加密和/或完整性保护。
在一些实施例中,所述第一K AF更新请求消息中包括指示信息,所述指示信息用于指示K AF的有效期到期。
在一些实施例中,所述第一K AF更新请求消息使用待更新的K AF进行加密和/或完整性保护。
在一些实施例中,所述第一K AF更新请求消息中包括第一算法标识,所述第一算法标识包括加密算法标识和/或完整性保护算法标识;所述装置900还包括:解密单元,用于使用与所述第一算法标识对 应的算法对所述第一K AF更新请求消息进行解密和/或完整性验证。
在一些实施例中,所述生成单元910用于:基于所述第一设备中的最新K AKMA和所述随机数,生成所述第一K AF
在一些实施例中,所述生成单元910用于:基于所述第一设备中的最新K AKMA、所述随机数以及第三参数,生成所述第一K AF,其中,所述第三参数包括以下中的一种或多种:所述随机数的长度、AF的标识以及AF的标识的长度、常量。
在一些实施例中,所述第一设备为所述终端设备,所述生成单元910用于:基于所述第一K AF,生成第一传输层安全协议TLS会话密钥;如果所述第一K AF的有效期到期,而所述终端设备与所述AF之间的会话还未结束,则基于所述第一K AF,生成第二TLS会话密钥,所述第二TLS会话密钥与所述第一TLS会话密钥不同;所述装置900还包括通信单元,用于基于所述第二TLS会话密钥,与所述AF进行通信。
在一些实施例中,所述AAnf与所述AF之间通过网络开放功能NEF进行通信。
图10是本申请实施例提供的一种生成密钥的装置的示意性结构图。图10所示的装置1000可以为上文描述的第二设备,第二设备可以为终端设备或AAnF。该装置1000可以包括接收单元1010和生成单元1020。
接收单元1010,用于接收第一设备发送的随机数,所述第一设备为终端设备和应用程序的身份验证和密钥管理锚点功能AAnF中的一个,所述第二设备为所述终端设备和所述AAnF中的另一个。
生成单元1020,用于基于所述随机数,生成第一K AF,所述K AF用于所述终端设备与应用功能AF之间的通信。
在一些实施例中,所述接收单元1010还用于:接收所述AF发送的第一信息和第一消息认证码MAC,所述第一信息包括所述随机数和K AKMA的密钥标识中的一种或多种,所述第一MAC是对所述第一信息进行完整性保护得到的;所述装置1000还包括验证单元,用于对所述第一MAC进行验证。
在一些实施例中,所述验证单元用于:使用所述第一K AF对所述第一MAC进行验证。
在一些实施例中,所述生成单元1020用于:在所述第一MAC验证通过的情况下,基于所述随机数,生成所述第一K AF
在一些实施例中,所述第一MAC基于第一参数生成,所述第一参数包括以下中的一种或多种:所述随机数、所述随机数的长度、待更新的K AF、待更新的K AF的长度、所述第一K AF、最新K AKMA的密钥标识、最新K AKMA的密钥标识的长度、最新K AKMA、常量。
在一些实施例中,所述第二设备为所述终端设备,所述第一MAC由所述AF生成。
在一些实施例中,所述第一MAC由所述第一设备生成,所述接收单元1010用于:接收所述AF发送的第二K AF更新请求消息,所述第二K AF更新请求消息中包括所述第一信息和所述第一MAC,所述第二K AF更新请求消息中的所述第一信息和所述第一MAC由所述第一设备通过第一K AF更新请求回复消息发送至所述AF。
在一些实施例中,所述第二设备为所述终端设备,所述第二K AF更新请求消息使用所述第一K AF进行加密和/或完整性保护。
在一些实施例中,所述第二K AF更新请求消息中包括第一算法标识,所述第一算法标识包括加密算法标识和/或完整性保护算法标识;所述装置1000还包括:解密单元,用于使用与所述第一算法标识对应的算法对所述第二K AF更新请求消息进行解密和/或完整性验证。
在一些实施例中,所述第一设备为所述AAnF,所述第一K AF更新请求回复消息中还包括以下信息中的一种或多种:所述第一K AF、所述第一K AF的有效期、终端设备的标识。
在一些实施例中,所述随机数是所述第一设备在接收到所述AF发送的第一K AF更新请求消息的触发下生成的。
在一些实施例中,所述第一K AF更新请求消息中包括K AKMA的密钥标识,所述随机数是在所述第一K AF更新请求消息中的K AKMA的密钥标识与所述第一设备中的历史K AKMA的密钥标识一致的情况下生成的。
在一些实施例中,所述第二设备为终端设备,所述装置1000还包括:发送单元,用于向所述AF发送会话建立请求,以使所述AF向所述AAnF发送所述第一K AF更新请求消息,所述会话建立请求中包括第二参数,所述第二参数包括以下中的一种或多种:终端设备的标识、AF的标识、K AKMA的密钥标识。
在一些实施例中,所述会话建立请求使用待更新的K AF进行加密和/或完整性保护。
在一些实施例中,所述第一K AF更新请求消息中包括指示信息,所述指示信息用于指示K AF的有效期到期。
在一些实施例中,所述生成单元1020用于:基于所述第二设备中的最新K AKMA和所述随机数,生成所述第一K AF
在一些实施例中,所述生成单元1020用于:基于所述第二设备中的最新K AKMA、所述随机数以及第三参数,生成所述第一K AF,其中,所述第三参数包括以下中的一种或多种:所述随机数的长度、AF的标识以及AF的标识的长度、常量。
在一些实施例中,所述第二设备为所述终端设备,所述生成单元1020用于:基于所述第一K AF,生成第一传输层安全协议TLS会话密钥;如果所述第一K AF的有效期到期,而所述终端设备与所述AF之间的会话还未结束,则基于所述第一K AF,生成第二TLS会话密钥,所述第二TLS会话密钥与所述第一TLS会话密钥不同;所述装置1000还包括通信单元,用于基于所述第二TLS会话密钥,与所述AF进行通信。
在一些实施例中,所述AAnf与所述AF之间通过网络开放功能NEF进行通信。
图11是本申请实施例提供的一种生成密钥的装置的示意性结构图。图11所示的装置1100可以为上文描述的AF。该装置1100可以包括接收单元1110。
接收单元1110,用于接收AAnF发送的第一K AF,所述第一K AF是所述AAnF基于随机数生成的,所述第一K AF用于所述AF与终端设备之间的通信。
在一些实施例中,所述接收单元1110用于:接收第一设备发送的第一信息和第一消息认证码MAC,所述第一MAC是对所述第一信息进行完整性保护得到的,所述第一信息包括K AKMA的密钥标识、所述随机数中的一种或多种,其中,所述第一设备为所述终端设备或所述AAnF。
在一些实施例中,所述第一设备为所述终端设备,所述装置还包括验证单元1120,用于:对所述第一MAC进行验证。
在一些实施例中,所述第一信息和所述第一MAC由所述第一设备通过第一K AF更新请求回复消息发送至所述AF。
在一些实施例中,所述接收单元1110用于接收第一设备发送的第一K AF更新请求回复消息,所述第一K AF更新请求回复消息包括第一信息,所述第一信息包括K AKMA的密钥标识、所述随机数中的一种或多种,所述第一设备为所述AAnF,所述装置1100还包括保护单元,用于对所述第一信息进行完整性保护,得到所述第一MAC。
在一些实施例中,所述第一设备为所述AAnF,所述第一K AF更新请求回复消息中还包括以下信息中的一种或多种:最新K AKMA的密钥标识、所述第一K AF、所述第一K AF的有效期、终端设备的标识。
在一些实施例中,所述第一K AF更新请求回复消息中还包括K AKMA的密钥标识,所述K AKMA的密钥标识用于所述第二设备对所述随机数的合法性进行验证。
在一些实施例中,所述装置1100还包括:发送单元,用于向第二设备发送第二K AF更新请求消息,所述第二K AF更新请求消息包括所述第一信息和所述第一MAC;其中,所述第一设备为所述终端设备和所述AAnF中的一个,所述第二设备为所述终端设备和所述AAnF中的另一个。
在一些实施例中,所述第二设备为终端设备,所述第二K AF更新请求消息使用所述第一K AF进行加密和/或完整性保护。
在一些实施例中,所述第二K AF更新请求消息中还包括第一算法标识,所述第一算法标识包括加密算法标识和/或完整性保护算法标识,所述第二K AF更新请求消息使用所述第一算法标识进行加密和/或完整性保护。
在一些实施例中,所述第一MAC是使用所述第一K AF对所述第一信息进行完整性保护得到的。
在一些实施例中,所述第一MAC基于第一参数生成,所述第一参数包括以下中的一种或多种:所述随机数、所述随机数的长度、待更新的K AF、待更新的K AF的长度、所述第一K AF、最新K AKMA的密钥标识、最新K AKMA的密钥标识的长度、最新K AKMA、常量。
在一些实施例中,所述装置1100还包括:发送单元,用于向所述第一设备发送第一K AF更新请求消息,所述第一K AF更新请求消息用于触发所述第一设备生成所述随机数。
在一些实施例中,所述接收单元1110用于接收所述终端设备发送的会话建立请求,所述会话建立请求中包括第二参数,所述第二参数包括以下中的一种或多种:终端设备的标识、AF的标识、K AKMA的密钥标识;所述装置1100还包括发送单元,用于向所述第一设备发送会话建立响应,所述会话建立响应中包括所述第一K AF更新请求消息。
在一些实施例中,所述会话建立请求使用待更新的K AF进行加密和/或完整性保护。
在一些实施例中,所述第一K AF更新请求消息中包括指示信息,所述指示信息用于指示K AF的有效期到期。
在一些实施例中,所述第一设备为终端设备,所述第一K AF更新请求消息使用待更新的K AF进行加 密和/或完整性保护。
在一些实施例中,所述第一K AF更新请求消息中包括第一算法标识,所述第一算法标识包括加密算法标识和/或完整性保护算法标识,所述第一K AF更新请求消息使用所述第一算法标识对应的算法进行加密和/或完整性保护。
在一些实施例中,所述第一K AF是所述AAnF基于所述AAnF中的最新K AKMA和所述随机数生成的。
在一些实施例中,所述第一K AF是所述AAnF基于所述AAnF中的最新K AKMA、所述随机数以及第三参数生成的,其中,所述第三参数包括以下中的一种或多种:所述随机数的长度、AF的标识以及AF的标识的长度、常量。
在一些实施例中,所述装置1100还包括:生成单元,用于基于所述第一K AF,生成第一传输层安全协议TLS会话密钥;如果所述第一K AF的有效期到期,而所述终端设备与所述AF之间的会话还未结束,则基于所述第一K AF,生成第二TLS会话密钥,所述第二TLS会话密钥与所述第一TLS会话密钥不同;通信单元,用于基于所述第二TLS会话密钥,与所述终端设备进行通信。
在一些实施例中,所述AAnf与所述AF之间通过网络开放功能NEF进行通信。
图12是本申请实施例的生成密钥的装置的示意性结构图。图12中的虚线表示该单元或模块为可选的。该装置1200可用于实现上述方法实施例中描述的方法。装置1200可以是芯片、终端设备、AF或AAnF。
装置1200可以包括一个或多个处理器1210。该处理器1210可支持装置1200实现前文方法实施例所描述的方法。该处理器1210可以是通用处理器或者专用处理器。例如,该处理器可以为中央处理单元(central processing unit,CPU)。或者,该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
装置1200还可以包括一个或多个存储器1220。存储器1220上存储有程序,该程序可以被处理器1210执行,使得处理器1210执行前文方法实施例所描述的方法。存储器1220可以独立于处理器1210也可以集成在处理器1210中。
装置1200还可以包括收发器1230。处理器1210可以通过收发器1230与其他设备或芯片进行通信。例如,处理器1210可以通过收发器1230与其他设备或芯片进行数据收发。
本申请实施例还提供一种计算机可读存储介质,用于存储程序。该计算机可读存储介质可应用于本申请实施例提供的终端或网络设备中,并且该程序使得计算机执行本申请各个实施例中的由终端或网络设备执行的方法。
本申请实施例还提供一种计算机程序产品。该计算机程序产品包括程序。该计算机程序产品可应用于本申请实施例提供的终端或网络设备中,并且该程序使得计算机执行本申请各个实施例中的由终端或网络设备执行的方法。
本申请实施例还提供一种计算机程序。该计算机程序可应用于本申请实施例提供的终端或网络设备中,并且该计算机程序使得计算机执行本申请各个实施例中的由终端或网络设备执行的方法。
应理解,在本申请实施例中,“与A相应的B”表示B与A相关联,根据A可以确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (134)

  1. 一种生成密钥的方法,其特征在于,包括:
    第一设备基于随机数,生成第一K AF,所述第一K AF用于终端设备与应用功能AF之间的通信,所述第一设备为终端设备或应用程序的身份验证和密钥管理锚点功能AAnF。
  2. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    所述第一设备向所述AF或第二设备发送第一信息和第一消息认证码MAC,所述第一MAC是对所述第一信息进行完整性保护得到的,所述第一信息包括K AKMA的密钥标识和所述随机数中的一种或多种,所述第一设备为所述终端设备和所述AAnF中的一个,所述第二设备为所述终端设备和所述AAnF中的另一个。
  3. 根据权利要求2所述的方法,其特征在于,所述第一MAC是使用所述第一K AF对所述第一信息进行完整性保护得到的。
  4. 根据权利要求2或3所述的方法,其特征在于,所述第一MAC基于第一参数生成,所述第一参数包括以下中的一种或多种:所述随机数、所述随机数的长度、待更新的K AF、待更新的K AF的长度、所述第一K AF、最新K AKMA的密钥标识、最新K AKMA的密钥标识的长度、最新K AKMA、常量。
  5. 根据权利要求2-4中任一项所述的方法,其特征在于,所述第一设备向第二设备发送第一信息和第一消息认证码MAC,包括:
    所述第一设备向所述AF发送第一K AF更新请求回复消息,所述第一K AF更新请求回复消息中包括所述第一信息和所述第一MAC,以使所述AF通过第二K AF更新请求消息向所述第二设备发送所述第一信息和所述第一MAC。
  6. 根据权利要求5所述的方法,其特征在于,所述第一设备为所述AAnF,所述第一K AF更新请求回复消息中还包括以下信息中的一种或多种:所述第一K AF、所述第一K AF的有效期、终端设备的标识。
  7. 根据权利要求1-6中任一项所述的方法,其特征在于,所述方法还包括:
    所述第一设备接收所述AF发送的第一K AF更新请求消息;
    所述第一设备响应于所述第一K AF更新请求消息,生成所述随机数。
  8. 根据权利要求7所述的方法,其特征在于,所述第一K AF更新请求消息中包括K AKMA的密钥标识,所述第一设备生成所述随机数,包括:
    所述第一设备在所述第一K AF更新请求消息中的K AKMA的密钥标识与所述第一设备中的历史K AKMA的密钥标识一致的情况下,生成所述随机数。
  9. 根据权利要求7或8所述的方法,其特征在于,所述第一设备为所述终端设备,所述方法还包括:
    所述终端设备向所述AF发送会话建立请求,所述会话建立请求中包括第二参数,所述第二参数包括以下中的一种或多种:终端设备的标识、AF的标识、K AKMA的密钥标识;
    所述终端设备接收所述AF发送的会话建立响应,所述会话建立响应中包括所述第一K AF更新请求消息。
  10. 根据权利要求9所述的方法,其特征在于,所述会话建立请求使用待更新的K AF进行加密和/或完整性保护。
  11. 根据权利要求7-10中任一项所述的方法,其特征在于,所述第一K AF更新请求消息中包括指示信息,所述指示信息用于指示K AF的有效期到期。
  12. 根据权利要求7-11中任一项所述的方法,其特征在于,所述第一K AF更新请求消息使用待更新的K AF进行加密和/或完整性保护。
  13. 根据权利要求12所述的方法,其特征在于,所述第一K AF更新请求消息中包括第一算法标识,所述第一算法标识包括加密算法标识和/或完整性保护算法标识;
    所述方法还包括:
    所述第一设备使用与所述第一算法标识对应的算法对所述第一K AF更新请求消息进行解密和/或完整性验证。
  14. 根据权利要求1-13中任一项所述的方法,其特征在于,所述第一设备基于随机数,生成第一K AF,包括:
    所述第一设备基于所述第一设备中的最新K AKMA和所述随机数,生成所述第一K AF
  15. 根据权利要求14所述的方法,其特征在于,所述第一设备基于所述第一设备中的最新K AKMA和所述随机数,生成所述K AF,包括:
    所述第一设备基于所述第一设备中的最新K AKMA、所述随机数以及第三参数,生成所述第一K AF, 其中,所述第三参数包括以下中的一种或多种:所述随机数的长度、AF的标识以及AF的标识的长度、常量。
  16. 根据权利要求1-15中任一项所述的方法,其特征在于,所述第一设备为所述终端设备,所述方法还包括:
    所述终端设备基于所述第一K AF,生成第一传输层安全协议TLS会话密钥;
    如果所述第一K AF的有效期到期,而所述终端设备与所述AF之间的会话还未结束,则所述终端设备基于所述第一K AF,生成第二TLS会话密钥,所述第二TLS会话密钥与所述第一TLS会话密钥不同;
    所述终端设备基于所述第二TLS会话密钥,与所述AF进行通信。
  17. 根据权利要求1-16中任一项所述的方法,其特征在于,所述AAnf与所述AF之间通过网络开放功能NEF进行通信。
  18. 一种生成密钥的方法,其特征在于,包括:
    第二设备接收第一设备发送的随机数,所述第一设备为终端设备和应用程序的身份验证和密钥管理锚点功能AAnF中的一个,所述第二设备为所述终端设备和所述AAnF中的另一个;
    所述第二设备基于所述随机数,生成第一K AF,所述K AF用于所述终端设备与应用功能AF之间的通信。
  19. 根据权利要求18所述的方法,其特征在于,所述方法还包括:
    所述第二设备接收所述AF发送的第一信息和第一消息认证码MAC,所述第一信息包括所述随机数和K AKMA的密钥标识中的一种或多种,所述第一MAC是对所述第一信息进行完整性保护得到的;
    所述第二设备对所述第一MAC进行验证。
  20. 根据权利要求19所述的方法,其特征在于,所述第二设备对所述第一MAC进行验证,包括:
    所述第二设备使用所述第一K AF对所述第一MAC进行验证。
  21. 根据权利要求19所述的方法,其特征在于,所述第二设备基于所述随机数,生成第一K AF,包括:
    所述第二设备在所述第一MAC验证通过的情况下,基于所述随机数,生成所述第一K AF
  22. 根据权利要求19-21中任一项所述的方法,其特征在于,所述第一MAC基于第一参数生成,所述第一参数包括以下中的一种或多种:所述随机数、所述随机数的长度、待更新的K AF、待更新的K AF的长度、所述第一K AF、最新K AKMA的密钥标识、最新K AKMA的密钥标识的长度、最新K AKMA、常量。
  23. 根据权利要求19-22中任一项所述的方法,其特征在于,所述第二设备为所述终端设备,所述第一MAC由所述AF生成。
  24. 根据权利要求19-22中任一项所述的方法,其特征在于,所述第一MAC由所述第一设备生成,所述第二设备接收所述AF发送的第一信息和第一消息认证码MAC,包括:
    所述第二设备接收所述AF发送的第二K AF更新请求消息,所述第二K AF更新请求消息中包括所述第一信息和所述第一MAC,所述第二K AF更新请求消息中的所述第一信息和所述第一MAC由所述第一设备通过第一K AF更新请求回复消息发送至所述AF。
  25. 根据权利要求24所述的方法,其特征在于,所述第二设备为所述终端设备,所述第二K AF更新请求消息使用所述第一K AF进行加密和/或完整性保护。
  26. 根据权利要求24或25所述的方法,其特征在于,所述第二K AF更新请求消息中包括第一算法标识,所述第一算法标识包括加密算法标识和/或完整性保护算法标识;
    所述方法还包括:
    所述第二设备使用与所述第一算法标识对应的算法对所述第二K AF更新请求消息进行解密和/或完整性验证。
  27. 根据权利要求24-26中任一项所述的方法,其特征在于,所述第一设备为所述AAnF,所述第一K AF更新请求回复消息中还包括以下信息中的一种或多种:所述第一K AF、所述第一K AF的有效期、终端设备的标识。
  28. 根据权利要求18-27中任一项所述的方法,其特征在于,所述随机数是所述第一设备在接收到所述AF发送的第一K AF更新请求消息的触发下生成的。
  29. 根据权利要求28所述的方法,其特征在于,所述第一K AF更新请求消息中包括K AKMA的密钥标识,所述随机数是在所述第一K AF更新请求消息中的K AKMA的密钥标识与所述第一设备中的历史K AKMA的密钥标识一致的情况下生成的。
  30. 根据权利要求28或29所述的方法,其特征在于,所述第二设备为终端设备,所述方法还包括:
    所述终端设备向所述AF发送会话建立请求,以使所述AF向所述AAnF发送所述第一K AF更新请 求消息,所述会话建立请求中包括第二参数,所述第二参数包括以下中的一种或多种:终端设备的标识、AF的标识、K AKMA的密钥标识。
  31. 根据权利要求30所述的方法,其特征在于,所述会话建立请求使用待更新的K AF进行加密和/或完整性保护。
  32. 根据权利要求28-31中任一项所述的方法,其特征在于,所述第一K AF更新请求消息中包括指示信息,所述指示信息用于指示K AF的有效期到期。
  33. 根据权利要求18-32中任一项所述的方法,其特征在于,所述第二设备基于所述随机数,生成第一K AF,包括:
    所述第二设备基于所述第二设备中的最新K AKMA和所述随机数,生成所述第一K AF
  34. 根据权利要求33所述的方法,其特征在于,所述第二设备基于所述第二设备中的最新K AKMA和所述随机数,生成所述第一K AF,包括:
    所述第二设备基于所述第二设备中的最新K AKMA、所述随机数以及第三参数,生成所述第一K AF,其中,所述第三参数包括以下中的一种或多种:所述随机数的长度、AF的标识以及AF的标识的长度、常量。
  35. 根据权利要求18-34中任一项所述的方法,其特征在于,所述第二设备为所述终端设备,所述方法还包括:
    所述终端设备基于所述第一K AF,生成第一传输层安全协议TLS会话密钥;
    如果所述第一K AF的有效期到期,而所述终端设备与所述AF之间的会话还未结束,则所述终端设备基于所述第一K AF,生成第二TLS会话密钥,所述第二TLS会话密钥与所述第一TLS会话密钥不同;
    所述终端设备基于所述第二TLS会话密钥,与所述AF进行通信。
  36. 根据权利要求18-35中任一项所述的方法,其特征在于,所述AAnf与所述AF之间通过网络开放功能NEF进行通信。
  37. 一种生成密钥的方法,其特征在于,包括:
    应用功能AF接收应用程序的身份验证和密钥管理锚点功能AAnF发送的第一K AF,所述第一K AF是所述AAnF基于随机数生成的,所述第一K AF用于所述AF与终端设备之间的通信。
  38. 根据权利要求37所述的方法,其特征在于,所述方法还包括:
    所述AF接收第一设备发送的第一信息和第一消息认证码MAC,所述第一MAC是对所述第一信息进行完整性保护得到的,所述第一信息包括K AKMA的密钥标识、所述随机数中的一种或多种,其中,所述第一设备为所述终端设备或所述AAnF。
  39. 根据权利要求38所述的方法,其特征在于,所述第一设备为所述终端设备,所述方法还包括:
    所述AF对所述第一MAC进行验证。
  40. 根据权利要求38或39所述的方法,其特征在于,所述第一信息和所述第一MAC由所述第一设备通过第一K AF更新请求回复消息发送至所述AF。
  41. 根据权利要求37所述的方法,其特征在于,所述方法还包括:
    所述AF接收第一设备发送的第一K AF更新请求回复消息,所述第一K AF更新请求回复消息包括第一信息,所述第一信息包括K AKMA的密钥标识、所述随机数中的一种或多种,所述第一设备为所述AAnF;
    所述AF对所述第一信息进行完整性保护,得到所述第一MAC。
  42. 根据权利要求40或41所述的方法,其特征在于,所述第一设备为所述AAnF,所述第一K AF更新请求回复消息中还包括以下信息中的一种或多种:最新K AKMA的密钥标识、所述第一K AF、所述第一K AF的有效期、终端设备的标识。
  43. 根据权利要求40-42中任一项所述的方法,其特征在于,所述第一K AF更新请求回复消息中还包括K AKMA的密钥标识,所述K AKMA的密钥标识用于所述第二设备对所述随机数的合法性进行验证。
  44. 根据权利要求38-43中任一项所述的方法,其特征在于,所述方法还包括:
    所述AF向第二设备发送第二K AF更新请求消息,所述第二K AF更新请求消息包括所述第一信息和所述第一MAC;
    其中,所述第一设备为所述终端设备和所述AAnF中的一个,所述第二设备为所述终端设备和所述AAnF中的另一个。
  45. 根据权利要求44所述的方法,其特征在于,所述第二设备为终端设备,所述第二K AF更新请求消息使用所述第一K AF进行加密和/或完整性保护。
  46. 根据权利要求45所述的方法,其特征在于,所述第二K AF更新请求消息中还包括第一算法标识,所述第一算法标识包括加密算法标识和/或完整性保护算法标识,所述第二K AF更新请求消息使用 所述第一算法标识进行加密和/或完整性保护。
  47. 根据权利要求38-46中任一项所述的方法,其特征在于,所述第一MAC是使用所述第一K AF对所述第一信息进行完整性保护得到的。
  48. 根据权利要求38-47中任一项所述的方法,其特征在于,所述第一MAC基于第一参数生成,所述第一参数包括以下中的一种或多种:所述随机数、所述随机数的长度、待更新的K AF、待更新的K AF的长度、所述第一K AF、最新K AKMA的密钥标识、最新K AKMA的密钥标识的长度、最新K AKMA、常量。
  49. 根据权利要求38-48中任一项所述的方法,其特征在于,所述方法还包括:
    所述AF向所述第一设备发送第一K AF更新请求消息,所述第一K AF更新请求消息用于触发所述第一设备生成所述随机数。
  50. 根据权利要求49所述的方法,其特征在于,所述方法还包括:
    所述AF接收所述终端设备发送的会话建立请求,所述会话建立请求中包括第二参数,所述第二参数包括以下中的一种或多种:终端设备的标识、AF的标识、K AKMA的密钥标识;
    所述AF向所述第一设备发送会话建立响应,所述会话建立响应中包括所述第一K AF更新请求消息。
  51. 根据权利要求50所述的方法,其特征在于,所述会话建立请求使用待更新的K AF进行加密和/或完整性保护。
  52. 根据权利要求50或51所述的方法,其特征在于,所述第一K AF更新请求消息中包括指示信息,所述指示信息用于指示K AF的有效期到期。
  53. 根据权利要求50-52中任一项所述的方法,其特征在于,所述第一设备为终端设备,所述第一K AF更新请求消息使用待更新的K AF进行加密和/或完整性保护。
  54. 根据权利要求53所述的方法,其特征在于,所述第一K AF更新请求消息中包括第一算法标识,所述第一算法标识包括加密算法标识和/或完整性保护算法标识,所述第一K AF更新请求消息使用所述第一算法标识对应的算法进行加密和/或完整性保护。
  55. 根据权利要求37-54中任一项所述的方法,其特征在于,所述第一K AF是所述AAnF基于所述AAnF中的最新K AKMA和所述随机数生成的。
  56. 根据权利要求55所述的方法,其特征在于,所述第一K AF是所述AAnF基于所述AAnF中的最新K AKMA、所述随机数以及第三参数生成的,其中,所述第三参数包括以下中的一种或多种:所述随机数的长度、AF的标识以及AF的标识的长度、常量。
  57. 根据权利要求37-56中任一项所述的方法,其特征在于,所述方法还包括:
    所述AF基于所述第一K AF,生成第一传输层安全协议TLS会话密钥;
    如果所述第一K AF的有效期到期,而所述终端设备与所述AF之间的会话还未结束,则所述AF基于所述第一K AF,生成第二TLS会话密钥,所述第二TLS会话密钥与所述第一TLS会话密钥不同;
    所述AF基于所述第二TLS会话密钥,与所述终端设备进行通信。
  58. 根据权利要求37-57中任一项所述的方法,其特征在于,所述AAnf与所述AF之间通过网络开放功能NEF进行通信。
  59. 一种生成密钥的装置,其特征在于,所述装置为第一设备,所述第一设备为终端设备或应用程序的身份验证和密钥管理锚点功能AAnF,所述方法包括:
    生成单元,用于基于随机数,生成第一K AF,所述第一K AF用于终端设备与应用功能AF之间的通信。
  60. 根据权利要求59所述的装置,其特征在于,所述装置还包括:
    发送单元,用于向所述AF或第二设备发送第一信息和第一消息认证码MAC,所述第一MAC是对所述第一信息进行完整性保护得到的,所述第一信息包括K AKMA的密钥标识和所述随机数中的一种或多种,所述第一设备为所述终端设备和所述AAnF中的一个,所述第二设备为所述终端设备和所述AAnF中的另一个。
  61. 根据权利要求60所述的装置,其特征在于,所述第一MAC是使用所述第一K AF对所述第一信息进行完整性保护得到的。
  62. 根据权利要求60或61所述的装置,其特征在于,所述第一MAC基于第一参数生成,所述第一参数包括以下中的一种或多种:所述随机数、所述随机数的长度、待更新的K AF、待更新的K AF的长度、所述第一K AF、最新K AKMA的密钥标识、最新K AKMA的密钥标识的长度、最新K AKMA、常量。
  63. 根据权利要求60-62中任一项所述的装置,其特征在于,所述发送单元用于:
    向所述AF发送第一K AF更新请求回复消息,所述第一K AF更新请求回复消息中包括所述第一信息和所述第一MAC,以使所述AF通过第二K AF更新请求消息向所述第二设备发送所述第一信息和所述 第一MAC。
  64. 根据权利要求63所述的装置,其特征在于,所述第一设备为所述AAnF,所述第一K AF更新请求回复消息中还包括以下信息中的一种或多种:所述第一K AF、所述第一K AF的有效期、终端设备的标识。
  65. 根据权利要求59-64中任一项所述的装置,其特征在于,所述装置还包括:
    接收单元,用于接收所述AF发送的第一K AF更新请求消息;
    所述生成单元,用于响应于所述第一K AF更新请求消息,生成所述随机数。
  66. 根据权利要求65所述的装置,其特征在于,所述第一K AF更新请求消息中包括K AKMA的密钥标识,所述生成单元用于:
    在所述第一K AF更新请求消息中的K AKMA的密钥标识与所述第一设备中的历史K AKMA的密钥标识一致的情况下,生成所述随机数。
  67. 根据权利要求65或66所述的装置,其特征在于,所述第一设备为所述终端设备,所述装置还包括:
    发送单元,用于向所述AF发送会话建立请求,所述会话建立请求中包括第二参数,所述第二参数包括以下中的一种或多种:终端设备的标识、AF的标识、K AKMA的密钥标识;
    所述接收单元,用于接收所述AF发送的会话建立响应,所述会话建立响应中包括所述第一K AF更新请求消息。
  68. 根据权利要求67所述的装置,其特征在于,所述会话建立请求使用待更新的K AF进行加密和/或完整性保护。
  69. 根据权利要求65-68中任一项所述的装置,其特征在于,所述第一K AF更新请求消息中包括指示信息,所述指示信息用于指示K AF的有效期到期。
  70. 根据权利要求65-69中任一项所述的装置,其特征在于,所述第一K AF更新请求消息使用待更新的K AF进行加密和/或完整性保护。
  71. 根据权利要求70所述的装置,其特征在于,所述第一K AF更新请求消息中包括第一算法标识,所述第一算法标识包括加密算法标识和/或完整性保护算法标识;
    所述装置还包括:
    解密单元,用于使用与所述第一算法标识对应的算法对所述第一K AF更新请求消息进行解密和/或完整性验证。
  72. 根据权利要求59-71中任一项所述的装置,其特征在于,所述生成单元用于:
    基于所述第一设备中的最新K AKMA和所述随机数,生成所述第一K AF
  73. 根据权利要求72所述的装置,其特征在于,所述生成单元用于:
    基于所述第一设备中的最新K AKMA、所述随机数以及第三参数,生成所述第一K AF,其中,所述第三参数包括以下中的一种或多种:所述随机数的长度、AF的标识以及AF的标识的长度、常量。
  74. 根据权利要求59-73中任一项所述的装置,其特征在于,所述第一设备为所述终端设备,所述生成单元用于:
    基于所述第一K AF,生成第一传输层安全协议TLS会话密钥;
    如果所述第一K AF的有效期到期,而所述终端设备与所述AF之间的会话还未结束,则基于所述第一K AF,生成第二TLS会话密钥,所述第二TLS会话密钥与所述第一TLS会话密钥不同;
    所述装置还包括通信单元,用于基于所述第二TLS会话密钥,与所述AF进行通信。
  75. 根据权利要求59-74中任一项所述的装置,其特征在于,所述AAnf与所述AF之间通过网络开放功能NEF进行通信。
  76. 一种生成密钥的装置,其特征在于,所述装置为第二设备,包括:
    接收单元,用于接收第一设备发送的随机数,所述第一设备为终端设备和应用程序的身份验证和密钥管理锚点功能AAnF中的一个,所述第二设备为所述终端设备和所述AAnF中的另一个;
    生成单元,用于基于所述随机数,生成第一K AF,所述K AF用于所述终端设备与应用功能AF之间的通信。
  77. 根据权利要求76所述的装置,其特征在于,所述接收单元还用于:
    接收所述AF发送的第一信息和第一消息认证码MAC,所述第一信息包括所述随机数和K AKMA的密钥标识中的一种或多种,所述第一MAC是对所述第一信息进行完整性保护得到的;
    所述装置还包括验证单元,用于对所述第一MAC进行验证。
  78. 根据权利要求77所述的装置,其特征在于,所述验证单元用于:
    使用所述第一K AF对所述第一MAC进行验证。
  79. 根据权利要求77所述的装置,其特征在于,所述生成单元用于:
    在所述第一MAC验证通过的情况下,基于所述随机数,生成所述第一K AF
  80. 根据权利要求77-79中任一项所述的装置,其特征在于,所述第一MAC基于第一参数生成,所述第一参数包括以下中的一种或多种:、常量。
  81. 根据权利要求77-80中任一项所述的装置,其特征在于,所述第二设备为所述终端设备,所述第一MAC由所述AF生成。
  82. 根据权利要求77-80中任一项所述的装置,其特征在于,所述第一MAC由所述第一设备生成,所述接收单元用于:
    接收所述AF发送的第二K AF更新请求消息,所述第二K AF更新请求消息中包括所述第一信息和所述第一MAC,所述第二K AF更新请求消息中的所述第一信息和所述第一MAC由所述第一设备通过第一K AF更新请求回复消息发送至所述AF。
  83. 根据权利要求82所述的装置,其特征在于,所述第二设备为所述终端设备,所述第二K AF更新请求消息使用所述第一K AF进行加密和/或完整性保护。
  84. 根据权利要求82或83所述的装置,其特征在于,所述第二K AF更新请求消息中包括第一算法标识,所述第一算法标识包括加密算法标识和/或完整性保护算法标识;所述装置还包括:
    解密单元,用于使用与所述第一算法标识对应的算法对所述第二K AF更新请求消息进行解密和/或完整性验证。
  85. 根据权利要求82-84中任一项所述的装置,其特征在于,所述第一设备为所述AAnF,所述第一K AF更新请求回复消息中还包括以下信息中的一种或多种:所述第一K AF、所述第一K AF的有效期、终端设备的标识。
  86. 根据权利要求76-85中任一项所述的装置,其特征在于,所述随机数是所述第一设备在接收到所述AF发送的第一K AF更新请求消息的触发下生成的。
  87. 根据权利要求86所述的装置,其特征在于,所述第一K AF更新请求消息中包括K AKMA的密钥标识,所述随机数是在所述第一K AF更新请求消息中的K AKMA的密钥标识与所述第一设备中的历史K AKMA的密钥标识一致的情况下生成的。
  88. 根据权利要求86或87所述的装置,其特征在于,所述第二设备为终端设备,所述装置还包括:
    发送单元,用于向所述AF发送会话建立请求,以使所述AF向所述AAnF发送所述第一K AF更新请求消息,所述会话建立请求中包括第二参数,所述第二参数包括以下中的一种或多种:终端设备的标识、AF的标识、K AKMA的密钥标识。
  89. 根据权利要求88所述的装置,其特征在于,所述会话建立请求使用待更新的K AF进行加密和/或完整性保护。
  90. 根据权利要求86-89中任一项所述的装置,其特征在于,所述第一K AF更新请求消息中包括指示信息,所述指示信息用于指示K AF的有效期到期。
  91. 根据权利要求76-90中任一项所述的装置,其特征在于,所述生成单元用于:
    基于所述第二设备中的最新K AKMA和所述随机数,生成所述第一K AF
  92. 根据权利要求91所述的装置,其特征在于,所述生成单元用于:
    基于所述第二设备中的最新K AKMA、所述随机数以及第三参数,生成所述第一K AF,其中,所述第三参数包括以下中的一种或多种:所述随机数的长度、AF的标识以及AF的标识的长度、常量。
  93. 根据权利要求76-92中任一项所述的装置,其特征在于,所述第二设备为所述终端设备,所述生成单元用于:
    基于所述第一K AF,生成第一传输层安全协议TLS会话密钥;
    如果所述第一K AF的有效期到期,而所述终端设备与所述AF之间的会话还未结束,则基于所述第一K AF,生成第二TLS会话密钥,所述第二TLS会话密钥与所述第一TLS会话密钥不同;
    所述装置还包括通信单元,用于基于所述第二TLS会话密钥,与所述AF进行通信。
  94. 根据权利要求76-93中任一项所述的装置,其特征在于,所述AAnf与所述AF之间通过网络开放功能NEF进行通信。
  95. 一种生成密钥的装置,其特征在于,所述装置为应用功能AF,所述装置包括:
    接收单元,用于接收应用程序的身份验证和密钥管理锚点功能AAnF发送的第一K AF,所述第一K AF是所述AAnF基于随机数生成的,所述第一K AF用于所述AF与终端设备之间的通信。
  96. 根据权利要求95所述的装置,其特征在于,所述接收单元用于:
    接收第一设备发送的第一信息和第一消息认证码MAC,所述第一MAC是对所述第一信息进行完整性保护得到的,所述第一信息包括K AKMA的密钥标识、所述随机数中的一种或多种,其中,所述第 一设备为所述终端设备或所述AAnF。
  97. 根据权利要求96所述的装置,其特征在于,所述第一设备为所述终端设备,所述装置还包括验证单元,用于:
    对所述第一MAC进行验证。
  98. 根据权利要求96或97所述的装置,其特征在于,所述第一信息和所述第一MAC由所述第一设备通过第一K AF更新请求回复消息发送至所述AF。
  99. 根据权利要求95所述的装置,其特征在于,
    所述接收单元用于接收第一设备发送的第一K AF更新请求回复消息,所述第一K AF更新请求回复消息包括第一信息,所述第一信息包括K AKMA的密钥标识、所述随机数中的一种或多种,所述第一设备为所述AAnF,
    所述装置还包括保护单元,用于对所述第一信息进行完整性保护,得到所述第一MAC。
  100. 根据权利要求98或99所述的装置,其特征在于,所述第一设备为所述AAnF,所述第一K AF更新请求回复消息中还包括以下信息中的一种或多种:最新K AKMA的密钥标识、所述第一K AF、所述第一K AF的有效期、终端设备的标识。
  101. 根据权利要求98-100中任一项所述的装置,其特征在于,所述第一K AF更新请求回复消息中还包括K AKMA的密钥标识,所述K AKMA的密钥标识用于所述第二设备对所述随机数的合法性进行验证。
  102. 根据权利要求96-101中任一项所述的装置,其特征在于,所述装置还包括:
    发送单元,用于向第二设备发送第二K AF更新请求消息,所述第二K AF更新请求消息包括所述第一信息和所述第一MAC;
    其中,所述第一设备为所述终端设备和所述AAnF中的一个,所述第二设备为所述终端设备和所述AAnF中的另一个。
  103. 根据权利要求102所述的装置,其特征在于,所述第二设备为终端设备,所述第二K AF更新请求消息使用所述第一K AF进行加密和/或完整性保护。
  104. 根据权利要求103所述的装置,其特征在于,所述第二K AF更新请求消息中还包括第一算法标识,所述第一算法标识包括加密算法标识和/或完整性保护算法标识,所述第二K AF更新请求消息使用所述第一算法标识对应的算法进行加密和/或完整性保护。
  105. 根据权利要求96-104中任一项所述的装置,其特征在于,所述第一MAC是使用所述第一K AF对所述第一信息进行完整性保护得到的。
  106. 根据权利要求96-105中任一项所述的装置,其特征在于,所述第一MAC基于第一参数生成,所述第一参数包括以下中的一种或多种:所述随机数、所述随机数的长度、待更新的K AF、待更新的K AF的长度、所述第一K AF、最新K AKMA的密钥标识、最新K AKMA的密钥标识的长度、最新K AKMA、常量。
  107. 根据权利要求96-106中任一项所述的装置,其特征在于,所述装置还包括:
    发送单元,用于向所述第一设备发送第一K AF更新请求消息,所述第一K AF更新请求消息用于触发所述第一设备生成所述随机数。
  108. 根据权利要求107所述的装置,其特征在于,
    所述接收单元用于接收所述终端设备发送的会话建立请求,所述会话建立请求中包括第二参数,所述第二参数包括以下中的一种或多种:终端设备的标识、AF的标识、K AKMA的密钥标识;
    所述装置还包括发送单元,用于向所述第一设备发送会话建立响应,所述会话建立响应中包括所述第一K AF更新请求消息。
  109. 根据权利要求108所述的装置,其特征在于,所述会话建立请求使用待更新的K AF进行加密和/或完整性保护。
  110. 根据权利要求108或109所述的装置,其特征在于,所述第一K AF更新请求消息中包括指示信息,所述指示信息用于指示K AF的有效期到期。
  111. 根据权利要求108-110中任一项所述的装置,其特征在于,所述第一设备为终端设备,所述第一K AF更新请求消息使用待更新的K AF进行加密和/或完整性保护。
  112. 根据权利要求111所述的装置,其特征在于,所述第一K AF更新请求消息中包括第一算法标识,所述第一算法标识包括加密算法标识和/或完整性保护算法标识,所述第一K AF更新请求消息使用所述第一算法标识进行加密和/或完整性保护。
  113. 根据权利要求95-112中任一项所述的装置,其特征在于,所述第一K AF是所述AAnF基于所述AAnF中的最新K AKMA和所述随机数生成的。
  114. 根据权利要求113所述的装置,其特征在于,所述第一K AF是所述AAnF基于所述AAnF中 的最新K AKMA、所述随机数以及第三参数生成的,其中,所述第三参数包括以下中的一种或多种:所述随机数的长度、AF的标识以及AF的标识的长度、常量。
  115. 根据权利要求95-114中任一项所述的装置,其特征在于,所述装置还包括:
    生成单元,用于基于所述第一K AF,生成第一传输层安全协议TLS会话密钥;
    如果所述第一K AF的有效期到期,而所述终端设备与所述AF之间的会话还未结束,则基于所述第一K AF,生成第二TLS会话密钥,所述第二TLS会话密钥与所述第一TLS会话密钥不同;
    通信单元,用于基于所述第二TLS会话密钥,与所述终端设备进行通信。
  116. 根据权利要求95-115中任一项所述的装置,其特征在于,所述AAnf与所述AF之间通过网络开放功能NEF进行通信。
  117. 一种生成密钥的装置,其特征在于,包括存储器、处理器和通信接口,所述存储器用于存储程序,所述处理器用于调用所述存储器中的程序,使得所述装置执行如权利要求1-17中任一项所述的方法。
  118. 一种生成密钥的装置,其特征在于,包括存储器和处理器和通信接口,所述存储器用于存储程序,所述处理器用于调用所述存储器中的程序,使得所述装置执行如权利要求18-36中任一项所述的方法。
  119. 一种生成密钥的装置,其特征在于,包括存储器和处理器和通信接口,所述存储器用于存储程序,所述处理器用于调用所述存储器中的程序,使得所述装置执行如权利要求37-58中任一项所述的方法。
  120. 一种装置,其特征在于,包括处理器,用于从存储器中调用程序,以执行如权利要求1-17中任一项所述的方法。
  121. 一种装置,其特征在于,包括处理器,用于从存储器中调用程序,以执行如权利要求18-36中任一项所述的方法。
  122. 一种装置,其特征在于,包括处理器,用于从存储器中调用程序,以执行如权利要求37-58中任一项所述的方法。
  123. 一种芯片,其特征在于,包括处理器,用于从存储器调用程序,使得安装有所述芯片的设备执行如权利要求1-17中任一项所述的方法。
  124. 一种芯片,其特征在于,包括处理器,用于从存储器调用程序,使得安装有所述芯片的设备执行如权利要求18-36中任一项所述的方法。
  125. 一种芯片,其特征在于,包括处理器,用于从存储器调用程序,使得安装有所述芯片的设备执行如权利要求37-58中任一项所述的方法。
  126. 一种计算机可读存储介质,其特征在于,其上存储有程序,所述程序使得计算机执行如权利要求1-17中任一项所述的方法。
  127. 一种计算机可读存储介质,其特征在于,其上存储有程序,所述程序使得计算机执行如权利要求18-36中任一项所述的方法。
  128. 一种计算机可读存储介质,其特征在于,其上存储有程序,所述程序使得计算机执行如权利要求37-58中任一项所述的方法。
  129. 一种计算机程序产品,其特征在于,包括程序,所述程序使得计算机执行如权利要求1-17中任一项所述的方法。
  130. 一种计算机程序产品,其特征在于,包括程序,所述程序使得计算机执行如权利要求18-36中任一项所述的方法。
  131. 一种计算机程序产品,其特征在于,包括程序,所述程序使得计算机执行如权利要求37-58中任一项所述的方法。
  132. 一种计算机程序,其特征在于,所述计算机程序使得计算机执行如权利要求1-17中任一项所述的方法。
  133. 一种计算机程序,其特征在于,所述计算机程序使得计算机执行如权利要求18-36中任一项所述的方法。
  134. 一种计算机程序,其特征在于,所述计算机程序使得计算机执行如权利要求37-58中任一项所述的方法。
PCT/CN2022/082354 2022-03-22 2022-03-22 生成密钥的方法及装置 WO2023178529A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2022/082354 WO2023178529A1 (zh) 2022-03-22 2022-03-22 生成密钥的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2022/082354 WO2023178529A1 (zh) 2022-03-22 2022-03-22 生成密钥的方法及装置

Publications (1)

Publication Number Publication Date
WO2023178529A1 true WO2023178529A1 (zh) 2023-09-28

Family

ID=88099631

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/082354 WO2023178529A1 (zh) 2022-03-22 2022-03-22 生成密钥的方法及装置

Country Status (1)

Country Link
WO (1) WO2023178529A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021093164A1 (en) * 2020-01-16 2021-05-20 Zte Corporation Method, device, and system for updating anchor key in a communication network for encrypted communication with service applications
CN113162758A (zh) * 2020-01-23 2021-07-23 中国移动通信有限公司研究院 一种密钥生成方法及设备
WO2021167399A1 (en) * 2020-02-19 2021-08-26 Samsung Electronics Co., Ltd. Apparatus and method of generating application specific keys using key derived from network access authentication
WO2021196161A1 (en) * 2020-04-03 2021-10-07 Apple Inc. Application Function Key Derivation and Refresh
CN113784343A (zh) * 2020-05-22 2021-12-10 华为技术有限公司 保护通信的方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021093164A1 (en) * 2020-01-16 2021-05-20 Zte Corporation Method, device, and system for updating anchor key in a communication network for encrypted communication with service applications
CN113162758A (zh) * 2020-01-23 2021-07-23 中国移动通信有限公司研究院 一种密钥生成方法及设备
WO2021167399A1 (en) * 2020-02-19 2021-08-26 Samsung Electronics Co., Ltd. Apparatus and method of generating application specific keys using key derived from network access authentication
WO2021196161A1 (en) * 2020-04-03 2021-10-07 Apple Inc. Application Function Key Derivation and Refresh
CN113784343A (zh) * 2020-05-22 2021-12-10 华为技术有限公司 保护通信的方法和装置

Similar Documents

Publication Publication Date Title
US10716002B2 (en) Method and system for authenticating access in mobile wireless network system
US8605904B2 (en) Security method in wireless communication system having relay node
WO2019019736A1 (zh) 安全实现方法、相关装置以及系统
JP6304788B2 (ja) 無線ローカルエリアネットワークにおいてユーザ機器(ue)の通信をセキュアにする装置、システム及び方法
JP2019521612A (ja) ワイヤレスネットワークにおけるカバレージ及びリソース制限デバイスをサポートするためのレイヤ2リレー
CN109691154B (zh) 基于密钥刷新的按需网络功能重新认证
CN111448813B (zh) 与配置的安全保护进行通信的系统和方法
WO2019096075A1 (zh) 一种消息保护的方法及装置
JP2013544471A (ja) 証明書検証およびチャネル結合
WO2010077910A2 (en) Enhanced security for direct link communications
CN109768861B (zh) 一种海量d2d匿名发现认证与密钥协商方法
WO2018166338A1 (zh) 一种秘钥更新方法及装置
CN114071452B (zh) 用户签约数据的获取方法及装置
CN113841366B (zh) 通信方法及装置
WO2022095047A1 (zh) 无线通信的方法、终端设备和网络设备
WO2023178529A1 (zh) 生成密钥的方法及装置
WO2021238813A1 (zh) 一种获取密钥的方法及装置
WO2023178530A1 (zh) 生成密钥的方法及装置
WO2015064475A1 (ja) 通信制御方法、認証サーバ及びユーザ端末
WO2023141914A1 (zh) 信息保护方法和设备
WO2024060149A1 (zh) 密钥验证方法、密钥获取方法及设备
WO2023212904A1 (zh) 中继通信的方法及设备
CN114208240B (zh) 数据传输方法、装置及系统
CN110830996A (zh) 一种密钥更新方法、网络设备及终端
WO2024065765A1 (zh) 安全建立的方法、通信方法及装置

Legal Events

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

Ref document number: 22932598

Country of ref document: EP

Kind code of ref document: A1