Abstract
The increasing globalization of the intellectual property (IP) industry has added a new risk for designers when using 3rd-party programs. Malicious entities have more opportunities to insert Hardware Trojans (HT) into these 3rd-party IPs, which can often remain undetected by conventional testing procedures. Even in a case where these Trojans could be detected from a full testing suite, the time associated with running the full suite could be infeasible, or the full testing suite might not be available to the designer. This work performs a feasibility study on the use of evolutionary computing (EC) to evolve 3rd-party hardware design language (HDL) IPs to remove HT from an infected IP. We measure the strength and weaknesses of EC by testing different mutations schemes across various evolutionary goals, with the use of full and partial testing suites. The scalability of the approach is then shown in higher dimensions, while showing that the synthesized designs of the evolved programs have no additional overhead compared to the original uninfected code when tested in Vivado. We then conclude with some suggestions of future works in the area of targeted evolution on larger circuits containing more complex Hardware Trojans.
Similar content being viewed by others
Code Availability
The code for this work is available under the MIT license at https://github.com/king2b3/GP.
References
Mal-Sarkar S, Krishna A, Ghosh A, Bhunia S (2014) Hardware trojan attacks in FPGA devices: threat analysis and effective counter measures. In Proceedings of the 24th Edition of the Great Lakes Symposium on VLSI, pp 287–292
Tehranipoor M, Koushanfar F (2016) A survey of hardware trojan taxonomy and detection. IEEE Design & Test of Computers 01:1–1
Jin Y, Kupp N, Makris Y (2009) Experiences in hardware Trojan design and implementation. In 2009 IEEE International Workshop on Hardware-Oriented Security and Trust, IEEE, pp 50–57
Wei S, Potkonjak M (2013) The undetectable and unprovable hardware trojan horse. In 2013 50th ACM/EDAC/IEEE Design Automation Conference (DAC), IEEE, pp 1–2
Agrawal D, Baktir S, Karakoyunlu D, Rohatgi P, Sunar B (2007) Trojan detection using IC fingerprinting. In 2007 IEEE Symposium on Security and Privacy (SP’07), IEEE, pp 296–310
Alkabani Y, Koushanfar F (2007) Active hardware metering for intellectual property protection and security. In USENIX security symposium, pp 291–306
Liu H, Luo H, Wang L (2011) Design of hardware trojan horse based on counter. In 2011 International Conference on Quality, Reliability, Risk, Maintenance, and Safety Engineering, IEEE, pp 1007–1009
Kashtan N, Alon U (2005) Spontaneous evolution of modularity and network motifs. Proceedings of the National Academy of Sciences 102(39):13773–13778
Koza JR, Andre D, Keane MA, Bennett FH III (1999) Genetic programming III: Darwinian invention and problem solving, vol 3. Morgan Kaufmann
Larchev GV, Lohn J (2006) D. Evolutionary based techniques for fault tolerant field programmable gate arrays. In 2nd IEEE International Conference on Space Mission Challenges for Information Technology (SMC-IT’06), IEEE, pp 8–pp
Ping L, Yu S (2010) An adaptive binary particle swarm optimization for evolvable hardware. In 2010 2nd International Conference on Industrial and Information Systems, vol. 1, IEEE, pp 98–101
Collins Z (2019) Hardware trojans in FPGA device IP: solutions through evolutionary computation. PhD thesis, University of Cincinnati
Collins Z, King B, Jha R, Kapp D, Ralescu A (2019) Evolvable hardware for security through diverse variants. In 2019 IEEE National Aerospace and Electronics Conference (NAECON), IEEE, pp 257–261
Chen Z, Guo S, Wang J, Li Y, Lu Z (2019) Toward FPGA security in IoT: a new detection technique for hardware trojans. IEEE Internet of Things Journal 6(4):7061–7068
Cruz J, Farahmandi F, Ahmed A, Mishra P (2018) Hardware Trojan detection using ATPG and model checking. In 2018 31st international conference on VLSI design and 2018 17th international conference on embedded systems (VLSID), IEEE, pp 91–96
Shakya B, He T, Salmani H, Forte D, Bhunia S, Tehranipoor M (2017) Benchmarking of hardware trojans and maliciously affected circuits. Journal of Hardware and Systems Security 1(1):85–102
Yu S, Gu C, Liu W, O’Neill M (2020) A novel feature extraction strategy for hardware trojan detection. In 2020 IEEE International Symposium on Circuits and Systems (ISCAS), IEEE, pp 1–5
Cohoon J, Kairo J, Lienig J (2003) Evolutionary algorithms for the physical design of VLSI circuits. Springer, Berlin Heidelberg, pp 683–711
Levi D (2000) HereBoy: a fast evolutionary algorithm. In Proceedings. The Second NASA/DoD Workshop on Evolvable Hardware, IEEE, pp 17–24
Gordon GT, Bentley JP (2002) On evolvable hardware. In Soft computing in industrial electronics. Springer, pp 279–323
Popp RL, Montana DJ, Gassner RR, Vidaver G, Iyer S (1998) Automated hardware design using genetic programming, VHDL, and FPGAs. In SMC’98 Conference Proceedings. 1998 IEEE International Conference on Systems, Man, and Cybernetics (Cat. No. 98CH36218), vol. 3, IEEE, pp 2184–2189
Keim M, Drechsler N, Becker B (1999) Combining gas and symbolic methods for high quality tests of sequential circuits. In Proceedings of the ASP-DAC ’99 Asia and South Pacific Design Automation Conference 1999 (Cat. No.99EX198), vol. 1, pp 315–318
Rudnick E, Patel J, Greenstein G, Niermann T (1997) A genetic algorithm framework for test generation. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 16(9):1034–1044
Rudnick EM, Patel JH, Greenstein GS, Niermann TM (1997) A genetic algorithm framework for test generation. IEEE Transactions on computer-aided design of integrated circuits and systems 16(9):1034–1044
Saha S, Chakraborty RS, Nuthakki SS, Mukhopadhyay D et al (2015) Improved test pattern generation for hardware trojan detection using genetic algorithm and Boolean satisfiability. In International Workshop on Cryptographic Hardware and Embedded Systems, Springer, pp 577–596
Yu X, Fin A, Fummi F, Rudnick E (2002) A genetic testing framework for digital integrated circuits. In 14th IEEE International Conference on Tools with Artificial Intelligence, 2002. (ICTAI 2002). Proceedings, pp 521–526
Eiben AE, Smith JE et al (2003) Introduction to evolutionary computing, vol 53. Springer
Koza JR (1992) Genetic programming: on the programming of computers by means of natural selection, vol. 1. MIT press
Beyer H-G, Schwefel H-P (2002) Evolution strategies-a comprehensive introduction. Natural computing 1(1):3–52
Xu H (2015) An algorithm for comparing similarity between two trees. arXiv preprint. arXiv: 1508.03381
Zhang K, Shasha D (1989) Simple fast algorithms for the editing distance between trees and related problems. SIAM journal on computing 18(6):1245–1262
Zhang K, Statman R, Shasha D (1992) On the editing distance between unordered labeled trees. Information processing letters 42(3):133–139
Banga M, Hsiao MS (2008) A region based approach for the identification of hardware trojans. In 2008 IEEE International Workshop on Hardware-Oriented Security and Trust, IEEE, pp 40–47
Salmani H, Tehranipoor M, Karri R (2013) On design vulnerability analysis and trust benchmarks development. In 2013 IEEE 31st international conference on computer design (ICCD), IEEE, pp 471–474
Acknowledgements
The authors would like to thank Tyler Westland, Jenna King, Joshua Mayersky, Wayne Stegner, and Siddharth Barve for their help and feedback over the process of this work.
Funding
This research was funded by Defense Associated Graduate Student Innovators project number RY20-9. This material is based on research sponsored by the Air Force Research Laboratory and the Southwestern Council for Higher Education under Agreement FA8650-18-C-1191 P00005, and is PA approved along case number AFRL-2021-1299. The US Government is authorized to reproduce and distribute reprints for governmental purposes notwithstanding any copyright notation thereon.
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of Interest
The authors declare no competing interests.
Additional information
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
King, B., Jha, R., Kebede, T. et al. Securing 3rd-Party HDL IP: a Feasibility Study Using Evolutionary Methods. J Hardw Syst Secur 6, 17–31 (2022). https://doi.org/10.1007/s41635-022-00125-9
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s41635-022-00125-9