| CPC G06F 21/12 (2013.01) [G06F 21/10 (2013.01); G06Q 20/123 (2013.01); G06Q 20/1235 (2013.01); G06Q 20/3823 (2013.01); G06Q 20/3825 (2013.01); G06Q 20/3827 (2013.01); G06Q 20/3829 (2013.01); H04L 9/0637 (2013.01); H04L 9/0643 (2013.01); H04L 9/3213 (2013.01); H04L 9/3236 (2013.01); H04L 9/3247 (2013.01); H04L 9/3252 (2013.01); G06Q 2220/00 (2013.01); H04L 9/50 (2022.05); H04L 2209/56 (2013.01)] | 12 Claims | 

| 
               1. A computer-implemented method (100) for authorizing access to computer software for a first user (U1), the method comprising: 
            determining a data (D1) associated with the computer software, wherein the data (D1) comprises a licence associated with the computer software, and the licence is associated with the first user (U1) or a second user (U2) and further comprises a first user public key (PU1) associated with the first user (U1) or a second user public key (PU2) associated with the second user (U2); 
                determining a first hash value (H1) of the computer software; 
                determining a second hash value (H2) based on the data (D1) and the computer software; 
                sending, over a communications network, the data (D1), the first hash value (H1) and the second hash value (H2) to an entry for storage in a distributed hash table as a key-value pair, wherein the second hash value (H2) is a key of a key-value pair and the data (D1) and the first hash value (H1) are a value in the key-value pair; 
                determining a metadata (M) comprising the second hash value (H2) for storage on a peer-to-peer distributed ledger; and 
                determining a second redeem script (RS2), wherein the second redeem script (RS2) is based on: 
                the metadata (M), 
                  an agent public key (PA) associated with an agent (A), and 
                  the first user public key (PU1) associated with the first user (U1); and 
                sending, over a second communications network, a second data output (O2) to the peer-to-peer distributed ledger based on: 
                an indication that a first quantity of cryptocurrency (C1) from a first data output (O1) is to be transferred, and 
                the second redeem script (RS2). 
               |