Software protection and simulation on oblivious RAMs

被引:943
作者
Goldreich, O [1 ]
Ostrovsky, R [1 ]
机构
[1] BELL COMMUN RES INC,MORRISTOWN,NJ
关键词
pseudorandom functions; simulation of random access machines; software protection;
D O I
10.1145/233551.233553
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
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 provide theoretical treatment of software protection. We reduce the problem of software protection to the problem of efficient simulation on oblivious RAM. A machine is oblivious if the sequence in which it accesses memory locations is equivalent for any two inputs with the same running time. For example, an oblivious Turing Machine is one for which the movement of the heads on the tapes is identical for each computation. (Thus, the movement is independent of the actual input.) What is the slowdown in the running time of a machine, if it is required to be oblivious? In 1979, Pippenger and Fischer showed how a two-tape oblivious Turing Machine can simulate, on-line, a one-tape Turing Machine, with a logarithmic slowdown in the running time. We show an analogous result for the random-access machine (RAM) model of computation. In particular, we show how to do an on-line simulation of an arbitrary RAM by a probabilistic oblivious RAM with a polylogarithmic slowdown in the running time. On the other hand, we show that a logarithmic slowdown is a lower bound.
引用
收藏
页码:431 / 473
页数:43
相关论文
共 23 条
[1]  
Aho A.V., 1974, The Design and Analysis of Computer Algorithms
[2]  
Ajtai M., 1992, Proceedings 33rd Annual Symposium on Foundations of Computer Science (Cat. No.92CH3188-0), P686, DOI 10.1109/SFCS.1992.267782
[3]  
Ajtai M., 1983, P 15 ANN ACM S THEOR
[4]  
[Anonymous], [No title captured]
[5]  
[Anonymous], 1982, 23 ANN S FDN COMPUTE, DOI DOI 10.1109/SFCS.1982.45
[6]  
[Anonymous], 1968, P APR 30 MAY 2 1968
[7]  
BLUM M, 1991, PROCEEDINGS - 32ND ANNUAL SYMPOSIUM ON FOUNDATIONS OF COMPUTER SCIENCE, P90, DOI 10.1109/SFCS.1991.185352
[8]   HOW TO GENERATE CRYPTOGRAPHICALLY STRONG SEQUENCES OF PSEUDO-RANDOM BITS [J].
BLUM, M ;
MICALI, S .
SIAM JOURNAL ON COMPUTING, 1984, 13 (04) :850-864
[9]  
BLUM M, UNPUB DESIGNING PROG
[10]  
BLUM M, 1989, 21ST P ANN ACM S THE, P86