• DocumentCode
    48532
  • Title

    FPGA Trojans Through Detecting and Weakening of Cryptographic Primitives

  • Author

    Swierczynski, Pawel ; Fyrbiak, Marc ; Koppe, Philipp ; Paar, Christof

  • Author_Institution
    Horst Gortz Inst. for IT Security, Ruhr Univ. Bochum, Bochum, Germany
  • Volume
    34
  • Issue
    8
  • fYear
    2015
  • fDate
    Aug. 2015
  • Firstpage
    1236
  • Lastpage
    1249
  • Abstract
    This paper investigates a novel attack vector against cryptography realized on FPGAs, which poses a serious threat to real-world applications. We demonstrate how a targeted bitstream modification can seriously weaken cryptographic algorithms, which we show with the examples of AES and 3-DES. The attack is performed by modifying the FPGA bitstream that configures the hardware elements during initialization. Recently, it has been shown that cloning of FPGA designs is feasible, even if the bitstream is encrypted. However, due to its proprietary file format, a meaningful modification is challenging. While some previous work addressed bitstream reverse-engineering, so far it has not been evaluated how difficult it is to detect and modify cryptographic elements. We outline two possible practical attacks that have serious security implications. We target the S-boxes of block ciphers that can be implemented in look-up tables or stored as precomputed set of values in the memory of the FPGA. We demonstrate that it is possible to detect and apply meaningful changes to cryptographic elements inside an unknown, proprietary, and undocumented bitstream. Our proposed attack does not require any knowledge of the internal routing. Furthermore, we show how an AES key can be revealed within seconds. Finally, we discuss countermeasures that can raise the bar for an adversary to successfully perform this kind of attack.
  • Keywords
    cryptography; field programmable gate arrays; invasive software; 3-DES cryptography; AES cryptography; FPGA bitstream; FPGA design; FPGA trojans; advanced encryption standard; attack vector; bitstream modification; bitstream reverse-engineering; block ciphers; cryptographic algorithms; cryptographic elements; cryptographic primitives; data encryption standard; field programmable gate array; look-up tables; Boolean functions; Cryptography; Field programmable gate arrays; Indexes; Multiplexing; Table lookup; AES; Advanced Encryption Standard (AES); DES; FPGAs; Hardware security; Trojans; bitstream manipulation; data Encryption Standard (DES); field Programmable Gate Arrays (FPGAs); hardware security; reverse-engineering;
  • fLanguage
    English
  • Journal_Title
    Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0278-0070
  • Type

    jour

  • DOI
    10.1109/TCAD.2015.2399455
  • Filename
    7029686