Getting Started: Wallet
Enhance your crypto experience with Coinbase Wallet Extension. Securely store your digital assets, seamlessly interact with decentralized apps, and take control of your financial future, all within th
Last updated
Enhance your crypto experience with Coinbase Wallet Extension. Securely store your digital assets, seamlessly interact with decentralized apps, and take control of your financial future, all within th
Last updated
Enhance your crypto experience with Coinbase Wallet Extension. Securely store your digital assets, seamlessly interact with decentralized apps, and take control of your financial future, all within the convenience of your browser.
After diving into the intricacies of protocol services in our previous blog, in this post we’ll explore another critical segment of cryptocurrency services—wallet services. Wallet services act as the interface between the blockchain stack and non-blockchain services, facilitating the execution of blockchain transactions by using Signer and Protocol services. These services offer an abstraction layer over blockchain-specific logic and secure key management, allowing seamless onchain operations across blockchain products.
Wallet services are not just transaction facilitators—they are the frontline defense in ensuring asset security. When anomalies like forks, reorgs, or flawed upgrades occur, these services offer the ideal entry point for immediate countermeasures and can be configured to further safeguard user assets during network uncertainties. Confirmation counts are a good example of one such wallet-level configuration which dictates how many blocks need to be mined on-chain before an exchange (or another creditor) considers the transaction final and credits the recipient’s account for the funds involved in the transaction. “Kill-switches” are another such configuration that effectively stops services from reacting to on-chain events.
Scenario: A blockchain network unexpectedly forks into 2 competing chains, causing uncertainty in the network with the potential for transactions to be double spent across the two chains.
Risk: A wallet service has no killswitch to halt its processing of blockchain transactions. Thus, the fork means that it is difficult to ensure the wallet is following the accurate branch of the chain. This could result in transactions being credited during an incident that later are reversed.
What does Coinbase do?
Coinbase has designed wallet systems with the possibility of blockchain incidents as a high priority risk scenario. This has caused us to expose configuration options that allow incident response teams to make immediate, real-time adjustments, including rapid increase in confirmation count or temporarily pause the crediting of incoming deposits (i.e., “killswitch”). This agile response mechanism serves not just as a failsafe but as an active countermeasure system, allowing us to act swiftly to protect user assets as we work through incident response.
Contrary to what one might expect, wallet services don’t store private keys; in our blockchain stack, this responsibility falls to the signer services. The existence of signer services, services responsible for producing digital signatures for cryptocurrency transactions by relying on a state store containing cryptocurrency private key material, allows us to unburden any other system from being responsible for storing and using a cryptocurrency private key. This design paradigm allows simple, high-level reasoning about wallet service risks, streamlining and reducing the chance of error in many types of security reviews.