Software Protection Using Public Key Cryptography
GR Higgie · 1987
This paper describes a software protection system which will probably become widely used over the next few years in an effort to control the software piracy problems experienced by the developers of microcomputer software. The system described was developed by the author and an associate. A number of other researchers have independently come up with similar techniques, but we believe that the work described in this paper includes some useful new developments. We have called the system Ninox. The system uses a serialized device in each computer system and provides facilities so that software supplied to the user will be able to execute only on the user's machine and it is effectively impossible for the software to be modified to execute on another machine. Public key cryptography is used to encrypt programs and a method of program distribution is described. The paper also examines some of the difficulties with the system and suggests some of the methods by which the system might be attacked and how it stands up to these attacks.