I'm trying to understand how a sidechain would work with Bitcoin using a 2 way peg. From my understanding the Bitcoin 2 way peg works like this:
- A bitcoin is sent to an address that the sidechain can monitor for received funds.
- After say 144 blocks (1 day) is confirmed, the sidechain will release the the virtual bitcoins on the sidechain to their sidechain account.
- When the user wants to convert this virtual btc back to on-chain btc, those coins get sent to another address on the sidechain. Once those are confirmed, the sidechain releases the real bitcoins onto the main chain back to their account.
What I don't understand is:
- Wouldn't the sidechain require having the bitcoin blockchain downloaded along with the sidechain blockchain in order for it to monitor the btc blockchain?
- Since the sidechain has the ability to release the locked BTC, what stops someone from forking the sidechain and then tricking the system to release the locked btc on their own fork?
- It seems that sidechains isn't possible as of right now as it requires a centralized entity to verify the pegs. What are some solutions to solve this centralization?