skip to main content
10.1145/945445.945463acmconferencesArticle/Chapter ViewAbstractPublication PagessospConference Proceedingsconference-collections
Article

Implementing an untrusted operating system on trusted hardware

Published:19 October 2003Publication History

ABSTRACT

Recently, there has been considerable interest in providing "trusted computing platforms" using hardware~---~TCPA and Palladium being the most publicly visible examples. In this paper we discuss our experience with building such a platform using a traditional time-sharing operating system executing on XOM~---~a processor architecture that provides copy protection and tamper-resistance functions. In XOM, only the processor is trusted; main memory and the operating system are not trusted.Our operating system (XOMOS) manages hardware resources for applications that don't trust it. This requires a division of responsibilities between the operating system and hardware that is unlike previous systems. We describe techniques for providing traditional operating systems services in this context.Since an implementation of a XOM processor does not exist, we use SimOS to simulate the hardware. We modify IRIX 6.5, a commercially available operating system to create xomos. We are then able to analyze the performance and implementation overheads of running an untrusted operating system on trusted hardware.

References

  1. M. J. Accetta, R. V. Baron, W. Bolosky, D. B. Golub, R. F. Rashid, A. Tevanian, and M. W. Young. Mach: A new kernel foundation for UNIX development. In Proceedings of Summer Usenix, pages 93--113, July 1986.]]Google ScholarGoogle Scholar
  2. W. Arbaugh, D. Farber, and J. Smith. A secure and reliable bootstrap architecture. In Proceedings of the 1997 IEEE Symposium on Security and Privacy, pages 65--71, May 1997.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. B. Barak, O. Goldreich, R. Impagliazzo, S. Rudich, A. Sahai, S. Vadhan, and K. Yang. On the (im)possibility of obfuscating programs. Lecture Notes in Computer Science, 2139:19--23, 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Business Software Alliance, 2003. http://www.bsa.org.]]Google ScholarGoogle Scholar
  5. J. Daemen and V. Rijmen. AES proposal: Rijndael. Technical report, National Institute of Standards and Technology (NIST), Mar. 2000. Available at: http://csrc.nist.gov/encryption/aes/rou\-nd2/r2algs.htm.]]Google ScholarGoogle Scholar
  6. P. England, J. DeTreville, and B. Lampson. Digital rights management operating system. U.S. Patent 6,330,670, Dec. 2001.]]Google ScholarGoogle Scholar
  7. P. England, J. DeTreville, and B. Lampson. Loading and identifying a digital rights management operating system. U.S. Patent 6,327,652. Dec. 2001.]]Google ScholarGoogle Scholar
  8. D. R. Engler, M. F. Kaashoek, and J. O'Toole. Exokernel: An operating system architecture for application-level resource management. In Proceedings of the 15th ACM Symposium on Operating Systems Principles, pages 251--266, 1995.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. B. Gassend, E. Suh, D. Clarke, M. van Dijk, and S. Devadas. Caches and merkle trees for efficient memory authentication. In Proceedings of the 9th International Symposium on High Performance Computer Architecture, pages 295--306, Feb. 2003.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. T. Gilmont, J. Legat, and J. Quisquater. An architecture of security management unit for safe hosting of multiple agents. In Proceedings of the International Workshop on Intelligent Communications and Multimedia Terminals, pages 79--82, Nov. 1998.]]Google ScholarGoogle Scholar
  11. T. Gilmont, J. Legat, and J. Quisquater. Hardware security for software privacy support. Electronics Letters, 35(24):2096--2097, Nov. 1999.]]Google ScholarGoogle ScholarCross RefCross Ref
  12. J. Heinrich. MIPS R10000 Microprocessor User's Manual, 2.0 edition, 1996.]]Google ScholarGoogle Scholar
  13. H. Krawczyk, M. Bellare, and R. Canetti. HMAC: Keyed-hashing for message authentication. http://www.ietf.org/rfc/rfc2104.txt, Feb. 1997.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. M. Kuhn. The TrustNo1 cryptoprocessor concept. Technical Report CS555, Purdue University, Apr. 1997.]]Google ScholarGoogle Scholar
  15. B. Lampson, M. Abadi, M. Burrows, and E. Wobber. Authentication in distributed systems: Theory and practice. ACM Transactions on Computer Systems, 10(4):265--310, Nov. 1992.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. D. Lie, J. Mitchell, C. A. Thekkath, and M. Horowitz. Specifying and verifying hardware for tamper-resistant software. In Proceedings of the 2003 IEEE Symposium on Security and Privacy, pages 166--178, May 2003.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. D. Lie, C. Thekkath, M. Mitchell, P. Lincoln, D. Boneh, J. Mitchell, and M. Horowitz. Architectural support for copy and tamper resistant software. In Proceedings of the 9th International Conference Architectural Support for Programming Languages and Operating Systems, pages 168--177, Nov. 2000.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. U. Maheshwari, R. Vingralek, and B. Shapiro. How to build a trusted database system on untrusted storage. In Proceedings of the 4th Symposium on Operating Systems Design and Implementation, pages 135--150, Oct. 2000.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. J. D. McCalpin. Memory bandwidth and machine balance in current high performance computers. Technical Committee on Computer Architecture (TCCA) Newsletter, Dec. 1995.]]Google ScholarGoogle Scholar
  20. OpenSSL, 2003. http://www.openssl.org.]]Google ScholarGoogle Scholar
  21. R. Rivest, A. Shamir, and L. Adleman. A method for obtaining digital signatures and public key cryptosystems. Communications of the ACM, 21(18):120--126, Feb. 1978.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. M. Rosenblum, E. Bugnion, S. Devine, and S. A. Herrod. Using the SimOS machine simulator to study complex computer systems. Modeling and Computer Simulation, 7(1):78--103, Jan. 1997.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. J. Rushby. Design and verification of secure systems. ACM Operating Systems Review, SIGOPS, 15(5):12--21, Dec. 1981.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. J. Saltzer and M. Schroeder. The protection of information in computer systems. Proceedings of the IEEE, 63(9):1278--1308, Sept. 1975.]]Google ScholarGoogle ScholarCross RefCross Ref
  25. SGI IRIX 6.5: Home Page, May 2003. http://www.sgi.com/software/irix6.5.]]Google ScholarGoogle Scholar
  26. J. S. Shapiro, J. M. Smith, and D. J. Farber. EROS: a fast capability system. In Proceedings of the 17th ACM Symposium on Operating Systems Principles, pages 170--185, Dec. 1999.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. S. W. Smith, E. R. Palmer, and S. Weingart. Using a high-performance, programmable secure coprocessor. In Financial Cryptography, pages 73--89, Feb. 1998.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. The Trusted Computing Platform Alliance, 2003. http://www.trustedpc.com.]]Google ScholarGoogle Scholar
  29. J. D. Tygar and B. Yee. Dyad: A system for using physically secure coprocessors. In Harvard-MIT Workshop on Protection of Intellectual Property, Apr. 1993.]]Google ScholarGoogle Scholar

Index Terms

  1. Implementing an untrusted operating system on trusted hardware

            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
            • Published in

              cover image ACM Conferences
              SOSP '03: Proceedings of the nineteenth ACM symposium on Operating systems principles
              October 2003
              338 pages
              ISBN:1581137575
              DOI:10.1145/945445
              • cover image ACM SIGOPS Operating Systems Review
                ACM SIGOPS Operating Systems Review  Volume 37, Issue 5
                SOSP '03
                December 2003
                329 pages
                ISSN:0163-5980
                DOI:10.1145/1165389
                Issue’s Table of Contents

              Copyright © 2003 ACM

              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: 19 October 2003

              Permissions

              Request permissions about this article.

              Request Permissions

              Check for updates

              Qualifiers

              • Article

              Acceptance Rates

              SOSP '03 Paper Acceptance Rate22of128submissions,17%Overall Acceptance Rate131of716submissions,18%

              Upcoming Conference

              SOSP '24

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader