We’ve leveraged innovative MPC cryptography to provide institutional-grade digital asset custody and key management – all while enhancing simplicity and ease of use
In today’s threat landscape, the protection of our client’s digital assets is paramount and never less than our utmost priority.
We continually strive to provide the best available security through pursuit of emerging cryptographic key management and protection technologies. As a result, we have recently embedded secure multi-party computation, or MPC technology, to materially enhance our key management and transaction security.
Secure multi-party computation (MPC) is a powerful cryptographic tool which, put simply, works by allowing two or more independent parties to collectively compute a function on encrypted data without any information – except the desired output – ever leaving the encrypted domain.
Since being introduced in Professor Andrew Yao’s seminal work in the 1980s, MPC has been the subject of exhaustive research. However, its transition from an object of theoretical study to an applicable technology came about relatively recently. The first known practical use of MPC was in 2008 at a Danish sugar beet auction, where the winning bids were matched up with sellers without disclosing the prices or identities of any other bidders.
To illustrate another use of the concept, let’s consider a simple example. With the current COVID-19 pandemic in mind, suppose a hospital needs to provide data about the virus to researchers and other medical institutions. MPC technology would enable the relevant information to reach researchers at say, Stanford University and the Mayo Clinic – or CDC and the NHS – without compromising individual patient privacy.
In a nutshell, MPC can be applied to virtually any problem involving confidential data from multiple parties.
When it comes to safeguarding the private keys that control crypto assets, MPC affords wallet holders robust protection from potential security breaches.
Rather than creating a master private key and storing it on a device that risks being compromised, MPC distributes shards of a key among devices of participating parties – for example, you (the client), your solicitor and Copper.
Drawing on another protocol of secure computation called zero-knowledge proof, which works by verifying information between parties without revealing the information itself, a key shard can prove that it has the right to co-sign a transaction.
Because the key that executes the transaction is a collectively generated value, it means a single key never exists in whole, or lives on any device. This renders an attack in key theft effectively impossible while also sheltering from internal fraud and collusion – preventing any employee, or group of employees, from misusing the key.
If the concept of distributing shards of a key across multiple parties doesn’t sound very groundbreaking to you, that’s because it’s not.
Shamir’s Secret Sharing Scheme(SSSS), also known as Key Sharding, is a widely used technique which allows a key that is centrally generated to be split into multiple parts. These fragments are then reconstructed every time a signing operation takes place to recreate the private key and execute the transaction.
A huge limitation of Key Sharding is the storage of an entire key on a single appliance. If a single shard is lost or becomes unavailable, cryptographic operations may be prevented. Another crucial security concern of the Key Sharding technique is that it requires the shards to assemble and recreate the private key to sign transactions – creating an attack vector for people with malicious intent.
MPC-based systems are inherently more secure given that transactions can be signed without centrally creating or re-assembling a master private key. In the case of a disaster where one signing key is lost or unavailable, back up keys can be stored offline in a physically secure location and the validity of the backup is verifiable by zero knowledge proofs.
Read more about encryption and security in our post: Or, how and why we’re destroying private keys