Search on TFTC

Issue #533: An update on assumeutxo

Jul 24, 2019
Marty's Ƀent

Issue #533: An update on assumeutxo

A few months ago, we introduced you freaks to James O'Beirne's assumeutxo proposal. If merged, users will be able to get a node up and running in considerably less time than it currently takes using snapshots of UTXO states to quickly catch up to the tip of the chain. Cutting the time it takes a user to go from the click of the 'Download' button to receiving and sending bitcoin from many hours to days to less than an hour to a few hours (depending on how far the last snapshot is from the current chain tip). All the while, the whole chainstate will be validating in the background and will fully sync to the tip as a full node normally does. Catching any malicious transactions that occur between the assumeutxo sync and the full sync.

Last week, as the world was fixated on Bitcoin's glow up on Capitol Hill, a PR was merged into Bitcoin Core. The fourth merged PR in a series of code refactorings that James and others have been working on to make assumeutxo possible. The latest PR would allow a single instance of Bitcoin to validate different parts of the chain at the same point in time. The assumeutxo sync will be jumping ahead in the chain, so it will obviously need to reference snapshots at higher block heights as the fully validating sync chugs along through the whole chainstate. An example of a minute detail that must be taken into consideration when attempting to make changes in Bitcoin Core. You can check out the rest of the refactorings that relate to assumeutxo and have already been merged into Core here.

If assumeutxo winds up getting completely merged into Bitcoin Core it could enable some pretty unique use cases. Especially if something like Thaddeus Dryja's utreexo proposal also gets merged. The combination of assumeutxo and utreexo could potentially enable a massive reduction in the time it takes to fully validate. The future is bright.

(Huge shoutout to James for hand-holding me through this explanation.)    

Final thought...

Dreaming of some land right now. I don't want a backyard. I want a meadow.


Current Block Height

Current Mempool Size

Current Difficulty