Multi-channel data receiving and processing method and device for secure computer system

Through the multi-channel data reception and processing method of a secure computer system, the stability and security problems during multi-channel data reception are solved by using channel separation, security mask processing and channel restoration technology, and the reliability and security of the system are improved. .

CN119105880APending Publication Date: 2024-12-10CASCO SIGNAL LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411084352.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-08
Publication Date
2024-12-10

AI Technical Summary

Technical Problem

Existing secure computer systems have problems of data loss, error or duplication when receiving multi-channel data, and data transmission is unsafe, affecting the stability and security of the system.

Method used

Using a multi-channel data reception processing method, the multi-channel messages received from external devices are separated and extracted through the communication unit, and the messages are processed using data security mask, software security mask and hardware security mask to perform bus broadcast; data processing is performed The unit performs channel restoration, merge and verification of the received messages, and finally sends them to the application.

Benefits of technology

It reduces the probability of data frame loss, error or repetition, improves the stability and reliability of data transmission, ensures the correctness and security of data information in the system, reduces system load, and improves security.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119105880A_ABST
    Figure CN119105880A_ABST
Patent Text Reader

Abstract

The invention relates to a multichannel data receiving and processing method and equipment for a secure computer system, the secure computer system comprises a data processing unit and a plurality of communication units, and the method comprises the following steps: firstly, each communication unit performs channel separation and extraction on multichannel messages received from external equipment; processing the separated message into a bus message by using a data security mask and a software security mask, and broadcasting the bus message to all data processing units through a bus; after the FPGA of the data processing unit obtains the bus message, the hardware security mask is used for processing the bus message to obtain a message rBusMsg, and the message rBusMsg is sent to the data processing unit; and the data processing unit carries out channel restoration, merging and verification on the received message rBusMsg, and sends the message rBusMsg to the application. Compared with the prior art, the method has the advantages that the stability, the reliability and the safety of multichannel data transmission of the safety computer system are improved, and the like.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of secure computer systems, and in particular to a multi-channel data receiving and processing method and device for secure computer systems. Background Art

[0002] Safety computer systems are mostly used in industrial fields with high requirements for reliability, correctness and safety. Taking the rail transit industry as an example, safety devices such as area controllers, interlocking, and temporary speed limit servers are used as applications and run on safety computer systems. To ensure the safety of the system, the safety integrity level requirement for safety computer systems is SIL4. To meet the requirements, the safety computer system adopts a redundant architecture such as two by two, which consists of a data processing unit (DPM) and multiple communication units (IOUs), and each module is connected by a bus. In practical applications, in order to ensure the reliability of communication, the safety computer system generally adopts a multi-channel connection communication method. Taking the dual-system cross-connection connection method as an example, the number of channels is as many as eight channels. After receiving the messages from each channel, the IOU will broadcast them all to the DPM through the bus, and the DPM will further process them. While the increase in the number of channels brings additional reliability, correctness and safety to the communication, it also doubles the amount of data transmitted between the units of the safety computer system. When the amount of data is too large, it will cause problems such as loss, error or duplication of data frames, which will have an adverse effect on the reliability and safety of the system output and reduce the stability and performance of the safety computer system. In addition, in existing secure computer systems, application data is generally transmitted in plain text when transmitted between modules, which poses certain security risks.

[0003] After searching, Chinese invention patent publication number CN113141289B discloses a bus data transmission method for a trackside safety platform, which uses dual channels to separate and transmit the odd bytes and even bytes of bus data transmitted through the bus, and performs mask processing on the bus data transmitted through the bus; a main operation module in the trackside safety platform takes the odd byte information of application data as bus data by byte, and another main operation module in the trackside safety platform takes the even byte information of application data as bus data by byte. This existing patent is used for the transmission processing of application data, but does not solve the transmission problem of receiving data from multiple channels of external devices, nor does it add the problem of security mask processing before data transmission.

[0004] How to achieve safe and stable transmission of multi-channel data reception in a secure computer system has become a technical problem that needs to be solved. Summary of the invention

[0005] The purpose of the present invention is to overcome the defects of the above-mentioned prior art and provide a multi-channel data receiving and processing method and device for a secure computer system.

