I do understand that every block is validated in terms of the blocks before it by way of the previous block's hash, all the way back to the genesis block. However, could the protocol be modified such that the blockchain is a sliding window over the most recent N number of blocks? How likely is it that some block from 1 year ago later turns out to be invalid?


How likely is it that some block from 1 year ago later turns out to be invalid?

Very unlikely, but I think that isn't the problem.

The problem is, how does a new user find out the current state (UTXO set or equivalent) without having to trust other parties? Any community has dishonest people preying on it.

You cannot ignore, expire or invalidate unspent UTXO from much earlier blocks. That is someone's savings and the community wont throw their savings away or arbitrarily take away their peers savings. To do so would undermine the credibility of the currency. Any such change would be ignored and not be adopted by the majority.

  • Could everyone trust at least the UTXO represented within the sliding window? If so could it work if the concept of coin expiration be added to solve this (in theory I mean - I realize this would probably be too large a change to be considered even if it might work). – noctonura May 4 at 16:14
  • @nocturna. I see no sound basis for that and expect it would open the way for fraud. We also need our money's value to persist and not evaporate. – RedGrittyBrick May 4 at 16:19
  • How would it open the door to fraud? Whether dormant utxo evaporates or not is a value judgement and imho is better than persisting illegal and disgusting content on my computer by way of the blockchain. But anyway I’m trying to understand whether such a scheme would work assuming that one doesn’t have a problem with old utxo expiring. – noctonura May 4 at 17:09
  • For future readers, a similar scheme is discussed here: bitcoincashresearch.org/t/…. Looks like the objections are value-based as opposed to technical/cryptological. – noctonura May 4 at 18:10

If your objection is specifically to the requirement to store old blocks (as you hinted in a comment), then you might consider pruning - see How can I run bitcoind in pruning mode?.

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.