And that's how security of Bitcoins works. If you find a better way to implement a 'P2P currency' system, we're all ears.
Cheers,
Kermee
I don't care to make one.
Just because there's nothing better yet doesn't make the existing cumbersome nature excusable.
Why have all the blocks?
It's the equivalent of bring out movies on torrent by adding the movie onto the last one. It's not like everyone needs access to all the movies (or transactions). As long as there are enough seeders of the early ones then they will always be available.
All needs to happen is for someone break the blocks up, and MD5 hash them so that transactions can be archived and accessed with confidence.
But yeah, right now, the fact it has an ever expanding file is still pretty dumb.
The thing is that the latest movie doesn't require knowledge of all the past movies. However, in order to prevent double spending, you need at least knowledge of all the transactions between the time the funding transaction output was generated and the present.
The system is set up so that a future client can cut down to just the block headers (just 88 bytes each) and request the transactions that it needs to verify payment. However, because it won't have a full node and can't verify transactions by itself, this future client will have to take a wait-and-see approach to see if the transaction is accepted by the network or rejected because of a double-spend attempt. Either that or used some trusted third party that does have access to the full network history.