Private key management
When designing a bitcoin-application, the way you choose to manage the private key often dictates the fundamental user experience for your users. Being in control of a private key means you have access to the funds it holds. Keeping that key safe is like being in charge of the security of your own bank. It comes with a lot of freedom, but also a big responsibility that many users are not used to.
If it’s not secure enough, you risk loss of user’s funds. But if it’s not convenient enough, you risk not getting or retaining many users in the first place.
This chapter is meant to give an overview of private key management schemes, including descriptions of available approaches, some advice and best practices. After this chapter, you should be able to choose a solution that is well suited to your product’s use case, and understand best-practices for the implementation of it.
An overview of the most common private key management schemes for bitcoin products, and thoughts on picking a suitable scheme for your target audience and their use case.
Every use case and product is different but there are things that all wallet applications should strive for, and only diverge from with very good reasons.
A look at some hypothetical use case categories and what might be suitable approaches for private key management schemes for each of them.
Let’s get started with an overview of private key schemes.