Abstract
Software piracy is a major economic problem: it leads to revenue losses, it favors big software houses that are less hurt by these losses and it prevents new software economy models where small enterprises can sell software on a per-usage basis. Proprietary algorithms are currently hard to protect, both at the technical as well as the legal level. In this paper we show how encrypted programs can be used to achieve protection of algorithms against disclosure. Moreover, using this approach we describe a protocol that ensures - under reasonable conditions - that only licensed users are able to obtain the cleartext output of the program. This protocol also allows to charge clients on a per-usage basis.
These results are applied to a special class of functions for which we obtain a secure and computationally feasible solution: the key point is to encrypt functions such that they remain executable. We further show how to robustly fingerprint the resulting programs. Our approach is fully software based and does not rely on tamper resistant hardware.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
M. Abadi and J. Feigenbaum. Secure circuit evaluation. Journal of Cryptology, 2(1):1–12, 1990.
David Aucsmith. Tamper resistant software: An implementation. In Ross Anderson, editor, Information Hiding-Proceedings of the First International Workshop, May/June 1996, number 1174 in LNCS, pages 317–333, 1996.
J. Benaloh. Dense probabilistic encryption. In Proceedings of the Workshop on Selected Areas of Cryptography, pages 120–128, 1994.
P. Bürgisser, M. Clausen, and M. A. Shokrollahi. Algebraic Complexity Theory. Number 315 in Grundlehren der mathematischen Wissenschaften. Springer, 1997.
O. Goldreich and R. Ostrovsky. Software protection and simulation on oblivious RAMs. revised October 1995, ftp://ftp.theory.lcs.mit.edu/pub/people/oded/soft.ps..
S. Goldwasser and S. Micali. Probabilistic encryption. Journal of Computer and System Sciences, 28(2):270–299, April 1984.
Richard Lipton and Tomas Sander. An additively homomorphic encryption scheme or how to introduce a partial trapdoor in the discrete log. In preparation.
S. Micali, C. Rackoff, and B. Sloan. The notion of security for probabilistic cryptosystems. SIAM Journal on Computing, 17(2):412–426, 1988.
Ronald L. Rivest, Len Adleman, and Michael L. Dertouzos. On data banks and privacy homomorphisms. In R. A. DeMillo, D. P. Dobkin, A. K. Jones, and R. J. Lipton, editors, Foundations of Secure Computation, pages 169–179. Academic Press, 1978.
T. Sander and Chr. Tschudin. Towards mobile cryptography. In IEEE Symposium on Security & Privacy’98, Oakland, California, May 1998.
Ingo Wegener. The Complexity of Boolean Functions. Eiley-Teubner, 1987.
R. E. Zippel. Interpolating polynomials from their values. Journal of Symbolic Computation, 9:375–403, March 1990.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1998 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Sander, T., Tschudin, C.F. (1998). On Software Protection via Function Hiding. In: Aucsmith, D. (eds) Information Hiding. IH 1998. Lecture Notes in Computer Science, vol 1525. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-49380-8_9
Download citation
DOI: https://doi.org/10.1007/3-540-49380-8_9
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-65386-8
Online ISBN: 978-3-540-49380-8
eBook Packages: Springer Book Archive