skip to main content
research-article

ARES: Persistently Secure Non-Volatile Memory with Processor-transparent and Hardware-friendly Integrity Verification and Metadata Recovery

Published:10 February 2022Publication History
Skip Abstract Section

Abstract

Emerging byte-addressable Non-Volatile Memory (NVM) technology, although promising superior memory density and ultra-low energy consumption, poses unique challenges to achieving persistent data privacy and computing security, both of which are critically important to the embedded and IoT applications. Specifically, to successfully restore NVMs to their working states after unexpected system crashes or power failure, maintaining and recovering all the necessary security-related metadata can severely increase memory traffic, degrade runtime performance, exacerbate write endurance problem, and demand costly hardware changes to off-the-shelf processors.

In this article, we designed and implemented ARES, a new FPGA-assisted processor-transparent security mechanism that aims at efficiently and effectively achieving all three aspects of a security triad—confidentiality, integrity, and recoverability—in modern embedded computing. Given the growing prominence of CPU-FPGA heterogeneous computing architectures, ARES leverages FPGA’s hardware reconfigurability to offload performance-critical and security-related functions to the programmable hardware without microprocessors’ involvement. In particular, recognizing that the traditional Merkle tree caching scheme cannot fully exploit FPGA’s parallelism due to its sequential and recursive function calls, we (1) proposed a Merkle tree cache architecture that partitions a unified cache into multiple levels with parallel accesses and (2) further designed a novel Merkle tree scheme that flattened and reorganized the computation in the traditional Merkle tree verification and update processes to fully exploit the parallel cache ports and to fully pipeline time-consuming hashing operations. Beyond that, to accelerate the metadata recovery process, multiple parallel recovery units are instantiated to recover counter metadata and multiple Merkle sub-trees.

Our hardware prototype of the ARES system on a Xilinx U200 platform shows that ARES achieved up to 1.4× lower latency and 2.6× higher throughput against the baseline implementation, while metadata recovery time was shortened by 1.8 times. When integrated with an embedded processor, neither hardware changes nor software changes are required. We also developed a theoretical framework to analytically model and explain experimental results.

