Actually you do have to keep the old chain, Checkpoint stop any reorgs before them, but they don't have the transaction data.
If you figure out a way to add a checkpoint and have it truly be the new genesis block while keeping everyone correct amount in their wallets.
That is really not difficult on a transparent chain you know !
The miner that makes the block that is going to be the check point, simply includes also a public key of which he only has the secret key, makes a new "Genesis block" and signs it cryptographically with his secret key. That new block is a big genesis block, with "premine UTXO" as a very big coinbase, such that the "New coin" gives coinbase coins to all previously existing UTXO. When he has both the normal block that is going to be the checkpoint (a small, normal block that lets him compete normally with other miners, but with his public key inside) and somewhat later, he publishes his new genesis block (signed with his secret key), all nodes and miners can CHECK that he didn't cheat in making this genesis block (in other words, that all the UTXO are correctly attributed to all UTXO in the previous chain up to that point). He will get a bigger reward in that genesis block. The same mechanism that secures the check point, then validates the new genesis block.
From that point onward, you can forget the old chain. Well, you can keep it a while if you want to check the validity of the genesis block for yourself. But if the check point was hard, that's in any case equivalent to accepting the chain up to that point: one can just as well accept the new genesis block.
Hup, 150 GB liberated.
I'm interested in this topic.
How does this differ from simply launching a new coin with a monetary base that is pre-loaded with a previous currency's balance sheet?
Also, pruning works since 0.12, how is this different? I suppose that pruned nodes are not fully trusted.
Well, it is of course pruning, but with a "clean new genesis block", that can be taken as a new chain start, or as a "summary" of the previous chain.
The pruning in bitcoin is about the internal data structure of the running node, not about the distributed block chain. I don't think the bitcoin block chain has "big pruning blocks". You can simply chose to not download the whole of the chain if you want to, but the actual block chain is still the big and growing one.
With a new genesis block, you can simply throw away the old block chain as if it were a new coin, it is part of the block chain protocol by itself.
Note that it can be designed such that the blocks that followed upon the "check point block" are also the first valid blocks that follow upon the genesis block (same "previous hash" : the genesis block is defined that way), so that in fact you can choose to continue using the old chain, or you can choose starting from the new genesis block.
You could program such an official "check point" every year, or every week. If you do it every week, you have a kind of "account updates", and the actual chain never needs to be longer than a week. Although, for your comfort, you can hold a few weeks' worth of block chain.
The nice thing about the *synchronized* version of pruning (every week, at a specific block) is that everybody is using the same "account basis".
Whether it has to be every week or every year depends on the ratio between the number of transactions per week, and the number of accounts "live".
Hell, you could even put a lower limit on account contents, and clean out "dust". It would mean that accounts containing less than a certain amount (say, less than the minimum fee) are NOT taken in the new genesis block, eliminating dust and the burden that goes with it.
This is already a much more scalable system than the full block chain (it puts a somewhat bigger burden on network capacity, although there is no hurry in getting the genesis block ; you can jump a few genesis blocks if you want to).
In fact, it is a transition from a "only transactions" system to an "account" system.