I have read all kind of the articles and I understand almost all the concept from cryptocurrency. What I still don't understand is, what are the steps from transactions to a valid block. On a post on this SE I found this:
- Collects transactions from the network
- Validates them, and doesn't allow conflicting ones
- Puts them into large bundles called blocks
- Computes cryptographic hashes over and over until if finds one "good enough to count"
- Then submits the block to the network, adding it to the blockchain and earning a reward in return.
Let's take a practical example and please correct me if I make some wrong steps:
- I send 10BTC to Batman.
- Because I have send BTC, a transaction is created in system.
- This transaction is send to all nodes from network (all users)
- After transaction arrives to all users, the transaction is added in a queue where the miners take take their transactions.
- A miner take transaction, process it (proof of work) and creates a block with more transactions.
- After all the transactions are validated by miner, the new block is send in the network for check.
Now, questions:
- How does each user check this blockchain (divide the blockchain and check each transaction if the transaction from the blockchain is the same with the one that he has (because first transactions are send to all the users from p2p network and after that are send in the queue to be process by the miner. This is how user is able to compare the transactions))?