Transmission data protection system, method, and apparatus
11122428 · 2021-09-14
Assignee
Inventors
Cpc classification
H04L9/08
ELECTRICITY
H04L63/0435
ELECTRICITY
H04L67/02
ELECTRICITY
H04L9/30
ELECTRICITY
H04L63/0876
ELECTRICITY
H04W12/02
ELECTRICITY
H04L9/3073
ELECTRICITY
International classification
H04W12/02
ELECTRICITY
H04L9/08
ELECTRICITY
Abstract
A system for transmission data protection includes user equipment (UE) and an access point. The access point sends a broadcast message that carries a public key for encryption. The UE receives and stores the public key for encryption. The UE obtains a global public key or a private key corresponding to the UE, and protects transmission data using the public key for encryption and the global public key or the private key corresponding to the UE.
Claims
1. A transmission data protection system, comprising: a user equipment (UE); and an access point configured to: obtain system parameters from at least one of a network or a key management system (KMS), wherein the system parameters comprise a public key for encryption and at least one group of data selected from a first global public key and a first private key, or a second global public key and a second private key, wherein the first global public key is a global public key (GPK.sub.enc) for data encryption in an identity based cryptography (IBC) technology, wherein the first private key is a private key (SK.sub.BS_ID_enc) for data encryption corresponding to the access point in the IBC technology, wherein the second global public key is a global public key (GPK.sub.Sig) for data signature in the IBC technology, and wherein the second private key is a private key (SK.sub.BS_ID_Sig for data signature corresponding to the access point in the IBC technology, and wherein the public key for encryption is at least one of is base station (BS) identity (BS_ID), comprises a BS_ID, comprises a media access control (MAC) address of a Wi-Fi access point (AP), comprises a service set identifier (SSID) of a Wi-Fi AP, comprises a hotspot UE identity (UE_ID), or comprises an international mobile subscriber identity (IMSI) of hotspot UE; store the system parameters as second prestored data of the access point; and send a broadcast message after obtaining the system parameters, wherein the broadcast message carries the public key for encryption; wherein the UE is configured to receive the broadcast message of the access point and store the public key for encryption; wherein the UE is further configured to perform, in response to transmission data needing to be sent to the access point: obtain at least one of a global public key in an identity based cryptography (IBC) technology or a private key corresponding to the UE from first prestored data of the UE, wherein the global public key comprises the first global public key and the second global public key; and protect the transmission data using the public key for encryption and the at least one of the global public key or the private key corresponding to the UE, and obtain a protection message; wherein the UE is further configured to send the protection message to the access point, wherein the protection message carries an indication message indicating a protection manner of the transmission data; wherein the access point is further configured to perform, after receiving the protection message: obtain the global public key and a private key corresponding to the access point from second prestored data of the access point according to the indication message indicating the protection manner, wherein the private key corresponding to the access point comprises the first private key and the second private key; and parse the protection message using the global public key and the private key corresponding to the access point, and obtain the transmission data sent by the UE; and wherein the access point is further configured to send, to a core network, the transmission data that is obtained through parsing and that is sent by the UE.
2. The protection system according to claim 1, wherein the global public key comprises a first global public key and a second global public key, and wherein the private key corresponding to the UE comprises a third private key and a fourth private key; wherein the UE is further configured to obtain, before receiving the broadcast message of the access point, from at least one of a network or a KMS, processing parameters used by the UE to process the transmission data, and store the processing parameters as the first prestored data of the UE; wherein the processing parameters comprise a first operator identity of an operator to which the UE belongs, and at least one group of data selected from the first global public key, or the first global public key and the third private key, or the second global public key and the fourth private key; wherein the first global public key is a global public key (GPK.sub.enc) for data encryption in the IBC technology, wherein the third private key is a private key (SK.sub.UE_ID_enc) for data encryption corresponding to the UE_ID in the IBC technology, wherein the second global public key is a global public key (GPK.sub.Sig) for data signature in the IBC technology, and wherein the fourth private key is a private key (SK.sub.UE_ID_Sig) for data signature corresponding to the UE_ID in the IBC technology.
3. The protection system according to claim 2, wherein the second prestored data comprises the GPK.sub.Sig and the SK.sub.BS_ID_Sig; and wherein the access point is further configured to sign the broadcast message using the GPK.sub.Sig and the SK.sub.BS_ID_Sig, to obtain a first signature of the broadcast message, and add indication information indicating that the access point has a data signature function or the first signature of the broadcast message to the broadcast message.
4. The protection system according to claim 3, wherein the first prestored data comprises the first operator identity and the GPK.sub.Sig; and wherein the UE is configured to: determine, according to the indication information carried in the received broadcast message, that the access point has a data signature function, and to determine, according to identification information of the access point corresponding to the broadcast message, a second operator identity of an operator to which the access point belongs; match the second operator identity with the first operator identity, and search the first prestored data for a third global public key GPK.sub.Sig1 corresponding to the access point; attempt, in response to the broadcast message carrying the first signature, to authenticate the broadcast message using the GPK.sub.Sig1 and the identification information of the access point; and determine to add, to the first prestored data, in response to the broadcast message being authenticated, the public key for encryption that is carried in the broadcast message.
5. The protection system according to claim 4, wherein the first prestored data comprises the GPK.sub.enc and the SK.sub.UE_ID_enc; and the UE is specifically configured to: when the transmission data needs to be sent to the access point, obtain the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_enc from the first prestored data; generate a first symmetric key according to the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_enc, and input the transmission data and the first symmetric key into a system function to obtain a first message authentication code; and encrypt the transmission data, identification information of the UE, and the first message authentication code using the public key for encryption and the GPK.sub.enc, to obtain the protection message, wherein the protection manner of the transmission data is encrypting the transmission data, the identification information of the UE, and the first message authentication code using the public key for encryption and the GPK.sub.enc.
6. The protection system according to claim 5, wherein the second prestored data comprises the public key for encryption, the GPK.sub.enc, and the SK.sub.BS_ID_enc; and wherein the access point is configured to: determine the protection manner of the transmission data according to the indication message indicating the protection manner; obtain the GPK.sub.enc and the SK.sub.BS_ID_enc from the second prestored data; decrypt the protection message using the SK.sub.BS_ID_enc and the GPK.sub.enc, to obtain a decrypted message; obtain the first message authentication code, the identification information of the UE, and the transmission data that are carried in the protection message from the decrypted message; generate a second symmetric key using the identification information of the UE, the GPK.sub.enc, and the SK.sub.BS_ID_enc; calculate a second message authentication code using the second symmetric key, the identification information of the UE, and the transmission data obtained through decryption; and send, to the core network, in response to the second message authentication code matching the first message authentication code, the transmission data sent by the UE.
7. The protection system according to claim 4, wherein the first prestored data comprises the GPK.sub.enc; and wherein the UE is configured to: obtain, in response to the transmission data needing to be sent to the access point, the public key for encryption and the GPK.sub.enc from the first prestored data; and encrypt the transmission data using the public key for encryption and the GPK.sub.enc, to obtain the protection message; wherein the protection manner of the transmission data is encrypting the transmission data using the public key for encryption and the GPK.sub.enc.
8. The protection system according to claim 7, wherein the second prestored data comprises the GPK.sub.enc, the SK.sub.BS_ID_enc, the GPK.sub.Sig, and the SK.sub.BS_ID_Sig; and wherein the access point is configured to: determine the protection manner of the transmission data according to the indication message indicating the protection manner; obtain the SK.sub.BS_ID_enc and the GPK.sub.enc from the second prestored data; decrypt the protection message using the SK.sub.BS_ID_enc and the GPK.sub.enc, to obtain a decrypted message; and send, to the core network, the transmission data that is carried in the decrypted message and that is sent by the UE.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) To describe the technical solutions in the embodiments of the present invention more clearly, the following briefly describes the accompanying drawings required for describing the embodiments. Apparently, the accompanying drawings in the following description show merely some embodiments of the present invention, and a person of ordinary skill in the art may still derive other drawings from these accompanying drawings without creative efforts.
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)
(14)
(15)
(16)
(17)
(18)
(19)
(20)
(21)
(22)
(23)
(24)
(25)
(26)
(27)
(28)
(29)
DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS
(30) The following clearly describes the technical solutions in the embodiments of the present invention with reference to the accompanying drawings in the embodiments of the present invention. Apparently, the described embodiments are merely some but not all of the embodiments of the present invention. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.
(31) An identity based cryptography (IBC) technology provides an identity based encryption (IBE) technology, an identity based signature (IBS) technology, and the like. The IBC technology is a public key technology. First, a key is generated based on a pair of global parameters including a global public key (GPK) and a global secret key (GSK). A key generator performs, based on identity (ID) information provided by a user, an operation by using the foregoing global parameters, to generate a private key SK.sub.ID corresponding to the ID of the user for the user. For example, the key generator may perform, based on an identity (such as a UE_ID) provided by UE, an operation by using the foregoing global parameters, to obtain a private key SK.sub.UE_ID corresponding to the UE. Further, the ID of the user, the private key SK.sub.ID, and the global public key GPK may be distributed to the user by using a reliable means, and a specific means may be determined based on an actual application scenario.
(32) When performing encryption by using the IBC technology, an encryptor needs to obtain a public key for encryption (which may be specifically an ID of a receiver) and a global public key GPK. The encryptor encrypts plaintext data M of a user by using the ID of the receiver and the global public key, to form a ciphertext E (M), and sends the ciphertext to the receiver. After receiving the ciphertext E (M), the receiver first obtains, based on the ID of the receiver, a private key SK.sub.ID and the global public key GPK that are corresponding to the ID and that are for decryption, and then decrypts the ciphertext E (M) by using the SK.sub.ID and the GPK, to obtain the corresponding plaintext M.
(33) When performing signing by using the IBC technology, a signer needs to have an ID of the signer, a private key SK.sub.ID for signature, and a global public key GPK. The signer signs plaintext data M of a user by using the global public key and the private key SK.sub.ID, to form a signature Sig (SK.sub.ID, M), and sends a receiver a message {ID, M, Sig (SK.sub.ID, M)} obtained after signing. After receiving the message with the signature, the receiver first obtains the corresponding global public key GPK based on the ID carried in the message, and uses the ID and GPK to attempt to authenticate the signature Sig (SK.sub.ID, M) carried in the message, so as to attempt to authenticate integrity of the message.
(34) A difference between the IBC technology and an existing public key infrastructure (PKI)-based public key technology is that a public key in the existing PKI technology is a string of random numbers, which has no identity significance, while the IBC technology overcomes this disadvantage. In the IBC technology, a public key may be any string of meaningful characters, which is usually identity information in real life, such as an email address: abc@xyz.com, or may be information such as a phone number or an IMSI to facilitate memorization and authentication.
(35) In the embodiments of the present invention, the IBC technology can be used to protect transmission of air interface signaling or small data with a low frequency. In other words, the transmission data described in the present invention may include air interface signaling or connectionless small data with a low frequency. Specific transmission data may be determined based on an actual application scenario, and no limitation is imposed herein.
(36)
(37)
(38) S201. An access point sends a broadcast message to UE.
(39) In some feasible implementations, before sending the broadcast message, the access point may obtain system parameters in advance from a network or a key management system (KMS), and store the obtained system parameters in specified storage space on the access point. In this way, the obtained system parameters can be stored as prestored data (namely, second prestored data) of the access point. The system parameters obtained by the access point from the network or the KMS may include a public key for encryption, a first global public key and a first private key, a second global public key and a second private key, or the like. Information specifically included in the system parameters obtained by the access point from the network or the KMS may be determined based on a requirement of a data transmission operation performed by the access point in an actual application scenario, and is not limited herein.
(40) In a specific implementation, the foregoing public key for encryption may be an identity of the access point. If the access point is a BS in a specific application scenario, the public key for encryption may be an identity (namely, a BS_ID) of the BS, or the public key for encryption includes a BS_ID. That the public key for encryption includes a BS_ID means that the public key for encryption consists of the BS_ID and other data, and the BS_ID is only a part of data in a long string of the public key for encryption. Specific content of the public key for encryption may be determined based on an actually used data form of the public key for encryption, and is not limited herein.
(41) If the access point is a Wi-Fi AP in a specific application scenario, the public key for encryption may be a Media Access Control (MAC) address of the Wi-Fi AP, or a service set identifier (SSID) of the Wi-Fi AP. In a specific implementation, when the access point is a Wi-Fi AP, a specific composition form of the public key for encryption may be determined based on an actual application scenario, and is not limited herein.
(42) If the access point is hotspot UE in a specific application scenario, the public key for encryption may be a UE_ID of the hotspot UE, or an international mobile subscriber identity (IMSI) of the hotspot UE. In a specific implementation, when the access point is hotspot UE, a specific composition form of the public key for encryption may be determined based on an actual application scenario, and is not limited herein.
(43) Further, in a specific implementation, the first global public key obtained by the access point from the network or the KMS may be a global public key GPK.sub.enc for data encryption in an IBC technology. The first private key may be a private key SK.sub.BS_ID_enc for data encryption corresponding to the access point that is generated based on the ID of the access point and the foregoing GPK.sub.enc by using the IBC technology. The access point BS, the Wi-Fi AP, and the hotspot UE are all used as base stations in data transmission, and the ID of the access point that is used for generating the private key for data encryption includes the ID of the BS, an ID of the Wi-Fi AP, or the ID of the hotspot UE. Therefore, private keys for data encryption corresponding to the access point are all represented as SK.sub.BS_ID_enc. The second global public key is a global public key GPK.sub.Sig for data signature in the IBC technology. The second private key is a private key SK.sub.BS_ID_Sig for data signature corresponding to the access point that is generated based on the ID of the access point and the foregoing GPK.sub.Sig by using the IBC technology. Likewise, the access point BS, the Wi-Fi AP, and the hotspot UE are all used as base stations in data transmission, and the ID of the access point that is used for generating the private key for data signature includes the ID of the BS, the ID of the Wi-Fi AP, or the ID of the hotspot UE. Therefore, private keys for data signature corresponding to the access point are all represented as SK.sub.BS_ID_Sig.
(44) In some feasible implementations, the UE may also obtain processing parameters for processing transmission data from the network or the foregoing KMS. The processing parameters may include an identity of an operator to which the UE belongs, a global public key, a private key corresponding to the UE, or the like. The identity of the operator to which the UE belongs may be represented as operator ID1. For example, if the operator to which the UE belongs is an operator A, the operator ID1 is an identity of the operator A. The global public key includes a first global public key and a second global public key, and the private key includes a third private key and a fourth private key. The first global public key is a global public key GPK.sub.enc for data encryption that is the same as the first global public key obtained by the access point. The second global public key is a global public key GPK.sub.sig for data signature that is the same as the second global public key obtained by the access point. The third private key may be a private key SK.sub.UE_ID_enc for data encryption corresponding to the UE that is generated based on a UE_ID and the foregoing GPK.sub.enc by using the IBC technology. The fourth private key is a private key SK.sub.UE_ID_Sig for data signature corresponding to the UE that is generated based on the UE_ID and the foregoing GPK.sub.sig by using the IBC technology.
(45) In a specific implementation, the access point may periodically send the broadcast message to the UE, where the broadcast message carries the public key for encryption, so that the UE performs data protection based on the public key for encryption.
(46) Further, in some feasible implementations, the access point may use the GPK.sub.Sig and the SK.sub.BS_ID_Sig that are stored in the second prestored data to sign the broadcast message to obtain a signature (represented as Sig1) of the broadcast message, and add, to the broadcast message, indication information indicating that the access point has a data signature function. Further, the broadcast message may carry the Sig1.
(47) S202. The UE receives the broadcast message of the access point, and stores a public key for encryption that is carried in the broadcast message.
(48) In some feasible implementations, after receiving the broadcast message sent by the access point, the UE may determine, based on information carried in the broadcast message, whether the access point supports data encryption or data signature based on the public key for encryption, and a type of the public key for encryption. The type of the public key for encryption may include a public key for encryption in the IBC technology or a public key in a PKI technology. This embodiment of the present invention specifically describes data transmission supporting the public key for encryption in the IBC technology. In a specific implementation, if the broadcast message sent by the access point does not carry the public key for encryption, it may be determined that the access point does not support data encryption based on the public key for encryption, and the UE does not need to encrypt data when sending the data to the access point. For this application scenario, details are not described in this embodiment of the present invention. If the broadcast message carries the public key for encryption but does not include indication information indicating whether the access point has a data signature function, the UE may directly store the public key for encryption that is carried in the broadcast message, so as to encrypt, based on the public key for encryption, data that subsequently needs to be sent to the access point.
(49) In some feasible implementations, if the UE receives the broadcast message sent by the access point, and determines that the broadcast message carries indication information, the UE may determine, based on the indication information, whether the access point has a data signature function. The UE may further check whether a timestamp or a sequence number carried in the broadcast message is valid. If the timestamp or the sequence number is valid, the UE may further directly store information carried in the broadcast message, including information such as the public key for encryption, the timestamp, and the sequence number.
(50) Further, in some feasible implementations, if the UE determines, based on the indication information carried in the broadcast message, that the access point has the data signature function, validity of the broadcast message may be checked based on the signature carried in the broadcast message. Specifically, the UE may determine, based on identification information of the access point (for example, the ID of the access point) carried in the broadcast message, an identity (operator ID2) of an operator to which the access point belongs. The operator ID2 is matched with the operator ID1, and if the operator ID2 is the same as the operator ID1, it may be determined that the access point and the UE belong to the same operator. Further, after determining that the access point and the UE belong to the same operator, the UE may search, based on the operator ID1 (in this case, the operator ID2 is the same as the operator ID1), first prestored data of the UE for a global public key for data signature (set to a third global public key) corresponding to the operator ID1, that is, a third global public key GPK.sub.Sig1 corresponding to the access point. Further, if the broadcast message carries the signature Sig1, the UE may attempt to authenticate the broadcast message by using information such as the GPK.sub.Sig1 and the ID of the access point. When the broadcast message has been authenticated, the UE determines to add the information carried in the broadcast message, such as the public key for encryption and the timestamp or the sequence number, to the first prestored data of the UE for use in subsequent transmission data processing. If the broadcast message fails to be authenticated, the broadcast message is discarded. When the UE needs to send the transmission data, the UE may process the data based on information about a target access point that is stored in the first prestored data, and send the data to the target access point.
(51) S203. When the UE needs to send transmission data to the access point, the UE protects the transmission data by using the public key for encryption and a global public key or a private key corresponding to the UE that are obtained from first prestored data, to obtain a protection message.
(52) In a specific implementation, the global public key may include the GPK.sub.enc or the GPK.sub.Sig, and may be specifically determined based on a specific manner in which the UE processes the transmission data. The private key corresponding to the UE may include the SK.sub.UE_ID_enc or the SK.sub.UE_ID_Sig, and may be specifically determined based on the specific manner in which the UE processes the transmission data. The following specifically describes an implementation of data transmission with reference to steps S204 to S206.
(53) S204. The UE sends the protection message to the access point.
(54) In a specific implementation, the protection message carries an indication message indicating a protection manner of the transmission data. The protection manner may include encryption, or encryption and signature, or a key used for encryption, and information such as a key used for signature. The following specifically describes an implementation of data transmission with reference to steps S205 to S206.
(55) S205. The access point obtains a global public key and a private key corresponding to the access point from second prestored data based on an indication message indicating a protection manner, and parses the protection message by using the global public key and the private key corresponding to the access point.
(56) S206. The access point sends the transmission data obtained through parsing to a core network.
(57) In some feasible implementations, when the UE needs to send the transmission data to the target access point, the UE may obtain, from the first prestored data based on identification information such as an ID of the target access point, a public key for encryption and a GPK.sub.enc that are corresponding to the target access point. The target access point may be an access point corresponding to a piece of access point information in one or more pieces of access point information included in the first prestored data of the UE. For example, if the target access point is a target BS (abbreviated as BS), a public key for encryption may be obtained from the first prestored data based on a BS_ID, where the public key for encryption may be the BS_ID, or the public key for encryption includes the BS_ID. Further, the UE may further obtain identification information of the UE, such as a UE_ID and other information, from the first prestored data of the UE. The UE may input information such as the transmission data that needs to be sent and the UE_ID into a system function, to obtain a first message authentication code (MAC) (such as a MAC 0), and encrypt the transmission data and the MAC 0 by using the public key for encryption and the GPK.sub.enc, to obtain a protection message. The protection message may carry indication information indicating a protection manner of the transmission data. The protection manner of the transmission data is encrypting the transmission data and the MAC 0 by using the public key for encryption and the GPK.sub.enc.
(58) Further, in some feasible implementations, when the UE generates the message authentication code, information such as a timestamp and a sequence number that are stored in the first prestored data may be input into the system function together with the information such as the transmission data that needs to be sent and the UE_ID, to generate the MAC 0 by using the system function. The information such as the timestamp and the sequence number is added to data for generating the MAC 0, so that the access point can better check message integrity, and data transmission security is improved. In the following application scenarios, during generation of the message authentication code, the timestamp and the sequence number may also be added, based on actual application scenario requirements, to data that is input into the system function, to improve data transmission security in the application scenarios. Details are not described below.
(59) In a specific implementation, after the UE obtains the protection message by encrypting the transmission data, the UE may send the protection message to the access point. The protection message may include an indicator, and the indicator is used to transmit the foregoing indication information to notify the access point of the protection manner of the transmission data.
(60) In some feasible implementations, after receiving the protection message, the access point may first determine the protection manner of the transmission data based on the protection message, and then obtain related data from the second prestored data based on the protection manner to parse the transmission data. If the protection manner of the transmission data is encrypting the transmission data and the MAC 0 by using the public key for encryption and the GPK.sub.enc, the access point may obtain the SK.sub.BS_ID_enc and the GPK.sub.enc from the second prestored data, and decrypt the protection message by using the SK.sub.BS_ID_enc and the GPK.sub.enc, to obtain a decrypted message. Further, the access point may obtain, from the decrypted message, the MAC 0 carried in the protection message. After obtaining the decrypted message through decryption, the access point may further input the decrypted message into a system function to obtain a message authentication code (which may be specifically set to a second message authentication code MAC 1). Data for generating the MAC 1 may also include information such as a timestamp and a sequence number. Specifically, if the broadcast message of the access point carries information such as a timestamp and a sequence number, when generating the message authentication code, the UE may add the timestamp and the sequence number to the data for generating the message authentication code. Correspondingly, when the access point attempts to authenticate the protection message sent by the UE, the access point may add the information such as the timestamp and the sequence number to the data for generating the message authentication code used to attempt to authenticate the protection message, which may be specifically determined based on an actual application scenario. In the following application scenarios, during generation of a message authentication code, it may also be determined, based on actual application scenario requirements, whether to add a timestamp and a message authentication code, and details are not described herein. When the MAC 1 matches the MAC 0, the transmission data carried in the protection message can be obtained, and then the transmission data can be sent to the core network.
(61) Further, in some feasible implementations, when the UE needs to send the transmission data to the target access point (access point for short), the UE may further sign the transmission data. Specifically, when the UE needs to send the transmission data to the access point, the UE may obtain the public key for encryption, the GPK.sub.enc, the GPK.sub.sig, and the SK.sub.UE_ID_Sig from the first prestored data. Then the UE may sign the transmission data based on the GPK.sub.sig and the SK.sub.UE_ID_Sig to obtain a signature Sig2, and encrypt the transmission data, the identification information of the UE, and the Sig2 by using the public key for encryption and the GPK.sub.enc, to obtain the protection message. The protection message may carry indication information indicating a protection manner of the transmission data. The protection manner of the transmission data is encrypting the transmission data and the Sig2 by using the public key for encryption and the GPK.sub.enc.
(62) In a specific implementation, after the UE obtains the protection message by encrypting the transmission data, the UE may send the protection message to the access point. The protection message may include an indicator, and the indicator is used to transmit the foregoing indication information to notify the access point of the protection manner of the transmission data.
(63) In some feasible implementations, after receiving the protection message, the access point may first determine the protection manner of the transmission data based on the protection message, and then obtain related data from the second prestored data based on the protection manner to parse the transmission data. The protection manner of the transmission data is encrypting the transmission data and the Sig2 by using the public key for encryption and the GPK.sub.enc. After determining, based on the indication message indicating the encryption manner, that the protection manner of the transmission data is encrypting the transmission data and the Sig2 by using the public key for encryption and the GPK.sub.enc, the access point may obtain the GPK.sub.enc and the SKB.sub.BS_ID_enc from the second prestored data, and decrypt the protection message by using the SK.sub.BS_ID_enc and the GPK.sub.enc, to obtain the transmission data. Further, the access point may further obtain the identification information (such as the UE_ID) of the UE and the Sig2 from a decrypted message obtained by decrypting the protection message. In a specific implementation, when the UE sends the protection message to the access point, the UE may add an identifier such as the UE_ID to the protection message, so that the access point attempts to authenticate the signature in the protection message based on the identifier such as the UE_ID, to determine whether to transmit the transmission data to the core network.
(64) In a specific implementation, after determining, based on the indication message indicating the encryption manner, that the protection manner of the transmission data is encrypting the transmission data and the Sig2 by using the public key for encryption and the GPK.sub.enc, the access point may obtain the GPK.sub.sig from the second prestored data, and attempt to authenticate the Sig2 carried in the protection message by using the UE_ID and the GPK.sub.sig. If the Sig2 in the protection message has been authenticated, the access point may send the transmission data to the core network.
(65) In this embodiment of the present invention, when the UE sends uplink data to the access point, the UE may use information such as the identity of the access point as the public key for encryption, and encrypt the to-be-uploaded transmission data by using the global public key in the IBC technology, so as to effectively protect air interface signaling and data in a 5G network and avoid leakage of user privacy and signaling content. The access point decrypts, signs, and attempts to authenticate, by using a message authentication code, the message sent by the UE, to filter out invalid signaling and data and protect security of the core network.
(66)
(67) In this application scenario, UE and a radio access network (RAN) use an IBE technology to perform encryption for transmission of uplink data from the UE to the RAN, but the UE does not provide authentication information for a message. Therefore, the RAN has no authentication capability for the user message. The RAN is a network to which the access point belongs, and the RAN can provide a function of the access point. In this application scenario, an example in which an RAN side is a base station is used for description. A specific procedure in which a system including the UE and the base station performs data transmission includes the following steps.
(68) 31. The base station obtains system parameters in an IBC technology.
(69) In a specific implementation, the base station may obtain the system parameters from a network. The system parameters may include the public key for encryption (such as the BS_ID), a global public key GPK, and a key SK.sub.BS_ID for encryption or signature corresponding to the base station. When the base station has both functions of encryption and signature, the system parameters that the base station needs to obtain from the network include two global public keys, namely a GPK.sub.enc and a GPK.sub.Sig, and two private keys, which are respectively the SK.sub.BS_ID_enc and the SK.sub.BS_ID_Sig.
(70) 32. The base station stores the system parameters in the IBC technology.
(71) The system parameters include the BS_ID, the GPK.sub.enc, the GPK.sub.Sig, the SK.sub.BS_ID_enc, the SK.sub.BS_ID_Sig, and the like.
(72) 33. The UE obtains processing parameters in the IBC technology.
(73) In a specific implementation, the UE obtains, from a network, an operator ID of an operator to which the UE belongs and an IBC technology-based public key GPK. There may be two GPKs that are respectively corresponding to encryption and signature, such as a GPK.sub.enc and a GPK.sub.Sig.
(74) 34. The base station sends a broadcast message.
(75) In a specific implementation, the broadcast message includes an indicator, and the indicator (such as an indicator 1) may be used to indicate whether the message includes a public key in a PKI technology or a public key in the IBC technology, or may be used to indicate an identity (namely, the BS_ID) of the base station, or may be used to indicate whether the base station supports IBE technology-based encryption, whether the base station has a signature capability, and so on. The broadcast message may further carry a timestamp or a message sequence number.
(76) Further, the base station may sign the message by using the GPK.sub.Sig and the private key SK.sub.BS_ID_Sig, to obtain a Sig1.
(77) 35. The UE attempts to authenticate the message and stores related data carried in the broadcast message.
(78) In a specific implementation, after receiving the broadcast message sent by the base station, the UE first determines, based on the indicator 1 included in the broadcast message, whether the base station supports public key-based encryption and a public key type. The public key type includes a PKI public key or an IBC public key. The IBC public key is described in this embodiment of the present invention, and the PKI public key is not limited. The UE may further determine whether the timestamp or the sequence number in the message is valid. The UE further determines whether the message carries a signature. If the broadcast message includes a signature (such as the foregoing Sig1), the UE obtains a corresponding operator ID (such as the foregoing operator ID2) based on an operator to which the base station belongs, and further determines a global public key GPK.sub.Sig corresponding to the operator ID2. The UE checks validity of the message by using identification information (such as the BS_ID) of the base station and the GPK.sub.sig. If the message is valid, the public key for encryption (such as the BS_ID, where the BS_ID is also the identification information of the base station), the timestamp, the sequence number, and the like that are included in the broadcast message are stored. Otherwise, the UE discards the message. In a specific implementation, for authentication of the foregoing signature and broadcast message, refer to the related description of each step in the foregoing S201 to S206, and details are not described herein again.
(79) 36. The UE generates a message authentication code, and encrypts transmission data to obtain a protection message.
(80) In a specific implementation, when the UE needs to send signaling or connectionless small data to the RAN, the UE first obtains, from first prestored data based on the ID (such as the BS_ID) of the receiver, the public key for encryption (the public key for encryption may be specifically the BS_ID or a key including the BS_ID) corresponding to the BS_ID and system parameters (such as the timestamp, the sequence number, and the GPK.sub.enc) corresponding to the BS_ID. The UE inputs a message to be encrypted by a user into a system function (which may be specifically a hash function (Hash)) to obtain a message authentication code (such as a MAC 0). The message to be encrypted by the user may be signaling (or connectionless small data). Further, the message to be encrypted by the user may include signaling (or connectionless small data), a timestamp, a sequence number, and the like. The timestamp or the sequence number may be a value recently received by the UE. The UE performs an encryption operation on the to-be-sent signaling (or connectionless small data) and the MAC 0 by using the public key for encryption (BS_ID) or the global public key GPK.sub.enc corresponding to the BS, to obtain the protection message.
(81) 37. The UE sends the protection message obtained through encryption in step 36 to the base station.
(82) In a specific implementation, the protection message includes an indicator (such as an indicator 2) indicating whether the protection message is encrypted, or a protection manner of the protection message, for example, whether the message is encrypted by using the BS_ID.
(83) 38. The base station attempts to authenticate the message sent by the UE.
(84) In a specific implementation, after receiving the protection message sent by the UE, the base station first determines the protection manner of the protection message based on the indicator (such as the indicator 2) carried in the protection message. If the protection message is encrypted by using the BS_ID and the GPK.sub.enc, the base station may obtain the BS_ID, the private key SK.sub.BS_ID_enc corresponding to the BS_ID, and the global public key GPK.sub.enc from the prestored data of the base station. Then the base station may decrypt the received protection message by using the obtained parameters (the SK.sub.BS_ID_enc and the global public key GPK.sub.enc). If the message further includes the message authentication code (MAC 0), the base station further generates another message authentication code (MAC 1) based on a message obtained through decryption, and checks integrity of the message by comparing the MAC 0 and the MAC 1.
(85) 39. The base station sends a message obtained through decryption to a core network.
(86) In a specific implementation, if the base station determines the integrity of the protection message by comparing the MAC 0 and the MAC 1, the base station may send the transmission data carried in the protection message to the core network. Further, after authentication of the message is completed, the base station may update charging information of the related user and send updated charging information to a charging unit of the core network.
(87) In a specific implementation, for more detailed implementations of the foregoing steps, refer to the related description of each step in the foregoing S201 to S206, and details are not described herein again.
(88)
(89) In this application scenario, UE and the Wi-Fi AP use an IBE technology to encrypt data from the UE to a RAN, but the UE does not provide authentication information for a message. Therefore, the Wi-Fi AP has no authentication capability for the user message. The RAN is a network to which the access point belongs, and the RAN can provide a function of the access point. In this application scenario, an example in which an RAN side is a Wi-Fi AP is used for description. A specific procedure in which a system including the UE and the Wi-Fi AP performs data transmission includes the following steps.
(90) 41. The Wi-Fi AP obtains system parameters in an IBC technology.
(91) In a specific implementation, the Wi-Fi AP may obtain the system parameters from a network. The system parameters may include the public key for encryption (such as the MAC address or the SSID), a global public key GPK, and a key SK.sub.BS_ID for encryption or signature corresponding to the Wi-Fi AP. When the Wi-Fi AP has both functions of encryption and signature, the system parameters that the Wi-Fi AP needs to obtain from the network include two global public keys, namely a GPK.sub.enc and a GPK.sub.Sig, and two private keys, which are respectively the SK.sub.BS_ID_enc and the SK.sub.BS_ID_Sig.
(92) 42. The Wi-Fi AP stores the system parameters in the IBC technology.
(93) The system parameters include the MAC address or the SSID, the GPK.sub.enc, the GPK.sub.Sig, the SK.sub.BS_ID_enc, the SK.sub.BS_ID_Sig, and the like.
(94) 43. The UE obtains processing parameters in the IBC technology.
(95) In a specific implementation, the UE obtains, from a network, an operator ID of an operator to which the UE belongs and an IBC technology-based public key GPK. There may be two GPKs that are respectively corresponding to encryption and signature, such as a GPK.sub.enc and a GPK.sub.Sig.
(96) 44. The Wi-Fi AP sends a broadcast message or a unicast message.
(97) In a specific implementation, the broadcast message may be a beacon, and the unicast message may be a probe response. The broadcast message is used as an example for description in the following. The broadcast message includes an indicator, and the indicator (such as an indicator 1) may be used to indicate whether the message includes a public key in a PKI technology or a public key in the IBC technology, or may be used to indicate an identity (namely, the MAC address or the SSID) of the Wi-Fi AP, or may be used to indicate whether the Wi-Fi AP supports IBE technology-based encryption, whether the Wi-Fi AP has a signature capability, and so on. The broadcast message may further carry a timestamp or a message sequence number.
(98) Further, the Wi-Fi AP may sign the message by using the MAC address or the SSID, and the private key SK.sub.BS_ID_Sig, to obtain a Sig1.
(99) 45. The UE attempts to authenticate the message and stores related data carried in the broadcast message or the unicast message.
(100) In a specific implementation, after receiving the broadcast message sent by the Wi-Fi AP, the UE first determines, based on the indicator 1 included in the broadcast message, whether the Wi-Fi AP supports public key-based encryption and a public key type. The public key type includes a PKI public key or an IBC public key. The IBC public key is described in this embodiment of the present invention, and the PKI public key is not limited. The UE may further determine whether the timestamp or the sequence number in the message is valid. The UE further determines whether the message carries a signature. If the broadcast message includes a signature (such as the foregoing Sig1), the UE further determines the global public key GPK.sub.Sig corresponding to the MAC address or the SSID based on the MAC address or the SSID of the Wi-Fi AP. The UE checks validity of the message by using identification information (such as the MAC address or the SSID) of the Wi-Fi AP and the GPK.sub.Sig. If the message is valid, the public key for encryption (such as the MAC address or the SSID, where the MAC address or the SSID is also the identification information of the Wi-Fi AP), the timestamp, the sequence number, and the like that are included in the broadcast message are stored. Otherwise, the UE discards the message. In a specific implementation, for authentication of the foregoing signature and broadcast message, refer to the related description of each step in the foregoing S201 to S206, and details are not described herein again.
(101) 46. The UE generates a message authentication code, and encrypts transmission data to obtain a protection message.
(102) In a specific implementation, when the UE needs to send signaling or connectionless small data to the RAN, the UE first obtains, from first prestored data based on the ID (such as the MAC address or the SSID) of the receiver, the public key for encryption (the public key for encryption may be specifically the MAC address, or the SSID, or a key including the MAC address or the SSID) corresponding to the MAC address or the SSID and system parameters (such as the timestamp, the sequence number, and the GPK.sub.enc) corresponding to the MAC address or the SSID. The UE inputs a message to be encrypted by a user into a system function (which may be specifically a hash function (Hash)) to obtain a message authentication code (such as a MAC 0). The message to be encrypted by the user may be signaling (or connectionless small data). Further, the message to be encrypted by the user may include signaling (or connectionless small data), a timestamp, a sequence number, and the like. The timestamp or the sequence number may be a value recently received by the UE. The UE performs an encryption operation on the to-be-sent signaling (or connectionless small data) and the MAC 0 by using the public key for encryption (such as the MAC address or the SSID) or the global public key GPK.sub.enc corresponding to the Wi-Fi AP, to obtain the protection message.
(103) 47. The UE sends the protection message obtained through encryption in step 46 to the Wi-Fi AP, where the protection message includes an indicator (such as an indicator 2) indicating whether the protection message is encrypted, or a protection manner of the protection message, for example, whether the message is encrypted by using the MAC address or the SSID of the Wi-Fi AP.
(104) 48. The Wi-Fi AP attempts to authenticate the message.
(105) In a specific implementation, after receiving the protection message sent by the UE, the Wi-Fi AP first determines the protection manner of the protection message based on the indicator (such as the indicator 2) carried in the protection message. If the protection message is GPK.sub.enc encrypted by using the GPK and the MAC address or the SSID, the Wi-Fi AP may obtain the MAC address or the SSID, the private key SK.sub.BS_ID_enc corresponding to the MAC address or the SSID, and the global public key GPK.sub.enc from the prestored data of the Wi-Fi AP. Then the Wi-Fi AP may decrypt the received protection message by using the obtained parameters (the SK.sub.BS_ID_enc and the global public key GPK.sub.enc). If the message further includes the message authentication code (MAC 0), the Wi-Fi AP further generates another message authentication code (MAC 1) based on a message obtained through decryption, and checks integrity of the message by comparing the MAC 0 and the MAC 1.
(106) 49. The Wi-Fi AP sends a message obtained through decryption to a core network.
(107) In a specific implementation, if the Wi-Fi AP determines the integrity of the protection message by comparing the MAC 0 and the MAC 1, the Wi-Fi AP may send the transmission data carried in the protection message to the core network. In a specific implementation, for more detailed implementations of the foregoing steps, refer to the related description of each step in the foregoing S201 to S206, and details are not described herein again.
(108) Further, in some feasible implementations, when the UE needs to send the transmission data to the access point, the UE may further generate a symmetric key based on data such as the public key for encryption, the global public key, and the private key for data encryption corresponding to the UE, and then may protect the transmission data by using the symmetric key. Specifically, when the UE needs to send the transmission data to the access point, the UE may obtain the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_enc from the first prestored data. Further, the UE may generate the symmetric key (set to a first symmetric key K1) based on the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_enc, and input the transmission data and the K1 into a system function to obtain a message authentication code (set to a third message authentication code MAC 2). It should be noted that the system function described in this embodiment of the present invention may be specifically a hash function, or may be another system function that can implement generation of the message authentication code, and may be determined based on an actual application scenario. No limitation is imposed herein.
(109) In a specific implementation, after the UE generates the K1 based on the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_enc, the UE may encrypt the transmission data, identification information such as a UE_ID of the UE, and the foregoing generated MAC 2 by using the public key for encryption and the GPK.sub.enc, to obtain the protection message. Further, the UE may add, to the protection message, indication information indicating a protection manner of the transmission data. The indication information is used to indicate that the protection manner of the transmission data is encrypting the transmission data, the UE_ID, and the MAC 2 by using the public key for encryption and the GPK.sub.enc.
(110) In a specific implementation, after the UE obtains the protection message by encrypting the transmission data, the UE may send the protection message to the access point. The protection message may include an indicator, and the indicator is used to transmit the foregoing indication information to notify the access point of the protection manner of the transmission data.
(111) In some feasible implementations, after receiving the protection message, the access point may first determine the protection manner of the transmission data based on the protection message, and then obtain related data from the second prestored data based on the protection manner to parse the transmission data. The protection manner of the transmission data is encrypting the transmission data, the UE_ID, and the MAC 2 by using the public key for encryption and the GPK.sub.enc. The access point may determine, based on the indication message indicating the protection manner, that the protection manner of the transmission data is encrypting the transmission data, the UE_ID, and the MAC 2 by using the public key for encryption and the GPK.sub.enc, then obtain the GPK.sub.enc and the SK.sub.BS_ID_enc from the second prestored data, and decrypt the protection message by using the SK.sub.BS_ID_enc and the GPK.sub.enc, to obtain a decrypted message. Further, the access point may obtain, from the decrypted message, the MAC 2, the UE_ID, and the transmission data that are carried in the protection message, and generate a symmetric key K2 by using the public key for encryption, the UE_ID, the GPK.sub.enc, and the SK.sub.BS_ID_enc. After the access point generates the K2, the access point may calculate a message authentication code (set to a fourth message authentication code MAC 3) by using the K2, the UE_ID, and the transmission data obtained through decryption. If the MAC 3 matches the MAC 2 carried in the protection message, the access point may send, to the core network, the transmission data sent by the UE that is carried in the protection message.
(112) It should be noted that, in this embodiment of the present invention, in a same application scenario, the public key for encryption used by the UE for data encryption is the same as the public key for encryption used by the access point for data decryption or authentication, so that encrypted data can be correctly decrypted by a receiver. The public key for encryption is transmitted from the transmission data receiver (namely, the access point) to the transmission data sender (namely, the UE) by using a broadcast message or the like, and the transmission data sender uses the public key provided by the transmission data receiver to protect data, so as to avoid information leakage caused by carrying information such as a data encryption key during data transmission and improve network security.
(113)
(114) In this application scenario, different from the implementation in the application scenario shown in
(115) 51. The base station obtains system parameters in an IBC technology.
(116) In a specific implementation, the base station may obtain the system parameters from a network. The system parameters may include the public key for encryption (such as the BS_ID), a global public key GPK, and a key SK.sub.BS_ID for encryption or signature corresponding to the base station. When the base station has both functions of encryption and signature, the system parameters that the base station needs to obtain from the network include two global public keys, namely a GPK.sub.enc and a GPK.sub.Sig, and two private keys, which are respectively the SK.sub.BS_ID_enc and the SK.sub.BS_ID_Sig.
(117) 52. The base station stores the system parameters in the IBC technology.
(118) The system parameters include the BS_ID, the GPK.sub.enc, the GPK.sub.Sig, the SK.sub.BS_ID_enc, the SK.sub.BS_ID_Sig, and the like.
(119) 53. The UE obtains processing parameters in the IBC technology.
(120) In a specific implementation, the UE obtains, from a network, an operator ID1 of an operator to which the UE belongs, and an IBC technology-based public key GPK and private key. There may be two GPKs that are respectively corresponding to encryption and signature, such as a GPK.sub.enc and a GPK.sub.Sig. There may also be two private keys that are respectively corresponding to encryption and signature, such as an SK.sub.UE_ID_enc and an SK.sub.UE_ID_Sig.
(121) 54. The base station sends a broadcast message.
(122) In a specific implementation, the broadcast message includes an indicator, and the indicator (such as an indicator 1) may be used to indicate whether the message includes a public key in a PKI technology or a public key in the IBC technology, or may be used to indicate an identity (namely, the BS_ID) of the base station, or may be used to indicate whether the base station supports IBE technology-based encryption, whether the base station has a signature capability, and so on. The broadcast message may further carry a timestamp or a message sequence number.
(123) Further, the base station may sign the message by using the BS_ID and the private key SK.sub.BS_ID_Sig, to obtain a Sig1.
(124) 55. The UE attempts to authenticate the message and stores related data carried in the broadcast message.
(125) After receiving the broadcast message sent by the base station, the UE first determines, based on the indicator 1 included in the broadcast message, whether the base station supports public key-based encryption and a public key type. The public key type includes a PKI public key or an IBC public key. The IBC public key is described in this embodiment of the present invention, and the PKI public key is not limited. The UE may further determine whether the timestamp or the sequence number in the message is valid. The UE further determines whether the message carries a signature. If the broadcast message includes a signature (such as the foregoing Sig1), the UE obtains a corresponding operator ID (such as the foregoing operator ID2) based on an operator to which the base station belongs, and further determines a global public key GPK.sub.Sig corresponding to the operator ID2. The UE checks validity of the message by using identification information (such as the BS_ID) of the base station and the GPK.sub.Sig. If the message is valid, the public key for encryption (such as the BS_ID, where the BS_ID is also the identification information of the base station), the timestamp, the sequence number, and the like that are included in the broadcast message are stored. Otherwise, the UE discards the message. In a specific implementation, for authentication of the foregoing signature and broadcast message, refer to the related description of each step in the foregoing S201 to S206, and details are not described herein again.
(126) 56. The UE generates an authentication code, and encrypts transmission data by using a public key for encryption and a global public key, to obtain a protection message.
(127) In a specific implementation, when the UE needs to send signaling or connectionless small data to the RAN, the UE first obtains, from first prestored data based on the ID (such as the BS_ID) of the receiver, the public key for encryption (the public key for encryption may be specifically the BS_ID or a key including the BS_ID) corresponding to the BS_ID and system parameters (such as the timestamp, the sequence number, and the GPK.sub.enc) corresponding to the BS_ID. Further, the UE may generate an authentication code for the message that needs to be sent. There may be two authentication code generation manners.
(128) In a first manner, the UE generates a symmetric key (set to a K1) by using data such as the private key SK.sub.UE_ID, the global public key GPK.sub.enc, and the public key for encryption (namely, the BS_ID). The UE inputs a message to be encrypted by a user (namely, the transmission data, such as signaling or connectionless small data, and may further include the K1 generated by using the foregoing method and a timestamp or a sequence number, where the timestamp or the sequence number may be a value recently received by the UE) into a system function to obtain a message authentication code (set to a MAC 2) with an authentication capability.
(129) In a second manner, the UE directly uses the GPK.sub.sig and the SK.sub.UE_ID_sig to sign the to-be-sent message (namely, the transmission data, such as signaling or connectionless small data, and may further include a timestamp, a sequence number, or the like) to obtain a signature Sig2.
(130) The UE performs an encryption operation on the to-be-sent signaling (or connectionless small data) and the MAC 2 by using the public key for encryption (BS_ID) and the global public key GPK.sub.enc that are corresponding to the BS, to obtain the protection message. Further, the UE may also perform an encryption operation on the to-be-sent signaling (or connectionless small data) and the Sig2 by using the public key for encryption (BS_ID) and the global public key GPK.sub.enc that are corresponding to the BS, to obtain the protection message.
(131) 57. The UE sends the protection message obtained through encryption in step 56 to the base station.
(132) The protection message includes an indicator (such as an indicator 2) indicating whether the protection message is encrypted, or a protection manner of the protection message, for example, whether the message is encrypted by using the BS_ID.
(133) 58. The base station attempts to authenticate the protection message.
(134) In a specific implementation, after receiving the protection message sent by the UE, the base station first determines the protection manner of the protection message based on the indicator (such as the indicator 2) carried in the protection message. If the protection message is encrypted by using the BS_ID and the GPK.sub.enc, the base station may obtain the BS_ID, the private key SK.sub.BS_ID_enc corresponding to the BS_ID, and the global public key GPK.sub.enc from the prestored data of the base station. Then the base station may decrypt the received protection message by using the obtained parameters (the SK.sub.BS_ID_enc and the global public key GPK.sub.enc).
(135) If the message further includes the authentication code (the message authentication code or the signature), the base station needs to further check validity of the message. If integrity protection is performed on the message by using the symmetric key K1, the base station generates a symmetric key K2 by using the private key SK.sub.BS_ID_enc, the global public key GPK.sub.enc, and the UE_ID, and then calculates a message authentication code MAC 3 by using the K2, the UE_ID, and the transmission data obtained after the protection message is decrypted. The base station attempts to authenticate the protection message by comparing the MAC 3 and the MAC 2. If the UE signs the protection message, the base station uses the UE_ID carried in the message to attempt to authenticate the protection message with reference to the global public key GPK.sub.sig (other parameters such as the timestamp or the sequence number may be further included).
(136) 59. The base station sends a message obtained through decryption to a core network.
(137) In a specific implementation, if the base station determines the integrity of the protection message by comparing the MAC 3 and the MAC 2 or through authentication of the Sig2, the base station may send the transmission data carried in the protection message to the core network. In a specific implementation, for more detailed implementations of the foregoing steps, refer to the related description of each step in the foregoing S201 to S206, and details are not described herein again.
(138)
(139) In this application scenario, different from the implementation in the application scenario shown in
(140) 61. The Wi-Fi AP obtains system parameters in an IBC technology.
(141) In a specific implementation, the Wi-Fi AP may obtain the system parameters from a network. The system parameters may include the public key for encryption (such as the MAC address or the SSID), a global public key GPK, and a key SK.sub.BS_ID for encryption or signature corresponding to the Wi-Fi AP. When the Wi-Fi AP has both functions of encryption and signature, the system parameters that the Wi-Fi AP needs to obtain from the network include two global public keys, namely a GPK.sub.enc and a GPK.sub.Sig, and two private keys, which are respectively the SK.sub.BS_ID_enc and the SK.sub.BS_ID_Sig.
(142) 62. The Wi-Fi AP stores the system parameters in the IBC technology.
(143) The system parameters include the MAC address or the SSID, the GPK.sub.enc, the GPK.sub.Sig, the SK.sub.BS_ID_enc, the SK.sub.BS_ID_Sig, and the like.
(144) 63. The UE obtains processing parameters in the IBC technology.
(145) In a specific implementation, the UE obtains, from a network, a MAC address of the UE and an IBC technology-based public key GPK and private key. There may be two GPKs that are respectively corresponding to encryption and signature, such as a GPK.sub.enc and a GPK.sub.Sig. There may also be two private keys that are respectively corresponding to encryption and signature, such as an SK.sub.MAC_enc and an SK.sub.MAC_sig.
(146) 64. The Wi-Fi AP sends a broadcast message or a unicast message.
(147) In a specific implementation, the broadcast message may be a beacon, and the unicast message may be a probe response. The broadcast message is used as an example for description in the following. The broadcast message includes an indicator, and the indicator (such as an indicator 1) may be used to indicate whether the message includes a public key in a PKI technology or a public key in the IBC technology, or may be used to indicate an identity (namely, the MAC address or the SSID) of the Wi-Fi AP, or may be used to indicate whether the Wi-Fi AP supports IBE technology-based encryption, whether the Wi-Fi AP has a signature capability, and so on. The broadcast message may further carry a timestamp or a message sequence number.
(148) Further, the Wi-Fi AP may sign the message by using the MAC address or the SSID, and the private key SK.sub.BS_ID_Sig, to obtain a Sig1.
(149) 65. The UE attempts to authenticate the message and stores related data carried in the broadcast message.
(150) In a specific implementation, after receiving the broadcast message sent by the Wi-Fi AP, the UE first determines, based on the indicator 1 included in the broadcast message, whether the Wi-Fi AP supports public key-based encryption and a public key type. The public key type includes a PKI public key or an IBC public key. The IBC public key is described in this embodiment of the present invention, and the PKI public key is not limited. The UE may further determine whether the timestamp or the sequence number in the message is valid. The UE further determines whether the message carries a signature. If the broadcast message includes a signature (such as the foregoing Sig1), the UE further determines the global public key GPK.sub.Sig corresponding to the MAC address or the SSID based on the MAC address or the SSID of the Wi-Fi AP. The UE checks validity of the message by using identification information (such as the MAC address or the SSID) of the Wi-Fi AP and the GPK.sub.Sig. If the message is valid, the public key for encryption (such as the MAC address or the SSID, where the MAC address or the SSID is also the identification information of the Wi-Fi AP), the timestamp, the sequence number, and the like that are included in the broadcast message are stored. Otherwise, the UE discards the message. In a specific implementation, for authentication of the foregoing signature and broadcast message, refer to the related description of each step in the foregoing S201 to S206, and details are not described herein again.
(151) 66. The UE generates an authentication code, and encrypts transmission data by using a public key for encryption and a global public key, to obtain a protection message.
(152) In a specific implementation, when the UE needs to send signaling or connectionless small data to the RAN, the UE first obtains, from first prestored data based on the ID (such as the MAC address or the SSID) of the receiver, the public key for encryption (the public key for encryption may be specifically the MAC address, or the SSID, or a key including the MAC address or the SSID) corresponding to the MAC address or the SSID and system parameters (such as the timestamp, the sequence number, and the GPK.sub.enc) corresponding to the MAC address or the SSID. Further, the UE may generate an authentication code for the message that needs to be sent. There may be two authentication code generation manners.
(153) In a first manner, the UE generates a symmetric key (set to a K1) by using data such as the private key SK.sub.MAC_enc, the global public key GPK.sub.enc, and the MAC address or the SSID of the UE. The UE inputs a message to be encrypted by a user (namely, the transmission data, such as signaling or connectionless small data, and may further include the K1 generated by using the foregoing method and a timestamp or a sequence number, where the timestamp or the sequence number may be a value recently received by the UE) into a system function to obtain a message authentication code (set to a MAC 2) with an authentication capability.
(154) In a second manner, the UE directly uses the GPK.sub.sig and the SK.sub.MAC_sig to sign the to-be-sent message (namely, the transmission data, such as signaling or connectionless small data, and may further include a timestamp, a sequence number, or the like) to obtain a signature Sig2.
(155) The UE performs an encryption operation on the to-be-sent signaling (or connectionless small data) and the MAC 2 by using the public key for encryption (such as the MAC address or the SSID) and the global public key GPK.sub.enc that are corresponding to the Wi-Fi AP, to obtain the protection message. Further, the UE may also perform an encryption operation on the to-be-sent signaling (or connectionless small data) and the Sig2 by using the public key for encryption (the MAC address or the SSID) and the global public key GPK.sub.enc that are corresponding to the Wi-Fi AP, to obtain the protection message.
(156) 67. The UE sends the protection message obtained through encryption in step 56 to the Wi-Fi AP.
(157) The protection message includes an indicator (such as an indicator 2) indicating whether the protection message is encrypted, or a protection manner of the protection message, for example, whether the message is encrypted by using the MAC address or the SSID of the Wi-Fi AP.
(158) 68. The Wi-Fi AP attempts to authenticate the message.
(159) In a specific implementation, after receiving the protection message sent by the UE, the Wi-Fi AP first determines the protection manner of the protection message based on the indicator (such as the indicator 2) carried in the protection message. If the protection message is encrypted by using the GPK.sub.enc and the MAC address or the SSID of the Wi-Fi AP, the Wi-Fi AP may obtain the MAC address or the SSID of the Wi-Fi AP, the private key SK.sub.BS_ID_enc corresponding to the MAC address or the SSID, and the global public key GPK.sub.enc from the prestored data of the Wi-Fi AP. Then the Wi-Fi AP may decrypt the received protection message by using the obtained parameters (the SK.sub.BS_ID_enc and the global public key GPK.sub.enc).
(160) If the message further includes the authentication code (the message authentication code or the signature), the Wi-Fi AP needs to further check validity of the message. If integrity protection is performed on the message by using the symmetric key K1, the Wi-Fi AP generates a symmetric key K2 by using the public key for encryption (the MAC address or the SSID of the Wi-Fi AP), the private key SK.sub.BS_ID_enc, the global public key GPK.sub.enc, and the UE_ID, and then calculates a message authentication code MAC 3 by using the K2, the UE_ID, and the transmission data obtained after the protection message is decrypted. The Wi-Fi AP attempts to authenticate the protection message by comparing the MAC 3 and the MAC 2. If the UE signs the protection message, the Wi-Fi AP uses the UE_ID carried in the message to attempt to authenticate the protection message with reference to the global public key GPK.sub.sig (other parameters such as the timestamp or the sequence number may be further included).
(161) 69. The Wi-Fi AP sends a message obtained through decryption to a core network.
(162) In a specific implementation, if the Wi-Fi AP determines the integrity of the protection message by comparing the MAC 3 and the MAC 2 or through authentication of the Sig2, the Wi-Fi AP may send the transmission data carried in the protection message to the core network. In a specific implementation, for more detailed implementations of the foregoing steps, refer to the related description of each step in the foregoing S201 to S206, and details are not described herein again.
(163)
(164) In this application scenario, different from the implementation in the application scenario shown in
(165) 71. The base station obtains system parameters in an IBC technology.
(166) In a specific implementation, the base station may obtain the system parameters from the KMS. The system parameters may include the public key for encryption (such as the BS_ID), a global public key GPK, and a key SK.sub.BS_ID for encryption or signature corresponding to the base station. When the base station has both functions of encryption and signature, the system parameters that the base station needs to obtain from the KMS include two global public keys, namely a GPK.sub.enc and a GPK.sub.Sig, and two private keys, which are respectively the SK.sub.BS_ID_enc and the SK.sub.BS_ID_Sig.
(167) 72. The base station stores the system parameters in the IBC technology.
(168) The system parameters include the BS_ID, the GPK.sub.enc, the GPK.sub.Sig, the SK.sub.BS_ID_enc, the SK.sub.BS_ID_Sig, and the like.
(169) 73. The UP-GW obtains system parameters in the IBC technology from a KMS.
(170) The system parameters obtained by the UP-GW from the KMS include the GPK.sub.enc and the GPK.sub.Sig, which are respectively used for encryption and signature.
(171) 74. The UE and the core network perform mutual authentication.
(172) When the UE and the core network perform mutual authentication, an authentication unit in the core network may be a CP-AU defined in 3GPP TR 23.799. For a specific authentication manner, refer to an implementation described in 3GPP TR 23.799, and details are not described herein.
(173) 75. The UE notifies the KMS in the core network that the authentication between the UE and the core network succeeds.
(174) 76. The UE obtains processing parameters in the IBC technology.
(175) In a specific implementation, the UE obtains, from the KMS, an operator ID of an operator to which the UE belongs, and an IBC technology-based public key GPK and private key. There may be two GPKs that are respectively corresponding to encryption and signature, such as a GPK.sub.enc and a GPK.sub.Sig. There may also be two private keys that are respectively corresponding to encryption and signature, such as an SK.sub.UE_ID_enc and an SK.sub.UE_ID_sig.
(176) 77. The base station sends a broadcast message.
(177) In a specific implementation, the broadcast message includes an indicator, and the indicator (such as an indicator 1) may be used to indicate whether the message includes a public key in a PKI technology or a public key in the IBC technology, or may be used to indicate an identity (namely, the BS_ID) of the base station, or may be used to indicate whether the base station supports IBE technology-based encryption, whether the base station has a signature capability, and so on. The broadcast message may further carry a timestamp or a message sequence number.
(178) Further, the base station may sign the message by using the BS_ID and the private key SK.sub.BS_ID_Sig, to obtain a Sig1.
(179) 78. The UE attempts to authenticate the message and stores related data carried in the broadcast message.
(180) In a specific implementation, after receiving the broadcast message sent by the base station, the UE first determines, based on the indicator 1 included in the broadcast message, whether the base station supports public key-based encryption and a public key type. The public key type includes a PKI public key or an IBC public key. The IBC public key is described in this embodiment of the present invention, and the PKI public key is not limited. The UE may further determine whether the timestamp or the sequence number in the message is valid. The UE further determines whether the message carries a signature. If the broadcast message includes a signature (such as the foregoing Sig1), the UE obtains a corresponding operator ID (such as the foregoing operator ID2) based on an operator to which the base station belongs, and further determines a global public key GPK.sub.Sig corresponding to the operator ID2. The UE checks validity of the message by using identification information (such as the BS_ID) of the base station and the GPK.sub.Sig. If the message is valid, the public key for encryption (such as the BS_ID, where the BS_ID is also the identification information of the base station), the timestamp, the sequence number, and the like that are included in the broadcast message are stored. Otherwise, the UE discards the message. In a specific implementation, for authentication of the foregoing signature and broadcast message, refer to the related description of each step in the foregoing S201 to S206, and details are not described herein again.
(181) 79. The UE generates an authentication code, and encrypts transmission data by using a public key for encryption and a global public key, to obtain a protection message.
(182) In a specific implementation, when the UE needs to send signaling or connectionless small data to the RAN, the UE first obtains, from first prestored data based on the ID (such as the BS_ID) of the receiver, the public key for encryption (the public key for encryption may be specifically the BS_ID or a key including the BS_ID) corresponding to the BS_ID and system parameters (such as the timestamp, the sequence number, and the GPK.sub.enc) corresponding to the BS_ID. Further, the UE may generate an authentication code for the message that needs to be sent. There may be two authentication code generation manners.
(183) In a first manner, the UE generates a symmetric key (set to a K1) by using data such as the private key SK.sub.UE_ID, the global public key GPK.sub.enc, and the public key for encryption (namely, the BS_ID). The UE inputs a message to be encrypted by a user (namely, the transmission data, such as signaling or connectionless small data, and may further include the K1 generated by using the foregoing method and a timestamp or a sequence number, where the timestamp or the sequence number may be a value recently received by the UE) into a system function to obtain a message authentication code (set to a MAC 2) with an authentication capability.
(184) In a second manner, the UE directly uses the GPK.sub.sig and the SK.sub.UE_ID_sig to sign the to-be-sent message (namely, the transmission data, such as signaling or connectionless small data, and may further include a timestamp, a sequence number, or the like) to obtain a signature Sig2.
(185) The UE performs an encryption operation on the to-be-sent signaling (or connectionless small data) and the MAC 2 by using the public key for encryption (BS_ID) and the global public key GPK.sub.enc that are corresponding to the BS, to obtain the protection message. Further, the UE may also perform an encryption operation on the to-be-sent signaling (or connectionless small data) and the Sig2 by using the public key for encryption (BS_ID) and the global public key GPK.sub.enc that are corresponding to the BS, to obtain the protection message.
(186) 710. The UE sends the protection message obtained through encryption in step 79 to the base station.
(187) In a specific implementation, the protection message includes an indicator (such as an indicator 2) indicating whether the protection message is encrypted, or a protection manner of the protection message, for example, whether the message is encrypted by using the BS_ID, and whether the message is signed by using the UE_ID.
(188) 711. The base station attempts to authenticate the message sent by the UE.
(189) In a specific implementation, after receiving the protection message sent by the UE, the base station first determines the protection manner of the protection message based on the indicator (such as the indicator 2) carried in the protection message. If the protection message is encrypted by using the BS_ID and the GPK.sub.enc, the base station may obtain the BS_ID, the private key SK.sub.BS_ID_enc corresponding to the BS_ID, and the global public key GPK.sub.enc from the prestored data of the base station. Then the base station may decrypt the received protection message by using the obtained parameters (the SK.sub.BS_ID_enc and the global public key GPK.sub.enc).
(190) If the message further includes the authentication code (the message authentication code or the signature), the base station needs to further check validity of the message. If integrity protection is performed on the message by using the symmetric key K1, the base station generates a symmetric key K2 by using the public key for encryption (such as the BS_ID), the private key SK.sub.BS_ID_enc, the global public key GPK.sub.enc, and the UE_ID, and then calculates a message authentication code MAC 3 by using the K2, the UE_ID, and the transmission data obtained after the protection message is decrypted. The base station attempts to authenticate the protection message by comparing the MAC 3 and the MAC 2. If the UE signs the protection message, the base station uses the UE_ID carried in the message to attempt to authenticate the protection message with reference to the global public key GPK.sub.sig (other parameters such as the timestamp or the sequence number may be further included).
(191) 712. The base station sends a message obtained through decryption to a core network.
(192) In a specific implementation, after the base station has authenticated the protection message, the base station may send the message obtained through decryption to the UP-GW of the core network. The message sent to the UP-GW includes information such as the UE_ID and the signature generated after the UE signs the message by using the SK.sub.UE_ID_sig.
(193) 713. The UP-GW attempts to authenticate the message.
(194) In a specific implementation, after receiving the message, the UP-GW may use the GPK.sub.sig and the UE_ID to attempt to authenticate the signature carried in the message. For a specific authentication manner, refer to the signature authentication manners in the foregoing application scenarios. Details are not described herein again. After the authentication succeeds, the message is further forwarded to another router or server.
(195) In a specific implementation, for more detailed implementations of the foregoing steps, refer to the related description of each step in the foregoing S201 to S206, and details are not described herein again.
(196)
(197) In this application scenario, encryption and decryption of data are based on PKI, and keys are a PKI-based public key and private key. UE and a RAN can implement transmission data protection by using the PKI technology with reference to the foregoing implementation of the same principle using the IBC technology. In this application scenario, the UE and the RAN use the PKI technology to encrypt data from the UE to the RAN, but the UE does not provide authentication information for a message. Therefore, the RAN has no authentication capability for the user message. A specific procedure includes the following steps.
(198) 81. A base station obtains system parameters in the PKI technology.
(199) In a specific implementation, the foregoing system parameters include an identity (such as a BS_ID) of the base station, a public key PK 1 used by the base station for encryption and a certificate thereof, a public key PK 2 for decryption and a certificate thereof, a private key SK 1 used for encryption, a private key SK 2 used for decryption, and the like.
(200) 82. The base station stores the system parameters in the PKI technology.
(201) In a specific implementation, the system parameters include the BS_ID, the PK 1, the PK 2, the SK 1, the SK 2, and the like.
(202) 83. The UE obtains an operator ID of an operator and a PKI technology-based PK 1 and PK 2 from a network.
(203) 84. The base station sends a broadcast message.
(204) In a specific implementation, the broadcast message includes an indicator (such as an indicator 3) indicating whether the message includes the PKI-based public keys PKs (including the PK 1 and the PK 2) and the certificates thereof.
(205) 85. The UE attempts to authenticate the broadcast message by using a PKI key.
(206) In a specific implementation, after receiving the broadcast message sent by the base station, the UE first determines, based on the indicator 3 included in the broadcast message, whether the base station supports PKI public key-based encryption. The UE further determines whether a timestamp or a sequence number in the message is valid. The UE further determines whether the message carries a signature. If the broadcast message further includes a signature, the UE uses the PK 2 to check validity of the message. If the message is valid, the UE stores the BS_ID, the PK 1, and the PK 2, and may further store the timestamp, the sequence number, or the like. Otherwise, if the message is invalid, the UE discards the message.
(207) 86. The UE protects transmission data.
(208) In a specific implementation, when the UE needs to send the transmission data (including signaling or connectionless small data) to a network side, the UE first obtains data such as the corresponding public key for encryption PK 1, the timestamp, and the sequence number based on the BS_ID of the base station, and inputs the obtained data into a system function to obtain a message authentication code (set to a MAC 8). The UE uses the BS_ID and the PK 1 to perform an encryption operation on the to-be-sent message and the MAC 8 thereof.
(209) 87. The UE sends a message obtained through encryption in step 86 to the base station.
(210) In a specific implementation, the foregoing message includes an indicator (such as an indicator 4) indicating whether the message is encrypted, or whether the message is encrypted by using the PKI-based public key of the base station.
(211) 88. The base station attempts to authenticate the message.
(212) In a specific implementation, after receiving the message sent by the UE, the base station first determines an encryption manner of the message based on the indicator carried in the message. If the message is encrypted by using the PKI public key PK 1, the base station obtains the private key SK 1 corresponding to the base station and decrypts the received message by using a parameter such as the obtained SK 1. If the message further includes the message authentication code, the base station further checks integrity of the message based on a parameter such as the SK 1.
(213) 89. The base station sends a message obtained through decryption to a core network.
(214) In a specific implementation, for more detailed implementations of the foregoing steps, refer to the related descriptions of the steps in the foregoing IBS technology-based application scenarios, and details are not described herein again.
(215)
(216) The core network node may include a CP-AU, an HSS, a control plane function (CP-Function), a KMS, or the like.
(217)
(218) S901. When UE needs to send transmission data, the UE protects the transmission data by using a public key for encryption and a global public key or a private key corresponding to the UE that are obtained from first prestored data of the UE, to obtain a protection message.
(219) S902. The UE sends the protection message to an access point.
(220) S903. The access point sends the protection message to a core network node.
(221) S904. After receiving the protection message, the core network node obtains a global public key and a private key corresponding to the core network node from second prestored data of the core network node based on an indication message indicating a protection manner, to parse the protection message.
(222) In some feasible implementations, the UE may perform mutual authentication with a core network before sending the transmission data to the core network by using a BS. Specifically, the core network node may obtain system parameters from a KMS in advance, and store the obtained system parameters in specified storage space of the core network node, so that the obtained system parameters can be stored as prestored data of the core network node (set to the second prestored data). The system parameters obtained by the core network node from the KMS may include the public key for encryption, or a first global public key and a fifth private key, or a second global public key and a sixth private key, or the like. Information specifically included in the system parameters obtained by the core network node from the KMS may be determined based on a requirement of a data transmission operation performed by the core network node in an actual application scenario, and is not limited herein.
(223) In a specific implementation, the public key for encryption may be an identifier of the core network node, such as an ID of the core network node; or the public key for encryption includes an ID of the core network node; or the like. If the core network node is a CP-AU in a specific application scenario, the public key for encryption may be an identity (namely, a CP_AU_ID) of the CP-AU, or the public key for encryption includes a CP_AU_ID. That the public key for encryption includes a CP_AU_ID means that the public key for encryption consists of the CP_AU_ID and other data, and the CP_AU_ID is only a part of data in a long string of the public key for encryption. Specific content of the public key for encryption may be determined based on a data form of the public key for encryption, and is not limited herein.
(224) If the access point is an HSS in a specific application scenario, the public key for encryption may be an HSS_ID, or the public key for encryption includes an HSS_ID. In a specific implementation, when the access point is an HSS, a specific composition form of the public key for encryption may be determined based on an actual application scenario, and is not limited herein.
(225) Further, in a specific implementation, the first global public key obtained by the access point from the KMS may be a global public key GPK.sub.enc for data encryption in an IBC technology. The fifth private key may be a private key SK.sub.CP_ID_enc for data encryption corresponding to the core network node that is generated based on the ID of the core network node and the foregoing GPK.sub.enc by using the IBC technology. The CP-AU and the HSS are both used as core network nodes in data transmission. The ID of the core network node used to generate the private key for data encryption includes the CP_AU_ID and the HSS_ID. Therefore, private keys for data encryption corresponding to the core network node are all represented as SK.sub.CP_ID_enc. The second global public key is a global public key GPK.sub.Sig for data signature in the IBC technology. The sixth private key is a private key SK.sub.CP_ID_Sig for data signature corresponding to the core network node that is generated based on the ID of the core network node and the foregoing GPK.sub.Sig by using the IBC technology.
(226) In some implementations, the UE may obtain, from the core network, the public key for encryption and core network processing parameters used for processing the transmission data, and store the public key for encryption and the core network processing parameters as the first prestored data of the UE. The core network processing parameters may include the global public key, the private key corresponding to the UE, or the like. The global public key includes a first global public key and a second global public key, and the private key includes a third private key and a fourth private key. The first global public key is a global public key GPK.sub.enc for data encryption that is the same as the first global public key obtained by the core network node. The second global public key is a global public key GPK.sub.sig for data signature that is the same as the second global public key obtained by the core network node. The third private key may be a private key SK.sub.UE_ID_enc for data encryption corresponding to the UE that is generated based on a UE_ID and the foregoing GPK.sub.enc by using the IBC technology. The fourth private key is a private key SK.sub.UE_ID_Sig for data signature corresponding to the UE that is generated based on the UE_ID and the foregoing GPK.sub.sig by using the IBC technology.
(227) In some feasible implementations, when the UE needs to send the transmission data to the access point, the UE may obtain, from the first prestored data based on identification information such as the ID of the core network node, the public key for encryption and the GPK.sub.enc that are corresponding to the core network node. For example, if the core network node is the CP-AU, the public key for encryption may be obtained from the first prestored data based on the CP_AU_ID. The public key for encryption may be the CP_AU_ID, or the public key for encryption includes the CP_AU_ID. Further, the UE may encrypt the transmission data by using the public key for encryption and the GPK.sub.enc, to obtain the protection message. The protection message may carry indication information indicating a protection manner of the transmission data. The protection manner of the transmission data is encrypting the transmission data by using the public key for encryption and the GPK.sub.enc.
(228) In a specific implementation, after the UE obtains the protection message by encrypting the transmission data, the UE may send the protection message to the access point. The protection message may include an indicator, and the indicator is used to transmit the foregoing indication information to notify the core network node of the protection manner of the transmission data. After receiving the protection message, the access point may forward the protection message, the indication information carried in the protection message, and the like to the core network node.
(229) In some feasible implementations, after receiving the protection message, the core network node may first determine the protection manner of the transmission data based on the protection message, and then obtain related data from the second prestored data based on the protection manner to parse the transmission data. If the protection manner of the transmission data is encrypting the transmission data by using the public key for encryption and the GPK.sub.enc, the core network node may obtain the SK.sub.CP_ID_enc and the GPK.sub.enc from the second prestored data, and decrypt the protection message by using the SK.sub.CP_ID_enc and the GPK.sub.enc, to obtain a decrypted message.
(230) Further, in some feasible implementations, when the UE needs to send the transmission data to the core network node, the UE may further sign the transmission data. Specifically, when the UE needs to send the transmission data to the core network node, the UE may obtain the public key for encryption, the GPK.sub.enc, the GPK.sub.sig, and the SK.sub.UE_ID_Sig from the first prestored data. Then the UE may sign the transmission data based on the GPK.sub.sig and the SK.sub.UE_ID_Sig to obtain a signature Sig3, and encrypt the transmission data, identification information of the UE, and the Sig3 by using the public key for encryption and the GPK.sub.enc, to obtain the protection message. The protection message may carry indication information indicating a protection manner of the transmission data. The protection manner of the transmission data is encrypting the transmission data and the Sig3 by using the public key for encryption and the GPK.sub.enc.
(231) In a specific implementation, after the UE obtains the protection message by encrypting the transmission data, the UE may send the protection message to the access point. The access point may forward the protection message to the core network node. The protection message may include an indicator, and the indicator is used to transmit the foregoing indication information to notify the access point of the protection manner of the transmission data.
(232) In some feasible implementations, after receiving the protection message, the core network node may first determine the protection manner of the transmission data based on the protection message, and then obtain related data from the second prestored data based on the protection manner to parse the transmission data. The protection manner of the transmission data is encrypting the transmission data and the Sig3 by using the public key for encryption and the GPK.sub.enc. After determining, based on the indication message indicating the encryption manner, that the protection manner of the transmission data is encrypting the transmission data and the Sig3 by using the public key for encryption and the GPK.sub.enc, the core network node may obtain the GPK.sub.enc and the SK.sub.CP_ID_enc from the second prestored data, and decrypt the protection message by using the SK.sub.CP_ID_enc and the GPK.sub.enc, to obtain the transmission data. Further, the core network node may further obtain the identification information (such as the UE_ID) of the UE and the Sig3 from a decrypted message obtained by decrypting the protection message. In a specific implementation, when the UE sends the protection message to the core network node, the UE may add an identifier such as the UE_ID to the protection message, so that the core network node attempts to authenticate the signature in the protection message based on the identifier such as the UE_ID.
(233) In a specific implementation, after determining, based on the indication message indicating the encryption manner, that the protection manner of the transmission data is encrypting the transmission data and the Sig3 by using the public key for encryption and the GPK.sub.enc, the core network node may obtain the GPK.sub.sig from the second prestored data, and attempt to authenticate the Sig3 carried in the protection message by using the UE_ID and the GPK.sub.sig. If the Sig3 in the protection message has been authenticated, the core network node may send the transmission data to a related network element in the core network.
(234) Further, in some feasible implementations, when the UE needs to send the transmission data to the core network node, the UE may further generate a symmetric key K3 based on data such as the public key for encryption, the global public key, and the private key for data encryption corresponding to the UE, and then may protect the transmission data by using the symmetric key. Specifically, when the UE needs to send the transmission data to the core network node, the UE may obtain the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_enc from the first prestored data. Further, the UE may generate the symmetric key (set to the K3) based on the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_enc, and input the transmission data and the K3 into a system function to obtain a message authentication code (set to a fourth message authentication code MAC 3). It should be noted that the system function described in this embodiment of the present invention may be specifically a hash function, or may be another system function that can implement generation of the message authentication code, and may be determined based on an actual application scenario. No limitation is imposed herein.
(235) In a specific implementation, after the UE generates the K3 based on the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_enc, the UE may encrypt the transmission data, identification information such as the UE_ID of the UE, and the foregoing generated MAC 3 by using the public key for encryption and the GPK.sub.enc, to obtain the protection message. Further, the UE may add, to the protection message, indication information indicating a protection manner of the transmission data. The indication information is used to indicate that the protection manner of the transmission data is encrypting the transmission data, the UE_ID, and the MAC 3 by using the public key for encryption and the GPK.sub.enc.
(236) In a specific implementation, after the UE obtains the protection message by encrypting the transmission data, the UE may send the protection message to the access point. The access point may send the protection message to the core network node. The protection message may include an indicator, and the indicator is used to transmit the foregoing indication information to notify the access point of the protection manner of the transmission data.
(237) In some feasible implementations, after receiving the protection message, the core network node may first determine the protection manner of the transmission data based on the protection message, and then obtain related data from the second prestored data based on the protection manner to parse the transmission data. The protection manner of the transmission data is encrypting the transmission data, the UE_ID, and the MAC 3 by using the public key for encryption and the GPK.sub.enc. The core network node may determine, based on the indication message indicating the protection manner, that the protection manner of the transmission data is encrypting the transmission data, the UE_ID, and the MAC 3 by using the public key for encryption and the GPK.sub.enc, then obtain the GPK.sub.enc and the SK.sub.CP_ID_enc from the second prestored data, and decrypt the protection message by using the SK.sub.CP_ID_enc and the GPK.sub.enc, to obtain a decrypted message. Further, the core network node may obtain, from the decrypted message, the MAC 3, the UE_ID, and the transmission data that are carried in the protection message, and generate a symmetric key K4 by using the public key for encryption, the UE_ID, the GPK.sub.enc, and the SK.sub.CP_ID_enc. After the core network node generates the K4, the core network node may calculate a message authentication code (set to a fifth message authentication code MAC 4) by using the K4, the UE_ID, and the transmission data obtained through decryption. If the MAC 4 matches the MAC 3 carried in the protection message, the core network node may send, to a related network element in the core network, the transmission data sent by the UE that is carried in the protection message.
(238) It should be noted that, in this embodiment of the present invention, in a same application scenario, the public key for encryption used by the UE for data encryption is the same as the public key for encryption used by the core network node for data decryption or authentication, so that encrypted data can be correctly decrypted by a receiver. The public key for encryption is transmitted from the core network to the UE in a manner such as KMS delivery, and the transmission data sender uses the public key provided by the transmission data receiver to protect data, so as to avoid information leakage caused by carrying information such as a data encryption key during data transmission and improve network security.
(239) In this embodiment of the present invention, when the UE sends uplink data to the core network node, the UE may use information such as the identity of the core network node as the public key for encryption, and encrypt the to-be-uploaded transmission data by using the global public key in the IBC technology and the private key corresponding to the core network node, so as to effectively protect air interface signaling and data in a 5G network and avoid leakage of user privacy and signaling content. The core network node decrypts, signs, and attempts to authenticate, by using a message authentication code, the message sent by the UE, to filter out invalid signaling and data and protect security of the core network.
(240)
(241) In this application scenario, UE and the CP-AU use an IBC-based technology to encrypt signaling and data from the UE to a core network. A specific procedure includes the following steps.
(242) 111. The CP-AU obtains IBC-based system parameters.
(243) In a specific implementation, the CP-AU may obtain the system parameters from a KMS. The system parameters include the CP_AU_ID, a GPK.sub.enc, a GPK.sub.sig, an SK.sub.CP_AU_ID_enc, an SK.sub.CP_AU_ID_sig, and the like. After obtaining the system parameters, the CP-AU may store the system parameters as prestored data of the CP-AU.
(244) 112. The UE and the CP-AU complete mutual authentication.
(245) After the authentication between the UE and CP-AU is completed, the UE notifies the CP-AU that the UE supports an IBC-based encryption capability.
(246) 113. The UE obtains core network processing parameters from the core network.
(247) The core network processing parameters include the CP_AU_ID, the GPK.sub.sig, and the GPK.sub.enc, or further include a UE_ID, an SK.sub.UE_ID_enc, and an SK.sub.UE_ID_sig.
(248) 114. The UE stores the core network processing parameters obtained in step 113.
(249) Further, the UE may store the core network processing parameters as prestored data of the UE.
(250) 115. The UE protects, based on the core network processing parameters, transmission data that needs to be sent.
(251) In a specific implementation, the UE receives signaling or data that an application needs to send, and obtains parameters such as the CP_AU_ID, the GPK.sub.sig, and the GPK.sub.enc from the first prestored data; the UE uses the GPK.sub.sig and the SK.sub.UE_ID_sig to sign the signaling or data; and the UE may further use the CP_AU_ID and the GPK.sub.enc to encrypt the data or signaling to obtain a protection message.
(252) 116. The UE sends encrypted signaling or data to a base station.
(253) 117. The base station forwards the encrypted signaling or data to the CP-AU.
(254) 118. The CP-AU attempts to authenticate the received signaling or data.
(255) The CP-AU uses the GPK.sub.enc and the SK.sub.SP_AU_ID_enc to decrypt the data or signaling. Further, the CP-AU may use the UE_ID and the GPK.sub.sig to attempt to authenticate a signature carried in the protection message. In a specific implementation, for a specific implementation in which the CP-AU decrypts the encrypted data in the protection message and attempts to authenticate the signature in the protection message, refer to the implementations described in the steps in the foregoing application scenarios. Details are not described herein again.
(256) 119. The CP-AU forwards the data.
(257) In a specific implementation, after the CP-AU decrypts and authenticates the protection message, if it is determined that the received message is a user plane data packet, the CP-AU may forward the data to a corresponding core network data gateway (such as a UP_GW) based on address information included in the decrypted data packet. If it is determined that the received message is a signaling message, the CP-AU may process the signaling message by the CP-AU based on information included in the decrypted data packet or send signaling to a corresponding core network node (such as an HSS) based on information included in the decrypted data packet.
(258) In a specific implementation, for more detailed implementations of the foregoing steps, refer to the related description of each step in the foregoing S901 to S904, and details are not described herein again.
(259)
(260) In this application scenario, UE and the HSS use an IBC-based technology to encrypt signaling and data from the UE to a core network. A specific procedure includes the following steps.
(261) 121. The HSS obtains IBC-based system parameters.
(262) In a specific implementation, the HSS may obtain system parameters from a KMS. The system parameters may include the HSS_ID, a GPK.sub.enc, a GPK.sub.sig, an SK.sub.HSS_ID_enc, and an SK.sub.HSS_ID_sig. The HSS may store the system parameters as prestored data of the HSS.
(263) 122. The UE and a CP-AU complete mutual authentication.
(264) In a specific implementation, after the mutual authentication between the UE and the CP-AU is completed, the UE may further notify the CP-AU that the UE supports a capability such as IBC-based encryption or authentication.
(265) 123. The UE obtains core network processing parameters from the core network.
(266) The core network processing parameters may include the HSS_ID, the GPK.sub.sig, the GPK.sub.enc, and the like.
(267) 124. The UE stores the core network processing parameters obtained in step 123.
(268) Further, the UE may store the obtained core network processing parameters as prestored data of the UE.
(269) 125. The UE protects, based on the core network processing parameters, transmission data that needs to be sent.
(270) In a specific implementation, when receiving signaling (such as an attach message) that an application needs to send, the UE may obtain parameters such as the HSS_ID, the GPK.sub.sig, and the GPK.sub.enc from the first prestored data, and encrypt the signaling by using the HSS_ID and the GPK.sub.enc to obtain a protection message.
(271) 126. The UE sends encrypted signaling to a base station.
(272) The encrypted signaling carries the HSS_ID.
(273) 127. The base station forwards the encrypted signaling to the CP-AU.
(274) 128. The CP-AU forwards the encrypted signaling to the HSS.
(275) 129. The HSS decrypts the signaling.
(276) In a specific implementation, the HSS decrypts the signaling by using parameters such as the HSS_ID, the GPK.sub.enc, and the SK.sub.HSS_ID_enc, and performs subsequent signaling interaction with the UE.
(277) In a specific implementation, for more detailed implementations of the foregoing steps, refer to the related description of each step in the foregoing S901 to S904, and details are not described herein again.
(278)
(279) In this application scenario, UE and the CP-AU use an IBC-based technology to encrypt signaling and data from the UE to a core network. A specific procedure includes the following steps.
(280) 131. The UE and the CP-AU perform mutual authentication.
(281) In a specific implementation, after the mutual authentication between the UE and the CP-AU succeeds, the UE may notify the CP-AU that the UE supports a capability such as IBC-based encryption and authentication.
(282) 132. The UE obtains core network processing parameters from the core network.
(283) In a specific implementation, the core network processing parameters may include the CP_AU_ID, a GPK.sub.sig, a GPK.sub.enc, an SK.sub.UE_ID, and the like.
(284) 133. The UE stores the core network processing parameters obtained in step 132.
(285) In a specific implementation, the UE may store the obtained core network processing parameters as prestored data of the UE.
(286) 134. The UE protects transmission data.
(287) In a specific implementation, after receiving the transmission data that an application needs to send, the UE may obtain parameters such as the CP_AU_ID, the GPK.sub.sig, and the GPK.sub.enc from the prestored data of the UE, and the UE generates a symmetric key K3 by using parameters such as the CP_AU_ID, the SK.sub.UE_ID, the GPK.sub.sig, and the GPK.sub.enc, encrypts the data by using the K3, and provides a message authentication code MAC 3 to obtain a protection message.
(288) 135. The UE sends a protection message to a base station.
(289) The protection message carries a UE_ID, the transmission data, the MAC 3, and the like, and the UE_ID may be specifically a globally unique temporary UE identity (GUTI).
(290) 136. The base station forwards the data to the CP-Function in the core network.
(291) The CP-Function is a node, in the core network, that specializes in processing small data.
(292) 137. The CP-Function obtains decrypted data.
(293) The CP-Function may obtain the UE_ID by using the GUTI, and generate a symmetric key K4 by using the UE_ID, an SK.sub.CP_AU_ID, and the GPK.sub.enc or the GPK.sub.sig. Further, authentication may be performed on the MAC 3 included in the message based on the K4, the UE_ID, and the protection message, and the transmission data is obtained.
(294) In a specific implementation, for more detailed implementations of the foregoing steps, refer to the related description of each step in the foregoing S901 to S904, and details are not described herein again.
(295)
(296) The foregoing core network node may include a core network authentication node CP-AU, an HSS, a CP-Function, a UP-Function, or the like.
(297)
(298) S1501. A core network node receives transmission data delivered by a user plane gateway.
(299) Further, the core network node may obtain, from second prestored data of the core network node, data such as identification information of UE, a global public key in an identity based cryptography IBC technology, and a private key corresponding to the core network node.
(300) S1502. The core network node protects the transmission data by using identification information of UE, a global public key, and a private key corresponding to the core network node, to obtain a protection message, and sends the protection message to an access point.
(301) S1503. The access point sends the protection message to the UE.
(302) S1504. The UE obtains, from first prestored data of the UE, an identity of the core network node, the global public key, and a private key corresponding to the UE, and parses the protection message to obtain the transmission data.
(303) In some feasible implementations, the global public key includes a first global public key and a second global public key, and the private key corresponding to the core network node includes a fifth private key and a sixth private key. The core network node may obtain core network system parameters from a network or a KMS, and store the core network system parameters as the second prestored data of the core network access point. The core network system parameters include a public key for encryption and at least one of the following two groups of data, including the first global public key and the fifth private key, or the second global public key and the sixth private key. The first global public key is a GPK.sub.enc; the fifth private key is a private key SK.sub.CP_ID_enc for data encryption corresponding to the core network node in the IBC technology; the second global public key is a global public key GPK.sub.Sig for data signature in the IBC technology; and the sixth private key is a private key SK.sub.CP_ID_Sig for data signature corresponding to the core network node in the IBC technology.
(304) In a specific implementation, the UE may obtain the identification information of the UE and core network processing parameters from a core network, and store the identification information and the core network processing parameters as the first prestored data of the UE. The core network processing parameters include the GPK.sub.enc, an SK.sub.UE_ID_enc, the GPK.sub.Sig, an SK.sub.UE_ID_Sig, and the like. For definitions of the foregoing parameters, refer to the implementations described in the steps in the foregoing application scenarios. Details are not described herein again.
(305) In some feasible implementations, the core network node may receive downlink transmission data (transmission data for short) sent by the user plane gateway, obtain parameters such as the identification information (such as a UE_ID) of the UE, the GPK.sub.enc, and the SK.sub.CP_ID_enc from the second prestored data after receiving the transmission data, generate a symmetric key K5 based on the identification information of the UE, the GPK.sub.enc, and the SK.sub.CP_ID_enc, and then input the transmission data and the K5 into a system function to obtain a sixth message authentication code MAC 5. Further, the core network node may encrypt the transmission data and the MAC 5 by using the K5, to obtain the protection message.
(306) The core network node sends the protection message to a base station, and the base station sends the protection message to the UE. After receiving the message, the UE may determine, based on information carried in the protection message, that the message is sent to the UE, and then decrypt the message.
(307) In a specific implementation, when the UE decrypts the message, the UE may obtain the GPK.sub.enc and the SK.sub.UE_ID_enc from the first prestored data of the UE, and decrypt the protection message by using the GPK.sub.enc and the SK.sub.UE_ID_enc, to obtain a decrypted message. Further, the UE may generate a symmetric key K6 by using the identification information of the UE, the GPK.sub.enc, and the SK.sub.UE_ID_enc, generate a seventh message authentication code MAC 6 by using the K6, the identification information of the UE, and the decrypted message, and obtain the transmission data when the MAC 6 matches the MAC 5 carried in the decrypted message.
(308) In this embodiment of the present invention, the UE and the core network node may use the IBC-based technology to encrypt and protect, through authentication, the downlink data, thereby improving security of the network transmission data. In a specific implementation, for a specific manner in which the UE and the core network node encrypt and protect, through authentication, the downlink data, refer to the foregoing implementation in which the UE and the access point or the core network node encrypt and protect, through authentication, the uplink data in uplink data transmission. Details are not described herein again.
(309)
(310) In this application scenario, UE and the CP-Function use an IBC-based technology to encrypt signaling and data from a core network to the UE. A specific procedure includes the following steps.
(311) 161. The core network node CP_Function receives data sent by the UP-GW.
(312) 162. The CP_Function protects the data.
(313) In a specific implementation, the CP_Function may generate a symmetric key K5 by using a UE_ID, an SK.sub.IP ID, and a GPK.sub.enc, encrypt the data by using the symmetric key K5, and generate a message authentication code MAC 5 based on the transmission data and the K5, so as to provide integrity protection for the encrypted data.
(314) 163. The CP-Function sends the encrypted data to a RAN.
(315) The data sent by the CP-Function to the RAN includes a GUTI of the UE, the encrypted data, and the MAC 5.
(316) 164. The RAN sends the data to the UE.
(317) The data sent by the RAN to the UE includes the GUTI, the encrypted data, and the MAC 5.
(318) 165. The UE decrypts the data.
(319) In a specific implementation, the UE may determine, based on the GUTI, that the message is the UE, and obtain the UE_ID from prestored data of the UE, generate a symmetric key K6 by using the CP_ID, an SK.sub.UE_ID, and the GPK.sub.enc, and use the K6 to attempt to authenticate a signature and decrypt the data.
(320) In a specific implementation, for more detailed implementations of the foregoing steps, refer to the related description of each step in the foregoing S1501 to S1504, and details are not described herein again.
(321)
(322) S1701. UE receives a broadcast message sent by an access point, and stores a public key for encryption that is carried in the broadcast message.
(323) S1702. When the UE needs to send transmission data to the access point, the UE obtains a global public key in an identity based cryptography IBC technology or a private key corresponding to the UE from first prestored data of the UE, and protects the transmission data by using the public key for encryption and the global public key or the private key corresponding to the UE, to obtain a protection message.
(324) S1703. The UE sends the protection message to the access point, where the protection message carries an indication message indicating a protection manner of the transmission data.
(325) In some feasible implementations, the global public key includes a first global public key and a second global public key, and the private key corresponding to the UE includes a third private key and a fourth private key, and before the UE receives the broadcast message of the access point, the method further includes obtaining, by the UE from a network or a KMS, processing parameters used by the UE to process the transmission data, and storing the processing parameters as the first prestored data of the UE, where the processing parameters include an identity (operator ID1) of an operator to which the UE belongs, and at least one of the following three groups of data, including the first global public key, or the first global public key and the third private key, or the second global public key and the fourth private key, where the first global public key is a global public key GPK.sub.enc for data encryption in the IBC technology, the third private key is a private key SK.sub.UE_ID_enc for data encryption corresponding to the UE_ID in the IBC technology, the second global public key is a global public key GPK.sub.Sig for data signature in the IBC technology, and the fourth private key is a private key SK.sub.UE_ID_Sig for data signature corresponding to the UE_ID in the IBC technology.
(326) In some feasible implementations, the first prestored data includes the operator ID1 and the GPK.sub.Sig, and before the UE stores the public key for encryption that is carried in the broadcast message, the method further includes determining, by the UE based on indication information carried in the received broadcast message, that the access point has a data signature function, and determining, based on identification information of the access point corresponding to the broadcast message, an identity (operator ID2) of an operator to which the access point belongs, matching the operator ID2 with the operator ID1, and searching the first prestored data for a third global public key GPK.sub.Sig1 corresponding to the access point, when the broadcast message carries a signature Sig1, attempting to authenticate the broadcast message by using the GPK.sub.Sig1 and the identification information of the access point, and when the broadcast message has been authenticated, determining to add, to the first prestored data, the public key for encryption that is carried in the broadcast message.
(327) In some feasible implementations, the first prestored data includes the GPK.sub.enc, and that when the UE needs to send transmission data to the access point, the UE obtains a global public key in an identity based cryptography IBC technology from first prestored data of the UE, and protects the transmission data by using the public key for encryption and the global public key includes when the UE needs to send the transmission data to the access point, obtaining, by the UE, the public key for encryption and the GPK.sub.enc from the first prestored data, and encrypting the transmission data by using the public key for encryption and the GPK.sub.enc, to obtain the protection message, where the protection manner of the transmission data is encrypting the transmission data by using the public key for encryption and the GPK.sub.enc.
(328) In some feasible implementations, the first prestored data includes the GPK.sub.enc and the SK.sub.UE_ID_enc, and that when the UE needs to send transmission data to the access point, the UE obtains a global public key in an identity based cryptography IBC technology or a private key corresponding to the UE from first prestored data of the UE, and protects the transmission data by using the public key for encryption and the global public key or the private key corresponding to the UE includes when the UE needs to send the transmission data to the access point, obtaining, by the UE, the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_enc from the first prestored data, generating a first symmetric key K1 based on the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_enc, and inputting the transmission data and the K1 into a system function to obtain a third message authentication code MAC 2, and encrypting the transmission data, identification information of the UE, and the MAC 2 by using the public key for encryption and the GPK.sub.enc, to obtain the protection message, where the protection manner of the transmission data is encrypting the transmission data, the identification information of the UE, and the MAC 2 by using the public key for encryption and the GPK.sub.enc.
(329) In some feasible implementations, the first prestored data includes the GPK.sub.enc and the SK.sub.UE_ID_Sig, and that when the UE needs to send transmission data to the access point, the UE obtains a global public key in an identity based cryptography IBC technology or a private key corresponding to the UE from first prestored data of the UE, and protects the transmission data by using the public key for encryption and the global public key or the private key corresponding to the UE, to obtain a protection message includes when the UE needs to send the transmission data to the access point, obtaining, by the UE, the public key for encryption, the GPK.sub.enc, the GPK.sub.sig, and the SK.sub.UE_ID_Sig from the first prestored data, and signing the transmission data based on the GPK.sub.sig and the SK.sub.UE_ID_Sig to obtain a signature Sig2, and encrypting the transmission data, identification information of the UE, and the Sig2 by using the public key for encryption and the GPK.sub.enc, to obtain the protection message, where the protection manner of the transmission data is encrypting the transmission data and the Sig2 by using the public key for encryption and the GPK.sub.enc.
(330) In a specific implementation, for implementations described in the steps of the transmission data protection method provided in this embodiment of the present invention, refer to related descriptions in the foregoing systems. Details are not described herein again.
(331)
(332) S1801. An access point sends a broadcast message.
(333) The broadcast message carries a public key for encryption.
(334) S1802. The access point receives a protection message that is sent by user equipment UE and that is obtained after the UE protects transmission data based on a public key for encryption.
(335) The protection message carries an indication message indicating a protection manner of the transmission data.
(336) S1803. The access point obtains a global public key in an identity based cryptography IBC technology and a private key corresponding to the access point from second prestored data of the access point based on the indication message indicating the protection manner, and parses the protection message by using the global public key and the private key corresponding to the access point, to obtain the transmission data sent by the UE.
(337) S1804. The access point sends, to a core network, the transmission data that is obtained through parsing and that is sent by the UE.
(338) In some feasible implementations, the global public key includes a first global public key and a second global public key, and the private key corresponding to the access point includes a first private key and a second private key, and before the access point sends the broadcast message, the method further includes obtaining, by the access point, system parameters from a network or a key management system KMS, and storing the system parameters as the second prestored data of the access point, where the system parameters include the public key for encryption and at least one of the following two groups of data, including the first global public key and the first private key, or the second global public key and the second private key, where the first global public key is a global public key GPK.sub.enc for data encryption in the IBC technology, the first private key is a private key SK.sub.BS_ID_enc for data encryption corresponding to the access point in the IBC technology, the second global public key is a global public key GPK.sub.Sig for data signature in the IBC technology, and the second private key is a private key SK.sub.BS_ID_Sig for data signature corresponding to the access point in the IBC technology.
(339) In some feasible implementations, the public key for encryption is a base station BS identity BS_ID, or the public key for encryption includes a BS_ID, or the public key for encryption includes a media access control MAC address of a Wireless Fidelity Wi-Fi access point AP or a service set identifier SSID of a Wi-Fi AP, or the public key for encryption includes a hotspot UE identity UE_ID or an international mobile subscriber identity IMSI of hotspot UE.
(340) In some feasible implementations, the second prestored data includes the GPK.sub.Sig and the SK.sub.BS_ID_Sig, and before the access point sends the broadcast message, the method further includes signing, by the access point, the broadcast message by using the GPK.sub.Sig and the SK.sub.BS_ID_Sig, to obtain a signature Sig1 of the broadcast message, and adding indication information indicating that the access point has a data signature function or the signature Sig1 of the broadcast message to the broadcast message.
(341) In some feasible implementations, the second prestored data includes the GPK.sub.enc, the SK.sub.BS_ID_enc, the GPK.sub.Sig, and the SK.sub.BS_ID_Sig, and that the access point obtains a global public key in an identity based cryptography IBC technology and a private key corresponding to the access point from second prestored data of the access point based on the indication message indicating the protection manner, and parses the protection message by using the global public key and the private key corresponding to the access point includes determining, by the access point, the protection manner of the transmission data based on the indication message indicating the protection manner, obtaining the SK.sub.BS_ID_enc and the GPK.sub.enc from the second prestored data, and decrypting the protection message by using the SK.sub.BS_ID_enc and the GPK.sub.enc, to obtain a decrypted message.
(342) In some feasible implementations, the second prestored data includes the public key for encryption, the GPK.sub.enc, and the SK.sub.BS_ID_enc, and that the access point obtains a global public key in an identity based cryptography IBC technology and a private key corresponding to the access point from second prestored data of the access point based on the indication message indicating the protection manner, and parses the protection message by using the global public key and the private key corresponding to the access point includes determining, by the access point, the protection manner of the transmission data based on the indication message indicating the protection manner, obtaining the GPK.sub.enc and the SK.sub.BS_ID_enc from the second prestored data, and decrypting the protection message by using the SK.sub.BS_ID_enc and the GPK.sub.enc, to obtain a decrypted message, and that the access point sends, to a core network, the transmission data that is obtained through parsing and that is sent by the UE includes obtaining, by the access point, a third message authentication code MAC 2, identification information of the UE, and the transmission data that are carried in the protection message from the decrypted message, generating a symmetric key K2 by using the identification information of the UE, the GPK.sub.enc, and the SK.sub.BS_ID_enc, and calculating a fourth message authentication code MAC 3 by using the symmetric key K2, the identification information of the UE, and the transmission data obtained through decryption, and when the MAC 3 matches the MAC 2, sending, to the core network, the transmission data sent by the UE.
(343) In some feasible implementations, the second prestored data includes the GPK.sub.enc, the SK.sub.BS_ID_enc, and the GPK.sub.Sig, and that the access point obtains a global public key in an identity based cryptography IBC technology and a private key corresponding to the access point from second prestored data of the access point based on the indication message indicating the protection manner, and parses the protection message by using the global public key and the private key corresponding to the access point includes determining the protection manner of the transmission data based on the indication message indicating the encryption manner, obtaining the GPK.sub.enc and the SK.sub.BS_ID_enc from the second prestored data, and decrypting the protection message by using the SK.sub.BS_ID_enc and the GPK.sub.enc, to obtain the transmission data, and that the access point sends, to a core network, the transmission data that is obtained through parsing and that is sent by the UE includes obtaining identification information of the UE and the signature Sig2 from a decrypted message obtained by decrypting the protection message, determining the protection manner of the transmission data based on the indication message indicating the protection manner, and obtaining the GPK.sub.sig from the second prestored data, and attempting to authenticate the protection message by using the identification information of the UE and the GPK.sub.sig, and when the protection message has been authenticated, sending, to the core network, the transmission data sent by the UE.
(344) In a specific implementation, for implementations described in the steps of the transmission data protection method provided in this embodiment of the present invention, refer to related descriptions in the foregoing systems. Details are not described herein again.
(345)
(346) S1901. When user equipment UE needs to send transmission data, the UE obtains a public key for encryption, and a global public key in an identity based cryptography IBC technology or a private key corresponding to the UE from first prestored data of the UE, and protects the transmission data by using the public key for encryption and the global public key or the private key corresponding to the UE, to obtain a protection message.
(347) S1902. The UE sends the protection message to an access point, so that the access point sends the protection message to a core network node.
(348) The protection message carries an indication message indicating a protection manner of the transmission data.
(349) In some feasible implementations, the global public key includes a first global public key and a second global public key, and the private key corresponding to the UE includes a third private key and a fourth private key, and before the UE sends the transmission data, the method further includes obtaining, by the UE from a core network, the public key for encryption and core network processing parameters used by the UE to process the transmission data, and storing the public key for encryption and the core network processing parameters as the first prestored data of the UE, where the core network processing parameters include at least one of the following three groups of data, including the first global public key, or the first global public key and the third private key, or the second global public key and the fourth private key, where the first global public key is a global public key GPK.sub.enc for data encryption in the IBC technology, the third private key is a private key SK.sub.UE_ID_enc for data encryption corresponding to the UE_ID in the IBC technology, the second global public key is a global public key GPK.sub.Sig for data signature in the IBC technology, and the fourth private key is a private key SK.sub.UE_ID_Sig for data signature corresponding to the UE_ID in the IBC technology.
(350) In some feasible implementations, the first prestored data includes the public key for encryption and the GPK.sub.enc, and that the UE obtains a public key for encryption and a global public key in an identity based cryptography IBC technology from first prestored data of the UE, and protects the transmission data by using the public key for encryption and the global public key includes when the UE needs to send the transmission data to the access point, obtaining, by the UE, the public key for encryption and the GPK.sub.enc from the first prestored data, and encrypting the transmission data by using the public key for encryption and the GPK.sub.enc, to obtain the protection message, where the protection manner of the transmission data is encrypting the transmission data by using the public key for encryption and the GPK.sub.enc.
(351) In some feasible implementations, the first prestored data includes the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_enc, and that the UE obtains a public key for encryption, and a global public key in an identity based cryptography IBC technology or a private key corresponding to the UE from first prestored data of the UE, and protects the transmission data by using the public key for encryption and the global public key or the private key corresponding to the UE includes when the UE needs to send the transmission data to the access point, obtaining, by the UE, the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_enc from the first prestored data, generating a symmetric key K3 based on the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_enc, and inputting the transmission data and the K3 into a system function to obtain a fourth message authentication code MAC 3, and encrypting the transmission data and the MAC 3 by using the public key for encryption and the GPK.sub.enc, to obtain the protection message, where the protection manner of the transmission data is encrypting the transmission data and the MAC 3 by using the public key for encryption and the GPK.sub.enc.
(352) In some feasible implementations, the first prestored data includes the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_Sig, and that the UE obtains a public key for encryption, and a global public key in an identity based cryptography IBC technology or a private key corresponding to the UE from first prestored data of the UE, and protects the transmission data by using the public key for encryption and the global public key or the private key corresponding to the UE includes when the UE needs to send the transmission data to the access point, obtaining, by the UE, the public key for encryption, the GPK.sub.enc, the GPK.sub.sig, and the SK.sub.UE_ID_Sig from the first prestored data, and signing the transmission data based on the GPK.sub.sig and the SK.sub.UE_ID_Sig to obtain a signature Sig3, and encrypting the transmission data and the signature Sig2 by using the public key for encryption and the GPK.sub.enc, to obtain the protection message, where the protection manner of the transmission data is encrypting the transmission data and the signature by using the public key for encryption and the GPK.sub.enc.
(353) In a specific implementation, for implementations described in the steps of the transmission data protection method provided in this embodiment of the present invention, refer to related descriptions in the foregoing systems. Details are not described herein again.
(354)
(355) S2001. A core network node receives a protection message sent by an access point.
(356) The protection message carries an indication message indicating a protection manner of the transmission data sent by user equipment UE.
(357) S2002. The core network node obtains a global public key in an identity based cryptography IBC technology and a private key corresponding to the core network node from second prestored data of the core network node based on the indication message indicating the protection manner, and parses the protection message by using the global public key and the private key corresponding to the core network node, to obtain the transmission data sent by the UE.
(358) In some feasible implementations, the global public key includes a first global public key and a second global public key, and the private key corresponding to the core network node includes a fifth private key and a sixth private key, and before the core network node receives the protection message sent by the access point, the method further includes obtaining, by the core network node, core network system parameters from a key management system KMS, and storing the core network system parameters as the second prestored data of the core network access point, where the core network system parameters include a public key for encryption and at least one of the following two groups of data, including the first global public key and the fifth private key, or the second global public key and the sixth private key, where
(359) the first global public key is a global public key GPK.sub.enc for data encryption in the IBC technology, the fifth private key is a private key SK.sub.CP_ID_enc for data encryption corresponding to the core network node in the IBC technology, the second global public key is a global public key GPK.sub.Sig for data signature in the IBC technology, and the sixth private key is a private key SK.sub.CP_ID_Sig for data signature corresponding to the core network node in the IBC technology.
(360) In some feasible implementations, the public key for encryption is an identity of the core network authentication node, or the public key for encryption includes an identity of the core network node.
(361) In some feasible implementations, the second prestored data includes the GPK.sub.enc and the SK.sub.CP_ID_enc, and that the core network node obtains a global public key in an identity based cryptography IBC technology and a private key corresponding to the core network node from second prestored data of the core network node based on the indication message indicating the protection manner, and parses the protection message by using the global public key and the private key corresponding to the core network node includes determining, by the core network node, the protection manner of the transmission data based on the indication message indicating the protection manner, obtaining the SK.sub.CP_ID_enc and the GPK.sub.enc from the second prestored data, and decrypting the protection message by using the SK.sub.CP_ID_enc and the GPK.sub.enc, to obtain the transmission data of the UE.
(362) In some feasible implementations, the second prestored data includes the GPK.sub.enc and the SK.sub.CP_ID_enc, and that the core network node obtains a global public key in an identity based cryptography IBC technology and a private key corresponding to the core network node from second prestored data of the core network node based on the indication message indicating the protection manner, and parses the protection message by using the global public key and the private key corresponding to the core network node includes determining, by the core network node, the protection manner of the transmission data based on the indication message indicating the protection manner, obtaining the GPK.sub.enc and the SK.sub.CP_ID_enc from the second prestored data, and decrypting the protection message to obtain a decrypted message, obtaining a fourth message authentication code MAC 3 carried in the decrypted message, and generating a symmetric key K4 by using identification information of the UE, the GPK.sub.enc, and the SK.sub.CP_ID_enc, and generating a fifth message authentication code MAC 4 by using the K4, the identification information of the UE, and the decrypted message, and obtaining the transmission data when the MAC 4 matches the MAC 3.
(363) In some feasible implementations, the second prestored data includes the public key for encryption, the GPK.sub.enc, the SK.sub.CP_ID_enc, and the GPK.sub.Sig, and that the core network node obtains a global public key in an identity based cryptography IBC technology and a private key corresponding to the core network node from second prestored data of the core network node based on the indication message indicating the protection manner, and parses the protection message by using the global public key and the private key corresponding to the core network node includes determining, by the core network node, the protection manner of the transmission data based on the indication message indicating the encryption manner, and decrypting the protection message by using the GPK.sub.enc, the public key for encryption, and the SK.sub.CP_ID_enc that are obtained from the second prestored data, and obtaining the signature Sig3 from a decrypted message obtained by decrypting the protection message, attempting to authenticate the protection message by using identification information of the UE and the GPK.sub.sig, and obtaining the transmission data when the protection message has been authenticated.
(364) In a specific implementation, for implementations described in the steps of the transmission data protection method provided in this embodiment of the present invention, refer to related descriptions in the foregoing systems. Details are not described herein again.
(365)
(366) S2101. A core network node receives transmission data delivered by a user plane gateway, and obtains, from second prestored data of the core network node, identification information of user equipment UE, a global public key in an identity based cryptography IBC technology, and a private key corresponding to the core network node.
(367) S2102. The core network node protects the transmission data by using the identification information of the UE, the global public key, and the private key, to obtain a protection message, and sends the protection message to an access point.
(368) In some feasible implementations, the global public key includes a first global public key and a second global public key, and the private key corresponding to the core network node includes a fifth private key and a sixth private key, and before the core network node receives the transmission data delivered by the user plane gateway, the method further includes obtaining, by the core network node, core network system parameters from a network or a key management system KMS, and storing the core network system parameters as the second prestored data of the core network access point, where the core network system parameters include a public key for encryption and at least one of the following two groups of data, including the first global public key and the fifth private key, or the second global public key and the sixth private key, where the first global public key is a global public key GPK.sub.enc for data encryption in the IBC technology, the fifth private key is a private key SK.sub.CP_ID_enc for data encryption corresponding to the core network node in the IBC technology, the second global public key is a global public key GPK.sub.Sig for data signature in the IBC technology, and the sixth private key is a private key SK.sub.CP_ID_Sig for data signature corresponding to the core network node in the IBC technology.
(369) In some feasible implementations, the second prestored data includes the GPK.sub.enc and the SK.sub.CP_ID_enc, and that a core network node obtains, from second prestored data of the core network node, identification information of user equipment UE, a global public key in an identity based cryptography IBC technology, and a private key corresponding to the core network node includes obtaining, by the core network node, the identification information of the UE, the GPK.sub.enc, and the SK.sub.CP_ID_enc from the second prestored data, and that the core network node protects the transmission data by using the identification information of the UE, the global public key, and the private key, to obtain a protection message includes generating, by the core network node, a symmetric key K5 based on the identification information of the UE, the GPK.sub.enc, and the SK.sub.CP_ID_enc, and inputting the transmission data and the K5 into a system function to obtain a sixth message authentication code MAC 5, and encrypting the transmission data by using the K5, to obtain the protection message.
(370) In a specific implementation, for implementations described in the steps of the transmission data protection method provided in this embodiment of the present invention, refer to related descriptions in the foregoing systems. Details are not described herein again.
(371)
(372) S2201. User equipment UE receives a protection message sent by an access point.
(373) S2202. The UE obtains, from first prestored data of the UE, an identity of a core network node, a global public key in an identity based cryptography IBC technology, and a private key corresponding to the UE, and parses the protection message to obtain the transmission data.
(374) In some feasible implementations, the global public key includes a first global public key and a second global public key, and the private key corresponding to the UE includes a third private key and a fourth private key, and before the UE receives the protection message sent by the access point, the method further includes obtaining, by the UE from a core network, identification information of the UE and core network processing parameters used by the UE to process the transmission data, and storing the identification information and the core network processing parameters as the first prestored data of the UE, where the core network processing parameters include at least one of the following two groups of data, including the first global public key and the third private key, or the second global public key and the fourth private key, where the first global public key is a global public key GPK.sub.enc for data encryption in the IBC technology, the third private key is a private key SK.sub.UE_ID_enc for data encryption corresponding to the UE_ID in the IBC technology, the second global public key is a global public key GPK.sub.Sig for data signature in the IBC technology, and the fourth private key is a private key SK.sub.UE_ID_Sig for data signature corresponding to the UE_ID in the IBC technology.
(375) In some feasible implementations, the first prestored data includes the identification information of the UE, the identity of the core network node, the GPK.sub.enc, and the SK.sub.UE_ID_enc, and that the UE obtains, from first prestored data of the UE, an identity of a core network node, a global public key in an identity based cryptography IBC technology, and a private key corresponding to the UE, and parses the protection message to obtain the transmission data includes obtaining, by the UE, the GPK.sub.enc and the SK.sub.UE_ID_enc from the first prestored data, and decrypting the protection message by using the GPK.sub.enc and the SK.sub.UE_ID_enc, to obtain a decrypted message, generating a symmetric key K6 by using identification information of the core network node, the GPK.sub.enc, and the SK.sub.UE_ID_enc, decrypting the protection message by using the K6, to obtain a decrypted message, and generating a seventh message authentication code MAC 6 by using the K6 and the decrypted message, and obtaining the transmission data when the MAC 6 matches a sixth message authentication code MAC 5 carried in the decrypted message.
(376) In a specific implementation, for implementations described in the steps of the transmission data protection method provided in this embodiment of the present invention, refer to related descriptions in the foregoing systems. Details are not described herein again.
(377)
(378) In some feasible implementations, the global public key includes a first global public key and a second global public key, and the private key corresponding to the UE includes a third private key and a fourth private key, and the processing unit 232 is further configured to obtain, from a network or a KMS, processing parameters used by the UE to process the transmission data, and store the processing parameters as the first prestored data of the UE, where the processing parameters include an identity (operator ID1) of an operator to which the UE belongs, and at least one of the following three groups of data, including the first global public key, or the first global public key and the third private key, or the second global public key and the fourth private key, where the first global public key is a global public key GPK.sub.enc for data encryption in the IBC technology, the third private key is a private key SK.sub.UE_ID_enc for data encryption corresponding to the UE_ID in the IBC technology, the second global public key is a global public key GPK.sub.Sig for data signature in the IBC technology, and the fourth private key is a private key SK.sub.UE_ID_Sig for data signature corresponding to the UE_ID in the IBC technology.
(379) In some feasible implementations, the first prestored data includes the operator ID1 and the GPK.sub.Sig, and the receiving unit 231 is specifically configured to determine, based on indication information carried in the received broadcast message, that the access point has a data signature function, and determine, based on identification information of the access point corresponding to the broadcast message, an identity (operator ID2) of an operator to which the access point belongs, match the operator ID2 with the operator ID1, and search the first prestored data for a third global public key GPK.sub.Sig1 corresponding to the access point, when the broadcast message carries a signature Sig1, attempt to authenticate the broadcast message by using the GPK.sub.Sig1 and the identification information of the access point, and when the broadcast message has been authenticated, determine to add, to the first prestored data, the public key for encryption that is carried in the broadcast message.
(380) In some feasible implementations, the first prestored data includes the GPK.sub.enc, and the processing unit 232 is specifically configured to, when the transmission data needs to be sent to the access point, obtain the public key for encryption and the GPK.sub.enc from the first prestored data, and encrypt the transmission data by using the public key for encryption and the GPK.sub.enc, to obtain the protection message, where the protection manner of the transmission data is encrypting the transmission data by using the public key for encryption and the GPK.sub.enc.
(381) In some feasible implementations, the first prestored data includes the GPK.sub.enc and the SK.sub.UE_ID_enc, and the processing unit 232 is specifically configured to, when the transmission data needs to be sent to the access point, obtain the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_enc from the first prestored data, generate a first symmetric key K1 based on the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_enc, and input the transmission data and the K1 into a system function to obtain a third message authentication code MAC 2, and encrypt the transmission data, identification information of the UE, and the MAC 2 by using the public key for encryption and the GPK.sub.enc, to obtain the protection message, where the protection manner of the transmission data is encrypting the transmission data, the identification information of the UE, and the MAC 2 by using the public key for encryption and the GPK.sub.enc.
(382) In some feasible implementations, the first prestored data includes the GPK.sub.enc and the SK.sub.UE_ID_Sig, and the processing unit 232 is specifically configured to, when the transmission data needs to be sent to the access point, obtain the public key for encryption, the GPK.sub.enc, the GPK.sub.sig, and the SK.sub.UE_ID_Sig from the first prestored data, and sign the transmission data based on the GPK.sub.sig and the SK.sub.UE_ID_Sig to obtain a signature Sig2, and encrypt the transmission data, identification information of the UE, and the Sig2 by using the public key for encryption and the GPK.sub.enc, to obtain the protection message, where the protection manner of the transmission data is encrypting the transmission data and the Sig2 by using the public key for encryption and the GPK.sub.enc.
(383) In a specific implementation, for implementations performed by the units in the transmission data protection apparatus provided in this embodiment of the present invention, refer to corresponding implementations in related data transmission in the foregoing systems. Details are not described herein again.
(384)
(385) In some feasible implementations, the global public key includes a first global public key and a second global public key, and the private key corresponding to the access point includes a first private key and a second private key, and the parsing unit 243 is further configured to obtain system parameters from a network or a key management system KMS, and store the system parameters as the second prestored data of the access point, where the system parameters include the public key for encryption and at least one of the following two groups of data, including the first global public key and the first private key, or the second global public key and the second private key, where the first global public key is a global public key GPK.sub.enc for data encryption in the IBC technology, the first private key is a private key SK.sub.BS_ID_enc for data encryption corresponding to the access point in the IBC technology, the second global public key is a global public key GPK.sub.Sig for data signature in the IBC technology, and the second private key is a private key SK.sub.BS_ID_Sig for data signature corresponding to the access point in the IBC technology.
(386) In some feasible implementations, the public key for encryption is a base station BS identity BS_ID, or the public key for encryption includes a BS_ID, or the public key for encryption includes a media access control MAC address of a Wireless Fidelity Wi-Fi access point AP or a service set identifier SSID of a Wi-Fi AP, or the public key for encryption includes a hotspot UE identity UE_ID or an international mobile subscriber identity IMSI of hotspot UE.
(387) In some feasible implementations, the second prestored data includes the GPK.sub.Sig and the SK.sub.BS_ID_Sig, and the sending unit 241 is specifically configured to sign the broadcast message by using the GPK.sub.Sig and the SK.sub.BS_ID_Sig, to obtain a signature Sig1 of the broadcast message, and add indication information indicating that the access point has a data signature function or the signature Sig1 of the broadcast message to the broadcast message.
(388) In some feasible implementations, the second prestored data includes the GPK.sub.enc, the SK.sub.BS_ID_enc, the GPK.sub.Sig, and the SK.sub.BS_ID_Sig, and the parsing unit 243 is specifically configured to determine the protection manner of the transmission data based on the indication message indicating the protection manner, obtain the SK.sub.BS_ID_enc and the GPK.sub.enc from the second prestored data, and decrypt the protection message by using the SK.sub.BS_ID_enc and the GPK.sub.enc, to obtain a decrypted message.
(389) In some feasible implementations, the second prestored data includes the public key for encryption, the GPK.sub.enc, and the SK.sub.BS_ID_enc, and the parsing unit 243 is specifically configured to determine the protection manner of the transmission data based on the indication message indicating the protection manner, obtain the GPK.sub.enc and the SKB.sub.BS_ID_enc from the second prestored data, and decrypt the protection message by using the SK.sub.BS_ID_enc and the GPK.sub.enc, to obtain a decrypted message, and the sending unit 241 is specifically configured to obtain a third message authentication code MAC 2, identification information of the UE, and the transmission data that are carried in the protection message from the decrypted message obtained by the parsing unit through parsing, generate a symmetric key K2 by using the identification information of the UE, the GPK.sub.enc, and the SK.sub.BS_ID_enc, and calculate a fourth message authentication code MAC 3 by using the symmetric key K2, the identification information of the UE, and the transmission data obtained through decryption, and when the MAC 3 matches the MAC 2, send, to the core network, the transmission data sent by the UE.
(390) In some feasible implementations, the second prestored data includes the GPK.sub.enc, the SK.sub.BS_ID_enc, and the GPK.sub.Sig, and the parsing unit 243 is specifically configured to determine the protection manner of the transmission data based on the indication message indicating the encryption manner, obtain the GPK.sub.enc and the SK.sub.BS_ID_enc from the second prestored data, and decrypt the protection message by using the SK.sub.BS_ID_enc and the GPK.sub.enc, to obtain the transmission data, and the sending unit 241 is specifically configured to obtain identification information of the UE and the signature Sig2 from a decrypted message obtained by decrypting the protection message, determine the protection manner of the transmission data based on the indication message indicating the protection manner, and obtain the GPK.sub.sig from the second prestored data, and attempt to authenticate the protection message by using the identification information of the UE and the GPK.sub.sig, and when the protection message has been authenticated, send, to the core network, the transmission data sent by the UE.
(391) In a specific implementation, for implementations performed by the units in the transmission data protection apparatus provided in this embodiment of the present invention, refer to corresponding implementations in related data transmission in the foregoing systems. Details are not described herein again.
(392)
(393) In some feasible implementations, the global public key includes a first global public key and a second global public key, and the private key corresponding to the UE includes a third private key and a fourth private key, and the protection unit 251 is further configured to obtain, from a core network, the public key for encryption and core network processing parameters used by the UE to process the transmission data, and store the public key for encryption and the core network processing parameters as the first prestored data of the UE, where the core network processing parameters include at least one of the following three groups of data, including the first global public key, or the first global public key and the third private key, or the second global public key and the fourth private key, where the first global public key is a global public key GPK.sub.enc for data encryption in the IBC technology, the third private key is a private key SK.sub.UE_ID_enc for data encryption corresponding to the UE_ID in the IBC technology, the second global public key is a global public key GPK.sub.Sig for data signature in the IBC technology, and the fourth private key is a private key SK.sub.UE_ID_Sig for data signature corresponding to the UE_ID in the IBC technology.
(394) In some feasible implementations, the first prestored data includes the public key for encryption and the GPK.sub.enc, and the protection unit 251 is specifically configured to, when the transmission data needs to be sent to the access point, obtain the public key for encryption and the GPK.sub.enc from the first prestored data, and encrypt the transmission data by using the public key for encryption and the GPK.sub.enc, to obtain the protection message, where the protection manner of the transmission data is encrypting the transmission data by using the public key for encryption and the GPK.sub.enc.
(395) In some feasible implementations, the first prestored data includes the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_enc, and the protection unit 251 is specifically configured to, when the transmission data needs to be sent to the access point, obtain the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_enc from the first prestored data, generate a symmetric key K3 based on the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_enc, and input the transmission data and the K3 into a system function to obtain a fourth message authentication code MAC 3, and encrypt the transmission data and the MAC 3 by using the public key for encryption and the GPK.sub.enc, to obtain the protection message, where the protection manner of the transmission data is encrypting the transmission data and the MAC 3 by using the public key for encryption and the GPK.sub.enc.
(396) In some feasible implementations, the first prestored data includes the public key for encryption, the GPK.sub.enc, and the SK.sub.UE_ID_sig and the protection unit 251 is specifically configured to, when the transmission data needs to be sent to the access point, obtain the public key for encryption, the GPK.sub.enc, the GPK.sub.sig, and the SK.sub.UE_ID_Sig from the first prestored data, and sign the transmission data based on the GPK.sub.sig and the SK.sub.UE_ID_Sig to obtain a signature Sig3, and encrypt the transmission data and the signature Sig2 by using the public key for encryption and the GPK.sub.enc, to obtain the protection message, where the protection manner of the transmission data is encrypting the transmission data and the signature by using the public key for encryption and the GPK.sub.enc.
(397) In a specific implementation, for implementations performed by the units in the transmission data protection apparatus provided in this embodiment of the present invention, refer to corresponding implementations in related data transmission in the foregoing systems. Details are not described herein again.
(398)
(399) In some feasible implementations, the global public key includes a first global public key and a second global public key, and the private key corresponding to the core network node includes a fifth private key and a sixth private key, and the parsing unit 262 is further configured to obtain core network system parameters from a key management system KMS, and store the core network system parameters as the second prestored data of the core network access point, where the core network system parameters include a public key for encryption and at least one of the following two groups of data, including the first global public key and the fifth private key, or the second global public key and the sixth private key, where the first global public key is a global public key GPK.sub.enc for data encryption in the IBC technology, the fifth private key is a private key SK.sub.CP_ID_enc for data encryption corresponding to the core network node in the IBC technology, the second global public key is a global public key GPK.sub.Sig for data signature in the IBC technology, and the sixth private key is a private key SK.sub.CP_ID_Sig for data signature corresponding to the core network node in the IBC technology.
(400) In some feasible implementations, the public key for encryption is an identity of the core network authentication node, or the public key for encryption includes an identity of the core network node.
(401) In some feasible implementations, the second prestored data includes the GPK.sub.enc and the SK.sub.CP_ID_enc, and the parsing unit 262 is specifically configured to determine the protection manner of the transmission data based on the indication message indicating the protection manner, obtain the SK.sub.CP_ID_enc and the GPK.sub.enc from the second prestored data, and decrypt the protection message by using the SK.sub.CP_ID_enc and the GPK.sub.enc, to obtain the transmission data of the UE.
(402) In some feasible implementations, the second prestored data includes the GPK.sub.enc and the SK.sub.CP_ID_enc, and the parsing unit 262 is specifically configured to determine the protection manner of the transmission data based on the indication message indicating the protection manner, obtain the GPK.sub.enc and the SK.sub.CP_ID_enc from the second prestored data, and decrypt the protection message to obtain a decrypted message, obtain a fourth message authentication code MAC 3 carried in the decrypted message, and generate a symmetric key K4 by using identification information of the UE, the GPK.sub.enc, and the SK.sub.CP_ID_enc, and generate a fifth message authentication code MAC 4 by using the K4, the identification information of the UE, and the decrypted message, and obtain the transmission data when the MAC 4 matches the MAC 3.
(403) In some feasible implementations, the second prestored data includes the public key for encryption, the GPK.sub.enc, the SK.sub.CP_ID_enc, and the GPK.sub.Sig, and the parsing unit 262 is specifically configured to determine the protection manner of the transmission data based on the indication message indicating the encryption manner, and decrypt the protection message by using the GPK.sub.enc, the public key for encryption, and the SK.sub.CP_ID_enc that are obtained from the second prestored data, and obtain the signature Sig3 from a decrypted message obtained by decrypting the protection message, attempt to authenticate the protection message by using identification information of the UE and the GPK.sub.sig, and obtain the transmission data when the protection message has been authenticated.
(404) In a specific implementation, for implementations performed by the units in the transmission data protection apparatus provided in this embodiment of the present invention, refer to corresponding implementations in related data transmission in the foregoing systems. Details are not described herein again.
(405)
(406) In some feasible implementations, the global public key includes a first global public key and a second global public key, and the private key corresponding to the core network node includes a fifth private key and a sixth private key, and the processing unit 272 is further configured to obtain core network system parameters from a network or a key management system KMS, and store the core network system parameters as the second prestored data of the core network access point, where the core network system parameters include a public key for encryption and at least one of the following two groups of data, including the first global public key and the fifth private key, or the second global public key and the sixth private key, where the first global public key is a global public key GPK.sub.enc for data encryption in the IBC technology, the fifth private key is a private key SK.sub.CP_ID_enc for data encryption corresponding to the core network node in the IBC technology, the second global public key is a global public key GPK.sub.Sig for data signature in the IBC technology, and the sixth private key is a private key SK.sub.CP_ID_Sig for data signature corresponding to the core network node in the IBC technology.
(407) In some feasible implementations, the second prestored data includes the GPK.sub.enc and the SK.sub.CP_ID_enc, and the processing unit 272 is specifically configured to obtain the identification information of the UE, the GPK.sub.enc, and the SK.sub.CP_ID_enc from the second prestored data, generate a symmetric key K5 based on the identification information of the UE, the GPK.sub.enc, and the SK.sub.CP_ID_enc, and input the transmission data and the K5 into a system function to obtain a sixth message authentication code MAC 5, and encrypt the transmission data by using the K5, to obtain the protection message.
(408) In a specific implementation, for implementations performed by the units in the transmission data protection apparatus provided in this embodiment of the present invention, refer to corresponding implementations in related data transmission in the foregoing systems. Details are not described herein again.
(409)
(410) In some feasible implementations, the global public key includes a first global public key and a second global public key, and the private key corresponding to the UE includes a third private key and a fourth private key, and the parsing unit 282 is further configured to obtain, from a core network, identification information of the UE and core network processing parameters used by the UE to process the transmission data, and store the identification information and the core network processing parameters as the first prestored data of the UE, where the core network processing parameters include at least one of the following two groups of data, including the first global public key and the third private key, or the second global public key and the fourth private key, where the first global public key is a global public key GPK.sub.enc for data encryption in the IBC technology, the third private key is a private key SK.sub.UE_ID_enc for data encryption corresponding to the UE_ID in the IBC technology, the second global public key is a global public key GPK.sub.Sig for data signature in the IBC technology, and the fourth private key is a private key SK.sub.UE_ID_Sig for data signature corresponding to the UE_ID in the IBC technology.
(411) In some feasible implementations, the first prestored data includes the identification information of the UE, the identity of the core network node, the GPK.sub.enc, and the SK.sub.UE_ID_enc, and the parsing unit 282 is specifically configured to obtain the GPK.sub.enc the SK.sub.UE_ID_enc from the first prestored data, and decrypt the protection message by using the GPK.sub.enc and the SK.sub.UE_ID_enc, to obtain a decrypted message, generate a symmetric key K6 by using identification information of the core network node, the GPK.sub.enc, and the SK.sub.UE_ID_enc, decrypt the protection message by using the K6, to obtain a decrypted message, and generate a seventh message authentication code MAC 6 by using the K6 and the decrypted message, and obtain the transmission data when the MAC 6 matches a MAC 5 carried in the decrypted message.
(412) In a specific implementation, for implementations performed by the units in the transmission data protection apparatus provided in this embodiment of the present invention, refer to corresponding implementations in related data transmission in the foregoing systems. Details are not described herein again.
(413) In the specification, claims, and accompanying drawings of the present invention, the terms “first”, “second”, “third”, “fourth”, and so on are intended to distinguish between different objects but do not indicate a particular order. Moreover, the terms “including”, “including”, and any other variant thereof, are intended to cover a non-exclusive inclusion. For example, a process, a method, a system, a product, or a device that includes a series of steps or units is not limited to the listed steps or units, but optionally further includes an unlisted step or unit, or optionally further includes another inherent step or unit of the process, the method, the system, the product, or the device.
(414) A person of ordinary skill in the art may understand that all or some of the processes of the methods in the embodiments may be implemented by a computer program instructing relevant hardware. The program may be stored in a computer readable storage medium. When the program runs, the processes of the methods in the embodiments are performed. The foregoing storage medium may include a magnetic disk, an optical disc, a read-only memory (Read-Only Memory, ROM), or a random access memory (Random Access Memory, RAM).
(415) What are disclosed above are merely examples of embodiments of the present invention, and certainly are not intended to limit the scope of the claims of the present invention. Therefore, equivalent variations made in accordance with the claims of the present invention shall fall within the scope of the present invention.