Pages:
Author

Topic: blockchain size Do we really need 20 gbs of data? (Read 2194 times)

hero member
Activity: 765
Merit: 503
I get a bunch of free $ / hrs from Microsofts Azure cloud program.  I run a few small spec VMs as nodes.  My way to contribute back a little.
member
Activity: 83
Merit: 10
What would the harm be in taking all the transactions from 2009-2013 and hashing this result to give us H.  We now have a bitcoin reference client that can load a db that matches this has so we know it contains all unspent outputs as the starting point, we now just need to store the transactions/blocks since this point to keep a verified blockchain.  This way people can download the enitre history if they want to or just use a snapshot from a given year.

A year's blockchain history sounds sufficient for solid network integrity and minimizes the need to store an ever growing chain but perhaps I misunderstood how it works?



I was wondering the same thing. Wouldn't it be the best of both worlds if you could download the full blockchain if you wish or a version that just contained "snapshots" of previous years? I know I would go back to using Bitcoin core then as opposed to third party wallets.
s2
full member
Activity: 198
Merit: 123
What would the harm be in taking all the transactions from 2009-2013 and hashing this result to give us H.  We now have a bitcoin reference client that can load a db that matches this has so we know it contains all unspent outputs as the starting point, we now just need to store the transactions/blocks since this point to keep a verified blockchain.  This way people can download the enitre history if they want to or just use a snapshot from a given year.

A year's blockchain history sounds sufficient for solid network integrity and minimizes the need to store an ever growing chain but perhaps I misunderstood how it works?

legendary
Activity: 2954
Merit: 4158
You can run a light weight client. I believe developers are already trying to solve this problem of blockchain bloat. It isn't necessary for you to run a full node since if you don't leave your computer on for 24/7 and port forward port 8333, it does nothing to the blockchain.
hero member
Activity: 672
Merit: 500
I used to use bitcoin core client and a blockchain.info wallet when I first started. Keeping the blockchain up to date is a real pain if you do not keep bitcoin core running 24/7. I changed to Electrum later on.

I think normal "consumer" user do not need all 20G of blockchain. A lightweight client will suffice. I believe we will see more web wallets and lightweight clients as more people adopt bitcoin because they are more user friendly. Downloading 20G of data is not what a newbie user would want to face.
legendary
Activity: 1652
Merit: 1029
do you really need 10 fingers?
tss
hero member
Activity: 742
Merit: 500
Re: blockchain size Do we really need 20 gbs of data?

YES
legendary
Activity: 2053
Merit: 1354
aka tonikt
Anyway, don't expect it to happen within the next 10 years - not with this team, and ATM there isn't any other bitcoin software that would be suitable for mining.
It won't be long before there will be another Bitcoin implementation suitable for mining: https://blog.conformal.com/btcd-beta-announcement/
On a bit unrelated matter.
There is enough money in mining already, for the miners to develop and start maintaining their own software; one that suits their needs.
I guess that will eventually happen.
Incentive is what drove bitcoin core devs (or its commit deciders) away from miners and also incentives are going to drive miners away from bitcoin core.
legendary
Activity: 3416
Merit: 4658
There is nothing "official" about The Bitcoin Foundation.  They are a private club of people who have decided to give themselves a fancy sounding name and release their own reference implementation of the protocol.  Their client is as much a third party client as any other.

I could create my own organization called The Bitcoin Association, and then I could release my own version of the reference implementation.  My wallet would be just as "official" as theirs.
As a point of clarification, the reference client is not the Bitcoin foundation's. It's an independent open source project which existed a long before the foundation.  The foundation currently funds some of the folks with commit access, though not all, and pays for some resources and tools.

Notwithstanding that, everything else you said was also perfectly fine.

I may be mistaken, but I get the impression that a few members of The Bitcoin Foundation have significant influence over the individuals that decide which changes get pulled into the release candidates.
legendary
Activity: 1400
Merit: 1009
Anyway, don't expect it to happen within the next 10 years - not with this team, and ATM there isn't any other bitcoin software that would be suitable for mining.
It won't be long before there will be another Bitcoin implementation suitable for mining: https://blog.conformal.com/btcd-beta-announcement/
staff
Activity: 4172
Merit: 8419
There is nothing "official" about The Bitcoin Foundation.  They are a private club of people who have decided to give themselves a fancy sounding name and release their own reference implementation of the protocol.  Their client is as much a third party client as any other.

I could create my own organization called The Bitcoin Association, and then I could release my own version of the reference implementation.  My wallet would be just as "official" as theirs.
As a point of clarification, the reference client is not the Bitcoin foundation's. It's an independent open source project which existed a long before the foundation.  The foundation currently funds some of the folks with commit access, though not all, and pays for some resources and tools.

Notwithstanding that, everything else you said was also perfectly fine.
legendary
Activity: 3416
Merit: 4658
Well I don't see why the core team wouldn't implement their wallet idea into the core client?

Because, the Bitcoin Core team maintains the current reference client that implements the full protocol.

Would they intentionally keep the core crude? I wouldn't think so.

It isn't meant to be pretty.  It isn't meant to be crude.  It is meant to be a reference for how the protocol works.

And yes if it isn't part of the official package it is third party unless the foundation calls it official.

