Coding-based protection method in information security storage process of satellite computer

CN114374396BActive Publication Date: 2026-08-21NANJING UNIV OF SCI & TECH
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202011105955.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-10-15
Publication Date
2026-08-21
Estimated Expiration
2040-10-15

AI Technical Summary

Technical Problem

硬防护需要器件作为基础,器件的更新换代以及器件处在太空环境中受到的空间辐射的影响,都使得硬件防护变通性较差

Benefits of technology

[0009]本发明与现有技术相比,其显著优点为:1)本发明的转换接口可以将系统中的所有数据类型统一转换为二进制流,再转换为字符串数据;2)本发明在编码器和解码器中包含三种新型高效率检错纠错的编码算法:LDPC码、CAEDEC码和FUEC-DAEC码,不需要器件支持,且防护信息的能力显著。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114374396B_ABST
    Figure CN114374396B_ABST
Patent Text Reader

Abstract

The application discloses a coding-based protection method for information security storage of a spaceborne computer. First, the physical address of information to be protected is found in the ROM of the spaceborne computer, the data segment and the code segment of the binary information are extracted from the physical address respectively, and the information of the code segment is encoded by using an encoding algorithm and then written into the corresponding segment again. When the information is loaded into the memory, the information can be decoded first, and then the decoded information is loaded into the memory. The information is protected in the form of encoding, so that the bit inversion problem caused by space radiation during the storage process can be reduced, and reliable protection results are obtained.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of electronic information security storage technology, and in particular to a coding-based protection method for the secure storage of information in spaceborne computers. Background Technology

[0002] Satellite electronic equipment, located in the space environment, is susceptible to space radiation and high-energy particles, leading to errors in stored electronic information. Errors caused by space radiation include total dose effects, single-event effects, and displacement damage, with single-event upsets (SEUs) being the most common. These errors can cause control failures in satellite electronic equipment, and in severe cases, damage to the entire satellite. The onboard computer, a crucial component of satellite electronic equipment, is also affected by space radiation, resulting in errors in its stored information. Therefore, protecting the information stored in the onboard computer is critical. Currently, the main protection methods are hardware protection and software protection. Hardware protection requires components as a foundation; however, the rapid upgrading of these components and their exposure to space radiation make hardware protection less adaptable. Software protection only requires adding redundant information or software, without requiring component support, and offers significant protection capabilities; however, it is technically challenging to implement. Summary of the Invention

[0003] The purpose of this invention is to provide an encoding-based protection method for secure information storage in spaceborne computers. This invention extracts the physical address and content of each segment of information, converts them into a string format for input, uses an encoder to perform encoding operations and rewrites them to the original location. When the information is loaded and used, a decoder is automatically called to decode the encoded information, thereby restoring the correct initial information.

[0004] The technical solution for achieving the objective of this invention is: a code-based protection method for secure information storage in spaceborne computers, comprising the following steps:

[0005] Step 1: Call system commands to extract the specific physical address of the binary information to be protected and its space usage.

[0006] Step 2: Use the conversion interface to convert the binary information into a string format; the conversion interface takes the physical address and space usage of each segment of the information as input, automatically reads the information of each segment, and performs string conversion;

[0007] Step 3: Encode the binary string using the encoder; select one of the three encoder algorithms: LDPC code, CAEDEC code, and FUEC-DAEC code, and use the calling interface of the selected encoding algorithm to implement the encoding; rewrite the encoded information into the corresponding segment and save it.

[0008] Step 4: Extract the encoded information from the physical address, select the same decoding algorithm as the encoder, use the decoder to decode, and save the decoded information.

[0009] Compared with the prior art, the significant advantages of this invention are: 1) The conversion interface of this invention can uniformly convert all data types in the system into binary streams, and then into string data; 2) This invention includes three novel high-efficiency error detection and correction encoding algorithms in the encoder and decoder: LDPC code, CAEDEC code and FUEC-DAEC code, which do not require device support and have a significant ability to protect information. Attached Figure Description

[0010] Figure 1 This is a schematic diagram of the process of the present invention. Detailed Implementation

[0011] The present invention will be further described below with reference to the accompanying drawings and embodiments.

[0012] Example:

[0013] Figure 1 This is a schematic diagram of an information encoding and decoding protection process based on encoding. This embodiment focuses on an encoding-based protection method for secure information storage in a spaceborne computer. The invention extracts the physical address and content of each segment of information, converts them into a string format, inputs them, encodes them using an encoder, and rewrites them to their original locations. When the information is loaded and used, a decoder is invoked to decode the encoded information, thereby restoring the correct initial information. The specific process is as follows:

[0014] Step 1: Call system commands to extract the specific physical address of the binary information to be protected and its space usage.

[0015] Step 2: Use the conversion interface to convert the binary information into a string format; the conversion interface takes the physical address and space usage of each segment of the information as input, automatically reads the information of each segment, and performs string conversion;

[0016] Step 3: Encode the binary string using the encoder; select one of the three encoder algorithms: LDPC, CAEDEC, and FUEC-DAEC, and implement the encoding using the chosen algorithm's API; rewrite the encoded information into the corresponding segment and save it. The encoder includes three algorithms, specifically:

[0017] 1) LDPC code: Randomly generate a binary parity check matrix H r×nHere, r and n are the check node and the message node, respectively. These two types of nodes form a sparse bipartite graph. The element at the corresponding position in the matrix is ​​1 if and only if the two nodes are connected, otherwise it is 0. The following relationship is used to determine whether the matrix is ​​a low-density check matrix, and the message node vector c corresponding to the sum of the adjacent positions of the check node being 0 is calculated:

[0018] H·c T =0

[0019] Where H is the binary parity check matrix, c T It is the transpose of the message node vector.

[0020] 2) CAEDEC code: The message code and parity bits are combined for encoding; the input binary string is used as the message code and copied to form three sets of message codes, such as A, B and C. The parity bits p1, p2 and p3 corresponding to each set of message codes are calculated based on the three sets of message codes; the message codes of each set are combined with the corresponding parity bits to obtain the encoding result of the CAEDEC code.

[0021] 3) FUEC-DAEC code: Calculate the parity-check matrix H according to the following formula:

[0022] s=r·H T

[0023] Where s is the correction vector, r is the receiving vector, and H is the parity check matrix.

[0024] When there is no information error, the correction vector is the zero vector; otherwise, there is an information error.

[0025] Redundant bits are selected during encoding to handle correction vectors under different error modes. The error mode and the corresponding correction vector are determined, and a correction decoding table is written.

[0026] For a code length of (23, 16), the parity check matrix H consists of 16 information bits and 7 code bits; the first code bits are denoted as C0 to C6, and the last information bits are denoted as X0 to X6. 15 The encoded bits can be obtained according to the following formula, thereby generating a parity check matrix H that meets the conditions:

[0027]

[0028]

[0029]

[0030]

[0031]

[0032] Among them, Ci For encoding bits, X i For information bits.

[0033] Step 4: Extract the encoded information from the physical address, select the same decoding algorithm as the encoder, use the decoder to decode, and save the decoded information; the decoder contains three algorithms, specifically:

[0034] 1) LDPC code: Iterative message passing decoding algorithm; it uses message node n and check node r to transmit information to each other, and each transmission considers the result of the previous transmission, but removes the information of another node in the previous transmission, thereby calculating the error probability P of the message node and the check node; in the first transmission, if n is 0, then all adjacent r values ​​are (ln(1-p)-lnp); if n is less than 0, r is equal to 1; in subsequent transmissions, message node n and check node r transmit according to the following relationship:

[0035]

[0036]

[0037] Where i is the number of transmissions, l i Let x be the log-likelihood value, y be the message node, y be the check node, and L be the update result after each transmission.

[0038] During transmission, messages from message node n to check node r Verify messages from node r to message node n The formula is updated as shown below:

[0039]

[0040]

[0041] Where l represents the number of transmissions.

[0042] The decoding process involves multiple iterations of information transmission until the error probability reaches zero, at which point the decoding ends.

[0043] 2) CAEDEC code: The parity bits of the three extracted information groups are p1, p2 and p3, and the parity bit of the transmitted information is p0; the four parity bits are compared to select the information group with no error output.

[0044] p1≠p2&p2=p3: p1=p0, Group A; otherwise, Group B;

[0045] p1 = p2 & p2 ≠ p3: p1 = p0, Group A; otherwise, Group C;

[0046] p1≠p2&p2≠p3: p1=p0, Group A; otherwise, Group B;

[0047] p1 = p2 & p2 = p3: p1 = p0, all three groups have one error or one group has two errors; otherwise, three errors.

[0048] Once the group is determined, the information bits extracted from the information group are the decoding results.

[0049] 3) FUEC-DAEC code: Code length (23, 16). Obtain the parity check matrix H, and use the information bits and code bits in the parity check matrix to calculate the correction vector s as shown in the equation:

[0050]

[0051]

[0052]

[0053]

[0054]

[0055]

[0056] Among them, S i For the correction bit, C i For encoding bits, X i For information bits.

[0057] Decoding is completed by locating the correction vector s in the decoding table.

[0058] As shown in Table 1, comparing the capabilities of each encoding algorithm with the original encoding, the CAEDEC encoding algorithm has more bits for random error detection and correction, a lower code rate of 32.99%, but a higher redundancy rate of 203.12%, which generates more redundant information. The LDPC and FUEC-DAEC algorithms have comparable error correction and detection capabilities, but LDPC has a lower redundancy rate of 25% compared to FUEC-DAEC's 43.75%. However, LDPC's code rate is also about 10% higher than FUEC-DAEC. Considering the secure storage of data in onboard computers, this invention can be used to rationally select a suitable encoding algorithm based on the actual situation.

