1

I am currently studying Ethereum all by myself, and am struggling to understand how mining and Proof of work work.

I have read many posts and books about it but still hard to understand how the process goes.

Let's say I am sending 10 Ether to you who are reading this post, using Ethereum Wallet.

enter image description here

I will press 'Send' button there, and I will type your wallet address (hash code) and then put amount.

Then Ethereum Wallet will show me how many of confirmations this transaction is getting like the following picture:

enter image description here

It usually starts with 0 of 12 confirmed, not in the picture but yeah.

So what I want to ask is

  1. Who are giving the confirmation? Miner nodes?

  2. If so, how? How do they know if this transaction is valid?

Miner nodes those were mining will be broadcasted if I make a transaction, and how do they know if the transaction is valid?

What I am understanding so far is each node will compare the ledgers they have, but 'what they have' is the past records, isn't it? How would they know if the transaction, which is not recorded yet, is true or valid?

And when will the transaction be recorded in a block? As soon as the transaction is confirmed by 12 miner nodes?

How is confirming transactions (by miners) related to making new blocks?

Thanks in advance.

2

I think the single best visual that helped me understand the underlying blockchain process, proof of work, validation of transactions, and immutability is this website and its corresponding videos:

https://anders.com/blockchain/

Check it out.

As for some of your other questions:

  • # of confirmations is actually referring to the "depth" of the block where your transaction occurred compared to the latest block. The deeper your transaction is in the blockchain, the harder it is for that transaction to be manipulated/removed. There is a small chance that if your transaction is only 2-3 blocks deep, that another chain which is longer, and does not contain your transaction will appear on the network and that will be treated as the real blockchain. Usually whenever you are doing a transaction, especially as a payment or a deposit to an exchange, they wait for a bunch of confirmations to make sure nothing funny happens.

  • Transactions can be programmatically validated, and this is what all full nodes are doing. They verify:

    • That the transaction is correctly signed with the private key (cryptography)
    • That the transaction is legal (the sender has enough funds, etc...)
    • And if the transaction is interacting with a smart contract, they execute that transaction, and store the final state of the blockchain

Another great resource that can help you get into the depths of these details is this free online e-book: Mastering Ethereum

  • Thanks. But I see my transaction is completed (I mean my 10 Ether will go away from my account) after 12 of 12 confirmations are made, then it means 12 blocks were created and added to the blockchain after I submitted the transaction? Is that what you mean by "the depth of the block"? – Auclown Aug 23 '18 at 6:04
  • Yes. More specifically, 12 new blocks were created on top of your block where the transaction occurred. See if this helps. Maybe this. Honestly just google "ethereum confirmation" – Shawn Tabrizi Aug 23 '18 at 6:12

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.