Hi,
I've just started investigating Bitcoin, and am very excited about the overall concept. I've only read a small amount of the tech, but as I understand it, the Block Chain contains a history of all Bitcoin transactions, and this Block Chain is replicated and stored on every user's computer (is that correct??). And when I installed Bitcoin for the first time, it took many hours to download the Block Chain - which seems to corroborate with how I understand it...
The immediate question which comes to mind is: As Bitcoin grows and many people start using it then could this file not become so big that the whole system becomes totally unworkable? If a billion people are using Bitcoin as their primary trading currency, with multiple billion transactions happening every single day, and every node is constantly being updated with the new information from all of these transactions then it seems this could be a very real problem. Not just for Bitcoin but in terms of overall Internet bandwidth usage!
Not all clients need to download the blockchain, just full clients for users who don't want to have to trust
anyone as well as miners. Also, even full clients can prune long spent transactions from their local copy of the blockchain, this is one of the functions of the merkle tree structure within a block. Certain types of full clients can't do this for practical reasons, but any end-user full client could do it and still be able to verify every transaction that comes it's way.
Another thing - if someone wanted to fuck with Bitcoin, especially once it becomes widely used, it seems all one would need to do is set up two accounts to automatically send one Bitcoin back and forth multiple times a second (perhaps hundreds or thousands of times a second) - if the software can be so set up, and if that transaction needs to update all one billion block chains at every node every time, then it seems to me it would all just grind to a dysfunctional halt.
Try it. See what happens.
EDIT: To end your suspense, it won't have any noticable effect upon the network as a whole, as this has been considered and already adapted for. You will, however, succeed in losing your entire balance due to tiny fees required for 'low priority' transactions. This will still take some time, however, since the network will largely ignore spammy transactions, due to a built in 'point scale' system that discounts bitcoins that have recently been spent. This doesn't prevent any valid transaction from occurring, but it does delay those that they system consiers spammy.
I'm wanting to invest heavily in developing Bitcoin and perhaps even setting up an exchange in South Africa (average bandwidth about 1mbps), but if my concerns are real then it seems that Bitcoin might eventually become impractical to actually use once it gets to a certain size and level of adoption, and that in turn would cause the value of the currency to totally devalue. Seems potentially dangerous...
I would appreciate some solid and in depth responses to this.
Thanks for your help...
there has been much discussion on the topic of end users in Africa, mostly as bitcoin as a replacement for M-Pesa. Do more research, you will learn much of value to your position.