Xref: utzoo comp.sys.mac.programmer:21047 comp.protocols.appletalk:5156 Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!zaphod.mps.ohio-state.edu!magnus.ircc.ohio-state.edu!tut.cis.ohio-state.edu!ucbvax!agate!ragu.berkeley.edu!lippin From: lippin@ragu.berkeley.edu (The Apathist) Newsgroups: comp.sys.mac.programmer,comp.protocols.appletalk Subject: Re: Idea for painless copy protection Message-ID: <1991Jan27.214310.3870@agate.berkeley.edu> Date: 27 Jan 91 21:43:10 GMT References: <1991Jan27.144523.20674@phri.nyu.edu> Sender: usenet@agate.berkeley.edu (USENET Administrator) Reply-To: lippin@math.berkeley.edu Organization: Authorized Service, Incorporated Lines: 53 Recently roy@alanine.phri.nyu.edu (Roy Smith) wrote: > When the program starts up, it installs something which listens for >broadcast packets to a specific port (my knowledge of appletalk is sketchy, >but this is easy to do in IP and I'm assuming AT has some similar >mechanism). The program then sends out a broadcast packet to that port and >listens for any responses. The responses it would get back would contain >the serial number of other copies of the program installed elsewhere on the >same AT network. If any S/N matched that of this copy, it would refuse to >run. First, this can be streamlined to cut down on network traffic: put the serial number of the just-starting copy in the broadcast packet, and have the others reply only if their numbers match. Several current products use a scheme like this. With most, the copy protection is innocous during ordinary use, although a few, through sloppy programming, introduce a noticeable network load. There are problems, however. A legitimate user may be unable to start the program because someone else is running with his serial number. On a large network, it may be difficult to track down the offender. Network managers must keep track of where all the serial numbers are being used -- if one copy is destroyed, they have to reinstall it with the right serial number. On some networks, notably those in university labs, people move from one machine to another often, and it's not practical to buy a copy for every machine unless the program is very popular. These people would prefer that you limit the number of copies in use, but in a way that doesn't specify which ones must be used. If the serial number is embedded in the program, rather than entered by hand, more problems arise. Backups must be kept of each of the original disks. The program can't be distributed through a server -- the right set of floppies must be delivered to each computer. And site licenses become awkward, as you must deliver a set of disks for every copy licensed. A solution to some of these problems is to give each copy a file containing a list of serial numbers it can attempt to register under. The program could try each in turn, listening for complaints from the previously running copies. This file could be the same for everyone on the network, or some people could have private numbers present only in their file. --Tom Lippincott lippin@math.berkeley.edu "Self meets Self at a cocktail party, exchanges business cards with Self, and thus becomes Self Proper." --Jim Bolin