project screenshot 1
project screenshot 2
project screenshot 3

BitDSM

Modeled after EigenPod in Eigenlayer, BitcoinPods enable bridgeless non-custodial native bitcoin delegation for financial applications on Ethereum.

BitDSM

Created At

ETHGlobal Singapore

Project Description

The BitcoinPod (BOD) is the core component of BitDSM, modeled after the EigenPod concept. A BOD is a secure vault on the Bitcoin network, created using a P2WSH bitcoin address. The main purpose of the BitcoinPod is to ensure that minted LSTs are supported 1:1 by BTC, whether already held in the BitcoinPod or set to be processed through it. To accomplish this, BOD:

  • function as the withdrawal address for one or more PoS validators managed by the BOD Owner
  • verify pre-signed unbonding transactions from the source chain
  • continuously monitor the Bitcoin blockchain to track the status of all BitcoinPods

Front end link: https://bod-frontend.vercel.app/app

How it's Made

  • We used Dynamic's wallet adapter to enable pre-signing of Bitcoin PSBT transaction using OKX wallet. Since Dynamic didn't support Signet, we hacked the project on Bitcoin Mainnet. The operator for BitcoinPod is an Eigenlayer AVS deployed on holesky testnet. The front end is built using next.js and the operator is written in Golang.
  • The BOD script is deployed using Miniscript, allowing for asynchronous and remote signing via PSBT with the issuer. This ensures compatibility with any wallet that supports PSBT.
  • BitcoinPod, aka BOD, is deployed as a non custodial P2WSH address with a Eigenlayer operator with an arbitrary threshold (3 of 3 in the hack). The bitcoin address is mapped to a BOD contract on Ethereum, which can be locked to another smart contract to enable arbitrary slashing via the operator. The client pre-signs a slashing transaction to enable the operator execute the bitcoin transaction non-interactively.
  • We couldn't finish Eigenlayer Operator registration in time.
background image mobile

Join the mailing list

Get the latest news and updates