Virtual leashing: Internet-based software piracy protection

Ori Dvir*, Maurice Herlihy, Nir N. Shavit

*Corresponding author for this work

Research output: Contribution to conferencePaperpeer-review

9 Scopus citations


Software-splitting is a technique for protecting software from piracy by removing code fragments from an application and placing them on a remote trusted server. The server provides the missing functionality but never the missing code. As long as the missing functionality is hard to reverse-engineer, the application cannot run without validating itself to the server. Current software-splitting techniques scale poorly to the Internet because interactions with the remote server are synchronous: the application must frequently block waiting for a response from the server. Perceptible delays due to network latency are unacceptable for many kinds of highly-reactive applications, such as games or graphics applications. This paper introduces virtual leashing, the first non-blocking software-splitting technique. Virtual leashing ensures that the application and the server communicate asynchronously, so the application's performance is independent (within reason) of large or variable network latencies. Experiments show that virtual leashing makes only modest demands on communication bandwidth, space, and computation.

Original languageEnglish
Number of pages10
StatePublished - 2005
Event25th IEEE International Conference on Distributed Computing Systems - Columbus, OH, United States
Duration: 6 Jun 200510 Jun 2005


Conference25th IEEE International Conference on Distributed Computing Systems
Country/TerritoryUnited States
CityColumbus, OH


Dive into the research topics of 'Virtual leashing: Internet-based software piracy protection'. Together they form a unique fingerprint.

Cite this