skip to main content
10.1145/28395.28416acmconferencesArticle/Chapter ViewAbstractPublication PagesstocConference Proceedingsconference-collections
Article
Free access

Towards a theory of software protection and simulation by oblivious RAMs

Published: 01 January 1987 Publication History

Abstract

Software protection is one of the most important issues concerning computer practice. There exist many heuristics and ad-hoc methods for protection, but the problem as a whole has not received the theoretical treatment it deserves. In this paper, we make the first steps towards a theoretic treatment of software protection: First, we distill and formulate the key problem of learning about a program from its execution. Second, assuming the existence of one-way permutations, we present an efficient way of executing programs such that it is infeasible to learn anything about the program by monitoring its executions.
How can one efficiently execute programs without allowing an adversary, monitoring the execution, to learn anything about the program? Traditional cryptographic techniques can be applied to keep the contents of the memory unknown throughout the execution, but are not applicable to the problem of hiding the access pattern. The problem of hiding the access pattern efficiently corresponds to efficient simulation of Random Access Machines (RAM) on an oblivious RAM. We define an oblivious RAM to be a (probabilistic) RAM for which (the distribution of) the memory access pattern is independent of the input. We present an (on-line) simulation of t steps of an arbitrary RAM with m memory cells, by less than t·mε steps of an oblivious RAM with 2m memory cells, where ε>0 is an arbitrary constant.

References

[1]
Aho, A.V., J.E. Hopcroft, and J.D. Ullman, The Design and Analysis of Computer Algorithms, Addison-Wesley Publ. Co., 1974.
[2]
Ajtai, M., J. Komlos, and E. Szemeredi, "An O (n 'log n ) Sorting Network", Proc. 15th STOC, 1983, pp. 1~9.
[3]
Alexi, W., B. Chor, O. Goldreich, and C.P. Schnorr, "RSA and Rabin Functions: Certain Parts Are As Hard As The Whole", to appear in SIAM Jour. on Computing. Extended Abstract in Proc. 25th FOCS, 1984.
[4]
Batcher, K., "Sorting Networks and the:it Applications", AFIPS Spring Joint Cornouter Conference, 32, 1968, pp. 307-314.
[5]
Best, R., "Microprocessor for Executing Encrypted Programs", US Patent 4,168,396. Issued September 1979.
[6]
Blum, M., and S. Goldwasser, "An Efficient Probabilisfic Public-Key Enc~ption Scheme which Hides All Partial Informarion", Advances in Cryptolo gy. Proceedings of CRYPTO 84, Springer vetlag, Lecture Notes in Computer Science (196), 1985, pp. 289-299.
[7]
Blum, M., and Mica}i, S., "How to Generate Cryptographically Strong Sequences of Pseudo-Random Bits", SIAM }our. on Computing, Vol. 13, 1984, pp. 850-864.
[8]
Goldreich, O., S. Goldwasser, and S. Micali, "How to Construct Random Functions'',{our. ofACM, Vol. 33, No. 4, 1986, pp. 792-807.
[9]
Goldwasser S., and S. Micali, "Probabilistic Encryption", Jour. of Computer and System Science, Vol. 28, No. 2, 1984, pp. 270-299.
[10]
Kent, S.T., "Protecting Externally Supplied Software in Small Computers", Ph.D~ Thesis, MIT/LCS/TR-255, 1980.
[11]
Levin, L.A., "One-Way Functions and Pseudorandom Generators", ~'roc. of 17th STOC, 1985, pp. 363-365.
[12]
Luby, M., and C. Rackoff, "Pseudo- Random Permutation Generators and Cryptographic Composition", Proc. of 18th STOC, 1986, pp. 356-363.
[13]
Pippenger, N., and M.J. Fischer, "Relation Among Complexity Measures", Jour. of ACM, Vol. 26, No. 2, t979, pp. 361-381.
[14]
Yao, A.C., "Theory and Applications of Trapdoor Functions", Proc. of the 23rd IEEE Syrup. on Foundation of Computer Science, 1982, pp. 80-91.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
STOC '87: Proceedings of the nineteenth annual ACM symposium on Theory of computing
January 1987
471 pages
ISBN:0897912217
DOI:10.1145/28395
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]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 January 1987

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

STOC87
Sponsor:

Acceptance Rates

STOC '87 Paper Acceptance Rate 50 of 165 submissions, 30%;
Overall Acceptance Rate 1,469 of 4,586 submissions, 32%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)232
  • Downloads (Last 6 weeks)46
Reflects downloads up to 06 Nov 2024

Other Metrics

Citations

Cited By

View all

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media