Kurs:Wie funktioniert eigentlich Bitcoin/LedgerNew
Rene-Coin Proposal von Oscar
Konsensregeln und Syntax
Blockaufbau:
BlockHash,PrevHash,MerkleRoot,Nonce Tx: //zum Verständnis
Transaktionsaufbau:
INPUT1,INPUT2,…,[(MENGE1,OUTPUT1),(MENGE2,OUTOPUT2),(…)]
- Bildung von Merkle-Roots: SHA256("hashA,hashB")
- Transaktionen werden erst gesigned und dann gehasht
- (ab Block 3)Coinbasetransaktionen haben als Input COINBASE,Nonce. Bsp.: COINBASE,53526262
- Die Nonce wird willkürlich und zufällig gewählt vom Miner, wodurch ein einzugartiger Hash für die Tx generiert wird
- Findung der Nonce: Mit SHA256-Input: PrevHash,MerkleRoot,Nonce
Blockchain
Beispiel Bildung von Block 1
PrevHash: gibt es nicht, da es der Genesis-Block ist
Tx:
Coinbase an 12345678qq, geeignet von 12345678qq via Keybase:
BEGIN KEYBASE SALTPACK SIGNED MESSAGE. kXR7VktZdyH7rvq v5weRa0zkHvcREr QHaaRrBpS7Hus9M lTiXFM9KJhd5F7z meZ0gwMEXCv1vW0 1xRV2B15U2VE0PQ x16hEZDZ94tPFB8 Sm1ifxq9jidE7aY oBNAsTDxnxvTTM4 ReoQAKZdQQnYICR nk9QHFU3sl6sLYp AVKuW2Z70dC5DnX 8XWZsGq1zO6lgI2 RDTTDVw7sAnqafP L6zLd24U3ze. END KEYBASE SALTPACK SIGNED MESSAGE.
Hash der signed Message:
93ac59512e6b5f5874a3c2d88314b53ce8567a429085d9b73d7bead969990322
Nur eine Transaktion=>
Merkle Root:
93ac59512e6b5f5874a3c2d88314b53ce8567a429085d9b73d7bead969990322
Findung der Nonce => 4
BlockHash mit Nullbits: 099efe89873dd86b84ca7d33bcc14127435c4ed325e93b6322c1013a7fed7cc4
Beispiel Block 1
099efe89873dd86b84ca7d33bcc14127435c4ed325e93b6322c1013a7fed7cc4,,93ac59512e6b5f5874a3c2d88314b53ce8567a429085d9b73d7bead969990322,4 Tx: COINBASE,[(10,12345678qq)]
Beispiel Bildung Block 2:
PrevHash: 099efe89873dd86b84ca7d33bcc14127435c4ed325e93b6322c1013a7fed7cc4
Tx:
COINBASE,[(10,12345678qq)] => 93ac59512e6b5f5874a3c2d88314b53ce8567a429085d9b73d7bead969990322
93ac59512e6b5f5874a3c2d88314b53ce8567a429085d9b73d7bead969990322,[(5,lenalui)] => 8389fb4ecc8493573105e5336e8529b5ae2c88423e37055e903a4b7ca2181a60
Merkle Root: 9f479c13d97d528db356b31d069237c6e17a93f0c9b4df09b7e516a8b48cb6d7
099efe89873dd86b84ca7d33bcc14127435c4ed325e93b6322c1013a7fed7cc4,9f479c13d97d528db356b31d069237c6e17a93f0c9b4df09b7e516a8b48cb6d7,12
=> BlockHash: 01d0b91efd6deadb3a5c585afbb29ff8bdce30c59676c95e20c27cf7f7c6e5fc
Beispiel Block 2
01d0b91efd6deadb3a5c585afbb29ff8bdce30c59676c95e20c27cf7f7c6e5fc,099efe89873dd86b84ca7d33bcc14127435c4ed325e93b6322c1013a7fed7cc4,9f479c13d97d528db356b31d069237c6e17a93f0c9b4df09b7e516a8b48cb6d7,12 Tx: COINBASE,[(10,12345678qq)] 93ac59512e6b5f5874a3c2d88314b53ce8567a429085d9b73d7bead969990322,[(5,lenalui)]