@39 Do Nodes set their own consensus or do they have a AS A…

Twetch ·

@39 Do Nodes set their own consensus or do they have a AS A GROUP SET consensus? Do Nodes connect to each other? I thought Bitcoin Nodes do not connect to each other but then stumbled upon a video explaining they connect to form a network. Thanks Sir.

Replies

Twetch ·

Lets say, there will be Blocks generated with only X TXs ( y MB ) but with TBs of data in it forever (hypothetical). Does that mean, i only need y MB of diskspace to store the blockchain after pruning the data? I just need faster machine for verification?

Twetch ·

Say I am a merchant with a node. I get a TB block with Txs and OP_Return Data. 1. How practical is it for me to prune every Data on block after validation ? 2. How will it affect the block size (< 1TB?) ?

Twetch ·

And, contrary to popular belief, fully validating nodes are completely unnecessary for the system to still operate safely and securely.

The incentive model makes conspiracy an extremely stupid thing to try. It's a decentralized power structure.

Twetch ·

This is where IP to IP comes in.

If all transactions I care about either originate with or are sent from me, I can already filter them from all other transactions.

All I need is the Merkle proofs for each transaction I care about, and the block headers.

Twetch ·

Essentially it's an information problem. What information do I find valuable enough to keep?

You can't know until you've evaluated it.

So, unless you can prefilter and request only the transactions you care about, you have to look through all.

Twetch ·

If you run your own node, you can theoretically choose to receive all, or only receive a subset of transactions, or only block headers if you wish.

The problem is, which txs do you care about? Can you know all of them without seeing all txs?

Twetch ·

And THAT is the real 2nd layer scaling solution. It's already possible, people just haven't built the tools yet. True SPV. Then the blockchain doesn't need to be fully synced.

Twetch ·

Lots of questions, requiring rather involved answers...

This will necessarily be oversimplified.

Nodes connect to each other. If a node isn't creating new information for the network (blocks, transactions,) they are irrelevant to consensus.

Twetch ·

People get confused because they don't understand the economic side of Bitcoin. They treat all nodes equally, or pay lip service only to the idea that some nodes are more important than others.

Twetch ·

"or only receive a subset of transactions" In this case i wouldnt be validating the Blockchain then, isnt it? I would just be receiving the data from the chain which i think might be valuable to me.

Twetch ·

That's the thing folks aren't getting about the power dynamics.

No hash power? No power.

Twetch ·

Yes.

But why do you need to validate the whole chain?

If you find something you don't like, what are you going to do about it? If you aren't a miner, you can't compete.

All you can do is call foul, like refereeing from the couch at home.

Twetch ·

But is it possible to get a subset of TXs though? Either i have a block or i dont have it, meaning either i have all TXs in Block or i dont, isnt it? Data on the other hand can be pruned and i can obtained a subset of data. Or do i miss something?

Twetch ·

Additionally, most block propagation techniques depend on some sort of method to know which transactions one has, and which one doesn't have.

Result: Only transactions that are requested are delivered, saving on bandwidth used.

Twetch ·

Sure. Why not?

Look into the Merkle Tree structure of Bitcoin. Merkle Proofs, too.

Also, look at this block. You can look at just a few transactions within it if you like.
https://whatsonchain.com/block-height/598997

Twetch ·

In fact, much of the hubbub surrounding the BCH/BSV split involved CTOR, which is a type of transaction ordering system that was argued to enable filtering techniques that greatly reduces the cost of determining which transactions to send.

Twetch ·

Of course, CTOR was controversial for a reason... Lots of reasons, really... But that's another topic. The point is that it's quite possible to send only specific transactions as needed.

Twetch ·

@189

As already explained, unless you prove work by finding blocks, you are not doing any validation work. However, there are simple methods for verifying that certain transactions are part of a block without getting the entire chain via merkle proofs.

Twetch ·

You can absolutely do validation work without mining blocks, but the question is, to what end? If it's out of some self-righteous belief that you're "helping the network," you just don't understand Bitcoin's power dynamics.