PLC Security Engine for Safe Program Rewrite Verification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing control devices, such as PLCs, face security risks due to the potential for malicious falsification of control programs and setting information, especially in IoT environments where external devices can rewrite programs.
Innovation Solution
A control device with a security engine that verifies the identity of user programs, evaluates the validity of setting information, and controls the modification of stored programs and settings based on these verifications, thereby preventing malicious falsification.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If encryption and identification data verification methods are used to protect control programs from malicious falsification, then security is improved, but user burden increases due to the need to prepare and manage identification data and encryption rules
Solution Approach 1:
The control device automatically performs verification of the control program using its own verification code and stored reference verification code, without requiring user preparation of identification data or encryption rules. The system serves itself by autonomously comparing verification codes to determine program authenticity.
Solution Approach 2:
The patent extracts the security verification function into a separate security engine that operates independently from the main control logic. This verification code mechanism is taken out from the complex encryption/decryption process, simplifying the user interface while maintaining security.
2Adaptability or versatility
If external devices are allowed to rewrite control programs in IoT environments, then adaptability is improved, but security risks increase due to potential malicious falsification
Solution Approach 1:
The verification code is calculated and stored in advance before the control program is executed. When a program rewrite is requested, the system performs preliminary verification by comparing the new program's verification code against the stored reference, preventing malicious falsification before it can take effect.
Solution Approach 2:
The system provides feedback by comparing the calculated verification code with the stored reference verification code. This feedback mechanism determines whether the program rewrite is legitimate or malicious, allowing the system to accept or reject the modification accordingly.
Data Source
AI summary
A control device can modify a first user program and first setting information in the storage unit executed by a control engine respectively using a second user program and second setting information received by the control device. A security engine of the control device verifies identity between the first user program and the second user program, evaluates the validity of setting indicated by the second setting information, and permits or prohibits performance of the above modification based on such a verification result and the evaluation.


