Patent ID: 7716745

Claim:
A system for checking out a sub-license to a first device from a second device and checking in a sublicense, comprising: computing processors; and computing memory communicatively coupled with said computing processors, said computing memory having instructions stored therein for performing the following: receiving a request from the second device for a nonce, and providing such nonce; receiving from the second device the checked-out sub-license and the provided nonce; concluding that the nonce received is the same nonce provided; therefore concluding that the received sub-license is legitimate; storing the sent sub-license; adding an entry including an identifier identifying the checked-out sub-license and an identifier identifying the first device to a catalog; deleting the checked-out sub-license; requesting a nonce from the second device, and receiving such nonce; and sending to the second device the received nonce, an identifier identifying the first device, and a list of all sub-licenses currently resident on the first device, wherein the deleted checked-out sub-license is not in the sent list, and wherein the second device concludes that the nonce sent by the first device is the same nonce received by the first device, therefore concludes that the sent identifier and list that accompanied the sent nonce is legitimate, compares the sent list with the catalog and notes that the deleted checked-out sub-license is in the catalog but not on the sent list, and deletes the entry having the identifier identifying the deleted checked-out sub-license and the identifier identifying the first device from the catalog.