PUF-Based Opcode Obfuscation for Semiconductor Security
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing security measures for semiconductor devices are inadequate in preventing reverse-engineering and unauthorized access, as hackers can exploit netlists and software to steal proprietary information or insert malware, with existing countermeasures failing to effectively mitigate losses and protect proprietary interests.
Innovation Solution
A method involving opcode obfuscation using a physically unclonable function (PUF) to transform conditional branch commands, where the obfuscated opcode has the same syntax but different semantics, making it harder for attackers to reverse-engineer the code, by generating a key based on the PUF and combining it with an inversion flag using XOR operations to recover the original opcode.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If opcode commands are obfuscated to prevent reverse-engineering, then security against hacking is improved, but the complexity of the system increases due to the need for PUF-based key generation and obfuscation/deobfuscation mechanisms
Solution Approach 1:
The system uses the chip's own physically unclonable function (PUF) characteristics to generate encryption keys, making the security mechanism self-contained and eliminating the need for external key distribution infrastructure. The PUF-based key generation is intrinsic to the chip itself, allowing it to securely obfuscate and deobfuscate opcode commands without requiring additional complex key management systems.
2Adaptability or versatility
If PUF-based key generation is implemented to enable secure opcode execution, then authorization control is improved, but the manufacturing precision requirements increase due to the sensitivity of PUF characteristics
Solution Approach 1:
The system changes the operational parameters of the PUF by applying different stimulus conditions (such as varying voltage, temperature, or timing parameters) to elicit different but reproducible responses from the PUF. This allows the system to generate consistent cryptographic keys despite variations in physical manufacturing characteristics, effectively decoupling security from manufacturing precision requirements.
3Difficulty of detecting and measuring
If opcode obfuscation is applied to protect proprietary information, then the difficulty of reverse-engineering increases, but the execution time increases due to the deobfuscation process required before command execution
Solution Approach 1:
The system performs obfuscation of the opcode commands in advance during the chip manufacturing or initialization process. The obfuscated opcodes are pre-loaded into the chip's memory in their encrypted form, and the corresponding PUF-based keys are generated and stored securely. During execution, the chip simply needs to retrieve the pre-obfuscated commands and apply the deobfuscation transformation, which is a relatively fast operation compared to real-time encryption.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method for securing an integrated circuit chip includes obtaining a first value from a first storage area in the chip, obtaining a second value from a second storage area in the chip, generating a third value based on the first value and the second value, and converting a first opcode command obfuscated as a second opcode command into a non-obfuscated form of the first opcode command based on the third value. The first value corresponds to a physically unclonable function (PUF) of the chip. The second value is a key including information indicating a type of obfuscation performed to obfuscate the first opcode command as the second opcode command. The third value may be an inversion flag indicating a type of obfuscation performed to obfuscate the first opcode command as the second opcode command.