[0006] The purpose of the present invention can be achieved by the following technical solutions:

[0007] According to one aspect of the present invention, a multi-channel data receiving and processing method for a secure computer system is provided. The secure computer system includes a data processing unit and a plurality of communication units. The method includes the following steps:

[0008] Step a, first each communication unit performs channel separation and extraction on the multi-channel message received from the external device, and then uses the data security mask and the software security mask to process the separated message into a bus message, and broadcasts it to all data processing units through the bus;

[0009] Step b, after the FPGA of the data processing unit obtains the bus message, it uses the hardware security mask to process it, obtains the message rBusMsg, and sends it to the data processing unit;

[0010] Step c: the data processing unit performs channel restoration, merging and verification on the received message rBusMsg, and sends it to the application.

[0011] Preferably, in the step a, the process in which each communication unit performs channel separation and extraction on a multi-channel message received from an external device includes: after receiving the multi-channel message, the software layer of each communication unit processes the message into a bus message header BusMsg_Head and a message content MsgData; each communication unit divides the message content MsgData into odd channels and even channels according to its own ID and extraction rules.

[0012] More preferably, the bus message header BusMsg_Head includes the CRC of the message content, the ID of the IOU itself, the SN number of the message and the peripheral node number PID.

[0013] More preferably, the number of the odd channels and the even channels depends on the number of communication units.

[0014] More preferably, the extraction rule is specifically:

[0015] Odd channel: pMsgDate1[a]=MsgData[2a]a=0,1,2,…(len+1) / 2

[0016] Even channel: pMsgDate2[b]=MsgData[2b+1]b=0,1,2,…(len+1) / 2

[0017] Among them, MsgData is the message data received from the outside, pMsgDate1 is the application data extracted from the odd channel of the communication unit, pMsgDate2 is the application data extracted from the even channel of the communication unit; len is the total length of the message data received from the outside.

[0018] More preferably, in the step a, using the data security mask and the software security mask to process the separated message into a bus message comprises: for the data pMsgDate1 extracted from the odd channel, using the data security mask DataMask1 to perform an XOR operation on the extracted data to obtain the application data BusMsg_Data1;

[0019] For the data pMsgDate2 extracted from the even channel, use the data security mask DataMask2 and apply the data BusMsg_Data2.

[0020] More preferably, in the step a, using the data security mask and the software security mask to process the separated message into a bus message also includes: the communication unit uses the application data processed by the data security mask as the bus message content BusMsg_Data, adds a bus message header BusMsg_Head, and processes it into a bus message BusMsg.

[0021] More preferably, in the step a, using the data security mask and the software security mask to process the separated message into a bus message further comprises: the communication unit uses the software security mask SwMask1 to perform an XOR operation on the bus message BusMsg according to the length of SwMask1.

[0022] More preferably, in the step a, using the data security mask and the software security mask to process the separated message into a bus message also includes: the communication unit uses the software security mask SwMask2 to perform an XOR operation on Front_Head according to the length of SwMask2, wherein Front_Head is the frontmost byte in the bus message header BusMsg_Head that contains the bus transmission information.

[0023] Preferably, sending to the data processing unit in step b specifically includes: the driver of the data processing unit obtains the processed message from the FPGA and provides it to the software layer of the DPM.

[0024] Preferably, the relationship between the hardware security mask HwMask and the software security mask is:

[0025] HwMask=SwMask1⊕SwMask2

[0026] Among them, ⊕ is an exclusive OR operation, SwMask1 and SwMask2 are software security masks for bus message BusMsg and bus message header BusMsg_Head respectively.

[0027] Preferably, the process of the data processing unit performing channel restoration on the message rBusMsg in step c comprises:

[0028] 1) The data processing unit screens and classifies the received bus message according to the Front_Head part of the received message rBusMsg;

[0029] 2) For the same message after classification, the software layer of the data processing unit only restores the first message received from the odd channel and the even channel, and the remaining messages will be discarded;

[0030] 3) The data processing unit uses the software security mask SwMask2 to process the received message rBusMsg and restore the bus message BusMsg;

[0031] 4) The data processing unit uses the data restoration mask RCMask to restore the application data received from each channel, and restores the original application data of the odd channel and the even channel respectively.

[0032] More preferably, the process of screening and classifying the received bus messages in the step 1) includes: the Front_Head part includes the peripheral node number PID, message type, SN number and the channel from which the message comes; if the message type and SN number of the bus message are the same, and the peripheral node number PID belongs to the same communication node, then the software layer of the data processing unit considers these bus messages to be the same message.

[0033] More preferably, step 3) is specifically as follows: after the data processing unit receives the bus message rBusMsg provided by the driver, it uses the software security mask SwMask2 to perform an XOR operation on the part of rBusMsg except Front_Head,

[0034] BusMsg=rBusMsg⊕SwMask2

[0035] Where ⊕ is the exclusive OR operation.

[0036] More preferably, step 4) is specifically as follows: the data processing unit performs an XOR operation on the data sent from the odd channel using the odd bits of the data recovery mask RCMask to obtain the application original data DataMask1 of the odd channel; and performs an XOR operation on the data sent from the even channel using the even bits of the data recovery mask RCMask to obtain the application original data DataMask2 of the even channel.

[0037] According to another aspect of the present invention, an electronic device is provided, including a memory and a processor, wherein a computer program is stored in the memory, and the method described above is implemented when the processor executes the program.

[0038] Compared with the prior art, the present invention has the following beneficial effects:

[0039] 1) The present invention is applied to a secure computer system with multi-channel communication, and separates, extracts and transmits at least one odd channel and an even channel of a received multi-channel message of an external device, thereby reducing the bus occupancy of data transmission between modules when the external device receives multi-channel messages, and when the amount of data is too large, reducing the probability of data frame loss, error or duplication, thereby improving the stability and reliability of data transmission in the secure computer system.

[0040] 2) The present invention processes data at various levels using different security masks for messages received by a secure computer system from external devices, wherein the security masks include data security masks, software security masks, and hardware security masks, and restores the data using a data recovery mask upon reception, thereby ensuring the correctness, reliability, and security of data information transmission within the system.

[0041] 3) The data processing unit software layer of the present invention filters and classifies the received bus messages, and only restores the first message of the same message, and the remaining messages will be discarded. While ensuring security and reliability, the amount of data for subsequent processing and transmission is reduced, and the load on the security computer system is reduced, thereby improving the security and stability of data reception.

[0042] 4) The present invention ensures the traceability of problems that occur during transmission by using different security masks in the data content, software layer, and hardware layer, thereby improving the reliability, stability, and security of the secure computer system. BRIEF DESCRIPTION OF THE DRAWINGS

[0043] Figure 1 It is a schematic diagram of the structure of the secure computer system in the present invention;

[0044] Figure 2 It is a schematic diagram of the flow of the multi-channel data processing method in the present invention;

[0045] Figure 3 It is a schematic diagram of the process flow of the communication unit processing in the present invention;

[0046] Figure 4 It is a schematic diagram of the process flow of the data processing unit in the present invention. DETAILED DESCRIPTION

[0047] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.

[0048] This embodiment relates to a multi-channel data receiving and processing method for a secure computer system, which can be applied to a secure computer system with multi-channel communication and meets the expansion requirements of the secure computer system for communication reliability.

[0049] This method is based on the multi-channel architecture adopted by the security computer to separate and transmit the received data, which reduces the bus occupancy of single-packet messages between modules and improves the performance ceiling; after receiving the data of the security computer system, the data is processed at various levels using data security masks, software security masks, and hardware security masks, and the data is restored in the processing module, ensuring the correctness, reliability and security of data information transmission within the system; different security masks are used at the data layer, software layer, and hardware layer, respectively, to ensure the traceability of problems that occur during transmission.

[0050] like Figure 1 The secure computer system is briefly divided into a data processing unit DPM and a communication unit IOU, and each unit is connected by a bus. The present invention does not limit the architecture of the data processing unit DPM, including but not limited to a single processing unit, two-out-of-two, two-by-two-out-of-two, or three-out-of-two. The communication unit includes at least one odd channel and one even channel, and also supports multiple odd and even channels, and there is no limit on the number of odd and even channels.

