skip to main content
10.1145/3600160.3605168acmotherconferencesArticle/Chapter ViewAbstractPublication PagesaresConference Proceedingsconference-collections
research-article

FISMOS – An FPGA Implementation of a Security Module as Open Source

Published:29 August 2023Publication History

ABSTRACT

Many IoT devices are trusted with critical tasks and therefore require solid device security. As a result, manufacturers search for cost-efficient and easy-to-integrate trust anchors, but common IT solutions, like a Trusted Platform Modules (TPMs) are often not suitable for Internet of Things (IoT) use cases. Simultaneously, the adoption of System on Chip (SoC) devices, integrating a set of ARM® cores and Programmable Logic (PL) within one package are on the rise in several industries. While the ARM® processors facilitate networking and graphical user interfaces, a Field Programmable Gate Array (FPGA) fabric enables real-time control or acceleration of AI applications on the edge. This paper presents a solution to combine these trends for the benefit of device security: an FPGA Implementation of a Security Module as Open Source (FISMOS). The security module focuses on simplicity, providing security capabilities by little expense of logic as well as engineering resources. FISMOS is based on the PicoRV32 soft-core processor and features an AXI memory interface for data exchange with its host. It enables secure symmetric and asymmetric cryptographic functions, key enclosure, and may serve as a trust anchor for the Linux kernel. This configuration allows for customized security functionalities and a robust segmentation between the encapsulated area of the FISMOS and the Linux OS.

References

  1. Arm. 2020. AMBA AXI and ACE Protocol Specification. https://developer.arm.com/documentation/ihi0022/h (Jan. 11, 2022).Google ScholarGoogle Scholar
  2. Lyonel Barthe, Luis Vitorio Cargnini, Pascal Benoit, and Lionel Torres. 2011. The SecretBlaze: A Configurable and Cost-Effective Open-Source Soft-Core Processor. In 2011 IEEE International Symposium on Parallel and Distributed Processing Workshops and Phd Forum. 310–313. https://doi.org/10.1109/IPDPS.2011.154Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Mark Beal. 2017. Using RISC-V as a Security Processor for DARPA CHIPS and Commercial IoT. In 7th RISC-V Workshop Proceedings. https://riscv.org/proceedings/2017/12/7th-risc-v-workshop-proceedingsGoogle ScholarGoogle Scholar
  4. cliffordwolf. 2019. picorv32. https://github.com/cliffordwolf/picorv32 (Apr. 27, 2020).Google ScholarGoogle Scholar
  5. William Diehl, Abubakr Abdulgadir, Jens-Peter Kaps, and Kris Gaj. 2017. Side-channel resistant soft core processor for lightweight block ciphers. In 2017 International Conference on ReConFigurable Computing and FPGAs (ReConFig). IEEE, 1–8. https://ieeexplore.ieee.org/document/8279819Google ScholarGoogle ScholarCross RefCross Ref
  6. Lubos Gaspar, Viktor Fischer, Lilian Bossuet, and Milos Drutarovsky. 2011. Cryptographic Extension for Soft General-Purpose Processors with Secure Key Management. In 2011 21st International Conference on Field Programmable Logic and Applications. 500–505. https://doi.org/10.1109/FPL.2011.99Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Lubos Gaspar, Viktor Fischer, Lilian Bossuet, and Robert Fouquet. 2012. Secure extension of FPGA general purpose processors for symmetric key cryptography with partial reconfiguration capabilities. ACM Transactions on Reconfigurable Technology and Systems (TRETS) 5, 3 (2012), 1–13. https://doi.org/10.1145/2362374.2362380Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. GnuTLS. 2022. The GnuTLS Transport Layer Security Library. https://www.gnutls.org (July 21, 2022).Google ScholarGoogle Scholar
  9. C. Heinz, Y. Lavan, J. Hofmann, and A. Koch. 2019. A Catalog and In-Hardware Evaluation of Open-Source Drop-In Compatible RISC-V Softcore Processors. In 2019 International Conference on ReConFigurable Computing and FPGAs (ReConFig). 1–8. https://doi.org/10.1109/ReConFig48160.2019.8994796Google ScholarGoogle ScholarCross RefCross Ref
  10. Infineon. 2021. 32-bit AURIX™ TriCore™ Microcontroller. https://www.infineon.com/cms/en/product/microcontroller/32-bit-tricore-microcontroller (Nov. 8, 2021).Google ScholarGoogle Scholar
  11. ironPeak Services GCV. 2020. Crouching T2, Hidden Danger. https://ironpeak.be/blog/crouching-t2-hidden-danger/#security-issues (Apr. 14, 2021).Google ScholarGoogle Scholar
  12. David Kleidermacher. 2012. Embedded systems security : practical methods for safe and secure software and systems development. Elsevier, Amsterdam.Google ScholarGoogle Scholar
  13. Alexander Klimm, Oliver Sander, and Jurgen Becker. 2009. A microblaze specific co-processor for real-time hyperelliptic curve cryptography on xilinx fpgas. In 2009 IEEE International Symposium on Parallel & Distributed Processing. IEEE, 1–8. https://ieeexplore.ieee.org/document/5161204Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Mbed-TLS. 2021. mbedtls. https://github.com/Mbed-TLS/mbedtls (July 21, 2022).Google ScholarGoogle Scholar
  15. Microchip Technology Inc.2021. ATECC508A. https://www.microchip.com/en-us/product/atecc508a (Nov. 7, 2021).Google ScholarGoogle Scholar
  16. Open Source Hardware Association. 2021. Best Practices for Sharing FPGA Designs. https://www.oshwa.org/best-practices-for-sharing-fpga-designs (Jan. 3, 2021).Google ScholarGoogle Scholar
  17. OpenSSL. 2022. OpenSSL. https://www.openssl.org (July 21, 2022).Google ScholarGoogle Scholar
  18. OpenTitan. 2021. OpenTitan Hardware Dashboard. https://docs.opentitan.org/hw (Mar. 22, 2021).Google ScholarGoogle Scholar
  19. David Patterson. 2017. The RISC-V reader an open architecture atlas. Strawberry Canyon LLC, San Francisco, CA.Google ScholarGoogle Scholar
  20. Pulse Security. 2019. Extracting Bitlocker Keys from a TPM. https://pulsesecurity.co.nz/articles/TPM-sniffing (Mar. 19, 2019).Google ScholarGoogle Scholar
  21. Schubaur. 2022. FISMOS. https://github.com/hsainnos/FISMOS (July 22, 2022).Google ScholarGoogle Scholar
  22. Philipp Schubaur. 2021. Choosing a RISC-V Core for Implementing an FPGA-Based Security Module. In Applied Research Conference 2021. OTH Amberg-Weiden, Amberg, Germany, 76–80. https://doi.org/10.25929/7mtt-nz04Google ScholarGoogle ScholarCross RefCross Ref
  23. John Shalf. 2020. The future of computing beyond Moore’s Law. Philosophical Transactions of The Royal Society A-mathematical Physical and Engineering Sciences (March 2020). https://doi.org/10.1098/rsta.2019.0061Google ScholarGoogle ScholarCross RefCross Ref
  24. Synopsys. 2022. mbed-tls. https://www.openhub.net/p/mbed-tls/analyses/latest/languages_summary (July 21, 2022).Google ScholarGoogle Scholar
  25. Team libtom. 2022. LibTomCrypt. https://www.libtom.net/LibTomCrypt (July 21, 2022).Google ScholarGoogle Scholar
  26. The T2 Development Blog. 2020. Plug’nPwn - Connect to Jailbreak. https://blog.t8012.dev/plug-n-pwn (Nov. 4, 2021).Google ScholarGoogle Scholar
  27. Trusted Computing Group Administration. 2019. TPM 2.0 Library. https://trustedcomputinggroup.org/resource/tpm-library-specification (Apr. 12, 2022).Google ScholarGoogle Scholar
  28. TUL. 2022. PYNQ-Z2. https://www.tulembedded.com/FPGA/ProductsPYNQ-Z2.html (July 21, 2022).Google ScholarGoogle Scholar
  29. Haixin Wang, Guoqiang Bai, and Hongyi Chen. 2010. A gbps ipsec ssl security processor design and implementation in an fpga prototyping platform. Journal of Signal Processing Systems 58, 3 (2010), 311–324. https://doi.org/10.1007/s11265-009-0371-2Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Stephen Williams. 2022. Icarus Verilog. https://github.com/steveicarus/iverilog (June 27, 2022).Google ScholarGoogle Scholar
  31. wolfSSL. 2022. wolfSSL Embedded SSL/TLS Library. https://www.wolfssl.com/license (July 21, 2022).Google ScholarGoogle Scholar
  32. Xilinx. 2005. Using Look-Up Tables as Distributed RAM in Spartan-3 Generation FPGAs. https://www.xilinx.com/support/documentation/application_notes/xapp464.pdf (July 3, 2022).Google ScholarGoogle Scholar
  33. Xilinx. 2018. Zynq-7000 SoC First Generation Architecture. https://www.xilinx.com/products/silicon-devices/soc/zynq-7000.html (July 18, 2022).Google ScholarGoogle Scholar
  34. Xilinx. 2021. Vivado Design Suite. https://www.xilinx.com/products/design-tools/vivado.html (Mar. 22, 2021).Google ScholarGoogle Scholar
  35. Xilinx. 2022. Accessing BRAM In Linux. https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18842412/Accessing+BRAM+In+Linux (Jan. 17, 2022).Google ScholarGoogle Scholar

Index Terms

  1. FISMOS – An FPGA Implementation of a Security Module as Open Source

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Other conferences
        ARES '23: Proceedings of the 18th International Conference on Availability, Reliability and Security
        August 2023
        1440 pages
        ISBN:9798400707728
        DOI:10.1145/3600160

        Copyright © 2023 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 29 August 2023

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article
        • Research
        • Refereed limited

        Acceptance Rates

        Overall Acceptance Rate228of451submissions,51%
      • Article Metrics

        • Downloads (Last 12 months)61
        • Downloads (Last 6 weeks)10

        Other Metrics

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      HTML Format

      View this article in HTML Format .

      View HTML Format