SOFTWARE LICENSE DISTRIBUTION AND VALIDATION USING A DISTRIBUTED IMMUTABLE DATA STORE
First Claim
1. A software license issuer, the software license issuer issuing a license for licensed software to a node in a peer-to-peer software licensing network, the software license issuer comprising:
- a memory connected to a processor;
the processor configured to;
issue a transaction to the peer-to-peer software licensing network, the transaction comprising a public key used to identify the software license issuer, a digital signature for authentication of the license issuer public key and a license public key that identifies the license for the licensed software.
1 Assignment
0 Petitions
Accused Products
Abstract
A license for software distributed to multiple users can be validated using a peer-to-peer network, asymmetrical cryptography and an essentially hack-proof public data store of licensing information, avoiding the need for a licensing server or central coordination by servers or host computers. Instances of the licensed software are implemented on the nodes of the peer-to-peer network. A distributed, immutable data store where each segment of data of the series of segments in the data store include a hash of the previous segment. Licensing transactions can be recorded and validated using the distributed, immutable data store. Licensing transactions can include but are not limited to provisioning, de-provisioning, activation and deactivation transactions. The license processing logic can be integrated into the licensed application software, so that once the licensed software is implemented on a user'"'"'s computer, license generation, license revocation, license validation and license invalidation proceed automatically without the need for any intervention.
12 Citations
20 Claims
-
1. A software license issuer, the software license issuer issuing a license for licensed software to a node in a peer-to-peer software licensing network, the software license issuer comprising:
-
a memory connected to a processor;
the processor configured to;issue a transaction to the peer-to-peer software licensing network, the transaction comprising a public key used to identify the software license issuer, a digital signature for authentication of the license issuer public key and a license public key that identifies the license for the licensed software. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A software license holder comprising a node in a peer-to-peer software licensing network, the software license holder comprising:
-
a memory connected to a processor;
the processor configured to;receive from a node in the peer-to-peer software licensing network a transaction; validate the transaction; and in response to successful validation of the transaction, add the transaction to a segment comprising a hash of a final segment in a distributed data store, software licensing transaction data and a hash of the segment, the segment comprising a potential addition to a copy of the distributed data store at the node, the distributed data store comprising linked segments where each segment comprises a hash of a previous segment in the data store. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method of using a peer-to-peer network to perform software license processing without a license server comprising:
-
receiving by a processor of a first node in the peer-to-peer software license processing network, the first node comprising a license holder for licensed software, the license holder comprising license holder processing logic, a copy of a whitelist of approved software issuers and a copy of a distributed data store comprising linked segments in which a subsequent segment of the distributed data store comprises a hash of a preceding segment; receiving a transaction from a second node in the peer-to-peer software license processing network; in response to successful validation of the transaction, adding the transaction to a segment at the first node, the segment comprising a potential addition to the distributed data store, where the segment at the first node comprises a hash of a final segment in the copy of the distributed data store at the first node, licensing transaction data and a hash of the segment at the first node. - View Dependent Claims (17, 18, 19, 20)
-
Specification