Satellite security communication method of McEliece cryptosystem based on QC-LDPC (Quasi-Cyclic Low Density Parity Check)
By adopting the McEliece cryptographic system based on QC-LDPC in satellite communication, combining the random difference and pseudo-random number generator methods, the information data security and system complexity problems in satellite communication are solved, and high security and reliability are achieved communication, resist quantum attacks and increase transmission rate.
Patent Information
- Application Number
- CN202411199298.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-29
- Publication Date
- 2025-01-14
- Estimated Expiration
- 2044-08-29
AI Technical Summary
In satellite communication scenarios, the explosive growth of equipment has led to information data security issues. The cascading design of existing encryption and error correction modules has increased system complexity, and the existing public key cryptography algorithms are facing the risk of quantum attacks, and the key size is large and Low transmission rate.
Using the McEliece cryptographic system based on QC-LDPC, the generation matrix and verification matrix of QC-LDPC code are constructed through a random difference method, and combined with the pseudo-random number generator and linear feedback shift register to generate error vectors to realize fusion encryption and error correction Satellite secure communication, using sparse quasi-cyclic permutation matrix to reduce key length and storage space, and improve transmission rate.
It realizes high security and reliability for satellite communication, resists quantum computing attacks, reduces key size and storage requirements, improves transmission rates, and ensures the security and reliability of the communication process.
Smart Images

