Authentication method and device
Patent Information
- Application Number
- CN202280098498.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-29
- Publication Date
- 2025-03-11
AI Technical Summary
Existing authentication schemes based on upper-layer cryptography in radio frequency identification systems have problems such as being unable to withstand computational attacks and occupying additional communication overhead, which reduces data throughput.
By using a key-based authentication method when interacting between devices, the first device authenticates the received downlink signal based on the first sequence, the first information is generated by the second device based on the first key, and the first sequence is based on the first sequence. Two keys are generated to avoid computational attacks and ensure the security of the authentication process.
Computational attacks are effectively avoided, communication overhead is reduced, and the security and efficiency of authentication processing are improved.
Smart Images

Figure CN119605208A_ABST
Abstract
Description
Authentication methods and equipment Technical Field
[0001] The present application relates to the field of communications, and more specifically, to an authentication method and device. Background Art
[0002] In communication scenarios, interaction between two devices typically needs to occur in a secure environment, which necessitates device authentication. Research on authentication for radio frequency identification systems has proposed authentication schemes based on upper-layer cryptography. However, ensuring security during the authentication process remains a challenge.
[0003] Summary of the Invention
[0004] Embodiments of the present application provide an authentication method, device, computer-readable storage medium, computer program product, and computer program.
[0005] This embodiment of the present application provides an authentication method, including:
[0006] The first device receives a downlink signal; the downlink signal carries first information, where the first information is generated by the second device based on the first key;
[0007] The first device authenticates the first information carried in the received downlink signal based on a first sequence to obtain an authentication result; the first sequence is generated based on a second key.
[0008] This embodiment of the present application provides an authentication method, including:
[0009] The second device sends a downlink signal; the downlink signal carries first information, where the first information is generated by the second device based on the first key; the first information is used by the first device to perform authentication and obtain an authentication result.
[0010] An embodiment of the present application provides a first device, including:
[0011] A first communication unit is configured to receive a downlink signal; the downlink signal carries first information, where the first information is generated by the second device based on the first key;
[0012] The first processing unit is configured to authenticate the first information carried in the received downlink signal based on a first sequence to obtain an authentication result; the first sequence is generated based on a second key.
[0013] An embodiment of the present application provides a second device, including:
[0014] The second communication unit is used to send a downlink signal; the downlink signal carries first information, and the first information is generated by the second device based on the first key; the first information is used by the first device to perform authentication and obtain an authentication result.
[0015] An embodiment of the present application provides a first device, comprising a processor and a memory, wherein the memory is used to store a computer program, and the processor is used to call and execute the computer program stored in the memory, so that the first device performs the above method.
[0016] An embodiment of the present application provides a second device, comprising a processor and a memory, wherein the memory is used to store a computer program, and the processor is used to call and execute the computer program stored in the memory, so that the second device executes the above method.
[0017] The embodiment of the present application provides a chip for implementing the above method.
[0018] Specifically, the chip includes: a processor, which is used to call and run a computer program from a memory, so that a device equipped with the chip executes the above method.
[0019] An embodiment of the present application provides a computer-readable storage medium for storing a computer program, which enables a device to perform the above method when the computer program is executed by the device.
[0020] An embodiment of the present application provides a computer program product, including computer program instructions, which enable a computer to execute the above method.
[0021] An embodiment of the present application provides a computer program, which, when executed on a computer, enables the computer to execute the above method.
[0022] In this embodiment of the present application, by adopting the solution provided in this embodiment, a first device authenticates a downlink signal carrying first information based on a first sequence to obtain an authentication result. The first information is generated by a second device based on a first key, and the first sequence is generated based on a second key. Thus, because the key is used for authentication, computational attacks can be avoided, ensuring the security of the authentication process. BRIEF DESCRIPTION OF THE DRAWINGS
[0023] FIG1 is a schematic diagram of an application scenario according to an embodiment of the present application.
[0024] FIG2 is a flowchart of an authentication method according to an embodiment of the present application.
[0025] FIG3 is a second flow chart of an authentication method according to an embodiment of the present application.
[0026] FIG4 is a third flow chart of an authentication method according to an embodiment of the present application.
[0027] FIG5 is a fourth flow chart of an authentication method according to an embodiment of the present application.
[0028] FIG6 is a fifth flow chart of an authentication method according to an embodiment of the present application.
[0029] FIG7 is a sixth flow chart of an authentication method according to an embodiment of the present application.
[0030] FIG8 is a schematic diagram of an attack scenario according to an embodiment of the present application.
[0031] FIG9 is a schematic diagram showing comparison of missed alarm probability curves under various antenna quantities according to the present application.
[0032] FIG10 is a schematic diagram of a curve of legal signal power and missed alarm probability in cases of various numbers of antennas according to the present application.
[0033] FIG11 is a schematic block diagram of a first device according to an embodiment of the present application.
[0034] FIG12 is a schematic block diagram of a second device according to an embodiment of the present application.
[0035] FIG13 is a schematic block diagram of a second device according to another embodiment of the present application.
[0036] FIG14 is a schematic diagram of a zero-power communication system based on backscattering according to an embodiment of the present application.
[0037] FIG15 is a schematic diagram of a scenario of a hybrid zero-power communication system based on cellular and / or sideline communication according to an embodiment of the present application.
[0038] FIG16 is a schematic block diagram of a communication device according to an embodiment of the present application.
[0039] FIG17 is a schematic block diagram of a chip according to an embodiment of the present application.
[0040] FIG18 is a schematic block diagram of a communication system according to an embodiment of the present application. DETAILED DESCRIPTION
[0041] The technical solutions in the embodiments of the present application will be described below in conjunction with the drawings in the embodiments of the present application.
[0042] The technical solutions of the embodiments of the present application can be applied to various communication systems, such as: Global System of Mobile communication (GSM) system, Code Division Multiple Access (CDMA) system, Wideband Code Division Multiple Access (WCDMA) system, General Packet Radio Service (GPRS), Long Term Evolution (LTE) system, Advanced Long Term Evolution (LTE-A) system, New Radio (NR) system, NR system evolution system, LTE on unlicensed spectrum (LTE-U) system, NR on unlicensed spectrum (NR-U) system, Non-Terrestrial Networks (NTN) system, Universal Mobile Telecommunication System (UMTS), Wireless Local Area Networks (WLAN), Wireless Fidelity (Wireless Fidelity) system. Fidelity, WiFi), fifth-generation communication (5th-Generation, 5G) system or other communication systems, etc.
[0043] Generally speaking, traditional communication systems support a limited number of connections and are easy to implement. However, with the development of communication technology, mobile communication systems will not only support traditional communications, but will also support, for example, device-to-device (D2D) communication, machine-to-machine (M2M) communication, machine-type communication (MTC), vehicle-to-vehicle (V2V) communication, or vehicle-to-everything (V2X) communication, etc. The embodiments of the present application can also be applied to these communication systems.
[0044] In one possible implementation, the communication system in the embodiment of the present application can be applied to a carrier aggregation (CA) scenario, a dual connectivity (DC) scenario, or a standalone (SA) networking scenario. In one possible implementation, the communication system in the embodiment of the present application can be applied to an unlicensed spectrum, where the unlicensed spectrum can also be considered a shared spectrum; or, the communication system in the embodiment of the present application can also be applied to an authorized spectrum, where the authorized spectrum can also be considered an unshared spectrum.
[0045] The embodiments of the present application describe various embodiments in conjunction with network devices and terminal devices, wherein the terminal device may also be referred to as user equipment (UE), access terminal, user unit, user station, mobile station, mobile station, remote station, remote terminal, mobile device, user terminal, terminal, wireless communication device, user agent or user device, etc.
[0046] The terminal device may be a station (STAION, ST) in a WLAN, a cellular phone, a cordless phone, a Session Initiation Protocol (SIP) phone, a Wireless Local Loop (WLL) station, a Personal Digital Assistant (PDA) device, a handheld device with wireless communication capabilities, a computing device or other processing device connected to a wireless modem, a vehicle-mounted device, a wearable device, a terminal device in a next-generation communication system such as an NR network, or a terminal device in a future-evolved Public Land Mobile Network (PLMN) network, etc. In the embodiment of the present application, the terminal device may be deployed on land, including indoors or outdoors, handheld, wearable, or vehicle-mounted; may also be deployed on water (such as a ship, etc.); and may also be deployed in the air (such as an airplane, a balloon, and a satellite, etc.). In the embodiments of the present application, the terminal device may be a mobile phone, a tablet computer, a computer with wireless transceiver function, a virtual reality (VR) terminal device, an augmented reality (AR) terminal device, a wireless terminal device in industrial control, a wireless terminal device in self-driving, a wireless terminal device in remote medical, a wireless terminal device in a smart grid, a wireless terminal device in transportation safety, a wireless terminal device in a smart city, or a wireless terminal device in a smart home. As an example and not a limitation, in the embodiments of the present application, the terminal device may also be a wearable device. Wearable devices, also known as wearable smart devices, are a general term for wearable devices that are intelligently designed and developed using wearable technology for everyday wear, such as glasses, gloves, watches, clothing, and shoes. A wearable device is a portable device that is worn directly on the body or integrated into the user's clothing or accessories. Wearable devices are not just hardware devices, but also achieve powerful functions through software support, data interaction, and cloud interaction. In a broad sense, wearable smart devices include those that are fully functional, large in size, and can achieve complete or partial functions without relying on smartphones, such as smart watches or smart glasses, as well as those that only focus on a certain type of application function and need to be used in conjunction with other devices such as smartphones, such as various smart bracelets and smart jewelry for vital sign monitoring.
[0047] In an embodiment of the present application, a network device may be a device for communicating with a mobile device. The network device may be an access point (AP) in a WLAN, a base station (BTS) in a GSM or CDMA, a base station (NodeB, NB) in a WCDMA, an evolved base station (eNB or eNodeB) in an LTE, or a relay station or access point, or a vehicle-mounted device, a wearable device, a network device (gNB) in an NR network, or a network device in a future evolved PLMN network or a network device in an NTN network. As an example and not a limitation, in an embodiment of the present application, the network device may have a mobile feature, for example, the network device may be a mobile device. Optionally, the network device may be a satellite or a balloon station. For example, the satellite may be a low earth orbit (LEO) satellite, a medium earth orbit (MEO) satellite, a geostationary earth orbit (GEO) satellite, a high elliptical orbit (HEO) satellite, etc. Optionally, the network device may also be a base station set up in a location such as land or water. In an embodiment of the present application, the network device may provide services for a cell, and the terminal device may communicate with the network device through the transmission resources used by the cell (for example, frequency domain resources, or spectrum resources). The cell may be a cell corresponding to the network device (for example, a base station), and the cell may belong to a macro base station or a base station corresponding to a small cell. The small cells here may include: metro cells, micro cells, pico cells, femto cells, etc. These small cells have the characteristics of small coverage and low transmission power, and are suitable for providing high-speed data transmission services.
[0048] Figure 1 exemplarily shows a communication system 100. The communication system includes a network device 110 and two terminal devices 120. In a possible implementation, the communication system 100 may include multiple network devices 110, and each network device 110 may include other number of terminal devices 120 within its coverage area, which is not limited in this embodiment of the present application. In a possible implementation, the communication system 100 may also include other network entities such as a Mobility Management Entity (MME) and an Access and Mobility Management Function (AMF), which is not limited in this embodiment of the present application. Among them, the network device may include an access network device and a core network device. That is, the wireless communication system also includes multiple core networks for communicating with the access network device. The access network equipment can be an evolved base station (evolutional node B, abbreviated as eNB or e-NodeB) in a long-term evolution (LTE) system, a next-generation (mobile communication system) (next radio, NR) system, or an authorized auxiliary access long-term evolution (LAA-LTE) system, a macro base station, a micro base station (also called a "small base station"), a pico base station, an access point (AP), a transmission point (TP), or a new generation Node B (gNodeB), etc.
[0049] It should be understood that in the embodiments of the present application, a device having a communication function in a network / system may be referred to as a communication device. Taking the communication system shown in Figure 1 as an example, the communication device may include a network device and a terminal device having a communication function. The network device and the terminal device may be specific devices in the embodiments of the present application and will not be described in detail here. The communication device may also include other devices in the communication system, such as a network controller, a mobility management entity, and other network entities, which are not limited in the embodiments of the present application.
[0050] It should be understood that the terms "system" and "network" are often used interchangeably herein. The term "and / or" is simply a description of an association between related objects, indicating that three possible relationships exist. For example, "A and / or B" can represent: A exists alone, A and B exist simultaneously, or B exists alone. Furthermore, the character " / " generally indicates that the related objects are in an "or" relationship.
[0051] It should be understood that the "indication" mentioned in the embodiments of this application can be a direct indication, an indirect indication, or an indication of an association. For example, "A indicates B" can mean that A directly indicates B, for example, B can be obtained through A; it can also mean that A indirectly indicates B, for example, A indicates C, and B can be obtained through C; it can also mean that there is an association between A and B.
[0052] To facilitate understanding of the technical solutions of the embodiments of the present application, the relevant technologies of the embodiments of the present application are described below. The following relevant technologies can be arbitrarily combined with the technical solutions of the embodiments of the present application as optional solutions, and they all fall within the protection scope of the embodiments of the present application.
[0053] Research on identity authentication in radio frequency identification (RFID) systems falls into two main directions: upper-layer cryptography-based authentication schemes and lower-layer physical layer authentication schemes. Among these schemes, upper-layer cryptography-based RFID authentication protocols can be broadly categorized into five categories based on computational overhead and tag-supported operations: The first category is high-complexity protocols, which require support for traditional encryption functions; the second category is medium-complexity protocols, in which the tag must support a random number generator and one-way hash functions; the third category is lightweight protocols, in which the tag must support lightweight encryption algorithms developed by the National Institute of Standards and Technology (NIST); the fourth category is lightweight protocols, which require only a random number generator and simple functions, such as a cyclic redundancy check (CRC), but no hash functions; and the fifth category is ultra-lightweight protocols, in which the tag only involves simple bitwise operations, such as XOR and rotation.
[0054] However, these authentication schemes based on upper-layer cryptography may be vulnerable to computational attacks, incur additional communication overhead, and reduce data throughput. Specifically, these schemes essentially determine attack activity by verifying whether parameters meet pre-set matching conditions. Their security stems from the difficulty of solving the mathematical problem. An attacker can obtain verification materials encrypted with a key. If the attacker improves their computing power, the encryption becomes vulnerable. Therefore, these authentication schemes based on upper-layer cryptography may be vulnerable to computational attacks. Furthermore, these schemes require the exchange of additional message bits carrying authentication information between legitimate communicating parties. In zero-power systems that primarily rely on small data packets, deploying these schemes incurs significant communication overhead and reduces data throughput.
[0055] In the description of the embodiments of the present application, the term "corresponding" may indicate a direct or indirect correspondence between the two, or an association relationship between the two, or a relationship between indication and being indicated, configuration and being configured, etc.
[0056] To facilitate understanding of the technical solutions of the embodiments of the present application, the relevant technologies of the embodiments of the present application are described below. The following relevant technologies can be arbitrarily combined with the technical solutions of the embodiments of the present application as optional solutions, and they all fall within the protection scope of the embodiments of the present application.
[0057] FIG2 is a schematic flow chart of an authentication method according to an embodiment of the present application. The method can optionally be applied to the system shown in FIG1 , but is not limited thereto. The method includes at least part of the following contents.
[0058] S210. A first device receives a downlink signal; the downlink signal carries first information, where the first information is generated by a second device based on a first key;
[0059] S220. The first device authenticates the first information carried in the received downlink signal based on a first sequence to obtain an authentication result; the first sequence is generated based on a second key.
[0060] FIG3 is a schematic flow chart of an authentication method according to another embodiment of the present application. The method can optionally be applied to the system shown in FIG1 , but is not limited thereto. The method includes at least part of the following contents.
[0061] S310. The second device sends a downlink signal; the downlink signal carries first information, where the first information is generated by the second device based on a first key; the first information is used by the first device to perform authentication and obtain an authentication result.
[0062] In each embodiment of the present application, the first device and the second device may be different depending on the scenario. For example, the first device may be a zero-power device, such as a Tag, and the second device may be a Reader. Exemplarily, the second device (i.e., reader) may be any one of a network device, a user equipment (UE, User Equipment), a customer premises equipment (CPE, Customer Premise Equipment), and the like; correspondingly, the first device, i.e., a zero-power device, may be any one of an Internet of Things (IoT) device, a passive Internet of Things (Passive IoT) device, and the like. It should be understood that the above is only an exemplary description, and in actual processing, the first device and the second device may also be other types of devices, but they are not exhaustively listed here.
[0063] In a preferred example, the second device may be a network device, specifically an access network device (such as a base station, eNB, gNB, etc.). Furthermore, the second device may be a network device having multiple antennas, specifically, an access network device having multiple antennas.
[0064] Before the first device executes the aforementioned S210, and before the second device executes the aforementioned S310, the processing of the second device may also include: the second device sends an authentication request signaling to the first device; the authentication request signaling can be used to power the first device and for the first device to determine to start entering the authentication processing process. Accordingly, the processing of the first device may also include: the first device receives the authentication request signaling sent by the second device and starts entering the authentication processing process. This is because the first device is a zero-power device, so the second device needs to power the first device and enable the first device to start entering the authentication processing process by sending the authentication request signaling to the first device. Here, the authentication processing process may include the first device executing the aforementioned processing of S210 to S220, and accordingly, the second device executes the aforementioned processing of S310.
[0065] Optionally, after the second device sends the authentication request signaling to the first device, the aforementioned S310 may be directly executed, that is, the downlink signal is directly sent; correspondingly, the first device executes the aforementioned S210.
[0066] Optionally, after the first device receives the authentication request signaling and before executing S210, the process may further include: the first device processing the second key based on a preset algorithm to obtain a third sequence; and the first device sending the first pilot signal carrying the third sequence. Accordingly, the second device receives the first pilot signal.
[0067] The third sequence can be specifically expressed as: s=diag(s t1 ,…,s tL ); where s represents the third sequence, L is the length of the third sequence, and s tn Indicates the value of the nth bit in the third sequence, where n is an integer greater than or equal to 1 and less than or equal to L, that is, "s t1 ,…,s tL " represents the value of each bit in the third sequence. It should be understood that the length L of the aforementioned third sequence can be a positive integer greater than or equal to 1, and can be preset according to actual conditions.
[0068] The second key may be pre-configured on the first device. In one example, the second key may be constant; in another example, the second key may be a key obtained based on a key stream generator.
[0069] The preset algorithm may be set according to actual conditions, and may be one of the following: a random number algorithm, a cryptographic algorithm. The random number algorithm may be an algorithm specified in the Electronic Product Code (EPC™) protocol, which may be implemented by a pseudo-random number generator specified in the protocol, and is not limited thereto. The cryptographic algorithm may be a lightweight cryptographic algorithm; illustratively, the lightweight cryptographic algorithm may include any one of the following: a SPECK algorithm, a SIMON algorithm; it should be understood that this is merely an exemplary description of the cryptographic algorithm, and any other type of cryptographic algorithm may be used in actual processing, all of which are within the scope of protection of this embodiment, but are not exhaustive.
[0070] Exemplarily, assuming the preset algorithm is a random number algorithm, specifically implemented based on a pseudo-random number generator, the first device processes the second key based on the preset algorithm to obtain the third sequence, which can be specifically implemented using the following formula: s = PRNG(K2); where K2 represents the second key; PRNG(·) represents the random number algorithm used by the pseudo-random number generator; and s represents the third sequence. Exemplarily, assuming the preset algorithm is a lightweight cryptographic algorithm, the first device processes the second key based on the preset algorithm to obtain the third sequence, which can be specifically implemented using the following formula: s = MAC(K2); where K2 represents the second key; MAC(·) represents the lightweight cryptographic algorithm; and s represents the third sequence.
[0071] It should be pointed out that in the embodiments of the present application, no matter which of the above-mentioned preset algorithms is adopted, the first device and the second device are required to adopt the same preset algorithm during the processing process. For example, the first device and the second device both adopt the SIMON algorithm, and for another example, the first device and the second device both adopt the random number algorithm. As long as the first device and the second device use the same preset algorithm, they are within the protection scope of the embodiments of the present application, and all possible situations are not enumerated here.
[0072] The first device sending the first pilot carrying the third sequence may mean that the first device performs signal modulation based on the third sequence to generate and send the first pilot. For example, the first pilot may be obtained by modulating the third sequence onto a carrier. This embodiment does not limit the specific modulation method.
[0073] The downlink signal sent by the second device may carry different content depending on different scenarios. The first device may also perform different processing based on the downlink signal carrying different content. The following describes various implementation methods in combination with different scenarios:
[0074] In a possible implementation manner, the downlink signal only carries the first information.
[0075] Specifically, the first information is generated by the second device based on a second sequence, and the second sequence is generated based on the first key.
[0076] Optionally, the second device receives the first pilot; after receiving the first pilot, the second device executes the aforementioned S310.
[0077] The first information is generated by the second device based on a channel estimation value and a second sequence; the channel estimation value is obtained by the second device performing channel estimation on the received first pilot based on the second sequence. Specifically, in the aforementioned S320, the second device sending a downlink signal may include: the second device processing the first key based on a preset algorithm to obtain a second sequence; the second device generating the first information based on the second sequence; and the second device sending the downlink signal carrying the first information. The second device generating the first information based on the second sequence includes: the second device performing channel estimation on the received first pilot based on the second sequence to obtain a channel estimation value; and the second device generating the first information based on the second sequence and the channel estimation value.
[0078] The dimension of the channel estimation value is related to the number of antennas of the second device.
[0079] The first pilot signal received by the second device is a signal containing Gaussian noise on the second device side after being transmitted through the channel. Specifically, the first pilot signal received by the second device can be expressed as:
[0080] Y R =[y1,…,y L ] r×L =H TR s+N R
[0081] Among them, Y R is the first pilot signal received by the second device, H TR It can be a channel estimation matrix between the first device and the second device, r is the number of antennas of the second device, and r is a positive integer greater than or equal to 1; N R is the Gaussian noise on the second device side, and is the noise power; s is the third sequence carried by the first pilot.
[0082] The preset algorithm is the same as the preset algorithm used by the aforementioned first device, which has been specifically described in the aforementioned embodiment and will not be repeated here.
[0083] The first key is a key preset on the second device side. Preferably, the first key is the same as the aforementioned second key. Exemplarily, the first key can be immutable. Exemplarily, the first key can be a key obtained based on a key stream generator; it should be understood that if the second key is a key obtained based on a key stream generator, the first key is also a key obtained by the key stream generator, that is, the first device and the second device generate keys respectively. In this case, it is necessary to ensure that the keys generated by the two in one interaction are the same. For example, the first device generates the second key for the first time based on the key stream generator, and generates and sends the first pilot based on the second key; accordingly, when the second device receives the first pilot, it generates the first key for the first time based on the key stream generator. Since in this interaction, the first device and the second device both generate keys for the first time, the second key and the first key should theoretically be the same.
[0084] The second device processes the first key based on a preset algorithm to obtain a second sequence. Specifically, the second device directly calculates the first key based on the preset algorithm to obtain the second sequence. The aforementioned second sequence can be specifically expressed as: Among them, s R represents the second sequence, L is the length of the second sequence, and the length of the second sequence is the same as the length of the third sequence; represents the value of the nth bit in the second sequence, where n is an integer greater than or equal to 1 and less than or equal to L, that is, represents the value of each bit in the second sequence; if the second key is the same as the first key and uses the same preset algorithm, then the value of the nth bit in the second sequence is Should be compared with the value s of the nth position in the third sequence tn same.
[0085] Assuming that the preset algorithm is a random number algorithm, specifically implemented based on a pseudo-random number generator, the second device processes the first key based on the preset algorithm to obtain a second sequence, which can be specifically implemented using the following formula: R =PRNG(K1); where K1 represents the first key; PRNG(·) represents the random number algorithm used by the pseudo-random number generator; s R Represents the second sequence. Assuming that the preset algorithm is a lightweight cryptographic algorithm, the second device processes the first key based on the preset algorithm to obtain the second sequence, which can be specifically implemented using the following formula: R =MAC(K1); where K1 represents the first key; MAC(·) represents a lightweight cryptographic algorithm; s R It should be understood that this is only an example and does not exhaustively list all possible preset algorithms.
[0086] The second device performs channel estimation on the received first pilot based on the second sequence to obtain a channel estimation value. Specifically, the second device divides the received first pilot by the second sequence to obtain a channel estimation value. Here, the channel estimation value obtained by the second device is represented as If the second sequence generated by the second device is the same as the third sequence in the first pilot, the channel estimation value obtained is With the aforementioned channel estimation matrix H TR Should be approximate.
[0087] As described in the above embodiment, the second device can be a network device, specifically an access network device, such as any one of a base station, eNB, and gNB; the access network device usually has multiple antennas, so in this embodiment, the second device can be a device with multiple antennas. Assuming that the number of antennas of the second device is r, the above channel estimation value The dimension of the aforementioned channel estimation matrix H is r (r is a positive integer greater than or equal to 1). In this embodiment, the channel estimation value is expressed as: Assume that the i-th bit in the channel estimate is represented by The i-th bit can represent the channel estimation value corresponding to the i-th antenna, where i is an integer greater than or equal to 1 and less than or equal to r. The length is equal to L.
[0088] The second device generates the first information based on the second sequence and the channel estimation value. This may be: the second device calculates the second sequence and the channel estimation value based on a first preset function to generate the first information.
[0089] The first preset function can be expressed as χ, and the corresponding first information X can be expressed as: Specifically, the calculation of the first preset function may be to divide the second sequence by the channel estimation value corresponding to each antenna in the channel estimation value, and the processing of obtaining the first information X may be expressed by the following formula:
[0090] in, represents the value of the nth bit in the second sequence, where n is an integer greater than or equal to 1 and less than or equal to L, that is, Then represents the value of each bit in the second sequence; to Any one of them can be expressed as The description thereof is the same as that of the aforementioned embodiment and will not be repeated herein.
[0091] After obtaining the aforementioned first information, the second device may carry the first information in a downlink signal and send it to the first device. Here, the downlink signal may be a radio frequency signal. For example, the second device may carry the first information in the downlink signal through modulation, and the specific modulation method is not limited here.
[0092] After the first device receives the downlink signal, the aforementioned S220 can be executed, and the first device authenticates the first information carried in the received downlink signal based on the first sequence to obtain an authentication result, including: if the similarity between the first information carried in the first sequence and the received downlink signal by the first device meets a preset condition, the authentication result is determined to be authentication passed; and / or if the similarity between the first information carried in the first sequence and the received downlink signal by the first device does not meet the preset condition, the authentication result is determined to be authentication failed.
[0093] Here, the first sequence is the same as the third sequence, that is, the first device can generate the third sequence and save the third sequence when executing S210; when the first device executes S220, the third sequence is used as the first sequence, and the first information in the received downlink signal is authenticated based on the first sequence to obtain an authentication result. It should be understood that in this embodiment, although the first sequence is the same as the third sequence, for the sake of understanding, the first sequence is represented as s T .
[0094] The downlink signal received by the first device is different from the downlink signal sent by the second device. This is because the downlink signal received by the first device is also a downlink signal transmitted through a channel.
[0095] In this embodiment, the downlink signal received by the first device is represented as: T =[y1,…,y L ]=H RT X+N T ; Among them, N T is the Gaussian noise on the first device side, is the noise power, where CN(0, ) represents N T The distribution has a mean of 0 and a variance of X is the aforementioned first information; H RT is a channel estimation matrix between the second device and the first device.
[0096] If the channel between the first device and the second device satisfies reciprocity, then H RT =H TR , that is, the channel estimation matrix of the first device side and the second device side are the same. Based on the description of the above embodiment, it can be seen that X is s R Divide by the channel estimate Therefore, if the channel estimation value obtained by the second device side is approximately the same as H TR The same, we can finally get y T =s R +N T .
[0097] The similarity between the first sequence and the first information carried in the received downlink signal can be calculated based on Euclidean distance, cosine similarity, Manhattan distance, Chebyshev distance, Jaccard distance, or other methods, which are not exhaustive. Accordingly, the preset condition can be that the similarity is within a preset range. The corresponding preset condition can be set based on the actual similarity calculation method used, and this embodiment does not impose any limitations thereon.
[0098] In a preferred example, the method further includes: the first device performing a calculation based on the first sequence and the first information carried in the received downlink signal to obtain a first value; and if the first value is within a preset threshold range, determining that the similarity between the first sequence and the first information carried in the received downlink signal satisfies a preset condition. Furthermore, the method may further include: if the first value is not within a preset threshold range, determining that the similarity between the first sequence and the first information carried in the received downlink signal does not satisfy a preset condition.
[0099] The first device performs calculation based on the first sequence and the first information in the received downlink signal to obtain a first value, wherein the calculation may use the following formula: in, represents the real part; y T The first information is represented by the method described in the above embodiment and will not be described in detail. T represents the first sequence, s T T represents the transposition of the first sequence; t represents the first value. T =s R +N T , then the y T After substituting into the above formula, we can get: Specifically, in y T =s R +N T In, s R If it is a real number, use the s directly. R and s T T Multiplication is a real number; N T is the Gaussian noise on the first device side, which may be a complex number, N T s T T There may be an imaginary part in the multiplication, so we use Indicates that only the real part after the multiplication is retained. The following assumptions also need to be made on the first device side: The downlink signal (or the first information in the downlink signal) originates from a legitimate reader (i.e., a legitimate second device); The downlink signal (or the first information in the downlink signal) does not come from a legitimate reader (ie, a legitimate second device); In this case, the first value (i.e., t) is a Gaussian random variable, and its distribution is expressed as That is, the mean of t is s R and s T TThe product of in, Specifically, it can be About L and The description is the same as that of the above embodiment and will not be repeated.
[0100] The aforementioned preset threshold range can be obtained based on a given target false alarm probability, which can be set according to actual conditions, for example, less than 0.05, or less than 0.01, or larger or smaller, and is not limited here.
[0101] That is, on the first device side, it is determined whether the first value t calculated by the received downlink signal and the first sequence generated locally by the first device is within a preset threshold range; if it is within the preset threshold range, it is judged to be true, and the similarity between the first sequence and the first information in the received downlink signal is determined to meet the preset conditions, and then the authentication result is determined to be authentication passed. In addition, if it is not within the preset threshold range, it is determined that the similarity between the first sequence and the first information in the received downlink signal does not meet the preset conditions, and then the authentication result is determined to be authentication failed. Furthermore, the aforementioned preset threshold range can be less than or equal to a preset value Γ; accordingly, if the first device determines that the aforementioned first value t is less than Γ, it is determined that the first value t is within the preset threshold range.
[0102] Optionally, after the second device sends the authentication request signaling to the first device, it may directly execute S310, i.e., directly send the downlink signal; accordingly, the first device executes S210. Here, the first information may only include the second sequence. The second device sending the downlink signal includes: the second device processing the first key based on a preset algorithm to obtain a second sequence; the second device generating first information based on the second sequence; and the second device sending the downlink signal carrying the first information. The method for generating the second sequence is the same as in the previous embodiment and is not further described here. In this case, the method for the first device to generate the first sequence after receiving the downlink signal and to authenticate the first information carried in the received downlink signal based on the first sequence is the same as in the previous embodiment, except that in this embodiment, the first information X is not calculated using a channel estimation value. Instead, the first device calculates the first value based on the first sequence and the first information carried in the received downlink signal. This first value may differ from the aforementioned value, and the preset threshold range used may differ, which is not specifically limited.
[0103] In this embodiment, the processing of the first device may further include: if the authentication result is authentication passed, the first device sending an uplink signal carrying the first uplink service data. Correspondingly, the processing of the second device may further include: the second device receiving the uplink signal carrying the first uplink service data sent by the first device.
[0104] Among them, when the authentication result is authentication passed, the first device sends an uplink signal carrying the first uplink business data, which may specifically include: when the authentication result is authentication passed, the first device determines whether there is uplink business data to be transmitted, and if so, uses the uplink business data to be transmitted as the first uplink business data, and sends an uplink signal carrying the first uplink business data.
[0105] That is to say, if the first device performs authentication based on the aforementioned downlink signal and obtains an authentication result of passed, it can be confirmed that the second device is a legal device. Therefore, in the case where there is uplink service data to be transmitted, the first uplink service data can be carried in the uplink signal and sent to the second device; accordingly, after the second device receives the uplink signal carrying the first uplink service data, it can parse the uplink signal and obtain the first uplink service data transmitted this time, and perform subsequent processing. The processing that may be performed will not be repeated here.
[0106] In addition, it may also include: when the authentication result is authentication failure, the first device may end the processing and wait for the next authentication request signaling to be received for the next processing.
[0107] 4 , taking the first device as a tag and the second device as a reader / writer as an example, the solution provided by this embodiment is exemplarily described:
[0108] S401: The reader sends an authentication request signaling to the tag.
[0109] The authentication request signaling is used to power the tag and enable the tag to start the authentication process.
[0110] S402: The tag sends a first pilot signal to the reader.
[0111] Here, the first pilot carries a third sequence s=diag(s t1 ,…,s tL ); The third sequence is obtained by processing the second key based on a preset algorithm by the tag. The specific instructions for generating the third sequence and sending the first pilot are the same as those in the previous embodiment and will not be repeated.
[0112] S403: The reader processes the first key based on a preset algorithm to obtain a second sequence, performs channel estimation on the received first pilot based on the second sequence to obtain a channel estimation value, and generates first information based on the second sequence and the channel estimation value.
[0113] The first pilot received by the reader can be expressed as Y R =[y1,…,y L ] r×L =H TR s+N R , about Y R The specific description is the same as that of the above embodiment and will not be repeated here.
[0114] Among them, the description of the first key and the second key is the same as that in the previous embodiment and will not be repeated; the generation method of the channel estimation value, the second sequence, and the first information is the same as that in the previous embodiment and will not be repeated.
[0115] S404: The reader / writer sends a downlink signal; the downlink signal carries first information, and the first information is generated by the second device based on the first key.
[0116] The first information is generated by the second device based on a second sequence, and the second sequence is generated based on the first key. Specifically, the first information is generated by the second device based on a channel estimation value and the second sequence; the channel estimation value is obtained by the second device performing channel estimation on the received first pilot based on the second sequence.
[0117] S405: The tag authenticates the first information carried in the received downlink signal based on a first sequence to obtain an authentication result; the first sequence is the same as the third sequence.
[0118] The method for verifying whether the pilot sequence comes from a legitimate reader is to determine whether the test statistic t calculated from the received signal and the local private pilot is within a threshold range. When t < Γ, it is judged to be true and the downlink service command is executed; otherwise, it is false and the authentication fails.
[0119] Furthermore, after completing S405 and obtaining the authentication result, if the authentication result is passed, the tag can confirm that the reader is legitimate and then transmit an uplink signal carrying the first uplink service data. Accordingly, the reader receives the uplink signal carrying the first uplink service data transmitted by the tag and can subsequently process the first uplink service data, which will not be further described here.
[0120] In another possible implementation, in addition to carrying the first information, the downlink signal also carries a first downlink service command.
[0121] In this implementation manner, the first downlink service command is an original downlink service command that the second device is to send to the first device; the specific content of the command is not limited in this embodiment.
[0122] Optionally, the second device receives the first pilot; after receiving the first pilot, the second device executes the aforementioned S310.
[0123] The first information is generated by the second device based on a channel estimation value and a second sequence; the channel estimation value is obtained by the second device performing channel estimation on the received first pilot based on the second sequence. In the aforementioned S310, the second device sending a downlink signal may include: the second device processing the first key based on a preset algorithm to obtain a second sequence; the second device generating the first information based on the second sequence; and the second device sending the downlink signal carrying the first information. The second device generating the first information based on the second sequence includes: the second device performing channel estimation on the received first pilot based on the second sequence to obtain a channel estimation value; and the second device generating the first information based on the second sequence and the channel estimation value.
[0124] The specific description of the first pilot received by the second device is the same as that in the above embodiment and will not be repeated. It should be understood that in this embodiment, the first pilot received by the second device is also the same as that in the above embodiment and can be expressed as: The parameter definitions are the same as those in the above embodiment and will not be elaborated on again.
[0125] Different from the previous embodiment, in this embodiment, the second sequence is generated by the second device based on the first key and the first downlink service command. Specifically, the second device processes the first key based on a preset algorithm to obtain the second sequence, including: the second device processes the first key and the first downlink service command based on the preset algorithm to obtain the second sequence.
[0126] Exemplarily, assuming that the preset algorithm is a random number algorithm, specifically implemented based on a pseudo-random number generator; then the second device processes the first key and the first downlink service command based on the preset algorithm to obtain the second sequence, which may include: the second device calculates a first cyclic redundancy check code based on the first downlink service command; and calculates the first key and the first cyclic redundancy check code based on the random number algorithm to obtain the second sequence. Here, the first cyclic redundancy check code calculated by the second device based on the first downlink service command may be generated using a preset cyclic redundancy encoder, which may be a cyclic redundancy encoder inherent in or specified in the EPC protocol. This embodiment does not limit its specific processing method.
[0127] In this example, the calculation method for obtaining the second sequence can be expressed by the following formula: R =PRNG(K1,CRC(Command1)1); where K1 represents the first key; Command1 represents the first downlink service command; PRNG(·) represents the random number algorithm used by the pseudo-random number generator, CRC(·) is the cyclic redundancy code inherent in the EPCTM protocol, and CRC(Command1)1 is the first cyclic redundancy check code; s R Represents the second sequence. Exemplarily, assuming that the preset algorithm is a lightweight cryptographic algorithm; then the second device processes the first key and the first downlink service command based on the preset algorithm to obtain the second sequence, which may include: the second device calculates the first key and the first downlink service command based on the lightweight cryptographic algorithm to obtain the second sequence. In this example, the calculation method for obtaining the second sequence can be expressed by the following formula: R =MAC(K1, Command1); where K1 represents the first key; Command1 represents the first downlink service command; MAC(·) represents a lightweight cryptographic algorithm; s R It should be understood that this is only an exemplary description and does not exhaustively list all possible preset algorithm processing.
[0128] The second sequence obtained based on the processing of this embodiment can be expressed in the same manner as the aforementioned second sequence, namely: The specific definitions of the parameters are not repeated here.
[0129] The second device performs channel estimation on the received first pilot based on the second sequence to obtain a channel estimation value. Specifically, the second device divides the received first pilot by the second sequence to obtain a channel estimation value. Here, the channel estimation value obtained by the second device is represented as If the second sequence generated by the second device is the same as the third sequence in the first pilot, the channel estimation value obtained is With the aforementioned channel estimation matrix H TR Should be approximate.
[0130] It should be noted that compared with the aforementioned processing method of generating the second sequence only based on the first key, the channel estimation value obtained by the second device in this embodiment is different from that in the aforementioned embodiment due to the different method of generating the second sequence. However, the specific processing method for the second device to obtain the channel estimation value is the same as that in the aforementioned embodiment, so its specific processing method will not be repeated.
[0131] The second device generates the first information based on the second sequence and the channel estimation value. This can be achieved by: the second device calculates the second sequence and the channel estimation value based on a first preset function to generate the first information. The first preset function can be represented by χ, and the corresponding first information X can be represented by: The specific description is the same as that of the above embodiment and will not be repeated.
[0132] It should be noted that compared with the aforementioned processing method of generating the second sequence only based on the first key, the specific content of the first information obtained by the second device in this embodiment is different from that in the aforementioned embodiment due to the different method of generating the second sequence. However, the specific processing method for the second device to obtain the first information and the first preset function are the same as those in the aforementioned embodiment, so they are not repeated.
[0133] The second device may carry the first information through the first signal part of the downlink signal, carry the first downlink service command through the second signal part of the downlink signal, and send the downlink signal to the first device. Here, the downlink signal may be a radio frequency signal, and the second device may carry the first information and the first downlink service command in the downlink signal through modulation, and the downlink signal may be a first signal part and a second signal part divided in the time domain, for example, the first signal part may be transmitted first and then the second signal part, or vice versa, all within the protection scope of this embodiment, and the specific modulation method used by the second device is not limited here. After the first device receives the downlink signal, it may execute the aforementioned S220, and the first device authenticates the first information carried in the received downlink signal based on the first sequence to obtain an authentication result.
[0134] Here, the first sequence is different from the aforementioned third sequence. The manner in which the first device generates the first sequence may include: the first device processes the second key and the first downlink service command based on a preset algorithm to obtain the first sequence.
[0135] The first device processes the second key and the first downlink service command based on a preset algorithm to obtain the first sequence, which may include: the first device acquiring the first downlink service command from a received downlink signal.
[0136] The preset algorithms adopted by the first device and the second device are the same. Assuming that the preset algorithms adopted by the first device and the second device are random number algorithms, specifically implemented based on a pseudo-random number generator; then the first device processes the second key and the first downlink service command based on the preset algorithm to obtain the first sequence, which may include: the first device calculates the second cyclic redundancy check code based on the first downlink service command; based on the random number algorithm, calculates the second key and the second cyclic redundancy check code to obtain the first sequence. Here, the second cyclic redundancy check code calculated by the first device based on the first downlink service command may be generated by a preset cyclic redundancy encoder, and the preset cyclic redundancy encoder may be a cyclic redundancy encoder inherent in or specified in the EPC protocol. This embodiment does not limit its specific processing method. Among them, the calculation method for obtaining the first sequence can be expressed by the following formula: s T =PRNG(K2,CRC(Command1)2); where K2 represents the second key; Command1 represents the first downlink service command; PRNG(·) represents the random number algorithm used by the pseudo-random number generator, and CRC(·) is the cyclic redundancy coder inherent in the EPCTM protocol; s T Here, if the first downlink service command parsed by the first device is the same as the first downlink service command transmitted by the second device, the second cyclic redundancy check code CRC(Command1)2 should be the same as the first cyclic redundancy check code CRC(Command1)1.
[0137] Assuming that the preset algorithm used by the first device and the second device is a lightweight cryptographic algorithm; then the first device processes the second key and the first downlink service command based on the preset algorithm to obtain the first sequence, which may include: the first device calculates the second key and the first downlink service command based on the lightweight cryptographic algorithm to obtain the first sequence. In this example, the calculation method for obtaining the first sequence can be expressed by the following formula: T=MAC(K2, Command1); wherein K2 represents the second key; Command1 represents the first downlink service command.
[0138] It should be understood that this is merely an illustrative description and does not exhaustively list all possible preset algorithm processing.
[0139] The downlink signal received by the first device is different from the downlink signal sent by the second device. This is because the downlink signal received by the first device is also a downlink signal after being transmitted through the channel. In this embodiment, assuming that the first device can decode the first downlink service command without error, the first information carried in the downlink signal received by the first device is expressed as: T =[y1,…,y L ]=H RT X+N T ; The specific description of each parameter is the same as that in the above embodiment. If the channel between the first device and the second device satisfies reciprocity, then H RT =H TR , that is, the channel estimation matrix of the first device side and the second device side are the same. Based on the description of the above embodiment, it can be seen that X is s R Divide by the channel estimate Therefore, if the channel estimation value obtained by the second device side is approximately the same as H TR The same, we can finally get y T =s R +N T .
[0140] The first device authenticates the first information in the received downlink signal based on the first sequence, and the process of obtaining the authentication result is the same as that in the above embodiment and will not be described in detail.
[0141] Optionally, after the second device sends the authentication request signaling to the first device, the aforementioned S310 may be directly executed, that is, the downlink signal is directly sent; accordingly, the first device executes the aforementioned S210. Here, the downlink signal carries the first information and the first downlink service command; the first information may only include the aforementioned second sequence. The specific description of the generation method of the second sequence is the same as that of the aforementioned embodiment, and will not be repeated here. In this case, the way the first device generates the first sequence after receiving the downlink signal, and the authentication processing of the first information carried in the received downlink signal based on the first sequence is the same as that of the aforementioned embodiment, except that in this embodiment, the aforementioned first information X is not calculated using the channel estimation value. Correspondingly, the first device side calculates based on the first sequence and the first information carried in the received downlink signal. When the first value is obtained, the first value may be different from the aforementioned value, and the preset threshold range used may be different, which is not specifically limited.
[0142] In this embodiment, the processing of the first device may further include: if the authentication result is authentication passed, the first device executing the first downlink service command. In addition, if the authentication result is authentication failed, the first device may end the processing and wait for the next authentication request signaling to be received for the next processing.
[0143] Furthermore, the method may further include: if the authentication result is authentication passed, the first device sending an uplink signal carrying the first uplink service data. Accordingly, the processing by the second device may further include: the second device receiving the uplink signal carrying the first uplink service data sent by the first device. The specific description is the same as that of the previous embodiment and is not repeated here.
[0144] 5 , taking the first device as a tag and the second device as a reader / writer as an example, the solution provided in this embodiment is exemplarily described:
[0145] S501: The reader sends an authentication request signaling to the tag.
[0146] The authentication request signaling is used to power the tag and enable the tag to start the authentication process.
[0147] S502: The tag sends a first pilot signal to the reader.
[0148] Here, the description of the first pilot is the same as that in the above embodiment and is not repeated here.
[0149] S503: The reader / writer processes the first key and the first downlink service command based on the preset algorithm to obtain a second sequence; performs channel estimation on the received first pilot based on the second sequence to obtain a channel estimation value; and generates first information based on the second sequence and the channel estimation value.
[0150] The specific description of the first pilot signal received by the reader is the same as in the previous embodiment and is not repeated here. The description of the first and second keys is the same as in the previous embodiment and is not repeated here. The generation methods of the channel estimate, second sequence, and first information are the same as in the previous embodiment and are not repeated here.
[0151] S504: The reader sends a downlink signal; the downlink signal carries first information, which is generated by the second device based on the first key; the downlink signal also carries a first downlink service command.
[0152] The channel estimation value is obtained by the reader / writer performing channel estimation on the received first pilot signal based on the second sequence; the second sequence is generated by the reader / writer based on the first key. The reader / writer generating the second sequence may include: the reader / writer processing the first key and the first downlink service command based on the preset algorithm to obtain the second sequence. The specific processing method has been described in the previous embodiment and is not repeated here.
[0153] S505: The tag receives the downlink signal, processes the second key and the first downlink service command based on a preset algorithm, and obtains the first sequence.
[0154] The method for generating the first sequence of tags has been described in detail in the above embodiment and will not be elaborated on here.
[0155] S506: The tag authenticates the first information carried in the received downlink signal based on the first sequence to obtain an authentication result; if the authentication result is authentication passed, S507 is executed; if the authentication result is authentication failed, the process ends.
[0156] The authentication process is the same as that in the previous embodiment and will not be described in detail.
[0157] S507: The tag executes the first downlink service command.
[0158] In another possible implementation, in addition to carrying the first information, the downlink signal also carries a first downlink service command. The first downlink service command is obtained by scrambling the second downlink service command by the second device based on a first scrambling code; the first scrambling code is generated by the second device based on a first key.
[0159] Optionally, the second device receives the first pilot; after receiving the first pilot, the second device executes the aforementioned S310.
[0160] In the aforementioned S310, the second device sending a downlink signal may include: the second device processing a first key based on a preset algorithm to obtain a second sequence; the second device generating first information based on the second sequence; and the second device sending the downlink signal carrying the first information. The second device generating the first information based on the second sequence includes: the second device performing channel estimation on a received first pilot based on the second sequence to obtain a channel estimation value; and the second device generating the first information based on the second sequence and the channel estimation value.
[0161] The specific description of the first pilot signal received by the second device is the same as that in the above embodiment and will not be repeated.
[0162] Different from the previous embodiment, in this embodiment, the second sequence is generated by the second device based on the first key and the second downlink service command. Specifically, the second device processes the first key based on a preset algorithm to obtain the second sequence, including: the second device processes the first key and the second downlink service command based on the preset algorithm to obtain the second sequence.
[0163] Assuming that the preset algorithm is a random number algorithm, specifically implemented based on a pseudo-random number generator; then the second device processes the first key and the second downlink service command based on the preset algorithm to obtain the second sequence, which may include: the second device calculates the third cyclic redundancy check code based on the second downlink service command; based on the random number algorithm, calculates the first key and the third cyclic redundancy check code to obtain the second sequence. Here, the third cyclic redundancy check code calculated by the second device based on the second downlink service command may be generated by using a preset cyclic redundancy encoder, and the preset cyclic redundancy encoder may be a cyclic redundancy encoder inherent in or specified in the EPC protocol. This embodiment does not limit its specific processing method. The calculation method for obtaining the second sequence can be expressed by the following formula: s R =PRNG(K1,CRC(Command2)3); where K1 represents the first key; Command2 represents the second downlink service command; PRNG(·) represents the random number algorithm used by the pseudo-random number generator, CRC(·) is the cyclic redundancy code inherent in the EPCTM protocol, and CRC(Command2)3 is the third cyclic redundancy check code; s R Indicates the second sequence.
[0164] Assuming that the preset algorithm is a lightweight cryptographic algorithm; then the second device processes the first key and the second downlink service command based on the preset algorithm to obtain the second sequence, which may include: the second device calculates the first key and the second downlink service command based on the lightweight cryptographic algorithm to obtain the second sequence. In this example, the calculation method for obtaining the second sequence can be expressed by the following formula: R =MAC(K1, Command2); where K1 represents the first key; Command2 represents the second downlink service command; MAC(·) represents a lightweight cryptographic algorithm; s R Indicates the second sequence.
[0165] It should be understood that this is merely an illustrative description and does not exhaustively list all possible preset algorithm processing.
[0166] The second sequence obtained based on the processing of this embodiment can be expressed in the same manner as the aforementioned second sequence, namely: The specific definitions of the parameters are not repeated here.
[0167] The second device performs channel estimation on the received first pilot based on the second sequence to obtain a channel estimation value. Specifically, the second device may divide the received first pilot by the second sequence to obtain the channel estimation value. It should be noted that this embodiment differs from the aforementioned processing method of generating the second sequence based solely on the first key in that the channel estimation value obtained by the second device differs from that in the aforementioned embodiment due to the different method of generating the second sequence. However, the specific processing method for obtaining the channel estimation value by the second device is the same as that in the aforementioned embodiment, and therefore, the specific processing method will not be repeated here.
[0168] The second device generates the first information based on the second sequence and the channel estimation value. This can be accomplished by: the second device calculates the second sequence and the channel estimation value based on a first preset function to generate the first information. It should be noted that this embodiment differs from the aforementioned processing method for generating the second sequence based solely on the first key in that the second sequence is generated in a different manner. Therefore, the first information obtained by the second device differs from the aforementioned embodiment. However, the specific processing method for obtaining the first information by the second device and the first preset function are the same as those in the aforementioned embodiment and are therefore not described again.
[0169] Before the second device sends the aforementioned downlink signal, the second downlink service command will also be scrambled. Specifically, the method also includes: the second device generates a first scrambling code based on the first key; the second device scrambles the second downlink service command based on the first scrambling code to obtain the first downlink service command.
[0170] The second device generates the first scrambling code based on the first key, which can be implemented based on a cryptographic algorithm. The cryptographic algorithm can be a lightweight cryptographic algorithm, such as SPECK, SIMON algorithm, etc., and all possible cryptographic algorithms are not exhaustively listed here. The second device generates the first scrambling code based on the first key, which can be expressed by the following formula: RT-1 =MAC(K1), where MAC(·) is a lightweight cryptographic algorithm, K1 represents the first key, and Scrambling RT-1 Indicates the first scrambling code.
[0171] The aforementioned scrambling method may be a multiplication method. For example, the second device scrambles the second downlink service command based on the first scrambling code to obtain the first downlink service command. This may be based on multiplying the first scrambling code by the second downlink service command to obtain the first downlink service command. It should be understood that this is merely an example, and other scrambling methods may be used in actual processing, and this embodiment does not provide an exhaustive list.
[0172] It should also be noted that in the aforementioned embodiment, the same preset algorithm is used when generating the first sequence, the third sequence, and the second sequence on the first device and the second device side. The preset algorithm may also be a lightweight cryptographic algorithm. The lightweight cryptographic algorithm used to generate the first scrambling code and the lightweight cryptographic algorithm used to generate the first sequence, the third sequence, and the second sequence may be the same or different and can be set according to actual circumstances. This embodiment does not limit this.
[0173] The second device may carry the first information via the first signal portion of the downlink signal, carry the first downlink service command via the second signal portion of the downlink signal, and transmit the downlink signal to the first device. The specific transmission method is the same as in the aforementioned embodiment and is not described in detail here. After the first device receives the downlink signal, it may execute S220, where the first device authenticates the first information carried in the received downlink signal based on the first sequence to obtain an authentication result.
[0174] In this embodiment, the first sequence is different from the aforementioned third sequence. The manner in which the first device generates the first sequence may include: the first device processes the second key and the third downlink service command based on a preset algorithm to obtain the first sequence.
[0175] The first device processes the second key and the third downlink service command based on a preset algorithm, and before obtaining the first sequence, it may include: the first device descrambles the first downlink service command carried by the received downlink signal based on a second scrambling code to obtain the third downlink service command; wherein the second scrambling code is generated based on the second key.
[0176] Among them, the generation method of the second scrambling code may include: the first device generates the second scrambling code based on the second key. The first device can implement the aforementioned process of generating the second scrambling code based on a cryptographic algorithm. The cryptographic algorithm used by the first device is the same as that of the aforementioned second device. The cryptographic algorithm can specifically be a lightweight cryptographic algorithm, such as SPECK, SIMON algorithm, etc., and all possible cryptographic algorithms are not enumerated here. When the second key and the first key of the first device and the second device are the same, and the cryptographic algorithms used are the same, the second scrambling code and the first scrambling code should be the same. The process of the first device generating the second scrambling code based on the second key can be expressed by the following formula: Scrambling RT-2 =MAC(K2), where MAC(·) is a lightweight cryptographic algorithm, K2 represents the second key, and Scrambling RT-2 Indicates the second scrambling code.
[0177] In the case that the second scrambling code is the same as the first scrambling code, the third downlink service command obtained by descrambling by the first device should be the same as the second downlink service command sent by the second device.
[0178] Assuming that the preset algorithm used by the first device and the second device is a random number algorithm, specifically implemented based on a pseudo-random number generator; then the first device processes the second key and the third downlink service command based on the preset algorithm to obtain the first sequence, which may include: the first device calculates a fourth cyclic redundancy check code based on the third downlink service command; and calculates the second key and the fourth cyclic redundancy check code based on the random number algorithm to obtain the first sequence. Here, the fourth cyclic redundancy check code calculated by the first device based on the third downlink service command may be generated using a preset cyclic redundancy encoder, which may be a cyclic redundancy encoder inherent in or specified in the EPC protocol. This embodiment does not limit its specific processing method.
[0179] In this example, the calculation method for obtaining the first sequence can be expressed by the following formula: T=PRNG(K2,CRC(Command3)4); wherein K2 represents the second key; Command3 represents the third downlink service command; PRNG(·) represents the random number algorithm used by the pseudo-random number generator, and CRC(·) is the cyclic redundancy coder inherent in the EPCTM protocol; s T Here, if the third downlink service command parsed by the first device is the same as the second downlink service command of the second device, the fourth cyclic redundancy check code CRC(Command3)4 should be the same as the aforementioned third cyclic redundancy check code CRC(Command2)3.
[0180] Exemplarily, assuming that the preset algorithm used by the first device and the second device is a lightweight cryptographic algorithm; then the first device processes the second key and the third downlink service command based on the preset algorithm to obtain the first sequence, which may include: the first device calculates the second key and the third downlink service command based on the lightweight cryptographic algorithm to obtain the first sequence. In this example, the calculation method for obtaining the first sequence can be expressed by the following formula: T =MAC(K2, Command3); wherein K2 represents the second key; Command3 represents the third downlink service command.
[0181] It should be understood that this is merely an illustrative description and does not exhaustively list all possible preset algorithm processing.
[0182] The downlink signal received by the first device is different from the downlink signal sent by the second device. This is because the downlink signal received by the first device is also a downlink signal after being transmitted through the channel. In this embodiment, assuming that the first device can decode the third downlink service command without error, the first information of the downlink signal received by the first device is expressed as: T =[y1,…,y L ]=H RT X+N T ; The specific description of each parameter is the same as that in the above embodiment. If the channel between the first device and the second device satisfies reciprocity, then H RT =H TR , that is, the channel estimation matrix of the first device side and the second device side are the same. Based on the description of the above embodiment, it can be seen that X is s R Divide by the channel estimate Therefore, if the channel estimation value obtained by the second device side is approximately the same as H TR The same, we can finally get y T =s R +N T .
[0183] The first device authenticates the first information in the received downlink signal based on the first sequence, and the process of obtaining the authentication result is the same as that in the above embodiment and will not be described in detail.
[0184] Optionally, after the second device sends the authentication request signaling to the first device, the aforementioned S310 may be directly executed, that is, the downlink signal is directly sent; correspondingly, the first device executes the aforementioned S210. Here, the downlink signal carries the first information and the first downlink service command; the first information may only include the aforementioned second sequence. The first downlink service command is obtained by the second device scrambling the second downlink service command based on the first scrambling code; the first scrambling code is generated by the second device based on the first key, and the specific description is the same as the aforementioned embodiment. Regarding the generation method of the second sequence, the second sequence is generated by the second device based on the first key and the second downlink service command. The specific description is the same as the aforementioned embodiment and will not be repeated here. In this case, the way in which the first device generates the first sequence after receiving the downlink signal, and the processing of authenticating the first information carried in the received downlink signal based on the first sequence, are the same as those in the aforementioned embodiments, except that in this embodiment, the aforementioned first information X is not calculated using the channel estimation value. Correspondingly, on the first device side, the calculation is performed based on the first sequence and the first information carried in the received downlink signal. When the first value is obtained, the first value may be different from the aforementioned value, and thus the preset threshold range used may be different, which is not specifically limited.
[0185] In this embodiment, the processing of the first device may further include: if the authentication result is authentication passed, the first device executing the third downlink service command. It should be understood that here, if the second key and the first key are the same, and the first scrambling code and the second scrambling code are the same, then the third downlink service command should be the same as the original command issued by the second device, that is, the second downlink service command.
[0186] Furthermore, the method may include: if the authentication result is authentication failure, the first device may end the processing and wait for the next authentication request signaling to be received for the next processing. In addition, if the authentication is successful, the first device may also send uplink service data to the second device, which may specifically include the following two methods:
[0187] Method 1: When the authentication result is authentication passed, the first device transmits an uplink signal carrying uplink service data. Specifically, when the authentication result is authentication passed, the first device executes the first downlink service command, determines whether there is uplink service data to be transmitted, and if so, transmits an uplink signal carrying the uplink service data. Accordingly, the processing by the second device may further include: the second device receiving the uplink signal carrying the uplink service data sent by the first device.
[0188] The specific description is the same as that of the above embodiment and will not be repeated here.
[0189] Mode 2: The processing by the first device may further include: if the authentication result is authentication passed, the first device scrambling the first uplink service data based on a third scrambling code to obtain second uplink service data; wherein the third scrambling code is generated based on a third key; and the first device sending an uplink signal carrying the second uplink service data. The processing by the second device may further include: the second device receiving the uplink signal carrying the second uplink service data sent by the first device; the second device generating a fourth scrambling code based on a fourth key; and the second device descrambling the received second uplink service data based on the fourth scrambling code to obtain fourth uplink service data.
[0190] The third key and the fourth key need to be the same. However, the third key and the second key may be the same or different; the fourth key and the first key may be the same or different.
[0191] In the password-related policies pre-configured for the first device and the second device, if the passwords of the first device and the second device are pre-configured to remain unchanged, the third key is the same as the second key, the fourth key is the same as the aforementioned first key, and the third key is the same as the fourth key.
[0192] In the password-related policies pre-configured between the first and second devices, if the pre-configuration is that a new password is used for each interaction between the first and second devices, the third key is different from the second key, the fourth key is different from the aforementioned first key, and the third key is the same as the fourth key, and the second key is the same as the first key. The use of a new password for each interaction between the first and second devices can mean that the first and second devices use the same password for each interaction, but each device updates to a new password after completing the interaction. This processing method requires the first and second devices to use a key stream; here, the key stream can specifically include different keys generated by a key stream generator at different times.
[0193] The method for generating the third scrambling code may include: the first device generating the third scrambling code based on the third key. The first device may implement the aforementioned process of generating the third scrambling code based on a cryptographic algorithm. The cryptographic algorithm may specifically be a lightweight cryptographic algorithm, such as SPECK, SIMON algorithm, etc., and all possible cryptographic algorithms are not exhaustively listed here. The process of the first device generating the third scrambling code based on the third key can be expressed by the following formula: Scrambling TR-3 =MAC(K3), where MAC(·) is a lightweight cryptographic algorithm, K3 represents the third key, and Scrambling TR-3 Indicates the third scrambling code.
[0194] The second device generates a fourth scrambling code based on the fourth key, and may be obtained by processing the fourth key based on a cryptographic algorithm. The cryptographic algorithm used by the second device is the same as that of the first device. The cryptographic algorithm may be a lightweight cryptographic algorithm, such as any one of SPECK and SIMON algorithms, etc. All possible cryptographic algorithms are not enumerated here. When the third key and the fourth key of the first device and the second device are the same, and the cryptographic algorithms used are the same, the fourth scrambling code and the third scrambling code should be the same. The processing of the second device generating the fourth scrambling code based on the fourth key can be expressed by the following formula: Scrambling TR-4 =MAC(K4), where MAC(·) is a lightweight cryptographic algorithm, K4 represents the fourth key, and Scrambling TR-4 Indicates the fourth scrambling code.
[0195] When the aforementioned fourth scrambling code is the same as the third scrambling code, the second device descrambles the received second uplink service data based on the fourth scrambling code to obtain the fourth uplink service data. The fourth uplink service command should be the same as the original first uplink service command on the aforementioned first device side.
[0196] 6 , taking the first device as a tag and the second device as a reader / writer as an example, the solution provided by this embodiment is exemplarily described:
[0197] S601: The reader sends an authentication request signaling to the tag.
[0198] The authentication request signaling is used to power the tag and enable the tag to start the authentication process.
[0199] S602: The tag sends a first pilot signal to the reader.
[0200] Here, the description of the first pilot is the same as that in the above embodiment and is not repeated here.
[0201] S603: The reader / writer processes the first key and the second downlink service command based on a preset algorithm to obtain the second sequence; performs channel estimation on the received first pilot based on the second sequence to obtain a channel estimation value; and generates first information based on the second sequence and the channel estimation value.
[0202] Among them, the description of the first key and the second key is the same as that in the previous embodiment and will not be repeated; the generation method of the channel estimation value, the second sequence, and the first information is the same as that in the previous embodiment and will not be repeated.
[0203] S604: The reader generates a first scrambling code based on the first key, and scrambles the second downlink service command based on the first scrambling code to obtain a first downlink service command.
[0204] The execution order of the aforementioned S603 and S604 may not be particular, and S603 and S604 may be executed simultaneously, or S603 may be executed first and then S604, or S604 may be executed first and then S603.
[0205] S605: The reader sends a downlink signal; the downlink signal carries first information, which is generated by the second device based on the first key; the downlink signal also carries a first downlink service command.
[0206] S606: The tag receives a downlink signal, and descrambles the first downlink service command carried in the received downlink signal based on a second scrambling code to obtain a third downlink service command; wherein the second scrambling code is generated based on a second key.
[0207] S607: The tag processes the second key and the third downlink service command based on a preset algorithm to obtain the first sequence.
[0208] S608: The tag authenticates the first information carried in the received downlink signal based on the first sequence to obtain an authentication result; if the authentication result is authentication passed, S609 is executed; if the authentication result is authentication failed, the process ends.
[0209] The authentication process is the same as that in the previous embodiment and will not be described in detail.
[0210] S609: The tag executes the third downlink service command.
[0211] In this step, the third downlink service command is the same as the original second downlink service command on the reader side.
[0212] S610: The tag scrambles the first uplink service data based on a third scrambling code to obtain second uplink service data, and sends an uplink signal carrying the second uplink service data; wherein the third scrambling code is generated based on a third key.
[0213] S611: The reader receives an uplink signal carrying second uplink service data, generates a fourth scrambling code based on a fourth key, and descrambles the received second uplink service data based on the fourth scrambling code to obtain fourth uplink service data.
[0214] In this step, the fourth uplink service data obtained by the reader is the same as the original first uplink service data on the tag side.
[0215] In another possible implementation, in addition to carrying the first information, the downlink signal also carries a first downlink service command. The first downlink service command is obtained by scrambling the second downlink service command and a first random number by the second device based on the first scrambling code; the first scrambling code is generated by the second device based on the first key.
[0216] In this processing method, the second downlink service command is the original downlink service command of the second device, and its specific content is not limited in this embodiment; the aforementioned first downlink service command is obtained by scrambling the second downlink service command and the first random number.
[0217] Optionally, the second device receives the first pilot; after receiving the first pilot, the second device executes the aforementioned S310.
[0218] In the aforementioned S310, during the process of transmitting a downlink signal by the second device, the specific description of the first pilot received by the second device is the same as in the aforementioned embodiment and is not repeated here. The second sequence is generated by the second device based on the first key and the second downlink service command. Specifically, the second device processes the first key based on a preset algorithm to obtain the second sequence, including: the second device processes the first key and the second downlink service command based on the preset algorithm to obtain the second sequence. The specific process of the second device processing the first key and the second downlink service command based on the preset algorithm to obtain the second sequence is the same as in the aforementioned embodiment and is not repeated here. The second device performs channel estimation on the received first pilot based on the second sequence to obtain a channel estimation value, specifically: the second device divides the received first pilot by the aforementioned second sequence to obtain the channel estimation value. It should be noted that this embodiment differs from the aforementioned process of generating the second sequence based solely on the first key. Due to the different method of generating the second sequence, the channel estimation value obtained by the second device differs from that in the aforementioned embodiment. However, the specific process of the second device obtaining the channel estimation value is the same as in the aforementioned embodiment and is not repeated here.
[0219] The second device generates the first information based on the second sequence and the channel estimation value. This can be accomplished by: the second device calculates the second sequence and the channel estimation value based on a first preset function to generate the first information. It should be noted that this embodiment differs from the aforementioned processing method for generating the second sequence based solely on the first key in that the second sequence is generated in a different manner. Therefore, the first information obtained by the second device differs from the aforementioned embodiment. However, the specific processing method for obtaining the first information by the second device and the first preset function are the same as those in the aforementioned embodiment and are therefore not described again.
[0220] Before the second device sends the downlink signal, the method further includes: the second device generating a first scrambling code based on the first key; and the second device scrambling a second downlink service command based on the first scrambling code to obtain the first downlink service command. The process of the second device generating the first scrambling code based on the first key is the same as in the previous embodiment and is not further described.
[0221] The difference from the previous embodiment is that, in this embodiment, the second device scrambles the second downlink service command based on the first scrambling code to obtain the first downlink service command, including: the second device scrambles the second downlink service command and the first random number based on the first scrambling code to obtain the first downlink service command. Here, the first random number can be represented as R1. The first random number can be generated by the second device. The generation method can adopt a random number algorithm. Regarding its specific calculation method, this embodiment does not limit it. The second device can carry the first information through the first signal part of the downlink signal, carry the first downlink service command through the second signal part of the downlink signal, and send the downlink signal to the first device. Here, the specific sending method is the same as the previous embodiment and will not be repeated. After the first device receives the downlink signal, it can execute the above-mentioned S220.
[0222] The first sequence is different from the aforementioned third sequence. The method by which the first device generates the first sequence may include: the first device processes the second key and the third downlink service command based on a preset algorithm to obtain the first sequence. The specific method by which the first device processes the second key and the third downlink service command based on the preset algorithm to obtain the first sequence is the same as in the aforementioned embodiment and is not repeated here.
[0223] The first device processes the second key and the third downlink service command based on a preset algorithm to obtain the first sequence, which may include: the first device descrambling the first downlink service command carried by the received downlink signal based on a second scrambling code to obtain the third downlink service command; wherein the second scrambling code is generated based on the second key. The first device descrambling the first downlink service command carried by the received downlink signal based on the second scrambling code to obtain the third downlink service command may include: the first device descrambling the first downlink service command carried by the received downlink signal based on the second scrambling code to obtain the third downlink service command and a second random number.
[0224] The second scrambling code is generated in the same manner as in the previous embodiment. Here, the second random number can be represented as R2. If the second scrambling code is the same as the first scrambling code, the third downlink service command descrambled by the first device should be the same as the second downlink service command issued by the second device. Similarly, the second random number R2 should be the same as the first random number R1.
[0225] The downlink signal received by the first device is different from the downlink signal sent by the second device. This is because the downlink signal received by the first device is also a downlink signal after being transmitted through the channel. In this embodiment, assuming that the first device can decode the third downlink service command and the second random number without error, the first information of the downlink signal received by the first device is expressed as: T =[y1,…,y L ]=H RT X+N T ; The specific description of each parameter is the same as that in the above embodiment, and the first information finally obtained by the first device is represented as y T =s R +N T The specific description of how the first device obtains the first information is the same as that in the above embodiment and will not be repeated herein.
[0226] The first device authenticates the first information in the received downlink signal based on the first sequence, and the process of obtaining the authentication result is the same as that in the above embodiment and will not be described in detail.
[0227] Optionally, after the second device sends the authentication request signaling to the first device, the aforementioned S310 may be directly executed, that is, the downlink signal is directly sent; correspondingly, the first device executes the aforementioned S210. Here, the downlink signal carries the first information and the first downlink service command; the first information may only include the aforementioned second sequence. The first downlink service command is obtained by the second device scrambling the second downlink service command and the first random number based on the first scrambling code; the first scrambling code is generated by the second device based on the first key, and the specific description is the same as the aforementioned embodiment. Regarding the generation method of the second sequence, the second sequence is generated by the second device based on the first key and the second downlink service command. The specific description is the same as the aforementioned embodiment and will not be repeated here. In this case, the way in which the first device generates the first sequence after receiving the downlink signal, and the processing of authenticating the first information carried in the received downlink signal based on the first sequence, are the same as those in the aforementioned embodiments, except that in this embodiment, the aforementioned first information X is not calculated using the channel estimation value. Correspondingly, on the first device side, the calculation is performed based on the first sequence and the first information carried in the received downlink signal. When the first value is obtained, the first value may be different from the aforementioned value, and thus the preset threshold range used may be different, which is not specifically limited.
[0228] In this embodiment, the processing of the first device may further include: if the authentication result is authentication passed, the first device executing the third downlink service command. It should be understood that here, if the second key and the first key are the same, and the first scrambling code and the second scrambling code are the same, then the third downlink service command should be the same as the original command issued by the second device, that is, the second downlink service command. Therefore, the first device executes the third downlink service command, that is, the first device executes the second downlink service command.
[0229] Furthermore, the method may include: if the authentication result is authentication failure, the first device may end the processing and wait for the next authentication request signaling to be received for the next processing. In addition, if the authentication is successful, the first device may also send uplink service data to the second device, which may specifically include the following two methods:
[0230] Mode 3: When the authentication result is authentication passed, the first device sends an uplink signal carrying uplink service data. Specifically, when the authentication result is authentication passed, the first device executes the first downlink service command, and the first device determines whether there is uplink service data to be transmitted. If so, the first device sends an uplink signal carrying the uplink service data. Correspondingly, the processing of the second device may also include: the second device receives the uplink signal carrying uplink service data sent by the first device. The specific description is the same as the above embodiment and is not repeated here.
[0231] Method 4, the processing of the first device may also include: when the authentication result is authentication passed, the first device scrambles the first uplink service data and the second random number based on the third scrambling code to obtain third uplink service data; wherein the third scrambling code is generated based on the third key; the second random number is used by the second device to authenticate the first device; the first device sends an uplink signal carrying the third uplink service data.
[0232] The processing of the second device may also include: the second device receives an uplink signal carrying third uplink service data sent by the first device; the second device generates a fourth scrambling code based on a fourth key; the second device descrambles the received third uplink service data based on the fourth scrambling code to obtain fifth uplink service data and a second random number; the second device authenticates the first device based on the second random number and the first random number to obtain an authentication result of the first device; and the second device saves the fifth uplink service data if the authentication result of the first device is authentication passed.
[0233] The second device authenticates the first device based on the second random number and the first random number, and processes the authentication result of the first device. Specifically, the second device may determine that the authentication result of the first device is authentication success when the second random number is consistent with the first random number. In other words, the second device authenticates the first device by determining whether the second random number is consistent with the first random number. If the second random number is consistent with the first random number, the authentication result of the first device is determined to be authentication success, and the fifth uplink service data may be further saved. If the second random number is inconsistent with the first random number, the authentication result of the first device is determined to be authentication failure, and the fifth uplink service data is rejected. Although the second random number and the fifth uplink service data are parsed when the third uplink service data is received, if the authentication result of the first device is authentication failure, the fifth uplink service data may be discarded.
[0234] The third key and the fourth key need to be the same. However, the third key and the second key may be the same or different; the fourth key and the first key may be the same or different.
[0235] In the password-related policies pre-configured for the first device and the second device, if the passwords of the first device and the second device are pre-configured to remain unchanged, the third key is the same as the second key, the fourth key is the same as the aforementioned first key, and the third key is the same as the fourth key.
[0236] In the password-related policies pre-configured between the first and second devices, if the pre-configuration is that a new password is used for each interaction between the first and second devices, the third key is different from the second key, the fourth key is different from the aforementioned first key, and the third key is the same as the fourth key, and the second key is the same as the first key. The use of a new password for each interaction between the first and second devices can mean that the first and second devices use the same password for each interaction, but each device updates to a new password after completing the interaction. This processing method requires the first and second devices to use a key stream; here, the key stream can specifically include different keys generated by a key stream generator at different times.
[0237] The generation methods of the third and fourth scrambling codes are the same as those in the previous embodiment and are not repeated here. The second device descrambles the received third uplink service data based on the fourth scrambling code to obtain fifth uplink service data and a second random number. The fifth uplink service command is received and stored only when the second random number is the same as the first random number. If the fourth and third scrambling codes are the same, the fifth uplink service command should be the same as the original first uplink service command from the first device.
[0238] 7 , the solution provided in this embodiment is exemplarily described by taking the first device as a tag and the second device as a reader / writer as an example:
[0239] S701: The reader sends an authentication request signaling to the tag.
[0240] The authentication request signaling is used to power the tag and enable the tag to start the authentication process.
[0241] S702: The tag sends a first pilot signal to the reader.
[0242] Here, the description of the first pilot is the same as that in the above embodiment and is not repeated here.
[0243] S703: The reader / writer processes the first key and the second downlink service command based on a preset algorithm to obtain the second sequence; performs channel estimation on the received first pilot based on the second sequence to obtain a channel estimation value; and generates first information based on the second sequence and the channel estimation value.
[0244] Among them, the description of the first key and the second key is the same as that in the previous embodiment and will not be repeated; the generation method of the channel estimation value, the second sequence, and the first information is the same as that in the previous embodiment and will not be repeated.
[0245] S704: The reader / writer generates a first scrambling code based on the first key, and scrambles the second downlink service command and the first random number based on the first scrambling code to obtain a first downlink service command.
[0246] The execution order of the aforementioned S703 and S704 may not be particular, and S703 and S704 may be executed simultaneously, or S703 may be executed first and then S704, or S704 may be executed first and then S703.
[0247] S705: The reader sends a downlink signal; the downlink signal carries first information, which is generated by the second device based on the first key; the downlink signal also carries a first downlink service command.
[0248] S706: The tag receives a downlink signal, and descrambles the first downlink service command carried in the received downlink signal based on a second scrambling code to obtain a third downlink service command and a second random number; wherein the second scrambling code is generated based on a second key.
[0249] S707: The tag processes the second key and the third downlink service command based on a preset algorithm to obtain the first sequence.
[0250] S708: The tag authenticates the first information carried in the received downlink signal based on the first sequence to obtain an authentication result; if the authentication result is authentication passed, S709 is executed; if the authentication result is authentication failed, the process ends.
[0251] The authentication process is the same as that in the previous embodiment and will not be described in detail.
[0252] S709: The tag executes the third downlink service command.
[0253] In this step, the third downlink service command is the same as the original second downlink service command on the reader side.
[0254] S710: The tag scrambles the first uplink service data and the second random number based on a third scrambling code to obtain third uplink service data, and sends an uplink signal carrying the third uplink service data; wherein the third scrambling code is generated based on a third key.
[0255] S711: The reader receives an uplink signal carrying third uplink service data, generates a fourth scrambling code based on a fourth key, and descrambles the received third uplink service data based on the fourth scrambling code to obtain fifth uplink service data and a second random number.
[0256] S712: The reader / writer determines whether the second random number is consistent with the first random number. If they are consistent, the authentication result of the first device is determined to be authentication passed, and the fifth uplink service data is saved; if they are inconsistent, the authentication result of the first device is determined to be authentication failed, and the fifth uplink service data is refused to be received.
[0257] In S712, the reader needs to authenticate the tag. Specifically, the reader determines the tag authentication result by determining whether the second random number is consistent with the first random number. If the second random number is consistent with the first random number, the tag authentication result is determined to be successful, and the fifth uplink service data can be further stored. If the second random number is inconsistent with the first random number, the tag authentication result is determined to be failed, and the fifth uplink service data is rejected. In this step, the fifth uplink service data obtained by the reader is the same as the original first uplink service data on the tag side.
[0258] Next, we analyze the effective effects of the solutions provided in the above embodiments:
[0259] In the above embodiment, the two most critical signals transmitted in the air interface are the first pilot and the downlink signal. For example, the first device is a reader and the second device is a tag. See Figure 8: Due to the openness of the wireless air interface, the attacker can also receive the first pilot sent by the tag through channel V and the downlink signal sent by the reader through channel G. Assume that the noise on the attacker's side is N E , then the first pilot signal sent by the tag received by the attacker can be expressed as: y E =Vs+N E From the above formula, we can see that the attacker can receive the first pilot signal masked by the channel V between the tag and the attacker. However, since the attacker does not know the second key used to generate the first pilot signal at the beginning, the attacker cannot estimate the channel V between the tag and the attacker, and cannot obtain the third sequence s carried by the first pilot signal. The downlink signal X sent by the reader can be expressed as: y E =GX+N E From the above formula, we can see that the attacker can receive the downlink signal masked by the channel G between the reader and the attacker, but since the attacker can neither estimate the channel G between the reader and the attacker nor know the legitimate channel estimation value and the first sequence s generated by the reader based on the second key R Therefore, the first information in the downlink signal cannot be deciphered, and thus the authentication result of passing the authentication cannot be obtained. It can be seen that the solution provided by this embodiment can ensure the security of the air interface signal.
[0260] Based on the source of illegal downlink signals, there are three types of attacks: attackers forging downlink signals, attackers tampering with downlink signals, and attackers replaying downlink signals. The security analysis of these three attacks is as follows:
[0261] First, the attacker forges the downlink signal: When an attacker forges the downlink signal, the attacker first needs to forge a downlink service command, such as a forged write command, in an attempt to write incorrect data to the tag. Assuming that the attacker forges the downlink service command is Command', since the attacker cannot obtain the second key of the first device and the first key of the second device, the attacker's forged second sequence can be expressed as:
[0262] s E =PRNG(K E ,CRC(Command'));
[0263] Since the attacker cannot estimate the channel V between the tag and the attacker, he can only use the attack pilot s generated by the local side E As the first information, it is combined with the downlink forged service command and sent to the tag, i.e. s E ||Command'. Assume that the noise on the label side is N T , the signal received by the tag from the attacker is expressed as: y T =Vs E +N T Assume that the tag decodes the attacker's forged downlink service command Command'd without error and calculates the local first sequence s' T , then the first value calculated by the label is expressed as: Because s E with s' T It is irrelevant, so the mean of the first value t is 0. From the above formula, it can be seen that the attacker's forging of downlink signals does not pose an authentication threat to the tag.
[0264] Second, the attacker tampers with the downlink signal: Unlike the attacker forging the downlink signal, the attacker tampers with the downlink signal means that the attacker does not change the first information X in the original message format, but only tampers with the downlink service command X||Command' and forwards it to the tag. Assume that the tag decodes the attacker's tampered downlink service command Command' without error and calculates the local first sequence s' T , then the first value calculated by the label is expressed as:
[0265] Since X has nothing to do with tampering with downlink service commands, the X is not related to s' T It is irrelevant, and the mean of the first value is 0. From the above formula, it can be seen that if an attacker tampers with the downlink signal, it does not pose an authentication attack to the tag.
[0266] Third, the attacker replays the downlink signal: The downlink signal sent by the reader is received by the attacker after being masked by channel G. If the received signal is forwarded directly, the downlink signal will undergo channel V distortion again, and the error will become very large, which will not be an authentication attack for the tag.
[0267] Next, we analyze the impact of an attacker forging downlink signals on the false positive probability. Due to tag hardware limitations, the tag is configured with only one antenna in the simulation. Figure 9 illustrates the system's false positive probability as a function of the attacker's power when the attacker forges downlink signals, for cases where the base station (i.e., the second device) is equipped with 1, 16, 32, and 64 antennas, respectively. The abscissa in Figure 9 represents the ratio of the power of the illegal to the legitimate signal. As shown in Figure 9, as the attacker's power increases, the variance of the test statistic for the forged signal also increases, leading to an increase in the system's false positive probability. Base stations configured with different numbers of antennas all achieve a low false positive probability. More intuitively, when both the legitimate base station and the attacker have only one antenna, the system's false positive probability is less than 6%, demonstrating that this solution can effectively identify attacker-forged downlink signals. Furthermore, the false positive probability decreases as the number of antennas at both the legitimate base station and the attacker increases. This is because the increase in the number of antennas reduces the variance of the tag-side test statistic, concentrating the test statistic closer to a mean of zero, resulting in more accurate test results.
[0268] Secondly, the impact of the attacker replaying the downlink signal on the probability of missed alarms: When the attacker replays the downlink signal, the system's probability of missed alarms is analyzed as the attacker's power changes when the base station (i.e., the second device) has 1, 16, 32, and 64 antennas. It can be seen that as the attacker's power increases, the variance of the test statistic of the replayed downlink signal also increases, causing the system's probability of missed alarms to increase accordingly. Base stations configured with different numbers of antennas all achieve a lower probability of missed alarms. The channels between the legitimate base station and the attacker, and the attacker and the tag, can mask the authentication mark. More intuitively, when the legitimate base station and the attacker have only one antenna, the system's probability of missed alarms is as low as 0.15%, which shows that this solution can effectively identify downlink signals replayed by attackers.
[0269] Figure 10 shows the false alarm probability of this solution for base station antenna configurations of 1, 16, 32, and 64 antennas, respectively. As can be seen from Figure 10, the greater the legitimate signal power, the more accurate the channel value estimated by the reader, resulting in a lower false alarm probability. Therefore, this solution demonstrates good performance in terms of false alarm probability, demonstrating its practicality in typical environments. Furthermore, as the number of legitimate base station antennas increases, the false alarm probability decreases. In summary, multi-antenna technology in base stations offers significant advantages in both false alarm and missed alarm probabilities.
[0270] The solution provided in this embodiment uses a private first pilot generated by the tag and the received downlink signal for hypothesis testing. Its security stems from the confidentiality of the pilot. While an attacker can still receive the downlink signal sent from the legitimate base station, this signal is masked by the channel between the base station and the attacker. Because the third sequence in the first pilot is generated using the second key and is private, the attacker cannot estimate the channel with the legitimate base station. Furthermore, because the channel is random, even if the attacker infinitely increases their computing power, they cannot decipher the first information carried in the downlink signal received from the base station. Therefore, this solution prevents computational attacks.
[0271] In the solution provided by this embodiment, the first pilot can be regarded as a special use of the inherent pilot symbol (preamble code / frame synchronization sequence) in the zero-power system, and does not occupy additional communication resources. At the same time, this solution integrates identity authentication and integrity protection, thereby improving communication efficiency.
[0272] The solution provided in this embodiment offloads complex operations like channel estimation and pilot processing to the base station. Resource-constrained tags only need to perform simple operations like bitwise operations and threshold determination. The pseudo-random number generator and cyclic redundancy check (CRC) used in the third sequence carried by the first pilot are generated by the RFID's built-in modules and do not require additional functionality. Furthermore, the use of a private pilot prevents attackers from probing the channel, providing enhanced security.
[0273] As can be seen, by adopting the solution provided in this embodiment, the first device authenticates the downlink signal carrying the first information based on the first sequence to obtain an authentication result. The first information is generated by the second device based on the first key, and the first sequence is generated based on the second key. Thus, since the authentication process uses a key, computational attacks are avoided, ensuring security. Furthermore, the authentication process is completed by simply combining the information exchanged in the original communication process, without incurring additional communication overhead.
[0274] FIG11 is a schematic diagram of the composition structure of a first device according to an embodiment of the present application, including:
[0275] The first communication unit 1101 is configured to receive a downlink signal; the downlink signal carries first information, where the first information is generated by the second device based on the first key;
[0276] The first processing unit 1102 is configured to authenticate the first information carried in the received downlink signal based on a first sequence to obtain an authentication result; the first sequence is generated based on a second key.
[0277] The first processing unit is configured to determine that the authentication result is authentication passed if the similarity between the first sequence and the first information carried in the received downlink signal meets a preset condition;
[0278] And / or, when the similarity between the first sequence and the first information carried in the received downlink signal does not meet a preset condition, determining that the authentication result is an authentication failure.
[0279] The first processing unit is configured to perform a calculation based on the first sequence and the first information carried in the received downlink signal to obtain a first value; and when the first value is within a preset threshold range, determine the similarity between the first sequence and the first information in the received downlink signal to satisfy a preset condition.
[0280] The first information is generated by the second device based on a second sequence, and the second sequence is generated based on the first key.
[0281] The first processing unit is configured to process the second key based on a preset algorithm to obtain a third sequence;
[0282] The first communication unit is configured to send the first pilot signal carrying the third sequence.
[0283] The first information is generated by the second device based on the channel estimation value and the second sequence;
[0284] The channel estimation value is obtained by the second device performing channel estimation on the received first pilot based on the second sequence.
[0285] The first sequence is the same as the third sequence.
[0286] The downlink signal also carries a first downlink service command.
[0287] The second sequence is generated by the second device based on the first key and the first downlink service command.
[0288] The first processing unit is configured to process the second key and the first downlink service command based on a preset algorithm to obtain the first sequence.
[0289] The first processing unit is configured to execute the first downlink service command if the authentication result is authentication passed.
[0290] The first downlink service command is obtained by scrambling the second downlink service command by the second device based on the first scrambling code; the first scrambling code is generated by the second device based on the first key.
[0291] The second sequence is generated by the second device based on the first key and the second downlink service command.
[0292] The first processing unit is configured to descramble the first downlink service command carried by the received downlink signal based on a second scrambling code to obtain a third downlink service command; wherein the second scrambling code is generated based on the second key.
[0293] The first processing unit is configured to process the second key and the third downlink service command based on a preset algorithm to obtain the first sequence.
[0294] The first processing unit is configured to execute the third downlink service command if the authentication result is authentication passed.
[0295] The first downlink service command is obtained by the second device scrambling the second downlink service command and a first random number based on the first scrambling code.
[0296] The first processing unit is configured to descramble the first downlink service command carried by the received downlink signal based on the second scrambling code to obtain the third downlink service command and the second random number.
[0297] The first communication unit is configured to send an uplink signal carrying first uplink service data when the authentication result is authentication passed.
[0298] The first processing unit is configured to, when the authentication result is authentication passed, scramble the first uplink service data based on a third scrambling code to obtain second uplink service data; wherein the third scrambling code is generated based on a third key;
[0299] The first communication unit is configured to send an uplink signal carrying the second uplink service data.
[0300] The first processing unit is configured to, when the authentication result is authentication passed, scramble the first uplink service data and the second random number based on a third scrambling code to obtain third uplink service data; wherein the third scrambling code is generated based on a third key; the second random number is used by the second device to authenticate the first device; and the first communication unit is configured to send an uplink signal carrying the third uplink service data.
[0301] The preset algorithm is one of the following: a random number algorithm, a cryptographic algorithm.
[0302] The first device of the embodiment of the present application can implement the corresponding functions of the first device in the aforementioned authentication method embodiment. The processes, functions, implementation methods and beneficial effects corresponding to the various modules (sub-modules, units or components, etc.) in the first device can be found in the corresponding descriptions in the above-mentioned method embodiments, which will not be repeated here. It should be noted that the functions described in the various modules (sub-modules, units or components, etc.) in the second device of the application embodiment can be implemented by different modules (sub-modules, units or components, etc.) or by the same module (sub-module, unit or component, etc.).
[0303] FIG12 is a schematic diagram of the structure of a second device according to an embodiment of the present application, including:
[0304] The second communication unit 1201 is used to send a downlink signal; the downlink signal carries first information, which is generated by the second device based on the first key; the first information is used by the first device to perform authentication and obtain an authentication result.
[0305] Based on FIG12 , as shown in FIG13 , the second device further includes:
[0306] The second processing unit 1202 is configured to process the first key based on a preset algorithm to obtain a second sequence; and generate first information based on the second sequence;
[0307] The second communication unit 1201 is configured to send the downlink signal carrying the first information.
[0308] The second communication unit is used to receive a first pilot sent by the first device; the first pilot is used to carry a third sequence; the third sequence is obtained by the first device processing the second key based on a preset algorithm.
[0309] The dimension of the channel estimation value is related to the number of antennas of the second device.
[0310] The downlink signal also carries a first downlink service command.
[0311] The second processing unit is configured to process the first key and the first downlink service command based on the preset algorithm to obtain the second sequence.
[0312] The second processing unit is configured to generate a first scrambling code based on the first key; and scramble the second downlink service command based on the first scrambling code to obtain the first downlink service command.
[0313] The second processing unit is configured to scramble the second downlink service command and the first random number based on the first scrambling code to obtain the first downlink service command.
[0314] The second processing unit is configured to process the first key and the second downlink service command based on the preset algorithm to obtain the second sequence.
[0315] The second communication unit is configured to receive an uplink signal carrying first uplink service data sent by the first device.
[0316] The second processing unit is used to generate a fourth scrambling code based on a fourth key; descramble the received second uplink service data based on the fourth scrambling code to obtain fourth uplink service data; the second communication unit is used to receive an uplink signal carrying the second uplink service data sent by the first device.
[0317] The second communication unit is configured to receive an uplink signal carrying third uplink service data sent by the first device;
[0318] The second processing unit is configured to generate a fourth scrambling code based on a fourth key; descramble the received third uplink service data based on the fourth scrambling code to obtain fifth uplink service data and a second random number; authenticate the first device based on the second random number and the first random number to obtain an authentication result of the first device; and save the fifth uplink service data if the authentication result of the first device is authentication passed.
[0319] The second processing unit is configured to determine that the authentication result of the first device is authentication passed when the second random number is consistent with the first random number.
[0320] The preset algorithm is one of the following: a random number algorithm, a cryptographic algorithm.
[0321] The second device of the embodiment of the present application can implement the corresponding functions of the second device in the aforementioned authentication method embodiment. The processes, functions, implementation methods and beneficial effects corresponding to the various modules (sub-modules, units or components, etc.) in the second device can be found in the corresponding descriptions in the above-mentioned method embodiments, which will not be repeated here. It should be noted that the functions described in the various modules (sub-modules, units or components, etc.) in the second device of the application embodiment can be implemented by different modules (sub-modules, units or components, etc.) or by the same module (sub-module, unit or component, etc.).
[0322] Finally, the first device and the second device provided in this embodiment are described in detail:
[0323] The second device may be a reader, which may specifically be a user equipment (UE) or a network device. The first device may be a zero-power terminal, a zero-power device, or a zero-power IoT terminal. The first device (zero-power terminal, zero-power device, or zero-power IoT terminal) may specifically be an electronic tag (or tag), which may have integrated memory for data storage and / or integrated sensors for sensor information collection. Since this is generally a large-scale application (for example, each asset or device will be affixed with a tag), its cost and power consumption need to be given priority consideration.
[0324] The first and second devices described above can form a zero-power communication system. A prominent technical advantage of zero-power communication is battery-free communication. By utilizing key technologies such as RF energy harvesting, backscattering, and low-power computing, the terminal can be battery-free and support extremely low hardware complexity. Therefore, zero-power communication can meet the requirements of ultra-low power consumption, extremely small size, and extremely low cost. It is foreseeable that zero-power technology will have significant advantages in a wide range of applications. Examples include industrial sensor networks for vertical industries, intelligent transportation, smart logistics, smart warehousing, smart agriculture, smart cities, and energy applications, as well as applications in scenarios such as smart wearables, smart homes, and medical care for individual consumers. In this section, we will select some typical scenarios to illustrate the application potential of zero-power communication in these areas.
[0325] Depending on the application scenario, the requirements for the first device and the second device may also vary. For example, in the application scenario of an industrial sensor network, the requirements for the first device and the second device may include:
[0326] When the second device (i.e., reader) is a network device, its requirements (or characteristics) are as follows: based on cellular network infrastructure and flexible deployment: for example, it can be deployed at outdoor pole stations and at the same distance as DIS (Digital Indoor System) stations indoors to provide basic coverage; for example, it can be deployed on demand to fill blind spots or expand coverage; coverage requirements: the coverage distance requirement for a single station is greater than 30m indoors and greater than 100m outdoors; network security: based on authorized tag reading to protect privacy and data security; connection requirements: support sufficient system capacity to support data reading from a large number of terminals.
[0327] The characteristics of the first device (zero-power terminal, or zero-power device, or zero-power IoT terminal) include but are not limited to the following: power consumption: can be less than 1mw, passive, battery-free and maintenance-free; working environment: needs to be able to match special environments, such as being able to work normally under special environments such as high temperature, high pressure, extreme cold, radiation, etc.; size: extremely small, convenient for large-scale application; communication distance: can reach a range of tens to hundreds of meters; material type: can have paper labels and anti-metal labels.
[0328] It should be understood that the above only describes the typical requirements of the first device and the second device based on the application scenario of the industrial sensor network, and the application scenario of the industrial sensor network may also include other requirements, but they are not listed here exhaustively. In addition, in other application scenarios, the requirements of the first device and the second device may be different from the requirements of the aforementioned industrial sensor network. For example, in the application scenarios of smart logistics and smart warehousing, the connection requirements may be increased (due to the large number of goods, a large number of tags need to be detected simultaneously, so it may be necessary to achieve thousands of connections per second); for example, in the application scenario of smart home, the communication delay requirements may be increased (smart home appliance adjustment: tens to hundreds of milliseconds; home positioning: hundreds of milliseconds to seconds), as well as the requirements for excitation signals (using the signals of smart devices in the home, such as smart phones, CPE (Customer Premise Equipment), and WIFI as energy excitation signals for passive terminals, without the need for additional excitation signals, simplifying the network layout), etc., which are not listed here exhaustively.
[0329] The aforementioned first device and second device can form a zero-power communication system based on backscattering. In this zero-power communication system based on backscattering, the first device, i.e., the zero-power device backscatter transmitter, modulates and reflects the received RF (Radio Frequency) signal to transmit data, rather than generating the RF signal itself. This technology has been widely used in practical production, such as RFID (Radio Frequency Identification), tracking devices, remote switches, medical telemetry, and low-cost sensor networks. The aforementioned first device and second device can form a zero-power communication system based on backscattering, as shown in Figure 14. In Figure 14, the network device is the second device (such as a reader), and the zero-power terminal is the first device.
[0330] As shown in Figure 14, the zero-power terminal (i.e., the first device) may include functions such as energy harvesting, backscatter communication, and low-power computing. Energy harvesting and backscatter communication may be implemented by the first communication unit of the first device, and low-power computing may be implemented by the first processing unit of the first device. The energy harvesting, backscatter communication, and low-power computing are described below:
[0331] First, energy harvesting, specifically RF energy harvesting, is based on the principle of collecting electromagnetic wave energy from space through electromagnetic induction. The essence of RF energy harvesting is to convert RF energy into a direct current (RF-DC) voltage. Applied to zero-power communications, the core requirement of RF energy harvesting is to effectively use the harvested energy to drive load circuits (such as low-power computing and sensors), enabling battery-free communication.
[0332] Second, backscattering was first proposed by Stockman in 1948 [4]. However, due to the following limitations, traditional backscattering communication cannot be widely used in data-intensive wireless communication systems: First, traditional backscattering communication requires the backscattering transmitter to be placed near its RF source, which limits the use and coverage area of the device. Second, in traditional backscattering communication, the backscattering receiver and the RF transmission source are located in the same device, namely the reader, which causes self-interference between the receiving and transmitting antennas, thereby reducing communication performance. In addition, traditional backscattering communication systems operate passively, that is, the backscattering transmitter only transmits data when interrogated by the backscattering receiver.
[0333] Ambient Backscatter Communication (AmBC) has become a more promising technology for enabling low-power communications. It can effectively address the above limitations of traditional backscatter communication systems, making AmBC technology more widely adopted in practical applications.
[0334] An ambient backscatter communication system generally consists of three components: an ambient radio-frequency (RF) source, a backscatter device (BD), and a reader. A zero-power device (i.e., the first device, such as a backscatter tag) receives a carrier signal from the reader (i.e., the second device) and uses an RF energy harvesting module (energy harvesting, i.e., RF energy harvesting) to collect energy, which is then used to power a low-power processing module (i.e., low-power computing). After acquiring energy, the backscatter communication module drives the corresponding circuitry to modulate the incoming signal and perform backscattering.
[0335] Third, low-power computing. The main feature of zero-power communication technology is backscatter communication achieved by modulating incoming signals. It can also harvest energy to drive digital logic circuits or chips (such as MCUs (microcontroller units) or sensor chips) to perform functions such as signal encoding, encryption, and simple computation. The conversion efficiency of RF energy is often less than 10%, which dictates that the power consumption required to drive digital logic circuits or chips for computation cannot be too high. For example, the number of computations that can be performed with 1 microjoule of energy has increased. Although this has improved with process improvements and design optimization, the number of computations per microjoule of energy can be increased. Low-power receivers can be divided into two categories based on their functional requirements. One category primarily functions as a beacon-like broadcast transmission. To reduce structural complexity and power consumption, receiver functions may not be implemented. The other category focuses on simple, low-power receiver designs. ASK and FSK, commonly used in backscattering, can be implemented with simple circuit designs. Non-return-to-zero (NRZ) and Manchester encoding are the two most commonly used coding techniques in backscatter systems. In addition, other simple and easy-to-implement coding methods such as Unipolar Return-to-Zero (RZ), Differential Bi-Phase (DBP), Miller, and FM0 are also well-suited for backscatter communications. Using simple coding and modulation can also significantly reduce the computational power consumption of zero-power communications.
[0336] The following, in conjunction with Figure 15, details the different scenarios of a hybrid zero-power communication system based on cellular and / or sidelink communication: Scenario 1, zero-power communication triggered by intelligent terminal auxiliary power supply: The zero-power terminal is powered and triggered by an intelligent terminal in the network, and the backscattered signal of the zero-power terminal is received by the base station. The intelligent terminal power supply and triggering operations can be controlled by the base station through air interface signaling. Scenario 2, zero-power sidelink communication powered / triggered by the network: The base station provides wireless power and sends trigger signaling to the zero-power terminal, and the backscattered signal of the zero-power terminal is received by the intelligent terminal, completing the sidelink communication. Furthermore, the intelligent terminal sends air interface data to the base station. Scenario 3, zero-power communication powered by intelligent terminal auxiliary power supply: The intelligent terminal in the network provides auxiliary power supply to the zero-power terminal, and the base station sends trigger information to the zero-power terminal and receives the backscattered signal of the zero-power terminal. The process of the intelligent terminal providing auxiliary power to the zero-power terminal can be controlled by the base station through air interface signaling. Case 4: Network-controlled zero-power sidelink communication: The smart terminal receives air interface signaling and data from the network. The smart terminal powers and triggers the zero-power terminal and receives the backscattered signal from the zero-power terminal, completing the sidelink communication.
[0337] Figure 16 is a schematic structural diagram of a communication device 1600 according to an embodiment of the present application. The communication device 1600 includes a processor 1610, which can call and execute a computer program from a memory to enable the communication device 1600 to implement the method in the embodiment of the present application.
[0338] In one possible implementation, the communication device 1600 may further include a memory 1620. The processor 1610 may call and execute a computer program from the memory 1620 to enable the communication device 1600 to implement the method in the embodiment of the present application. The memory 1620 may be a separate device independent of the processor 1610 or may be integrated into the processor 1610.
[0339] In one possible implementation, the communication device 1600 may further include a transceiver 1630. The processor 1610 may control the transceiver 1630 to communicate with other devices. Specifically, the transceiver 1630 may send information or data to other devices or receive information or data sent by other devices. The transceiver 1630 may include a transmitter and a receiver. The transceiver 1630 may further include one or more antennas.
[0340] In one possible implementation, the communication device 1600 may be the first device of the embodiment of the present application, and the communication device 1600 may implement the corresponding processes implemented by the first device in each method of the embodiment of the present application. For the sake of brevity, they will not be repeated here.
[0341] In one possible implementation, the communication device 1600 may be the second device of the embodiment of the present application, and the communication device 1600 may implement the corresponding processes implemented by the second device in each method of the embodiment of the present application. For the sake of brevity, they will not be repeated here.
[0342] 17 is a schematic structural diagram of a chip 1700 according to an embodiment of the present application. The chip 1700 includes a processor 1710, which can call and execute a computer program from a memory to implement the method according to the embodiment of the present application.
[0343] In one possible implementation, the chip 1700 may further include a memory 1720. The processor 1710 may call and execute a computer program from the memory 1720 to implement the method performed by the second device or the first device in the embodiments of the present application. The memory 1720 may be a separate device independent of the processor 1710 or integrated into the processor 1710.
[0344] In a possible implementation, the chip 1700 may further include an input interface 1730. The processor 1710 may control the input interface 1730 to communicate with other devices or chips, and specifically, may obtain information or data sent by other devices or chips.
[0345] In a possible implementation, the chip 1700 may further include an output interface 1740. The processor 1710 may control the output interface 1740 to communicate with other devices or chips, and specifically, may output information or data to other devices or chips.
[0346] In one possible implementation, the chip can be applied to the first device in the embodiment of the present application, and the chip can implement the corresponding processes implemented by the first device in each method of the embodiment of the present application. For the sake of brevity, it will not be repeated here.
[0347] In one possible implementation, the chip can be applied to the second device in the embodiment of the present application, and the chip can implement the corresponding processes implemented by the second device in each method of the embodiment of the present application. For the sake of brevity, it will not be repeated here.
[0348] The chips used in the first device and the second device may be the same chip or different chips.
[0349] It should be understood that the chip mentioned in the embodiments of the present application can also be called a system-level chip, a system chip, a chip system or a system-on-chip chip, etc.
[0350] The processor mentioned above may be a general-purpose processor, a digital signal processor (DSP), a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), or other programmable logic devices, transistor logic devices, discrete hardware components, etc. The general-purpose processor mentioned above may be a microprocessor or any conventional processor, etc.
[0351] The memory mentioned above may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. The non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM).
[0352] It should be understood that the above-mentioned memories are exemplary but not restrictive. For example, the memories in the embodiments of the present application may also be static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct RAM RAM (DR RAM), etc. In other words, the memories in the embodiments of the present application are intended to include, but are not limited to, these and any other suitable types of memories.
[0353] Figure 18 is a schematic block diagram of a communication system 1800 according to an embodiment of the present application. The communication system 1800 includes a second device 1810 and a first device 1820. The second device 1810 can be used to implement the corresponding functions implemented by the second device in the above method, and the first device 1820 can be used to implement the corresponding functions implemented by the first device in the above method. For the sake of brevity, these details are not repeated here.
[0354] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When software is used for implementation, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function in accordance with the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website, computer, server or data center by wired (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.) mode to another website, computer, server or data center. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrations. The available medium may be a magnetic medium (eg, a floppy disk, a hard disk, a magnetic tape), an optical medium (eg, a DVD), or a semiconductor medium (eg, a solid state disk (SSD)).
[0355] It should be understood that in the various embodiments of the present application, the size of the serial numbers of the above-mentioned processes does not mean 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 the present application.
[0356] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0357] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any modifications or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in the present application should be included within the scope of protection of the present application. Therefore, the scope of protection of the present application should be based on the scope of protection of the claims.
Claims
1. An authentication method, comprising: The first device receives a downlink signal; The downlink signal carries first information, where the first information is generated by the second device based on the first key; The first device authenticates the first information carried in the received downlink signal based on the first sequence to obtain an authentication result; The first sequence is generated based on the second key.
2. The method according to claim 1, wherein The first device authenticates the first information carried in the received downlink signal based on the first sequence, and obtains an authentication result, including: If the similarity between the first sequence and the first information carried in the received downlink signal meets a preset condition, the first device determines that the authentication result is authentication passed; And / or, if the similarity between the first sequence and the first information carried in the received downlink signal does not meet a preset condition, the first device determines that the authentication result is an authentication failure.
3. The method according to claim 2, wherein: The method further comprises: The first device performs calculation based on the first sequence and the first information carried in the received downlink signal to obtain a first value; When the first value is within a preset threshold range, it is determined that the similarity between the first sequence and the first information carried in the received downlink signal meets a preset condition.
4. The method according to any one of claims 1 to 3, wherein: The first information is generated by the second device based on a second sequence, and the second sequence is generated based on the first key.
5. The method according to claim 4, wherein Before the first device receives the downlink signal, the method further includes: The first device processes the second key based on a preset algorithm to obtain a third sequence; The first device sends a first pilot carrying the third sequence.
6. The method according to claim 5, wherein: The first information is generated by the second device based on the channel estimation value and the second sequence; The channel estimation value is obtained by the second device performing channel estimation on the received first pilot based on the second sequence.
7. The method according to claim 5 or 6, wherein: The first sequence is the same as the third sequence.
8. The method according to any one of claims 4 to 6, wherein: The downlink signal also carries a first downlink service command.
9. The method according to claim 8, wherein The second sequence is generated by the second device based on the first key and the first downlink service command.
10. The method according to claim 9, wherein: The method further comprises: The first device processes the second key and the first downlink service command based on a preset algorithm to obtain the first sequence.
11. The method according to any one of claims 8 to 10, wherein: The method further comprises: If the authentication result is authentication passed, the first device executes the first downlink service command.
12. The method according to claim 8, wherein The first downlink service command is obtained by scrambling the second downlink service command by the second device based on the first scrambling code; the first scrambling code is generated by the second device based on the first key.
13. The method according to claim 12, wherein: The second sequence is generated by the second device based on the first key and the second downlink service command.
14. The method according to claim 13, wherein The method further comprises: The first device descrambles the first downlink service command carried in the received downlink signal based on a second scrambling code to obtain a third downlink service command; wherein the second scrambling code is generated based on the second key.
15. The method according to claim 14, wherein The method further comprises: The first device processes the second key and the third downlink service command based on a preset algorithm to obtain the first sequence.
16. The method according to claim 15, wherein The method further comprises: If the authentication result is authentication passed, the first device executes the third downlink service command.
17. The method according to claim 16, wherein The first downlink service command is obtained by the second device scrambling the second downlink service command and a first random number based on the first scrambling code.
18. The method according to claim 17, wherein: The first device descrambles the first downlink service command carried by the received downlink signal based on the second scrambling code to obtain a third downlink service command, including: The first device descrambles the first downlink service command carried in the received downlink signal based on the second scrambling code to obtain the third downlink service command and the second random number.
19. The method according to any one of claims 1 to 18, wherein: The method further comprises: When the authentication result is authentication passed, the first device sends an uplink signal carrying first uplink service data.
20. The method according to any one of claims 1 to 16, wherein: The method further comprises: If the authentication result is authentication passed, the first device scrambles the first uplink service data based on a third scrambling code to obtain second uplink service data; wherein the third scrambling code is generated based on a third key; The first device sends an uplink signal carrying the second uplink service data.
21. The method according to claim 18, wherein The method further comprises: If the authentication result is authentication passed, the first device scrambles the first uplink service data and the second random number based on a third scrambling code to obtain third uplink service data; wherein the third scrambling code is generated based on a third key; and the second random number is used by the second device to authenticate the first device; The first device sends an uplink signal carrying the third uplink service data.
22. The method according to any one of claims 5, 10, and 15, wherein: The preset algorithm is one of the following: a random number algorithm, a cryptographic algorithm.
23. An authentication method, comprising: The second device sends a downlink signal; The downlink signal carries first information, where the first information is generated by the second device based on the first key; The first information is used by the first device to perform authentication and obtain an authentication result.
24. The method according to claim 23, wherein The second device sending a downlink signal includes: The second device processes the first key based on a preset algorithm to obtain a second sequence; The second device generates first information based on the second sequence; The second device sends the downlink signal carrying the first information.
25. The method according to claim 24, wherein The method further comprises: The second device receives a first pilot sent by the first device; the first pilot is used to carry a third sequence; the third sequence is obtained by the first device processing the second key based on a preset algorithm.
26. The method according to claim 25, wherein The second device generates first information based on the second sequence, including: The second device performs channel estimation on the received first pilot based on the second sequence to obtain a channel estimation value; The second device generates first information based on the second sequence and the channel estimation value.
27. The method according to claim 26, wherein The dimension of the channel estimation value is related to the number of antennas of the second device.
28. The method according to any one of claims 24 to 27, wherein: The downlink signal also carries a first downlink service command.
29. The method according to claim 28, wherein The second device processes the first key based on a preset algorithm to obtain a second sequence, including: The second device processes the first key and the first downlink service command based on the preset algorithm to obtain the second sequence.
30. The method of claim 28, wherein The method further comprises: The second device generates a first scrambling code based on the first key; The second device scrambles the second downlink service command based on the first scrambling code to obtain the first downlink service command.
31. The method according to claim 30, wherein The second device scrambles the second downlink service command based on the first scrambling code to obtain the first downlink service command, including: The second device scrambles the second downlink service command and the first random number based on the first scrambling code to obtain the first downlink service command.
32. The method according to claim 30 or 31, wherein The second device processes the first key based on a preset algorithm to obtain a second sequence, including: The second device processes the first key and the second downlink service command based on the preset algorithm to obtain the second sequence.
33. The method according to any one of claims 23 to 32, wherein: The method further comprises: The second device receives an uplink signal carrying first uplink service data sent by the first device.
34. The method according to any one of claims 23 to 30, wherein: The method further comprises: The second device receives an uplink signal carrying second uplink service data sent by the first device; The second device generates a fourth scrambling code based on a fourth key; The second device descrambles the received second uplink service data based on the fourth scrambling code to obtain fourth uplink service data.
35. The method of claim 31 , wherein: The method further comprises: The second device receives an uplink signal carrying third uplink service data sent by the first device; The second device generates a fourth scrambling code based on a fourth key; The second device descrambles the received third uplink service data based on the fourth scrambling code to obtain fifth uplink service data and a second random number; The second device authenticates the first device based on the second random number and the first random number to obtain an authentication result of the first device; When the authentication result of the first device is authentication passed, the second device saves the fifth uplink service data.
36. The method according to claim 35, wherein The second device authenticates the first device based on the second random number and the first random number, and obtains an authentication result of the first device, including: When the second random number is consistent with the first random number, the second device determines that the authentication result of the first device is authentication passed.
37. The method according to any one of claims 24, 25, 29, and 32, wherein: The preset algorithm is one of the following: a random number algorithm, a cryptographic algorithm.
38. A first device comprising: A first communication unit, configured to receive a downlink signal; The downlink signal carries first information, where the first information is generated by the second device based on the first key; a first processing unit, configured to authenticate the first information carried in the received downlink signal based on the first sequence, and obtain an authentication result; The first sequence is generated based on the second key.
39. The first device according to claim 38, wherein The first processing unit is configured to determine that the authentication result is authentication passed if the similarity between the first sequence and the first information carried in the received downlink signal meets a preset condition; And / or, when the similarity between the first sequence and the first information carried in the received downlink signal does not meet a preset condition, determining that the authentication result is an authentication failure.
40. The first device according to claim 39, wherein The first processing unit is configured to perform a calculation based on the first sequence and the first information carried in the received downlink signal to obtain a first value; and when the first value is within a preset threshold range, determine the similarity between the first sequence and the first information in the received downlink signal to satisfy a preset condition.
41. The first device according to any one of claims 38 to 40, wherein: The first information is generated by the second device based on a second sequence, and the second sequence is generated based on the first key.
42. The first device according to claim 41, wherein The first processing unit is configured to process the second key based on a preset algorithm to obtain a third sequence; The first communication unit is configured to send a first pilot signal carrying the third sequence.
43. The first device according to claim 42, wherein The first information is generated by the second device based on the channel estimation value and the second sequence; The channel estimation value is obtained by the second device performing channel estimation on the received first pilot based on the second sequence.
44. The first device according to claim 42 or 43, wherein The first sequence is the same as the third sequence.
45. The first device according to any one of claims 41 to 43, wherein: The downlink signal also carries a first downlink service command.
46. The first device according to claim 45, wherein The second sequence is generated by the second device based on the first key and the first downlink service command.
47. The first device according to claim 46, wherein The first processing unit is configured to process the second key and the first downlink service command based on a preset algorithm to obtain the first sequence.
48. The first device according to any one of claims 45 to 47, wherein: The first processing unit is configured to execute the first downlink service command if the authentication result is authentication passed.
49. The first device according to claim 45, wherein The first downlink service command is obtained by scrambling the second downlink service command by the second device based on the first scrambling code; the first scrambling code is generated by the second device based on the first key.
50. The first device according to claim 49, wherein The second sequence is generated by the second device based on the first key and the second downlink service command.
51. The first device according to claim 50, wherein The first processing unit is configured to descramble the first downlink service command carried by the received downlink signal based on a second scrambling code to obtain a third downlink service command; wherein the second scrambling code is generated based on the second key.
52. The first device according to claim 51, wherein The first processing unit is configured to process the second key and the third downlink service command based on a preset algorithm to obtain the first sequence.
53. The first device according to claim 52, wherein The first processing unit is configured to execute the third downlink service command if the authentication result is authentication passed.
54. The first device according to claim 53, wherein The first downlink service command is obtained by the second device scrambling the second downlink service command and a first random number based on the first scrambling code.
55. The first device according to claim 54, wherein The first processing unit is configured to descramble the first downlink service command carried by the received downlink signal based on the second scrambling code to obtain the third downlink service command and the second random number.
56. The first device according to any one of claims 38 to 55, wherein: The first communication unit is configured to send an uplink signal carrying first uplink service data when the authentication result is authentication passed.
57. The first device according to any one of claims 38 to 53, wherein: The first processing unit is configured to, when the authentication result is authentication passed, scramble the first uplink service data based on a third scrambling code to obtain second uplink service data; wherein the third scrambling code is generated based on a third key; The first communication unit is configured to send an uplink signal carrying the second uplink service data.
58. The first device according to claim 55, wherein The first processing unit is configured to, if the authentication result is authentication passed, scramble the first uplink service data and the second random number based on a third scrambling code to obtain third uplink service data; wherein the third scrambling code is generated based on a third key; and the second random number is used by the second device to authenticate the first device; The first communication unit is configured to send an uplink signal carrying the third uplink service data.
59. The first device according to any one of claims 42, 47, and 52, wherein: The preset algorithm is one of the following: a random number algorithm, a cryptographic algorithm.
60. A second device comprising: A second communication unit, configured to send a downlink signal; The downlink signal carries first information, where the first information is generated by the second device based on the first key; The first information is used by the first device to perform authentication and obtain an authentication result.
61. The second device according to claim 60, wherein The second device further includes: a second processing unit, configured to process the first key based on a preset algorithm to obtain a second sequence; and generate first information based on the second sequence; The second communication unit is configured to send the downlink signal carrying the first information.
62. The second device according to claim 61, wherein The second communication unit is used to receive a first pilot sent by the first device; the first pilot is used to carry a third sequence; the third sequence is obtained by the first device processing the second key based on a preset algorithm.
63. The second device according to claim 62, wherein The second device further includes: The second processing unit is configured to perform channel estimation on the received first pilot based on the second sequence to obtain a channel estimation value; and generate first information based on the second sequence and the channel estimation value.
64. The second device according to claim 63, wherein The dimension of the channel estimation value is related to the number of antennas of the second device.
65. The second device according to any one of claims 61 to 64, wherein: The downlink signal also carries a first downlink service command.
66. The second device according to claim 65, wherein The second processing unit is configured to process the first key and the first downlink service command based on the preset algorithm to obtain the second sequence.
67. The second device according to claim 65, wherein The second processing unit is configured to generate a first scrambling code based on the first key; and scramble the second downlink service command based on the first scrambling code to obtain the first downlink service command.
68. The second device according to claim 67, wherein The second processing unit is configured to scramble the second downlink service command and the first random number based on the first scrambling code to obtain the first downlink service command.
69. The second device according to claim 67 or 68, wherein The second processing unit is configured to process the first key and the second downlink service command based on the preset algorithm to obtain the second sequence.
70. The second device according to any one of claims 60 to 69, wherein: The second communication unit is configured to receive an uplink signal carrying first uplink service data sent by the first device.
71. The second device according to any one of claims 60 to 67, wherein: The second device further includes: The second processing unit is configured to generate a fourth scrambling code based on a fourth key; and descramble the received second uplink service data based on the fourth scrambling code to obtain fourth uplink service data; The second communication unit is configured to receive an uplink signal carrying second uplink service data sent by the first device.
72. The second device according to claim 68, wherein The second communication unit is configured to receive an uplink signal carrying third uplink service data sent by the first device; The second processing unit is configured to generate a fourth scrambling code based on a fourth key; Descrambling the received third uplink service data based on the fourth scrambling code to obtain fifth uplink service data and a second random number; authenticating the first device based on the second random number and the first random number, and obtaining an authentication result of the first device; When the authentication result of the first device is authentication passed, the fifth uplink service data is saved.
73. The second device according to claim 72, wherein The second processing unit is configured to determine that the authentication result of the first device is authentication passed when the second random number is consistent with the first random number.
74. The second device according to any one of claims 61, 62, 66, and 69, wherein: The preset algorithm is one of the following: a random number algorithm, a cryptographic algorithm.
75. A first device comprising: A processor and a memory, the memory being used to store a computer program, the processor being used to call and run the computer program stored in the memory, so that the first device executes the method according to any one of claims 1 to 22.
76. A second device comprising: A processor and a memory, the memory being used to store a computer program, the processor being used to call and run the computer program stored in the memory, so that the second device executes the method according to any one of claims 23 to 37.
77. A chip comprising: A processor, configured to call and run a computer program from a memory, so that a device equipped with the chip executes the method according to any one of claims 1 to 22.
78. A chip comprising: A processor, configured to call and execute a computer program from a memory, so that a device equipped with the chip executes a method as claimed in any one of claims 23 to 37.
79. A computer-readable storage medium for storing a computer program, which, when executed by a device, causes the device to perform the method according to any one of claims 1 to 37.
80. A computer program product comprising computer program instructions for causing a computer to perform the method of any one of claims 1 to 37.
81. A computer program causing a computer to perform the method of any one of claims 1 to 37.