But see, as long as banks are used, they can manipulate the money supply. Fractional reserve, and all of that. If people accept a bank balance as good as coins themselves, then banks can lend out more BTC than they actually have, effectively inflating the BTC supply. And just as easily, they can withdraw their lending to shore up their reserves and deflate the BTC supply.
I think Bitcoin banks could very easily and credibly prove they have the BTC they say they have via the digital signature function.
The only slightly more difficult part would be them credibly proving that the amount they have on deposit is accurate. Not impossible though. I propose a simple straightforward way.
One way they could do this is to create an anonymous list of all their depositors and put them in some sequence.
Example, MtGox could say and sign, "we have 1000000 BTC on deposit", and create an ordered list of balances. Each entry on the list would have a start and end range, for example, the first entry for example 25 BTC would "start" at 0 and "end" at 25, and the second entry for example 100 BTC would "start" at 25 and "end" at 125. Each entry would have a public key published with it, and the entire list would be signed by MtGox. The last item on the list would "end" at 1000000 BTC.
Then MtGox would give each depositor a signed statement that "your deposit, acct xyxy is on our list at
and ", along with the matching private key for that entry.
Two depositors who could produce messages both claiming the same entry as their deposit could publicly prove that the bank misrepresented its liabilities.
The private and public key scheme included with each line would simply allow the individual depositors to collaborate via some independent registry, so they could anonymously claim ownership of their funds in an effort to look for double allocations without sharing their account numbers or identities at large. (e.g. they would each sign messages saying "These funds are mine, contact me if you think they're yours", where is generally going to be "publish your contact details encrypted with and proof that the bank signed a message saying these are yours, and I'll find you.") While not every depositor would participate, it would only take one collision to discredit the bank - which would be a strong incentive to keep the bank honest.
Makes sense, though it is a rather complex solution to the problem, and I'm not sure many people would understand. I wonder how many people would actually participate in verifying such a list, or how many companies could be forced into releasing one? I mean, look at how many people use MtGox already, despite not knowing whether they actually have enough Bitcoins to cover all of their balances?
It might be one of those domino-effect things, where the first company to start regularly releasing such a list might be favored enough by consumers to force other companies to follow suit. But, I have a feeling not enough people would be concerned about the fractional reserve problem to spend any of their own time on ensuring companies are kept accountable.
Multisig transactions should solve all the banking problems. Your deposits are with them, but they cannot move them unless you provide the other signature. Double spends can be prevented because the bank will not sign a double spend. The "bank" is basically reduced to a trusted third party that prevents double spends, allowing merchants to trust 0-conf transactions.
Seems reasonable. I have a feeling that banks wouldn't like that much, and many wouldn't use multisigs. Smart people would, of course, use this method, but we all know how smart the general populace can be...
Some people might not even want to deal with multisigs either. They like just swiping a card and entering a pin, and unless/until Bitcoin is just as easy (i.e., doesn't require a mobile phone to provide your piece of the multisig), I think many people would be fine with just letting the bank handle the transactions entirely.
But, hopefully you're right, and multisigs would keep fractional banking to a minimum.
Yeah, exactly waspoza. A merchant would be much more likely to trust a transaction coming directly from a bank than from a consumer standing there with a handheld Bitcoin client in their hand.
The next step, of course, would be bank-to-bank transfers used as payments. So basically, you and the merchant both have a bank account, and you issue a payment from your account to theirs. You and the merchant never actually touch the Bitcoin ledger (and the bank(s) may not have to either), but it's just a balance transfer on paper. It wouldn't be much different than the current credit card/debit card system.
We moved to using credit/debit cards for convenience. Given how inconvenient it is to utilize a Bitcoin client in-person, I can imagine we would move to a similar system with Bitcoins. It's kind of depressing because Bitcoins were made to move away from all of that stuff, but it's reality. If Bitcoin usage became widespread, more convenient methods of making payments cropping up would be inevitable.
The convenience of credit cards comes from the inability to use cash online or by mail and the general dangers/issues of purchasing everything w/ cash.
Bitcoin "lack of convenience" is more a technical not fundamental issue.
Imagine something like this:
1) you go shopping and cashier rings up the goods.
2) the little checkout display has a button Bitcoin.
3) you click on it and it displays a QR code.
4) you scan the QR code w/ mobile phone and (based upon an agreed upon format) it has the payment address, amount, and a note for your wallet.
5) you hit send. 3-5 seconds later the cashier gets a payment confirmation, prints the receipt and you walk out of the store.
But what if you have a custom client on your mobile phone? Your custom client could do mischevious things such as:
- Create another transaction right after the first one from the same address to one of your own addresses. It's a crap shoot as to which transaction gets into the block chain at that point.
- Ensure that it is a transaction that would require a fee. Then, create the transaction without a fee. It will never go through (or at least, take a long time to go through), but the cashier will see 0-conf. In the meantime, you can send those coins to a different address to ensure that transaction never happens.
- Etc, etc, etc. More loopholes will be found, I am certain.
It's no worse than the type of fraud that people can commit with written checks, but you can see how most stores view those these days...