Dr Craig Wright, aka “Bitcoin Dundee” as he is referred to by Jon Matonis, and his team have been busy at nChain. Two patent applications which have now been made public demonstrate exceptional security applications for Bitcoin, and specifically for Bitcoin wallets and exchanges.
The latest works made public by nChain demonstrate two very attractive security inventions:
- A Deterministic Key Generation Technique.
- A Secure Split-Key technique.
Although these technological inventions allow for securing most forms of data, we will specifically look at the Bitcoin application here.
In the first invention, two nodes, or users, are able to find a deterministic key which can be used to update their own private key (based on existing private key + deterministic key), and also update the ‘other party’ public key (based on existing public key + deterministic key).
This provides for very secure sharing of messages, without the need to store a common secret as this can be determined by each party as required.
The real work in this invention rests behind a mathematical formula, which is applied to both the existing, and the deterministic keys.
Not only does this technique enable secure sharing of messages, it also allows for the generation of many common private keys, – all based successively, on a single master key for each node. In this regard, a hierarchy of keys can be established by determining a series of successive deterministic keys.
How does this help traders?
Each and every Bitcoin trader online takes a necessary risk. They trust the exchange or wallet they are using online will not be compromised by a direct hack, or an inside job. Certainly, MtGox was not the only exchange in history to have been hacked (although the most notorious). There have been others and there are bound to be more in future.
Even in cold storage, keys can still be stolen.
But what if stealing the keys wouldn’t be sufficient? What if stealing a key meant you only had a small part of the puzzle, for which you can’t do much without having access to the other pieces of this puzzle.
This is where the second listed invention “A Secure Split Key System” comes in.
This method as described in the now public application allows an exchange or an online digital wallet host to store their private keys in such a manner that it cannot be stolen, but can be reproduced when required.
The method in this invention enables the splitting of a cryptographic key into two or more, in such a manner where it can be regenerated from two or more of those shares. Each individual ‘share’ on its own serves no purpose, and a would-be thief would be left scratching their heads upon accessing a ‘share’ key.
Using the aforementioned deterministic key generation technique, two or more parties determining a common secret can generate an encryption key which can be used to encrypt a number of these ‘shares’. Using the common secret, the shares can be transmitted between a number of nodes. This is necessary to block interception or attack attempts.
Effectively, what you have here is a group of shares of a private key, securely transmitted and stored at various locations, and held by various users. The private key should not be stored anywhere once the shares are created and secured. This means that the theft of any share would be completely pointless, without the other shares.
Suppose you have five shares, stored at five different locations. If an attacker burns down two of the locations, you can still regenerate the private key by using three of the five shares. The minimum number of shares required for private key regeneration can all be considered beforehand. The 4S algorithm provides this flexibility.
I was asked recently how this compares to multisigs in Bitcoin. The method and application is vastly different. Multisigs in Bitcoin allow for multi-party signatures on transactions. This means that a transaction cannot be broadcast to the network unless it gets a second or third user to sign. This technique on the other hand enables the complete regeneration of private keys. Multi-sigs cannot protect private keys – so the application is entirely separate and different in this case.
I asked nChain to provide a summary on this invention. Jimmy Nguyen, who is Chief IP, Communicationss and Legal Officer at nChain, had the following to say:
“nChain believes that its Deterministic Key Generation and Secure Split-Key technique inventions will significantly improve security of bitcoin wallets and exchanges, and thus further support the growing adoption of bitcoin. But we are even more excited that these inventions can provide security benefits for any digital data, asset, communication or controlled resource that needs to be secured. This is just the beginning of many technology developments coming from nChain on our mission to enable exponential blockchain growth and benefit all bitcoin network participants.” –Jimmy Nguyen, nChain.
Fundamentally, digital wallet and exchange providers now have an option and ability to work with nChain in adopting this safeguard. I almost liken it to a form of ‘decentralized’ security. In the same way we have a distributed ledger that protects Bitcoin itself, we can have decentralized ‘shares’ which protect the key.