ACM Home Page
Please provide us with feedback. Feedback
Architectural support for copy and tamper resistant software
Full text PdfPdf (1.14 MB)
Source ACM SIGPLAN Notices archive
Volume 35 ,  Issue 11  (November 2000) table of contents
Pages: 168 - 177  
Year of Publication: 2000
ISSN:0362-1340
Authors
David Lie  Computer Systems Laboratory, Stanford University, Stanford, CA
Chandramohan Thekkath  Compaq Systems Research Centre and Computer Systems Laboratory, Stanford University, Stanford CA
Mark Mitchell  Computer Systems Laboratory, Stanford University, Stanford CA
Patrick Lincoln
Dan Boneh
John Mitchell
Mark Horowitz  Computer Systems Laboratory, Stanford University, Stanford CA
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 7,   Downloads (12 Months): 55,   Citation Count: 2
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/356989.357005
What is a DOI?

ABSTRACT

Although there have been attempts to develop code transformations that yield tamper-resistant software, no reliable software-only methods are known. This paper studies the hardware implementation of a form of execute-only memory (XOM) that allows instructions stored in memory to be executed but not otherwise manipulated. To support XOM code we use a machine that supports internal compartments---a process in one compartment cannot read data from another compartment. All data that leaves the machine is encrypted, since we assume external memory is not secure. The design of this machine poses some interesting trade-offs between security, efficiency, and flexibility. We explore some of the potential security issues as one pushes the machine to become more efficient and flexible. Although security carries a performance penalty, our analysis indicates that it is possible to create a normal multi-tasking machine where nearly all applications can be run in XOM mode. While a virtual XOM machine is possible, the underlying hardware needs to support a unique private key, private memory, and traps on cache misses. For efficient operation, hardware assist to provide fast symmetric ciphers is also required.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Business Software Alliance, 2000. h t t p ://~m , bsa. org.
 
2
The Trusted Computing Platform Allicance, 2000. h t t p ://~, trustedpc, com.
 
3
It. Anderson, E. Biham, and L. Knudsen. Serpent: A proposal for the advanced encryption standard. Technical report, National Institute of Standards and Technology (NIST), March 2000. Available at h t t p ://c s r c , n i s t . gov/encryption/aes/round2/r2algs, htm.
 
4
5
 
6
 
7
J. Daemen and V. Rijmen. AES proposal: Rijndael. Technical report, National Institute of Standards and Technology (NIST), March 2000. Available at http://csrc, n i s t . gov/encryption/aes/round2/r2algs, h~m.
 
8
H. Eberle and C. Thacker. A 1Gbit/second GaAs DES chip. In Proceedings of the IEEE Custom Integrated Circuits Conference, pages 19.7.1-19.7.4, May 1992.
 
9
Wave Corporation Embassy Technology, 2000. h t t p ://m , wave. com.
 
10
T. Gilmont, J.-D. Legat, and J.-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, November 1998.
 
11
T. Gilmont, J.-D. Legat, and J.-J. Quisquater. Hardware security for software privacy support. Electronics Letters, 35(24):2096--2097, November 1999.
 
12
R.P. Goldberg. Survey of virtual machine research. /BEE Computer Magazine, 7(6):35-45, June 1974.
 
13
B. Kaliski Jr. and M. Robshaw. Message authentication with MD5. CryptoBytes, 1(1):5-8, 1995.
 
14
 
15
H. Krawczyk, M. Bellare, and It. Canetti. HMAC: Keyed-hashing for message authentication. http://w~u~, i e t f . o r g /r f c /r f c 2 1 0 4 , t x t , February 1997.
 
16
K. Krewell. Quicktake: Willamette revealed. Technical report, Calmers Microprocessor, February 2000. Available at w~m. MPRonline. com.
 
17
B. Lampson, M. Abadi, M. Burrows, and E. Wobber. Authenticaton in distributed systems: Theory and practice. In Proccedings of the 13th ACM Symposium on Operating Systems, volume 10, pages 265-310, 1992.
18
 
19
A.J. Menzies, P.C. van Oorschot, and S.A. Vanstone. Handbook of Applied Cryptography. CRC Press, 1997.
 
20
National Bureau of Standards. NBS FIPS PUB 46, "Data Encryption Standard". National Bureau of Standards, U.S. Department of Commerce, January 1977.
 
21
 
22
ANSI X9.17 (Revised). American national standard for financial institution key management (wholesale). American Bankers Association, 1985.
 
23
J. Saltzer and M. Schroeder. The protection of information in computer systems. IEEE, 63(9):1278-1308, September 1975.
 
24
B. Sehneier. Applied Cryptography. John Wiley & Sons, 2nd edition, 1996.
 
25
W. Tuchman. Hellman presents no shortcut solutions to DES. IEEE Spectrum, 16(7):40-41, July 1979.
 
26
J. Tygar and B. Yee. Dyad: A system for using physically secure coprocessors. Technical l~eport CMU-CS-91-140R, Carnegie Mellon University, May 1991.
 
27
B. Weeks, M. Bean, T. Rozylowicz, and C. Ficke. Hardware performance simulations of round 2 advanced encryption standard algorithms. Technical report, National Security Agency, August 2000. Available at h t t p ://c s r c .n i s t .gov/encryption/aes/round2/r2anlsys, htm.


Collaborative Colleagues:
David Lie: colleagues
Chandramohan Thekkath: colleagues
Mark Mitchell: colleagues
Patrick Lincoln: colleagues
Dan Boneh: colleagues
John Mitchell: colleagues
Mark Horowitz: colleagues