Integrity protection method and apparatus
By combining the CRC mechanism with the key and the CRC algorithm, the problem of increased air interface overhead for integrity protection in wireless communication systems is solved, and effective information bit protection is achieved without increasing overhead.
Patent Information
- Application Number
- PCT/CN2025/102355
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-07-11
- Filing Date
- 2025-06-20
- Publication Date
- 2026-01-15
AI Technical Summary
In wireless communication systems, existing technologies increase air interface overhead when implementing integrity protection, and cannot effectively protect signal integrity without increasing transmission signal overhead.
The Cyclic Redundancy Check (CRC) mechanism is adopted. The second information bit is determined by the first information bit, the first key and the CRC algorithm. The CRC check is used for encryption to achieve integrity protection of the information bit.
Without increasing air interface overhead, the integrity protection of information bits is achieved, and security and processing efficiency are improved.
Smart Images

Figure CN2025102355_15012026_PF_FP_ABST
Abstract
Description
Integrity protection methods and devices
[0001] This application claims priority to Chinese Patent Application No. 202410937258.8, filed on July 11, 2024, entitled “Method and Apparatus for Integrity Protection”, the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the field of communication technology, and more specifically, to an integrity protection method and apparatus. Background Technology
[0003] In wireless communication systems, the security of the underlying layers is difficult to guarantee. Some related technical solutions use high-level key cryptography to digitally sign the underlying signals and send the digital signature along with the underlying signal. The receiving end verifies the integrity of the underlying signal based on the digital signature. Other related technical solutions generate tag signals based on a key and send the tag signals along with the underlying signals. The receiving end verifies the integrity of the underlying signal based on the tag signals. However, while the above solutions provide integrity protection, they also add the digital signature or tag signal, thus increasing the air interface overhead of the transmitted signal.
[0004] Therefore, how to achieve integrity protection without increasing air interface overhead is an urgent problem to be solved. Summary of the Invention
[0005] This application provides an integrity protection method and apparatus that achieves integrity protection without increasing air interface overhead through the mechanism of cyclic redundancy check (CRC).
[0006] Firstly, an integrity protection method is provided. The method provided in the first aspect can be executed by a first device. Unless otherwise specified, the first device in this application can be a terminal device or network device (e.g., a first terminal device, a second terminal device, or a first network device), a component within the terminal device or network device (e.g., a processor, a chip, or a chip system), or a logic module or software capable of implementing all or part of the functions of the terminal device or network device. For ease of description, the following description uses the first device as an example.
[0007] The method includes: determining a second information bit based on a first information bit, a first key, and a CRC algorithm, wherein the second information bit is used to protect the integrity of the first information bit; and outputting a third information bit, wherein the third information bit includes the first information bit and the second information bit.
[0008] Based on the above scheme, the first device can process the first information bit using a first key and a CRC algorithm to obtain the second information bit. The first key enables the second information bit to have integrity protection functionality, and the CRC algorithm enables it to perform CRC verification. This scheme utilizes encryption within the CRC verification process, achieving integrity protection for the first information bit without affecting the original CRC verification performance (i.e., the receiving end can still determine whether the signal transmission is erroneous). Those skilled in the art will understand that CRC verification is an operation inherent in air interface transmission; even without the above scheme, air interface transmission will still carry a CRC code, although this CRC code will not have integrity protection functionality. Therefore, the above scheme achieves integrity protection without increasing air interface overhead.
[0009] In some implementations, determining the second information bit based on the first information bit, the first key, and the CRC algorithm includes: determining the fourth information bit based on the first information bit and the first key; and processing the fourth information bit according to the CRC algorithm to determine the second information bit.
[0010] In some implementations, determining the fourth information bit based on the first information bit and the first key includes: concatenating the bits of the first information bit and the bits of the first key to determine the fourth information bit; or, interleaving the bits of the first key into the first information bit to determine the fourth information bit; or, adding the bits of the first information bit and the bits of the first key bit bit by bit to determine the fourth information bit; or, multiplying the bits of the first information bit and the bits of the first key bit by a polynomial to determine the fourth information bit.
[0011] In the scheme where the fourth information bit is determined by concatenation, the computation is very simple and the processing overhead is very small. In the scheme where the fourth information bit is determined by interleaving, the computation is simple and the processing overhead is small. Furthermore, it is difficult for a third party to crack the first key based on the fourth information bit, resulting in good security. In the scheme where the fourth information bit is determined by bitwise addition, the computation is relatively simple and the processing overhead is small. Furthermore, it is difficult for a third party to crack the first key based on the fourth information bit, resulting in good security. In the scheme where the fourth information bit is determined by polynomial multiplication, it is very difficult for a third party to crack the first key based on the fourth information bit, resulting in excellent security.
[0012] In some implementations, the fourth information bit is processed according to the CRC algorithm to determine the second information bit, including: processing the fourth information bit according to the CRC algorithm to obtain the fifth information bit; and XORing the fifth information bit with the second key to obtain the second information bit.
[0013] Based on the above scheme, the first device can further encrypt the CRC calculation output, thereby increasing the difficulty for third parties to decipher it and further improving the security of integrity protection.
[0014] In some implementations, the length of the second key is the same as the length of the fifth information bit.
[0015] Based on the above scheme, the length of the second key can be the same as the length of the fifth information bit, which facilitates the XOR operation between the second key and the fifth information bit and improves processing efficiency.
[0016] In some implementations, the first key is determined based on the physical layer key and specific parameters of the first terminal; wherein the first information bit is associated with the first terminal.
[0017] For example, the first terminal may be the first terminal device itself, a component within the first terminal device (e.g., a processor, chip, or chip system), or a logic module or software capable of implementing all or part of the functions of the first terminal device. The following description may use the example of the first terminal being a first terminal device.
[0018] Based on the above scheme, the first key can be determined according to the physical layer key and specific parameters of the first terminal. In this way, the first key can be decoupled from other terminal devices besides the first terminal, which not only enables the first key to be applied to the first terminal, but also improves the security of the first key.
[0019] In some implementations, the physical layer key is determined by a key of a first network device used to communicate with the first terminal.
[0020] Based on the above scheme, the physical layer key can be derived from the key of the first network device. This scheme is applicable to traditional key derivation mechanisms and is easy to implement.
[0021] In some implementations, the first key is determined based on a first parameter, which indicates parameters generated at the physical layer.
[0022] Based on the above scheme, the first key can be determined by a first parameter, which can indicate parameters generated by the physical layer. These parameters generated by the physical layer are known to both the first and second devices, allowing them to generate the same key using the same parameters, thus achieving integrity protection. The parameters indicated by the first parameter can be those generated at the physical layer when data or signaling is transmitted. These parameters are unpredictable, making them difficult for third parties to crack. Furthermore, these parameters do not require air interface transmission, preventing third parties from obtaining them by intercepting air interface messages, thereby improving the security of key protection.
[0023] In some implementations, the first key is determined based on a block cipher algorithm or a stream cipher algorithm.
[0024] Secondly, an integrity protection method is provided. The method provided in this application can be executed by a second device. Unless otherwise specified, the second device in this application can be the terminal device or network device itself (e.g., the first terminal device or the first network device), or it can refer to a component in the terminal device or network device (e.g., a processor, chip, or chip system), or it can be a logic module or software capable of implementing all or part of the functions of the terminal device or network device. For ease of description, the following description uses a second device as an example.
[0025] The method includes: obtaining a third information bit, which includes a first information bit and a second information bit; verifying the integrity of the first information bit based on the second information bit and a third key, wherein the second information bit is determined based on the first information bit, the first key and a CRC algorithm, and the third key corresponds to the first key.
[0026] In some implementations, the integrity of the first information bit is verified based on the second information bit and the third key, including: determining the sixth information bit based on the first information bit, the third key, and the CRC algorithm; and determining the integrity of the first information bit if the second information bit and the sixth information bit are the same.
[0027] Based on the above scheme, the second device can process the first information bit using the third key and the CRC algorithm to obtain the sixth information bit. That is, the second device can perform a similar operation to the first device using the third key to obtain the sixth information bit. When the third key is the same as the first key, the sixth information bit is also the same as the first information bit, thus confirming that the first information bit is complete. When the third key is different from the first key, the sixth information bit is different from the first information bit, thus confirming that the first information bit is incomplete and may have been tampered with.
[0028] In the second aspect, the method for determining the sixth information bit based on the first information bit, the third key, and the CRC algorithm is the same as the method for determining the second information bit based on the first information bit, the first key, and the CRC algorithm in the first aspect. That is, the receiving end can process the first information bit in the same way as the sending end. If the sixth information bit calculated by the receiving end is the same as the second information bit received from the sending end, it can be determined that the first information bit is complete.
[0029] In some implementations, determining the sixth information bit based on the first information bit, the third key, and the CRC algorithm includes: determining the seventh information bit based on the first information bit and the third key; and processing the seventh information bit according to the CRC algorithm to determine the sixth information bit.
[0030] In some implementations, the seventh information bit is determined based on the first information bit and the third key, including: concatenating the bits of the first information bit and the third key to determine the seventh information bit; or, interleaving the bits of the third key into the first information bit to determine the seventh information bit; or, adding the bits of the first information bit and the third key bit bit by bit to determine the seventh information bit; or, multiplying the bits of the first information bit and the third key bit by a polynomial to determine the seventh information bit.
[0031] In some implementations, the seventh information bit is processed according to the CRC algorithm to determine the sixth information bit, including: processing the seventh information bit according to the CRC algorithm to obtain the eighth information bit; and XORing the eighth information bit with the fourth key to obtain the sixth information bit.
[0032] In some implementations, the length of the fourth key is the same as the length of the eighth information bit.
[0033] In some implementations, the third key is determined based on the physical layer key and specific parameters of the first terminal; wherein the first information bit is associated with the first terminal.
[0034] In some implementations, the physical layer key is determined by a key of a first network device used to communicate with the first terminal.
[0035] In some implementations, the third key is determined based on a first parameter, which indicates parameters generated at the physical layer.
[0036] In some implementations, the third key is determined based on a block cipher algorithm or a stream cipher algorithm.
[0037] Thirdly, a communication device is provided, including processing circuitry (or a processor) and an input / output interface (also referred to as an interface circuit), the input / output interface being used for inputting and / or outputting signals, the processing circuitry being used to perform the first aspect and any possible method of the first aspect, or the processing circuitry being used to perform the second aspect and any possible method of the second aspect.
[0038] In some implementations, the processing circuitry is used to communicate with other devices via an interface circuitry and to perform the first aspect and any possible method of the first aspect, or to perform the second aspect and any possible method of the second aspect.
[0039] Fourthly, a communication device is provided. This communication device may include units or modules for performing the functions of the communication device.
[0040] In some implementations, the communication device may include modules, units, or means for performing the methods / operations / steps / actions described in the first aspect and any possible implementation of the first aspect. These modules, units, or means may be hardware circuits, software, or a combination of hardware circuits and software.
[0041] The device includes a processing unit and a transceiver unit. The processing unit can be used to determine a second information bit based on a first information bit, a first key, and a CRC algorithm. This second information bit is used to protect the integrity of the first information bit. The transceiver unit can be used to output a third information bit, which includes the first information bit and the second information bit.
[0042] In some implementations, the processing unit is specifically used to: determine the fourth information bit based on the first information bit and the first key; and process the fourth information bit according to the CRC algorithm to determine the second information bit.
[0043] In some implementations, the processing unit is specifically used to: concatenate the first information bit and the bits of the first key to determine the fourth information bit; or, interleave the bits of the first key into the first information bit to determine the fourth information bit; or, add the first information bit and the bits of the first key bit bit by bit to determine the fourth information bit; or, multiply the first information bit and the bits of the first key bit by a polynomial to determine the fourth information bit.
[0044] In some implementations, the processing unit is specifically used to: process the fourth information bit according to the CRC algorithm to obtain the fifth information bit; and XOR the fifth information bit with the second key to obtain the second information bit.
[0045] In some implementations, the length of the second key is the same as the length of the fifth information bit.
[0046] In some implementations, the first key is determined based on the physical layer key and specific parameters of the first terminal; wherein the first information bit is associated with the first terminal.
[0047] In some implementations, the physical layer key is determined by a key of a first network device used to communicate with the first terminal.
[0048] In some implementations, the first key is determined based on a first parameter, which indicates parameters generated at the physical layer.
[0049] In some implementations, the first key is determined based on a block cipher algorithm or a stream cipher algorithm.
[0050] In some implementations, the communication device may include modules, units, or means for performing the methods / operations / steps / actions described in the second aspect and any possible implementation of the second aspect. These modules, units, or means may be hardware circuits, software, or a combination of hardware circuits and software.
[0051] The device includes a processing unit and a transceiver unit. The transceiver unit can be used to acquire a third information bit, which includes a first information bit and a second information bit. The processing unit can be used to verify the integrity of the first information bit based on the second information bit and a third key. The second information bit is determined based on the first information bit, the first key, and a CRC algorithm. The third key corresponds to the first key.
[0052] In some implementations, the processing unit is specifically used to: determine the sixth information bit based on the first information bit, the third key, and the CRC algorithm; and determine that the first information bit is complete if the second information bit is the same as the sixth information bit.
[0053] In some implementations, the processing unit is specifically used to: determine the seventh information bit based on the first information bit and the third key; and process the seventh information bit according to the CRC algorithm to determine the sixth information bit.
[0054] In some implementations, the processing unit is specifically used to: concatenate the first information bit and the bits of the third key to determine the seventh information bit; or, interleave the bits of the third key into the first information bit to determine the seventh information bit; or, add the first information bit and the bits of the third key bit bit by bit to determine the seventh information bit; or, multiply the first information bit and the bits of the third key bit by a polynomial to determine the seventh information bit.
[0055] In some implementations, the processing unit is specifically used to: process the seventh information bit according to the CRC algorithm to obtain the eighth information bit; and XOR the eighth information bit with the fourth key to obtain the sixth information bit.
[0056] In some implementations, the length of the fourth key is the same as the length of the eighth information bit.
[0057] In some implementations, the third key is determined based on the physical layer key and specific parameters of the first terminal; wherein the first information bit is associated with the first terminal.
[0058] In some implementations, the physical layer key is determined by a key of a first network device used to communicate with the first terminal.
[0059] In some implementations, the third key is determined based on a first parameter, which indicates parameters generated at the physical layer.
[0060] In some implementations, the third key is determined based on a block cipher algorithm or a stream cipher algorithm.
[0061] Fifthly, a computer-readable storage medium is provided that stores a computer program or instructions that, when executed, cause the first aspect and any possible method of the first aspect to be performed (or implemented), or cause the second aspect and any possible method of the second aspect to be performed (or implemented).
[0062] In a sixth aspect, a computer program product is provided, comprising a computer program or instructions that, when executed, cause the first aspect and any possible method of the first aspect to be performed (or implemented), or cause the second aspect and any possible method of the second aspect to be performed (or implemented).
[0063] A seventh aspect provides a communication device, including a processor for executing (or implementing) any of the possible methods of the first aspect above, or for executing (or implementing) any of the possible methods of the second aspect above, by executing a computer program (or computer-executable instructions) stored in a memory, and / or by logic circuitry.
[0064] In one possible implementation, the device also includes a memory. In another possible implementation, the processor and memory are integrated together. In yet another possible implementation, the memory is located outside the communication device. The processor may include one or more processors.
[0065] In one possible implementation, the communication device further includes a communication interface for communicating with other devices, such as transmitting or receiving data and / or signals. Exemplarily, the communication interface may be a transceiver, circuit, bus, module, or other type of communication interface.
[0066] In one implementation, the communication device of the third, fourth, or seventh aspect mentioned above can be a chip or a chip system.
[0067] Eighthly, a chip is provided, including a processor for calling a computer program or computer instructions in memory to cause any of the implementations of the first aspect to be executed (or implemented), or to cause any of the implementations of the second aspect to be executed (or implemented).
[0068] In some implementations, the processor is coupled to the memory via an interface.
[0069] Ninth aspect, a communication system is provided, including a first device and a second device, the first device being configured to perform the first aspect and any possible implementation thereof, and the second device being configured to perform the third aspect and any possible implementation thereof.
[0070] The description of the beneficial effects of any of the second to ninth aspects can be referred to the description of the beneficial effects of the first aspect. Attached Figure Description
[0071] Figure 1 is a schematic diagram of a communication system.
[0072] Figure 2 is a schematic flowchart of an integrity protection method provided in an embodiment of this application.
[0073] Figure 3 is a schematic diagram of another integrity protection method provided in an embodiment of this application.
[0074] Figure 4 is a schematic diagram of another integrity protection method provided in the embodiments of this application.
[0075] Figure 5 is a schematic diagram of determining the fourth information bit provided in an embodiment of this application.
[0076] Figure 6 is a schematic diagram of the integrity protection method and third-party operations provided in the embodiments of this application.
[0077] Figure 7 is a schematic diagram of determining the first key provided in an embodiment of this application.
[0078] Figure 8 is a schematic block diagram of a communication device according to an embodiment of this application.
[0079] Figure 9 is a schematic block diagram of another communication device according to an embodiment of this application.
[0080] Figure 10 is an exemplary block diagram of another communication device provided in an embodiment of this application.
[0081] Figure 11 is a schematic block diagram of another communication device provided in an embodiment of this application. Detailed Implementation
[0082] In this application, unless otherwise specified or in case of logical conflict, the terminology and / or descriptions of different embodiments are consistent and can be referenced by each other. Technical features in different embodiments can be combined to form new embodiments based on their inherent logical relationships.
[0083] In this application, "at least one" means one or more, and "more than one" means two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can mean: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. In the textual description of this application, the character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, and c can mean: a, or, b, or, c, or, a and b, or, a and c, or, b and c, or, a, b, and c. Here, a, b, and c can be single or multiple.
[0084] In this application, the terms "first," "second," and various numerical designations (e.g., #1, #2, etc.) indicate distinctions made for ease of description and are not intended to limit the scope of the embodiments of this application. For example, they may distinguish different messages, rather than describing a specific order or sequence. It should be understood that such descriptions can be interchanged where appropriate to describe solutions other than those in the embodiments of this application.
[0085] In this application, descriptions such as "when," "under the circumstances," and "if" all refer to the fact that the device will take corresponding actions under certain objective circumstances. They are not time-limited, nor do they require the device to perform a judgment action during implementation, nor do they imply any other limitations.
[0086] In this application, "instruction" or "for instruction" can include both direct and indirect instruction. When describing instruction information as being used to instruct A, it may include whether the instruction information directly or indirectly instructs A, but does not necessarily mean that the instruction information carries A.
[0087] The indication methods involved in the embodiments of this application should be understood to cover various methods that enable the party to be indicated to obtain the information to be indicated. The information to be indicated can be sent as a whole or divided into multiple sub-information and sent separately. Moreover, the sending period and / or sending time of these sub-information can be the same or different. This application does not limit the sending method, for example.
[0088] The "instruction information" in the embodiments of this application can be an explicit instruction, that is, a direct instruction through signaling, or an instruction obtained by combining other rules or parameters with the parameters indicated by the signaling, or by deduction. It can also be an implicit instruction, that is, an instruction obtained based on rules or relationships, or based on other parameters, or by deduction. This application does not specifically limit it in this regard.
[0089] In this application, "protocol" can refer to standard protocols in the field of communications, such as 5G protocols, new radio (NR) protocols, and related protocols applied to future communication systems; this application does not limit this term. "Predefined" can include pre-defined terms, such as protocol definitions. "Pre-configuration" can be implemented by pre-storing corresponding codes, tables, or other methods that can be used to indicate relevant information in the device; this application does not limit the implementation method.
[0090] In this application, "communication" can also be described as "data transmission," "information transmission," "data processing," etc. "Transmission" includes "sending" and "receiving." For example, transmission can be uplink transmission, such as a terminal device sending a signal to a network device; transmission can also be downlink transmission, such as a network device sending a signal to a terminal device; transmission can also be sidelink transmission, such as a terminal device sending a signal to another terminal device. For example, "transmission" can be air interface level transmission, or it can be signal transmission from a chip input (I) / output (O) port, rather than air interface level transmission.
[0091] In this application, terms such as "message," "information," "signal," or "information element (IE)" can be used interchangeably. There are no restrictions on the name of the message or information, as long as it can achieve the corresponding function.
[0092] "Sending information to XX (device)" can be understood as the destination of the information being that device. This can include sending information directly or indirectly to that device. "Receiving information from XX (device), or receiving information from XX (device)" can be understood as the source of the information being that device. This can include receiving information directly or indirectly from that device. Information may undergo necessary processing between the source and destination, such as format changes, but the destination can understand the valid information from the source. Similar expressions in this application can be understood in a similar way, and will not be repeated here. Furthermore, "sending" can also be understood as the "output" of the chip interface, and "receiving" can also be understood as the "input" of the chip interface. In other words, "sending" or "receiving" can occur between devices, for example, between network devices and terminal devices via an air interface. "Sending" or "receiving" can also occur within a device, for example, between components, modules, chips, software modules, or hardware modules within the device via a bus, wiring, or interface.
[0093] In this application, terms such as "exemplarily" and "for example" are used to indicate examples, illustrations, or descriptions to present concepts in a specific manner. Any embodiment or design described as an "example" in this application should not be construed as being more preferred or advantageous than other embodiments or designs. In the embodiments of this application, the terms "of," "corresponding (relevant)," "corresponding," and "associate" may sometimes be used interchangeably, and it should be noted that their intended meanings are consistent unless their distinctions are emphasized.
[0094] In this application, configuration can be signaling configuration or can be described as configuring signaling. For example, signaling configuration includes configuration using signaling sent by network devices, which can be radio resource control (RRC) messages, downlink control information (DCI) messages, or system information blocks (SIBs). Another example is signaling configuration between network devices. These network devices can include access network devices, core network devices, or management plane devices, etc. Optionally, signaling configuration can also be pre-configured signaling to terminal devices or network devices, or configured to terminal devices or network devices through pre-configuration. Here, pre-configuration means defining or configuring the values of corresponding parameters in advance using a protocol, and storing them in the terminal device or network device during communication. The pre-configured messages can be modified or updated when the terminal device or network device is connected to the network.
[0095] This application will present various aspects, embodiments, or features relating to systems that may include multiple devices, components, modules, etc. Each system may include devices, components, modules, etc., other than those illustrated, and / or may not include all and all of the devices, components, modules, etc. discussed in conjunction with the accompanying drawings.
[0096] The business scenarios described in the embodiments of this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided in the embodiments of this application. As those skilled in the art will know, with the emergence of new business scenarios, the technical solutions provided in the embodiments of this application are also applicable to similar technical problems.
[0097] In the various embodiments of this application, the sequence number of each process does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application. The terms "comprising," "including," "having," and their variations all mean "including but not limited to," unless otherwise specifically emphasized.
[0098] The technical solutions of this application embodiment can be applied to various communication systems, including but not limited to: Long Term Evolution (LTE) systems, New Radio (NR) systems, and other fifth-generation (5G) systems. th This includes various mobile communication systems such as 5G, narrowband Internet of Things (NB-IoT), enhanced machine-type communication (eMTC), enhanced mobile broadband (eMBB), ultra-reliable low-latency communications (URLLC), satellite communication systems, LTE-machine-to-machine (LTE-M) systems, and other systems that evolve after 5G, such as future mobile communication systems.
[0099] Figure 1 is a schematic diagram of a communication system 100. As shown in Figure 1, the communication system 100 includes a wireless access network 110 and a core network 120. Optionally, the communication system 100 may also include an Internet 130. The wireless access network 110 may include at least one network device (111a and 111b in Figure 1) and at least one terminal device (112a-112j in Figure 1). The terminal device is connected to the network device wirelessly. The network device is connected to the core network 120 wirelessly or via a wired connection. The core network 120 may include one or more core network devices. The core network device and the network device may be independent physical devices, or the functions of the core network device and the logical functions of the network device may be integrated on the same physical device, or a single physical device may integrate some of the functions of the core network device and some of the functions of the network device. Terminal devices and network devices can be interconnected via wired or wireless means. Terminal devices can communicate wirelessly with each other, network devices with each other, and terminal devices with each other via air interface resources. For example, air interface resources may include at least one of time-domain resources, frequency-domain resources, code resources, and spatial resources. It should be noted that Figure 1 is only a schematic diagram, and the communication system 100 may also include other network devices, such as wireless relay devices and wireless backhaul devices, which are not shown in Figure 1.
[0100] Network devices can be any type of device with wireless transceiver capabilities. For example, a network device can be a base station used to connect terminal devices to a radio access network (RAN). Network devices are sometimes also referred to as access network devices or access network nodes. It is understood that the names of devices with network device functionality may differ in systems employing different wireless access technologies. For ease of description, the embodiments of this application collectively refer to devices providing wireless communication access functionality to terminal devices as base stations. In the embodiments of this application, network devices include, but are not limited to: various forms of macro base stations (as shown in Figure 1, 111a), micro base stations or indoor stations (as shown in Figure 1, 111b), pico base stations, small stations, balloon stations, relay stations, access points, etc. Network equipment can include evolved node Bs (eNBs or eNodeBs) in LTE, access points (APs), wireless relay nodes, wireless backhaul nodes, transmission points (TPs), or transmission reception points (TRPs) in Wi-Fi systems. It can also include next-generation NodeBs (gNBs) or transmission points (TRPs or TPs) in 5G systems, one or a group of antenna panels (including multiple antenna panels) of a base station in a 5G system, and network nodes constituting a gNB or transmission point, such as baseband units (BBUs) or distributed units (DUs). Furthermore, it can include network equipment, servers, or vehicle-mounted equipment in networks evolving after 5G. Network equipment can also be modules or units that perform some of the functions of a base station; for example, it can be a central unit (CU) or a DU.
[0101] In this embodiment, the means for implementing the function of the network device can be the network device itself, or it can be a means that enables the network device to implement the function, such as a chip system, which can be installed in the network device. The chip system can be composed of chips, or it can include chips and other discrete components.
[0102] In another possible scenario, multiple network devices collaborate to assist the terminal in achieving wireless access, with each network device performing a portion of the base station's functions. For example, network devices could be CUs, DUs, CUs (control plane, CP), CUs (user plane, UP), or radio units (RUs). CUs and DUs can be configured separately or included in the same network element, such as a BBU. RUs can be included in radio equipment or radio units, such as remote radio units (RRUs), active antenna units (AAUs), or remote radio heads (RRHs).
[0103] In different systems, CU (or CU-CP and CU-UP), DU, or RU may have different names, but those skilled in the art will understand their meaning. For example, in an open radio access network (O-RAN) system, CU can also be called O-CU (open CU), DU can also be called O-DU, CU-CP can also be called O-CU-CP, CU-UP can also be called O-CU-UP, and RU can also be called O-RU. For ease of description, this application uses CU, CU-CP, CU-UP, DU, and RU as examples. Any of the units among CU (or CU-CP, CU-UP), DU, and RU in this application can be implemented through software modules, hardware modules, or a combination of software modules and hardware modules. The embodiments of this application do not limit the specific technology or specific device form used in the network device.
[0104] Terminal equipment can be a device that provides voice and / or data connectivity to users; it can also be a device with wireless connectivity. Terminal equipment can be deployed on land, including indoors or outdoors, handheld or vehicle-mounted; it can also be deployed on water (such as on ships); and it can also be deployed in the air (such as on airplanes, balloons, and satellites). Terminal equipment can also be referred to as user equipment (UE), access terminal, terminal, subscriber unit, user station, mobile station, mobile station (MS), mobile terminal (MT), remote station, remote terminal, mobile device, user terminal, wireless network equipment, user agent, or user device. In this application embodiment, terminal devices include, but are not limited to: cellular phones, mobile phones, wireless data cards, wireless modems, tablets, laptop computers, notebook computers, handheld computers, mobile internet devices (MIDs), computers with wireless transceiver capabilities, cordless phones, session initiation protocol (SIP) phones, smartphones, wireless local loop (WLL) stations, personal digital assistants (PDAs), handsets with wireless communication capabilities, computing devices or other devices connected to wireless modems, in-vehicle devices (e.g., cars, bicycles, electric vehicles, airplanes, ships, trains, high-speed trains, etc.), wearable devices (e.g., smartwatches, smart bracelets, pedometers, smart glasses, etc.), satellite terminals, terminal devices in the Internet of Things or the Internet of Vehicles, as well as any form of terminal in future networks, relay user equipment, or terminals in future evolved public land mobile networks (PLMNs), etc.Terminal devices can also be virtual reality (VR) devices, augmented reality (AR) devices, smart point-of-sale (POS) machines, customer-premises equipment (CPE), light UE, reduced capability UE (REDCAP UE), machine-type communication (MTC) terminals, terminal devices in industrial control, terminal devices in self-driving, terminal devices in telemedicine, terminal devices in smart grids, wireless terminals in transportation safety, terminal devices in smart cities, terminal devices in smart homes, tactile terminal devices, smart home devices (e.g., refrigerators, televisions, air conditioners, electricity meters, etc.), smart robots, robotic arms, workshop equipment, wireless terminals in self-driving, or flying devices (e.g., smart robots, hot air balloons, drones, airplanes), etc. The terminal device can also be a vehicle device, such as a complete vehicle device, an in-vehicle module, an in-vehicle chip, an on-board unit (OBU), or a telematics box (T-BOX). The terminal device can also be other devices with terminal functions; for example, it can be a device that performs terminal functions in device-to-device (D2D) communication. This application does not limit the scope of the embodiments in this regard.
[0105] In this application embodiment, the device for implementing the functions of the terminal device can be the terminal device itself, or it can be any device capable of supporting the terminal device in implementing the functions, such as a chip or chip system. This device can be installed in the terminal device. The chip system can consist of chips or include chips and other discrete components. In the technical solution of this application embodiment, the device for implementing the functions of the terminal device is referred to as the terminal device, which can also be called a terminal. The following description may use a UE (User Equipment) as an example to illustrate the technical solution provided in this application embodiment.
[0106] The roles of base stations and terminals can be relative. For example, the helicopter or drone 112i in Figure 1 can be configured as a mobile base station. For terminals 112j that access the wireless access network 110 via 112i, terminal 112i is a base station; however, for base station 111a, 112i is a terminal, meaning that 111a and 112i communicate via a wireless air interface protocol. Of course, 111a and 112i can also communicate via a base station-to-base station interface protocol. In this case, relative to 111a, 112i is also a base station. Therefore, both base stations and terminals can be collectively referred to as communication devices. 111a and 111b in Figure 1 can be called communication devices with base station functions, and 112a-112j in Figure 1 can be called communication devices with terminal functions.
[0107] Network devices and terminal devices can communicate via wireless links. The transmission link from a network device to a terminal device can be called a downlink (DL) or downlink channel, used for transmitting downlink signals. The transmission link from a terminal device to a network device can be called an uplink (UL) or uplink channel, used for transmitting uplink signals. The transmission link from one terminal device to another can be called a sidelink (SL) or sidelink channel, used for transmitting sidelink signals.
[0108] In wireless communication systems, such as NR systems, the security of the underlying layers is difficult to guarantee. For example, before a secure context is established, signals including layers L3, L2, and L1 lack encryption and integrity protection measures. Furthermore, even after a secure context is established, signals at layers L2 and L1 still lack security protection mechanisms. Therefore, the air interface between communication devices is vulnerable to security vulnerabilities and attacks.
[0109] In some related schemes, a high-level keying scheme is used to digitally sign the lower-level (e.g., L1) signal, and then the lower-level signal is sent together with the digital signature. This scheme can protect the integrity of the lower-level signal. However, this scheme encrypts the entire lower-level signal after it is generated. Due to the strict timing requirements of the lower-level signal, this scheme has high requirements for processing latency. For example, after the lower-level signal is generated, it needs to be sent within a small latency. The scheme needs to complete processing within this latency to avoid affecting normal communication. In addition, digital signatures are often long, increasing the air interface overhead of the transmitted signal.
[0110] In other related schemes, a tag signal is generated based on a key and sent along with the underlying signal. The receiving end authenticates the underlying signal based on different tag signals. However, this scheme alters the design of the air interface signal, impacting air interface transmission performance. Furthermore, the tag signal consumes additional transmission resources, increasing the air interface overhead of the transmitted signal.
[0111] Therefore, how to achieve integrity protection without increasing air interface overhead is an urgent problem to be solved.
[0112] Figure 2 is a schematic flowchart of an integrity protection method 200 provided in an embodiment of this application. Method 200 achieves integrity protection without increasing air interface overhead through the CRC mechanism. Method 200 is described below with reference to Figure 2.
[0113] S210, the first device determines the second information bit based on the first information bit, the first key, and the CRC algorithm.
[0114] For example, the first device may be a legitimate transmitter, a legitimate user, a legitimate base station, or other device. For instance, the first device may be a first terminal device, a second terminal device, or a first network device.
[0115] The first device may be the first terminal device itself, or a component in the first terminal device (e.g., a processor, chip, or chip system), or a logic module or software that can realize all or part of the functions of the first terminal device.
[0116] The first device may be the second terminal device itself, or a component in the second terminal device (e.g., a processor, chip, or chip system), or a logic module or software that can realize all or part of the functions of the second terminal device.
[0117] The first device may be the first network device itself, or a component in the first network device (e.g., a processor, chip, or chip system), or a logic module or software that can implement all or part of the functions of the first network device.
[0118] The first information bit can be the object of integrity protection. For example, the first information bit can be used to protect integrity. This application does not limit the specific form of the first information bit. Exemplarily, the first information bit may include signaling, control signaling, physical layer (PHY) signaling (or L1 signaling), data, or physical layer data (or L1 data packets), etc. For example, the first information bit may be downlink control information (DCI), uplink control information (UCI), or other information.
[0119] This application does not limit the specific name of the first information bit, and the first information bit may also have other names. For ease of description, the first information bit may be referred to as S below. For ease of description, control signaling may be used as an example below, but those skilled in the art will understand that the first information bit may also have other forms.
[0120] Optionally, the first key is used to encrypt the first information bits. Optionally, the first key is used to protect the integrity of the first information bits. Exemplarily, the first key may be a binary number, a decimal number, or a key in other forms, which is not limited in this application.
[0121] This application does not limit the specific name of the first key, which may also be called the first keystream or other names.
[0122] Figure 3 is a schematic diagram of another integrity protection method provided in an embodiment of this application. For ease of description, the CRC algorithm is described below with reference to Figures 2 and 3.
[0123] The CRC algorithm can be used to calculate a CRC code. For example, based on a first information bit and the CRC algorithm, a CRC code corresponding to the first information bit can be obtained. For instance, referring to Figure 3(a), inputting the first information bit into the CRC algorithm yields a first CRC code, which corresponds to the first information bit.
[0124] For example, a CRC algorithm may include the following steps:
[0125] 1. Set the first information bits [a0, a1, ..., a...] A-1 ] represents its corresponding characteristic polynomial a(D) = a A-1 *D A-1 +…+a1*D+a0.
[0126] 2. Determine the generator polynomial of the CRC algorithm. For example, the commonly used CRC characteristic polynomial of length 24 in NR is g(D) = D.24 +D 23 +D 18 +D 17 +D 14 +D 11 +D 10 +D 7 +D 6 +D 5 +D 4 +D 3 +D+1.
[0127] 3. Divide the characteristic polynomial of the first information bit by the generator polynomial to obtain...
[0128] 4. Bit sequence [p0, p1, ..., p L-1 This is the first CRC code.
[0129] This application does not limit the specific name of the CRC algorithm. For example, the CRC algorithm may also be called CRC calculation or other names.
[0130] The second information bit can be used to protect the integrity of the first information bit. For example, the first information bit can be control signaling. The receiving end of the control signaling can verify the control signaling based on the second information bit.
[0131] The second information bit can also be used to perform CRC verification on the first information bit. Therefore, the second information bit can simultaneously perform CRC verification and integrity protection functions.
[0132] For example, the second information bit may be a CRC code or other forms. This application does not limit the specific name of the second information bit, which may also be called a second CRC code, a check bit, a check code, or other names.
[0133] The aforementioned first CRC code differs from the second CRC code described here. The first CRC code is the CRC code output after only the first information bit is input into the CRC algorithm. The second CRC code, however, is the CRC code output after inputting both the first information bit and the first key into the CRC algorithm, or it can be obtained by further processing the CRC code output from the first information bit and the first key. For ease of description, the second CRC code may also be referred to as the encrypted CRC code below. The following description uses the second information bit as an example of an encrypted CRC code; however, those skilled in the art will understand that the second information bit can have other forms.
[0134] Optionally, S210 includes: S212, inputting the first information bit and the first key into a CRC algorithm to determine the second information bit. For example, using control signaling and the first key into a CRC algorithm to determine the encrypted CRC code.
[0135] In S210 and / or S212, "determining the second information bit" can include directly determining the second information bit, for example, the second information bit being the output value of the CRC algorithm. "Determining the second information bit" can also include indirectly determining the second information bit. For example, the second information bit is further calculated based on the output value of the CRC algorithm. In other words, the second information bit is determined based on the output value of the CRC algorithm.
[0136] To facilitate understanding, two examples of directly determining the second information bit and indirectly determining the second information bit are introduced below with reference to Figure 3.
[0137] Referring to Figure 3(b), the first device can input the first information bit and the first key into the CRC algorithm and output the second information bit.
[0138] For example, the first device can input the control signaling and the first key into the CRC algorithm to determine the encrypted CRC code.
[0139] Those skilled in the art will understand that, unlike the scheme shown in Figure 3(a), the above scheme uses both the first information bit and the first key as inputs to the CRC algorithm, so that the final determined second information bit has both the function of CRC verification and the function of integrity protection.
[0140] Referring to Figure 3(c), the first device can input the first information bit and the first key into the CRC algorithm and output the fifth information bit, where the fifth information bit can be the output value of the CRC algorithm. Furthermore, the first device can determine the second information bit based on the fifth information bit.
[0141] For example, the first device can input the control signaling and the first key into the CRC algorithm, output the fifth information bit, and then further process the fifth information bit to obtain the encrypted CRC code.
[0142] S230, the first device outputs the third information bit. Correspondingly, the second device acquires the third information bit.
[0143] The third information bit may include the first and second information bits. For example, the third information bit may include control signaling and an encrypted CRC code.
[0144] For example, as shown in Figure 3(d), the third information bit can be formed by splicing the first information bit and the second information bit.
[0145] The third information bit can be formed by directly concatenating the first and second information bits. For example, the third information bit can be represented as "first information bit || second information bit", where "||" indicates concatenation. As an example, if the first information bit is 1010 and the second information bit is 1100, then "first information bit || second information bit" will result in 10101100. As another example, the third information bit can be represented as "second information bit || first information bit".
[0146] The third information bit can also be concatenated with the first and second information bits in other forms. For example, the third information bit can be represented as "first information bit || identifier || second information bit". Here, the identifier is located between the first and second information bits and can be used by the receiving end to distinguish between them. For example, the receiving end can determine that the bits before the identifier belong to the first information bit, and the bits after the identifier belong to the second information bit. This application does not limit the specific function of the identifier; the identifier may not have the aforementioned distinguishing function, or it may have other functions.
[0147] However, this application does not limit the specific form of the third information bit, and the third information bit may also carry the first information bit and the second information bit in other ways.
[0148] This application does not limit the specific name of the third information bit, and the third information bit may have other names. For ease of understanding, the third information bit may be referred to as output information, but those skilled in the art will understand that the third information bit may have other names.
[0149] In some possible implementations, prior to S230, method 200 further includes: S228, whereby the first device determines a third information bit based on the first information bit and the second information bit.
[0150] For example, the first device can concatenate a first information bit (e.g., control signaling) and a second information bit (e.g., an encrypted CRC code) to obtain a third information bit (e.g., output information). Alternatively, the first device can employ other methods to ensure that the generated third information bit includes both the first and second information bits.
[0151] The term "output" can be understood as the first device sending a third information bit to other devices within the same device. For example, the first device could be a baseband chip located in a communication device (e.g., a first terminal device, a second terminal device, or a first network device). The first device can send the third information bit to other devices within that communication device (e.g., a radio frequency chip). As another example, the first device could be a processing module of a communication device (e.g., a first terminal device, a second terminal device, or a first network device) that can send the third information bit to other modules within that communication device (e.g., a transmitting module).
[0152] The term "output" can also be understood as the first device sending a third information bit to another device outside the first device or the device in which the first device is located. For example, the first device can be a communication device (e.g., a first terminal device), which can send the third information bit to other communication devices (e.g., a first network device). As another example, the first device can be a component within a communication device (e.g., a first network device), which can send the third information bit to other communication devices (e.g., the first terminal device). Yet another example, the first device can be a functional module within a communication device (e.g., a second terminal device), which can send the third information bit to other communication devices (e.g., the first terminal device).
[0153] In some other possible implementations, S230 can be replaced by: the first device outputting the first information bit and the second information bit; and the second device acquiring the first information bit and the second information bit.
[0154] For example, the second device may be a legitimate user, a legitimate receiving end, a legitimate base station, or other device. For instance, the second device may be a first terminal device or a first network device.
[0155] S250, the second device verifies the integrity of the first information bit based on the second information bit and the third key.
[0156] The third key corresponds to the first key. If the first key is valid, the first key and the third key can be the same. If the first key is invalid, the first key and the third key are different. The second device can perform an operation similar to S210 based on the third key.
[0157] If the result obtained by the second device is the same as the result obtained by the second information bit, then the first information bit is determined to be complete. In this case, the first key is the same as the third key, and the first information bit was transmitted correctly.
[0158] If the result obtained by the second device differs from the second information bit, then the first information bit is determined to be incomplete. In this case, there are at least two possible reasons. The first possible reason is that the first key and the third key are different; in this case, the first key is invalid. The second possible reason is that the first information bit was transmitted incorrectly, and the second device cannot obtain the same result based on the erroneous first information bit.
[0159] For example, the second device can determine the sixth information bit based on the first information bit, the third key, and the CRC algorithm. The method by which the second device determines the sixth information bit can be the same as in S210. That is, the receiving end can process the first information bit in the same way as the sending end. If the sixth information bit calculated by the receiving end is the same as the second information bit received from the sending end, it can be determined that the first information bit is complete. For example, the CRC algorithm can be predefined, and both the first and second devices can use the same CRC algorithm for calculation. Further descriptions of S250 are provided below and will not be repeated here.
[0160] In the method shown in Figure 2, the implementation of the first device and the second device can include the following three exemplary implementation scenarios.
[0161] Scenario 1: The first device is a first terminal device; the second device is a first network device. Scenario 2: The first device is a first network device; the second device is a first terminal device. Scenario 3: The first device is a second terminal device; the second device is a first terminal device.
[0162] Based on the above scheme, the first device can process the first information bit using a first key and a CRC algorithm to obtain the second information bit. The first key enables the second information bit to have integrity protection functionality, and the CRC algorithm enables it to perform CRC verification. This scheme utilizes encryption within the CRC verification process, achieving integrity protection for the first information bit without affecting the original CRC verification performance (i.e., the receiving end can still determine whether the signal transmission is erroneous). Those skilled in the art will understand that CRC verification is an operation inherent in air interface transmission; even without the above scheme, air interface transmission will still carry a CRC code, although this CRC code will not have integrity protection functionality. Therefore, the above scheme achieves integrity protection without increasing air interface overhead.
[0163] In some possible implementations, S210 includes: S212, the first device determines a fourth information bit based on the first information bit (e.g., control signaling) and the first key; S214, the first device processes the fourth information bit according to the CRC algorithm to determine the second information bit.
[0164] The fourth information bit can be used to indicate the first information bit and the first key. For example, the fourth information bit can carry information from the first information bit and information from the first key. Alternatively, the fourth information bit can represent or reflect the first information bit and the first key. For instance, the first device can fuse the first information bit and the first key to obtain the fourth information bit.
[0165] The second information bit can be the direct output of the CRC algorithm, or it can be determined by further processing the output of the CRC algorithm. In some other possible implementations, S214 can be replaced by: the first device inputting the fourth information bit into the CRC algorithm to determine the second information bit.
[0166] Figure 4 is a schematic diagram of another integrity protection method provided in an embodiment of this application. The above-mentioned "determining the second information bit" can be determined directly or indirectly. For ease of understanding, the above scheme is described below with reference to Figure 4.
[0167] Referring to Figure 4(a), (b), or (c), the first device can determine the fourth information bit based on the first information bit and the first key. Referring to Figure 4(a), in the example of directly determining the second information bit, the first device can process the fourth information bit according to the CRC algorithm and output the second information bit. Referring to Figure 4(b) or (c), in the example of indirectly determining the second information bit, the first device can process the fourth information bit according to the CRC algorithm, output the fifth information bit, and then determine the second information bit based on the fifth information bit.
[0168] In some possible implementations, S214 includes: the first device processing the fourth information bit according to the CRC algorithm to obtain the fifth information bit; the first device XORing the fifth information bit with the second key to obtain the second information bit.
[0169] For example, the first device can input the fourth information bit into the CRC algorithm and output the fifth information bit. For example, referring to Figure 4(c), the first device can determine the second information bit based on the fifth information bit and the second key.
[0170] For example, the first device can XOR the fifth information bit and the second key to obtain the second information bit. XOR can also be understood as bitwise XOR, modulo-2 addition, or bitwise addition, etc.
[0171] Optionally, the second key is used to encrypt the fifth information bit. Exemplarily, the second key can be a binary number, a decimal number, or a key in other forms; this application is not limited in this regard.
[0172] This application does not limit the specific name of the second key, which may also be called a second keystream, a short keystream, or other names.
[0173] Optionally, the second key is associated with the first key. For example, the second key is determined by the first key.
[0174] In some possible implementations, the first device can determine the second key based on the first key.
[0175] In other possible implementations, when the first device is a first terminal device or a second terminal device, the network device can determine the second key based on the first key and send information indicating the second key to the first device. This information indicating the second key can be direct indication information, for example, the information may include the second key itself. Alternatively, the information indicating the second key can be indirect indication information, for example, the first device can determine the second key based on this information.
[0176] For example, the second key can be obtained by truncating, rearranging, XORing, or performing polynomial multiplication on the first key. For instance, the length of the first key may be greater than the fifth information bit; by truncating, the length of the second key can be made equal to the fifth information bit. Another example is that the first key can be rearranged (e.g., its order can be shuffled according to certain rules) to obtain the second key. Yet another example is that the first key can be XORed (or multiplied) with itself (or other information bits) to obtain the second key.
[0177] Based on the above scheme, the first device can further encrypt the CRC calculation output, thereby increasing the difficulty for third parties to decipher it and further improving the security of integrity protection.
[0178] In some possible implementations, the length of the second key is the same as the length of the fifth information bit.
[0179] For example, the second key has 10 bits, and the fifth information bit can also have 10 bits.
[0180] Based on the above scheme, the length of the second key can be the same as the length of the fifth information bit, which facilitates the XOR operation between the second key and the fifth information bit and improves processing efficiency.
[0181] Figure 5 is a schematic diagram of determining the fourth information bit according to an embodiment of this application. In Figure 5, the first information bit can be represented by a blank box; the first key can be represented by a shaded box; each box can represent at least one bit. In Figure 5, the length of the first information bit is less than the length of the first key, but this application is not limited to this. In some other examples, the length of the first information bit can also be greater than or equal to the length of the first key. Some examples of S212 are described below with reference to Figure 5.
[0182] Example 1: A first device concatenates the first information bit (e.g., control signaling) and bits of the first key to determine the fourth information bit. Determining the fourth information bit can include directly determining the fourth information bit or indirectly determining the fourth information bit.
[0183] As a directly defined example, see Figure 5(a), the first information bit can be concatenated (or appended) to the first key. As another example, see Figure 5(b), the first information bit can be concatenated (or appended) to the first key. The fourth information bit can include both the first information bit and the first key. The length of the fourth information bit can be equal to the sum of the lengths of the first information bit and the first key. For example, the length of the fourth information bit = the length of the first information bit + the length of the first key. The first information bit can either precede or follow the first key.
[0184] This application is not limited to the splicing methods shown in Figures 5(a) and (b), and other splicing methods are also possible. As an example of indirect determination, the first information bit, the first key, and the identifier can be spliced together. The identifier serves only as the name of the bits other than the first information bit and the first key. The identifier may or may not serve the function of distinguishing the first information bit and the first key, or it may have other functions. The fourth information bit may include the first information bit and the first key. The length of the fourth information bit may be greater than the sum of the lengths of the first information bit and the first key. For example, the length of the fourth information bit > the length of the first information bit + the length of the first key. The first information bit may be located before or after the first key. The fourth information bit may also include the identifier. The identifier may be located between the first information bit and the first key. For example, the fourth information bit may sequentially include: the first information bit, the identifier, and the first key; or, the first key, the identifier, and the first information bit.
[0185] The above scheme is very simple to operate and has very low processing overhead.
[0186] Example 2: The fourth information bit is determined by interleaving bits from the first information bit (e.g., control signaling) with the first key. Alternatively, the first device determines the fourth information bit by interleaving bits from the first key with the first information bit.
[0187] In one possible implementation, the first device can concatenate the first information bit and the first key, and then interleave the concatenated bits to obtain the fourth information bit.
[0188] The following description uses the scheme of "interleaving the first information bit into the first key" as an example. The description of "interleaving the bits of the first key into the first information bit" can be found in the following description. For example, the first information bit and the first key can be interchanged.
[0189] Those skilled in the art will understand that interleaving bits from the first information bit into the first key does not mean that bits from the first information bit can only be located between two bits belonging to the first key; that is, it does not mean that both sides of a bit from the first information bit must be adjacent to bits of the first key. For example, see Figure 5(c), where one side of a bit from the first information bit is adjacent to a bit of the first key, as shown in bit 510.
[0190] Referring to (c) in Figure 5, the first device can arbitrarily or non-uniformly interleave bits of the first key into the first information bits.
[0191] Referring to Figure 5(d), the first device can uniformly interleave the bits of the first key into the first information bit. The number of bits of the first key between any two adjacent bits belonging to the first information bit in the fourth information bit is a first value. The first value can be an integer greater than or equal to 0. The first value can represent the interleaving period. For example, the first value can be denoted as k. period For example, suppose a box represents 1 bit. Then, in (d) of Figure 5, the first value could be 2.
[0192] The above scheme is simple to operate and has low processing overhead. Furthermore, it is not easy for a third party to crack the first key based on the fourth information bit, thus providing good security.
[0193] Example 3: The first device adds the first information bit (e.g., control signaling) and the bits of the first key bit bit by bit (or adds them bit by bit) to determine the fourth information bit.
[0194] In Figures 5(e) and (f), the bits resulting from adding the first key bits and the first information bits can be represented by shaded boxes. The bitwise addition of the first information bits and the first key bits can include direct bitwise addition or other processing.
[0195] In some examples, the first device can align the first information bits with the leading edges of the first key bits and add them bit by bit. This addition can be understood as modulo-2 addition, XOR, or bit-by-bit XOR, etc. The result can be shown in Figure 5(e).
[0196] In other examples, the first device may repeat the shorter sequence of the first information bit and the first key multiple times, and then add the repeated sequence to the other sequence. For example, suppose the length of the first information bit is less than the length of the first key, i.e., the first information bit is shorter than the first key. The first device may repeat the first information bit multiple times until the length of the repeated first information bit is greater than or equal to the length of the first key. Then, the first device may add the repeated first information bit to the first key. For example, the first device may align the repeated first information bit with the leading edge of the bits of the first key and add them bit by bit.
[0197] Determining the fourth information bit can include directly determining the fourth information bit or indirectly determining the fourth information bit.
[0198] In some examples of "direct determination", the result obtained by the first device adding the bits of the first key to the first information bits can be the fourth information bits.
[0199] Regarding "indirect determination," in some examples, the first device adds the bits of the first key to the bits of the first information to obtain a preliminary result. The first device can then further process this preliminary result to obtain the fourth information bit. For example, as shown in Figure 5(f), after adding the bits of the first information bit and the bits of the first key bit bit by bit, the first device can concatenate the result with the first information bit to obtain the fourth information bit. As another example, after adding the bits of the first information bit and the bits of the first key bit bit by bit, the first device can again add the result bit by bit with the bits of the first key.
[0200] The above scheme is relatively simple to operate and has low processing overhead. Furthermore, it is difficult for a third party to crack the first key based on the fourth information bit, thus offering good security.
[0201] Example 4: The first device multiplies the first information bit (e.g., control signaling) and the bits of the first key by a polynomial to determine the fourth information bit.
[0202] In some examples, the first device can multiply the first characteristic polynomial with the second characteristic polynomial to obtain the third characteristic polynomial, wherein the first characteristic polynomial is the characteristic polynomial corresponding to the first information bit, and the second characteristic polynomial is the product of the characteristic polynomial corresponding to the first key; the first device can determine the fourth information bit based on the third characteristic polynomial, wherein the fourth information bit is the information bit corresponding to the third characteristic polynomial.
[0203] For example, assuming the first information bit is 101, then the characteristic polynomial corresponding to the first information bit can be: x 2 +1. Assuming the first key is 1001, then the characteristic polynomial corresponding to the first key can be: x 3 +1. Multiplying the two characteristic polynomials above, we get the following result: (1+x) 2 (1+x) 3 )=x 5 +x 3 +x 2 +1
[0204] Those skilled in the art will understand that the characteristic polynomial x 5 +x 3 +x 2 The information bit corresponding to +1 is 101101, therefore, the fourth information bit can be 101101.
[0205] In the above scheme, it is very difficult for a third party to crack the first key based on the fourth information bit, and the security is excellent.
[0206] Figure 6 is a schematic diagram of the integrity protection method provided in the embodiments of this application and third-party operations. The following, with reference to Figure 6, introduces some examples of integrity protection methods and the possible situations that may occur when a third party tampers with the data.
[0207] In some possible implementations, S230 includes: the first device outputting the third information bit after channel coding. For example, the first device is a communication device (e.g., a first terminal device, a second terminal device, or a first network device) or a component or module in the communication device that has a transmission output function.
[0208] In some other possible implementations, the components or modules responsible for transmitting and receiving within the communication equipment containing the first device are used to send the channel-coded third information bits to the second device. For example, the first device is a baseband chip.
[0209] For example, signal X can be used to carry a third information bit after channel coding.
[0210] Figure 6(a) shows an example of directly outputting the second information bit using the CRC algorithm. Here, the first information bit is represented by S, the first key by K1, the fourth information bit by (S, K1), the second information bit by C, and the third information bit by S||C. For descriptions of these terms, please refer to the descriptions in Figure 4(a) and Figure 3(d), which will not be repeated here. The following description uses control signaling as an example for the first information bit.
[0211] After receiving signal X, if a third party wants to tamper with control signaling S, it needs to perform CRC calculation and channel coding on the tampered fake control signaling S'. However, the third party does not know the first key K1; therefore, the third party has two possible methods, denoted as Method 1 and Method 2.
[0212] Method 1: As shown in Figure 6(b), a third party uses a forged first key K1' to perform calculations and obtain a false encrypted CRC code C' (i.e., a false second information bit). Specifically, the third party may use the forged first key K1' and a false control signaling S' to determine (S', K1'), i.e., a false fourth information bit. After CRC calculation, a false encrypted CRC code C' is output, which is then concatenated with the false control signaling S' to obtain S'||C'. A false signal X' is then transmitted through channel coding.
[0213] Method 2: As shown in Figure 6(c), the third party uses the CRC code (i.e., the second information bit C) determined by the first device based on the first information bit. Specifically, the third party may concatenate the second information bit C received from the first device with the false control signaling S” to obtain S”||C. S”||C is then channel-coded to generate a false signal X”.
[0214] The second information bit C has both the function of traditional CRC check and the function of integrity protection. For ease of description, the traditional CRC check may be referred to as the first CRC check below. The superposition of traditional CRC check and integrity protection may be referred to as the second CRC check below.
[0215] For example, if the control signaling is transmitted correctly, it may pass the first CRC checksum. If the control signaling has not been tampered with, it may pass integrity protection. If the control signaling is transmitted correctly and has not been tampered with, it may pass the second CRC checksum.
[0216] After a second device (e.g., a legitimate user or base station) receives a signal (e.g., signal X, X', or X”), it can verify whether the control signaling within it is correct. For example, if the control signaling in the signal passes the second CRC check, it indicates that the control signaling was received correctly and has not been tampered with. For instance, if the second device performs an operation similar to S210 on the control signaling using its own key (e.g., a third key), and the resulting information bits are identical to the second information bits (i.e., the encrypted CRC code), it can be determined that the control signaling is complete and has not been tampered with.
[0217] For example, the second device verifies whether the control signaling is correct, and there may be three situations, which are described below.
[0218] Case 1: If the control signaling in the signal is received correctly and has not been tampered with, i.e., passes the second CRC check, then the second device can perform further operations based on the control signaling. The signal in Case 1 can be signal X shown in Figure 6(a), and signal X is transmitted correctly and passes the second CRC check.
[0219] Scenario 2: An error occurred during signal transmission, causing the control signaling within the signal to fail the second CRC check. In this case, the second device can reject the control signaling. For example, the second device can refuse to operate according to the instructions of the control signaling. Optionally, the second device can request the first device to retransmit the control signaling. The signal in Scenario 2 could be signal X shown in Figure 6(a), but signal X was transmitted incorrectly and failed the second CRC check. That is, although the control signaling was not tampered with, the transmission error caused it to fail the second CRC check.
[0220] Case 3: The control signaling in the signal is tampered with, thus failing the second CRC check. For example, if the second device performs an operation similar to S210 based on a false control signaling S' (or S”) and the second device's key (e.g., a third key), and the resulting information bits are different from the second information bits, it can be determined that the control signaling has failed the second CRC check. Furthermore, the second device can reject the control signaling. For example, the second device can refuse to operate according to the instructions of the control signaling. The signal in Case 3 can be the signal shown in Figure 6(b) or (c), for example, signal X' or X”. For a detailed description, please refer to Method 1 or Method 2 above.
[0221] In the scenario shown in Figure 6(b), the third party is unaware of the genuine first key K and uses a forged first key K' for encryption, resulting in a false encrypted CRC code C'. Therefore, the false encrypted CRC code C' differs from the genuine encrypted CRC code C, and thus fails the second CRC check.
[0222] In the scenario shown in Figure 6(c), a third party tampered with the control signaling. The encrypted CRC code C is for the untampered control signaling; in other words, the encrypted CRC code C is determined based on the untampered control signaling. Therefore, the information bits determined by the second device based on the tampered control signaling and the third key are different from the encrypted CRC code C carried by signal X”, thus failing the second CRC check.
[0223] In scenario 3, even if the spurious control signaling is transmitted correctly, it cannot pass the second CRC check because the control signaling has been tampered with.
[0224] Figure 6(d) shows an example of indirectly determining the second information bit using the CRC algorithm. Here, the first information bit is denoted as S, the first key as K1, the fourth information bit as (S, K1), the fifth information bit as C1, the second key as K2, the second information bit as C, and the third information bit as S||C. For descriptions of the above terms, please refer to the descriptions in Figure 4(c) and Figure 3(d), which will not be repeated here. The following description uses control signaling as an example for the first information bit.
[0225] After receiving signal X, if a third party wants to tamper with the control signaling S, it needs to perform CRC calculation and channel coding on the tampered fake control signaling S'. However, the third party does not know the first key K1. Therefore, the third party has two possible methods, denoted as Method 2 and Method 3. The description of Method 2 is given above and will not be repeated here. An example of Method 3 is described below.
[0226] Method 3: As shown in Figure 6(e), a third party uses a forged first key K1' to calculate and obtain a false encrypted CRC code C' (i.e., a false second information bit). Specifically, the third party may use the forged first key K1' and a false control signaling S' to determine (S', K1'), i.e., a false fourth information bit. After CRC calculation, a false fifth information bit C1' is output. This C1' is then used with the forged second key K2' to determine the false encrypted CRC code C', which is then concatenated with the false control signaling S' to obtain S'||C'. A false signal X' is then transmitted through channel coding.
[0227] After a second device (e.g., a legitimate user or base station) receives a signal (e.g., signal X, X', or X”), it can verify the correctness of the control signaling within it. For example, if the control signaling in the signal passes the second CRC check, then the control signaling was received correctly and has not been tampered with. For instance, if the second device performs an operation similar to S210 on the control signaling using its own key (e.g., a third key), and the resulting information bits are identical to the second information bits (i.e., the encrypted CRC code), then it can be determined that the control signaling is complete and has not been tampered with.
[0228] For example, the second device may verify the correctness of the control signaling in three ways, which are described below. See cases 4 to 6 above for details.
[0229] Case 4: The signal in Case 4 can be signal X shown in Figure 6(d), and signal X is transmitted correctly and passes the second CRC check. See Case 1 for further details.
[0230] Case 5: The signal in Case 5 can be signal X shown in Figure 6(d), however, signal X is transmitted incorrectly and fails the second CRC check. See Case 2 for further details.
[0231] Case 6: For a detailed description of Case 6, please refer to Case 3, Method 2 and Method 3, which will not be repeated here.
[0232] Figure 7 is a schematic diagram of determining the first key according to an embodiment of this application. The method for determining the first key is described below with reference to Figure 7.
[0233] The following example, with reference to Figure 7(a), illustrates the determination or derivation of the physical layer key.
[0234] In one possible implementation, the physical layer key is associated with the physical layer. For example, the physical layer key could be a key applied to the physical layer. For example, the physical layer key could be used to generate a first key, which could be used to encrypt information at the physical layer (e.g., a first information bit).
[0235] In some possible implementations, the physical layer key can serve as the root key. The first and second devices can generate a continuously changing first key based on this root key. For ease of distinction, embodiments of this application may refer to the key generated by the second device as the third key. The third key corresponds to the first key. Provided there are no computational errors, the first and third keys can be the same.
[0236] In some possible implementations, the physical layer key is determined by the key of the first network device. For example, the first network device can determine the physical layer key based on its own key.
[0237] The first network device can be used to communicate with the first terminal device. For example, the first network device can send the physical layer key to the first terminal device. The methods for deriving and transmitting the physical layer key are described below, in conjunction with the aforementioned scenarios 1 to 3.
[0238] In scenario 1, the first device is a first terminal device; the second device is a first network device. Thus, the second device can derive a physical layer key. The second device can then transmit this physical layer key to the first device.
[0239] In scenario 2, the first device is a first network device; the second device is a first terminal device. Thus, the first device can derive a physical layer key. The first device can then transmit this physical layer key to the second device.
[0240] In scenario 3, the first device is the second terminal device; the second device is the first terminal device. The first network device can derive a physical layer key. The first network device can transmit the physical layer key to the first device. The first network device can transmit the physical layer key to the second device.
[0241] As shown in Figure 7(a), the physical layer key K PHY It can be based on key K gNB Derived from the next hop (NH) parameter.
[0242] Based on the above scheme, the physical layer key can be derived from the key of the first network device. This scheme is applicable to traditional key derivation mechanisms and is easy to implement.
[0243] Optionally, the physical layer key is from K gNB Newly derived keys. For example, physical layer keys can be different from conventional keys derived from the keys of the first network device.
[0244] For example, referring to (a) in Figure 7, the physical layer key K PHY Unlike K gNB Other keys derived from it. For example, K RRCenc K RRCint K UPenc and K UPint Among them, the key K RRCenc It can be used to protect Radio Resource Control (RRC) signaling according to a specific encryption (enc) algorithm. Key K RRCint It can be used to protect RRC signaling according to a specific integrity (int) algorithm. Key K UPenc It can be used to protect user plane (UP) services according to a specific encryption (enc) algorithm. Key KUPint It can be used to protect UP services according to a specific integrity (int) algorithm.
[0245] Based on the above scheme, the first key generated from the physical layer key can be different from the traditional control plane (or data plane) key. This ensures that the first key, the traditional control plane key, and the traditional data plane key are isolated from each other. If one of these three keys is cracked by a third party, the use of the other two keys will not be affected. For example, if a third party cracks the first key, the security of using the control plane and data plane will not be affected. Therefore, the above scheme can improve communication security.
[0246] In some possible implementations, the first key is determined based on the physical layer key and specific parameters of the first terminal device.
[0247] Optionally, the specific parameters of the first terminal device can be parameters belonging to the first terminal device. For example, the specific parameters of the first terminal device can be specific to that first terminal device. Or, for example, the specific parameters of the first terminal device are specific to that first terminal device. Those skilled in the art will understand that different terminal devices can have different specific parameters. However, this application does not exclude the possibility that different terminal devices may share some of the same specific parameters.
[0248] For example, specific parameters of the first terminal device may include a random access (RA) radio network temporary identifier (RNTI), a cell (C) RNTI, or other RNTIs. Specific parameters of the first terminal device may also include a user identifier (UID), a service set identifier (SSID), or a media access control (MAC) address. Specific parameters of the first terminal device may also include a subcarrier index, or a cell identifier, etc.
[0249] This application does not limit the name of the specific parameter of the first terminal device. For example, the specific parameter of the first terminal device can be called the UE-specific parameter.
[0250] In some examples, specific parameters of the first terminal device can be directly used as input to the algorithm for determining the first key. In other examples, the specific parameters of the first terminal device can be processed (e.g., truncated) before being used as input to the algorithm for determining the first key.
[0251] In this context, the first information bit is associated with the first terminal device. In some examples, the first information bit is an information bit sent or received by the first terminal device. For instance, the first information bit is an information bit sent by the first terminal device to another device (e.g., a first network device). Or, for another example, the first information bit is an information bit sent by another device (e.g., a first network device or a second terminal device) to the first terminal device. In still other examples, the first information bit is an information bit generated or used by the first terminal device. For instance, the first information bit may be generated by the first terminal device. Or, for another example, the first terminal device may perform corresponding operations based on the first information bit. As an example, the first information bit may be control signaling, and the first terminal device may perform corresponding operations based on the instructions of the control signaling.
[0252] In some examples, the first key can be determined based on a stream cipher algorithm. For example, stream cipher algorithms can include Rivest cipher 4 (RC4), or the Trivium algorithm, and so on.
[0253] In some possible implementations, the first device can process specific parameters of the first terminal device and the physical layer key according to a stream cipher algorithm to obtain a first key. For example, see Figure 7(b). The above scheme can also be understood as using the physical layer key to encrypt specific parameters of the first terminal device to generate the first key.
[0254] For example, the content of specific parameters of the first terminal device may be related to the type of stream cipher algorithm. For instance, in the RC4 algorithm, the substitution box (S-box) can be 256 bits. Thus, the S-box can be determined by specific parameters of the first terminal device; for example, the S-box can be determined by at least one of the first terminal device's UID, SSID, MAC address, or RNTI sequence value. As another example, in the Trivium algorithm, the input parameter can be an 80-bit initialization vector. This initialization vector can be determined by specific parameters of the first terminal device; for example, the initialization vector can be determined by at least one of the first terminal device's UID, SSID, MAC address, or RNTI sequence value.
[0255] This application does not limit the method by which the S-box or initialization vector is determined based on specific parameters of the first terminal device. For example, the determination method may include splicing, truncation, bitwise addition, polynomial multiplication, or other methods.
[0256] This application does not limit the first key to be generated only by stream cipher algorithms; for example, the first key can also be generated by other algorithms.
[0257] Based on the above scheme, the first key can be determined according to the physical layer key and specific parameters of the first terminal device. In this way, the first key can be decoupled from other terminal devices besides the first terminal device, which not only enables the first key to be applied to the first terminal device, but also improves the security of the first key.
[0258] In some possible implementations, the first key is determined based on a first parameter. For example, the first key can be determined based on the first parameter, the physical layer key, and specific parameters of the first terminal device.
[0259] The first parameter can be used to indicate parameters generated at the physical layer. For example, the first parameter may include the index value corresponding to the actual time-frequency resources at the physical layer. Exemplarily, the first parameter may include at least one of the following: the index value of the control channel element (CCE), the start and end positions of the CCE, the control resource set (CORESET) identifier (ID), the search space identifier (ID), or other parameters. The first parameter can be a single parameter generated by the physical layer or a combination of parameters generated by the physical layer. As another example, the first parameter can be determined by the index value corresponding to the actual time-frequency resources at the physical layer. Exemplarily, the first parameter may be determined by at least one of the following: the index value of the CCE, the start and end positions of the CCE, the CORESETID, the search space ID, or other parameters.
[0260] This application does not limit the method of determining the first parameter. For example, the determination method may include splicing, truncation, bitwise addition, polynomial multiplication, or other methods.
[0261] The specific name of the first parameter is not limited in the embodiments of this application. For example, the first parameter may also be called a physical layer parameter, a counter, or other names.
[0262] In some examples, the first key can be determined based on a block cipher algorithm. For example, the block cipher algorithm may include the Advanced Encryption Standard (AES) algorithm, or the Data Encryption Standard (DES) algorithm, and so on.
[0263] In some possible implementations, the first device can process specific parameters of the first terminal device, the physical layer key, and the first parameter according to a block cipher algorithm to obtain a first key. For example, referring to Figure 7(c), the block cipher algorithm can be the AES algorithm. However, this application is not limited to this; the block cipher algorithm can also be the DES algorithm or other algorithms. The above scheme can also be understood as using the physical layer key to encrypt the specific parameters of the first terminal device and the first parameter to generate the first key.
[0264] This application does not limit the first key to be generated only by block cipher algorithms; for example, the first key can also be generated by other algorithms.
[0265] Based on the above scheme, the first key can be determined by a first parameter, which can indicate parameters generated by the physical layer. These parameters generated by the physical layer are known to both the first and second devices, allowing them to generate the same key using the same parameters, thus achieving integrity protection. The parameters indicated by the first parameter can be those generated at the physical layer when data or signaling is transmitted. These parameters are unpredictable, making them difficult for third parties to crack. Furthermore, these parameters do not require air interface transmission, preventing third parties from obtaining them by intercepting air interface messages, thereby improving the security of key protection.
[0266] The following describes an example of the second device verifying the integrity of the first information bit based on the second information bit. The example below is similar to the scheme described above for the first device to determine the second information bit, where the second information bit corresponds to the sixth information bit, the fourth information bit corresponds to the seventh information bit, the fifth information bit corresponds to the eighth information bit, the first key corresponds to the third key, the second key corresponds to the fourth key, and the first device corresponds to the second device. Unless otherwise specified, the following example can be referred to the corresponding description of the scheme described above for the first device to determine the second information bit.
[0267] In some possible implementations, S250 includes: the second device determining a sixth information bit based on the first information bit, the third key, and the CRC algorithm; if the second information bit is the same as the sixth information bit, the second device determines that the first information bit is complete.
[0268] The third key can be the same as the first key. Optionally, the third key is used to encrypt the first information bits. Optionally, the third key is used to verify the integrity of the first information bits. Exemplarily, the third key can be a binary number, a decimal number, or a key in other forms, which is not limited in this application.
[0269] This application does not limit the specific name of the third key, which may also be called a third keystream or other names.
[0270] The sixth information bit can be used to verify the integrity of the first information bit.
[0271] For example, the first information bit can be a control signaling bit. The receiving end of the control signaling bit can verify the control signaling bit based on the sixth information bit and the second information bit.
[0272] The sixth information bit can also be used to perform CRC verification on the first information bit. Therefore, the sixth information bit can simultaneously perform CRC verification and integrity protection functions.
[0273] For example, the sixth information bit can be a CRC code or other forms. This application does not limit the specific name of the sixth information bit, which can also be called the third CRC code, check bit, check code, or other names.
[0274] In some other possible implementations, S250 includes: S252, the second device determines the sixth information bit based on the first information bit, the third key and the CRC algorithm; S254, if the second information bit is different from the sixth information bit, the second device determines that the first information bit is incomplete.
[0275] The scheme by which the second device determines the sixth information bit based on the third key is similar to the scheme by which the first device determines the second information bit based on the first key, and other descriptions will not be repeated here.
[0276] Based on the above scheme, the second device can process the first information bit using the third key and the CRC algorithm to obtain the sixth information bit. That is, the second device can perform a similar operation to the first device using the third key to obtain the sixth information bit. When the third key is the same as the first key, the sixth information bit is also the same as the first information bit, thus confirming that the first information bit is complete. When the third key is different from the first key, the sixth information bit is different from the first information bit, thus confirming that the first information bit is incomplete and may have been tampered with.
[0277] In some possible implementations, S252 includes: S256, the second device determines the seventh information bit based on the first information bit (e.g., control signaling) and the third key; S258, the second device processes the seventh information bit according to the CRC algorithm to determine the sixth information bit.
[0278] The seventh information bit can be used to indicate the first information bit and the third key. For example, the seventh information bit can carry information from the first information bit and information from the third key. Alternatively, the seventh information bit can represent or reflect the first information bit and the third key. For instance, the second device can fuse the first information bit and the third key to obtain the seventh information bit.
[0279] S256 is similar to S212; other details can be found in the description of S212. The seventh information bit is similar to the fourth information bit and will not be repeated here. S258 is similar to S214; other details can be found in the description of S214 and will not be repeated here.
[0280] In some possible implementations, S258 includes: the second device processing the seventh information bit according to the CRC algorithm to obtain the eighth information bit; the second device XORing the eighth information bit with the fourth key to obtain the sixth information bit.
[0281] The eighth information bit is similar to the fifth information bit; please refer to the previous description for details, which will not be repeated here. The fourth key is similar to the second key; please refer to the previous description for details, which will not be repeated here. S258 is similar to S214; please refer to the description of S214 for details, which will not be repeated here.
[0282] In some possible implementations, the length of the fourth key is the same as the length of the eighth information bit.
[0283] In some possible implementations, S256 includes: concatenating the first information bit and the bits of the third key to determine the seventh information bit; or, interleaving the bits of the third key into the first information bit to determine the seventh information bit; or, adding the bits of the first information bit and the bits of the third key bit bit by bit to determine the seventh information bit; or, multiplying the bits of the first information bit and the bits of the third key bit by a polynomial to determine the seventh information bit.
[0284] For details, please refer to the descriptions in Examples 1 to 4, which will not be repeated here.
[0285] In some possible implementations, the third key is determined based on the physical layer key and specific parameters of the first terminal device; wherein the first information bit is associated with the first terminal device.
[0286] In some possible implementations, the physical layer key is determined by a key of a first network device used to communicate with the first terminal device.
[0287] In some possible implementations, the third key is determined based on a first parameter, which indicates parameters generated at the physical layer. For example, the third key may be determined based on the first parameter, the physical layer key, and specific parameters of the first terminal device.
[0288] In some possible implementations, the third key is determined based on a block cipher algorithm or a stream cipher algorithm.
[0289] The following describes the apparatus embodiments corresponding to the method embodiments of this application. Only a brief description of the apparatus is provided below; for specific implementation steps and details, please refer to the preceding method embodiments.
[0290] To achieve the functions of the methods provided in this application, the communication device may include hardware structures and / or software modules, implementing the aforementioned functions in the form of hardware structures, software modules, or a combination of hardware structures and software modules. Whether a particular function is implemented in the form of hardware structures, software modules, or a combination of hardware structures and software modules depends on the specific application and design constraints of the technical solution.
[0291] Figure 8 is a schematic block diagram of a communication device 1000 according to an embodiment of this application. The communication device 1000 includes a processor 1010 and a communication interface 1020. Optionally, the processor 1010 and the communication interface 1020 can be interconnected via a bus. The communication device 1000 can be a first device or a second device.
[0292] Optionally, the communication device 1000 may further include a memory 1040. The memory 1040 includes, but is not limited to, random access memory (RAM), read-only memory (ROM), cache, erasable programmable read-only memory (EPROM), synchronous dynamic random access memory (SDRAM), hard disk drive (HDD), solid-state drive (SSD), or compact disc read-only memory (CD-ROM). The memory 1040 is used to store related instructions and / or data. The memory 1040 may be integrated with the processor 1010 or disposed separately.
[0293] Processor 1010 may include one or more of the following: central processing unit (CPU), application-specific integrated circuit (ASIC), digital signal processor (DSP), microprocessor unit (MPU), microcontroller unit (MCU), graphics processing unit (GPU), field-programmable gate array (FPGA), artificial intelligence processor (AI processor), or neural processing unit (NPU). If processor 1010 is a CPU, it can be a single-core CPU or a multi-core CPU. However, this application is not limited in this respect; processor 1010 may also be one or more GPUs, or one or more tensor processing units (TPUs). Processor 1010 may be a signal processor, a chip, or other integrated circuit capable of implementing the methods of this application, or a portion of the circuitry within the aforementioned processor, chip, or integrated circuit used for processing functions. Additionally, communication interface 1020 may be an input / output interface, used for inputting or outputting signals or data, or it may be an input / output circuit.
[0294] For example, the communication device 1000 is a first device, and the processor 1010 is used to perform the following operations: determine a second information bit based on a first information bit, a first key and a CRC algorithm, the second information bit being used to perform integrity protection on the first information bit; and output a third information bit, the third information bit including the first information bit and the second information bit.
[0295] For example, the communication device 1000 is a second device, and the processor 1010 is configured to perform the following operations: acquire a third information bit, which includes a first information bit and a second information bit; verify the integrity of the first information bit based on the second information bit and a third key, wherein the second information bit is determined based on the first information bit, the first key, and a CRC algorithm.
[0296] The above description is for illustrative purposes only. The communication device 1000 is responsible for executing the methods or steps related to the first or second device in the foregoing method embodiments.
[0297] In one possible implementation, the communication interface 1020 can be a transceiver. The transceiver may include a transmitter and a receiver, with the transmitter performing a transmission operation and the receiver performing a reception operation. For example, the processor 1010 is used to control the transceiver to receive and / or transmit signals.
[0298] In one possible implementation, the communication interface 1020 can also be a communication circuit, pins, input / output interfaces, bus, etc.
[0299] It should be noted that the communication device 1000 may include a transmitter but not a receiver. Alternatively, the communication device 1000 may include a receiver but not a transmitter. Specifically, it depends on whether the above-described scheme performed by the communication device 1000 includes both transmitting and receiving actions.
[0300] The above description is merely exemplary. For details, please refer to the methods illustrated in the above embodiments. The implementation of each operation in Figure 8 can also be found in the corresponding descriptions of the methods illustrated in Figures 2 to 7.
[0301] For example, the communication device 1000 can be used to execute the schemes shown in Figures 2 to 7.
[0302] For example, the communication device 1000 is the first device, and the communication interface 1020 can be used to output third information bits, etc.
[0303] For example, the communication device 1000 is a second device, and the communication interface 1020 can be used to acquire third information bits, etc.
[0304] For details on other implementation methods, please refer to the detailed descriptions of the embodiments shown in Figures 2 to 7 above, which will not be repeated here. It should be understood that the specific processes by which each component performs the corresponding processes described above have been described in detail in the above method embodiments, and will not be repeated here for the sake of brevity.
[0305] Figure 9 is a schematic block diagram of another communication device 1100 according to an embodiment of this application. The communication device 1100 can be a first device or a second device, or it can be a chip or module in the first device or the second device, used to implement the methods involved in the embodiments shown in Figures 2 to 7. Please refer to the relevant descriptions in the above method embodiments for details.
[0306] The communication device 1100 includes a transceiver unit 1110 and a processing unit 1120. The transceiver unit 1110 will be described exemplarily below.
[0307] The transceiver unit 1110 may include a sending unit and a receiving unit. The sending unit is used to perform the sending action of the communication device, and the receiving unit is used to perform the receiving action of the communication device. For ease of description, the sending unit and the receiving unit are combined into one transceiver unit in this embodiment. This will be explained uniformly here and will not be repeated later. The transceiver unit 1110 can implement the corresponding communication functions. The transceiver unit 1110 may also be referred to as a communication interface or a communication module.
[0308] The communication device 1100 may include a transmitting unit but not a receiving unit. Alternatively, the communication device 1100 may include a receiving unit but not a transmitting unit. Specifically, it depends on whether the above-described scheme performed by the communication device 1100 includes both transmitting and receiving actions.
[0309] For example, the transceiver unit 1110 is used to output third information bits, etc. The processing unit 1120 is used to execute the processing, coordination and other steps involved in the communication device 1100.
[0310] For example, the transceiver unit 1110 is used to acquire third information bits, etc. The processing unit 1120 is used to execute the processing, coordination, and other steps involved in the communication device 1100.
[0311] The above description is for illustrative purposes only. The communication device 1100 will be responsible for executing the relevant methods or steps in the foregoing method embodiments.
[0312] Optionally, the communication device 1100 further includes a storage unit 1130 for storing programs or code for executing the aforementioned methods. Alternatively, the storage unit 1130 can store instructions and / or data, and the processing unit 1120 can read the instructions and / or data from the storage unit 1130 to enable the communication device 1100 to implement the aforementioned method embodiments. For example, the communication device 1100 can be used to execute the schemes shown in Figures 2 to 7.
[0313] For example, the processing unit 1120 can be used to determine a second information bit based on the first information bit, the first key and the CRC algorithm, the second information bit being used to protect the integrity of the first information bit; the transceiver unit 1110 can be used to output a third information bit, the third information bit including the first information bit and the second information bit.
[0314] For example, the transceiver unit 1110 can be used to acquire a third information bit, which includes a first information bit and a second information bit; the processing unit 1120 can be used to verify the integrity of the first information bit based on the second information bit and the third key, wherein the second information bit is determined based on the first information bit, the first key and the CRC algorithm.
[0315] For details on other implementation methods, please refer to the detailed descriptions of the embodiments shown in Figures 2 to 7 above, which will not be repeated here. It should be understood that the specific processes by which each component performs the corresponding processes described above have been described in detail in the above method embodiments, and will not be repeated here for the sake of brevity.
[0316] When the communication device 1000 in Figure 8 is a chip, the communication interface 1020 can be a transceiver, input / output circuit, or communication interface of the chip. The processor 1010 can be a processor integrated on the chip, a microprocessor, or an integrated circuit. In the above method embodiments, the transmitting operation of the first or second device can be understood as the output of the chip, and the receiving operation of the first or second device in the above method embodiments can be understood as the input of the chip.
[0317] When the communication device 1100 in Figure 9 is a chip, the transceiver unit 1110 can be a transceiver, input / output circuit, or communication interface of the chip. The processing unit 1120 can be a processor, microprocessor, or integrated circuit integrated on the chip. The transmitting operation of the first or second device in the above method embodiment can be understood as the output of the chip, and the receiving operation of the first or second device in the above method embodiment can be understood as the input of the chip.
[0318] Figure 10 is an exemplary block diagram of another communication device 10 provided in an embodiment of this application.
[0319] As shown in Figure 10, for example, the communication device 10 may include a chip system 110, a memory 120, a bus 130, a power management module 140, or a transceiver 150, etc.
[0320] The chip system 110 can be an integrated circuit chip with signal processing capabilities. In implementation, each step of the above method can be completed through integrated logic circuits in the hardware of the chip system 110 or through software instructions.
[0321] By way of example and not limitation, chip system 110 may include circuitry or chips responsible for signal processing (such as a modem chip, also known as a baseband chip, or a system-on-chip (SoC) chip or system-in-package (SIP) chip containing a modem core).
[0322] Optionally, the chip system 110 may also include a memory (such as a cache) for storing instructions and data. In some embodiments, the memory in the chip system 110 is a cache memory. This memory can store instructions or data that the chip system 110 has just used or that are used repeatedly. If the chip system 110 needs to use the instruction or data again, it can directly retrieve it from the memory. This avoids repeated accesses, reduces the waiting time of the chip system 110, and thus improves the efficiency of the system.
[0323] In some embodiments, the chip system 110 may include one or more interfaces. Interfaces may include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface, etc.
[0324] Memory 120 may include random access memory (RAM) and read-only memory (ROM). Memory 120 may store computer-readable, computer-executable code, including instructions that, when executed, cause the processor to perform the various functions described in this application.
[0325] Optionally, the code may include instructions for implementing various aspects of the embodiments of this application, such as instructions for determining a second information bit. The code may be stored in a non-transitory computer-readable medium such as system memory or other types of memory. In some cases, the code may not be directly executable by the chip system 110, but may instead enable a computer (e.g., at compile and execution time) to perform the functions described in this application. In some cases, memory 120 may contain a basic I / O system that controls basic hardware or software operations, such as interaction with peripheral components or devices.
[0326] For example, the chip system 110 executes various functional applications and data processing of the communication device 10 by running instructions stored in the memory 120. For instance, when the communication device 10 transfers files with other devices (which may also be terminals or network devices), the chip system 110 of the communication device 10 can call the computer-executable program code stored in the memory 120 to implement the communication method provided in the embodiments of this application.
[0327] In addition, the memory 120 can be integrated into the chip system 110 or independent of the chip system 110.
[0328] For example, bus 130 may be USB, used to support communication between various parts of communication device 10.
[0329] The power management module 140 is used to receive charging input from the charger. Optionally, the power management module 140 can also supply power to the communication device 10 while charging it (e.g., the battery module of the communication device 10). By way of example and not limitation, the power management module 140 can also supply power to other devices besides the communication device 10.
[0330] Transceiver 150 can communicate bidirectionally via one or more antennas, wired links, or wireless links. For example, transceiver 150 can represent a wireless transceiver and can communicate bidirectionally with another wireless transceiver. Transceiver 150 may also include a modem for modulating packets and providing the modulated packets to the antenna for transmission, and for demodulating packets received from the antenna. Transceiver 150 may include a receiver and a transmitter, the receiver performing the function of receiving information and the transmitter performing the function of transmitting information.
[0331] In some cases, a wireless device may include a single antenna. However, in other cases, the device may have more than one antenna, such as antenna 1 and antenna 2 shown in FIG. 10, which may be capable of simultaneously transmitting or receiving multiple wireless transmissions. Exemplarily, antenna 1 and antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in communication device 10 can be used to cover one or more communication frequency bands. Different antennas can also be multiplexed to improve antenna utilization. For example, antenna 1 can be multiplexed as a diversity antenna for a wireless local area network. In other embodiments, the antennas can be used in conjunction with a tuning switch. Communication device 10 can transfer files to other devices via wireless communication functions.
[0332] In one design, the communication device 20 may correspond to the first device in the above method embodiment.
[0333] The device 10 can implement the steps or processes corresponding to those performed by the first device in the above method embodiments. The transceiver 150 can be used to perform transmission and reception related operations of the first device in the above method embodiments, such as performing step S230 in the above method embodiments. The chip system 110 can be used to perform processing related operations of the first device in the above method embodiments, such as performing step S210 in the above method embodiments.
[0334] In another design, the communication device 10 may correspond to the second device in the above method embodiment.
[0335] The device 10 can implement the steps or processes corresponding to those performed by the second device in the above method embodiments. The transceiver 150 can be used to perform transmission and reception related operations of the second device in the above method embodiments, such as performing step S230 in the above method embodiments. The chip system 110 can be used to perform processing related operations of the second device in the above method embodiments, such as performing step S250 in the above method embodiments.
[0336] The first device may be a first terminal device, a second terminal device, or a first network device. The second device may be the first terminal device or the first network device.
[0337] In some possible implementations, the communication device 10 may be a first terminal device or a second terminal device. For example, the communication device 10 may include modules such as a short-range communication module 164, a sensor 161, a display 162, or a camera 163 as shown in FIG10.
[0338] The short-range communication module 164 may include modules that support short-range communication, such as WiFi and Bluetooth.
[0339] For example, sensor 161 may include pressure sensor, gyroscope sensor, barometric pressure sensor, magnetic sensor, accelerometer, distance sensor, proximity sensor, fingerprint sensor, temperature sensor, touch sensor, ambient light sensor, bone conduction sensor, etc.
[0340] For example, display 162 is used to display images, videos, etc. The display includes a display panel. The display panel may be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), a mini light-emitting diode (LED), a micro LED, a micro OLED, a quantum dot light-emitting diode (QLED), etc. For example, in this embodiment, the display may be used to display the interface required by the communication device 10. For example, the communication device 10 implements display functions through a graphics processing unit (GPU), a display, and an application processor. The GPU is a microprocessor for image processing, connected to the display and the application processor. The GPU performs mathematical and geometric calculations for graphics rendering. The chip system 110 may include one or more GPUs that execute program instructions to generate or modify display information.
[0341] For example, camera 163 is used to acquire images, videos, etc.
[0342] It is understood that the structure shown in Figure 10 does not constitute a specific limitation on the communication device 10, and the specific structure of the terminal device and / or network device can be referred to Figure 10. In some embodiments, the communication device 10 may also include more or fewer components than shown in Figure 10, or combine some components, or split some components, or have different component arrangements, etc. Alternatively, some components shown in Figure 10 may be implemented in hardware, software, or a combination of software and hardware, and the terminal device and / or network device may add or reduce components based on the structure given in Figure 10.
[0343] Figure 11 is a schematic block diagram of another communication device 20 provided in an embodiment of this application.
[0344] As shown in Figure 11, the communication device 20 may include a baseband unit 210, which can communicate with external devices via a cellular radio frequency (RF) transceiver 220 (e.g., if the communication device 20 is a terminal device, the baseband unit 210 can communicate with network devices or terminal devices via the cellular RF transceiver 220; or, if the communication device 20 is a network device, the baseband unit 210 can communicate with terminal devices and / or core network devices via the cellular RF transceiver 220).
[0345] Exemplarily, baseband unit 210 may include a computer-readable medium / memory. Baseband unit 210 may be responsible for general processing, including the execution of software stored on the computer-readable medium / memory. When executed by baseband unit 304, the software causes baseband unit 210 to perform the various functions described above. The computer-readable medium / memory may also be used to store data manipulated by baseband unit 210 during software execution.
[0346] Optionally, the baseband unit 210 further includes a receiving unit 201, a management unit 202, and a transmitting unit 203. The management unit 202 includes one or more sub-units shown in FIG. 11 (e.g., a fusion sub-unit and a CRC calculation sub-unit), wherein the fusion sub-unit can be used for operations such as determining the fourth information bit and determining the second information bit from the fifth information bit in the above method embodiments, while the CRC calculation sub-unit can be used for calculating the fourth information bit in the above method embodiments. The units within the management unit 201 can be stored in a computer-readable medium / memory and / or configured as hardware within the baseband unit 210. The receiving unit 201 and the transmitting unit 203 can be referred to as transceiver units.
[0347] When the communication device 20 is used to implement the function of the first device in the above method embodiments, the receiving unit 201 is used to execute the receiving step of the first device, the sending unit 203 is used to execute the sending step of the first device, and the management unit 202 is used to execute the processing step of the first device.
[0348] For example, when the communication device 20 is used to implement the function of the first device in the above method embodiments, the management unit 202 is used to determine the second information bit according to the first information bit, the first key and the CRC algorithm, and the second information bit is used to perform integrity protection on the first information bit; the sending unit 203 is used to output the third information bit, which includes the first information bit and the second information bit.
[0349] For example, when the device 20 is used to perform the methods in Figures 2 to 7, the receiving unit 201 can be used to perform the step of receiving information in the method; the management unit 202 can be used to perform the processing step in the method; and the sending unit 203 can be used to perform the step of sending information in the method.
[0350] When the communication device 20 is used to implement the function of the second device in the above method embodiments, the receiving unit 201 is used to execute the receiving step of the second device, the sending unit 203 is used to execute the sending step of the second device, and the management unit 202 is used to execute the processing step of the second device.
[0351] For example, when the communication device 20 is used to implement the function of the second device in the above method embodiments, the receiving unit 201 is used to obtain a third information bit, which includes a first information bit and a second information bit; the management unit 202 is used to verify the integrity of the first information bit according to the second information bit and the third key, wherein the second information bit is determined according to the first information bit, the first key and the CRC algorithm.
[0352] For example, when the device 20 is used to perform the methods in Figures 2 to 7, the receiving unit 201 can be used to perform the step of receiving information in the method; the management unit 202 can be used to perform the processing step in the method; and the sending unit 203 can be used to perform the step of sending information in the method.
[0353] For a more detailed description of the receiving unit 201, management unit 202 and sending unit 203, please refer to the relevant descriptions in the above method embodiments, which will not be repeated here.
[0354] This application also provides a chip, including a processor, for calling and executing instructions stored in a memory, causing a communication device on which the chip is mounted to perform the methods described in the examples above.
[0355] This application also provides another chip, including: an input interface, an output interface, and a processor, wherein the input interface, the output interface, and the processor are connected via an internal connection path, and the processor is used to execute code in a memory. When the code is executed, the processor is used to perform the methods in the examples described above. Optionally, the chip further includes a memory for storing computer programs or code.
[0356] This application also provides a processor for coupling with a memory for performing the methods and functions of the communication apparatus involved in any of the above embodiments.
[0357] In another embodiment of this application, a computer program product comprising a computer program or instructions is provided, wherein the method of the foregoing embodiments is implemented when the computer program product is run on a computer.
[0358] This application also provides a computer program that, when run on a computer, enables the implementation of the methods described in the foregoing embodiments.
[0359] In another embodiment of this application, a computer-readable storage medium is provided, which stores a computer program that, when executed by a computer, implements the methods described in the foregoing embodiments.
[0360] This application also provides a communication system, which includes a first device and a second device. The first device and the second device are respectively used to perform the methods performed by the first device and the second device in the foregoing embodiments.
[0361] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0362] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0363] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0364] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0365] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0366] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0367] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A method for protecting integrity, characterized in that, include: Based on the first information bit, the first key, and the cyclic redundancy check (CRC) algorithm, the second information bit is determined, and the second information bit is used to protect the integrity of the first information bit. Output a third information bit, which includes the first information bit and the second information bit.
2. The method according to claim 1, characterized in that, The step of determining the second information bit based on the first information bit, the first key, and the CRC algorithm includes: The fourth information bit is determined based on the first information bit and the first key; The fourth information bit is processed according to the CRC algorithm to determine the second information bit.
3. The method according to claim 2, characterized in that, Determining the fourth information bit based on the first information bit and the first key includes: The fourth information bit is determined by concatenating the first information bit and the bits of the first key; or, The bits of the first key are interleaved into the first information bits to determine the fourth information bit; or... The fourth information bit is determined by adding the first information bit and the bits of the first key bit bit by bit; or, The fourth information bit is determined by multiplying the first information bit and the bits of the first key by a polynomial.
4. The method according to claim 2 or 3, characterized in that, The step of processing the fourth information bit according to the CRC algorithm to determine the second information bit includes: The fourth information bit is processed according to the CRC algorithm to obtain the fifth information bit; The second information bit is obtained by XORing the fifth information bit and the second key.
5. The method according to claim 4, characterized in that, The length of the second key is the same as the length of the fifth information bit.
6. The method according to any one of claims 1 to 5, characterized in that, The first key is determined based on the physical layer key and specific parameters of the first terminal; wherein, the first information bits are associated with the first terminal.
7. The method according to claim 6, characterized in that, The physical layer key is determined by the key of the first network device, which is used to communicate with the first terminal.
8. The method according to claim 6 or 7, characterized in that, The first key is determined based on a first parameter, wherein the first parameter is used to indicate parameters generated at the physical layer.
9. The method according to any one of claims 6 to 8, characterized in that, The first key is determined based on a block cipher algorithm or a stream cipher algorithm.
10. A method for protecting integrity, characterized in that, include: Obtain the third information bit, which includes the first information bit and the second information bit; The integrity of the first information bit is verified based on the second information bit and the third key, wherein the second information bit is determined based on the first information bit, the first key and the cyclic redundancy check (CRC) algorithm, and the third key corresponds to the first key.
11. The method according to claim 10, characterized in that, The step of verifying the integrity of the first information bit based on the second information bit and the third key includes: The fifth information bit is determined based on the first information bit, the third key, and the CRC algorithm; If the second information bit is the same as the fifth information bit, the first information bit is determined to be complete.
12. The method according to claim 11, characterized in that, The step of determining the fifth information bit based on the first information bit, the third key, and the CRC algorithm includes: The sixth information bit is determined based on the first information bit and the third key; The sixth information bit is processed according to the CRC algorithm to determine the fifth information bit.
13. The method according to claim 12, characterized in that, The step of determining the sixth information bit based on the first information bit and the third key includes: The sixth information bit is determined by concatenating the first information bit and the bits of the third key; or, The bits of the third key are interleaved into the first information bits to determine the sixth information bit; or... The first information bit and the bits of the third key are added bit by bit to determine the sixth information bit; or, The sixth information bit is determined by multiplying the first information bit and the bits of the third key using a polynomial.
14. The method according to claim 12 or 13, characterized in that, The step of processing the sixth information bit according to the CRC algorithm to determine the fifth information bit includes: The sixth information bit is processed according to the CRC algorithm to obtain the seventh information bit; The fifth information bit is obtained by XORing the seventh information bit and the fourth key.
15. The method according to claim 14, characterized in that, The length of the fourth key is the same as the length of the seventh information bit.
16. The method according to any one of claims 11 to 15, characterized in that, The third key is determined based on the physical layer key and specific parameters of the first terminal device; wherein, the first information bits are associated with the first terminal device.
17. The method according to claim 16, characterized in that, The physical layer key is determined by the key of the first network device, which is used to communicate with the first terminal device.
18. The method according to claim 16 or 17, characterized in that, The third key is determined based on a first parameter, wherein the first parameter is used to indicate parameters generated at the physical layer.
19. The method according to any one of claims 16 to 18, characterized in that, The third key is determined based on a block cipher algorithm or a stream cipher algorithm.
20. A communication device, characterized in that, It includes at least one module or at least one unit, said at least one module or said at least one unit being used to perform the method of any one of claims 1 to 9, or said at least one module or said at least one unit being used to perform the method of any one of claims 10 to 19.
21. A communication device, characterized in that, include: A processor configured to, by executing a computer program or instructions, cause the method of any one of claims 1 to 9 to be performed, or cause the method of any one of claims 10 to 19 to be performed.
22. The communication device according to claim 21, characterized in that, The communication device further includes a memory for storing the computer program or the instructions.
23. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program or instructions that, when executed, cause the method of any one of claims 1 to 9 to be performed, or cause the method of any one of claims 10 to 19 to be performed.
24. A computer program product, characterized in that, It includes a computer program or instructions that, when run, implement the method as described in any one of claims 1 to 9, or implement the method as described in any one of claims 10 to 19.
25. A communication system, characterized in that, It includes a communication device for performing the method as described in any one of claims 1 to 9, and a communication device for performing the method as described in any one of claims 10 to 19.
26. A communication device, characterized in that, It includes processing circuitry and an input / output interface, the input / output interface being used to input and / or output signals, and the processing circuitry being used to perform the method as described in any one of claims 1 to 9, or the method as described in any one of claims 10 to 19.
Citation Information
Patent Citations
Low-overhead message integrity protection method based on hash chain
CN114003970A
Unmanned aerial vehicle data link integrity protection and encryption method
CN115942308A
A method of data integrity protection in WLAN
CN1567878A
3GPP data integrity protection
EP3644637A1
Communication method and communication apparatus
WO2024087038A1