Blockchain consolidation proces

The size of the blockchain is constantly growing, currently on my computer the Cardano blockchain takes up 7.3 G.

One of Cardano’s main USP’s is its better resource footprint. Whereas this is clearly visible in the computational power required to secure transactions. The cumulative storage requirements are no better than the competition.

My proposal is to consolidate the blockchain by moving the oldest unspent outputs to the tip of the chain thereby no longer requiring the total blockchain to validate all possible transactions.

What is required:

As part of each block formation process the node should be required to include the oldest unspent output and create a transaction that basically sends the ada to itself (recreate the output)

Over time this will cause all unspent outputs to be only at the end of the blockchain.

The oldest block required could be encoded in each new block so a new client can independently verify how much of the blockchain it needs to sync to have the full history.

Optionally to increase efficiency even further it could be incentivized to include more than one old unspent output in new blocks. The incentive should be dependent on the number of blocks the chain is shortened by.

That would change history of chain, thus - move away from being mutable (besides, there is and should NEVER be a way to have an action against a UTxO without the private key authorising the transaction).

The history - by itself - will then not be the same, note that blockchain is not just about UTxO, there could be more in a block than just a UTxO history.

Thank you for reading and responding to my proposal.

I am not proposing the chain history be changed.

Basically my proposal boils down to this, a “Consolidation Transaction” is added to each block.

A consolidation transaction takes the form of : in block 5 there is this UTxO (including all information needed to identify and spend that UTxO including all scripts, signatures etc )

The integrity of the blockchain is not compromised but a node only needs the last reference to validate a spend on that UTxO. And it can safely do so, because the reference itself is validated as part of the protocol.

Basically this causes the tail end of the blockchain to be slowly stripped from UTxO’s so it can be ignored by future clients and nodes.