Patent ID: 7734550

Claim:
A system comprising: a processor; and a memory having computer executable instructions stored thereon, the computer executable instructions programmed to: provide a first encrypted software license for a first version of a software product on a computing system, wherein the first encrypted software license has a rank; receive a request to access a software license for the first version of the software product; prior to providing user access to any software license for the first version of the software product: obtain, at the software licensing module, a product identifier that indicates a software product type of the first version of the software product; search the computing system and identifying at least a second version of the software product that includes the same software product type indicated by the product identifier; based on the identified second version of the software product, identify a second encrypted software license stored on the computer system, wherein the second encrypted software license is for the identified second version of the software product, wherein the second encrypted software license has a rank; compare the rank of the first encrypted software license to the rank of the second encrypted software license to determine which of the first encrypted software license and the second encrypted software license includes a higher ranked license and to determine which of the first encrypted software license and the second encrypted software license includes a lesser ranked license; decrypt the higher ranked license; and after the decryption, provide user access to the decrypted higher ranked license while not providing access to the lesser ranked license.