Skip to main content

Plasma Withdrawal (BONE)

Preliminary Steps

  1. Connect MetaMask: Make sure your MetaMask wallet is connected to the same admin address used during your grant creation.
  2. Navigate to Dashboard: Once connected, the Shibarium Bridge dashboard should appear.
  3. Access Bridge Interface: From the dashboard, navigate to the Shibarium Bridge page. Alternatively, you can also click on the Bridge icon in the left navigation drawer.

Withdrawal Steps

  1. Select 'Withdraw': Switch to the withdrawal view as described in the PoS section.
  2. Choose Tokens: Select BONE from the token list.
  3. Enter Amount: Specify how much you wish to withdraw, or click 'MAX' to withdraw all.
  4. Confirm Transaction Fee: Acknowledge the transaction fee and the time it may take (up to 7 days).
  5. Sign Transactions: Sign two transactions, similar to the PoS method.
  6. Completion: The withdrawal may take up to 7 days to complete. Once the time frame is completed user again has to submit the burn proof in the Ethereum network (Calling process exit in withdrawal contract). Confirm using Etherscan after that period.
  7. Verify Funds: Once the challenge period is over, check your Ethereum wallet to confirm the tokens have arrived.

Important Note

The 'challenge period' is the time required for the network to confirm the legitimacy of your transaction. It could take a few hours with PoS or up to 7 days with Plasma, depending on the method you choose.

Plasma Bridge Withdrawal: Backend Operations

Plasma - Burn (Withdraw Function)

When you initiate a withdrawal request using the Plasma bridge, the first operation that happens in the backend is the invocation of a function known as withdraw. This function essentially "burns" the tokens you have in the Shibarium L2 layer. "Burning" in this context means these tokens are permanently removed from the circulating supply on the L2, rendering them unusable there. This step acts as a lock-in mechanism to ensure that the same tokens can't be used simultaneously on both L2 and L1. Essentially, it prepares your tokens for their journey from the Shibarium L2 back to the Ethereum L1.

Confirm Withdraw (Checkpoint Submission)

The next phase in the backend is the Confirm Withdraw operation. However, this operation can't be immediately carried out. First, a "checkpoint" needs to be submitted to the main Ethereum chain. A checkpoint is like a snapshot of all transactions that have taken place on the Shibarium L2 since the last snapshot. Once this checkpoint is successfully submitted and confirmed on the Ethereum mainnet, the startExitWithBurntTokens function can be called. This function validates that the tokens have indeed been burnt (or locked) on Shibarium L2. Essentially, it confirms that the tokens are ready to be reissued on the Ethereum L1 and marks them for exit.

Process Exit (Submit Proof of Burn)

The final backend operation in a Plasma-based withdrawal is the Process Exit phase. This involves a function known as processExits. Here, you are required to submit a "proof of burn" — essentially a cryptographic proof demonstrating that the tokens were genuinely burned on Shibarium L2. This is a security measure to prevent fraudulent withdrawals. Once the Ethereum network validates this proof, the same number of tokens are reissued or "minted" on Ethereum L1. These tokens are then transferred back into your wallet, completing the full circle of the withdrawal process.

So, while you interact with a user-friendly frontend interface to initiate the withdrawal, there are these critical backend operations being executed to ensure the secure and accurate transfer of your tokens from Shibarium to Ethereum.