Not sure if this is helpful, but here's what I think you should think about when you hear *"Bitcoin wallet"*: 1. A Bitcoin _wallet_ is a set of _accounts_ that you can (a) spend coins from and (b) receive coins into. 2. An _account_ is one and the same thing as a _secret key_ and its corresponding _public key_ [1]. 3. To spend coins from an _account_, you need to perform a _digital signature_ using that account's _secret key_. 4. Thus, anybody in possession of the account's _secret key_ can spend all coins from that account. In other words, your _secret key_ **better stay secret** and please **don't lose or "forget" it**. Or else [2]. 5. To receive coins from Alice, you have to give Alice one of your accounts' _public key_ [1]. Now, armed with this knowledge, I think you can answer your own questions: > A Bitcoin wallet itself is nothing more than a "record" that is stored > on Blockchain. It's an identifier that will be used in a person's > Bitcoin transactions. Yes and no. A wallet is a bunch of _accounts_. Each _account_ has a "record" in the blockchain: there will be an entry of the form `(_public key_, 10 bitcoins)` for that account [3]. > A Bitcoin wallet app is simply a software tool to create transactions > that are written on BlockChain Yes. A _wallet app_ is a piece of software that manages all of your accounts' _secret keys_ and enables you to perform those _digital signatures_ that let you spend your coins. Those signatures are over _transactions_ of the form `(_my public key_, _recipient public key_, x bitcoins)` as I detailed in [3]. > I think some BitCoin wallet providers -- not sure if "provider" is the > right term -- may keep some information about the user's > wallet/transaction information on their own system. Assuming you are talking about folks like [coinbase.com](https://coinbase.com), which manage your _wallet_ for you. If they're gonna allow you to spend your bitcoins, then they need your accounts' _secret keys_. So yes, they store that. And sometimes they're hacked and you lose your money [2]. On the other hand, if you don't use online wallets like coinbase.com, managing your own _secret keys_ can be dangerous too: I have heard many stories of people losing their hard drives and thus their bitcoins. > The value added by those who provide BitCoin services are simply > providing user-friendly tools to read/write information from > Blockchain. They may also be providing a method of converting real > currency into cryptocurrency and vice versa e.g. trading or purchasing > of BitCoin The value part of this is in "opinion land", but yes, I suppose I agree: it's much more user-friendly not to mange your _secret key_ and worry about losing it or being hacked. Though now you might worry about coinbase.com being hacked. And yes, some wallet providers like coinbase.com let you convert USDs into bitcoins and viceversa. I hope this helps. [1] Sometimes you'll hear the term _address_, which can be thought of as a "fingerprint" of the _public key_. To keep things simple, I will not distinguish between the two. Although, in practice, you will give the _address_, not the _public key_, to folks who want to send you coins. (This has to do with efficiency reasons and a bit of security.) [2] Every time you hear about one of these "Bitcoin hacks," it's because someone's _secret key_ got stolen `=>` the victim's coins got sent to the attacker's account using a _digital signature_ via the stolen _secret key_. [3] To be more specific, there are actually a bunch of entries recording transfers from some other account into your account: `(_public key_ of sender, your account's _public key_, 5 bitcoins sent to you)`