12
1
We can generate and verify transactions without blockchain - why do we need it? I can generate a transaction, broadcast it to the network, it can be verified multiple times etc.
12
1
We can generate and verify transactions without blockchain - why do we need it? I can generate a transaction, broadcast it to the network, it can be verified multiple times etc.
14
Let's look at what happens without the blockchain:
You create a transaction and it is relayed through the network. Every node that receives it updates their ledger to reflect your transaction. So far, so easy.
Now, while you're using the network playing fair, there is Mallory, another user, that likes to break things. Instead of just sending his transaction, he sends two conflicting versions of the same transaction (a "doublespend") at the same time to half of his peers each. These peers do the same as before: They update their ledger and pass the transaction along. However, half the network receives one version, and considers the second invalid and vice versa.
Now, the network is split: Their ledgers are no longer synchronized. Mallory can now send a transaction building on one of the two previous and only half the network will accept it as valid.
This "doublespending problem" is what the blockchain solves for us: The mining process elects a node to author a block containing his version of the past few minutes. As there is only one author elected every ~10 minutes, these blocks can be passed through the network easily before the next is discovered.
As the author can only have accepted one of the two conflicting versions into his recount, all the other nodes know which transaction to accept and which one to drop.
Thus, the blockchain allows us to synchronize the state of the network under adversarial conditions.
I.e.:
that does make sense – nicks – 2016-10-30T23:03:33.747
3Or, to put it more simply, to know which of two or more valid, but conflicting, transactions to trust. – David Schwartz – 2016-10-30T23:56:13.257
4IMO, probably good to include that it enables independent nodes to re-construct the latest state of the network from genesis in a trustless manner. – renlord – 2016-10-31T00:01:00.917
The blockchain in Bitcoin allows nodes to make sure they know about everything that has happened. Without it, it would be too easy to make a node think something hasn't happened when it has. – user253751 – 2016-10-31T02:14:03.097