Are there any examples of sidechains which target a block time much longer than bitcoin? Could a sidechain be made "slow enough" such that the size of a proof (SPV proof?) for it could actually fit into and be verified by a mainchain bitcoin transaction with the currently-in-effect mainchain protocol rules?

I'm interested in learning more about how a sidechain with a targeted time between blocks of, say, 1 week, might work and/or if such a chain, if it existed, could be useful.

I'm specifically interested in proof-of-work sidechains that do not rely on any sort of federation (as such, Liquid and RSK would not meet this criteria at the moment, but I'm unaware of any other current examples of bitcoin sidechains), and I'm most interested in "slow sidechains," if any exist.


Are there any "slow" sidechains?

Softchains fit this definition. Softchains are a type of sidechain that are verified by all mainchain users in a slow but extremely resource-efficient way, by only validating the blocks for which forks occur. It's slow, because you can't assume these forks will occur right away. People who want to actively use the softchain perform full validation, which means consensus will be fast for them.

What are the tradeoffs?

These softchains are not fully decoupled from the mainchain. Creating a new softchain requires a soft fork, and softchain consensus could negatively affect mainchain consensus under some scenarios (software bugs, one-year reorgs). Furthermore, mainchain validation cost goes up by roughly 100MB per softchain per year (which could be compensated for with a mainchain block size decrease).

The above is just a high-level overview.

For a relatively easy-to-follow explanation, I recommend listening to this podcast: https://youtu.be/4c7cwTts3fo?t=1m45s

And the full details are in this write-up: https://gist.github.com/RubenSomsen/7ecf7f13dc2496aa7eed8815a02f13d1

  • Ruben, thanks for your reply here. I need to better understand your construct but I was really hoping that there was a method which is available on bitcoin today (without needing any sort of soft fork, etc). – philbw4 Mar 11 at 22:31
  • @philbw4 you're welcome, and as for whether such a method is available today without any forks, the answer is simply "no" :) – Ruben Somsen Mar 12 at 23:20
  • ok, thanks @ruben-somsen. I've accepted your answer for now on the off-chance that someone else is wondering the same sort of thing. Perhaps/hopefully in a post-taproot world we will find ourselves revisiting this :-). – philbw4 Mar 14 at 3:40

While the idea is interesting, storing the size of the proofin the block itself, it would make the blocks larger, perhaps redundant, but again if we think from the perspective of "light nodes" and other clients, not full nodes this could be beneficial, but in general: Bigger blocks lead to more time for nodes -> less nodes -> more centralization But if you have a particular use case in mind for a 1 week block rate, or bigger blocks, it would be interesting to see how it works and I would love to contribute to your project.

  • Hi, thanks for your answer. However, I'm not suggesting anything about making blocks bigger. In fact, for a "slow" sidechain, and depending on the use case, I think the blocks of the side chain may even end up extremely small. Naturally this would render such a sidechain useless as a "money" for any on-side-chain transactions, but nevertheless such a side chain could still support some off chain (lightning-like) protocols. There may, of course, be other use-cases too. – philbw4 Jan 20 '20 at 4:23
  • Ahhh, My bad, anyways your comment made me think ( with the brain of Google ) and I came across an article by the Vitalik Buterin in 2015, check it out, On Slow and Fast Block Times It is such an interesting discussion, I'm a little new to the blockchain space and everyday I get to learn something that makes me wonder. – yozaam Jan 21 '20 at 16:58

We could introduce slow, secure side chains without sacrificing the decentralisation, and without increasing the block size on Bitcoin using Time Locks and Verifiable Delay Functions that can control the block time. In fact, Time Locks are used in some of the Bitcoin Payment Channel implementations. Please find a nice explanation of Time Locks from Bitcoin Wiki.

  • Thanks for your answer. Timelocks are definitely a component of what would be necessary to pull this off, but I was hoping for a bit more of a concrete example for creating a slow side chain (preferably without a soft fork). – philbw4 Mar 16 at 21:17

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.