Hardware-assisted code obfuscation for FPGA soft microprocessors
Title | Hardware-assisted code obfuscation for FPGA soft microprocessors |
Publication Type | Conference Paper |
Year of Publication | 2015 |
Authors | Kainth, M., Krishnan, L., Narayana, C., Virupaksha, S. G., Tessier, R. |
Conference Name | 2015 Design, Automation Test in Europe Conference Exhibition (DATE) |
Date Published | March 2015 |
Publisher | IEEE |
ISBN Number | 978-3-9815-3705-5 |
Keywords | Code Obfuscation, Complexity theory, data dependent control flow modification, encoding, Encryption, field programmable gate arrays, FPGA soft microprocessors, Hardware, hardware assisted code obfuscation, hardware-software codesign, many embedded FPGA system, microprocessor chips, minimal hardware overhead, pubcrawl170107, security of data, Soft microprocessor, Software, software confidentiality, software security, Switches, Table lookup |
Abstract | Soft microprocessors are vital components of many embedded FPGA systems. As the application domain for FPGAs expands, the security of the software used by soft processors increases in importance. Although software confidentiality approaches (e.g. encryption) are effective, code obfuscation is known to be an effective enhancement that further deters code understanding for attackers. The availability of specialization in FPGAs provides a unique opportunity for code obfuscation on a per-application basis with minimal hardware overhead. In this paper we describe a new technique to obfuscate soft microprocessor code which is located outside the FPGA chip in an unprotected area. Our approach provides customizable, data-dependent control flow modification to make it difficult for attackers to easily understand program behavior. The application of the approach to three benchmarks illustrates a control flow cyclomatic complexity increase of about 7x with a modest logic overhead for the soft processor. |
URL | https://ieeexplore.ieee.org/document/7092370 |
DOI | 10.7873/DATE.2015.0498 |
Citation Key | kainth_hardware-assisted_2015 |
- many embedded FPGA system
- Table lookup
- Switches
- software security
- software confidentiality
- Software
- Soft microprocessor
- security of data
- pubcrawl170107
- minimal hardware overhead
- microprocessor chips
- Code Obfuscation
- hardware-software codesign
- hardware assisted code obfuscation
- Hardware
- FPGA soft microprocessors
- field programmable gate arrays
- encryption
- encoding
- data dependent control flow modification
- Complexity theory