If your goal is to reduce blockchain size by delete past blocks, then pruning mode already achieve it.
Why any transaction dont include the final balance of each address?
Because it would increase transaction size
That would be much better to get the balance of any address, just need to find last move in blockchain and dont need to recalculate entire blockchain.
That's not how Bitcoin client works. There's a database called
chainstate which contain all UTXO, so all clients need to do are update the balance by check on
chainstateAlso it will contribute for anonimity because if we generate many. many, many transactions and blocks, no enterprise in the world can get registry of all blocks, like Craig Wright said, the best protection for anonimity is to much data generated like gigabyte blocks.
doubtfully, cost of storage drive is very cheap these days and enterprise can burn their money without second thought.
That would give you speed of light to seach one address balance in the database, because you only need to search and test integrity of a "couple" of blocks back and you wouldnt need to recalculate all the moves in all database everytime!
chainstate is even faster, it's DB of UTXO which already verified. And obviously it uses indexing so it's pretty fast.
Your idea looks fast, but fail if you need to verify address which last used few months or years ago.