Safe orthogonal frequency hopping pattern construction method
The random driving sequence is generated by the cryptographic algorithm and the frequency-point mapping algorithm is combined with the frequency-point mapping algorithm to construct the frequency-point hopping sequence, which solves the problem that the frequency-point hopping pattern cannot be at the same time safe and orthogonal, and achieves excellent performance under efficient frequency utilization and low latency conditions.
Patent Information
- Application Number
- CN202510328920.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-20
- Publication Date
- 2025-04-25
- Estimated Expiration
- 2045-03-20
AI Technical Summary
The existing frequency hopping pattern construction methods cannot be safe and orthogonal at the same time, especially under time synchronization conditions.
The cryptographic algorithm is used to generate a random driver sequence, and a frequency-hop sequence that is orthogonal to each other is formed through the frequency point mapping algorithm, and finally the user frequency point allocation is performed.
The constructed frequency hopping pattern has good randomness, inter-sequence synchronization orthogonality and low collision zone, which improves frequency point utilization and is significantly better than the Hamming cross-correlation performance of random sequences under low delay conditions.
Smart Images

Figure CN119892147A_ABST
Abstract
Description
Technical Field
[0001] The invention relates to the technical field of frequency hopping, and in particular to a method for constructing a secure orthogonal frequency hopping pattern. Background Art
[0002] The openness of wireless channels makes it easier for attackers to intercept, interfere with or spoof signals, posing a security threat to wireless communication systems. Frequency hopping technology has the advantages of anti-interference and confidentiality, and is widely used in high-security signals. Frequency hopping technology is a signal physical layer security protection technology. The biggest feature of frequency hopping signals is that their central frequency changes over time and stays on each frequency for only a short period of time, thereby avoiding interference and interception.
[0003] One of the core components of frequency hopping technology is the frequency hopping pattern, which is a collection of a series of frequency hopping sequence frequencies, indicating to all users which center frequencies they should use to transmit wireless signals at each moment. In the process of sending and receiving frequency hopping signals, the legitimate sender and receiver use the known frequency hopping pattern to change the working frequency of the signal to avoid the influence of interference signals, prevent eavesdroppers from intercepting signals, and verify the authenticity of the signal physical layer. If the attacker cannot obtain the frequency hopping pattern and predict the location of the working frequency, when the hopping speed (the speed at which the signal switches from one frequency to another) is fast enough, it is difficult for the attacker to intercept, interfere or deceive in a targeted manner. It can be seen that the ability of frequency hopping signals to resist various attacks comes from the security characteristics of the frequency hopping pattern itself, such as confidentiality, randomness, and unpredictability, that is, the attacker cannot predict the unused frequency hopping frequencies through the already used frequency hopping frequencies. Therefore, a secure frequency hopping pattern needs to have good enough randomness on the one hand, so that the attacker cannot predict it; on the other hand, it needs to be reproducible so that the sender and receiver can obtain consistent frequency hopping patterns.
[0004] In addition to security, another performance requirement of the frequency hopping pattern is orthogonality, that is, when multiple users use the same frequency hopping pattern, will multiple users use the same frequency at the same time? If this happens, the signals of users using the same frequency will interfere with each other. Therefore, the fewer users use the same frequency at the same time, the better the performance of the frequency hopping pattern. The ideal situation is that at any time, all users use different frequencies to send signals. At this time, the frequency hopping patterns used by these users are called orthogonal.
[0005] Classic frequency hopping pattern generation mainly uses polynomial methods on finite fields (such as m-sequences, Bent functions, GMW sequences, etc.). The length of the generated frequency hopping pattern is limited, and the actual generated frequency hopping signal has a certain periodicity in the pattern. At this time, if the attacker collects and analyzes the frequency hopping signal through a high-gain and large-bandwidth acquisition device, the used frequency hopping pattern can be obtained, thereby having the ability to predict the frequency hopping pattern in future attacks. At present, some technologies introduce chaotic sequences or cryptographic algorithms into the generation process of frequency hopping patterns, but there is currently no method for constructing frequency hopping patterns that simultaneously solves the security problem and orthogonality problem under signal synchronization conditions. Summary of the invention
[0006] The present invention is directed to a time-synchronized frequency hopping signal, and solves the problem that the existing method for constructing a frequency hopping pattern cannot simultaneously have security and orthogonality. To solve the above problem, the present invention provides the following technical solutions: A method for constructing a secure orthogonal frequency hopping pattern comprises the following steps: S1. Generate a random drive sequence by using a cryptographic algorithm: use time information and a counter as plain text or initial state input, use a pattern key as a key of the cryptographic algorithm, and obtain a random drive sequence; S2. Use a frequency mapping algorithm to form a frequency hopping pattern: transform the random driving sequence into a series of mutually orthogonal frequency hopping sequences to form a frequency hopping pattern; S3. Perform user frequency allocation: select a specific frequency hopping sequence from the frequency hopping pattern as the frequency information used to transmit or receive wireless signals.
[0007] Further preferably, in step S1: the time information is encoded by design to form a structure in which the changing frequency matches the hopping rate of the frequency hopping signal, each hop corresponds to a different time information, and by designing the counter bit width, different combinations of the time information and the counter are formed.
[0008] Further preferably, at any time of the frequency hopping signal, based on the same or different keys of the cryptographic algorithm, the ciphertext outputs obtained are all different, and the obtained random driving sequence has the characteristics of being non-periodic and non-repetitive.
[0009] Further preferably, when the frequency mapping algorithm is run, it specifically includes the following steps: S21, firstly generate a sequentially arranged set according to the total number of available frequency points at each moment; S22, extracting random bit streams from the random driving sequence at the corresponding moment generated by the cryptographic algorithm in sequence, converting them into decimal, using the decimal numbers as index numbers, extracting elements in the set in sequence, and forming a set that is arranged in random order and does not repeat each other, that is, the frequency point sequence used by all users in the current hop.
[0010] Further preferably, before the operation of the frequency point mapping algorithm in step S2, there are the following steps S20: S20. First, determine the total number of available frequency points M for the frequency hopping pattern to be generated and the number of hops N to be generated, and initialize the corresponding result matrix with M rows and N columns. Subsequently, start mapping the frequency points hop by hop from n = 0.
[0011] Further preferably, step S22 specifically includes the following steps: S221. Initialize the ordered set A = {0, 1, …, M - 1}, and let the ordered set B be initially an empty set. Record the number of elements m in set A as m = M; S222. Extract ceil(log2(m)) bits of data from the random driving sequence at time n, where ceil() is the ceiling operation. Convert the binary representation to a decimal number t; the data taken from the random driving sequence is not reused. When taking data next time, start from the position after the last bit taken this time; S223. If the value of t is greater than or equal to the number of elements m in the current set A, discard the t taken this time and return to step S222; if t is less than the number of elements m in the current set A, continue with S224; S224. According to the indication of the taken t, take out the t-th remaining element in the current set A and put it at the end of set B, and delete the taken element from set A; at this time, the number of remaining elements m in set A will decrease by 1; S225. If there are still elements in set A at this time, return to S222 and continue to take out elements from set A and put them into set B; if the elements in set A have been taken out at this time, then there must be M complete elements in set B. At this time, these M elements are arranged in a column in the order of joining set B to form the n-th column of the result matrix; let n = n + 1; S226. If the result matrix has not been filled at this time, that is, n < N, then return to step S221 to repeat the construction of other column data; if the result matrix has been filled at this time, that is, n = N, then perform the final frequency conversion on the result matrix, that is, convert each element k in the matrix to the frequency fk of the k-th frequency point.
[0012] Further preferably, step S3 specifically includes the following steps: User frequency point allocation selects a specific frequency hopping sequence from the frequency hopping pattern according to the user's ID as the frequency point information for transmitting or receiving wireless signals; When the number of users is less than the number of available frequencies, the synchronization error is tolerated through user frequency allocation, and the low collision area of the frequency hopping sequence is expanded while maintaining the synchronization and orthogonality of the frequency hopping sequence; multiple frequency hopping sequences in the frequency hopping pattern are allocated to each user, and each user uses the frequency points in the frequency hopping sequence at the same time in a fixed order.
[0013] The invention discloses a method for constructing a safe orthogonal frequency hopping pattern. The constructed frequency hopping pattern has the characteristics of good randomness, synchronous orthogonality between sequences, low collision area and high utilization rate of random driving sequences.
[0014] In the sense of considering the entire frequency hopping pattern, the frequency hopping sequence constructed by the present invention has complete ergodicity at the pattern level, that is, while keeping a single spread spectrum sequence random, the number of occurrences of each frequency point at the overall level is exactly the same. Therefore, the frequency hopping pattern constructed by the present invention maintains sufficient randomness in a single sequence, and the overall frequency points are evenly distributed, achieving maximum frequency point utilization.
[0015] When the time delay is small, the frequency hopping pattern constructed by the present invention is significantly better than the random sequence in terms of Hamming cross-correlation performance, and when the synchronization requirements are met, the present invention can construct an ideal orthogonal frequency hopping sequence, that is, the Hamming cross-correlation is 0.
[0016] In terms of the utilization of random driving sequences, the present invention extracts random sequences by strictly determining their length in accordance with randomness requirements, which significantly improves sequence utilization. In the worst case (the number of frequency hopping points is exactly 2N+1, and there are only 2 users), the utilization of the random sequence will also be higher than 50%.
[0017] In summary, the frequency hopping pattern constructed in the present invention has better Hamming cross-correlation performance under low delay conditions while having similar performances as random sequences in terms of randomness and security. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] Figure 1 It is the overall process architecture of the present invention; Figure 2 It is a structural relationship between each hop of a frequency hopping signal, time information and a counter in one embodiment of the present invention; Figure 3 It is the main flow chart of the frequency mapping algorithm of the present invention; Figure 4 It is a schematic diagram of frequency hopping sequence allocation for two users with a collision-free zone of ±1 hop in user frequency allocation in an embodiment of the present invention; Figure 5 (a) shows the number of occurrences of each frequency point in a single frequency hopping sequence of a physical true random frequency hopping sequence; FIG5( b ) is a graph showing the number of occurrences of each frequency point in a single frequency hopping sequence of the present invention; Figure 6 (a) shows the number of times the physical true random frequency hopping sequence appears at each frequency point in the frequency hopping pattern; FIG6 (b) shows the number of occurrences of each frequency point of the frequency hopping sequence in the frequency hopping pattern of the present invention; Figure 7 (a) shows the Hamming autocorrelation sidelobes of a physical true random frequency hopping sequence; FIG7( b ) is a Hamming autocorrelation side lobe of the frequency hopping sequence of the present invention; Figure 8 (a) is the Hamming cross-correlation result of the physical true random frequency hopping sequence; FIG8( b ) is the Hamming cross-correlation result of the frequency hopping sequence of the present invention; Figure 9 (a) shows the Hamming cross-correlation value of the physical true random frequency hopping sequence when the delay is small; FIG9( b ) is the Hamming cross-correlation value of the frequency hopping sequence of the present invention when the delay is relatively small. DETAILED DESCRIPTION
[0019] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0020] The preferred embodiments of the present invention are further described in detail below with reference to the accompanying drawings.
[0021] Embodiment 1: The present invention provides a method for constructing a secure orthogonal frequency hopping pattern. Figure 1 The overall process includes: S1, using a cryptographic algorithm to calculate and generate a random driving sequence; S2, using a frequency mapping algorithm to form a frequency hopping pattern; S3, performing user frequency allocation.
[0022] S1 uses a cryptographic algorithm to calculate a random drive sequence, using time information and a counter as plain text or initial state inputs, and a pattern key as the key of the cryptographic algorithm to obtain a random drive sequence. The time information is encoded by design to form a structure in which the changing frequency matches the hopping speed of the frequency hopping signal. Each hop corresponds to a different time information. The counter starts counting from 0 at the moment corresponding to each hop. By designing the counter bit width, different combinations of the time information and the counter are formed. At any moment of the frequency hopping signal, based on the same or different keys of the cryptographic algorithm, the ciphertext outputs are different, and the random drive sequence obtained has the characteristics of no period and no repetition.
[0023] Using the frequency point mapping algorithm in S2 to form a frequency hopping pattern is to transform a random driving sequence into a series of mutually orthogonal frequency hopping sequences to form a frequency hopping pattern. At any moment of the frequency hopping signal, based on the same or different keys of the cryptographic algorithm, the ciphertext outputs obtained are all different, and the obtained random driving sequence has the characteristics of being aperiodic and non-repeating. In step S2, when the frequency point mapping algorithm runs, it specifically includes the following steps: S20. First, determine the total number of available frequency points M for the frequency hopping pattern to be generated and the number of hops N to be generated, and initialize the corresponding result matrix with M rows and N columns. Then, start mapping the frequency points hop by hop from n = 0. S21. First, generate an ordered set according to the total number of available frequency points at each moment. S22. Then, sequentially extract the random bit stream from the random driving sequence generated by the cryptographic algorithm at the corresponding moment, convert it into a decimal number, use the decimal number as the index number, and sequentially extract the elements in the set to form a disordered and non-repeating set, that is, the order of the frequency points used by all users within the current hop.
[0024] Step S22 specifically includes the following steps: S221. Initialize the ordered set A = {0, 1, …, M - 1}, and let the ordered set B be initially an empty set, and record the number of elements m in set A as m = M. S222. Extract ceil(log2(m)) bits of data from the random driving sequence at time n, where ceil() is the ceiling operation, and convert the binary representation to a decimal number t; the data taken from the random driving sequence will not be reused, and when taking data next time, start taking from after the last bit taken this time. S223. If the value of t is greater than or equal to the number of elements m in the current set A, then discard the t taken this time and go back to step S222; if t is less than the number of elements m in the current set A, then continue with S224. S224. According to the indication of the taken t, take out the t-th of the remaining elements in the current set A and put it at the end of set B, and delete the taken element from set A; at this time, the number of remaining elements m in set A will decrease by 1. S225. If there are still elements in set A at this time, then go back to S222 and continue to take elements from set A and put them into set B; if the elements in set A have been taken out at this time, then there must be M complete elements in set B. At this time, these M elements are arranged in a column in the order of adding to set B to form the n-th column of the result matrix; let n = n + 1. S226. If the result matrix has not been filled at this time, that is, n < N, then go back to step S221 to repeat constructing other column data; if the result matrix has been filled at this time, that is, n = N, then perform the final frequency conversion on the result matrix, that is, convert each element k in the matrix to the frequency fk of the k-th frequency point.
[0025] S3 performs user frequency allocation by selecting a specific frequency hopping sequence from the frequency hopping pattern as the frequency information used to transmit or receive wireless signals. Step S3 specifically includes the following steps: User frequency allocation selects a specific frequency hopping sequence from the frequency hopping pattern as the frequency information used to transmit or receive wireless signals according to the user ID; When the number of users is less than the number of available frequencies, the synchronization error is tolerated through user frequency allocation, and the low collision area of the frequency hopping sequence is expanded while maintaining the synchronization and orthogonality of the frequency hopping sequence; multiple frequency hopping sequences in the frequency hopping pattern are allocated to each user, and each user uses the frequency points in the frequency hopping sequence at the same time in a fixed order.
[0026] The invention discloses a method for constructing a safe orthogonal frequency hopping pattern. The constructed frequency hopping pattern has the characteristics of good randomness, synchronous orthogonality between sequences, low collision area and high utilization rate of random driving sequences.
[0027] In the sense of considering the entire frequency hopping pattern, the frequency hopping sequence constructed by the present invention has complete ergodicity at the pattern level, that is, while keeping a single spread spectrum sequence random, the number of occurrences of each frequency point at the overall level is exactly the same. Therefore, the frequency hopping pattern constructed by the present invention maintains sufficient randomness in a single sequence, and the overall frequency points are evenly distributed, achieving maximum frequency point utilization.
[0028] When the time delay is small, the frequency hopping pattern constructed by the present invention is significantly better than the random sequence in terms of cross-correlation performance, and when the synchronization requirements are met, the present invention can construct an ideal orthogonal frequency hopping sequence, that is, the Hamming cross-correlation is 0.
[0029] In terms of the utilization of random driving sequences, the present invention extracts random sequences by strictly determining their length in accordance with randomness requirements, which significantly improves sequence utilization. In the worst case (the number of frequency hopping points is exactly 2N+1, and there are only 2 users), the utilization of the random sequence will also be higher than 50%.
[0030] In summary, the frequency hopping pattern constructed in the present invention has better Hamming cross-correlation performance under low delay conditions while having similar performances as random sequences in terms of randomness and security.
[0031] Embodiment 2: A secure orthogonal frequency hopping pattern construction method of the present invention is mainly based on cryptographic algorithms, frequency mapping algorithms and user frequency allocation. S1. A random driving sequence is calculated using a cryptographic algorithm; time information and a counter are used as plain text or initial state inputs, and a pattern key is used as a key of the cryptographic algorithm to obtain a random driving sequence.
[0032] The cryptographic algorithm adopts a mature symmetric cryptographic algorithm with modern cryptographic security properties, such as SM4, AES, ZUC, etc. The present invention uses time information (TOD) and a counter as plain text or initial state input, and a pattern key as the key of the cryptographic algorithm. The output is called a random drive sequence. According to the modern cryptographic security properties, the output of the symmetric cryptographic algorithm is indistinguishable from a random sequence. Therefore, if a segment of any length is intercepted from the random drive sequence, the result of its conversion to decimal will be uniformly distributed on [0,2N-1], where N is the number of bits intercepted.
[0033] The time information (TOD) forms a structure that matches the frequency of change with the hopping rate of the frequency hopping signal by designing codes (such as year, month, day, hour, minute, second, millisecond, etc.), that is, each hop corresponds to a different TOD. The counter starts counting from 0 at the moment corresponding to each hop. By designing a sufficient counter bit width, a fairly rich combination of different time information (TOD) and counters can be constructed. For example, when the bit width of the counter is L, each TOD can correspond to 2L different counter values, which means that within the time range of each hop of the frequency hopping signal, there are 2L different plaintexts that can be used as inputs to the cryptographic algorithm. The setting structure of each hop of the frequency hopping signal, TOD and counter is shown in the attached figure. Figure 2 As shown. Taking the Nth hop as an example, a single time information The corresponding counter bit width is L, and the counter contains bits from 0- A total of 2L different plaintexts can be used as inputs to the cryptographic algorithm. At this time, at any moment of the frequency hopping signal, due to different plaintext inputs, even if the cryptographic algorithm uses the same key, its ciphertext output will be different, thus achieving the non-periodic and non-repeating characteristics of the random drive sequence. After calculation by the cryptographic algorithm, a sufficiently long random drive sequence can be provided for each hop of the frequency hopping signal.
[0034] S2 of the present invention uses a frequency mapping algorithm to form a frequency hopping pattern; the random drive sequence is transformed into a series of mutually orthogonal frequency hopping sequences to form a frequency hopping pattern. The frequency mapping algorithm transforms the random drive sequence into a series of mutually orthogonal frequency hopping sequences to form a frequency hopping pattern. When the frequency mapping algorithm is running, at each moment, a sequentially arranged set is first generated according to the total number of available frequency points, and then the random bit stream is extracted from the random drive sequence of the corresponding moment generated by the cryptographic algorithm and converted into decimal. These decimal numbers are used as index numbers to extract the elements in the above set in turn to form a set that is arranged in a disordered order and does not repeat each other. This set is the frequency point sequence used by all users in the current hop. By performing the above operation at each moment, a two-dimensional frequency point matrix of the user to time can be obtained, which is the frequency hopping pattern.
[0035] The operation process of the frequency mapping algorithm is shown in the attached figure. Figure 3As shown in the figure. Before performing frequency point mapping, first determine the total number of available frequency points M for the frequency hopping pattern to be generated and the number of hops N to be generated, and initialize the corresponding result matrix with M rows and N columns. Then, start generating frequency points hop by hop from n = 0. The specific steps are as follows: 1. Initialize the ordered set A = {0, 1, …, M - 1}, and let the ordered set B be initially an empty set. Record the number of elements m in set A as m = M.
[0036] 2. Extract ceil(log2(m)) bits of data from the random drive sequence at time n, where ceil() is the ceiling operation. Convert the binary representation to a decimal number t. The data taken from the random drive sequence is not reused. When taking data next time, start from the bit immediately after the last bit taken this time.
[0037] 3. If the value of t is greater than or equal to the number of elements m in the current set A, discard the t taken this time and go back to step 2. If t is less than the number of elements m in the current set A, continue to step 4.
[0038] 4. According to the indication of the taken t, take out the t-th remaining element in the current set A and put it at the end of set B, and delete the taken element from set A. At this time, the number of remaining elements m in set A will decrease by 1.
[0039] 5. If there are still elements in set A at this time, go back to step 2 and continue to take elements from set A and put them into set B. If the elements in set A have been taken out at this time, then there must be M complete elements in set B. At this time, these M elements are arranged in a column in the order of joining set B, forming the n-th column of the result matrix. Let n = n + 1.
[0040] 6. If the result matrix has not been filled at this time, that is, n < N, then go back to step 1 to repeat constructing the data for other columns. If the result matrix has been filled at this time, that is, n = N, then perform the final frequency conversion on the result matrix, that is, convert each element k in the matrix to the frequency fk of the k-th frequency point.
[0041] At this time, each row of the matrix is a frequency hopping sequence of a user, and the entire matrix constitutes a frequency hopping pattern shared by these users. The frequency hopping pattern converted through the above steps has two characteristics: (1) The frequency hopping sequence of each user is fully random, that is, the frequency points used in each hop are equally distributed; (2) The frequency hopping sequences between different users are orthogonal, that is, all users use different frequency points to transmit signals at the same time.
[0042] The validity of these two characteristics will be explained below.
[0043] First, it is explained that the frequency hopping sequence of each user is sufficiently random. The random driving sequence is generated by a cryptographic algorithm that conforms to the security characteristics of modern cryptography and is sufficiently random. Therefore, any length of bits taken out from it, after conversion to decimal, meet the characteristics of uniform distribution, that is, the probability of taking any value in the range is equal. After removing elements greater than or equal to a specific number from these numbers, the probability of the remaining elements appearing is still equal, so t used in step 4 is uniformly distributed on [0, m-1]. Next, it is explained that if elements are uniformly randomly taken from set A and placed in set B, then the probability of any element appearing in any position is equal. For any element in set A, since the elements are taken out in order, then its being taken out for the xth time must mean that it has not been taken out for the previous x-1 times. When the element is taken for the yth time, the number of remaining elements in set A is M-y+1, and the probability of not being taken is (My) / (M-y+1). Therefore, the probability of the element being taken for the xth time is (M-1) / M*(M-2) / (M-1)…(M-x+1) / (M-x+2)*1 / (M-x+1)=1 / M, which has nothing to do with the number of times. That is, the probability of any element in set A appearing at any position in set B is equal, that is, the frequency points used in each hop are equally distributed.
[0044] Next, the orthogonality of the frequency hopping sequences used by users is explained. According to the process of taking elements from set A and adding them to set B, all elements of set A are arranged without duplication in set B, and set B, as a column of the result matrix, represents the frequency point numbers used by all users at a certain moment. Since there are no repeated elements in set B, the frequency point numbers used by all users at any moment are not repeated, so the frequency hopping sequences used by users are orthogonal.
[0045] S3 of the present invention performs user frequency allocation; a specific frequency hopping sequence is selected from the frequency hopping pattern as the frequency information used to transmit or receive wireless signals. When the number of users is less than the number of available frequencies, the user frequency allocation can be used to achieve tolerance for synchronization errors, and the low collision area of the frequency hopping sequence can be expanded while maintaining the synchronization orthogonality of the frequency hopping sequence. The specific allocation method is: multiple frequency hopping sequences in the frequency hopping pattern are allocated to each user, and each user uses the frequency points in the frequency hopping sequence at the same time in a fixed order. As shown in the attached Figure 4The figure shows the frequency hopping sequence allocation for two users with a collision-free zone of ±1 hop, where A0…AN-1, B0…BN-1, C0…CN-1, D0…DN-1 are frequencies, and frequencies with the same subscript but different letters are different. The order of the arrow links is the order of frequencies used for signal transmission or reception. When the total number of available frequencies is M and the total number of users is P, allocating frequency hopping sequences according to the above method can make the frequency hopping pattern have a low collision zone with a width of ±floor(M / P), where floor() is a floor rounding function.
[0046] Example 3 This embodiment further illustrates a method for constructing a secure orthogonal frequency hopping pattern of the present invention by using a case study. Table 1 is a time information structure jointly formed by a TOD and a counter in this embodiment:
[0047] Taking a frequency hopping system with 64 available frequencies, 8 participating users, and a hopping rate of 16,000 hops per second as an example, the cryptographic algorithm used to generate the random drive sequence is selected as the SM4 algorithm specified in the industry, for example, the SM4 algorithm specified in the national standard "GM / T0002—2012 SM4 Block Cipher Algorithm".
[0048] The time information structure composed of TOD and counter is shown in the table above. Since the hopping rate reaches 16,000 hops per second, each user needs 16 frequency hopping points per millisecond. Therefore, according to the principle of matching the changing frequency with the hopping rate of the frequency hopping signal, the TOD data structure is accurate to milliseconds. The 60-bit annual count can support the data without repetition for 1018 years, so that the frequency hopping pattern will not be repeated within 1018 years. Each group of the SM4 algorithm can transform 128 bits of plaintext into 128 bits of ciphertext, so each SM4 algorithm calculation can generate a random drive sequence with a length of 128 bits. At this time, the frequency hopping pattern is generated at intervals of milliseconds. Taking the generation of the frequency hopping pattern of 8:18:23:523 milliseconds on October 15, 2024 as an example, each user needs to take the following specific steps: Step 1: Counter C is reset to 0, C = 0. The random drive sequence buffer is cleared.
[0049] Step 2: The hop counter J is reset to 0, J=0.
[0050] Step 3: Initialize the sequence permutation set A = {0, 1, 2, ..., 63}, and set m = 64. Initialize the sequence permutation set B = {∅} as an empty set.
[0051] Step 4: Let the year field be 2024 (0b00…11111101000, 60 bits), the month field be 10 (0b1010), the day field be 15 (0b01111), the hour field be 8 (0b01000), the minute field be 18 (0b010010), the second field be 23 (0b010111), and the millisecond field be 523 (0b1000001011). Together with the counter C, they constitute the TOD and counter information with a length of 128 bits. For example, when C=0, TOD and counter information is: 0b00000000000000000000000000000000000000000000000000000000001111110100010100111101000010010010101111000001011000000000000000000000000000000000000, which is represented by hexadecimal as 0x0000000000007E8A7A125E0B00000000.
[0052] Step 5: Use the 128-bit data obtained in step 3 as plain text and the frequency hopping pattern key (randomly selected in this example) as the key, and send it to the SM4 block cipher algorithm for encryption calculation to obtain the result, which is filled into the buffer of the random drive sequence, for example, 0b10000100000100010110110110011101111000000110000001010000001011100011001101101001101101001100110001001011001110100011101011100111, which is expressed as 0x84116D9DE060505C66D371312CF47AE7 in hexadecimal. After the generation is completed, the counter C automatically accumulates 1, that is, C=C+1.
[0053] Step 6: Extract ceil(log2(m)) bits of data from the random drive sequence buffer, for example, when m=64, extract 6 bits of data, such as 0b100001. If the remaining data in the buffer is not enough to extract, return to step 5 to regenerate a new random drive sequence.
[0054] Step 7: Convert the random driving sequence extracted in step 6 into decimal and record it as t. For example, 0b100001 converted into decimal is 33. If this decimal number is greater than or equal to m, return to step 6 to extract again.
[0055] Step 8: Extract the tth element from set A, put it at the end of set B, and delete it from set A, so that m decreases by 1, that is, m=m-1. For example, t=33, A is the initial state, then extract 33 and put it into B. At this time, set A={0,1,2,…,32,34,…,63}, set B={33}, and m=63.
[0056] Step 9: If there are still elements remaining in set A (i.e. m>0), return to step 6 to continue extraction, otherwise continue to step 10.
[0057] Step 10: At this time, the order of elements in set B is the frequency point usage order of different frequency hopping sequences in the current J-th hopping frequency hopping pattern. For example, set B = {33, 52, 11, ..., 6}, then the hopping sequence No. 0 is f33 in the J-th hop of the current millisecond, the hopping sequence No. 1 is f52 in the J-th hop of the current millisecond, and so on, the hopping sequence No. 63 is f6 in the J-th hop of the current millisecond. This order is recorded in the frequency point list of the J-th hop, and J is accumulated by 1, that is, J = J + 1.
[0058] Step 11: If the number of hops for the current millisecond has not been generated, that is, J<16, then return to step 3 to continue generating, otherwise the frequency hopping pattern for this millisecond is generated, and a total of 64 frequency hopping sequences are obtained, each sequence contains 16 hopping frequency points.
[0059] After obtaining the frequency hopping pattern of the current millisecond, the sequence can be allocated to the user according to the requirements of the collision-free zone. For example, if the user signals have excellent synchronization performance, there is no need to set a low collision zone. At this time, only 8 sequences need to be selected from the 64 frequency hopping sequences and allocated to 8 users respectively. If the synchronization of the user signals is not good, it is necessary to set a low collision zone as large as possible to maintain the orthogonality of the frequency points of the frequency hopping signal. At this time, 8 frequency hopping sequences can be allocated to each user, and the users use them sequentially in the same hop of these 8 frequency hopping sequences. For example, for a certain user, the 8 frequency hopping sequences he is allocated are numbered 0 to 7 respectively. Then the frequency points used by the user when generating the frequency hopping signal are in the following order: the first frequency point of sequence 0, the first frequency point of sequence 1, ..., the first frequency point of sequence 7, the second frequency point of sequence 0, ..., the second frequency point of sequence 7, and so on. At this time, when the delay difference of the frequency hopping signals of different users is within the level of 8 hops, since two different users in the area will not use the same one at the same time.
[0060] The frequency hopping pattern constructed by the present invention has the characteristics of good randomness, synchronous orthogonality between sequences, low collision area and high driving sequence utilization rate.
[0061] The best random numbers generally recognized in the industry are physical true random numbers. Figures 5(a) and 5(b), Figures 6(a) and 6(b), Figures 7(a) and 7(b), Figures 8(a) and 8(b), and Figures 9(a) and 9(b) of the present invention are comparisons between physical true random frequency hopping sequences and the frequency hopping series of the present invention, respectively.
[0062] According to 64 available frequency points, 64 frequency hopping sequences with a frequency hopping sequence length of 16000 are analyzed, and the number of occurrences of each frequency point in a single frequency point of the present invention and the physical true random frequency hopping sequence is compared as shown in Figures 5 (a) and 5 (b). It can be seen that under the condition of a single sequence, the frequency hopping sequence constructed by the present invention is as random as the random sequence. Considering the complete frequency hopping pattern, the number of occurrences of each frequency point in the frequency hopping pattern of the physical true random frequency hopping sequence and the present invention is compared as shown in Figures 6 (a) and 6 (b). It can be seen that in the sense of considering the entire frequency hopping pattern, the frequency hopping sequence constructed by the present invention has complete ergodicity at the pattern level, that is, while keeping the single spread spectrum sequence random, the number of occurrences of each frequency point at the overall level is exactly the same. Therefore, the frequency hopping pattern constructed by the present invention maintains sufficient randomness in a single sequence, and the overall frequency points are evenly distributed, achieving maximum frequency point utilization.
[0063] Referring to FIG7 (a) and FIG7 (b) showing the Hamming autocorrelation side lobes of the physical true random frequency hopping sequence and the Hamming autocorrelation side lobes of the frequency hopping sequence of the present invention, it can be seen that the frequency hopping sequence constructed by the present invention is equivalent to the performance of the random sequence in terms of the Hamming autocorrelation performance. Referring to FIG8 (a) and FIG8 (b) showing the Hamming cross-correlation results of the physical true random frequency hopping sequence and the Hamming cross-correlation results of the frequency hopping sequence of the present invention, compared with the physical true random frequency hopping sequence, the frequency hopping sequence constructed by the present invention is in the low collision area when the delay is small.
[0064] As shown in Figure 9 (a) and Figure 9 (b), the Hamming cross-correlation values of the physical true random frequency hopping sequence at a relatively small delay and the Hamming cross-correlation values of the frequency hopping sequence of the present invention at a relatively small delay, the Hamming cross-correlation results with a delay of 0 to 32 hops are magnified and observed. It can be seen that when the delay is relatively small, the frequency hopping pattern constructed by the present invention is significantly better than the random sequence in terms of cross-correlation performance, and when the synchronization requirements are met, the present invention can construct an ideal orthogonal frequency hopping sequence, that is, the Hamming cross-correlation is 0.
[0065] In terms of the utilization of random driving sequences, the present invention extracts random sequences by strictly determining their length in accordance with randomness requirements, which significantly improves sequence utilization. In the worst case (the number of frequency hopping points is exactly 2N+1, and there are only 2 users), the utilization of the random sequence will also be higher than 50%.
[0066] In summary, the frequency hopping pattern constructed in the present invention has better Hamming cross-correlation performance under low delay conditions while having similar performances as random sequences in terms of randomness and security.
[0067] The above contents are further detailed descriptions of the present invention in combination with specific preferred embodiments, and it cannot be determined that the specific implementation of the present invention is limited to these descriptions. For ordinary technicians in the technical field to which the present invention belongs, several simple deductions or substitutions can be made without departing from the concept of the present invention, which should be regarded as falling within the protection scope of the present invention.
Claims
1. A method for constructing a secure orthogonal frequency hopping pattern, characterized in that: The steps include: S1. Generate a random drive sequence by using a cryptographic algorithm: use time information and a counter as plain text or initial state input, use a pattern key as a key of the cryptographic algorithm, and obtain a random drive sequence; S2. Use a frequency mapping algorithm to form a frequency hopping pattern: transform the random driving sequence into a series of mutually orthogonal frequency hopping sequences to form a frequency hopping pattern; S3. Perform user frequency allocation: select a specific frequency hopping sequence from the frequency hopping pattern as the frequency information used to transmit or receive wireless signals.
2. A method for constructing a secure orthogonal frequency hopping pattern according to claim 1, characterized in that: In step S1: the time information is encoded by design to form a structure in which the changing frequency matches the hopping rate of the frequency hopping signal, each hop corresponds to a different time information, and by designing the counter bit width, different time information and counter combinations are formed.
3. A method for constructing a secure orthogonal frequency hopping pattern according to claim 2, characterized in that: At any time of the frequency hopping signal, based on the same or different keys of the cryptographic algorithm, the ciphertext outputs obtained are all different, and the obtained random driving sequence has the characteristics of being non-periodic and non-repetitive.
4. A method for constructing a secure orthogonal frequency hopping pattern according to claim 1, characterized in that: In step S2, when the frequency mapping algorithm is running, it specifically includes the following steps: S21, firstly generate a sequentially arranged set according to the total number of available frequency points at each moment; S22, extracting random bit streams from the random driving sequence at the corresponding moment generated by the cryptographic algorithm in sequence, converting them into decimal, using the decimal numbers as index numbers, extracting elements in the set in sequence, and forming a set that is arranged in random order and does not repeat each other, that is, the frequency point sequence used by all users in the current hop.
5. A method for constructing a secure orthogonal frequency hopping pattern according to claim 4, characterized in that: Before the frequency mapping algorithm in step S2 is executed, the following step S20 is performed: S20, first determine the total number M of available frequency points of the frequency hopping pattern to be generated and the number of hops N required to be generated, and initialize the corresponding result matrix of M rows and N columns, and then start mapping and generating frequency points hop by hop from n=0.
6. A method for constructing a secure orthogonal frequency hopping pattern according to claim 4, characterized in that: The step S22 specifically includes the following steps: S221, initialize the ordered set A={0,1,…,M-1}, set the ordered set B to be an empty set initially, and record the number of elements in the set A m=M; S222, extracting ceil(log2(m)) bits of data from the random drive sequence at time n, where ceil() is a round-up operation to convert the binary representation into a decimal number t; the data taken from the random drive sequence is not reused, and the next time data is taken, data is taken from the last bit taken this time; S223, if the value of t is greater than or equal to the number of elements m in the current set A, discard the value of t obtained this time and return to step S222; if t is less than the number of elements m in the current set A, proceed to S224; S224. According to the indication of t, the tth remaining element in the current set A is taken out and put into the end of the set B, and the taken out element is deleted from the set A; at this time, the number m of remaining elements in the set A will be reduced by 1; S225. If there are still elements in set A at this time, then go back to S222 and continue to take out elements from set A and put them into set B; if the elements in set A have been taken out at this time, then there must be M complete elements in set B. At this time, these M elements are arranged in a column in the order of their addition to set B to form the nth column of the result matrix; let n = n + 1; S226. If the result matrix has not been filled at this time, that is, n < N, then go back to step S221 to repeat the construction of other column data; If the result matrix has been filled at this time, that is, n = N, then perform the final frequency conversion on the result matrix, that is, convert each element k in the matrix to the frequency fk of the kth frequency point.
7. A method for constructing a secure orthogonal frequency hopping pattern according to claim 1, characterized in that: Step S3 specifically includes the following steps: The user frequency point allocation selects a specific frequency hopping sequence from the frequency hopping pattern according to the user's ID as the frequency point information used for transmitting or receiving wireless signals; When the number of users is less than the number of available frequency points, the tolerance of synchronization error is achieved through user frequency point allocation. On the premise of maintaining the synchronization orthogonality of the frequency hopping sequences, the low collision area of the frequency hopping sequences is expanded; multiple frequency hopping sequences in the frequency hopping pattern are allocated to each user, and each user uses the frequency points at the same moment in the frequency hopping sequence in a fixed order.
Citation Information
Patent Citations
Method for reducing synchronization time of frequency-hopping communication
CN105897303A
Construction method of frequency hopping sequence set without collision zone
CN115833871A
Frequency-hopping pattern generation in frequency-hopping telecommunication net
CN1780164A
Hopping pattern generation method in frequency hopping system for intermittent transmission
US6728293B1
Pattern division multiple access communication system based on optimal frequency hopping pattern
WO2023082960A1