Error correction and encryption fused dynamic coding structure and low-complexity coding method and device
By introducing double-diagonal matrix structure and dynamic sparse random check matrix block processing in the dynamic coding of error correction encryption fusion, and using the grouping inversion algorithm, the problem of high computational complexity in the existing technology is solved, significantly improving the coding efficiency.
Patent Information
- Application Number
- CN202411497486.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-24
- Publication Date
- 2025-02-21
- Estimated Expiration
- 2044-10-24
AI Technical Summary
The existing channel encoding method of error correction encryption fusion has high computational complexity under the dynamic change scheme of encoding matrix, resulting in low encoding efficiency, and becoming a bottleneck in the development of dynamic matrix encoding.
The double diagonal matrix structure and dynamic sparse random check matrix blocking processing method are adopted, combined with the grouping inversion algorithm, which reduces the complexity of obtaining the encoding matrix and the computational complexity in the encoding process.
It significantly improves the encoding efficiency, reduces the computational complexity, and solves the problems of encoding time and high computational complexity in the prior art.
Smart Images

Figure CN119496516A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of communication information security, and in particular to a dynamic coding structure integrating error correction and encryption, and a low-complexity coding method and device. Background Art
[0002] With the development of wireless communication technology, in order to ensure the reliability and security of data transmission at the same time, the coding technology of error correction and encryption fusion has been developed to a certain extent in modern communication technology. This technology realizes the combination of encryption and error correction at the physical layer. A dynamically changing channel coding matrix is used in the communication system. The check matrices of the sender and the receiver are synchronously and dynamically updated. The eavesdropper can only passively track these changes. Once a decoding error occurs, it will not be able to continue tracking, thereby ensuring the security of communication. At the same time, an error correction code with efficient error correction performance is used to further ensure the reliability of information transmission. However, the existing channel coding method of error correction and encryption fusion generates a large amount of dynamic check matrices under the scheme of dynamic change of the coding matrix. Each encoding requires a separate inversion of the new dynamic check matrix to obtain the coding matrix. In the encoding process, the traditional Gaussian elimination method is used for matrix inversion. The matrix inversion operation is huge in scale, the encoding is time-consuming, and has a high computational complexity, which limits the efficiency of the encoding and becomes the development bottleneck of dynamic matrix coding of error correction and encryption fusion. Summary of the invention
[0003] The embodiments of the present application provide a dynamic coding structure and a low-complexity coding method and device that integrates error correction and encryption. When constructing a coding matrix, a dual diagonal matrix structure and a dynamic sparse random check matrix block processing method are combined. During encoding, a group inversion algorithm is used, which reduces the complexity of obtaining the coding matrix and reduces the computational complexity of encoding using the coding matrix, thereby greatly improving the coding efficiency.
[0004] On the one hand, the embodiments of the present application provide a dynamic coding structure and a low-complexity coding method integrating error correction and encryption, including:
[0005] Continue to receive the plaintext sequence {m0, m1, m2, ...} sent by the source, and for each plaintext m i Construct the corresponding dynamic sparse random check matrix H i , where i = 0, 1, 2, ...;
[0006] For each H i Perform matrix block processing to obtain the H i The corresponding multiple sub-matrices and a double diagonal matrix T i , according to T i The inverse matrix and the submatrix calculate the intermediate matrix φ i ;
[0007] Each time we obtain K intermediate matrices φ i Then, the group inversion algorithm is used to calculate each φ i The corresponding inverse matrix Among them, K ≥ 2;
[0008] For each of the information plaintext m i , based on the corresponding Perform dynamic matrix encoding to obtain m i The corresponding sent ciphertext P i .
[0009] On the other hand, the embodiment of the present application also provides a dynamic coding structure and a low-complexity coding device integrating error correction and encryption, including a memory and a processor;
[0010] The memory is used to store the dynamic coding structure and low-complexity coding program of the error correction and encryption fusion;
[0011] The processor is used to read the dynamic coding structure and low-complexity coding program of the error correction encryption fusion, and perform the dynamic coding structure and low-complexity coding method of the error correction encryption fusion as described in the above embodiment.
[0012] Compared with the related art, the embodiment of the present application provides a dynamic coding matrix construction and low-complexity coding method and device that integrates error correction and encryption. When constructing the coding matrix, a dual diagonal matrix structure and a dynamic sparse random check matrix block processing method are combined. During encoding, a group inversion algorithm is used, which reduces the complexity of obtaining the coding matrix, and at the same time reduces the computational complexity of encoding using the coding matrix, thereby greatly improving the coding efficiency.
[0013] Other features and advantages of the present application will be described in the following description, and partly become apparent from the description, or be understood by implementing the present application. Other advantages of the present application can be realized and obtained by the schemes described in the description and the drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0014] The accompanying drawings are used to provide an understanding of the technical solution of the present application and constitute a part of the specification. Together with the embodiments of the present application, they are used to explain the technical solution of the present application and do not constitute a limitation on the technical solution of the present application.
[0015] Figure 1 A flowchart of a dynamic coding structure and a low-complexity coding method for error correction and encryption fusion according to an embodiment of the present application;
[0016] Figure 2 The effect and change rule diagram of reducing the computational complexity of the group inversion algorithm of the specific example 2 of this application;
[0017] Figure 3 A schematic diagram of a dynamic coding structure and a low-complexity coding device integrating error correction and encryption according to an embodiment of the present application. DETAILED DESCRIPTION
[0018] The present application describes multiple embodiments, but the description is exemplary rather than restrictive, and it is obvious to those skilled in the art that there may be more embodiments and implementations within the scope of the embodiments described in the present application. Although many possible feature combinations are shown in the drawings and discussed in the specific embodiments, many other combinations of the disclosed features are also possible. Unless specifically limited, any feature or element of any embodiment may be used in combination with any other feature or element in any other embodiment, or may replace any other feature or element in any other embodiment.
[0019] The present application includes and contemplates combinations of features and elements known to those of ordinary skill in the art. The embodiments, features and elements disclosed in the present application may also be combined with any conventional features or elements to form a unique invention scheme. Any features or elements of any embodiment may also be combined with features or elements from other invention schemes to form another unique invention scheme. Therefore, it should be understood that any feature shown and / or discussed in the present application may be implemented individually or in any appropriate combination. Therefore, except for the limitations made according to the attached claims and their equivalents, the embodiments are not subject to other restrictions. In addition, various modifications and changes may be made within the scope of protection of the attached claims.
[0020] In addition, when describing representative embodiments, the specification may have presented the method and / or process as a specific sequence of steps. However, to the extent that the method or process does not rely on the specific order of the steps described herein, the method or process should not be limited to the steps of the specific order described. As will be understood by those of ordinary skill in the art, other sequences of steps are also possible. Therefore, the specific sequence of the steps set forth in the specification should not be interpreted as a limitation to the claims. In addition, the claims for the method and / or process should not be limited to the steps of performing them in the order written, and those skilled in the art can easily understand that these sequences can be changed and still remain within the spirit and scope of the embodiments of the present application.
[0021] The embodiment of the present application provides a dynamic coding structure and a low-complexity coding method for error correction and encryption fusion, including steps S100-S400, such as Figure 1 As shown:
[0022] S100: Continue to receive the plaintext sequence {m0, m1, m2, ...} sent by the source, and for each plaintext mi Construct the corresponding dynamic sparse random check matrix H i , where i = 0, 1, 2, ...;
[0023] S200: For each H i Perform matrix block processing to obtain the H i The corresponding multiple sub-matrices and a double diagonal matrix T i , according to T i The inverse matrix and the submatrix calculate the intermediate matrix φ i ;
[0024] S300: Obtain K intermediate matrices φ i Then, the group inversion algorithm is used to calculate each φ i The corresponding inverse matrix Among them, K ≥ 2;
[0025] S400: For each of the information plaintext m i , based on the corresponding Perform dynamic matrix encoding to obtain m i The corresponding sent ciphertext P i .
[0026] In this embodiment, each information plaintext m is i Execute the corresponding steps S100, S200 and S400, and step S300 is corresponding to K information plaintexts m i overall steps.
[0027] In this embodiment, in step S200, for each H i Perform matrix block processing, that is, each H i Divide into corresponding sub-matrices and a double diagonal matrix T i , for every bidiagonal matrix T i Find the inverse and get the corresponding T i -1 , and according to T i -1 and H i The corresponding multiple sub-matrices calculate the intermediate matrix φ i , due to T i is a bidiagonal matrix, T i The inverse calculation is simple and has low time complexity, which greatly shortens the calculation time of executing step S200, simplifies the dynamic matrix coding, and shortens the coding time.
[0028] In this embodiment, after executing steps S100 and S200 respectively on the information plaintext, each information plaintext m is obtained. i The corresponding dynamic sparse random check matrix Hi , multiple sub-matrices, T i 、T i -1 and the intermediate matrix φ i ; Each time K intermediate matrices φ are obtained i After that, based on K information plaintext m i One-to-one corresponding intermediate matrix φ i Execute step S300, that is, K information plaintext m i As a plaintext group, the corresponding intermediate matrix set {φ0,φ1,…,φ K-1}Execute step S300.
[0029] In this embodiment, the group inversion algorithm of step S300 is a low-complexity algorithm for solving the inverse matrix. By constructing a matrix set, the high-complexity matrix inversion calculation is converted into a low-complexity matrix multiplication. i The corresponding K inversion calculations are converted into single matrix inversion and a series of matrix multiplication calculations, which reduces the average complexity of the K inversion calculations. That is, step S300 further reduces the complexity of dynamic matrix coding and shortens the coding time. After executing step S300, the inverse matrix set is obtained. That is, we get the K m in the plaintext group i One-to-one inverse matrix For each message plaintext m i , based on its corresponding inverse matrix Execute step S400 to perform dynamic matrix coding to obtain the corresponding sent ciphertext P i , send the ciphertext P i With the message plaintext m i One to one correspondence.
[0030] The dynamic coding structure and low-complexity coding method of the error correction and encryption fusion of this embodiment introduces a dual diagonal structure matrix into a dynamic check matrix, adopts a dynamic sparse random check matrix block processing method and a group inversion algorithm, reduces the complexity of the inversion operation of the dynamic check matrix, that is, reduces the complexity of obtaining the coding matrix, and significantly improves the coding efficiency.
[0031] In an exemplary embodiment, in step S100, "for each information plaintext m i Construct the corresponding dynamic sparse random check matrix H i "Before, the basis matrix H can be constructed based on the multi-dimensional external information transfer graph B,0 , where each of the information plaintext m i Corresponding to the basis matrix H B,0 are the same, construct the basis matrix H B,0 The steps S110-S140 may be included:
[0032] S110: Build M B Line M B The bidiagonal matrix B of the columns C , where B C The elements of the main diagonal and the diagonals above the main diagonal are all 1, and the other elements are 0;
[0033] S120: B C Located in the Mth B The element in the first column of the row and the element in the first column The elements of the rows are set to 1 to obtain a partial bidiagonal matrix B P ,in, Representatives of M B / 2 is the result obtained by rounding down;
[0034] S130: According to the obtained B P , based on the multidimensional external information transfer graph, the basis matrix H B,0 The minimum iterative decoding threshold is searched to obtain B I ;
[0035] S140: According to B I and B P Get the basis matrix H B,0 =[B I B P ], where H B,0 M B Row N B Matrix of columns.
[0036] In this embodiment, all information plaintext m i The corresponding basis matrix H B,0 are the same, the basis matrix H B,0 With a partially block-bidiagonal structure, the basis matrix H B,0 It consists of two matrices B I and B P , in order to reduce the coding complexity, B P M is a partially diagonal structure B Line M B The square matrix of columns, B I M B Row N B -M B Matrix of columns.
[0037] In this embodiment, B can be obtained based on a multi-dimensional external information transfer graph (EXIT, full name EXtrinsicInformation Transfer). IMultidimensional EXIT is a method for analyzing the convergence of iterative decoding algorithms. In step S130, it is used to analyze the basis matrix H B,0 The performance of the base matrix H can be obtained based on multidimensional EXIT. B,0 The matrix B with the smallest iterative decoding threshold I .
[0038] In this embodiment, the dual diagonal matrix B C M B Line M B A square matrix of columns, B C There are 2M B -1 element is 1, the rest are 0.
[0039] In this embodiment, when executing step S120, B C M B Set the element in the first column of the row to 1, and set B C In the first row The elements of the row are set to 1, Representatives of M B / 2 to round down, for example, when M B =8 o'clock When M B =7 o'clock After executing step S120, the partial bidiagonal matrix B is obtained. P , That is, in B C The first column of the P The first column has 3 elements 1, B P There are 2M in total B +1 element is 1, the other elements are 0.
[0040] In this embodiment, after obtaining B P Afterwards, the multidimensional EXIT method is used to analyze the basis matrix H B,0 The minimum iterative decoding threshold is searched to obtain B I , based on B P and B I Get the basis matrix
[0041] In an exemplary embodiment, the step S100 of “for each information plaintext m i Construct the corresponding dynamic sparse random check matrix H i " can include for each message plaintext m i Execute steps S150-S160:
[0042] S150: The basis matrix H B,0Perform L-1 structural expansions to obtain the expanded matrix H B,L-1 , where L ≥ 2;
[0043] S160: The expanded matrix H B,L-1 Perform a random expansion to obtain the plaintext m of the information i The corresponding dynamic sparse random check matrix H i .
[0044] In this embodiment, for each information plaintext m i Execute steps S150 and S160 to calculate the basis matrix H B,0 L expansions are performed, of which the first L-1 expansions are structured expansions and the last expansion is random expansion, L ≥ 2, that is, for the basis matrix H B,0 Perform at least one structured expansion and one random expansion to obtain a dynamic sparse random check matrix H i .
[0045] In this embodiment, a dynamic sparse random check matrix H corresponding to each information plaintext is obtained by structurally expanding and randomly expanding the base matrix with a partially block dual diagonal structure. i , integrating the dual diagonal structure into the dynamic sparse random check matrix H i In the design, the dynamic sparse random check matrix has a low coding complexity, the size of the matrix to be inverted is reduced, and the coding complexity is reduced.
[0046] In an exemplary embodiment, step S150 may include:
[0047] The structured expansion is performed cyclically L-1 times, and the l-th structured expansion includes steps S151-S152, where l=1, 2, ... L-1:
[0048] S151: Matrix H before expansion B,l-1 Every non-zero element E in n Use the predetermined optimization algorithm to obtain the structured cyclic permutation matrix CPM corresponding to this structured expansion ln , where CPM ln F l Row F l The square matrix of columns, F l is the pre-set structural expansion factor for this structural expansion, n = 0, 1, 2, ... w l -1,w l H B,l-1 The number of non-zero elements in ;
[0049] S152: H B,l-1 Every non-zero element E nReplace with the corresponding CPM ln , H B,l-1 Replace every element 0 with F l Row F l The zero matrix of the column is obtained to obtain the expanded matrix H corresponding to this structured expansion B,l ;
[0050] In this embodiment, the matrix before the first structured expansion is the base matrix H B,0 The matrix before expansion adopted by the lth structured expansion is the matrix after expansion H obtained by the l-1th structured expansion B,l-1 The expanded matrix obtained by the L-1th structured expansion is the expanded matrix H B,L-1 .
[0051] In this embodiment, L-1 times of structured expansion are performed in sequence; in two adjacent structured expansions (the l-1th and lth structured expansions), the l-1th structured expansion is performed to obtain the expanded matrix H B,l-1 As the matrix before the expansion of the first structured expansion, when executing step S151, in order to avoid the occurrence of small trap sets and to ensure the performance of the matrix after expansion, the structured circulant permutation matrix CPM is obtained through a predetermined optimization algorithm. ln ; Structured expansion and structured expansion factor F l One-to-one correspondence, the F used in any two structured expansions l Can be the same or different.
[0052] In this embodiment, the predetermined optimization algorithm includes a progressive edge growth algorithm, etc. The above examples of optimization algorithms are illustrative descriptions and are not intended to limit the present application, so they will not be described one by one.
[0053] In an exemplary embodiment, step S160 may include steps S161-S162:
[0054] S161: Get H B,L-1 Every non-zero element E j The corresponding random circulant permutation matrix CPM Lj , where CPM Lj F L Row F L The square matrix of columns, F L is a pre-set random expansion factor, j = 0, 1, 2, ... w L -1,w L H B,L-1 The number of non-zero elements in ;
[0055] S162: H B,L-1 Every non-zero element E jReplace with the corresponding CPM Lj , H B,L-1 Replace each element 0 with F L Row F L The dynamic sparse random check matrix H is obtained by i .
[0056] In this embodiment, after performing random expansion, the dynamic sparse random check matrix H is obtained. i , whose number of rows is M B F (L) , the number of columns N is N B F (L) , where F (L) is L-1 structured expansion factors F l and a random expansion factor F L The product of
[0057] In an exemplary embodiment, step S161 may include steps S1611-S1614:
[0058] S1611: Generates a pseudo-random number generator including w L A binary vector r i,j The pseudo-random vector r i ,in, Each r i,j The length of log2F L , r i The length of w L log2 F L , r i,j With non-zero elements E j One to one correspondence;
[0059] For each E j Execute steps S1612-S1614:
[0060] S1612: E j The corresponding binary vector r i,j Convert to decimal value D i,j ;
[0061] S1613: CPM Lj The first row of D i,j Set the elements of the column to 1 and the other elements of the first row to 0;
[0062] S1614: Execute F L -1 time to get CPM from the following steps Lj Lines 2 to F L Row: Change CPM LjThe fth row of the cyclic shift right one bit obtains CPM Lj The f+1th row of F, 1≤f≤F L -1.
[0063] In this embodiment, the pseudo-random vector r i With the dynamic sparse random check matrix H i One-to-one correspondence, in step S1611, a pseudo-random number generator is used to generate a pseudo-random vector r i , random circulant permutation matrix CPM Lj The number of rows and columns F L By pseudo-random vector r i Control can ensure the dynamic sparse random check matrix H i confidentiality and independence.
[0064] In this embodiment, the pseudo-random vector r i The binary vector r i,j The number of H B,L-1 The non-zero elements E j The number of is equal, which is H B,L-1 Every non-zero element E j Compute the random circulant permutation matrix CPM Lj When executing step S1612, E j The corresponding r i,j Convert to decimal value D i,j , such as r i,j =(0,1,0), then D i,j =1*2 1 =2, for example r i,j =(1,0,1,0), then D i,j =1*2 1 +1*2 3 =10.
[0065] In this embodiment, for example, i,j =(0,1,0), then D i,j =1*2 1 =2, assuming F L =5, then after executing step S1613, CPM is obtained Lj The first line of is [0 1 0 0 0], and by executing step S1614 four times, CPM is obtained. Lj The second line is [0 01 0 0], the third line is [0 0 0 1 0], the fourth line is [0 0 0 0 1], and the fifth line is [1 0 0 0 0], that is
[0066] In an exemplary embodiment, step S200 may include steps S210-S230:
[0067] S210: The H i Divided into H iI and H iP , where H i =[H iI H iP ], H iP For square array;
[0068] S220: H iI Divide into submatrices A i and C i , H iP Divide into submatrices B i , D i 、E i and the dual diagonal matrix T i ,in,
[0069] S230: Calculate T i The inverse matrix And according to the formula Calculate the intermediate matrix φ i .
[0070] In this embodiment, by executing step S210, H with M rows and N columns is i Divide H i Divided into H iI and H iP , H iP is a square matrix with M rows and M columns, and the B in the basis matrix P Obtained after L-1 times of structured expansion and one time of random expansion; H iI is a matrix with M rows and NM columns, consisting of B in the basis matrix I After L-1 times of structured expansion and one time of random expansion, the meanings of M and N are the same as in the above embodiment, and the number of rows M is M B F (L) , the number of columns N is N B F (L) , where F (L) is L-1 structured expansion factors F l and a random expansion factor F L The product of
[0071] In this embodiment, by executing step S220, H i Divide into 5 sub-matrices A i , B i , C i , D i 、E iand a bidiagonal matrix T i , where A i The size is (MF (L) )×(NM) matrix, B i The size is (MF (L) )×F (L) The matrix, T i The size is (MF (L) )×(MF (L) ), C i The size is F (L) ×(NM) matrix, D i The size is F (L) ×F (L) The matrix, E i The size is F (L) ×(MF (L) ) matrix.
[0072] In this embodiment, D i =[P D,0 ]; Among them, P B,0 , P B,r , P D,0 , P E,0 and P Tm,z , P Ts,z All are of size F L ×F L Matrix, z=0,1,…,M B -2.
[0073] In this embodiment, T i is a dual diagonal matrix. In step S230, i Perform inverse calculation to obtain The amount of inversion calculation is small, the complexity of inversion calculation is reduced, and the dynamic matrix encoding time is shortened.
[0074] In this embodiment, a matrix block-based method is proposed to perform a dynamic sparse random check matrix H with a partially block dual diagonal structure. i Divide into blocks and obtain a double diagonal matrix T i , and for this bidiagonal matrix T i Performing inverse operations effectively reduces the dynamic sparse random check matrix H i The complexity of inversion.
[0075] In this embodiment, by i After executing steps S210-S230, each information plaintext m is obtained. i The corresponding Ai , B i , C i , D i 、E i 、T i , φ i .
[0076] In an exemplary embodiment, step S300 may include steps S310-S330:
[0077] S310: K φ i The corresponding information plaintext m i Set to plaintext group {m0,m1,m2,...m K-1}, based on K φ i Construct the intermediate matrix set {φ0,φ1,…,φ K-1}, where φ k is the plain text m of the information k The corresponding intermediate matrix, k=0, 1, 2, ... K-1;
[0078] S320: Construct a first set of matrix sets {W 0,0 ,W 0,1 ,…,W 0,K-1} and the second set of matrices {W 1,1 ,W 1,2 ,…,W 1,K-1};
[0079] S330: According to the formula Get K inverse matrices in, is the plain text m of the information k The corresponding intermediate matrix φ k The inverse matrix of
[0080] In this embodiment,
[0081] In this embodiment, after obtaining the K information plaintext m i The corresponding intermediate matrices φ i Afterwards, the grouping method is used to perform steps S310-S330, and the K information plaintext m i As a plaintext group {m0,m1,m2,...m K-1}, in the operation of this group, based on K φ i The set of intermediate matrices constructed {φ0,φ1,…,φ K-1}Execute steps S320-S330, φ0, φ1, ..., φ K-1 Respectively with the information plaintext m0,m1,…,m K-1Corresponding; execute the group inversion algorithm once, you can get K K As plaintext groups {m0,m1,m2,...m K-1} i The inverse matrix of the group inversion algorithm is different from the calculation of φ separately. i Compared with the inverse matrix of the original matrix, the computational complexity is effectively reduced.
[0082] In this embodiment, after executing steps S100-S300, each information plaintext m is obtained. i The corresponding A i , B i , C i , D i 、E i 、T i , φ i ,
[0083] In an exemplary embodiment, step S400 may include steps S410-S460, that is, for each information plaintext m i Perform the following steps:
[0084] S410: According to the information plain text m i Corresponding to the submatrix A i calculate
[0085] S420: According to the information plain text m i Corresponding to the submatrix C i calculate
[0086] S430: According to the information plain text m i Corresponding to the submatrix A i 、E i , the inverse matrix calculate
[0087] S440: According to the formula calculate
[0088] S450: According to the formula calculate
[0089] S460: Based on and Get the sent ciphertext P i , where P i =[p i,1 ,p i,2].
[0090] In this embodiment, after executing step S400, each information plaintext m is obtained. i The corresponding sent ciphertext P i , including P0, P1,..., corresponding to the information plaintext m0, m1,... respectively.
[0091] In order to illustrate the technical effects of the dynamic coding matrix construction and low-complexity coding method integrated with error correction and encryption in the embodiment of the present application, a specific example 1 is used to describe them in detail below.
[0092] This example generates the inverse matrix In the process, the complexity is mainly reflected in the calculation Calculate φ i and φ i Perform inverse calculation to obtain In the process, as shown in Table 1, the specific complexity analysis is as follows:
[0093] In step S220, H i Blocks, where T i With a double diagonal matrix structure, T i Obtained by inverse It can be expressed as in, The calculation can be expressed by the following formula:
[0094] In the following description, Represents L-1 structural expansion factors F l and a random expansion factor F L The product of Represents L-1 structural expansion factors F l The product of .
[0095] The dynamic coding matrix construction and low-complexity coding method of the error correction and encryption fusion of the embodiment of the present application, for each P Ts,z and P Tm,z , each row and column of which has only one circulant permutation matrix CPM; so for each P Ts,z and P Tm,z For a total of F (L-1) CPMs, operations on these matrices can be divided into the product and inversion of CPMs. The complexity of multiplication of two CPMs is O(1), and the complexity of inversion of one CPM is also O(1), where O is the asymptotic upper bound of the computational complexity. Therefore, for the above P B,0 , P B,r , P D,0 , PE,0 , P Ts,z , P Tm,z , both have the following two properties: (1) The complexity of multiplying two matrices is O(F (L-1) ); (2) The complexity of the matrix inversion operation is O(F (L-1) ); For property (1), since the multiplication of different matrices can be decomposed into the multiplication between different CPMs, a total of F (L-1) multiplication operations, so the complexity is O(F (L-1) ); Similarly, for the above property (2), since the matrix inversion operation can be decomposed into different CPMs in the matrix, the total number of inversion operations required is F (L-1) Inverse operations are performed, so the complexity is O(F (L-1) ); therefore, in order to calculate Need (M B -3-z)+(M B -2-z)=(2M B -2z-5) multiplications and one matrix inversion, the total complexity is (2M B -2z-6)O(F (L-1) ).
[0096] In summary, according to the dynamic coding matrix construction and low-complexity coding method of the error correction encryption fusion of the embodiment of the present application, it can be obtained that calculate The complexity is as follows:
[0097]
[0098] You can also get Similarly, we can calculate φ i The complexity is (4M B -1)O(F (L-1) )=O(M B F (L-1) ).
[0099] P i Perform inverse calculation to obtain Since its size is F (L) ×F (L) , the complexity of directly performing the inverse operation is The computational complexity of the inversion operation can be further reduced by performing the group inversion operation in steps S310-S330 of the present application embodiment. A total of (3K-3) matrix multiplication operations and one matrix inversion operation are required, where the complexity of one matrix inversion is A matrix multiplication operation requires approximately Sub-matrix multiplication and times matrix addition, where the matrix size is F L ×F L , so the complexity of matrix multiplication is O(F L log2 F L ), the complexity of matrix addition is O(F L ), so calculate each The average complexity is: And directly perform the inverse calculation to obtain Compared with the complexity of the inversion operation, the complexity of the group inversion operation of the present application is 1 / K of the complexity of the direct inversion calculation, which effectively reduces the complexity of the inversion.
[0100] In summary, based on the dynamic coding matrix construction and low-complexity coding method of the error correction and encryption fusion of the present application, the dynamic check matrix H i Generate inverse matrix The computational complexity of includes the sum of the three items in the "generate coding matrix" stage in Table 1. The computational complexity calculation formula is: f g,m (K) is much smaller than the complexity of the traditional algorithm to generate the encoding matrix In the encoding stage, that is, in the stage of generating and sending ciphertext according to the encoding matrix, the computational complexity of the present application includes the sum of the seven items in the "generating and sending ciphertext" stage in Table 1. The computational complexity calculation formula is: f c,m (K) is much smaller than the complexity of the traditional algorithm encoding stage It can be seen from this example that the dynamic coding matrix construction and low-complexity coding method integrated with error correction encryption of the present application reduces the computational complexity in both the coding matrix generation stage and the coding stage, greatly improving the efficiency of dynamic matrix coding.
[0101] Table 1 Summary of computational complexity
[0102]
[0103]
[0104] In order to further illustrate the technical effects of the dynamic coding matrix construction and low-complexity coding method integrated with error correction and encryption in the embodiment of the present application, a specific example 2 is used to describe them in detail below.
[0105] This example uses Monte Carlo simulation to evaluate the performance of the dynamic coding matrix construction and low-complexity coding method of the error correction and encryption fusion of this application. Both the main communication channel and the wiretap channel are additive white Gaussian noise channels. The basis matrix H B,0 The size is M B ×N B=8×12, use multidimensional EXIT to obtain the basis matrix H B,0 The minimum iterative decoding threshold is 0.782dB, and the basis matrix H B,0 The number of elements 1 in is w(H B,0 )=31, in constructing the dynamic sparse random check matrix H i When the basis matrix H B,0 L=2 expansions were performed, including one structured expansion and one random expansion, where the structured expansion factor F1 was 8 and the random expansion factor F2 was 4, 8, 16 or 32. During the transmission process, in order to ensure information security, all information bits of the codeword were punctured and only the check bits of the codeword were transmitted.
[0106] In terms of computational complexity, Figure 2 As shown in the figure, when the structured expansion factor F1 is 8 and the random expansion factor F2 is 4, 8, 16 or 32 respectively, the effect and change law of reducing the computational complexity by using the group inversion algorithm are demonstrated. The computational complexity shows an inverse proportional function trend with the increase of K; at the same time, with the increase of F2, that is, with the increase of F (L) =F (2) =F1×F2 increases, the degree of reduction in computational complexity will increase accordingly; that is, the more matrices K of the group inversion algorithm, the larger the structured expansion factor and the random expansion factor, the more significant the effect of reducing computational complexity will be.
[0107] The present application also provides a dynamic coding structure and a low-complexity coding device that integrates error correction and encryption. Figure 3 As shown, including a processor and a memory,
[0108] The memory is used to store the dynamic coding structure and low-complexity coding program of the error correction and encryption fusion;
[0109] The processor is used to read the dynamic coding structure and low-complexity coding program of the error correction encryption fusion, and perform the dynamic coding structure and low-complexity coding method of the error correction encryption fusion as described in the above embodiment.
[0110] It will be appreciated by those skilled in the art that all or some of the steps, systems, and functional modules / units in the methods disclosed above may be implemented as software, firmware, hardware, and appropriate combinations thereof. In hardware implementations, the division between the functional modules / units mentioned in the above description does not necessarily correspond to the division of physical components; for example, a physical component may have multiple functions, or a function or step may be performed by several physical components in cooperation. Some or all components may be implemented as software executed by a processor, such as a digital signal processor or a microprocessor, or implemented as hardware, or implemented as an integrated circuit, such as an application-specific integrated circuit. Such software may be distributed on a computer-readable medium, which may include a computer storage medium (or non-transitory medium) and a communication medium (or temporary medium). As known to those skilled in the art, the term "computer storage medium" includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, data structures, program modules, or other data). Computer storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tapes, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store the desired information and can be accessed by a computer. In addition, it is well known to those of ordinary skill in the art that communication media typically contain computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and may include any information delivery media.
Claims
1. A dynamic coding structure and low-complexity coding method integrating error correction and encryption, characterized in that: include: Continue to receive the plaintext sequence {m0,m1,m2,…} sent by the source, and for each plaintext m i Construct the corresponding dynamic sparse random check matrix H i , where i = 0, 1, 2, ...; For each H i Perform matrix block processing to obtain the H i The corresponding multiple sub-matrices and a double diagonal matrix T i , according to T i The inverse matrix and the submatrix calculate the intermediate matrix φ i ; Each time we obtain K intermediate matrices φ i Then, the group inversion algorithm is used to calculate each φ i The corresponding inverse matrix Among them, K ≥ 2; For each of the information plaintext m i , based on the corresponding Perform dynamic matrix encoding to obtain m i The corresponding sent ciphertext P i .
2. The dynamic coding structure and low-complexity coding method for error correction and encryption fusion as claimed in claim 1, characterized in that: The plaintext m of each message is i Construct the corresponding dynamic sparse random check matrix H i Previously, the basis matrix H was constructed based on the multidimensional external information transfer graph B,0 , where each of the information plaintext m i Corresponding to the basis matrix H B,0 All are the same, including: Build M B Line M B The bidiagonal matrix B of the columns C , where B C The elements of the main diagonal and the diagonals above the main diagonal are all 1, and the other elements are 0; B C Located in the Mth B The element in the first column of the row and the element in the first column The elements of the rows are set to 1 to obtain a partial bidiagonal matrix B P ,in, Representatives of M B / 2 is the result obtained by rounding down; According to the obtained B P , based on the multidimensional external information transfer graph, the basis matrix H B,0 The minimum iterative decoding threshold is searched to obtain B I ; According to B I and B P Get the basis matrix H B,0 =[B I B P ], where H B,0 M B Row N B Matrix of columns.
3. The dynamic coding structure and low-complexity coding method of error correction and encryption fusion as claimed in claim 2, characterized in that: The plaintext m of each message is i Construct the corresponding dynamic sparse random check matrix H i ,include: For each message plaintext m i Do the following: For the basis matrix H B,0 Perform L-1 structural expansions to obtain the expanded matrix H B,L-1 , where L ≥ 2; For the expanded matrix H B,L-1 Perform a random expansion to obtain the plaintext m of the information i The corresponding dynamic sparse random check matrix H i .
4. The dynamic coding structure and low-complexity coding method of error correction and encryption fusion as claimed in claim 3, characterized in that: The basis matrix H B,0 Perform L-1 structural expansions to obtain the expanded matrix H B,L-1 ,include: The structured expansion is performed cyclically L-1 times. The l-th structured expansion includes the following steps, where l = 1, 2, ... L-1: For the matrix H before expansion B,l-1 Every non-zero element E in n Use the predetermined optimization algorithm to obtain the structured cyclic permutation matrix CPM corresponding to this structured expansion ln , where CPM ln F l Row F l The square matrix of columns, F l is the pre-set structural expansion factor for this structural expansion, n = 0, 1, 2, ... w l -1,w l H B,l-1 The number of non-zero elements in ; H B,l-1 Every non-zero element E n Replace with the corresponding CPM ln , H B,l-1 Replace every element 0 with F l Row F l The zero matrix of the column is obtained to obtain the expanded matrix H corresponding to this structured expansion B,l ; The matrix before the first structured expansion is the basis matrix H B,0 The matrix before expansion adopted by the lth structured expansion is the matrix after expansion H obtained by the l-1th structured expansion B,l-1 The expanded matrix obtained by the L-1th structured expansion is the expanded matrix H B,L-1 .
5. The dynamic coding structure and low-complexity coding method of error correction and encryption fusion as claimed in claim 3, characterized in that: The expanded matrix H B,L-1 Perform a random expansion to obtain the plaintext m of the information i The corresponding dynamic sparse random check matrix H i ,include: Get H B,L-1 Every non-zero element E j The corresponding random circulant permutation matrix CPM Lj , where CPM Lj F L Row F L The square matrix of columns, F L is a pre-set random expansion factor, j = 0, 1, 2, ... w L -1,w L H B,L-1 The number of non-zero elements in ; H B,L-1 Every non-zero element E j Replace with the corresponding CPM Lj , H B,L-1 Replace each element 0 with F L Row F L The dynamic sparse random check matrix H is obtained by i .
6. The dynamic coding structure and low-complexity coding method of error correction and encryption fusion as claimed in claim 5, characterized in that: The acquisition of H B,L-1 Every non-zero element E j The corresponding random circulant permutation matrix CPM Lj ,include: The pseudo-random number generator is used to generate w L A binary vector r i,j The pseudo-random vector r i , where r i =(r i,0 ,r i,1 ,…,r i,wL-1 ), each r i,j The length of F is log2 L , r i The length of w L log2 F L , r i,j With non-zero elements E j One to one correspondence; For each E j Perform the following steps: E j The corresponding binary vector r i,j Convert to decimal value D i,j ; CPM Lj The first row of D i,j Set the elements of the column to 1 and the other elements of the first row to 0; Execute F L -1 time to get CPM from the following steps Lj Lines 2 to F L Row: CPM Lj The fth row of the loop is shifted right by one position to obtain CPM Lj The f+1th row of F, 1≤f≤F L -1.
7. The dynamic coding structure and low-complexity coding method of error correction and encryption fusion as claimed in claim 1, characterized in that: For each H i Perform matrix block processing to obtain the H i The corresponding multiple sub-matrices and a double diagonal matrix T i , according to T i The inverse matrix and the submatrix calculate the intermediate matrix φ i ,include: The H i Divided into H iI and H iP , where H i =[H iI H iP ], H iP For square array; H iI Divide into submatrices A i and C i , H iP Divide into submatrices B i , D i 、E i and the dual diagonal matrix T i ,in, Calculate T i The inverse matrix And according to the formula Calculate the intermediate matrix φ i .
8. The dynamic coding structure and low-complexity coding method of error correction and encryption fusion as claimed in claim 7, characterized in that: Each of the K intermediate matrices φ is obtained i Then, the group inversion algorithm is used to calculate each φ i The corresponding inverse matrix include: K φ i The corresponding information plaintext m i Set to plaintext group {m0,m1,m2,...m K-1 }, based on K φ i Construct the intermediate matrix set {φ0,φ1,…,φ K-1 }, where φ k is the plain text m of the information k The corresponding intermediate matrix, k=0, 1, 2, ... K-1; Construct the first set of matrices {W 0,0 ,W 0,1 ,…,W 0,K-1 } and the second set of matrices {W 1,1 ,W 1,2 ,…,W 1,K-1 }; According to the formula Get K inverse matrices in, is the plain text m of the information k The corresponding intermediate matrix φ k The inverse matrix of in, 9. The dynamic coding structure and low-complexity coding method of error correction and encryption fusion as claimed in claim 7, characterized in that: For each of the information plaintext m i , based on the corresponding Perform dynamic matrix encoding to obtain m i The corresponding sent ciphertext P i ,include: According to the information plaintext m i Corresponding to the submatrix A i calculate According to the information plaintext m i Corresponding to the submatrix C i calculate According to the information plaintext m i Corresponding to the submatrix A i 、E i , the inverse matrix calculate According to the formula calculate According to the formula calculate based on and Get the sent ciphertext P i , where P i =[p i,1 ,p i,2 ].
10. A dynamic coding structure and low-complexity coding device integrating error correction and encryption, comprising a memory and a processor, characterized in that: The memory is used to store the dynamic coding structure and low-complexity coding program of the error correction and encryption fusion; The processor is used to read the dynamic coding structure and low-complexity coding program of the error correction encryption fusion, and perform the dynamic coding structure and low-complexity coding method of the error correction encryption fusion as described in any one of claims 1-9.
Citation Information
Patent Citations
Physical layer secure transmission method and system based on dynamic change of channel encoding matrix
CN104780022A
Public limited feedback and dynamic matrix coding-based secure communication system and method
CN105978684A
Coding method and device for low-density parity check codes of satellite navigation system
CN116032427A
Channel coding sparse check matrix reconstruction method and device and electronic equipment
CN117560020A
Error correction coding method and system
JP2015103866A