3

I know is related to these:
What is the rationale behind Bitcoin mining?
Why do we need Proof of Work in bitcoin?
But I don't fully understand those answers, and I think usually is much easier to understand the concept if we know the problem it solves.
So, what will happen without mining and proof of work on Bitcoins? in a step by step example.

From what I understand mining is put a time and node limit to the block creation. Because if every node on the chain is allowed to create a new block at any time then we will have a lot of conflicts.
Is that the reason for mining? to limit the block creation?

And why some people say it avoids double spend?

EDIT: when I say mining I actually mean the proof of work, and all the rules (like block interval) about mining, I know mining is for validating blocks, but why we need the proof of work and made in that way (solving a difficult hash) and why we are limiting the blocks to 10min. What will happen if we allow blocks to be added every second with much easier hashes to solve for example? what will be the problem with this?

1

Suppose Alice has one bitcoin. She can form a transaction to send that bitcoin to Bob. And she can also form a transaction to send that bitcoin to Charlie. Somehow, we all have to eventually agree that one of those transactions is valid and the other is not. Why?

Suppose Alice can't possibly convince Bob that she paid him that bitcoin because Bob always worries that the transaction sending the bitcoin to Charlie will be considered valid. That would make bitcoin entirely useless as nobody could ever act on a payment. For example, suppose Alice is paying for a book. When would Bob send her the book?

Suppose Alice can possibly convince Bob that she paid him that bitcoin. But what would stop her from also convincing Charlie? The situation is symmetric. So what if she buys a book from Bob for one bitcoin but also a book from Charlie for one bitcoin but pays with the very same bitcoin? Are there now two bitcoins where there was one before? Do some people think Bob has the bitcoin and some think Charlie does? How would that work?

We need some way to know with a high degree of confidence that every honest actor will eventually agree that one of those transactions is valid and one of them is not. Once that happens, the person who received the transaction we all agree on can send Alice the book and we will all know that they now have the bitcoin. This ensures payment finality at some point and continued agreement of coin ownership.

Mining is how bitcoin does this.

  • Hi David, thanks for the reply but this does explain nothing, you only say: "we need mining", but you are not explaining what will happen without mining and how exactly is mining solving that. What I can guess is that mining is there to make a limit on the "block" we can add, without mining all the nodes could validate the blocks and add them instantly, will be diificult to keep in sync all the chain across the network, with mining only one node can add a block a time (and every 10min). So is mining only to "slow" down and keep control of the new blocks added to the chain? – Enrique Jun 21 '18 at 14:46
  • @Enrique I wouldn't say only, but yes, that's the general idea. Mining ensures eventual agreement on which blocks will remain part of the chain. Your question was what would happen without mining, and it's that we would have no way to figure out which of two conflicting transactions everyone else would think is valid. – David Schwartz Jun 21 '18 at 16:52
  • I think my question was a bit confusing, I was referring to the way mining works (proof of work, block interval etc). I've edited it just in case – Enrique Jun 21 '18 at 20:59
  • Isn't it obvious? If Alice creates two conflicting transactions, it's essential that we eventually are able to agree on one of them. If it's easy to mine two long chains, one with each of the two conflicting transactions, how do we agree on one of them? – David Schwartz Jun 21 '18 at 21:12
  • So the important thing here is to forbid someway a lot of users can add a new block (only the ones who are able to solve a very difficult problem can, and this is normally one miner at a time?) and to "delay" the adding of new blocks to 10min? (and why 10min and not 5 for example?) – Enrique Jun 21 '18 at 21:24
0

Before I begin, let me say this is a rather reductionist answer:

Mining is critical for cryptocurrencies like bitcoin and litecoin for several reasons.

  1. Part of the beauty of crypto is the anonymous nature of the transactions. When a block is mined all of the transactions in the memory pool are mined into that block, storing them forever on the blockchain ledger.

  2. Mining is part of the Proof of Work that these cryptocurrencies depend on for consensus. When a new block is mined, many things change that must be agreed upon by all the nodes on the network, (block height, merkle root hash, chain-work etc.) One of the inherent issues of cryptocurrencies is the aforementioned double spend problem, which can be solved a few ways, the most popular being the use of a Proof of Work algorithm. For more information on exactly how Proof of Work solves the double spend problem please visit the bitcoin wiki @ https://en.bitcoin.it/wiki/Main_Page

  3. Mining produces a block reward in the form of a subsidy. This creates incentive for people to join the network and support it by taking place in mining (which again helps keep the ledger of the blockchain and thus establish consensus across the network) in hopes of successfully mining a block (and thus all outstanding transactions into the block) to receive the mining reward.

So in conclusion, without mining, transactions couldn't be logged in the ledger, and consensus couldn't be established.. not only that, but the incentive to help maintain the network would be gone.

  • This does not answer the "why" but more the "how" mining works or what it does.What happen if we don't have a difficult hash to solve? and we don't have a block interavl? What I'm looking for is an example step by step (only descriptive) of the problems we will have without mining. How I've said I think one problem will be all the "miners" will validate blocks at every second, and then the chain will have a lot of different blocks, and try to decide which one will be the correct to add. If we add complexity then we reduce the number of blocks to be proposed as the next one. – Enrique Jun 16 '18 at 8:31
  • I am not sure what you're looking for, I thought I answered the problems that would arise without mining. No consensus, no incentive, really there wouldn't be blocks at all without mining.. Or transactions for that matter. No mining means no subsidy, which means no coins to send/receive.. Unless we're talking about Proof of Stake or the even more rare Proof of Burn. – apt-getschwifty Jun 16 '18 at 15:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.