[0059] Table 1 Comparison of the capabilities of each encoding algorithm and the original encoding in the embodiments.

[0060] Encoding types Code length (n, k) Random error detection / bit Error correction / bit Redundancy rate / % Bitrate / % LDPC (40,32) 1 1 25.00 80.00 CAEDEC (97,32) 3 2 203.12 32.99 FUEC-DAEC (23,16) 1 1 43.75 69.57 EDAC (39,32) 2 1 21.87 82.05

Claims

1. A coding-based protection method for secure information storage in spaceborne computers, characterized in that, Includes the following steps: Step 1: Call system commands to extract the specific physical address of the binary information to be protected and its space usage. Step 2: Use the conversion interface to convert the binary information into a string format; the conversion interface takes the physical address and space usage of each segment of the information as input, automatically reads the information of each segment, and performs string conversion; Step 3: Encode the binary string using the encoder; select one of the three encoder algorithms: LDPC code, CAEDEC code, and FUEC-DAEC code, and use the calling interface of the selected encoding algorithm to implement the encoding; rewrite the encoded information into the corresponding segment and save it; Step 4: Extract the encoded information from the physical address, select the same decoding algorithm as the encoder, use the decoder to decode, and save the decoded information; The encoder in step 3 includes three algorithms, specifically: 1) LDPC code: Randomly generates a binary parity check matrix. ,in, and Let there be check nodes and message nodes, forming a sparse bipartite graph. The element at the corresponding position in the matrix is ​​1 if and only if the two nodes are connected, otherwise it is 0. The following relationship is used to determine whether the matrix is ​​a low-density check matrix, and the vector of message nodes whose sum of adjacent positions corresponding to the check nodes is 0 is calculated. : in, It is a binary parity check matrix. It is the transpose of the message node vector; 2) CAEDEC code: Encoding combines message code and parity bits; the input binary string is used as the message code and copied to form three sets of message codes, namely A, B, and C. The parity bits for each set are calculated based on the three sets of message codes. , and The message codes are combined with their corresponding parity bits to obtain the CAEDEC code encoding result. 3) FUEC-DAEC code: Calculate the parity-check matrix according to the following formula. : in, For the correction vector, For the receive vector, This is the verification matrix; When there is no information error, the correction vector is the zero vector; otherwise, there is an information error. Different lengths of redundant bits are selected during encoding to handle correction vectors under different error modes; the error mode and corresponding correction vector are determined, and a correction decoding table is written; for a code length of (23, 16), the parity check matrix is... It includes 16 information bits and 7 code bits; the first code bit is denoted as... The information bits that follow are denoted as The encoded bits can be obtained according to the following formula, thereby generating a parity check matrix that meets the conditions. : in, For encoding bits, For information bits; The decoder in step 4 includes three algorithms, specifically: 1) LDPC code: Iterative message passing decoding algorithm; utilizing message nodes and check nodes Information is transmitted between the two nodes, and each transmission takes into account the result of the previous transmission, removing another type of node information from the previous transmission, thereby calculating the error probability of the message node and the check node. During the first transmission, if If it is 0, then all adjacent ones Value ;like Less than 0, Equals 1; during subsequent transmission, the message node and check nodes Transmission is performed according to the following relationship: in, For the number of transmissions, The log-likelihood value is... For message nodes, For verification nodes, This is the update result after each transmission; During transmission, message nodes To the verification node News Verification node To message node News The formula is updated as shown below: in, For the number of transmissions; The decoding process involves multiple iterations of information transmission until the error probability reaches 0, at which point the decoding ends. 2) CAEDEC code: The parity bits of the three extracted information groups are respectively , and The parity bit for sending the information is Compare the four parity bits and select the information group with no error output. : Group A; conversely, Group B; : Group A; conversely, Group C; : Group A; conversely, Group B; : All three groups have one error or one group has two errors; otherwise, all three groups have three errors. After determining the group, extracting the information bits from the information group yields the decoding result; 3) FUEC-DAEC code: code length (23, 16), obtain the parity check matrix. The correction vector is obtained by using the information bits and code bits in the check matrix. As shown in the formula: in, For correction position, For encoding bits, For information bits; From the correction vector Locate the information in the decoding table to complete the decoding process.

Citation Information

Patent Citations

  • Satellite on-board software heterogeneous backup method based on storage subarea

    CN106980557A

  • Satellite-borne system software protection method based on redundant API interface

    CN112052117A

  • Apparatus and method for executing rapid memory management unit emulation and full-system simulator

    US20080222384A1