as a place to hold or store bitcoins, due to the nature of the system, bitcoins are inseparable fromthe blockchain transaction ledger. A better way to describe a wallet is something that "stores thedigital credentials for your bitcoin holdings" and allows one to access (and spend) them. Bitcoinuses public-key cryptography, in which two cryptographic keys, one public and one private, aregenerated. At its most basic, a wallet is a collection of these keys. There are several modes which wallets can operate in. They have an inverse relationship with regards to trustlessness and computational requirements. Full clientsverify transactions directly by downloading a full copy of the blockchain (over 150 GBAs of January 2018). They are the most secure and reliable way of using the network, as trust inexternal parties is not required. Full clients check the validity of mined blocks, preventing themfrom transacting on a chain that breaks or alters network rules. Because of its size andcomplexity, downloading and verifying the entire blockchain is not suitable for all computingdevices.Lightweight clientsconsult full clients to send and receive transactions without requiring a localcopy of the entire blockchain (see simplified payment verification – SPV). This makes lightweightclients much faster to set up and allows them to be used on low-power, low-bandwidth devicessuch as smartphones. When using a lightweight wallet, however, the user must trust the serverto a certain degree, as it can report faulty values back to the user. Lightweight clients follow thelongest blockchain and do not ensure it is valid, requiring trust in miners. Third-party internet services called online walletsoffer similar functionality but may be easier touse. In this case, credentials to access funds are stored with the online wallet provider rather thanon the user's hardware. As a result, the user must have complete trust in the wallet provider. Amalicious provider or a breach in server security may cause entrusted bitcoins to be stolen. Anexample of such a security breach occurred with Mt. Gox in 2011. This has led to the often-repeated meme "Not your keys, not your bitcoin". Physical walletsstore the credentials necessary to spend bitcoins offline. One notable examplewas a novelty coin with these credentials printed on the reverse side. Paper wallets are simplypaper printouts. Another type of wallet called a hardware walletkeeps credentials offline while facilitatingtransactions.
ImplementationsFurther information: Bitcoin CoreThe first wallet program, simply named Bitcoin, and sometimes referred to as the Satoshi client,was released in 2009 by Satoshi Nakamoto as open-source software. In version 0.5 the clientmoved from the wxWidgets user interface toolkit to Qt, and the whole bundle was referred to asBitcoin-Qt. After the release of version 0.9, the software bundle was renamed Bitcoin Coretodistinguish itself from the underlying network.