[0051] Take a two-by-two-take-two structure as an example. It includes machines A and B with the same structure. During operation, one machine (A) serves as the main system and the other (B) serves as the standby system to maintain hot standby operation. In any system, there are two data processing units DPM1 and DPM2, and multiple communication units IOU. The number of communication units IOU can be expanded according to the communication requirements of the system. DPM1 and DPM2 use different operating systems and compilers, but run the same upper-layer application software. There are multiple independent network ports on the communication unit IOU for sending and receiving data.

[0052] For a two-by-two-out-of-two security computer system, common connection methods include direct connection and cross-connection, and the number of channels depends on the coefficient of the connected peripherals. For single-system peripherals, direct connection is two channels and cross-connection is four channels; for dual-system peripherals, direct connection is four channels and cross-connection is eight channels. In order to ensure the reliability of secure data transmission, two security devices are generally connected in the form of dual-system cross-connection.

[0053] When the system communicates normally with peripherals, all channels receive the same data content for the same message. After each IOU performs independent processing, the messages of all channels will be broadcasted through the bus for further processing. The hardware FPGA provides the processed bus message to the driver, and the DPM software layer obtains the data through the driver and performs further processing, and finally provides the processed data to the upper-level application.

[0054] Before application messages are transmitted between modules, data security masks, software security masks, and hardware security masks are used to perform XOR processing on data content and data messages, ensuring the security, reliability, and traceability of application data.

[0055] The security mask used in the method includes a data security mask used for application data, a software security mask used by the software layer, and a hardware security mask used in the FPGA.

[0056] The data security mask includes DataMask1 and DataMask2, where DataMask1 is the mask used for odd channel (such as IOU1) application data, and DataMask2 is the mask used for even channel (such as IOU2) application data. They are mask arrays, and their size is half of the maximum application data length. The two have the following relationship: DataMask1⊕DataMask2=0XFFFFFFFF. RcMask is a data recovery mask, which is used to restore data processed by the data security mask. It is a mask array, and its size is the maximum application data length. The odd bits in RcMask correspond to the value of DataMask1, and the even bits correspond to the value of DataMask2.

[0057] The software security masks used by the software layers of the data processing unit DPM and the communication unit IOU include SwMask1 and SwMask2.

[0058] The hardware security mask HwMask is used in the DPM FPGA.

[0059] The three have the following relationship: HwMask = SwMask1 ⊕ SwMask2, where ⊕ is an XOR operation. The process of this method is as follows Figure 1 ,include:

[0060] Step S1, each communication unit IOU receives a message from the outside. After receiving the message, the software layer of the IOU processes the message, removes the protocol layer (TCP or UDP protocol) of the received message, and processes the external message into a bus message header (BusMsg_Head) and message content (MsgData). Among them, BusMsg_Head includes CRC of the message content, IOU's own ID, message SN number, peripheral node number (PID) and other contents, which are used for subsequent message processing.

[0061] IOU extracts MsgData according to its own ID and certain rules. An odd ID is an odd channel, and an even ID is an even channel. The extraction rules are:

[0062] (1) Odd channel: pMsgDate1[a]=MsgData[2a]a=0,1,2,…(len+1) / 2

[0063] (2) Even channel: pMsgDate2[b] = MsgData[2b+1]b = 0, 1, 2, ... (len+1) / 2

[0064] Among them, MsgData is the message data received from the outside, pMsgDate1 is the application data extracted from the IOU odd channel, pMsgDate2 is the application data extracted from the IOU even channel; len is the total length of MsgData.

[0065] For the data pMsgDate1 extracted from the odd channel, the data security mask DataMask1 is used to perform an XOR operation on the extracted data to obtain the application data BusMsg_Data1. For the data pMsgDate2 extracted from the even channel, the data security mask DataMask2 is used to obtain the application data BusMsg_Data2.

[0066] The processing of odd channels is: BusMsg_Data1 = pMsgDate1[k] ⊕ DataMask1[k]

[0067] The processing of the even channel is: BusMsg_Data2 = pMsgDate2[k] ⊕ DataMask2[k]

[0068] Where k = 0, 1, 2, ... (len + 1) / 2, len is the total length of MsgData.

