Leakage Resilience against Concurrent Cache Attacks

  • Gilles Barthe
  • Boris Köpf
  • Laurent Mauborgne
  • Martín Ochoa
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8414)

Abstract

In this paper we show how to engineer proofs of security for software implementations of leakage-resilient cryptosystems on execution platforms with concurrency and caches. The proofs we derive are based on binary executables of the cryptosystem and on simple but realistic models of microprocessors.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Intel Advanced Encryption Standard (AES) Instructions Set, http://software.intel.com/file/24917
  2. 2.
  3. 3.
    Acıiçmez, O., Koç, Ç.K., Seifert, J.-P.: Predicting secret keys via branch prediction. In: Abe, M. (ed.) CT-RSA 2007. LNCS, vol. 4377, pp. 225–242. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  4. 4.
    Barthe, G., Betarte, G., Campo, J.D., Luna, C.: Cache-Leakage Resilient OS Isolation in an Idealized Model of Virtualization. In: CSF. IEEE (2012)Google Scholar
  5. 5.
    Barthe, G., Grégoire, B., Heraud, S., Béguelin, S.Z.: Computer-aided security proofs for the working cryptographer. In: Rogaway, P. (ed.) CRYPTO 2011. LNCS, vol. 6841, pp. 71–90. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  6. 6.
    Bernstein, D.: Salsa20, http://cr.yp.to/snuffle.html
  7. 7.
    Bernstein, D.J.: Cache-timing attacks on AES. Technical report (2005)Google Scholar
  8. 8.
    Cousot, P., Cousot, R.: Abstract interpretation: a unified lattice model for static analysis of programs by construction of approximation of fixpoints. In: ACM (ed.) POPL (1977)Google Scholar
  9. 9.
    Doychev, G., Feld, D., Köpf, B., Mauborgne, L., Reineke, J.: CacheAudit: A Tool for the Static Analysis of Cache Side Channels. In: USENIX Security Symposium (2013)Google Scholar
  10. 10.
    Dziembowski, S., Pietrzak, K.: Leakage-Resilient Cryptography. In: FOCS. IEEE (2008)Google Scholar
  11. 11.
    Ferdinand, C., Martin, F., Wilhelm, R., Alt, M.: Cache behavior prediction by abstract interpretation. Science of Computer Programming 35(2), 163–189 (1999)CrossRefMATHGoogle Scholar
  12. 12.
    Grund, D.: Static Cache Analysis for Real-Time Systems – LRU, FIFO, PLRU. PhD thesis, Saarland University (2012)Google Scholar
  13. 13.
    Gullasch, D., Bangerter, E., Krenn, S.: Cache Games - Bringing Access-Based Cache Attacks on AES to Practice. In: S&P. IEEE (2011)Google Scholar
  14. 14.
    Jana, S., Shmatikov, V.: Memento: Learning secrets from process footprints. In: S&P. IEEE (2012)Google Scholar
  15. 15.
    Käsper, E., Schwabe, P.: Faster and timing-attack resistant AES-GCM. In: Clavier, C., Gaj, K. (eds.) CHES 2009. LNCS, vol. 5747, pp. 1–17. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  16. 16.
    Kim, T., Peinado, M., Mainar-Ruiz, G.: StealthMem: System-level protection against cache-based side channel attacks in the cloud. In: 19th USENIX Security Symposium. USENIX (2012)Google Scholar
  17. 17.
    Köpf, B., Mauborgne, L., Ochoa, M.: Automatic Quantification of Cache Side-Channels. In: Madhusudan, P., Seshia, S.A. (eds.) CAV 2012. LNCS, vol. 7358, pp. 564–580. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  18. 18.
    Köpf, B., Rybalchenko, A.: Approximation and Randomization for Quantitative Information-Flow Analysis. In: CSF. IEEE (2010)Google Scholar
  19. 19.
    Micali, S., Reyzin, L.: Physically observable cryptography. In: Naor, M. (ed.) TCC 2004. LNCS, vol. 2951, pp. 278–296. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  20. 20.
    Osvik, D.A., Shamir, A., Tromer, E.: Cache Attacks and Countermeasures: The Case of AES. In: Pointcheval, D. (ed.) CT-RSA 2006. LNCS, vol. 3860, pp. 1–20. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  21. 21.
    Pietrzak, K.: A leakage-resilient mode of operation. In: Joux, A. (ed.) EUROCRYPT 2009. LNCS, vol. 5479, pp. 462–482. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  22. 22.
    Ristenpart, T., Tromer, E., Shacham, H., Savage, S.: Hey, you, get off of my cloud: exploring information leakage in third-party compute clouds. In: CCS. ACM (2009)Google Scholar
  23. 23.
    Shoup, V.: Sequences of games: a tool for taming complexity in security proofs. Cryptology ePrint Archive, Report 2004/332 (2004)Google Scholar
  24. 24.
    Stefan, D., Buiras, P., Yang, E.Z., Levy, A., Terei, D., Russo, A., Mazières, D.: Eliminating cache-based timing attacks with instruction-based scheduling. In: Crampton, J., Jajodia, S., Mayes, K. (eds.) ESORICS 2013. LNCS, vol. 8134, pp. 718–735. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  25. 25.
    Yu, Y., Standaert, F.-X.: Practical leakage-resilient pseudorandom objects with minimum public randomness. In: Dawson, E. (ed.) CT-RSA 2013. LNCS, vol. 7779, pp. 223–238. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  26. 26.
    Yu, Y., Standaert, F.-X., Pereira, O., Yung, M.: Practical leakage-resilient pseudorandom generators. In: CCS. ACM (2010)Google Scholar
  27. 27.
    Zhang, D., Askarov, A., Myers, A.C.: Language-based control and mitigation of timing channels. In: PLDI. ACM (2012)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2014

Authors and Affiliations

  • Gilles Barthe
    • 1
  • Boris Köpf
    • 1
  • Laurent Mauborgne
    • 2
  • Martín Ochoa
    • 3
  1. 1.IMDEA Software InstituteSpain
  2. 2.AbsInt GmbHGermany
  3. 3.TU MunichGermany

Personalised recommendations