• DocumentCode
    2480179
  • Title

    A high-performance, low-overhead microarchitecture for secure program execution

  • Author

    Kanuparthi, Arun K. ; Karri, Ramesh ; Ormazabal, Gaston ; Addepalli, Sateesh K.

  • Author_Institution
    Polytech. Inst. of NYU, Brooklyn, NY, USA
  • fYear
    2012
  • fDate
    Sept. 30 2012-Oct. 3 2012
  • Firstpage
    102
  • Lastpage
    107
  • Abstract
    High performance and low power consumption have traditionally been the primary design goals for computer architects. With computer systems facing a wave of attacks that disrupt their normal execution or leak sensitive data, computer security is no longer an afterthought. Dynamic integrity checking has emerged as a possible solution to protect computer systems by thwarting various attacks. Dynamic integrity checking involves calculation of hashes of the instructions in the code being executed and comparing these hashes against corresponding precomputed hashes at runtime. The processor pipeline is stalled and the instructions are not allowed to commit until the integrity check is complete. Such an approach has severe performance implications as it stalls the pipeline for several cycles. In this paper, we propose a hardware-based dynamic integrity checking approach that does not stall the processor pipeline. We permit the instructions to commit before the integrity check is complete, and allow them to make changes to the register file, but not the data cache. The system is rolled back to a known state if the checker deems the instructions as modified. Our experiments show an average performance overhead of 1.66%, area overhead of 4.25%, and a power overhead of 2.45% over a baseline processor.
  • Keywords
    computer architecture; computer network security; cryptography; pipeline processing; computer security; computer systems; hashes; high-performance microarchitecture; integrity checking; low-overhead microarchitecture; processor pipeline; secure program execution; Benchmark testing; Buffer storage; Computers; Pipelines; Registers; Runtime; Security;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Computer Design (ICCD), 2012 IEEE 30th International Conference on
  • Conference_Location
    Montreal, QC
  • ISSN
    1063-6404
  • Print_ISBN
    978-1-4673-3051-0
  • Type

    conf

  • DOI
    10.1109/ICCD.2012.6378624
  • Filename
    6378624