Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site hp-pcd.UUCP Path: utzoo!linus!decvax!harpo!seismo!hao!hplabs!hp-pcd!john From: john@hp-pcd.UUCP (John Eaton) Newsgroups: net.crypt Subject: Re: software piracy and coupons - (nf) Message-ID: <2361@hp-pcd.UUCP> Date: Tue, 8-Nov-83 03:23:33 EST Article-I.D.: hp-pcd.2361 Posted: Tue Nov 8 03:23:33 1983 Date-Received: Wed, 9-Nov-83 07:15:13 EST Sender: netnews@hp-pcd.UUCP Organization: Hewlett-Packard, Corvallis OR Lines: 38 #R:allegra:-194700:hp-pcd:42000002:000:1590 hp-pcd!john Nov 7 12:54:00 1983 Any program can be pirated if the pirate has the resources and determination to do it. The trick is to make the pirate spend more time breaking the scheme than it would take him to rewrite the program. Protection schemes that can be NOPed over are at best a minimal attempt at security. The prudent programmer will back up his protection schemes with code that verifies that the program is intact and unmodified. Several independent schemes are usually better than one. Progams that detect a copy violation and immediately go out and trash the disc or memory are inviting someone to backtrace and figure out how the violation was detected. A program is better off waiting 20 or 30 seconds after detecting an error to do something about it. That gives the pirate a few million more lines of code to sift through. Ideally the error condition should be "laundered" by passing it through several intermediate stages to make it difficult to figure out where it originated from. A really sneaky programmer will not wipe out the program if it is copied but will modify it enough to make it unusable. During program development you should save the worst bug that you find (you know the one that took 3 days of debugging to find) and reinstall it if the program has been copied. Perhaps you can even leave the bug in and have your copy detection routines remove it if its a legal copy. The pirate will always have the ability to break a program. The only thing that a programmer can do make the "Work Function" great enough to discourage the lightweights. John Eaton hplabs!hp-pcd!john