Skip to main content

A Fully Homomorphic Crypto-Processor Design

Correctness of a Secret Computer

  • Conference paper
Engineering Secure Software and Systems (ESSoS 2013)

Part of the book series: Lecture Notes in Computer Science ((LNSC,volume 7781))

Included in the following conference series:

Abstract

A KPU is a replacement for a standard CPU that natively runs encrypted machine code on encrypted data in registers and memory – a ‘crypto-processor unit’, in other words. Its computations are opaque to an observer with physical access to the processor but remain meaningful to the owner of the computation. In theory, a KPU can be run in simulation and remain as secure (or otherwise) as in hardware. Any block cipher with a block-size of about a word is compatible with this developing technology, the long-term aim of which is to make it safe to entrust data-oriented computation to a remote environment.

Hardware is arranged in a KPU to make the chosen cipher behave as a mathematical homomorphism with respect to computer arithmetic. We describe the architecture formally here and show that ‘type-safe’ programs run correctly when encrypted.

An Erratum for this chapter can be found at http://dx.doi.org/10.1007/978-3-642-36563-8_16

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 54.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 72.00
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Breuer, P.T.: Encrypted Data Processing. Patent pending, UK Patent Office #GB1120531.7. UK (November 2011)

    Google Scholar 

  2. Breuer, P.T., Bowen, J.P.: Typed Assembler for a RISC Crypto-Processor. In: Barthe, G., Livshits, B., Scandariato, R. (eds.) ESSoS 2012. LNCS, vol. 7159, pp. 22–29. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  3. Buchty, R., Heintze, N., Oliva, D.: Cryptonite – A Programmable Crypto Processor Architecture for High-Bandwidth Applications. In: Müller-Schloer, C., Ungerer, T., Bauer, B. (eds.) ARCS 2004. LNCS, vol. 2981, pp. 184–198. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  4. Duc, G., Keryell, R.: An Efficient Secure Architecture with Memory Encryption, Integrity and Information Leakage Protection. In: ACSAC 2006, Proceedings of the 22nd Annual Computer Security Applications Conference, Miami Beach, FL, USA, pp. 483–492. IEEE Computer Society, Washington, DC (2006), ISBN:0-7695-2716-7, doi:10.1109/ACSAC.2006.21

    Google Scholar 

  5. Gentry, C.: Fully Homomorphic Encryption Using Ideal Lattices. In: Proc. 41st ACM Symposium on Theory of Computing, pp. 169–178. ACM (2009) doi: 10.1145/1536414.1536440, ISBN: 978-1-60558-506-2

    Google Scholar 

  6. Goldreich, O.: Towards a theory of software protection and simulation by oblivious RAMs. In: Proc. 19th ACM Symp. on Theory of Computing, pp. 182–194. ACM (1987), doi:10.1145/28395.28416, ISBN: 0-89791-221-7

    Google Scholar 

  7. Goldreich, O., Ostrovsky, R.: Software protection and simulation on oblivious RAMs. Journal of the ACM (JACM) 43(3), 431–473 (1996), doi:10.1145/233551.233553

    Article  MathSciNet  MATH  Google Scholar 

  8. MIPS Technologies Inc. MIPS32 4K Processor Core Family Software User’s Manual. MD00016. 1225 Charleston Road, Mountain View, CA 94043-1353 (January 2001)

    Google Scholar 

  9. Lie, D., et al.: Architectural support for copy and tamper resistant software. ACM SIGPLAN Notices 35(11), 168–177 (2000), doi:10.1145/356989.357005

    Article  Google Scholar 

  10. Oliva, D., Buchty, R., Heintze, N.: AES and the cryptonite crypto processor. In: Proc. Intl. Conf. on Compilers, Architecture and Synthesis for Embedded Systems. ACM (2003), doi:10.1145/951710.951738

    Google Scholar 

  11. Patterson, D.A.: Reduced Instruction Set Computers. Communications of the ACM 28(1), 8–21 (1985)

    Article  Google Scholar 

  12. Sagedy, C.: ECEC 490: Processor Design Project Page (December 2008), http://chris.sagedy.com/projects/ecec490_fa08/#encrypted

  13. Schneier, B.: Description of a New Variable-Length Key, 64-Bit Block Cipher (Blowfish). In: Anderson, R. (ed.) FSE 1993. LNCS, vol. 809, pp. 191–204. Springer, Heidelberg (1994)

    Chapter  Google Scholar 

  14. National Bureau of Standards. Data Encryption Standard. FIPS-Pub.46. U.S. Department of Commerce, Washington, D.C., USA (January 1977)

    Google Scholar 

  15. Sun, M.-C., et al.: Design of a scalable RSA and ECC crypto-processor. In: Proc. ASP-DAC 2003: Asia and South Pacific Design Automation Conf. ACM (2003), doi:10.1145/1119772.1119874

    Google Scholar 

  16. Zhuang, X., Zhang, T., Pande, S.: HIDE: an infrastructure for efficiently protecting information leackage on the address bus. In: Proc. 11th Intl. Conf. on Architectural Support for Programming Languages and Operating Systems (ASPLOS), pp. 72–84. ACM Press (October 2004)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Breuer, P.T., Bowen, J.P. (2013). A Fully Homomorphic Crypto-Processor Design. In: Jürjens, J., Livshits, B., Scandariato, R. (eds) Engineering Secure Software and Systems. ESSoS 2013. Lecture Notes in Computer Science, vol 7781. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-36563-8_9

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-36563-8_9

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-36562-1

  • Online ISBN: 978-3-642-36563-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics