WO2017145010A1

Secure multiparty loss resistant storage and transfer of cryptographic keys for blockchain based systems in conjunction with a wallet management system

Abstract

The invention provides a computer- implemented solution for controlling access to a computer-related resource such as, for example, a digital wallet. In one or more embodiments, the wallet may be implemented using a blockchain such as the Bitcoin blockchain but the invention is not limited in this regard. Use of the invention during the initial set-up of the wallet can enable subsequent operations such as wallet transactions to be handled in a secure manner over an insecure channel such as the internet. A method according to an embodiment of the invention can comprise the steps of splitting a verification element (such as a private key in an asymmetric cryptography pair) into a plurality of shares; determining a common secret at two or more nodes in a network; and using the common secret to transmit at least one share of the verification element between the two or more nodes. The shares can be split such that no share on its own is sufficient to arrive at the verification element. This means that no one party stores the entire private key, providing for enhanced security of the key. Two or more shares are required to restore the key. The shares are stored at separate locations one of which is an independent back-up or safe-storage location. If one of the other shares becomes unavailable, the share can be retrieved from back up to ensure that the key (and thus the controlled resource) is still accessible. To ensure safe transmission of the share(s), the common secret is generated at two different nodes independently of each other and then used to generate an encryption key. The encryption key can be used to encrypt at least one share of the verification element, or a message comprising it, to ensure that the share(s) are transmitted securely.

WO2017145010A1, drawing sheet 1
Sheet 1 of 7

Term

No projected expiry on record.

  1. Priority
  2. Filed
  3. Published
  4. Today

21 claims: 11 independent, 10 dependent

  1. 1
    CLAIMS:1. A computer- implemented method of controlling access to a resource, the method comprising the steps: splitting a verification element into a plurality of shares;determining a common secret at two or more nodes in a network;using the common secret to transmit at least one share of the verification element between the two or more nodes.
  2. 10
    14. A method according to any of claims 10 to 13 further comprising:- receiving the message (M), over the communications network, from the second node (S).
  3. 11
    15. A method according to any of claims 10 to 14 and further comprising:- receiving the message (M), over the communications network, from another node.
  4. 12
    16. A method according to any of claims 9 to 15 wherein the first node master public key (Pic), second node master public key (Pis) are based on elliptic curve point multiplication of respective first node master private key (Vic) and second node master private key (Vis) and a base point (G).
  5. 13
    17. A method according to any of claims 9 to 16 and further comprising the steps of:- receiving, over the communications network, the second node master public key(Pis);and - storing, at a data store associated with the first node (C), the second node master public key (Pis).
  6. 14
    18. A method according to any of claims 9 to 17 and further comprising the steps of:- generating, at a first node (C), the first node master private key (Vic) and the first node master public key (Pic);- sending, over the communications network, the first node master public key (Pic) to the second node (S) and/or other node;and - storing, in a first data store associated with the first node (C), the first node master private key (Vic).
  7. 15
    19. A method according to any of claims 9 to 18 wherein the Generator Value (GV) is based on determining a hash of a previous Generator Value (GV).
  8. 16
    20. A method according to any of claims 9 to 19 wherein the first asymmetric cryptography pair and the second asymmetric cryptography pair are based on a function of respective previous first asymmetric cryptography pair and previous second asymmetric cryptography pair.
  9. 17
    21. A computer-based system arranged to perform the steps of any preceding claim.
  10. 20
    24. A computer-implemented system arranged to control access to a digital wallet, the system being operative to:determine a first entity second private key based on at least a first entity master private key and a generator value;determine a second entity second private key based on at least a second entity master private key and the generator value;determine a common secret (CS) at the first entity based on the first entity second private key and the second entity second public key, and determining the common secret (CS) at the second entity based on the second entity second private key and first entity second public key;and wherein: the first entity second public key and the second entity second public key are respectively based on at least the first/second entity master key and the generator value.
  11. 21
    25. A method of controlling access to a digital wallet, the method comprising the steps:determining a first entity second private key based on at least a first entity master private key and a generator value;determining a second entity second private key based on at least a second entity master private key and the generator value;determining a common secret (CS) at the first entity based on the first entity second private key and the second entity second public key, and determining the common secret (CS) at the second entity based on the second entity second private key and first entity second public key;and wherein: the first entity second public key and the second entity second public key are respectively based on at least the first/second entity master key and the generator value.