Is there a limit to chain of hashes?

As I am going through course and learning these concept, and being a software engineer, I keep having one recuring question. That question is related to linked hashes and proof of work.
It seems that at one point the linked hashes and blockchains will be so long that it will exceed the MTU (maximum transmision unit) of a transmission. Is that possible and if yes, how are they going to be spliced together into one continous chain link? I am talking like decades from now.

Thank you.

1 Like

Hi @BlackHoleSurfer
I started my studies at the academy only recently… so somebody please correct me if I’m wrong or misunderstood the question.
From what I understand there are 2 things that would be transmitted between nodes of any kind:

  • Signed transactions that are being broadcasted to form part of the mempool but have not yet been mined into a block (i.e. unconfirmed transactions)
  • Blocks that have been mined and are distributed over the network as the latest addition to the blockchain that each full node is storing locally

I would have to research what the exact upper limit for transaction size is but it can never exceed the size of a block.
Blocks on the Bitcoin blockchain do have a maximum size of 1 megabyte, however, which has been discussed controversially in the past and even led to hard forks like Bcash.

So what about the hashes that are building on all the hashes that have come before?
A hash function takes input of variable length and gives a unique string of fixed length as output. (cf. my recent assignments on hashfunctions and hashing)
Thus, regardless of how many blocks and transactions have been hashed previously the most recent hash isn’t any longer than the first hash that went into the blockchain in 2009.

As no transmission between nodes will exceed the block size limit it is only the locally stored copy of the blockchain (in the case of full nodes) that keeps on growing one block at a time.

Hope this helps and wasn’t totally beside the point of your question!

1 Like

Remember that next block should have the hash + transactions of the last block, that creates the chain of hashes. If this reply to your doubt…i’m not entirely sure what you mean with limit of chain hashes, in terms of chain, is limited by the amount of data (transactions) that can be filled into a block, but the next block can contain more transactions, this one should be signed with the last block hash.

Hope you find this useful.
If you have any more questions, please let us know so we can help you! :slight_smile:

Carlos Z.

So, your replies are very close to answering my question. If the last hash + transation is all that is required then couldn’t someone fake the “last hash”? I know it works, but I am trying to understand that bit in extreme detail. if all the nodes around the world have a copy of the same database and that hast + transaction is added then the database keeps appending them. Now if the new transaction is added to the database and that database keeps what ever it has appended, how does that get removed from the database as invalid? I am starting to realize the answer as I am typing this btw :slight_smile: and I think that it is “not” added to the database until consensus is reached and it is permanently added to the database for ever. So, 100 years from now, where will that size be if bitcoin adoption takes of and the world is using it. Would thqt database be full of transactions and back tracking it would be very time consuming?

Daniel

The hash of a block can not be fake it, the only way to produce an exact hash of a block (hash+tx) is that all data of the block (tx) is exactly the same, if you change 1 tx, that will generate a new hash for the block, so, in terms of faking a block hash is nearly impossible.

I do not understand what thqt means, but in term of time consuming when the blockchain got like 5 millions of blocks (actual blockchain is around 650000 of blocks), I think this is not going to be an issue at all, looking back into the blockchain, first of all, the actual blockchain is around 300gb, thats not too much for more than 10 years of data. Secondly, technology always improve faster in terms of hardware, meaning that next PCs will have more RAM, CPU (cores + instructions), Storage (SSD is faster than HDD for example)…My point is, looking into the blockchain some data really old, will never be time consuming enough for a high-end PC.

So I think bitcoin blockchain will never be an issue in terms of how much could the blockchain be limited in size, or what if it’s so long that is hard/slow to read…

If you have any more questions, please let us know so we can help you! :slight_smile:

Carlos Z.