[0069] IOU uses the application data (BusMsg_Data1 or BusMsg_Data2) processed by the data security mask as the bus message content (BusMsg_Data), adds the bus message header (BusMsg_Head), and processes it into a bus message (BusMsg). After that, the software security mask SwMask1 is used to perform an XOR operation on the bus message according to the length of SwMask1.

[0070] pBusMsg=BusMsg⊕SwMask1

[0071] IOU uses software security mask SwMask2 to perform XOR operation on Front_Head according to the length of SwMask2. Among them, Front_Head is the first few bytes in BusMsg_Head that contain necessary bus transmission information.

[0072] After completing the above processing steps, the IOU broadcasts the message to all DPMs through the bus.

[0073] Step S2, after the DPM FPGA obtains the bus message (pBusMsg), it should use the hardware security mask HwMask to perform XOR processing on the entire message according to the length of HwMask.

[0074] rBusMsg=pBusMsg⊕HwMask

[0075] Step S3: The DPM driver obtains the processed message from the FPGA and provides it to the software layer of the DPM.

[0076] Step S4, the DPM software layer screens and classifies the received bus messages according to the Front_Head part of the message rBusMsg. The Front_Head part includes the PID, message type, SN number, and the channel from which the message comes. If the message type and SN number of the bus message are the same, and the PID belongs to the same communication node, then the DPM software layer considers these bus messages to be the same message. For the same message, the DPM software layer only restores the first message received from the odd channel and the even channel, and the remaining messages will be discarded.

[0077] After receiving the bus message (rBusMsg) provided by the driver, DPM uses the software security mask SwMask2 to perform an XOR operation on rBusMsg according to the length of SwMask2, wherein Front_Head is not processed. After processing, rBusMsg is restored to BusMsg.

[0078] DPM uses the data recovery mask RCMask to recover the application data received from each channel. The data sent from the odd channel is XORed with the odd bits of the data recovery mask RCMask to obtain the original application data of the odd channel; the data sent from the even channel is XORed with the even bits of the data recovery mask RCMask to obtain the original application data of the even channel.

[0079] For the same message, if DPM obtains data from both the odd channel and the even channel, the odd bytes of the data are filled with the application data of the odd channel, and the even bytes of the data are filled with the message data of the even channel. For the merged data, DPM needs to perform CRC check on it, and only provide it to the application after the check.

[0080] This embodiment also relates to a multi-channel data receiving and processing method for a secure computer system, which is described in detail with reference to specific examples.

[0081] Figure 1 The following is a structural diagram of a secure computer system, taking a more complex two-by-two-out-of-two structure as an example. A two-by-two-out-of-two secure computer system contains machines A and B with the same structure. During operation, one machine acts as the main system and the other as the backup system to maintain hot standby operation of the two machines. In any system, there are two data processing units DPM1 and DPM2 and multiple communication units IOU. DPM1 and DPM2 use different operating systems and compilers, but run the same upper-layer application software. There are multiple independent network ports on the communication unit IOU for sending and receiving data. When the system receives data, the data is received by the IOU and transmitted to the DPM via the bus.

[0082] In order to ensure the reliability of secure data transmission, two security devices are generally connected in the form of dual-system cross-connection. A dual-system cross-connection communication node consists of four peripheral node numbers PID and a total of eight channels. On a secure computer system, the configuration method is generally:

[0083] PID1: IOU1-A-network port 1 and IOU1-B-network port 1;

[0084] PID2: IOU2-A-network port 1 and IOU2-B-network port 1;

[0085] PID3: IOU1-A-network port 2 and IOU1-B-network port 2;

[0086] PID4: IOU2-A-network port 2 and IOU2-B-network port 2.

[0087] When the system communicates with peripherals, the eight channels will receive messages with the same data content. After processing, the IOU broadcasts the messages of the eight channels to the DPM for further processing.

[0088] like Figure 2 , taking receiving a node message of a dual-system cross-connected eight-channel as an example. The method includes:

[0089] Step S1, each communication unit IOU performs channel separation and extraction on the received multi-channel message, and processes it into a bus message using a security mask, such as Figure 3 , specifically including the following steps:

