Homework on Blockchain and Mining Visually - Questions

  1. It makes sure that the data can not be altered without being noticed.
  2. you have a nonce and the data and the hash of the previous block.

1 To secure the network. So any change in an old block need to update all the next ones.
2 current block transactions, nonce, previous block hash and hash of all that info.

  1. It is important that the blocks are cryptographically linked together so that you cannot change a previous transaction without invalidating all blocks after it.

  2. Of what we’ve just learned about the block structure in bitcoin: the list of current transactions that the miner has picked up, the hash of the previous block, and a nonce that when all hashed together, creates a hash below the current mining target. However, the block structure in bitcoin has many different fields, of which can be found here https://en.bitcoin.it/wiki/Block for the block in general and here for everything in the block header https://en.bitcoin.it/wiki/Block_hashing_algorithm.

  1. Ensures the next block in the chain can be trusted. Keeps the chain secure.
Field Description Size
Magic no value always 0xD9B4BEF9 4 bytes
Blocksize number of bytes following up to end of block 4 bytes
Blockheader consists of 6 items 80 bytes
Transaction counter positive integer VI = VarInt 1 - 9 bytes
transactions the (non empty) list of transactions -many transactions

(SOURCE: https://en.bitcoin.it/wiki/Block)

  1. To ensure integrity and that blocks will not be altered after it’s created and verified as this would break the chain going forward.

  2. Previous hash + current transactions + nonce

1 in this way you can not change records after they are in block.
2 TX hash
Inputs
Outputs

  1. As it makes it nearly impossible to change previous transactions as to do so would mean re-mining all subsequent blocks which is time and cost prohibitive.

  2. The hash of the previous block, the transactions in the current block and the target nonce.

  1. to ensure that it’s impossible to rewrite one single block by ensuring that changing it would require to recalculate all of the blocks that came after that block
  2. each block contains the transaction data, mining difficulty, and the previous block’s hash
  1. It is important that blocks are cryptographically linked together because any change to the data of a block changes all the subsequent blocks.

  2. The block structure has a block header that includes the previous hash, along with a timestamp, the transaction data, the difficulty, and the nonce.

  1. to prevent double spending, and if they all linked together it means they contains same information.
  2. Transactions, how many transactions, blocksize, nonce, hash of previous block

Why is it important that the blocks are cryptographically linked together?
It ensures the integrity of the blockchain and makes cheating economically and physically infeasible.
What does the block structure look like in bitcoin?
Each block contains the hash of the previous block, a list of transactions, the nonce guessed by the miner.

1-Why is it important that the blocks are cryptographically linked?

It gives security since containing the information of the current block and the previous block any modification alters the information and therefore cannot be added to the network.

2-What does the block structure look like in Bitcoin?

It contains the Nonce, the transaction list, the hash of the previous block and the hash of the current block.

  1. So that a change in previous blocks become harder and harder as time passes by, as a change in a block modifies it’s hash which is used on the next block and so on. This means that if someone wants to modify a past block, they need to re-mine all the blocks that came after that.
  2. Roughly a block has it’s height, a nonce, data (transactions), a hash to the previous block, and the hash of all the info in this block

1 - Why is it important that the blocks are cryptographically linked together?
If the blocks are cryptographically linked together it makes it impossible to change a previous block. The hash of a block is based on the hash of the previous block so any change will affect all the following blocks, messing up the hashes and rejecting those blocks. a new puzzle would be created with a high hash rate, very difficult to solve and to keep up with the new blocks then being created meanwhile.

2 - What does the block structure look like in bitcoin?
A block in bitcoin contains:
Number of block
Nonce
List of transactions
Hash of the block
Hash of previous block

  1. To make the blockchain immutable. Changes to one block, implies to changes to every folowing block.
  2. A block contains: the hash of the previous block, the transactions (merkle root hash), a nonce, difficulty target, time stamp, block number

[quote=“ivan, post:1, topic:8433”]

  • Why is it important that the blocks are cryptographically linked together?
    That way you cannot change a transaction in a block as the hash will change which is used in the next block and so on.
  • What does the block structure look like in bitcoin?
  • hash previous block, transactions, nonce
  1. It is important that the blocks are cryptographically linked together as this makes the blockchain more secure, and results in immutability and finality. Due to these cryptographic links, any change to a previous block, no matter how small, would invalidate all subsequent blocks, making it practically impossible to get the change confirmed by the network. The fact that each block is cryptographically linked to its predecessor means that the further back data is stored in the blockchain, the more secure and tamper-proof it becomes.

  2. Each block contains:
    - transaction data (hashed and organised as a Merkle tree);
    - the hash value of the previous block (creating the cryptographic link);
    - a difficulty target;
    - a nonce (a random number generated by the miner); and
    - the block’s hash value.
    During mining, the nonce is repeatedly generated until the proof-of-work algorithm returns a hash value lower than the difficulty target; this hash value then becomes the definitive hash value for that mined block.

1 immutability can be guaranteed

2 a block = data, previous block hash, nounce. the new block is based on these components

To secure the network. Prevent double spending. Immutability.

Each block contains the transaction data, hash of the block, hash of previous block and nonce.

  1. this secure the blockchain. if you change any value in a prev block you must re-mine the following blocks in the blockchain. therefore blocks are immutable
  2. a miner create a hash value form the prev hash, transaction list and nonce. the hash must be less or equal the target. a miner randomly search a nonce so the hash fits