Claims Analysis
Total Claims: 12
Claim 1
Independent Claim
121 words
A data processing system that provides for the public encryption of software programs while simultaneously protecting against the public decryption and piracy of said programs, comprised of: a plurality of microprocessors; each microprocessor of said plurality having a unique and publicly accessible encryption key means for encrypting said software programs in a unique fashion for each particular microprocessor; each microprocessor of said plurality further having a unique decryption key means for decrypting said software programs that have been encrypted with the microprocessor's unique encryption key; said decryption key means in each microprocessor being imbedded therein in a fashion which makes the decryption key humanly imperceptible, and being of a type that is not determinable from said publicly accessible encryption key means.
Claim 2
Dependent Claim
84 words
A system according to Claim 1 wherein each microprocessor of said plurality includes an arithmetic means for performing mathematical operations in response to externally supplied instructions, a first memory means for storing instructions that direct said arithmetic means to decrypt said encrypted programs via said decryption key, a second memory means for storing decrypted programs from said arithmetic means, and control means for supplying instructions from said first and second memory means to said arithmetic means respectively during first and second interleaved time intervals.
Claim 3
Dependent Claim
46 words
A system according to Claim 2 wherein said control means further includes means for permitting said decryption key means to be read within said microprocessor during only said first time intervals while simultaneously prohibiting transfers of said decryption key means and decrypted programs from said microprocessor.
Claim 4
Dependent Claim
48 words
A system according to Claim 2 wherein said control means further includes a first program counter means for addressing said first memory means during said first time intervals, and a second program counter means for addressing said second memory means during both said first and second time intervals.
Claim 5
Dependent Claim
34 words
A syster according to Claim 2 wherein each microprocessor of said plurality is integrated on a respective semiconductor chip, and said decryption key means is imbedded therein as a plurality of electrically programmable fuses.
Claim 6
Dependent Claim
73 words
A system according to Claim 2 wherein said encryption key rears and said decryption key means for each microprocessor of said plurality respectively represent a unique pair of digits (e, n) and (d, n), said encrypted programs are unencrypted programs raised to the power e modulo n, and said instructions in said first memory means direct said arithmetic means to decrypt programs by raising said encrypted programs to the power d modulo n.
Claim 7
Dependent Claim
114 words
For use in a data processing system that provides for the public encryption of a software program while simultaneously protecting against the public decryption and software piracy of said program, a microprocessor comprised of: an encryption key means that is unique to said microprocessor and is publicly accessible; means for receiving said program after it has been encrypted via said publicly accessible encryption key means; a decryption key means that is unique to said microprocessor, is integrated into said microprocessor in a fashion which makes it humanly imperceptible, and is not determinable from said publicly accessible encryption key means; and means for decrypting the received program within said microprocessor via said decryption key means.
Claim 8
Dependent Claim
83 words
A microprocessor according to Claim 7 wherein said means for decrypting includes an arithmetic means for performing mathematical operations in response to externally supplied instructions, a first memory means for storing instructions that direct said arithmetic means to decrypt said encrypted program via said decryption key, a second memory means for scoring decrypted programs from said arithmetic means, and control means for supplying instructions from said first and second memory means to said arithmetic means respectively during first and second interleaved time intervals.
Claim 9
Dependent Claim
41 words
A microprocessor according to Claim 7 wherein said means for decrypting includes means for reading said decryption key within said microprocessor during only predetermined time intervals while simultaneously prohibiting transfers of said decryption key means and decrypted perogram from said microprocessor.
Claim 10
Dependent Claim
30 words
A microprocessor according to Claim 7 wherein said microprocessor is integrated on a single semiconductor chip, and said decryption key is imbedded therein as a plurality of electrically programmable fuses.
Claim 11
Dependent Claim
57 words
A microprocessor according to Claim 7 wherein said encryption key means and said decryption key means respectively represent a unique pair of digits (e, n) and (d, n), said encrypted program is an unencrypted program raised to the power e modulo n, and said means for decrypting raises said encrypted program to the power d modulo n.
Claim 12
Independent Claim
83 words
A method of encrypting and decrypting a software program including the steps of: integrating a unique and non-public decryption key into a data processor in a fashion which makes said decryption key humanly imperceptible; encrypting said program via a public encryption procedure which uses a public encryption key that is unique to said data processor; receiving said encrypted program in said data processor; and decrypting said received program in said data processor using a public decryption procedure together with said non-public decryption key.