[0090] Step S1-1: Each communication unit IOU receives a message from the outside. After receiving the message, the software layer of the IOU processes the message and processes the external message into a bus message header (BusMsg_Head) and a message content (MsgData).

[0091] Step S1-2: IOU extracts MsgData according to its own ID and certain rules. IDs with odd numbers (IOU1-A and IOU1-B) are odd channels, and IDs with even numbers (IOU2-A and IOU2-B) are even channels. The extraction rules are:

[0092] (1) Odd channel: pMsgDate1[a]=MsgData[2a]a=0,1,2,…(len+1) / 2

[0093] (2) Even channel: pMsgDate2[b] = MsgData[2b+1]b = 0, 1, 2, ... (len+1) / 2

[0094] After extraction, the number of odd channels and even channels is 2 respectively.

[0095] Step S1-3: For the data pMsgDate1 extracted from the odd channel, use the data security mask DataMask1 to perform an XOR operation on the extracted data. The even channel uses the data security mask DataMask2.

[0096] Odd channel: BusMsg_Data1 = pMsgDate1 ⊕ DataMask1

[0097] Even channel: BusMsg_Data2 = pMsgDate2 ⊕ DataMask2

[0098] Step S1-4: The IOU uses the message content (BusMsg_Data1 or BusMsg_Data2) processed in step 1-3 as the bus message content (BusMsg_Data), adds a bus message header (BusMsg_Head), and processes it into a bus message (BusMsg).

[0099] Step S1-5: The IOU uses the software security mask SwMask1 to perform an XOR operation on the bus message. In this example, SwMask1 is a 2-byte constant, so an XOR operation is performed on every 2 bytes of the bus message.

[0100] pBusMsg=BusMsg⊕SwMask1

[0101] Step S1-6: The IOU uses the software security mask SwMask2 to perform an XOR operation on every 2 bytes of Front_Head, where Front_Head is the first 10 bytes in BusMsg_Head, which is the parameter required for bus transmission; and SwMask2 is a 2-byte constant.

[0102] Step S1-7: After completing the above processing steps, the IOU broadcasts the message to all DPMs through the bus.

[0103] Step S2: After the FPGA of the DPM obtains the bus message (pBusMsg), it should use the hardware security mask HwMask to perform XOR processing on every 2 bytes of the entire message to obtain the message rBusMsg.

[0104] rBusMsg=pBusMsg⊕HwMask

[0105] Step S3: The DPM driver obtains the processed message from the FPGA and provides it to the DPM software layer.

[0106] Step S4: The software layer of the data processing unit restores and verifies the message and provides data to the application, such as Figure 4 , including the following steps:

[0107] Step S4-1: The DPM software layer screens and classifies the received bus messages according to the Front_Head part of the message rBusMsg. If the message type and SN of the bus message are the same, and the PID belongs to the same communication node, the DPM software layer considers these bus messages to be the same message. For the same message, the DPM software layer only restores the first message received from the odd channel and the even channel, and the remaining messages will be discarded.

[0108] Step S4-2: After receiving the bus message (rBusMsg) provided by the driver, the DPM uses the software security mask SwMask2 to perform an XOR operation on every 2 bytes of the rBusMsg except the Front_Head part.

[0109] BusMsg=rBusMsg⊕SwMask2

[0110] Step S4-3: DPM uses the data recovery mask RCMask to recover the application data received from each channel, and its length is the sum of DataMask1 and DataMask2: the odd bits in RCMask correspond to the value of DataMask1, and the even bits correspond to the value of DataMask2.

[0111] 1) Perform XOR operation on the data sent from the odd channel using the odd bits of the data recovery mask RCMask to obtain the original application data of the odd channel;

[0112] 2) Perform an XOR operation on the data sent from the even channel using the even bits of the data recovery mask RCMask to obtain the original application data of the even channel;

[0113] Step S4-4: If the DPM receives only one channel's application message, it discards the message. If it receives all, it proceeds to the next step.

[0114] Step S4-5: DPM merges the message data of the odd channel and the even channel, fills the odd bytes of the data with the application data of the odd channel byte by byte, and fills the even bytes of the data with the message data of the even channel byte by byte.

