Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1109/ISCA.2005.30acmconferencesArticle/Chapter ViewAbstractPublication PagesiscaConference Proceedingsconference-collections
Article

High Efficiency Counter Mode Security Architecture via Prediction and Precomputation

Published: 01 May 2005 Publication History

Abstract

Encrypting data in unprotected memory has gained much interest lately for digital rights protection and security reasons. Counter Mode is a well-known encryption scheme. It is a symmetric-key encryption scheme based on any block cipher, e.g. AES. The schemeýs encryption algorithm uses a block cipher, a secret key and a counter (or a sequence number) to generate an encryption pad which is XORed with the data stored in memory. Like other memory encryption schemes, this method suffers from the inherent latency of decrypting encrypted data when loading them into the on-chip cache. One solution that parallelizes data fetching and encryption pad generation requires the sequence numbers of evicted cache lines to be cached on-chip. On-chip sequence number caching can be successful in reducing the latency at the cost of a large area overhead. In this paper, we present a novel technique to hide the latency overhead of decrypting counter mode encrypted memory by predicting the sequence number and pre-computing the encryption pad that we call one-time-pad or OTP. In contrast to the prior techniques of sequence number caching, our mechanism solves the latency issue by using idle decryption engine cycles to speculatively predict and pre-compute OTPs before the corresponding sequence number is loaded. This technique incurs very little area overhead. In addition, a novel adaptive OTP prediction technique is also presented to further improve our regular OTP prediction and precomputation mechanism. This adaptive scheme is not only able to predict encryption pads associated with static and infrequently updated cache lines but also those frequently updated ones as well. Experimental results using SPEC2000 benchmark show an 82% prediction rate. Moreover, we also explore several optimization techniques for improving the prediction accuracy. Two specific techniques, Two-level prediction and Context-based prediction are presented and evaluated. For the two-level prediction, the prediction rate was improved from 82% to 96%. With the context-based prediction, the prediction rate approaches 99%. Context-based OTP prediction outperforms a very large 512KB sequence number cache for many memory-bound SPEC programs. IPC results show an overall 15% to 40% performance improvement using our prediction and precomputation, and another 7% improvement when context-based prediction techniques is used.

References

[1]
{1} W. A. Arbaugh, D. J. Farber, and J. M. Smith. A Secure and Reliable Bootstrap Architecture. In Proceedings of the 1997 IEEE Symposium on Security and Privacy, page 65. IEEE Computer Society, 1997.
[2]
{2} J.-L. Baer and T.-F. Chen. Effective Hardware-Based Data Prefetching for High-Performance Processors. IEEE Transactions on Computers, 44(5):609-623, 1995.
[3]
{3} M. Bellare, A. Desai, E. Jokipii, and P. Rogaway. A Concrete Security Treatment of Symmetric Encryption. In Proceedings of the 38th Annual Symposium on Foundations of Computer Science, page 394. IEEE Computer Society, 1997.
[4]
{4} M. Bellare and C. Namprempre. Authenticated Encryption: Relations among Notions and Analysis of the Generic Composition Paradigm. In Advances in Cryptology -- Asiacrypt 2000 Proceedings, Lecture Notes in Computer Science, 1976, 2000.
[5]
{5} T.-F. Chen and J.-L. Baer. Reducing Memory Latency via Non-blocking and Prefetching Caches. In Proceedings of the 5th International Conference on Architectural Support for Programming Languages and Operating System), volume 27, pages 51-61, New York, NY, 1992. ACM Press.
[6]
{6} C. Cowan, S. Beattie, J. Johansen, and P. Wagle. PointGuardTM: Protecting pointers from buffer overflow vulnerabilities. In Proc. of the 12th USENIX Security Symposium, Aug 2003.
[7]
{7} W. Diffie and M. Hellman. Privacy and Authentication: An Introduction to Cryptography. In Proceedings of the IEEE, 67, 1979.
[8]
{8} F. I. P. S. Draft. Advanced Encryption Standard (AES). National Institute of Standards and Technology, 2001.
[9]
{9} M. Gries and A. Romer. Performance Evaluation of Recent Dram Architectures for Embedded Systems. In TIK Report Nr. 82, Computing Engineering and Networks Lab (TIK), Swiss Federal Institute of Technology (ETH) Zurich, November 1999.
[10]
{10} A. Hodjat and I. Verbauwhede. Minimum Area Cost for a 30 to 70 Gbits/s AES Processor. In IEEE Computer Society Annual Symposium on VLSI, pp. 498-502.
[11]
{11} A. Hodjat and I. Verbauwhede. Speed-Area Trade-off for 10 to 100 Gbits/s. In 37th Asilomar Conference on Signals, Systems, and Computer, Nov. 2003.
[12]
{12} D. Lie, C. Thekkath, M. Mitchell, P. Lincoln, D. B. J. Mitchell, and M. Horowitz. Architectual Support For Copy and Tamper Resistant Software. In Proceedings of the 9th Symposium on Architectural Support for Programming Languages and Operating Systems, 2000.
[13]
{13} D. Lie, C. A. Thekkath, and M. Horowitz. Implementing an Untrusted Operating System on Trusted Hardware. In Proceedings of the 19th ACM Symposium on Operating Systems Principles, pages 178-192, October, 2003.
[14]
{14} M. H. Lipasti, C. B. Wilkerson, and J. P. Shen. Value Locality and Load Value Prediction. In Proceedings of the seventh international conference on Architectural support for programming languages and operating systems, pages 138-147. ACM Press, 1996.
[15]
{15} H. Lipmaa, P. Rogaway, and D. Wagner. Comments to NIST Concerning AES-modes of Operations: CTR-mode Encryption. In In Symmetric Key Block Cipher Modes of Operation Workshop, Baltimore, Maryland, US, 2000.
[16]
{16} M. McLoone and J. V. McCanny. High Performance Single-Chip FPGA Rijndael Algorithm Implementations. In Proceedings of the Third International Workshop on Cryptographic Hardware and Embedded Systems, pages 65-76. Springer-Verlag, 2001.
[17]
{17} B. Rogers, Y. Solihin, and M. Prvulovic. Memory Predecryption: Hiding the Latency Overhead of Memory Encryption. Workshop on Architectural Support for Security and Anti-Virus, 2004.
[18]
{18} T. Sherwood, E. Perelman, G. Hamerly, and B. Calder. Automatically Characterizing Large Scale Program Behavior. In Proceedings of the 10th Symposium on Architectural Support for Programming Languages and Operating Systems, pages 45-57, Oct. 2002.
[19]
{19} W. Shi, H.-H. S. Lee, C. Lu, and M. Ghosh. Towards the Issues in Architectural Support for Protection of Software Execution. In Workshop on Architectural support for Security and Anti-Virus, pages 1-10, 2004.
[20]
{20} E. G. Suh, D. Clarke, B. Gassend, M. van Dijk, and S. Devadas. Efficient Memory Integrity Verification and Encryption for Secure Processors. In Proceedings Of the 36th Annual International Symposium on Microarchitecture, December, 2003.
[21]
{21} E. G. Suh, D. Clarke, M. van Dijk, B. Gassend, and S. Devadas. AEGIS: Architecture for Tamper-Evident and Tamper-Resistant Processing . In Proceedings of The Int'l Conference on Supercomputing, 2003.
[22]
{22} S. P. Vanderwiel and D. J. Lilja. Data Prefetch Mechanisms. ACM Computing Surveys, 32(2):174-199, 2000.
[23]
{23} Z. Wang, D. Burger, K. S. McKinley, S. K. Reinhardt, and C. C. Weems. Guided Region Prefetching: A Cooperative Hardware/Software Approach. In Proceedings of the 30th Annual International Symposium on Computer Architecture, pages 388-398, June 2003.
[24]
{24} J. Yang and R. Gupta. Frequent Value Locality and its Applications. ACM Transactions on Embedded Computing Systems, 1(1):79-105, November 2002.
[25]
{25} J. Yang, Y. Zhang, and L. Gao. Fast Secure Processor for Inhibiting Software Piracty and Tampering. In Proceedings of the 36th International Symposium on Microarchitecture, December 2003.
[26]
{26} X. Zhang and R. Gupta. Hiding Program Slices for Software Security. In Proceedings of the Internal Conference on Code Genration and Optimization, pages 325-336, 2003.

