I will start with a scenario:

Alice, Bob, Adam, Eve, Hansel, Gretel, Rupanzel are the ethereum nodes. Alice has 100 Ether. She sends 100 Ether to Bob. Now this transaction is dispatched in the ethereum network. Everyone starts running the hashing algorithm. The competirion is to generate a hash that has 3 zeros in the start. Of all the successful nodes doing this, the network will select one successful node (based on some probability, which I am not sure what). Now this node is for example Hansel. Hansel receives the reward for mining the block. Before mining, Hansel checks if Alice has a 100 ether balance or not. If yes, Hansel verifies the transaction, and updates his blockchain, decreases Alice's balance by 100 Ether in his blockchain ledger and sends a broadcast message to every other node on the network. Every other node, upon receiving the broadcast message from Hansel, re-verifies the transaction, (checking if Alice had 100 ether). After all the nodes reach to a consensus (proof of concept) the transaction is verified and everyone has the new updated blockchain with Alice's transaction being the latest block. Each new node joining the network, will verify all these transactions and keeps on updating their blockchain to have a latest version of the blockchain.

Fraud Scenario: Alice sends 100 Ether to Bob and immediately sends another 100 Ether Gretel. For the first transaction, say Hansel verified it and updated his chain and the reduced the ledger of Alice by 100 Ether and for second transaction, Adam verifies it(assuming he has not received Hansels broadcast) reduces Alice's balance and sends another broadcast for this second transaction. Now all the nodes that had previously received Hansel's broadcast will have already updated Alice's new balance which is 0 Ether, so now this new update from Adam can't get a consensus and hence the transaction is dropped.

In this fraud scenario, the resources of minera are used to check the transaction. But since the transaction never took place, will there be any reward for the miners?

Is my idea of blockchain correct?

1 Answer 1


What you are trying to describe is the double spend scenario, which is solved in a different way for bitcoin as it is for ethereum.

A very simplistic explaination is that with ethereum there is a general register with all addresses that contain ether. Against each address is a nonce.

When the address performs a transaction, the nonce is incremented when the transaction is included in a block. ie the register is updated. Any subsequent transation will not be allowed not because of the amount of balance on the address but because it will have the wrong nonce, therefore it is rejected.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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