US5182770AExpiredUtility
System and apparatus for protecting computer software
Est. expiryApr 19, 2011(expired)· nominal 20-yr term from priority
G06F 2211/007G06F 21/31G06F 21/123
88
PatentIndex Score
312
Cited by
3
References
17
Claims
Abstract
An integrated software piracy prevention system incorporates several characteristic identification codes identifying installation and software components. A separate security device is attached to and in communication with the protected computer system. It is interactively queried regarding proper authorization of the current user. This approach is unusually flexible and provides economical tracking of licensees and their use of sophisticated programs.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. In a data processor, an integrated system for the prevention of unauthorized access to select programming, said integrated system comprising: a) means for non-volatile storage of application control parameters including a decryption value and a program identification code; b) means for receiving an unconfirmed system identification code in an encrypted form, wherein said unconfirmed system identification code corresponds to an unconfirmed program identification code and an unconfirmed installation identification code; c) means for decrypting and storing said encrypted unconfirmed system identification code; d) means for storing an installation identification code including logic control means and code transformation means connected to a peripheral port of said data processor; e) means for accessing said stored installation identification code in encrypted form and decrypting said stored installation identification code; and f) means for confirming whether the unconfirmed system identification code conforms with the stored installation identification code and the stored program identification code.
2. The system of claim 1, wherein the means for confirming includes means for initiating a complex disabling sequence that results in a data processor failure after a significant time interval.
3. The system of claim 1, wherein the encryption algorithm is a public key system, based on large prime numbers.
4. The system of claim 1, wherein said means for storing an installation identification code further includes a session key means for presenting unauthorized use of said storing means.
5. The data processor of claim 1, wherein said select programming includes two or more separate programs separately accessible by distinct program identification codes.
6. The system of claim 1, wherein said encryption algorithms employ asymmetrical values for encryption/decryption operations.
7. A method for preventing unauthorized access to select computer programs for use on a computer installation, comprising the steps of: a) incorporating into said computer program a validation password module; b) incorporating into said computer installation a security device; c) incorporating into said computer installation a device verification module; d) receiving an entered password; e) extracting a program identification code from said validation password module; f) extracting an installation identification code from said security device; and f) confirming said entered password by comparing said password to a value representing said program identification code and said installation identification code.
8. The method of claim 7, wherein said installation identification code includes installation type information.
9. The method of claim 7, wherein all communications with said installation and between said installation and said security device are encrypted.
10. The method of claim 9, wherein the encryption/decryption algorithms are asymmetrical, placing the majority of calculation burden on the less used, dedicated processor of the security device.
11. In combination in a data processing system for the prevention of unauthorized access to select application programs, said system comprises: means for receiving and decrypting an unconfirmed password in digital form; means for recalling from said data processing system a program identification code associated with an application program stored in said data processing system; security device means for storing an installation identification code identifying an installation for operating said application program; means for communicating with said security device means and retrieving said installation identification code; means for comparing said unconfirmed password with a value characterized by said program identification code and installation identification code and confirming said password if a match occurs.
12. The system of claim 11, wherein said communication means includes encrypting a request having a unique session key and a random number value for transmitting to said security device.
13. The system of claim 12, wherein said security device includes a decryption processor for decrypting incoming requests.
14. The system of claim 13, wherein said security device includes processor means to store said session key and set a session counter.
15. The system of claim 14, wherein said security device responds to said request by recalling said installation identification code from memory and transmits a response formed of said acknowledged installation identification code, a session key byte, and session counter.
16. The system of claim 15, wherein said response is encrypted prior to transmission.
17. The system of claim 16, wherein said comparison means will create an essentially untraceable system crash if the password cannot be confirmed or the security device is improperly accessed.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.