A computer system for verifying ownership of a computer software for installation using a distributed hash table and a peer-to-peer distributed ledger, the computer system comprising a processing device associated with a node on a peer-to-peer network of nodes, configured to:
- determine a second user public key (PU2) associated with a second user (U2) from a transaction record stored on the peer-to-peer distributed ledger;
- determine a second public key (P2) associated with the second user (U2) from an entry stored on the distributed hash table;
- compare the second user public key (PU2) and the second public key (P2);
- and
- verify the ownership of the computer software based on comparing of the second user public key (PU2) and the second public key (P2).