<oembed><type>rich</type><version>1.0</version><author_name>Tomas [ARCHIVE] (npub1rs…9evk4)</author_name><author_url>https://nostr.ae/npub1rsp4w56r24w3zv4xy8zfgesep45qmf9rq6aghxfw3wr7yemqnnwsf9evk4</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2017-04-06&#xA;📝 Original message:I have been working on a bitcoin implementation that uses a different&#xA;approach to indexing for verifying the order of transactions. Instead of&#xA;using an index of unspent outputs, double spends are verified by using a&#xA;spend-tree where spends are scanned against spent outputs instead of&#xA;unspent outputs.&#xA;&#xA;This allows for much better concurrency, as not only blocks, but also&#xA;individual inputs can be verified fully in parallel.&#xA;&#xA;I explain the approach at https://bitcrust.org, source code is available&#xA;at https://github.com/tomasvdw/bitcrust&#xA;&#xA;I am sharing this not only to ask for your feedback, but also to call&#xA;for a clear separation of protocol and implementations: As this&#xA;solution, reversing the costs of outputs and inputs, seems to have&#xA;excellent performance characteristics (as shown in the test results),&#xA;updates to the protocol addressing the UTXO growth, might not be worth&#xA;considering *protocol improvements* and it might be best to address&#xA;these concerns as implementation details.&#xA;&#xA;Kind regards,&#xA;Tomas van der Wansem&#xA;tomas at bitcrust.org&#xA;Bitcrust</html></oembed>