Multisignature wallet solution provider BitGo has announced its launch of an automated key recovery service (KRS) for private Bitcoin keys.
A KRS creates a key solely for backup purposes. The key isn't used to sign transactions, rather to reassert access to bitcoin holdings if private keys are lost.
The company said that until now, Bitcoin users would have to set up the KRS scheme manually with providers- a costly endeavor and poor user experience.
Following is a diagram and summary of the recovery process, as described in the white paper:
"To initiate a recovery, the wallet owner accesses a recovery page hosted on the KRS. This page contains clientside logic which helps the owner find their funds on the Blockchain , and collect the required unspents to build a recovery transaction. The signing occurs clientside and uses the wallet owner's user key to provide a single signature to the transaction. This transaction is then sent to the KRS operator for cosigning. The KRS operator must verify and implement any security processes at this point, using methods such as email, phone calls, notarized letters, time delays, etc. When they are ready to proceed, the KRS operator brings the halfsigned transaction offline to the airgapped environment, where it can be signed. The fully signed transaction is then brought back online. Through the entire process, the private key never leaves the offline environment."
At first glance, one of the advantages of financial services offered by centralized third parties is that you can always access your deposits so long as you can prove who you are- even if you've forgotten your passwords, account numbers and even much of your own personal information. With Bitcoin, if you've lost your private keys, your bitcoins are gone. There's no customer service number to call, unless you're using hosted wallet solutions like Coinbase.
BitGo, acknowledging this difficulty, says that here's where the automated KRS can help users get the best of both worlds. "We’ve done this because we believe that as a trust-less wallet provider, the user has to be in control of the funds. At the same time, many users don’t want the burden of securing keys or remembering difficult pass phrases at the risk of losing their balance," the company said on its blog.
The code to implement KRS, which BitGo brands as "Keyternal", is open source. It would work with BitGo's 2-of-3 key multisignature solution, whereby one of the keys is generated on BitGo's server. Users would generate their multisig wallets with their choice of backup providers.