Skip to main content

On Software Protection via Function Hiding

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1525))

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.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. M. Abadi and J. Feigenbaum. Secure circuit evaluation. Journal of Cryptology, 2(1):1–12, 1990.

    Article  MathSciNet  MATH  Google Scholar 

  2. 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.

    Google Scholar 

  3. J. Benaloh. Dense probabilistic encryption. In Proceedings of the Workshop on Selected Areas of Cryptography, pages 120–128, 1994.

    Google Scholar 

  4. P. Bürgisser, M. Clausen, and M. A. Shokrollahi. Algebraic Complexity Theory. Number 315 in Grundlehren der mathematischen Wissenschaften. Springer, 1997.

    Google Scholar 

  5. 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..

  6. S. Goldwasser and S. Micali. Probabilistic encryption. Journal of Computer and System Sciences, 28(2):270–299, April 1984.

    Google Scholar 

  7. Richard Lipton and Tomas Sander. An additively homomorphic encryption scheme or how to introduce a partial trapdoor in the discrete log. In preparation.

    Google Scholar 

  8. S. Micali, C. Rackoff, and B. Sloan. The notion of security for probabilistic cryptosystems. SIAM Journal on Computing, 17(2):412–426, 1988.

    Article  MathSciNet  MATH  Google Scholar 

  9. 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.

    Google Scholar 

  10. T. Sander and Chr. Tschudin. Towards mobile cryptography. In IEEE Symposium on Security & Privacy’98, Oakland, California, May 1998.

    Google Scholar 

  11. Ingo Wegener. The Complexity of Boolean Functions. Eiley-Teubner, 1987.

    Google Scholar 

  12. R. E. Zippel. Interpolating polynomials from their values. Journal of Symbolic Computation, 9:375–403, March 1990.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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

Publish with us

Policies and ethics