Cited By

View all

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ISCA '05: Proceedings of the 32nd annual international symposium on Computer Architecture
June 2005
541 pages
ISBN:076952270X
  • cover image ACM SIGARCH Computer Architecture News
    ACM SIGARCH Computer Architecture News  Volume 33, Issue 2
    ISCA 2005
    May 2005
    531 pages
    ISSN:0163-5964
    DOI:10.1145/1080695
    Issue’s Table of Contents

Sponsors

Publisher

IEEE Computer Society

United States

Publication History

Published: 01 May 2005

Check for updates

Qualifiers

  • Article

Conference

ISCA05
Sponsor:

Acceptance Rates

ISCA '05 Paper Acceptance Rate 45 of 194 submissions, 23%;
Overall Acceptance Rate 543 of 3,203 submissions, 17%

Upcoming Conference

ISCA '25

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 20 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2022)MGXProceedings of the 49th Annual International Symposium on Computer Architecture10.1145/3470496.3527418(726-741)Online publication date: 18-Jun-2022
  • (2018)ACMEProceedings of the 55th Annual Design Automation Conference10.1145/3195970.3195983(1-6)Online publication date: 24-Jun-2018
  • (2018)Shadow blockProceedings of the 51st Annual IEEE/ACM International Symposium on Microarchitecture10.1109/MICRO.2018.00082(961-973)Online publication date: 20-Oct-2018
  • (2018)Improving the performance and endurance of encrypted non-volatile main memory through deduplicating writesProceedings of the 51st Annual IEEE/ACM International Symposium on Microarchitecture10.1109/MICRO.2018.00043(442-454)Online publication date: 20-Oct-2018
  • (2018)Morphable countersProceedings of the 51st Annual IEEE/ACM International Symposium on Microarchitecture10.1109/MICRO.2018.00041(416-427)Online publication date: 20-Oct-2018
  • (2017)A wear-leveling-aware counter mode for data encryption in non-volatile memoriesProceedings of the Conference on Design, Automation & Test in Europe10.5555/3130379.3130596(910-913)Online publication date: 27-Mar-2017
  • (2017)COVERTProceedings of the Conference on Design, Automation & Test in Europe10.5555/3130379.3130595(906-909)Online publication date: 27-Mar-2017
  • (2017)InvisiMemACM SIGARCH Computer Architecture News10.1145/3140659.308023245:2(94-106)Online publication date: 24-Jun-2017
  • (2017)InvisiMemProceedings of the 44th Annual International Symposium on Computer Architecture10.1145/3079856.3080232(94-106)Online publication date: 24-Jun-2017
  • (2016)PoisonivyThe 49th Annual IEEE/ACM International Symposium on Microarchitecture10.5555/3195638.3195684(1-13)Online publication date: 15-Oct-2016
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media