Patent US4796220A successfully refreshed from Google Patents.
← Back to Patent Explorer
US4796220A Expired / Lapsed US ⏱️ 0.0 years remaining

Method of controlling the copying of software

Assignee: PRIDE SOFTWARE DEVELOPMENT Corp A CORP OF FL
•
Filing: 1986-12-15
•
Granted: 1989-01-03
•
Expires: 2006-12-15
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An authorized user of the program is allowed to make any number of backup copies of a computer program and to execute each such backup copy on the same authorized machine, but is inhibited from executing either the original or any copy thereof on any other machine. The method is implemented by including a control program with the application program to be copy controlled, which control program causes an interaction and registration of the program during initialization of the program with a central computer. The method includes generating a configuration code based on the configuration of the user's computer and the communication of the configuration code to the central computer. The central computer thereafter generates a permission code based on the communicated configuration code and communicates the permission code back to the user. The permission code is then entered into the user's computer and stored as a part of the control program. Prior to each subsequent execution of the program, a recalculation of the permission code is made by the control program and a comparison of the recalculated and the stored permission codes allows further execution of the program. The configuration code may include special data unique to the user's authorized computer and the recalculation of the permission code may be enabled only by data supplied by the central computers generated permission code. Further, self destruct code may be included in the control code to avoid tampering with the copy control scheme.

Inventors

  • 👤 Everett W. Wolfe

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-27 09:23
CPC Classifications
G; G06; G06F; G06F21/00; G06F21/70; G06F21/71; G06F21/73; G06F21/10; G06F21/101; G06F21/1011; G06F2211/00; G06F2211/007

Claims Analysis

Total Claims: 13
Claim 1
Independent Claim 249 words
A method of controlling the use of copies of computer software, said software including an application program for performing a desired task and a first control program, said first control program allowing said application program, or a copy thereof, to be executed on an authorized given machine, but preventing said application program, or a copy thereof, from being executed on another unauthorized machine, said method comprising the steps of: generating a configuration code in response to the hardware of said given machine; transmitting said configuration code to a remote machine, said remote machine being programmed with a second control program, one of said first or second control programs including information defining a number of authorized copies which can be and have been made for use on machines in addition to said given machine; generating, by said second control program, a permission code at said remote machine in response to said configuration code; transmitting said permission code to said given machine; entering said permission code as a part of said first control program to allow said associated application program, or copies thereof, to be executed only on said given machine; and determining whether the number of authorized copies has been reached and, if said number of authorized copies has not been reached, repeating said steps of generating a configuration code, transmitting said configuration code, generating a permission code, transmitting said permission code and entering said permission code for each additional machine on which said application program is to be executed.
Claim 2
Independent Claim 249 words
A method of controlling the use of copies of computer software, said software including an application program for performing a desired task and a first control program, said first control program allowing said application program, or a copy thereof, to be executed on an authorized given machine, but preventing said application program, or a copy thereof, from being executed on another unauthorized machine, said method comprising the steps of: generating a configuration code in response to the hardware of said given machine; transmitting said configuration code to a remote machine, said remote machine being programmed with a second control program, one of said first or second control programs including information defining a number of authorized copies which can be and have been made for use on machines in addition to said given machine; generating, by said second control program, a permission code at said remote machine in response to said configuration code; transmitting said permission code to said given machine; entering said permission code as a part of said first control program to allow said associated application program, or copies thereof, to be executed only on said given machine; and determining whether the number of authorized copies has been reached and, if said number of authorized copies has not been reached, repeating said steps of generating a configuration code, transmitting said configuration code, generating a permission code, transmitting said permission code and entering said permission code for each additional machine on which said application program is to be executed.
Claim 3
Dependent Claim 53 words
The method according to claim 1 wherein said step of generating said configuration code includes manifesting selective hardware configuration parameters of said given machine in said configuration code and further manifesting a generated parameter based on the particular hardware of said given machine, said generated parameter being generated by said first control program.
Claim 4
Dependent Claim 23 words
The method according to claim 2 wherein said step of manifesting a generated parameter includes generating a number in response to said parameter.
Claim 5
Dependent Claim 32 words
The method according to claim 3 wherein said step of generating a number in response to said parameter includes performing a repeatable test on one item of hardware of said given machine.
Claim 6
Dependent Claim 26 words
The method according to claim 4 wherein said step of performing a repeatable test includes the step of determining the nonuniformities on said item of hardware.
Claim 7
Dependent Claim 29 words
The method according to claim 2 wherein said step of generating said permission code includes utilizing an algorithm unique to said generated parameter manifested by said transmitted configuration code.
Claim 8
Dependent Claim 23 words
The method according to claim 6 wherein said step of manifesting a generated parameter includes generating a number in response to said parameter.
Claim 9
Dependent Claim 32 words
The method according to claim 7 wherein said step of generating a number in response to said parameter includes performing a repeatable test on one item of hardware of said given machine.
Claim 10
Dependent Claim 26 words
The method according to claim 8 wherein said step of performing a repeatable test includes the step of determining the nonuniformities on said item of hardware.
Claim 11
Dependent Claim 26 words
The method according to claim 9 wherein said step of determining the nonuniformities includes determining a number of unstable storage units on a magnetic storage means.
Claim 12
Dependent Claim 22 words
The method according to claim 1 wherein said step of generating a configuration code includes the step of encrypting said configuration code.
Claim 13
Dependent Claim 30 words
The method according to claim 11 wherein said step of encrypting includes utilizing data obtained from said hardware of said given machine for determining the encryption of said configuration code.

References Cited (Backward Citations)

US4593353A Cited
US4562306A Cited
US4652990A Cited
US4740890A Cited
US4748561A Cited
US4644493A Cited
US4688169A Cited
US4685055A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1992-01-03 1992-07-04 1993-01-03 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1996-01-03 1996-07-04 1997-01-03 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2000-01-03 2000-07-04 2001-01-03 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag