In order to move bitcoins to RSK network, an independently executable smart contract known as Bridge Contract is used. A user sends bitcoin to multi-sig address. The private keys of the multi-sig address (better known as Bitcoin PowPeg Vault on RSK) are stored in special-purpose microcontrollers (inside PowHSM device) which virtually makes it impossible for any party to know them. On top of that, PowHSM device is included with SPV node. So when user sends fund to mutli-sig address, bridge contract builds the RSK transaction with equivalent sBTC, then sends the unsigned transaction to PowHSM devices. Next, the SPV node of the PowHSM independently verifies whether enough confirmation has taken place, if yes then independently signs the transaction using private key, sends the signatures to Bridge Contract which accumulates all signatures from different PowHSMs and create the final signed transaction, broadcast it and user gets the equivalent sBTC on his RSK address. Withdrawing the funds (known as peg-out) works the same way in opposite manner.
Thanks for the great info. So the PowPeg protocol is using some sort of hardware to enable a trustless (as in not trusting a human) bridge. Thanks for this update. The hardware device referred as PowHSM is run in conjunction with a special type of Full node.
The issue mostly pointed out about this is the finality time needed for the Peg-in and Peg-outs. What are your thoughts on this @webtricks? For example, If a trader moves funds to the RSK sidechain, he needs to wait 200 blocks to confirm it on the sidechain. Though, just like the wrapped BTCs, if a platform of trading develops on the other side, traders will find it easy enough to buy, sell and use BTC on the sidechain. Irrespective of when they have been ported.