Billing system for computing software
First Claim
1. A security system for deciphering information in the form of programs or data for a personal computer including a central microprocessor and a bus for communication with other devices and components comprising:
- security circuit means connected into the personal computer bus for controlling data access and telecommunications capability of the personal computer;
a security module electrically inserted into the security circuit, the security module including thereon a non-volatile, alterable code memory module containing a computer unique external code;
permuter circuit means located in the security circuit for performing permutation and exclusive-or operation on blocks of data presented to it;
memory means of the personal computer for containing therein information in the form of both data and programs, both enciphered and unenciphered; and
a storage medium for the computer carrying security program means for causing the central microprocessor to read the external code from the memory module on the security module an to use that code and their permuter circuit means in the security circuit to decipher enciphered information received from the memory means in a fashion that is dependent on both the permuter circuit means and on the external code so that unenciphered information may be returned to the memory means.
0 Assignments
0 Petitions
Accused Products
Abstract
A computer software security and billing system is disclosed in which the application program is enciphered in accordance with an algorithm driven by a numeric key. The user'"'"'s computer is provided with a hardware security module and a removable billing module, both of which carry unique codes. A security program accesses the application program and also writes information about billing into the billing module. The billing module is periodically replaced so the user can be charged based on amount of usage of the software. The security system is also capable of operating to provide data and program security independent of the billing function.
299 Citations
21 Claims
-
1. A security system for deciphering information in the form of programs or data for a personal computer including a central microprocessor and a bus for communication with other devices and components comprising:
-
security circuit means connected into the personal computer bus for controlling data access and telecommunications capability of the personal computer; a security module electrically inserted into the security circuit, the security module including thereon a non-volatile, alterable code memory module containing a computer unique external code; permuter circuit means located in the security circuit for performing permutation and exclusive-or operation on blocks of data presented to it; memory means of the personal computer for containing therein information in the form of both data and programs, both enciphered and unenciphered; and a storage medium for the computer carrying security program means for causing the central microprocessor to read the external code from the memory module on the security module an to use that code and their permuter circuit means in the security circuit to decipher enciphered information received from the memory means in a fashion that is dependent on both the permuter circuit means and on the external code so that unenciphered information may be returned to the memory means. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A security system for deciphering information for a personal computer including a central microprocessor and a bus through which other devices may be connected to it comprising:
-
security circuit means connected to the bus of the personal computer for controlling data access and telecommunications capability of the personal computer; a fixed unalterable memory circuit in the security circuit containing therein a computer unique internal code; an alterable memory module electrically inserted into the security circuit means including thereon a computer unique external code; microcomputer means in the security circuit means for controlling access to the memory module; memory means of the computer for containing therein information in the form of both data and programs, both enciphered and unenciphered; and a storage medium for the computer carrying at least one code thereon and security program means for causing the central microprocessor to read the code from the storage medium and present that code to the microcomputer means in the security circuit means; the microcomputer means using the code presented to it from the central microprocessor, the internal code obtained from the fixed memory circuit, and the external code obtained from the memory module to generate a decipher code to be used by the security program means to decipher the enciphered information from the memory means and return the unenciphered information to the memory means. - View Dependent Claims (8, 9)
-
-
10. A security circuit for a personal computer having a processor to control access to enciphered information in the from of a program or data comprising:
-
interface circuit means for connecting the security circuit to the bus of the personal computer; permuter circuit means for rearranging and logically altering the information in a determinable and reversible method; a security module containing an electrically alterable memory portion which carries therein an alterable user unique external code; and microcomputer means in the security circuit programmed to recognizes codes transferred to it from the processor of the personal computer and upon recognition of appropriate codes to access the external code so that that external code can be passed to the processor of the personal computer to decipher the information and further programmed to pass the information through the permuter circuit to further decipher that information so that multiple redundant levels of security are provided before a user can access the information which has been enciphered so that the information is only accessible to a user having the security module with the proper external code. - View Dependent Claims (11, 12)
-
-
13. A method of operating a computer data and access security system for transferring data and allowing access to information in the form of data or programs to users who have installed on their computers a hardware security circuit including a microcomputer and into which a security module is removably received, the security circuit including a fixed memory portion thereon which carries an enciphered internal code and the security module including an electrically alterable memory which carries an enciphered external code, the computer of the user also being provided with a security program, the method comprising the steps of:
-
(a) commencing operation of the security program by the computer by means of access codes supplied to the computer with the information to be deciphered, the access codes being provided to the microcomputer in the hardware security circuit; (b) the microcomputer in the hardware security circuit accessing the internal and the external codes and deciphering these codes with the codes passed to it by the computer and then combining the deciphered external and internal codes to device a decipher code which it passes back to the counter; and (c) the computer using the decipher code passed to it by the microcomputer in the hardware security circuit to decipher the information to which access is sought.
-
-
14. A security system for a personal computer including a central microprocessor and a bus to which other peripherals may be connected comprising:
-
security circuit means connected to the personal computer for controlling data access and telecommunications capability of the personal computer; a fixed unalterable memory circuit on the security circuit means containing therein a computer unique internal code; a security module electrically inserted into the security circuit means, the security module including thereon (1) a non-volatile, alterable code memory module containing a fixed computer unique external code, and (2) microcomputer means for controlling access to the memory module; a hardware key module connectable to the personal computer and carrying a user unique hardware key code therein; and a storage medium for the computer carrying security program means for causing the central microprocessor to read the code from the hardware key and present that code to the microcomputer means on the security module; the microcomputer means using the code presented to it from the central microprocessor, the internal code obtained from the fixed memory circuit, and the external code obtained from the security module to generate decipher codes to be used by the security program means to decipher data. - View Dependent Claims (15, 16, 17)
-
-
18. A security system for a personal computer including a central microprocessor and a bus to which other peripherals may be connected comprising:
-
security circuit means connected to the bus of the personal computer for controlling data access and telecommunications capability of the personal computer; a fixed unalterable memory circuit on the security circuit means containing therein a computer unique internal code; a security module electrically inserted into the security circuit means, the security module including thereon (1) a non-volatile, alterable code memory module containing a fixed computer unique external code, and (2) microcomputer means for controlling access to the memory module; a biometric identification module connected to the computer for identifying a particular user of the computer; and a storage medium for the computer carrying security program means for causing the central microprocessor to identify the user with the biometric module, and if the identification is correct, then to present a code corresponding to the user to the microcomputer means on the security module; the microcomputer means using the code presented to it from the central microprocessor, the internal code obtained from the fixed memory circuit, and the external code obtained from the alterable memory of the removable module to generate a decipher code to be used by the security program means to decipher data. - View Dependent Claims (19, 20, 21)
-
Specification