Figure CN119316115A_ABST
Abstract
Description
Technical Field
[0001] The invention relates to a channel coding and cryptography method, in particular to a satellite security communication method based on a McEliece cryptographic system of QC-LDPC, belonging to the technical field of information security. Background Art
[0002] With the development of society, people's demand for data protection is increasing. In the information age, more and more information is transmitted on public channels, including sensitive information such as credit card information, personal privacy and even military intelligence. Signals transmitted on public channels can be easily obtained by third parties, so it is crucial to protect the sensitive information carried in the signal so that it cannot be obtained by illegal users.
[0003] The technology used to protect data belongs to the field of cryptography. Encryption and decryption modules are usually added to the communication system to ensure the security of the communication process. However, the addition of encryption and decryption modules increases the complexity of the system to a certain extent. Encryption and decryption in cryptography can be regarded as a coding process. Coding theory includes three basic applications - compression, confidentiality and error correction. Error correction coding is used in actual communication systems to ensure the reliable transmission of information. Therefore, in order to ensure the reliability and security of the communication process, confidentiality coding and error correction coding processes must exist at the same time. In this case, whether it is possible to reduce the complexity of the system by jointly designing confidentiality and error correction modules has become a question worth studying.
[0004] LDPC code is the most excellent error correction coding method at present, and McEliece encryption is an encryption method based on error correction code. Researching the McEliece cryptographic system based on LDPC code and designing a simplified communication system that can provide excellent error correction capability and certain confidentiality capability has important research significance in the information age where information security is becoming increasingly important. Summary of the invention
[0005] In order to solve the information data security problem caused by the explosive growth of the number of devices in satellite communication scenarios, the purpose of the present invention is to provide a satellite security communication method based on the McEliece cryptographic system of QC-LDPC, using the error correction coding QC-LDPC code with excellent performance and the McEliece cryptographic system to achieve satellite security communication with integrated encryption and error correction. Different from the traditional encryption and error correction cascade to ensure the security and reliability of the communication process, the present invention jointly considers the encryption and error correction coding parts in the communication process, and ensures the security and reliability of the communication at the same time.
[0006] The object of the present invention is achieved through the following technical solutions.
[0007] The invention discloses a satellite secure communication method based on a McEliece cryptographic system of QC-LDPC. The invention analyzes the characteristics of the QC-LDPC code for the McEliece cryptographic system based on the QC-LDPC code, and constructs a generator matrix G and a check matrix H of the QC-LDPC code based on a random difference family method. Based on the McEliece cryptographic system, a key for satellite secure communication is constructed. A satellite secure communication method integrating encryption and error correction is used to realize encryption and error correction cascade for plaintext, so as to ensure the security and reliability in the communication process at the same time. A pseudo-random number generator linear feedback shift register is used to generate a pseudo-random sequence, and an error vector is generated according to the pseudo-random sequence and the check matrix to obtain a transmission message for satellite secure communication. A modulation signal is generated by BPSK modulation. After the modulation signal is transmitted through an AWGN channel, a receiving signal for a satellite secure communication receiving end is generated. Decryption and decoding are performed at the receiving end to realize the satellite secure communication of the entire McEliece cryptographic system based on QC-LDPC.
[0008] The satellite secure communication method based on the McEliece cryptographic system of QC-LDPC disclosed in the present invention comprises the following steps:
[0009] Step 1: Generate random numbers based on the random difference family method, construct an extended difference family in which the non-zero elements in F are repeated at most λ times, use the extended difference family as the basic block B of the QC-LDPC code generator matrix G and check matrix H, obtain the QC-LDPC code generator matrix G and check matrix H based on the basic block B, and determine the code length of the generator matrix G and check matrix H.
[0010] The check matrix of QC-LDPC code has the following form, where H i is a circulant matrix
[0011]
[0012] Define B as the basic block of the check matrix, B i Contains H i The first row of the matrix contains all non-zero elements, and the basic block B of the check matrix is expressed as
[0013]
[0014] The generator matrix corresponding to the check matrix of the QC-LDPC code is
[0015]
[0016] Step 2: Based on the McEliece cryptographic system, according to the code length of the generator matrix G and the check matrix H obtained in step 1, the value of the element p of the quasi-cyclic permutation matrix is determined. According to the value of the element p, the size of the cyclic sub-block used to generate the quasi-cyclic permutation matrix P is given, and the quasi-cyclic permutation matrix P is constructed as the key for satellite secure communication.
[0017] The size of the matrix P depends on the code length. If the code length is n, then P is a matrix of size n×n. The matrix P cannot be selected arbitrarily, but should meet the preset storage space requirements. Preferably, the length of the encoded codeword is more than 1000. If P is selected arbitrarily, the storage space needs to exceed 1000000 bits; at the same time, P will affect the decoding process. If P is not sparse, it will affect the decoding process, resulting in the legitimate recipient not being able to decode smoothly.
[0018] The quasi-circular permutation matrix P has the form
[0019]
[0020] Where P ij It is a q×q circulant matrix, that is, P is a quasi-circulant matrix, r0=n / q. Choosing P as a quasi-circulant matrix can reduce the key length and save storage space. At the same time, P is required to be a sparse matrix, otherwise it cannot be decoded normally.
[0021] Since P is a sparse matrix, the selection matrix P has the following form. That is, the circulant matrix P that constitutes P ij Most of them are 0 matrices.
[0022]
[0023] When the matrix P is a permutation matrix, it will bring convenience in decoding, and will not basically reduce the security of the McEliece cryptosystem. Therefore, the matrix P is preferably a quasi-circular permutation matrix.
[0024] When P is chosen as a quasi-circulant permutation matrix, we have
[0025] P -1 =P T
[0026] Therefore, the P used for encoding is defined -1 It is also a sparse matrix, which can reduce the encoding complexity.
[0027] Step 3: According to the QC-LDPC code generator matrix G and check matrix H obtained in step 1, encode the communication plaintext with a segment length of k to obtain a coded codeword c with a length of n.
[0028] Step 4: Based on the key P for satellite secure communication obtained in step 2, calculate the inverse matrix P of the P matrix -1 According to the inverse matrix P -1 The codeword c obtained in step 3 is encrypted to obtain the encrypted ciphertext.
[0029] The ciphertext is represented as
[0030] (mG+e p )·P -1
[0031] Where m is the plain text.
[0032] Step 5: Generate a pseudo-random sequence s using a pseudo-random number generator, and generate an error vector e based on the pseudo-random sequence s and the check matrix H obtained in step 1 p , according to the error vector e p The encrypted ciphertext generated in step 4 is used to obtain the sending message of satellite secure communication.
[0033] The error vector is generated by a pseudo-random number generator. On the one hand, it is considered that the hardware random number generator is used to generate a random number generator close to a true random number through a physical process, which is complex to implement. On the other hand, the error vector that is completely consistent with the encryption process needs to be generated during the decryption process. Taking all the above into consideration, it is a good choice to use a pseudo-random number generator that meets the predetermined requirements to generate the error vector. At the same time, in order to ensure security, the probability of 0 and 1 appearing in the error vector must be basically equal.
[0034] A pseudo-random number generator, also known as a deterministic random number generator, refers to a deterministic algorithm that starts with an initial value and continuously generates a sequence that meets certain requirements. The initial value here is called the seed of the pseudo-random number generator. Since the algorithm is deterministic, once the seed is given, the generated sequence can be determined. Because of this, the decryption process can generate an error vector that is exactly the same as the encryption process.
[0035] There are many algorithms for generating pseudo-random sequences, but considering the complexity of implementation, a linear feedback shift register is used here to generate error vectors. Although the linear feedback shift register can generate pseudo-random sequences with a very long period, there are still some attack methods against the linear feedback shift register. Therefore, e p does not directly correspond to the output of the linear feedback shift register, e p Expressed as
[0036] e p =s·H
[0037] Where s represents the pseudo-random sequence output by the linear feedback shift register, H represents the check matrix of the LDPC code, and e pis the error vector in the cryptographic system. s is a pseudo-random sequence of length m, m = nk, where n is the encoded code length and k is the information length. The seed length provided to the linear feedback shift register is at most m, and the seed provided to the linear feedback shift register cannot be all 0.
[0038] The linear feedback shift register is represented by the corresponding feedback polynomial. The feedback polynomial q(x) is expressed as
[0039]
[0040] where c l are the coefficients of the feedback polynomial, c L = 1. Given L, by choosing the coefficient c l This makes the cycle of the linear feedback shift register reach 2 L -1. If the linear feedback shift register {b i} are all 0, and the output is always 0, so it cannot jump to the next state, and the cycle of the linear feedback shift register reaches 2 L -1 means that the linear feedback shift register has gone through all states except the all-zero state.
[0041] Step 6: Generate a modulated signal using BPSK modulation according to the transmission message generated in step 5. After the modulated signal is transmitted through the AWGN channel, a receiving signal for the satellite safety communication receiving end is generated.
[0042] The channel is an additive white Gaussian noise channel. The AWGN channel means that the channel noise satisfies the Gaussian distribution and is superimposed on the actual signal in an additive manner. The modulation method uses BPSK modulation. At this time, the received signal at the receiving end is expressed as
[0043] r=1-2(mG+e p ) -1 +e'
[0044] Where e' represents the channel noise introduced during signal transmission.
[0045] Step 7: Use the check matrix H obtained in step 1 and the key P obtained in step 4 to decrypt and decode the received signal obtained in step 6. Use the error correction performance of the QC-LDPC code and the quasi-cyclic characteristics of the quasi-cyclic permutation matrix P to achieve decryption and decoding of satellite secure communications, that is, the McEliece cryptographic system based on QC-LDPC achieves satellite secure communications.
[0046] Beneficial effects:
[0047] 1. Most of the public key cryptographic algorithms currently used, such as RSA and ECC, are facing the risk of quantum attacks. The satellite security communication method of the McEliece cryptographic system based on QC-LDPC disclosed in the present invention uses a random difference family method to generate a basic block of a generator matrix and a check matrix, and then uses the basic block to generate a generator matrix and a check matrix, and finally generates a key and a transmission message for satellite security communication. The generated transmission message uses a McEliece-based cryptographic method and a QC-LDPC encoding method, which can resist attacks on satellite security communications by quantum computing methods and has high security.
[0048] 2. The existing McEliece public key cryptographic system adopts Goppa code, and the key size is large, and the system transmission rate is low, which affects the application of the system. The satellite security communication method of the McEliece cryptographic system based on QC-LDPC disclosed in the present invention uses the QC-LDPC encoding and decoding method, that is, the check matrix has a quasi-cyclic characteristic. In the decoding process, only the first row of data of each cyclic sub-block needs to be stored, which can significantly reduce the size of the McEliece key and improve the transmission rate of satellite security communication.
[0049] 3. The invention discloses a satellite secure communication method based on the McEliece cryptographic system of QC-LDPC, which uses a pseudo-random number generator to generate an error vector, uses a linear feedback shift register to generate a pseudo-random sequence with a long period, and then uses the random sequence and a check matrix to generate an error vector for satellite secure communication. This method can generate a random number close to a true random number, and can generate an error vector that is completely consistent with the encryption process during the decryption process. BRIEF DESCRIPTION OF THE DRAWINGS
[0050] In order to more clearly illustrate the technical solution of the present invention, the following is a brief introduction to the drawings required for use in the present invention. The drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can also be obtained based on these drawings without creative work.
[0051] Figure 1 Diagram of the McEliece cryptosystem based on QC-LDPC.
[0052] Figure 2 Code length 2560, LDPC code rate R c =4 / 5, the number of decoder iterations is 5 / 6 / 7 times respectively, and the bit error rate curve diagram of the present invention.
[0053] Figure 3 The overall flow chart of the present invention "Satellite secure communication method based on McEliece cryptographic system of QC-LDPC". DETAILED DESCRIPTION
[0054] Embodiment 1:
[0055] like Figure 1 As shown, the satellite secure communication method based on the McEliece cryptographic system of QC-LDPC disclosed in this embodiment has the following specific implementation steps:
[0056] Step 1: Generate random numbers based on the random difference family method, construct an extended difference family in which the non-zero elements in F are repeated at most λ times, use the extended difference family as the basic block B of the QC-LDPC code generator matrix G and check matrix H, obtain the QC-LDPC code generator matrix G and check matrix H based on the basic block B, and determine the code length of the generator matrix G and check matrix H.
[0057] The check matrix of QC-LDPC code has the following form, where H i is a circulant matrix
[0058]
[0059] Among them, H i is a circulant matrix of size p×p. n0=5 is selected to construct a design example with a code rate of 4 / 5.
[0060] Table QC-LDPC code design specific parameters
[0061] Code length Bitrate Information bit length 2560 4 / 5 2048
[0062] Step 2: Based on the McEliece cryptographic system, according to the code length of 2560 of the generator matrix G and the check matrix H obtained in step 1, determine the value of the element p of the quasi-cyclic permutation matrix. The value of the element p is about 400. The length of p is selected as a power of 2. The quasi-cyclic permutation matrix P is constructed as the key for satellite secure communication.
[0063] Given the code length, the size of the matrix P is determined accordingly. P is selected to be a quasi-circular permutation matrix of the following form, where P ij is a circulant matrix of size p×p.
[0064]
[0065] Therefore, the design of the matrix P can be completed by simply determining the value of p. The choice of p is limited by It must be large enough to prevent enumeration. p can be chosen to be a power of 2. Based on the above considerations, the matrix P is designed as shown in the table.
[0066] Table Matrix P Design Example
[0067]
[0068] Step 3: According to the QC-LDPC code generator matrix G and check matrix H obtained in step 1, encode the communication plaintext with a segment length of k to obtain a coded codeword c with a length of n.
[0069] Step 4: Based on the key P for satellite secure communication obtained in step 2, calculate the inverse matrix P of the P matrix -1 According to the inverse matrix P -1 The codeword c obtained in step 3 is encrypted to obtain the encrypted ciphertext.
[0070] The ciphertext is represented as
[0071] (mG+e p )·P -1
[0072] Where m is the plain text.
[0073] Step 5: Generate a pseudo-random sequence s using a pseudo-random number generator, and generate an error vector e based on the pseudo-random sequence s and the check matrix H obtained in step 1 p , according to the error vector e p The encrypted ciphertext generated in step 4 is used to obtain the sending message of satellite secure communication.
[0074] The linear feedback shift register can be given by its feedback polynomial, which can be expressed as
[0075]
[0076] To complete the specific design of the linear feedback shift register, it is necessary to give the length L of the linear feedback shift register, the coefficient {c l}, and provide the seed of the pseudo-random number generator as the register initial value of the linear feedback shift register. The length L of the linear feedback shift register is at most the length of the H in the check matrix. i The length is p, here L = p. We can find the period of 2 by looking up the table. L The tap coefficient of the linear feedback shift register {c l}. The initial value of the linear feedback shift register can be a randomly generated non-all-zero sequence.
[0077] Table Linear Feedback Shift Register Design Example
[0078]
[0079] The specific design of the linear feedback shift register is shown in the table. Here, the tap coefficient {c l} have only 4 values of 1, so the linear feedback shift register coefficients in the table are sparsely stored, indicating that {c l}. So the feedback polynomial is
[0080] q(x)=x 511 +x 509 +x 506 +x 503
[0081] By using a given feedback polynomial and a randomly generated initial value of a linear feedback shift register, a linear feedback shift register that meets the requirements can be obtained.
[0082] Step 6: Generate a modulated signal using BPSK modulation according to the transmission message generated in step 5. After the modulated signal is transmitted through the AWGN channel, a receiving signal for the satellite safety communication receiving end is generated.
[0083] The channel is an additive white Gaussian noise channel. The AWGN channel means that the channel noise satisfies the Gaussian distribution and is superimposed on the actual signal in an additive manner. The modulation method uses BPSK modulation. At this time, the received signal at the receiving end is expressed as
[0084] r=1-2(mG+e p ) -1 +e'
[0085] Where e' represents the channel noise introduced during signal transmission.
[0086] Step 7: Use the check matrix H obtained in step 1 and the key P obtained in step 4 to decrypt and decode the received signal obtained in step 6. Use the error correction performance of the QC-LDPC code and the quasi-cyclic characteristics of the quasi-cyclic permutation matrix P to achieve decryption and decoding of satellite secure communications, that is, the McEliece cryptographic system based on QC-LDPC achieves satellite secure communications.
[0087] exist Figure 2 In the simulation, the parameters are set as follows: code length 2560, LDPC code rate R c =4 / 5, the decoder iteration times are 4 / 5 / 6 respectively. It can be seen from the images that the present invention has stronger error correction capability and lower complexity.
[0088] The above describes the main contents of the satellite secure communication method based on the McEliece cryptographic system of QC-LDPC. Through the above simulation experiments, the error correction performance of the satellite secure communication method based on the McEliece cryptographic system of QC-LDPC can be evaluated and compared.
[0089] The specific description above further illustrates the purpose, technical solutions and beneficial effects of the invention in detail. It should be understood that the above is only a specific embodiment of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present invention should be included in the scope of protection of the present invention.
Claims
1. A satellite secure communication method based on the McEliece cryptographic system of QC-LDPC, characterized in that: The following steps are included: Step 1: Generate random numbers based on the random difference family method, construct an extended difference family in which the non-zero elements in F are repeated at most λ times, use the extended difference family as the basic block B of the QC-LDPC code generator matrix G and check matrix H, obtain the QC-LDPC code generator matrix G and check matrix H based on the basic block B, and determine the code length of the generator matrix G and check matrix H; Step 2: Based on the McEliece cryptographic system, according to the code length of the generator matrix G and the check matrix H obtained in step 1, the value of the element p of the quasi-cyclic permutation matrix is determined, and according to the value of the element p, the size of the cyclic sub-block used to generate the quasi-cyclic permutation matrix P is given, and the quasi-cyclic permutation matrix P is constructed as the key for satellite secure communication; Step 3: According to the QC-LDPC code generator matrix G and check matrix H obtained in step 1, encode the communication plaintext with a segment length of k to obtain the encoded codeword c with a length of n. Step 4: Based on the key P for satellite secure communication obtained in step 2, calculate the inverse matrix P of the P matrix -1 ; According to the inverse matrix P -1 Encrypt the codeword c obtained in step 3 to obtain the encrypted ciphertext; Step 5: Generate a pseudo-random sequence s using a pseudo-random number generator, and generate an error vector e based on the pseudo-random sequence s and the check matrix H obtained in step 1 p , according to the error vector e p The encrypted ciphertext generated in step 4 is used to obtain the sending message of satellite secure communication; Step 6: According to the transmission message generated in step 5, a modulation signal is generated by using BPSK modulation; after the modulation signal is transmitted through the AWGN channel, a receiving signal for the satellite safety communication receiving end is generated; Step 7: Use the check matrix H obtained in step 1 and the key P obtained in step 4 to decrypt and decode the received signal obtained in step 6. Use the error correction performance of the QC-LDPC code and the quasi-cyclic characteristics of the quasi-cyclic permutation matrix P to achieve decryption and decoding of satellite secure communications, that is, the McEliece cryptographic system based on QC-LDPC achieves satellite secure communications.
2. The satellite secure communication method based on the McEliece cryptographic system of QC-LDPC as claimed in claim 1, characterized in that: In step one, The check matrix of QC-LDPC code has the following form, where H i is a circulant matrix Define B as the basic block of the check matrix, B i Contains H i The first row of the matrix contains all non-zero elements, and the basic block B of the check matrix is expressed as The generator matrix corresponding to the check matrix of the QC-LDPC code is 。 3. The satellite secure communication method based on the McEliece cryptographic system of QC-LDPC as claimed in claim 2, characterized in that: In step 2, The size of the matrix P depends on the code length. If the code length is n, then P is a matrix of size n×n. The matrix P cannot be selected arbitrarily, but should meet the preset storage space requirements, and the matrix P should be a sparse matrix. The quasi-circular permutation matrix P has the form Where P ij is a q×q circulant matrix, that is, P is a quasi-circulant matrix, r0=n / q. Choosing P as a quasi-circulant matrix can reduce the key length and save storage space; at the same time, P is required to be a sparse matrix, otherwise it cannot be decoded normally. Since P is a sparse matrix, the selection matrix P has the following form; that is, the circulant matrix P that constitutes P ij Most of the matrix is 0 。 4. The satellite secure communication method based on the McEliece cryptographic system of QC-LDPC as claimed in claim 3, characterized in that: In step 2, When the matrix P is a permutation matrix, the matrix P is selected as a quasi-circular permutation matrix; When P is chosen as a quasi-circulant permutation matrix, we have P- 1 =P T P defined for encoding -1 It is also a sparse matrix, which can reduce the encoding complexity.
5. The satellite secure communication method based on the McEliece cryptographic system of QC-LDPC as claimed in claim 3 or 4, characterized in that: In step four, The ciphertext is represented as (mG+e p )·P -1 Among them, m represents plain text.
6. The satellite secure communication method based on the McEliece cryptographic system of QC-LDPC as claimed in claim 5, characterized in that: In step five, The error vector is generated by a pseudo-random number generator. At the same time, the probability of 0 and 1 appearing in the error vector must be basically equal; e p does not directly correspond to the output of the linear feedback shift register, e p Represented as e p =s·H Where s represents the pseudo-random sequence output by the linear feedback shift register, H represents the check matrix of the LDPC code, and e p is the error vector in the cryptographic system; s is a pseudo-random sequence of length m, m = nk, where n is the encoded code length and k is the information length; the seed length provided to the linear feedback shift register is at most m, and the seed provided to the linear feedback shift register cannot be all 0; The linear feedback shift register is represented by the corresponding feedback polynomial. The feedback polynomial q(x) is expressed as where c l are the coefficients of the feedback polynomial, c L =1; given L, by selecting the coefficient c l This makes the cycle of the linear feedback shift register reach 2 L -1; if the linear feedback shift register register {b i } are all 0, and the output is always 0, so it cannot jump to the next state, and the cycle of the linear feedback shift register reaches 2 L -1 means that the linear feedback shift register has gone through all states except the all-zero state.
7. The satellite secure communication method based on the McEliece cryptographic system of QC-LDPC as claimed in claim 6, characterized in that: In step six, The channel is an additive white Gaussian noise channel. The AWGN channel means that the channel noise satisfies the Gaussian distribution and is superimposed on the actual signal in an additive manner. The modulation method uses BPSK modulation. At this time, the received signal at the receiving end is expressed as r=1-2(mG+e p )P -1 +e′ Where e′ represents the channel noise introduced during signal transmission.
Citation Information
Patent Citations
Safe and reliable transmission method based on LDPC
CN107786327A
McEliece system encryption and decryption method based on QC-LDPC code
CN111756727A
McEliece system encryption and decryption method based on sliding window QC-LDPC code
CN113132100A
Sparse check matrix parameter estimation method and device for satellite communication signal
CN116232340A
Method for decoding an encrypted message of an asymmetric cryptographic system
DE102018200617A1