There is nothing "official" about The Bitcoin Foundation.  They are a private club of people who have decided to give themselves a fancy sounding name and release their own reference implementation of the protocol.  Their client is as much a third party client as any other.

I could create my own organization called The Bitcoin Association, and then I could release my own version of the reference implementation.  My wallet would be just as "official" as theirs.

Regardless of who is on the team. thats my take on it.  Make the install package different than; split the node and wallet off.

This is what wallets such as Electrum (the "official" client/server model wallet from the official organization "Electrum.org"), and MultiBit (the "official" SPV model wallet from the official organization "MultiBit.org") have already done.

Allow the user to install one or the other. I don't know, I'm ignorant there are smarter people like both of you to come up with a good solution.

There are already good solutions.  You just don't want to use them.
legendary
Activity: 2053
Merit: 1354
aka tonikt
SPV isn't a "wallet" idea, it is a client idea.  

Of course it is a wallet idea.
All the bloom filters, that are the core of the SPV clients, are set up upon the content of a wallet.
Without a wallet there is no reason for an SPV client to exist in the first place.
legendary
Activity: 2053
Merit: 1354
aka tonikt
I don't think "node" has been formally defined.  You are free to use that definition is you like but then it kinda makes the term "full node" redundant.

The full node is a one that has all the blocks - can serve their content on request.

Other nodes only have the UTXO database - they can verify blocks and transactions, but cannot serve blocks, except a few last ones.

Maybe it has to be defined, but in the common sense, node is a creature that routes data.
SPV clients do not route any data - that is why I see no justification to call them nodes.
donator
Activity: 1218
Merit: 1079
Gerald Davis
Well I don't see why the core team wouldn't implement their wallet idea into the core client?

SPV isn't a "wallet" idea, it is a client idea.  A full node has no need for SPV functionality and an SPV client has no need for the full blockchain.  Including SPV functionality into a full node (any full node) is simply bloat.  There is now more code, more complexity, and more potential security issues.

The reality is MOST USER WILL NOT RUN A FULL NODE.   Period.  There is no conceivable future where a majority of users will run a full node.  If Bitcoin ever scaled to tens of millions of users probably less than 1% will ever run a full node.  Bitcoin-core should be the best reference implementation of a full node.   Most users will probably never use it and there is nothing wrong with that.  Having a full node & SPV client is like designing a toaster which also is a TV.   Why not just buy a TV or toaster depending on your needs?
hero member
Activity: 770
Merit: 500
you must not have read the part where I said I shouldn't need to use a 3rd party client.
so put me in the paranoid camp but I haven't lost a btc yet *knock on wafers*

You do understand that in an open source decentralized network there is no such thing as a third party client.   Bitcoin-core is an implementation of a full node.  There are other implementations of nodes both full nodes and SPV nodes.  So the question is do you want to run a full node?  If so then there is a resource requirement to pay.  It just be software bloat to combine a SPV implementation and a full node implementation into the same software.   If the same dev team that is developing bitcoin-core also created an SPV client would you consider that a "third party" client?
Well I don't see why the core team wouldn't implement their wallet idea into the core client?
Would they intentionally keep the core crude? I wouldn't think so.
And yes if it isn't part of the official package it is third party unless the foundation calls it official.
Regardless of who is on the team. thats my take on it.  Make the install package different than; split the node and wallet off.
Allow the user to install one or the other. I don't know, I'm ignorant there are smarter people like both of you to come up with a good solution.



donator
Activity: 1218
Merit: 1079
Gerald Davis
Of course there are all kind of bitcoin clients / wallets.

But a bitcoin node, at the current protocol stage, must always keep a full copy of the blockchain (all 20+ megabytes).
Otherwise it couldn't be much of a node.

I don't think "node" has been formally defined.  You are free to use that definition is you like but then it kinda makes the term "full node" redundant.   The words "not much of a node" would imply there is more than a single specific set of characteristics for a node.   If my client is 3 blocks behind am I not a node?  The instant a miner finds a new block are all other clients on the network no longer a node?  Like I said feel free to define node to be whatever you want, that wasn't the point. 
legendary
Activity: 2053
Merit: 1354
aka tonikt
Of course there are all kind of bitcoin clients / wallets.

But a bitcoin node, at the current protocol stage, must always keep a full copy of the blockchain (all 20+ megabytes).
Otherwise it couldn't be much of a node.
donator
Activity: 1218
Merit: 1079
Gerald Davis
There are other implementations of nodes both full nodes and SPV nodes.

Here I'd like to say that "SPV node" is an oxymoron.

SPV clients are not nodes, because they only fetch data from the p2p network.
Nodes in p2p network should be also serving data to other nodes.

Ok fine use whatever terminology you want.  The point is there is no such thing as a third party client.  There are just clients which implement the Bitcoin protocol.  Some clients keep a full copy of the blockchain and some don't.
legendary
Activity: 2053
Merit: 1354
aka tonikt
There are other implementations of nodes both full nodes and SPV nodes.

Here I'd like to say that "SPV node" is an oxymoron.

SPV clients are not nodes, because they only fetch data from the p2p network.
Nodes in p2p network should be also serving data to other nodes.
Pages:
Jump to: