Yeah, namecoin was the like the prototype for future sidechains, Satoshi Nakamoto helped conceptualize merge mining when namecoin was originally created, back then it was called BitDNS. It didn't attempt to do a two way peg with bitcoin though, so it's not like modern sidechains in that respect.
In liquid and rootstock there is a group called a federation who runs a multisig bitcoin address. To put money on the sidechain, you're supposed to send money to that multisig address and specify what address on the sidechain belongs to you. The sidechain then detects that you put X bitcoins into the multisig and that same amount shows up in your sidechain address. When you are done using the sidechain you are supposed to burn however many sidechain coins you have at that point and tell the federation what bitcoin address to send the corresponding amount of bitcoins to. Then you trust them to do that, and the fact that it's a multisig is supposed to help reassure you. As long as you trust a sufficient number of the people in the multisig, the federation cannot steal your money without corrupting the people you trust.
Bip300 itself does not have anything obvious in common with any of that, it just creates a new timelock. A bip300 timelock is similar to
OP_CHECKSEQUENCEVERIFY, which is the timelock where you can only spend your coins after waiting X blocks. Bip300's new timelock is different because it lets miners increase the value of X through a 51% vote. That way, if two people try to withdraw the same coins from a sidechain whose deposit address uses this timelock, miners have time to decide which one should "win," and their ability to increase the value of X lets them pause one withdrawal attempt, if necessary, to let the other one go through. But since it takes 51% of miners to lengthen the timelock, 51% of miners have to agree on which withdrawal attempt should "win."
It's a pretty clever way for sidechain makers to let bitcoin miners process sidechain withdrawals. One of the things I like about it is that it's a very simple primitive: it just gives us a new type of timelock. All the complicated logic about miner incentives and sidechain game theory is built on top of just a simple little timelock. I think that's cool.
Thanks this is a good explanation. What else could that timecode marker enable? Can it be used in non-side chain applications in any way?
I'm not sure. Under what circumstances would you want to have a timelock that miners can vote to lengthen? Maybe it could be useful in a vault scenario, where you have your coins in cold storage, but if a thief gets ahold of your private keys, you get time to notice the withdrawal attempt and petition miners to let you withdraw your coins instead (and pause the thief's withdrawal attempt).
Bip300's new timelock is different because it lets miners increase the value of X through a 51% vote
Must 51% of miners be able to co-ordinate in order for BIP300 to be safe? Because one of the beauties of bitcoin is miners dont have to coordinate in order for it to be safe. And by the time miners have coordinates to increaes the timevalue thing, will it be too late?
They have three months to figure out which one to support. When each miner mines a bitcoin block they get to increment or decrement the timelock on a withdrawal attempt. So they don't have to talk to one another, just decide individually what they want to happen, and then the number will go up or down based on the action that each miner performs. If, without coordination, precisely 50% of miners + 1 increment it every time they mine a block, it will very gradually climb toward the height when the withdrawal goes through. If not, it will gradually recede back to it's initial value, allowing the rightful owner to get ahead.
I'm also simplifying a bit, you can read https://bips.xyz/300 for the full details.
I had heard of Liquid, but I did not realise Namecoin was available as a sidechain. What are the differences in the peg process vs bip300?
What is the incentive for a side chain to stay on Bitcoin longterm?