Post
Topic
Board Speculation
Re: Gold collapsing. Bitcoin UP.
by
smoothie
on 15/07/2015, 06:31:49 UTC
OK.  Provide me with your estimates for the following (and explain how you arrived at your numbers) and I'll update my table using your numbers:
1.  The cost per node to store 1 GB of additional blockchain data for 5 years, assume the outputs are spent.
2.  The cost per node to store 1 GB of additional blockchain data for 5 years, assuming the outputs are unspent.
I may be missing the context as this thread is high volume and I've not read any of the backlog...

But for a full verifying node, the on-going cost cost of 1GB of additional transactions with all outputs spent is 0; all the cost related to that 1GB of data is related to the bandwidth to get it to you and the verification cost, and for short term storage until its burried, after that it need not be stored.
The cost for unspent is some non-zero number which depends on your estimation of storage costs.

This thread can be hard to follow if you're not following it all the time!  

The question was in reference to a debate I was having with Odalv about these "order of magnitude" estimates shown in this table.  I was suggesting that, under the conditions considered in the table, it is cheaper for miners to write the spam to the Blockchain and more costly for the spammer, than continually rejecting it:



Does CreateNewBlock currently take longer to execute if there are more TXs in a miner's mempool to pick from?  If so, this would add credence to Cypherdoc's hunch that miner's are producing more empty blocks when mempool swells.  
Yep, I already pointed that out to you specifically! It's superlinear in the mempool size (well, ignoring caching)  But thats unrelated to f2pool/antpool and the other SPV miners, as they're not ever calling createnewblock in that case, as they're mining without even validating.   One can mine on a validated chain with no transactions while waiting for createnewblock (which is what eligius does, for example).  

Sorry, yes I know you explained that.  The point I'm trying to make is that if CreateNewBlock is super-linear in mempool size, then it would not be surprising to see more empty blocks (what Cypher was calling "defensive blocks") when mempool swells (the miners are mining on an empty block for longer while waiting for CreateNewBlock to finish).  This was Cypher's point from the very beginning that many people, including myself, were suggesting was probably not the case!  

Furthermore, how can f2pool/antpool mine a non-empty block without calling createnewblock?

So pretty much it is more costly to the spammer if miners just write the spam (or accept the tx) into the block chain.

Interesting.

Sorry, but this cannot be true. It is like perpetuum mobile. The bigger block the cheaper it is => let's are try 1 TB block => it must be free

spammers don't control size of blocks in a no limit scenario.  miners do.  so we won't have 1TB blocks b/c miners have the incentive to not destabilize or destroy the network so they will construct large enough blocks that are efficiently optimized so as to not get orphaned and not create significant decentralization of full nodes.  they will also raise their minfee to keep their mempool from destabilizing their full nodes and to keep users access open and readily accessible.  spammers will actually have to pay instead of just recycling their unwritten spam fees.

It makes sense to accept the spam transactions assuming it will cost the spammer more than to reject it and have them recycle the tx for those unwritten.