[0115] Step S4-6: DPM performs CRC check on the processed data. If it passes the check, it is provided to the application. If it fails, the data is discarded.

[0116] The electronic device of the present invention includes a central processing unit (CPU), which can perform various appropriate actions and processes according to computer program instructions stored in a read-only memory (ROM) or loaded from a storage unit into a random access memory (RAM). In the RAM, various programs and data required for device operation can also be stored. The CPU, ROM and RAM are connected to each other via a bus. An input / output (I / O) interface is also connected to the bus.

[0117] Multiple components in the device are connected to the I / O interface, including: input units, such as keyboards, mice, etc.; output units, such as various types of displays, speakers, etc.; storage units, such as disks, optical disks, etc.; and communication units, such as network cards, modems, wireless communication transceivers, etc. The communication unit allows the device to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunication networks.

[0118] The processing unit performs the various methods and processes described above, such as methods S1 to S4. For example, in some embodiments, methods S1 to S4 may be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as a storage unit. In some embodiments, part or all of the computer program may be loaded and / or installed on the device via a ROM and / or a communication unit. When the computer program is loaded into the RAM and executed by the CPU, one or more steps of methods S1 to S4 described above may be performed. Alternatively, in other embodiments, the CPU may be configured to execute methods S1 to S4 in any other appropriate manner (e.g., by means of firmware).

[0119] The functions described above herein may be performed at least in part by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), complex programmable logic devices (CPLDs), and the like.

[0120] The program code for implementing the method of the present invention can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer or other programmable data processing device, so that the program code, when executed by the processor or controller, enables the functions / operations specified in the flow chart and / or block diagram to be implemented. The program code can be executed entirely on the machine, partially on the machine, partially on the machine as a stand-alone software package and partially on a remote machine, or entirely on a remote machine or server.

[0121] In the context of the present invention, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0122] The above is only a specific embodiment of the present invention, but the protection scope of the present invention is not limited thereto. Any technician familiar with the technical field can easily think of various equivalent modifications or replacements within the technical scope disclosed by the present invention, and these modifications or replacements should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention shall be based on the protection scope of the claims.

Claims

1. A multi-channel data receiving and processing method for a secure computer system, the secure computer system comprising a data processing unit and a plurality of communication units, characterized in that: The method comprises the following steps: Step a, first each communication unit performs channel separation and extraction on the multi-channel message received from the external device, and then uses the data security mask and the software security mask to process the separated message into a bus message, and broadcasts it to all data processing units through the bus; Step b, after the FPGA of the data processing unit obtains the bus message, it uses the hardware security mask to process it, obtains the message rBusMsg, and sends it to the data processing unit; Step c: the data processing unit performs channel restoration, merging and verification on the received message rBusMsg, and sends it to the application.

2. A multi-channel data receiving and processing method for a secure computer system according to claim 1, characterized in that: In the step a, the process of channel separation and extraction of the multi-channel message received from the external device by each communication unit includes: after receiving the multi-channel message, the software layer of each communication unit processes the message into a bus message header BusMsg_Head and a message content MsgData; each communication unit divides the message content MsgData into odd channels and even channels according to its own ID and extraction rules.

3. A multi-channel data receiving and processing method for a secure computer system according to claim 2, characterized in that: The bus message header BusMsg_Head includes the CRC of the message content, the ID of the IOU itself, the SN number of the message and the peripheral node number PID.

4. A multi-channel data receiving and processing method for a secure computer system according to claim 2, characterized in that: The number of the odd channels and the even channels depends on the number of communication units.

5. A multi-channel data receiving and processing method for a secure computer system according to claim 4, characterized in that: The extraction rules are specifically: Odd channel: pMsgDate1[a]=MsgData[2a]a=0,1,2,…(len+1) / 2 Even channel: pMsgDate2[b]=MsgData[2b+1]b=0,1,2,…(len+1) / 2 Among them, MsgData is the message data received from the outside, pMsgDate1 is the application data extracted from the odd channel of the communication unit, pMsgDate2 is the application data extracted from the even channel of the communication unit; len is the total length of the message data received from the outside.

