9 Questions about bitcoin
- how send money to B from A online ?
A digist signature with A’s private/secrect key(SK).
B can valide the sign with A’s Public key (PK)
- compute hash of received content as H1
- decode signature/fingeprint with A’s PK as H2
- H1 == H2 ? true : false; - how to proof that A no sign this coin/money at history (double spending) without trusted third-party ?
all pay history is public to everyone(A , B , no trusted third-party).
check every pay/tx history
A spend coin/utxo as txi in history tx ? return A(utxo)=>B valid false : compare next his tx.
after check all his,no return,then return A(utxo)=>B valid true; - how to order his tx ?
- split txs, package tx set to block - how to order tx in a block?
- order by timestamp - how to check tx is no modified in a block
- merkel tree
- link block with pre block like a chain - how to select out pre block?
- consensus 1,the longest/highest chain’s last block as pre block of will add block - who add block is valid?
- consensus 2,who first find the answer of a question. - what is the question ?
- hash all tx that will be packaged ,out merkel root.
- find a nonce that combine merkel root and pre block hash(from consensus 1) and other argument , hash then , out H
- H < curent diffcult nonce?nonce is answer:continue. - who has more opportunity to add valid block?
- compute hash faster / more cpu power
- lucky