User Flows
There are two main user flows for interacting with hashi: deposits and
withdrawals.
Deposit flow
To use BTC on Sui (for example, as collateral for a loan), you must
deposit your BTC to a Hashi MPC-controlled Bitcoin address.
BTC deposit address
Every Sui address has its own unique Hashi Bitcoin deposit address. See Bitcoin Address Scheme for the full derivation details.
Deposit
After your deposit address is determined, you can initiate a deposit to Hashi.
- Broadcast a Bitcoin transaction depositing
BTCinto your unique deposit address. - Notify Hashi of the deposit by submitting a transaction to Sui that includes the deposit transaction ID.
- Hashi nodes query Bitcoin and watch for confirmation of the deposit transaction.
- Hashi nodes communicate, waiting until a quorum has confirmed the deposit (after X block confirmations).
- Hashi confirms the deposit onchain, minting the equivalent amount of
hBTCand transferring it to your Sui address. You can then immediately use thehBTCto interact with a DeFi protocol. For example, you can use thehBTCas collateral for a loan inUSDC.
For a detailed breakdown of each phase, see Deposit.
Withdraw flow
After you decide you want your BTC back on Bitcoin (for example, after you
pay off your loan), you can initiate a withdrawal.
Withdraw
- You send a transaction to Sui with the amount of
hBTCyou want to withdraw and the Bitcoin address you want to withdraw to. - Hashi picks up the withdrawal request and crafts a Bitcoin transaction
that sends the requested
BTC(minus fees) to the provided Bitcoin address, then uses MPC to sign the transaction. - The transaction is broadcast to the Bitcoin network.
For a detailed breakdown of each phase, see Withdraw.