6. A multi-channel data receiving and processing method for a secure computer system according to claim 5, characterized in that: In the step a, using the data security mask and the software security mask to process the separated message into a bus message includes: for the data pMsgDate1 extracted from the odd channel, using the data security mask DataMask1 to perform an XOR operation on the extracted data to obtain the application data BusMsg_Data1; For the data pMsgDate2 extracted from the even channel, an XOR operation is performed on the extracted data using the data security mask DataMask2 to obtain the application data BusMsg_Data2.

7. A multi-channel data receiving and processing method for a secure computer system according to claim 6, characterized in that: In the step a, using the data security mask and the software security mask to process the separated message into a bus message also includes: the communication unit uses the application data processed by the data security mask as the bus message content BusMsg_Data, adds the bus message header BusMsg_Head, and processes it into a bus message BusMsg.

8. A multi-channel data receiving and processing method for a secure computer system according to claim 7, characterized in that: In the step a, using the data security mask and the software security mask to process the separated message into a bus message also includes: the communication unit uses the software security mask SwMask1 to perform an XOR operation on the bus message BusMsg according to the length of SwMask1.

9. A multi-channel data receiving and processing method for a secure computer system according to claim 7, characterized in that: In the step a, using the data security mask and the software security mask to process the separated message into a bus message also includes: the communication unit uses the software security mask SwMask2 to perform an XOR operation on Front_Head according to the length of SwMask2, where Front_Head is the frontmost byte in the bus message header BusMsg_Head that contains the bus transmission information.

10. The multi-channel data receiving and processing method for a secure computer system according to claim 1, characterized in that: The sending to the data processing unit in step b specifically includes: the driver of the data processing unit obtains the processed message from the FPGA and provides it to the software layer of the DPM.

11. A multi-channel data receiving and processing method for a secure computer system according to claim 1, characterized in that: The relationship between the hardware security mask HwMask and the software security mask is: HwMask=SwMask1⊕SwMask2 Among them, ⊕ is an exclusive OR operation, SwMask1 and SwMask2 are software security masks for bus message BusMsg and bus message header BusMsg_Head respectively.

12. The multi-channel data receiving and processing method for a secure computer system according to claim 1, characterized in that: The process of the data processing unit performing channel restoration on the message rBusMsg in step c includes: 1) The data processing unit screens and classifies the received bus message according to the Front_Head part of the received message rBusMsg; 2) For the same message after classification, the software layer of the data processing unit only restores the first message received from the odd channel and the even channel, and the remaining messages will be discarded; 3) The data processing unit uses the software security mask SwMask2 to process the received message rBusMsg and restore the bus message BusMsg; 4) The data processing unit uses the data restoration mask RCMask to restore the application data received from each channel, and restores the original application data of the odd channel and the even channel respectively.

13. A multi-channel data receiving and processing method for a secure computer system according to claim 12, characterized in that: The process of screening and classifying the received bus messages in step 1) includes: the Front_Head part includes the peripheral node number PID, message type, SN number and the channel from which the message comes; if the message type and SN number of the bus message are the same, and the peripheral node number PID belongs to the same communication node, then the software layer of the data processing unit considers these bus messages to be the same message.

14. A multi-channel data receiving and processing method for a secure computer system according to claim 12, characterized in that: Step 3) is specifically as follows: after the data processing unit receives the bus message rBusMsg provided by the driver, it uses the software security mask SwMask2 to perform an XOR operation on the part of rBusMsg except Front_Head. BusMsg=rBusMsg⊕SwMask2 Where ⊕ is the exclusive OR operation.

15. The multi-channel data receiving and processing method for a secure computer system according to claim 12, characterized in that: Step 4) is specifically as follows: the data processing unit performs an XOR operation on the data sent from the odd channel using the odd bits of the data recovery mask RCMask to obtain the application original data DataMask1 of the odd channel; and performs an XOR operation on the data sent from the even channel using the even bits of the data recovery mask RCMask to obtain the application original data DataMask2 of the even channel.

16. An electronic device comprising a memory and a processor, wherein a computer program is stored in the memory, wherein: When the processor executes the program, the method according to any one of claims 1 to 15 is implemented.

Citation Information

Cited By

  • Cross interconnection redundancy communication method based on trackside safety communication platform

    CN120034757A