`u 1] Patent Number:
`[19]
`Umted States Patent
`Chernow et al.
`[45] Date of Patent: Mar. 12, 1991
`
`
`[76]
`
`[54] SOFIWARE DISTRIBUTION SYSTEM
`_
`Inventors: Fred Cllemow. 360 Known PL.
`Boulder, Colo. 80303; Randy J.
`Peterson, 1330 Arapahoe St.,
`3ou1d¢;_co1g_ 30302
`[21] Appl- No-: 93.321
`
`[22] Filed:
`Sep. 4, 1987
`[51]
`Int. CL5 ......................... G061? 12/14, H04L 9/00
`
`[52] US. CL ........................... 364/900: 364/969.4;
`364/918.5; 364/918.51; 330/4; 330/25
`[58] Field of Search
`364/200 MS File, 900 MS File;
`380/4’ 25
`
`[55]
`
`Ref”-encgs cued
`U«S- PATENT DOCUMENTS
`4,278,837
`6/1981 Best
`.
`4.306.289 I2/1981 Lumley .
`mssz no/m2 some cc -1.
`4,446,519
`5/1984 Thomas .
`4,465,901
`8/1984 Be“ _
`4,471,153 9/1934 Donald etal. ...................... 364/200
`4,525,599 6/1935 Cm“ at ‘L _
`4,523,543
`7/1935 F,.ee,,y_ In _
`4.553352 11/1935 Egcndorf _
`4,558,176 12/198$ Arnold et al,
`4,562,305 12/1985 Gaffney, Jr.
`-
`4.552.306 12/1985 Chou ct II.
`4-573-“9 2/1935 “_'°3""’i"'¢" 9‘ 31-
`4'593'353
`5/1936 P‘°”‘°"'
`'
`4,593,376 6/1986 Volk .................................... 364/900
`4,593,170 ‘I/1986 Piosenlra et a. .
`£599,489 7/1986 Cami]: _
`4.501777 9/1956 Cats,-J:
`_
`.
`4,634,807 ll/1987 Chorley et al.
`4,652,990 3/ 1987 Pnilen et al.
`........................ 364/200
`
`.
`
`.
`
`.
`
`-
`
`4,654,799 3/ 1987 Ogaki et al.
`4,658,093
`4/1987 Hellman ........
`4,672,554
`5/1937 Ogaki et al.
`4.674.055 6/I987 Ogaki et al.
`4.677.565
`6/1987 Ogaki et al.
`4,74(7).fig
`-;/19$:
`dra et
`4,81 ,
`/198
`4,864,494 9/1989 Kobus, Jr.
`
`.
`
`
`
`..
`
`364/9(fi
`380/25
`364/900
`364/900
`364/479
`364/200
`380/4
`354/200
`
`Primary Exarm'ner—A1len R. MacDonald
`Assistant Examiner—Debra A. Chun
`Atmmey’ Agent‘ or F7.rm__Sughme' Mien‘ Zmn’
`Mac eak & seas
`P
`
`ABSTRACT
`[57]
`A central station distributes software by telephone. The
`central station accepts credit card information,
`trans-
`§?,'§iZr‘l.‘,i°rf,§’,"i';‘§fr,°ri.",’,°,I.Z Z,‘Z‘§lf2§‘?,§‘,§.’}§?,.§Zi§‘$ii‘fi‘.TZ
`station calls the purchaser back and continues with the
`tansacf
`1
`ft
`'
`'
`th
`t
`d .
`he c,$3Z1ZL¥i§niL,f‘iiL1‘§§n, Z i§i‘§§,’}.i‘r“‘—‘r°,,°.,‘Zr§,
`-
`-
`-
`-
`Prggglam anctll Inrtializattondfrrtigrtarriitotitheppurcigansixg
`““
`°P“’° ‘Se’ °"°°" ‘*5
`C E‘ '“ 2” °" mg
`turn over control of the pure aser computer to the
`central station. The Control Transfer Program IS then
`executed to transfer first a Protection program for en-
`suring that no memory resident copying programs are
`running,
`than a Storing Program for modifying the
`purchased program for storage at the purchaser com-
`puter, and finally the requested program itself. During
`the transaction, the various transmitted programs are
`erased so that at the end of the transaction onl
`a co
`'
`.
`7. h
`V . W
`protected versiono t e purchased program remains on
`the purchaser s disk.
`
`52 Claims, 3 Drawing Sheets
`
`
`
`
`
`
`
`
`
`IIIIDIITE Cltl
`
`
`
`@
`
`CALL
`
`PIIICIIISEI
`
`|’lllSIll‘ Illlllllllllfll AH
`CUTIOL IIIISFEI Nflillli
`
`“WEST EIICIHIOI D7
`IDIYIAI ITII
`9 ll
`
`EIKCIIVE UIIIDL TIIISIEI
`PMSIII
`-IIIISIIT PIIIIIY
`VIDFEETIOI Pflilll
`
`EXECMI Pllllfl Pllllfllfl
`PIOGIII
`
`Eliwlt coma. TIIISRI
`- YIIISIII STOIIII
`Plflifll
`- mnsuu IAIEU
`FIDGIII
`
`EIISE CDIVIOL lIlIS$(l
`Ilfl STDIIIG PIDGIIIS
`
`TIIISIUIOI Bllflfll KS5‘
`
`lflllllll Ell.
`
`llfllll T0 IEIIIIIS
`
`Apple Exhibit 1000
`Page 00001
`
`KEEN Ell“ LIE IIVMIIYIDI
`
`IIIISIIT I-ECUTIICE [[1
`
`
`
`Apple Exhibit 1006
`Page 00001
`
`
`
`U.S. Patent
`
`Mar. 12, 1991
`M
`
`Sheet 1 of 3
`
`4,Q99,806
`
`AVIAIT
`
`ANSWER
`
`INCONING CALL
`
`INCOMING CALL
`
`INTRODUCTORY DISPLAY
`
`anowse
`
`
`
`
`
`puncunss
`
`vcs ¢
`
`mm onosn mronmmou
`
`TERMINATE CALL
`
`ACCEPT CREDIT CARD INFORMATION
`
`
`
`
`
`rsauumc cm
`
`CALL
`
`PURCHASER
`
`musun ACCEPTANCE
`
`KEY
`
`T0 FIG.
`
`I8
`
`Page 00002
`
`0
`
`3
`
`c.d
`
`e
`
`I
`
`9
`
`Page 00002
`
`
`
`U.S. Patent
`
`Mar. 12, 1991
`
`Sheet 2 of 3
`
`4,999,806
`
`FIG.IB
`
`CALL
`
`PURCHASER
`
`mnsun mmnuunon nun
`comm nuusrzn mosms
`
`neaussr EXECUTION or
`nunnuzmou PROGRAMS
`
`
`
`EXECUTE CONTROL TRANSFER
`PROGRAM
`
`
`
`
`
`
`
`-TRANSMIT PRIMARY
`PROTECTION PROGRAM
`
`
`
`EXECUTE PRIMARY PROTECTION
`PROGRAM
`
`EXECUTE CONTROL TRANSFER
`
`PROGRAM
`
`STORING
`
`-TRANSMIT
`PROGRAM
`-TRANSMIT TARGET
`
`.
`'
`
`I
`
`“‘
`
`fl
`
`0,0
`
`EXECUTE smnms PROGRAM
`
`,1
`
`r
`
`s
`
`ERASE CONTROL TRANSFER
`
`AND STORING PROGRAMS
`
`TRANSACTION COMPLETE MESSAGE
`
`TERMINATE
`
`CALL
`
`A
`
`RETURN TO BEGINNING
`
`Page 00003
`
`Page 00003
`
`
`
`U.S. Patent
`
`Mar. 12, 1991
`
`Sheet 3 of 3
`
`4,999,806
`
`F|G.2
`
`
`
` IS
`STORAGE PROGRAM
`
`ON DISK
`
` ABORT
`TRANSACTION
`
`
`
`
`INFORIA CENTRAL
`STATION OF COMPLETION
`
`
`ERASE STORING
`PROGRAII FROI NENORY
`
`
`
`Page 00004
`
`Page 00004
`
`
`
`1
`
`SOFTWARE DISTRIBUTION SYSTEM
`
`BACKGROUND OF THE INVENTION
`
`The present invention is directed to the sale of com-
`puter software and more particularly to a technique for
`the sale and distribution of software via telephone.
`The sale and distribution of software designed for
`general use is predicated on the assumption that the
`seller only wishes to sell the right to use the software.
`The seller specifically does not wish the purchaser to
`distribute the software to other users. Various methods
`are employed to accomplish this goal. Since the most
`common method of distribution is via floppy disk. the
`purchaser is often restricted by various techniques from
`either duplicating the floppies or in some cases from
`using the same floppies on different computers. This
`results in undesirable side effects.
`In the personal computer environment. protection
`schemes designed to prevent the purchaser from copy-
`ing the software usually prevent the purchaser from
`storing the software on hard disk, which would be most
`convenient. Furthermore, since the software cannot be
`copied if the floppy disk containing the software is
`damaged, it must be replaced by the seller. This is often
`time consuming and always inconvenient. Some sellers
`have gone to the trouble of including a back up copy of
`the software along with the original to lessen the incon-
`venience. Although this is effective in providing a back-
`up copy, it defeats the seller's desire to prevent prolifer-
`ation of the software.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`Some sellers of general purpose software have
`avoided software copy protection schemes.
`instead
`relying on the honesty of the purchaser, the fact that the
`documentation can be made difficult to duplicate, and a
`license agreement which the purchaser is required to
`honor. The license agreement typically makes it illegal
`to copy the software or proliferate it by any other
`means. License agreements are virtually always re-
`quired by the seller as part of the purchase agreement,
`regardless of whether the software is protected or not.
`Lack of copy protection introduces yet another com-
`plexity in the sale and distribution of software. Because
`software is expensive to purchase. potential buyers
`would like to examine the software prior to purchase to
`insure it will perform as expected. Should the software
`not be copy protected, the seller would not be able to
`loan the software to a potential purchaser for fear that,
`if they did like it, they would simply copy it. Thus,
`non-protected software can only be demonstrated at the
`seller's location. This can be inconvenient to the poten-
`tial purchaser who may want a number of people to
`review the software prior to purchase.
`Until now, general purpose software for sale has been
`primarily distributed on floppy disks, since floppy disks
`can be readily protected. Software distributed via tele-
`phone lines has been typically public domain where
`protection is not an issue.
`There is a need for a technique which will permit
`copy protection of software distributed by telephone.
`There is also a need for a technique of efficiently distrib-
`uting software by telephone, whether the software is
`copy protected or not.
`
`OBJECTS OF THE INVENTION
`
`35
`
`40
`
`45
`
`50
`
`55
`
`65
`
`It is an object of this invention to provide a means for
`selling and distributing protected software using stan-
`
`4,999,806
`
`2
`dard telephone lines for transferring the software from
`the seller to the purchaser.
`Another object of this invention is to permit the pur-
`chaser to rent the protected software for a period of
`time after which it will self destruct.
`
`Another object of this invention is to permit the pur-
`chaser to rent the protected software for a specific num-
`ber of runs which would be useful, e.g.. if the software
`were a game.
`Another object of this invention is to enable any
`standard software program to be easily altered to ac-
`commodate the means for distribution and protection.
`Another object of this invention is to provide a simple
`and rapid means for replacing protected software that
`has been rendered unusable by virtue of disk damage or
`inadvertent erasure.
`
`Another object of this invention is to provide a sys-
`tem which has an inherent low cost and simple method
`of handling software maintenance and updates.
`SUMMARY OF THE INVENTION
`
`The invention includes both hardware and software
`located on the premises of the seller. The hardware in
`its simplest form comprises a computer with a modem
`attached to an ordinary telephone line. In a large instal-
`lation, the seller's computer might be a main frame with
`many telephone lines and modems. Whatever the size of
`the installation, the computer and modems are prefera-
`bly able to support both incoming and outgoing phone
`calls as well as a variety of baud rates. The computer
`also contains sufficient memory and disk space to ac-
`commodate a library of the software programs available
`for lease or sale, an index file to permit buyers to browse
`through the names, brief descriptions and prices for
`leasing or purchasing of the available software, and the
`software necessary to perform the requisite tasks.
`The requisite tasks of the software include answering
`phone calls, requesting information from callers, per-
`mitting the callers to browse through a catalog of avail-
`able software, placing phone calls to verify credit card
`information and purchaser's phone number, transmit-
`ting requested software and special programs. and acti-
`vating the special programs that protect the transmitted
`software from being proliferated. In addition, certain
`accounting functions are required of the software to
`ensure that proper billing and record keeping takes
`place.
`In a preferred embodiment of the invention. the caller
`is allowed to browse through the available software for
`some period of time after which he must either request
`to place an order or hang up. When an order is placed.
`the caller gives credit card and other payment informa-
`tion, as well as his phone number and the program to be
`purchased. During this initial call, an acceptance num-
`ber is transmitted to the purchaser. The central com-
`puter hangs up and verifies the credit card information,
`and then calls the purchaser. At this point,
`the pur-
`chaser must transmit the acceptance number in order to
`proceed. The central station then transmits to the pur-
`chaser an Initialization Program as well as a Control
`Transfer Program, and then asks the purchaser to exe-
`cute the Initialization Program. the function of which is
`to turn control of the purchaser's computer over to the
`central station via the modem port.
`Having taken control of the purchaser's computer,
`the central station then instructs the purchaser's com-
`puter to load and execute the Control Transfer Program
`for transferring a Primary Protection Program to the
`
`Page 00005
`
`Page 00005
`
`
`
`3
`purchaser. The purchaser computer then executes the
`Primary Protection Program, the function of which is
`to erase everything from memory except for the operat-
`ing system to ensure there are no memory resident pro-
`grams which might duplicate the program being pur-
`chased. The Primary Protection Program is then erased
`from memory and the Control Transfer Program is
`again loaded and executed.
`Under control of the Control Transfer Program, a
`Storing Program and the Target Program (the program
`being purchased) are transmitted to the purchaser. The
`Storing Program is a program for modifying the Target
`Program (the program being purchased) as the latter is
`being stored on the purchaser’s hard disk or floppy disk.
`The purchaser computer is then instructed to load and
`execute the Storing Program, whose first
`task is to
`check to see if the Storing Program is still located on
`the disk and, if not, terminate the transaction and render
`the Target Program unusable. Assuming the Storing
`Program is still present on the disk the Storing Program
`now in memory and being executed erases its disk image
`and then proceeds to modify the Target Program for
`copy protection.
`When copy protection of the Target Program has
`been completed,
`the Control Transfer Program and
`Storing Program are erased from the purchaser com-
`puter memory, control is released to the purchaser. and
`the call is terminated.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`The invention will be more clearly understood from
`the following description in conjunction with the ac-
`companying drawing, wherein:
`FIGS. 1A and 1B are a flow chart illustrating the
`sequence of steps in the operation of a preferred em-
`bodiment of the invention; and
`FIG. 2 is a flow chart illustrating the operation of the
`Storing Program used in the preferred embodiment.
`GENERAL DESCRIPTION OF THE INVENTION
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`The invention provides a unique system for the pro-
`tection of software distributed via telephone lines. Prior
`to this invention, general purpose software for sale has
`been primarily distributed on floppy disks, since floppy
`disks can be readily protected. Software distributed via
`telephone lines has been typically public domain where
`protection is not an issue.
`To protect software distributed on floppy disk, the
`disk itself must be protected from a standard disk copy
`routine and the software programs themselves must be
`copy protected.
`Protection from disk copy routines for software
`stored on floppy disks is based on varying the format of
`the data recorded on the floppies so as to render them
`uncopyable by standard software. Popular methods of 55
`varying the format include recording on typically un-
`used areas of the floppy disk that normally contain
`timing or addressing information. To copy a floppy disk
`so protected, one must first uncover the fomiat of the
`otherwise uncopyable floppy.
`Copy protection of the software programs on either
`floppy or hard disks can be accomplished by embedding
`the exact physical location of the software on the disk
`into the software itself. This is done at the time the
`software is placed on the disk. When the software is run,
`it looks to see where it is located and then verifies that
`this is the position stored in the software. If it is, the
`software runs normally. If it is not, the software does
`
`65
`
`4,999,806
`
`4
`not run. Of course. an advanced programmer would be
`capable of reviewing the assembly language code and
`remove or bypass the test. Breaking of the protect
`mechanism is a relatively time consuming project and is
`normally not worth the effort.
`Another scheme is used to insure that the software on
`a floppy disk will only be used on a single machine. The
`software when first run requests the user to enter the
`serial number of the computer’s operating system. This
`number is then stored on the floppy disk. Whenever the
`floppy disk is run, it verifies that the serial number of
`the computer’s operating system is the same as that
`stored on the floppy disk. Again a clever programmer
`willing to spend the time and effort to do so can over-
`ride this scheme.
`
`The present invention incorporates these as well as
`other methods for protecting the distributed software.
`When the seller's computer transmits the software to
`the purchaser's computer it also transmits a Storing
`Program whose sole purpose is to store the transmitted
`software on either floppy disk or hard disk depending
`on the purchaser’s desires. As this task is accomplished,
`the Storing Program copy protects the software. In the
`preferred embodiment, the Storing Program notes the
`exact physical location of the software on the disk, the
`exact time and date the software was stored on the disk,
`and the serial number of the operating system. The
`Storing Program then embeds this information into the
`stored software. When the software is put to use. it will
`at some point during its operation look for the exact
`location at which it is stored on disk, the time it was
`stored and the serial number of the operating system. If
`these parameters as determined by the software do not
`agree with those embedded in the software by the Stor-
`ing Program, the software will either not run or erase
`itself. The Storing Program's final assignment is to erase
`itself so that it does not remain on the purchaser’s com-
`puter. As a final safety feature, failure of the Storing
`Program to properly operate will leave the software
`purchased inoperable.
`These methods of protecting software will function
`properly on most .computers and with most operating
`systems. There are more and less complex methods of
`protecting software each having their own set of trade-
`offs between added security and reduced performance.
`The Storing Program which is used in this invention
`provides the seller with the ability to transmit protected
`software over telephone lines. Furthermore. the pur-
`chaser can request that the software be placed directly
`on hard disk, obviating the necessity of having to use a
`floppy each time the software is run. In addition, should
`the purchaser damage the disk containing the software
`or accidentally erase the software,
`it can be replaced
`easily and quickly with a phone call. The seller's com-
`puter will be programmed to retain lists of all purchases
`with sufficient data to insure that a request for retrans-
`mission does not lead to proliferation. Such information
`may include (but is not limited to) the serial number of
`the purchaser’s operating system, the specific software
`sold, the phone number associated with the purchaser’s
`computer and the purchaser's name, address and the
`number of times the request for retransmission has oc-
`curred.
`
`Since the software has been transmitted by telephone
`lines, purchasers desiring maintenance and updates of
`the software can be easily accommodated via telephone.
`Present methods of distribution would by nature require
`the costly redistribution of floppy disks. With this sys-
`
`Page 00006
`
`Page 00006
`
`
`
`5
`tent in place, it becomes possible to lease software for a
`prescribed term of use. This would be of great interest
`to someone wanting to evaluate software prior to pur-
`chasing. or to someone who has a limited need to use a
`very expensive software package. It would also be use-
`ful in the area of games or children’s software, where
`the purchaser might be very interested in leasing the
`software but is not interested in buying the package
`outright.
`The term of use for the leased software can either be
`a period of time or a number of runs. The specific infor-
`mation can be encryptically stored within the leased
`software. When leased software is used, the number of
`runs remaining under lease or a periodic update of the
`time remaining under lease is encryptically recorded
`within the program image in memory and on disk. At
`the conclusion of the term of use, the software renders
`itself unusable or erases itself from the user’s disk.
`The invention does not rely on any specific encryp-
`tion or protection scheme that is repeatedly used. Thus,
`someone who takes the time to break the protection
`schemes used would not find his resulting techniques of
`particular use to anyone else. In other words, if a popu-
`lar program is leased for three hours and the lessee has
`the capability and takes the time to uncover how the
`program is protected from being used for more than
`three hours, and then devised a method for bypassing
`this protection scheme, this method would not work on
`any other leased copy of the same program. The result
`is that. although there are a few people with the inclina-
`tion to break protection schemes, their efforts will not
`be fruitful to others. Furthermore, the time and effort
`required to break the protection scheme is simply not
`justified for just one copy of the program.
`
`5
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`6
`c. Permit the customer to browse through the lists of
`available software via a standard database. Menus are
`displayed on the customer's monitor (or terminal) to
`permit the customer to choose which category of soft-
`ware is to be explored. Some categories will have sub-
`categories. etc., from which a selection can be made.
`Finally, alphabetical lists of the available programs are
`displayed. For each program. there is a brief description
`that can be displayed (upon request by the customer)
`that details some of its attributes and computer require-
`ments.
`
`d. Provide the customer, upon request. with pricing
`options for lease or purchase of the programs. When a
`customer finds a program that is a candidate for pur-
`chase (lease or sale) a request for pricing infonnation
`will provide the customer with the available options
`and their associated costs.
`e. Accept sales orders from customer or terminate the
`phone call. Customers are permitted to browse through
`the index of available programs for a reasonable period
`of time. If the Central Computer’s phone lines are not
`busy,
`this period can be relatively lengthy. At some
`point in time, however, the customer must either decide
`to purchase a program or hang up the phone and give
`other customers an opportunity to access the system.
`The Interactive Program keeps tabs on the length of
`time a customer is browsing and how many phone lines
`are available for additional customers. When all lines
`are in use,
`the program requests browsers that have
`been connected to the system for a longer period then a
`predetermined time interval to either make a selection
`for purchase or terminate their search and recall at a
`later time to continue. The customer is given a predeter-
`mined time interval in which to respond to this request
`before the central computer disconnects the telephone
`line.
`
`4,999, 806
`
`DETAILED DESCRIPTION OF A PREFERRED
`EMBODIMENT
`
`The software used in a preferred embodiment of this
`invention can be divided into seven distinct parts:
`1. Interactive Program
`2. Database
`
`3. Initialization Program
`4. Control Transfer Program
`5. Primary Protection Program
`6. Storing Program
`7. Target Programs.
`The functional specifications for these different soft-
`ware parts will each be described. with reference to the
`flow charts shown in the drawings. Given the func-
`tional description which follows herein,
`the detailed
`implementation of the programs would be apparent to
`one of ordinary skill in the art.
`I. Interactive Program
`The Interactive Program is located on the Central
`Computer (seller's computer) and provides all of the
`functions necessary to complete a transaction with a
`customer. The following is an example of the steps
`which may be performed and the order in which they
`may be performed, with reference to the flow chart of
`FIGS. 1A and 113.
`it. Answer incoming telephone calls from customers.
`This begins the process by which a customer can pur-
`chase the programs available for lease or sale.
`b. Introduce the service by displaying infonnation on
`the customer’s computer. The assumption is that the
`customer knows nothing about the service and must be
`walked through the entire process.
`
`45
`
`50
`
`55
`
`60
`
`65
`
`The Interactive Program must also keep tabs on
`browsers who are not interacting with the central com-
`puter. This is accomplished by monitoring the amount
`of time since the last intelligent request from the cus-
`tomer. Should this time interval exceed a predetermined
`time interval, it will be taken to mean that the customer
`is no longer at his or her computer and the phone call
`should be terminated. Thus, a customer either selects a
`program to purchase, terminates the connection as a
`result of not finding anything of interest, or runs out of
`time and is disconnected.
`f. Request and record the customer’s name. address
`phone number and credit card to be charged for the
`order. Once a program is selected for purchase,
`the
`Interactive Program must make sure that the customer
`is able to pay for the purchase. To accomplish this,
`credit card information as well as customer information
`must be provided by the customer. The credit card used
`for the purchase must belong to the customer, and the
`address and phone number given by the customer must
`be the same as that to which the purchase is to be deliv-
`ered. Although the credit card information can be easily
`checked, the accuracy of the phone number and address
`as it relates to the owner of the credit card is not readily
`available. In principle, one can place the entire tele-
`phone directory on the Central Computer for verifica-
`tion purposes. This would enable verification of all but
`the newest telephone subscribers. As will be discussed
`later, other methods are used to prevent theft.
`g. Provide acceptance key, terminate incoming call,
`obtain credit card approval for the sale and recall the
`customer. The purpose of terminating the call and then
`
`Page 00007
`
`Page 00007
`
`
`
`7
`limits the
`it
`recalling the customer is twofold.'First,
`number of telephone lines tied up simultaneously with a
`given customer to one. Second and most important, the
`central computer can record the phone number to
`which the purchase is delivered and provide the cus-
`tomer with an acceptance key. When the customer is
`recalled, the acceptance key is requested to insure that
`the correct party has been reached. A correct response
`must be given before the program is transferred. Should
`collection difficulties occur later, the Central Computer
`will have the phone number that received the program
`and provided the acceptance key. Credit card approval
`is achieved by techniques presently in use.
`The above describes the basic operation for non busi-
`ness customers. Business customers will be requested to
`follow a somewhat different scheme. When a customer
`calls in to the central computer,
`the answers to the
`questions posed will reveal that a business is about to
`purchase programs. Businesses are encouraged to set up
`standing or limited purchase orders to permit personnel
`within their organization to utilize this service without
`the use of credit cards. At the time the purchase order
`is set up. the business customer receives a set of accep-
`tance keys that its personnel may use when ordering
`programs against a specific purchase order. and the
`Central Computer receives a set of phone numbers to
`which programs may be delivered when billed against
`the purchase order. Businesses will be encouraged to
`use purchase orders rather than credit cards by provid-
`ing purchase order discounts. When a business cus-
`tomer selects a program for purchase, the central com-
`puter requests the phone number to which the program
`is to be sent. When that number is called, the central
`computer requests an acceptance key. The acceptance
`key and called number must coincide with a specific
`purchase order for the software to be transferred. At
`the end of each month, the business customer is pro-
`vided with a list of used acceptance keys, programs
`purchased. and charges. Since the acceptance keys can
`only be used once, the business can control the pur-
`chases being made and keep track of which employees
`made purchases as well as what programs were pur-
`chased.
`
`10
`
`I5
`
`20
`
`25
`
`30
`
`35
`
`h. The Interactive Program checks that the number
`dialed reached the customer. If a wrong number was
`reached, it redials and reverifres. Should the second
`attempt fail, the information is recorded for later review
`and the transaction is tenninated. Determination of the
`correct number having been reached is ascertained by
`two factors. First, there should be a modem on the line.
`Second, the responder to the phone call must provide
`the correct acceptance key.
`the transaction is
`i. Upon reaching the customer,
`continued if the credit card was approved for the sale
`amount. If not, an alternate credit card is requested.
`Upon submission of an alternate credit card, the pro-
`gram returns to step (g) and continues. If no alternate
`credit card is available. the transaction is terminated. A
`record must be kept of the unapproved credit cards to
`prevent the customer from continuing the process with
`two or more unapproved credit cards. Once a customer
`provides an already unapproved credit card, the routine
`can be terminated.
`j. If the transaction continues. the Initialization Pro-
`gram and Control Transfer Program are transmitted to
`.the customer with a message that appears on the cus-
`tomer's terminal requesting the customer to execute the
`Initialization Program after first removing any pro-
`
`45
`
`50
`
`55
`
`65
`
`4,999, 806
`
`8
`grams resident in memory. The reason for requesting
`the removal of any programs resident in memory on the
`customer’s computer is to prevent
`their erasure and
`potential loss of valuable information as will become
`more clear below.
`
`k. The Interactive Program on the central computer
`takes control of the customer's computer as the “user“
`at the completion of the Initialization Program. The
`Initialization Program transfers control to the central
`computer by designating the modem port as the con-
`sole. After the Initialization Program is executed, the
`keyboard is deactivated. All subsequent commands will
`be entered from the modem port.
`1. Execute the Control Transfer Program and trans-
`mit the Primary Protection Program to the customer's
`computer. The rationale for providing a special transfer
`program to receive the programs is to prevent the cus-
`tomer from using a transfer program that could make
`multiple copies of the transmitted programs. eg, on
`floppy disks and hard disks.
`m. Execute the Primary Protection Program and
`erase it from the customer’s computer when it has com-
`pleted its tasks. The Primary Protection Program is
`erased, since it’s only purpose is to protect against cer-
`tain types of theft. The less known about these pro-
`grams the better are the chances that their action will
`not be defeated.
`n. Execute the Control Transfer Program and trans-
`mit the Storing Program and the Target Program to the
`customer’s computer. This is done once the Primary
`Protection Program has been run and there is reason-
`able assurance that neither of these programs can be
`copied without authorization.
`o. Execute the Storing Program. Upon execution of
`the Storing Program,,a series of protection mechanisms
`are invoked that will prevent the unauthorized use of
`the Target Program after control of the customer’s
`computer is returned to the customer.
`p. Interact with the Storing Program while it is com-
`pleting its tasks, providing it with requested information
`to secure the Target Program. This step may or may not
`be used depending on whether the Storing Program is
`preprogrammed with the detailed information needed.
`This infonnation includes the leasing arrangement. the
`specifics for copy protection and encryption. and the
`medium for final storage of the Target Program (hard
`disk or floppy disk). as this will influence the types of
`protection employed.
`q. Erase the Control Transfer Program and the Stor-
`age Program from the customer’s computer. At
`this
`point these programs are no longer needed.
`r. Send a message of the satisfactory completion of
`the transfer of the Target Program to the customer's
`monitor or terminal. Describe how to execute the pro-
`gram and return control of the customer’s computer to
`the customer. At this point the transfer of the purchased
`program has been completed.
`s. The telephone call is terminated. the sale billed to
`customer’s credit card and some internal information is
`recorded at the central computer for accounting pur-
`poses
`2. Database
`The Database contains an index file of all available
`Target Programs for lease or purchase. This index is
`accessible by customers who telephone into the central
`computer. It also contains pricing information. approxi-
`mate time to transfer and a brief description of each
`Target Program.
`
`Page 00008
`
`Page 00008
`
`
`
`4,999, 806
`
`9
`The Database is organized by ‘category, such as
`games, spread sheets, word processors, etc. Subcatego-
`ries may exist. e.g., under games one might expect to
`find: mystery, adventure, learning, etc. The customer
`has the capability to move freely across categories and
`subcategories until a desired Target Program is located.
`Once a desired program is found,
`the customer can
`request to review a brief description of the Target Pro-
`gram, the cost for lease or purchase and the approxi-
`mate transfer time. If the customer wishes to make a
`sale, the Interactive Program takes over and continues
`the dialogue with the customer.
`3. Initialization Program
`The Initialization Program is transferred to the cus-
`tomer’s computer by the Interactive Program. It ha