Software usage authorization system with key for decrypting/re-encrypting/re-transmitting moving target security codes from protected software
First Claim
1. A system for insuring operation of a computer controlled function, only in the presence of an authorized key in which such operation is protected by encrypted security message portions having a moving target portion, and where the function control includes pre-set errors therein to cause erroneous operation of the function unless said errors are nulled during execution of the function control by said computer, said computer having a communications port and said system including in combination:
- at least one security key means responsive to a unique key indentification code for connection to the communications port of said computer and including decryption circuit means therein uniquely encoded for decrypting said security message portions;
means for connecting said key means to the communications port of said computer for transferring said identification code and signals including said encrypted security message portions from said computer to said key means and for transferring signals from said key means to said computer;
circuit means in said key means enabled by said identification code for recognizing predetermined ones of said security message portions and, in response to such recognition, for modifying such predetermined ones of said message portions supplied to said key means from said computer and for reencrypting such modified message portions and supplying such reencrypted modified portions from said key means back to said computer for comparison and verification with computer generated modified message portions of said same predetermined ones of said message portions to cause said computer to store said modified security message portions outside said key means as replacements for previously stored such predetermined ones of said security message portions for use by said computer and said key means in a later cycle of operation;
said key means having a target detecting means and counter means therein for producing a count each time said moving target portion is detected by said key means in signals supplied from said computer to said key means;
said count being encrypted by said key means and stored outside said key means by said computer; and
said key means includes means responsive to a predetermined count in said counter for initiating a comparison of the count in said key means and the count stored outside said key means whereupon failure of said comparison causes said erroneous operation to occur; and
null signal producing means coupled with said recognizing means in said key means for generating null signals supplied through said connecting means to said computer for nulling said pre-set errors during operation thereof.
1 Assignment
0 Petitions
Accused Products
Abstract
A computer based function control system is particularly suited for use as a software security device on the highly popular personal computers or a micro-processor driven function. The system includes an encrypted security message uniquely encoded at predetermined locations within the software or function program. The software or function program includes pre-set errors in it to cause failure of execution of the function or software program unless the errors are nulled during operation of the function or software program. A separate electronic key for retrieving, recognizing, decrypting, encrypting, and producing the null signals is connected to the communications port of the computer from which the key draws its power as well as the security message passed from the computer to the key and back to the computer. There is interchange of moving target and validation information between the computer software and the electronic key. This information is transferred via the security message under the cover of encryption and is monitored by the key and the software to insure that operation of the program can be effected only by authorized users of the function or software program (that is those having the key uniquely associated with that program).
-
Citations
19 Claims
-
1. A system for insuring operation of a computer controlled function, only in the presence of an authorized key in which such operation is protected by encrypted security message portions having a moving target portion, and where the function control includes pre-set errors therein to cause erroneous operation of the function unless said errors are nulled during execution of the function control by said computer, said computer having a communications port and said system including in combination:
-
at least one security key means responsive to a unique key indentification code for connection to the communications port of said computer and including decryption circuit means therein uniquely encoded for decrypting said security message portions; means for connecting said key means to the communications port of said computer for transferring said identification code and signals including said encrypted security message portions from said computer to said key means and for transferring signals from said key means to said computer; circuit means in said key means enabled by said identification code for recognizing predetermined ones of said security message portions and, in response to such recognition, for modifying such predetermined ones of said message portions supplied to said key means from said computer and for reencrypting such modified message portions and supplying such reencrypted modified portions from said key means back to said computer for comparison and verification with computer generated modified message portions of said same predetermined ones of said message portions to cause said computer to store said modified security message portions outside said key means as replacements for previously stored such predetermined ones of said security message portions for use by said computer and said key means in a later cycle of operation; said key means having a target detecting means and counter means therein for producing a count each time said moving target portion is detected by said key means in signals supplied from said computer to said key means;
said count being encrypted by said key means and stored outside said key means by said computer; and
said key means includes means responsive to a predetermined count in said counter for initiating a comparison of the count in said key means and the count stored outside said key means whereupon failure of said comparison causes said erroneous operation to occur; andnull signal producing means coupled with said recognizing means in said key means for generating null signals supplied through said connecting means to said computer for nulling said pre-set errors during operation thereof. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system for insuring operation of a computer software program by only an authorized user in which such software program includes encrypted security message portions inserted therein and where said program also includes pre-set errors therein to cause erroneous operation thereof unless said errors are nulled during operation of said program, said computer having a communications port and having at least one disc drive and said software program is at least in part stored on a disc in such disc drive, and said security message portion included in said software futher includes a moving target portion, said system including in combination:
-
at least one security key means responsive to a unique key indentification mode for releasable connection to the communications port of said computer and including decryption circuit means therein uniquely encoded for decrypting said security message portions of said software; means for releasably connecting said key means to the communications port of said computer operating said software for transferring said identification code and data signals and said encrypted security message portions from said computer to said key means and for transferring signals from said key means to said computer; circuit means in said key means enabled by said identification code for recognizing predetermined ones of said security message portions and, in response to such recognition, for modifying such predetermined ones of said message portions supplied to said key means from said computer and for reencrypting such modified message portions and supplying such reencrypted modified portions from said key means back to said computer for comparison and verification with computer generated modified message portions of said same predetermined ones of said message portions to cause said computer to store said modified security message portions in said software as replacements for previously stored such predetermined ones of said security message portions for use by said computer and said key means in a later cycle of operation; said key means having a target detecting means and counter means therein for producing a count each time said moving target portion is detected by said key means in signals supplied from said computer operating said software to said key means;
said count being encrypted by said key means and stored in encrypted form in said software on a software disc in the disc drive by said computer, and said key means including means responsive to a predetermined count in said counter for initiating a comparison of the count in said key means and the stored count, whereupon failure of agreement of said stored count and said key means generated count causes erroneous operation of said program; andnull signal producing means coupled with said recognizing means in said key means for generating null signals supplied through said connecting means to said computer for nulling said pre-set errors in said program during operation thereof, said pre-set errors included in said program causing said erroneous operation of said program to occur upon failure of said computer to receive null signals from said key means at predetermined times. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. A system for insuring operation of a computer software program by only an authorized user in which such software program has a moving target portion and includes encrypted security message portions inserted therein and where said program also includes pre-set errors therein to cause erroneous operation thereof unless said errors are nulled during operation of said program, said computer having a communications port and said system including in combination:
-
at least one security key means responsive to a unique key indentification code for releasable connection to the communications port of said computer and including decryption circuit means therein uniquely encoded for decrypting said security message portions of said software; means for releasably connecting said key means to the communications port of said computer operating said software for transferring said identification code and data signals and said encrypted security message portions from said computer to said key means and for transferring signals from said key means to said computer; circuit means in said key means enabled by said identification code for recognizing predetermined ones of said security message portions and, in response to such recognition, for modifying such predetermined ones of said message portions supplied to said key means from said computer and for reencrypting such modified message portions and supplying such reencrypted modified portions from said key means back to said computer for comparison and verification with computer generated modified message portions of said same predetermined ones of said message portions to cause said computer to store said modified security message portions in said software as replacements for previously stored such predetermined ones of said security message portions for use by said computer and said key means in a later cycle of operation; said key means having a target detecting means and counter means therein for producing a count each time said moving target portion is detected by said key means in signals supplied from said computer operating said software to said key means;
said count being encrypted by said key means and stored in encrypted form in said software by said computer, and said key means including means responsive to a predetermined count in said counter for initiating a comparison of the count in said key means and the stored count, whereupon failure of agreement of said stored count and said key means generated count causes erroneous operation of said program; andnull signal producing means coupled with said recognizing means in said key means for generating null signals supplied through said connecting means to said computer for nulling said pre-set errors in said program during operation thereof. - View Dependent Claims (19)
-
Specification