REFERENCES

  1. [1] Alwadi Mazen, Zubair Kazi,, Mohaisen David, and Awad Amro. 2020. Phoenix: Towards ultra-low overhead, recoverable, and persistently secure nvm. IEEE Transactions on Dependable and Secure Computing.Google ScholarGoogle Scholar
  2. [2] Awad Amro, Manadhata Pratyusa, Haber Stuart, Solihin Yan, and Horne William. 2016. Silent shredder: Zero-cost shredding for secure non-volatile main memory controllers. ACM SIGPLAN Not. 51, 4 (2016), 263276.Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. [3] Chodowiec Paweł and Gaj Kris. 2003. Very compact FPGA implementation of the AES algorithm. In Proceedings of the International Workshop on Cryptographic Hardware and Embedded Systems. Springer, 319333.Google ScholarGoogle ScholarCross RefCross Ref
  4. [4] Costan Victor and Devadas Srinivas. 2016. Intel SGX explained. IACR Cryptol. ePrint Arch. 2016, 86 (2016), 1118.Google ScholarGoogle Scholar
  5. [5] Eastlake Donald and Jones Paul. 2001. US secure hash algorithm 1 (SHA1).Google ScholarGoogle Scholar
  6. [6] Edirisooriya Samantha J., Nagesh Shanker R., Monson Blaine R., and Kumar Pankaj. 2018. Method and apparatus for completing pending write requests to volatile memory prior to transitioning to self-refresh mode. US Patent 10,127,968.November 13 2018.Google ScholarGoogle Scholar
  7. [7] Elbaz Reouven, Champagne David, Lee Ruby B., Torres Lionel, Sassatelli Gilles, and Guillemin Pierre. 2007. Tec-tree: A low-cost, parallelizable tree for efficient defense against memory replay attacks. In Proceedings of the International Workshop on Cryptographic Hardware and Embedded Systems. Springer, 289302.Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. [8] Forbes. 2013. Amazon.com Goes Down, Loses $66,240 Per Minute. Retrieved from https://www.forbes.com/sites/kellyclay/2013/08/19/amazon-com-goes-down-loses-66240-per-minute/?sh=3c1ad34f495c.Google ScholarGoogle Scholar
  9. [9] Freij Alexander, Yuan Shougang, Zhou Huiyang, and Solihin Yan. 2020. Persist level parallelism: Streamlining integrity tree updates for secure persistent memory. In Proceedings of the 53rd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO). IEEE, 1427.Google ScholarGoogle ScholarCross RefCross Ref
  10. [10] Gassend Blaise, Suh E., Clarke Dwaine, Dijk Marten Van, and Devadas Srinivas. 2003. Caches and merkle trees for efficient memory authentication. In Proceedings of the 9th International Symposium on High Performance Computer Architecture.Google ScholarGoogle Scholar
  11. [11] Good Tim and Benaissa Mohammed. 2005. AES on FPGA from the fastest to the smallest. In Proceedings of the International Workshop on Cryptographic Hardware and Embedded Systems. Springer, 427440.Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. [12] Hall W. Eric and Jutla Charanjit S.. 2005. Parallelizable authentication trees. In Proceedings of the International Workshop on Selected Areas in Cryptography. Springer, 95109.Google ScholarGoogle Scholar
  13. [13] Intel. 2020. Intel Architecture Memory Encryption Technologies Specification. Retrieved from https://software.intel.com/sites/default/files/managed/a5/16/Multi-Key-Total-Memory-Encryption-Spec.pdf?source=techstories.org.Google ScholarGoogle Scholar
  14. [14] Intel. 2020. Intel Optane Persistent Memory. Retrieved from https://www.intel.com/content/www/us/en/ architecture-and-technology/optane-dc-persistent-memory.html.Google ScholarGoogle Scholar
  15. [15] Intel. 2020. Intel Optane Persistent Memory Write Endurance. Retrieved from https://www.intel.com/content/www/us/en/architecture-and-technology/optane-technology/delivering-new-levels-of-endurance-article-brief.html.Google ScholarGoogle Scholar
  16. [16] Intel. 2020. Intel SGX. Retrieved from https://software.intel.com/content/www/us/en/develop/topics/software-guard-extensions/details.html.Google ScholarGoogle Scholar
  17. [17] Lee Changmin, Shin Wonjae, Kim Dae Jeong, Yu Yongjun, Kim Sung-Joon, Ko Taekyeong, Seo Deokho, Park Jongmin, Lee Kwanghee, Choi Seongho, et al. 2020. NVDIMM-C: A byte-addressable non-volatile memory module for compatibility with standard DDR memory interfaces. In Proceedings of the IEEE International Symposium on High Performance Computer Architecture (HPCA’20). IEEE, 502514.Google ScholarGoogle ScholarCross RefCross Ref
  18. [18] Liu Sihang, Seemakhupt Korakit, Pekhimenko Gennady, Kolli Aasheesh, and Khan Samira. 2019. Janus: Optimizing memory and storage support for non-volatile memory systems. In Proceedings of the ACM/IEEE 46th Annual International Symposium on Computer Architecture (ISCA’19). IEEE, 143156.Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. [19] McCalpin John D.. 1995. Memory bandwidth and machine balance in current high performance computers. Proceedings of the IEEE Computer Society Technical Committee on Computer Architecture Newsletter, 1925.Google ScholarGoogle Scholar
  20. [20] Pallister James, Hollis Simon, and Bennett Jeremy. 2013. BEEBS: Open benchmarks for energy measurements on embedded platforms. arXiv:1308.5174. Retrieved from https://arxiv.org/abs/1308.5174.Google ScholarGoogle Scholar
  21. [21] Rogers Brian, Chhabra Siddhartha, Prvulovic Milos, and Solihin Yan. 2007. Using address independent seed encryption and bonsai merkle trees to make secure processors os-and performance-friendly. In Proceedings of the 40th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO’07). IEEE, 183196.Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. [22] Rudoff Andy. 2016. Deprecating the PCOMMIT Instruction. Retrieved from Software.Intel.com/en-us/blogs/2016/09/12/deprecate-pcommit-instruction, Intel Corp.Google ScholarGoogle Scholar
  23. [23] Suh G. Edward, Clarke Dwaine, Gassend Blaise, Dijk Marten Van, and Devadas Srinivas. 2003. AEGIS: Architecture for tamper-evident and tamper-resistant processing. In Proceedings of the ACM International Conference on Supercomputing 25th Anniversary Volume. 357368.Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. [24] Szefer Jakub and Biedermann Sebastian. 2014. Towards fast hardware memory integrity checking with skewed merkle trees. In Proceedings of the 3rd Workshop on Hardware and Architectural Support for Security and Privacy. 18.Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. [25] Vig Saru, Jiang Guiyuan, and Lam Siew-Kei. 2018. Dynamic skewed tree for fast memory integrity verification. In Proceedings of the Design, Automation & Test in Europe Conference & Exhibition (DATE’18). IEEE, 642647.Google ScholarGoogle ScholarCross RefCross Ref
  26. [26] Vig Saru, Juneja Rohan, Jiang Guiyuan, Lam Siew-Kei, and Ou Changhai. 2019. Framework for fast memory authentication using dynamically skewed integrity tree. IEEE Trans. VLSI Syst. 27, 10 (2019), 23312343.Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. [27] Vig Saru, Lam Siew-Kei, and Juneja Rohan. 2021. Cache-aware dynamic skewed tree for fast memory authentication. In Proceedings of the 26th Asia and South Pacific Design Automation Conference. 402407.Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. [28] Vig Saru, Tzer Tan Yng, Jiang Guiyuan, and Lam Siew-Kei. 2017. Customizing skewed trees for fast memory integrity verification in embedded systems. In Proceedings of the IEEE Computer Society Annual Symposium on VLSI (ISVLSI’17). IEEE, 213218.Google ScholarGoogle ScholarCross RefCross Ref
  29. [29] Werner Mario, Unterluggauer Thomas, Schilling Robert, Schaffenrath David, and Mangard Stefan. 2017. Transparent memory encryption and authentication. In Proceedings of the 27th International Conference on Field Programmable Logic and Applications (FPL’17). IEEE, 16.Google ScholarGoogle ScholarCross RefCross Ref
  30. [30] Xilinx. 2018. UG909 Vivado Partial Reconfiguration. Retrieved from https://www.xilinx.com/support/documentation/sw_manuals/xilinx2018_1/ug909-vivado-partial-reconfiguration.pdf.Google ScholarGoogle Scholar
  31. [31] Yang Fan, Chen Youmin, Mao Haiyu, Lu Youyou, and Shu Jiwu. 2020. ShieldNVM: An efficient and fast recoverable system for secure non-volatile memory. ACM Trans. Stor. 16, 2 (2020), 131.Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. [32] Yang Fan, Lu Youyou, Chen Youmin, Mao Haiyu, and Shu Jiwu. 2019. No compromises: Secure NVM with crash consistency, write-efficiency and high-performance. In Proceedings of the 56th ACM/IEEE Design Automation Conference (DAC’19). IEEE, 16.Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. [33] Ye Mao, Hughes Clayton, and Awad Amro. 2018. Osiris: A Low-Cost Mechanism to Enable Restoration of Secure Non-Volatile Memories.Technical Report. Sandia National Laboratory, Albuquerque, NM.Google ScholarGoogle Scholar
  34. [34] Zivojnovic Vojin. 1994. DSPstone: A DSP-oriented benchmarking methodology. In Proceedings of the Signal Processing Applications & Technology Conference, 715720.Google ScholarGoogle Scholar
  35. [35] Zou Yu and Lin Mingjie. 2019. FAST: A frequency-aware skewed merkle tree for FPGA-secured embedded systems. In Proceedings of the IEEE Computer Society Annual Symposium on VLSI (ISVLSI’19). IEEE, 326331.Google ScholarGoogle ScholarCross RefCross Ref
  36. [36] Zubair Kazi Abu and Awad Amro. 2019. Anubis: Ultra-low overhead and recovery time for secure non-volatile memories. In Proceedings of the 46th International Symposium on Computer Architecture. 157168.Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. [37] Zuo Pengfei, Hua Yu, and Xie Yuan. 2019. SuperMem: Enabling application-transparent secure persistent memory with low overheads. In Proceedings of the 52nd Annual IEEE/ACM International Symposium on Microarchitecture. 479492.Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. ARES: Persistently Secure Non-Volatile Memory with Processor-transparent and Hardware-friendly Integrity Verification and Metadata Recovery

          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

          Full Access

          • Published in

            cover image ACM Transactions on Embedded Computing Systems
            ACM Transactions on Embedded Computing Systems  Volume 21, Issue 1
            January 2022
            288 pages
            ISSN:1539-9087
            EISSN:1558-3465
            DOI:10.1145/3505211
            Issue’s Table of Contents

            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 ACM 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: 10 February 2022
            • Accepted: 1 October 2021
            • Revised: 1 May 2021
            • Received: 1 February 2020
            Published in tecs Volume 21, Issue 1

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • research-article
            • Refereed

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader

          Full Text

          View this article in Full Text.

          View Full Text

          HTML Format

          View this article in HTML Format .

          View HTML Format
          About Cookies On This Site

          We use cookies to ensure that we give you the best experience on our website.

          Learn more

          Got it!