Visible to the public Hardware-assisted code obfuscation for FPGA soft microprocessors

TitleHardware-assisted code obfuscation for FPGA soft microprocessors
Publication TypeConference Paper
Year of Publication2015
AuthorsKainth, M., Krishnan, L., Narayana, C., Virupaksha, S. G., Tessier, R.
Conference Name2015 Design, Automation Test in Europe Conference Exhibition (DATE)
Date PublishedMarch 2015
PublisherIEEE
ISBN Number978-3-9815-3705-5
KeywordsCode 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.

URLhttps://ieeexplore.ieee.org/document/7092370
DOI10.7873/DATE.2015.0498
Citation Keykainth_hardware-assisted_2015