A typical concern raised by those new to bitcoin is that having no central administrator nor authority makes it too dangerous to keep substantial amounts of money in, simply because there is no one to ask for a replacement private key should they lose theirs.
While bitcoin’s decentralized properties make it excellent for censorship resistance, a trade-off of that, many believe, is a lack of familiarity in the security process. While public key encryption is well documented as one of the most types in history, the general public’s understanding of it is minimal, mainly because it doesn’t look like the standard username and password security prompt on most websites and applications today. It’s just not a familiar process, and that in itself creates a security problem, since so few understand how to be safe using it.
To present a private key “prompt” that looks like a typical password prompt on your bitcoin wallet would greatly degrade the security of it. Even if people were willing to put up with that, the process is still impossible for decentralized cryptocurrencies because there would be no one to contact for the “Forgot Password?” link, and no email address associated with your account for a new password to be sent to.
To help bridge the gap between these two systems, so that new users to bitcoin could one day see the wallet login process as something more recognizable, leading cloud wallet BitGo has released a whitepaper detailing an open source protocol that solves a lot of these issues, and gives all bitcoin holders a new option for strong wallet encryption.
In a recent blog post, platform lead Benedict Chan announced the release of a new “protocol to facilitate provisioning of public backup keys,” introducing the concept of third party Key Recovery Services (KRS). This protocol makes it easy for wallet providers to deploy multisignature wallets for their customers, where they keep one key, the customer keeps a second key, and the third key goes to a KRS of the customers’ choice.
Using such wallets in a 2-of-3 key configuration can allow wallet providers to emulate a login process that looks and acts a lot like one that everyone is familiar with. The “Forgot Password?” link would instead request a third party KRS service to use their third key to let you in. Of course, the KRS service can ask you any amount of questions to ensure you’re the rightful owner of the wallet.
“I strongly believe that for Bitcoin to go mainstream, we cannot burden the user with the key security – it is unsafe and bad for the user experience.”
— – Benedict Chan, BitGo Platform Lead
The KRS-centric model also offers more security than just the third keyholder and familiarity enhancements. “Because a KRS is an independent third party, many businesses use them to remove any opportunity for internal collusion. Also, the KRS can add time delays, confirm your intent (prevents the ‘$10 wrench’ duress vulnerability) and run human identity verification before they provide backup key,” Chan explains.
Chan was one of several BitGo employees on the team. Although Ryan X Charles, the ex-Reddit cryptocurrency engineer, was “a key contributor in the early stages of the build.” Chan contributed the most code to the new protocol, having finished it in late October.
Although the only place the protocol has been deployed is in the BitGo wallet signup portal, Chan explained that more than 75% of customers have chosen the option, removing any doubt that people will adopt it.
Wallet providers are encouraged to download the source code themselves, and fit it into their process, adding familiarity to the wallet sign-up process and also helping to create a new industry of KRS providers. “We’d love for other wallets to use it,” Chan added.
Of course, BitGo also has plans to become a KRS provider, once this wallet option starts to take off. “Because we have seen a need in the space, we also plan to run and operate a Key Recovery Service (we haven’t announced it yet),” Chan said. “Our KRS will allow other wallet providers to use our KRS to provision backup keys. This KRS would only be available on non BitGo wallets because we do not want to be in control of more than one key.”
For the time being there is only one KRS option, Keyternal. With a free level of service, the startup is betting that the KRS industry will take off as this protocol becomes more popular. Beyond their free service, they offer different tiers of paid protection plans. The default recovery procedure with Keyternal involves only a simple returned email ‘bounce-back’ verification, on top of the standard verification you get when signing with the local wallet user key.
“However, more sophisticated / high security process layers are available and recommended,” Chan reiterated. “For example, if a user plans to hold a significant amount of Bitcoin, then they should also set up an address with proof of residence, a phone call verification before recovery, etc. Companies can choose an enterprise recovery plan, where recovery could be initiated by a board of directors signed letter of intent rather than a single individual email. These are all good opportunities for the KRS to differentiate themselves and gain recurring revenue.”
Despite all of this good news, some users might find it a bit disparaging when they sign up for a wallet and only see one KRS option. Thankfully another two are in the works already.
“We are in active talks with 2 other KRS providers and hope to have good news soon.”
— – Chan
As with many other services in the space, there is a risk of the fledgling KRS industry being “Ubered” out of existence, once some coder figures out a way to decentralize the role, leaving no human decision makers in the role of KRS. Chan readily agreed, but felt there would still be room for both to compete.
“There will be decentralized storage networks that could help with some part of this, within the next 5 years. However, the KRS really provides more than vetted secure key storage and automated recovery – it also provides offline human verification of multiple factors and identities. Such features could take longer to replicate.”
— – Chan
Security is still the overriding factor of any such access procedural protocol, and Security experts have yet to weigh in on the subject. Just how much safer is the KRS procedure than the similar, legacy option of having a 2-of-3-key wallet where you generate and keep two keys, with one of them thrown into a physical safe? Chan said that it all depends on the resources and tech-savvy of the individual.
“Some individuals are able to buy/lease physical vault space, and spare the funds for a dedicated machine to perform offline key generation and signing.” Chan said, pointing out that the old way can be extremely secure for those that really know what they are doing.
“An unfortunate majority of users often create multiple keys on one machine or write the key phrase down on paper. This is unsafe because a single machine can be compromised easily (many consumer machines run a high risk of trojans and backdoors). The method where keys are encrypted with a passphrase / written down is also prone to loss / passphrase forgotten.”
— – Chan
So it seems that users who aren’t well-versed in Bitcoin safety to begin with have a lot to gain from the KRS-centric wallet access model, and before mainstream adoption of bitcoin can happen, such a system may be vital.