An Approach for Safe and Secure Software Protection Supported by Symbolic Execution
This addresses software piracy and security for industrial control systems, though it appears incremental as it builds on existing PUF and symbolic execution techniques.
The paper tackles software protection for industrial control systems by introducing a hardware-software binding method using Physically Unclonable Functions (PUFs) and symbolic execution, ensuring correct execution only on target hardware and preserving safety properties on other machines while being secure against reverse engineering.
We introduce a novel copy-protection method for industrial control software. With our method, a program executes correctly only on its target hardware and behaves differently on other machines. The hardware-software binding is based on Physically Unclonable Functions (PUFs). We use symbolic execution to guarantee the preservation of safety properties if the software is executed on a different machine, or if there is a problem with the PUF response. Moreover, we show that the protection method is also secure against reverse engineering.