Free the children, Bitcoin!

Free the children, Bitcoin!

On February 4, 2020, with the coinbase tag reading: “taal.com on behalf of Satoshi Nakamoto” the Genesis update to Bitcoin SV was activated by this transaction at block height 620,539. With it, the overwhelming majority of protocol-level Bitcoin rules were restored and set wide open. Honest nodes and aggressive hashers rejoiced for the elimination of the block size limit, restoration of nLockTime & nSequence rules, removal of P2SH and tons of small improvements to the efficiency of the code that runs the network. However, there was one nagging, little change that was not unlocked with the debut of Genesis: the child limit to unconfirmed parent transactions!

Often called the “ancestor limit” or the “speed limit,” this is one of the final aberrations inherited from the economic illiteracy of BTC Core. This restriction was predicated on the assumption that the block size limit is/was permanent, and that transactions should be ordered according to the value of their fee in order to be allowed across the heavily curtailed BTC network. One consequence of this arbitrary modification to the bitcoin protocol is that only 25 transactions could be re-spent before a block confirmation of the parent transaction, which is typically ten minutes. 

This is no big deal for the small blockers who don’t (can’t) make lots of small transactions, but for users of Bitcoin SV, the limit was a major disappointment in lots of use cases! Imagine having a debate on Twetch, uploading a large webpage to Etched.page or making it rain on Peergame, and the worst thing in the world happens: 

Speed limit Bitcoin SV network

Bitcoin SV is billed as the only blockchain that scales, because it has no arbitrary limits! So were we all lied to? Was this an oversight in implementation? Users around the BSV economy lamented.

Dean twitter post

Some more eloquently than others!

Randy Twitter post

Once the speed limit was reached, average users would have to wait for a block to proceed. And sometimes, blocks are not consistently timed, so this could lead to an excited new user tuning out completely due to the network being unable to serve them.

This was certainly losing money for every application that was fighting to keep the attention of BSV users without network friction—leading to a UX disaster for the budding startups built on Bitcoin SV.

Kurt twitter post

Noble half steps

TAAL Distributed Information Technologies Inc. (CSE:TAAL | FWB:9SQ1 | OTC: TAALF) and a couple of other honest nodes were wise to accept higher limits as complaints started to hit social media. So 50-100 unconfirmed children were enabled while some due diligence was carefully managed by the team working on the SV Node software. This extra breathing room was certainly appreciated, but not exactly the earth-shattering change that would allow an explosion of new use cases. But some clever workarounds were developed, and as businesses do, adaptations and user guides for splitting UTXOs were deployed. 

Peergame Twitter post

But, for Bitcoin SV to truly become the real “bitcoin unlimited,” something bigger had to be done. 

The solution

Head of the Bitcoin SV Node Team, Steve Shadders, had mentioned 2020 as the target year for killing the limit; stating a number of times that he intended to make it a priority, but that there was a level of testing that absolutely needed to be completed first. Perhaps for the sake of holiday theatrics, the testing lasted until after the last full business week of the year. 

In true Shadders fashion, without any warning or prelude, a Santa hat appeared on his Twitter profile picture, and a Christmas gift was pledged. On December 24th, Shadders let the world know that we would have something special sitting under the tree—as long as we keep it up in the house for another couple of weeks…

Shadders Twitter post

Details 

Bitcoin SV version 1.0.7 (Dynastic) will be released in “early” January, and it will raise the default ancestor limit to 1000 children to an unconfirmed parent! That’s more than one unconfirmed transaction made per second between average block times, meaning that for human users, the speed limit is practically unreachable.

What about machines? Meme

According to Shadders, “…we see no obvious reason not to remove it completely other than an abundance of caution in an adversarial environment. However, rest assured, after a few months of this 1000 limit being in the wild our intent is to get rid of it altogether.”

And so, as nodes across the network update in January, the ancestor limit should bring about a new era of use cases in the newly liberated Bitcoin SV environment. Shadders closed his announcement saying, “Like the explosion of script experimentation we saw post-Genesis I’m expecting to see a new wave of innovation with long transaction chains.”

Will there be room for more efficiency in the future? Most certainly. In fact, there’s a Chronicle being written about it… But that is for some holiday in the future!

New to Bitcoin? Check out CoinGeek’s Bitcoin for Beginners section, the ultimate resource guide to learn more about Bitcoin—as originally envisioned by Satoshi Nakamoto—and blockchain.

[id^="_form"]
[id^="_form"]
[id$="_submit"]
[id$="_submit"]
[^;]
[^;]
[?&]
[?&]
[^&#]
[^&#]
[(d+)]
[(d+)]
[elem.name]
[elem.name]
[+_a-z0-9-'&=]
[+_a-z0-9-'&=]
[+_a-z0-9-']
[+_a-z0-9-']
[a-z0-9-]
[a-z0-9-]
[a-z]
[a-z]
[el.name]
[el.name]
[id^="_form"]
[id^="_form"]
[id$="_submit"]
[id$="_submit"]
[^;]
[^;]
[?&]
[?&]
[^&#]
[^&#]
[(d+)]
[(d+)]
[elem.name]
[elem.name]
[+_a-z0-9-'&=]
[+_a-z0-9-'&=]
[+_a-z0-9-']
[+_a-z0-9-']
[a-z0-9-]
[a-z0-9-]
[a-z]
[a-z]
[el.name]
[el.name]