Claims Analysis
Total Claims: 30
Claim 1
Independent Claim
126 words
An apparatus for controlling the use of a software module executing on a computer system, said computer system comprising: means for granting entitlement for said computer system to execute said software module, said software module being a program unit that is discrete and identifiable with respect to compiling, combining with other units, and loading; a plurality of independent triggering means in said software module for triggering entitlement verification; entitlement verification means, responsive to each of said plurality of independent triggering means, for verifying that said computer system has entitlement to execute said software module; and means, responsive to said entitlement verification means, for aborting execution of said software module if said entitlement verification means determines that said computer system lacks entitlement to execute said software module.
Claim 2
Independent Claim
126 words
An apparatus for controlling the use of a software module executing on a computer system, said computer system comprising: means for granting entitlement for said computer system to execute said software module, said software module being a program unit that is discrete and identifiable with respect to compiling, combining with other units, and loading; a plurality of independent triggering means in said software module for triggering entitlement verification; entitlement verification means, responsive to each of said plurality of independent triggering means, for verifying that said computer system has entitlement to execute said software module; and means, responsive to said entitlement verification means, for aborting execution of said software module if said entitlement verification means determines that said computer system lacks entitlement to execute said software module.
Claim 3
Dependent Claim
34 words
The apparatus for controlling the use of a software module of claim 1, wherein each of said plurality of independent triggering means is a single object code instruction which triggers said entitlement verification means.
Claim 4
Dependent Claim
84 words
The apparatus for controlling the use of a software module of claim 2, wherein said object code instruction which triggers said entitlement verification means also causes said computer system to perform an additional function required for proper execution of said software module concurrently with verifying that said computer system has entitlement to execute said software module, whereby if said software module is modified by removing said object code instruction, said additional function required for proper execution of said software module will not be performed.
Claim 5
Dependent Claim
32 words
The apparatus for controlling the use of a software module of claim 2, wherein said object code instruction which triggers said entitlement verification means contains a product number for said software module.
Claim 6
Dependent Claim
84 words
The apparatus for controlling the use of a software module of claim 4, wherein said entitlement verification means comprises: a product lock table in said computer system, said product lock table comprising a plurality of entries containing entitlement information, wherein each of said plurality of entries is associated with a product number; and means, responsive to said object code instruction, for accessing entitlement information contained in an entry in said product lock table associated with said product number contained in said object code instruction.
Claim 7
Dependent Claim
49 words
The apparatus for controlling the use of a software module of claim 1, wherein said means for granting entitlement for said computer system to run said software module comprises: means for generating an entitlement key consisting of data; and means for inputting said entitlement key into said computer system.
Claim 8
Dependent Claim
58 words
The apparatus for controlling the use of a software module of claim 6, wherein said computer system contains a unique identifier, wherein said means for generating an entitlement key uses said unique identifier to generate said entitlement key, and wherein said entitlement key grants entitlement to run software only on a computer system containing the same unique identifier.
Claim 9
Dependent Claim
79 words
The apparatus for controlling the use of a software module of claim 7, further comprising: means for encrypting said entitlement key using said unique identifier, wherein the resultant encrypted entitlement key may be decrypted only on a computer system having the same unique identifier; means in said computer system for accessing the unique identifier of said computer system; and means in said computer system, responsive to said means for accessing said unique identifier, for decrypting said encrypted entitlement key.
Claim 10
Independent Claim
154 words
A method for controlling the use of a software module executing on a computer system, said software module comprising a plurality of object code instructions, said method comprising the steps of: granting entitlement for said computer system to execute said software module, said software module being a program unit that is discrete and identifiable with respect to compiling, combining with other units, and loading; placing in said software module a plurality of independent triggering means for triggering entitlement verification; executing object code instructions contained in said software module; triggering an entitlement verification in said computer system to verify that said computer system has entitlement to execute said software module whenever one of said plurality of independent triggering means is encountered during execution of said object code instructions contained in said software module; aborting execution of said software module if said entitlement verification determines that said computer system lacks entitlement to execute said software module.
Claim 11
Independent Claim
154 words
A method for controlling the use of a software module executing on a computer system, said software module comprising a plurality of object code instructions, said method comprising the steps of: granting entitlement for said computer system to execute said software module, said software module being a program unit that is discrete and identifiable with respect to compiling, combining with other units, and loading; placing in said software module a plurality of independent triggering means for triggering entitlement verification; executing object code instructions contained in said software module; triggering an entitlement verification in said computer system to verify that said computer system has entitlement to execute said software module whenever one of said plurality of independent triggering means is encountered during execution of said object code instructions contained in said software module; aborting execution of said software module if said entitlement verification determines that said computer system lacks entitlement to execute said software module.
Claim 12
Dependent Claim
52 words
The method for controlling the use of a software module of claim 9, wherein said step of placing in said software module a plurality of independent triggering means comprising placing, at each of a plurality of separate locations in said software module, a single object code instruction which triggers said entitlement verification.
Claim 13
Dependent Claim
83 words
The method for controlling the use of a software module of claim 10, wherein said object code instruction which triggers said entitlement verification also causes said computer system to perform an additional function required for proper execution of said software module concurrently with verifying that said computer system has entitlement to execute said software module, whereby if said software module is modified by removing said object code instruction, said additional function required for proper execution of said software module will not be performed.
Claim 14
Dependent Claim
31 words
The method for controlling the use of a software module of claim 10, wherein said object code instruction which triggers said entitlement verification contains a product number for said software module.
Claim 15
Dependent Claim
85 words
The method for controlling the use of a software module of claim 12, further comprising the step of: maintaining a product lock table in said computer system, said product lock table comprising a plurality of entries containing entitlement information, wherein each of said plurality of entries is associated with a product number; and wherein said step of triggering an entitlement verification comprises accessing entitlement information contained in an entry in said product lock table associated with said product number contained in said object code instruction.
Claim 16
Dependent Claim
60 words
The method for controlling the use of a software module of claim 9, further comprising the steps of: generating an entitlement key consisting of a plurality of data bits, said entitlement key providing information enabling said computer system to determine whether or not it has entitlement to execute said software module; and inputting said entitlement key into said computer system.
Claim 17
Dependent Claim
58 words
The method for controlling the use of a software module of claim 14, wherein said computer system contains a unique identifier, wherein said step of generating an entitlement key uses said unique identifier to generate said entitlement key, and wherein said entitlement key grants entitlement to run software only on a computer system containing the same unique identifier.
Claim 18
Dependent Claim
110 words
A program product apparatus for controlling entitlement, wherein said program product apparatus executes on a computer system having means for receiving entitlement to execute a software module, and having entitlement verification means responsive to triggering means in said software module for verifying that said computer system has entitlement to execute said software module, said program product apparatus comprising: at least one software module recorded on recording media, said software module being a program unit that is discrete and identifiable with respect to compiling, combining with other units, and loading; and a plurality of independent triggering means in said software module for triggering said entitlement verification means on said computer system.
Claim 19
Dependent Claim
110 words
A program product apparatus for controlling entitlement, wherein said program product apparatus executes on a computer system having means for receiving entitlement to execute a software module, and having entitlement verification means responsive to triggering means in said software module for verifying that said computer system has entitlement to execute said software module, said program product apparatus comprising: at least one software module recorded on recording media, said software module being a program unit that is discrete and identifiable with respect to compiling, combining with other units, and loading; and a plurality of independent triggering means in said software module for triggering said entitlement verification means on said computer system.
Claim 20
Dependent Claim
31 words
The program product apparatus for controlling entitlement of claim 16, wherein each of said plurality of independent triggering means is a single object code instruction which triggers said entitlement verification means.
Claim 21
Dependent Claim
81 words
The program product apparatus for controlling entitlement of claim 17, wherein said object code instruction which triggers said entitlement verification means also causes said computer system to perform an additional function required for proper execution of said software module concurrently with verifying that said computer system has entitlement to execute said software module, whereby if said software module is modified by removing said object code instruction, said additional function required for proper execution of said software module will not be performed.
Claim 22
Dependent Claim
113 words
The program product apparatus for controlling entitlement of claim 17, wherein: said object code instruction which triggers said entitlement verification means contains a product number for said software module; said entitlement verification means on said computer system comprises a product lock table in said computer system, said product lock table comprising a plurality of entries containing entitlement information, wherein each of said plurality of entries is associated with a product number; and said entitlement verification means on said computer system further comprises means, responsive to said object code instruction, for accessing entitlement information contained in an entry in said product lock table associated with said product number contained in said object code instruction.
Claim 23
Independent Claim
139 words
A method for distributing a software module, wherein said software module is capable of executing on any one of a plurality of computer systems, each of said computer systems having means for receiving entitlement to execute said software module, and having entitlement verification means responsive to triggering means in said software module for verifying that said computer system has entitlement to execute said software module, said method comprising the steps of: placing in said software module a plurality of independent triggering means for triggering said entitlement verification means, said software module being a program unit that is discrete and identifiable with respect to compiling, combining with other units, and loading; distributing a copy of said software module to each of said computer systems; and granting entitlement for at least one of said computer systems to execute said software module.
Claim 24
Independent Claim
139 words
A method for distributing a software module, wherein said software module is capable of executing on any one of a plurality of computer systems, each of said computer systems having means for receiving entitlement to execute said software module, and having entitlement verification means responsive to triggering means in said software module for verifying that said computer system has entitlement to execute said software module, said method comprising the steps of: placing in said software module a plurality of independent triggering means for triggering said entitlement verification means, said software module being a program unit that is discrete and identifiable with respect to compiling, combining with other units, and loading; distributing a copy of said software module to each of said computer systems; and granting entitlement for at least one of said computer systems to execute said software module.
Claim 25
Dependent Claim
50 words
The method for distributing a software module of claim 20, wherein said step of placing in said software module a plurality of independent triggering means comprises placing, at each of a plurality of separate locations in said software module, a single object code instruction which triggers said entitlement verification means.
Claim 26
Dependent Claim
80 words
The method for distributing a software module of claim 21, wherein said object code instruction which triggers said entitlement verification also causes said computer system to perform an additional function required for proper execution of said software module concurrently with verifying that said computer system has entitlement to execute said software module, whereby if said software module is modified by removing said object code instruction, said additional function required for proper execution of said software module will not be performed.
Claim 27
Dependent Claim
113 words
The method for distributing a software module of claim 21, wherein: said object code instruction which triggers said entitlement verification means contains a product number for said software module; said entitlement verification means on said computer system comprises a product lock table in said computer system, said product lock table comprising a plurality of entries containing entitlement information, wherein each of said plurality of entries is associated with a product number; and said entitlement verification means on said computer system further comprises means, responsive to said object code instruction, for accessing entitlement information contained in an entry in said product lock table associated with said product number contained in said object code instruction.
Claim 28
Dependent Claim
71 words
The method for distributing a software module of claim 20, wherein said step of granting entitlement for said computer system to execute said software module comprises the steps of: generating an entitlement key consisting of a plurality of data bits, said entitlement key providing information enabling said computer system to determine whether or not it has entitlement to execute said software module; and transmitting said entitlement key to said computer system.
Claim 29
Dependent Claim
58 words
The method for controlling the use of a software module of claim 24, wherein said computer system contains a unique identifier, wherein said step of generating an entitlement key uses said unique identifier to generate said entitlement key, and wherein said entitlement key grants entitlement to run software only on a computer system containing the same unique identifier.
Claim 30
Dependent Claim
79 words
The method for controlling the use of a software module of claim 20, wherein: said step of distributing said software module comprises distributing a plurality of software modules, each having a plurality of independent triggering means for triggering entitlement verification, on a single recording medium; and said step of granting entitlement for said computer system to execute said software module comprises granting separate entitlement to at least two of said plurality of software modules on said single recording medium.