Motif | Docs
  • Motif
  • Problem: 'Bitcoin Solo Staking?'
  • Size of the Opportunity
  • Solution: Bitcoin staking DTP
    • Staking DTP vs Staking ETP
    • Staking DTP vs LSTs
  • On-chain primary markets
  • On-chain secondary markets
  • User Guide (BitDSM Testnet)
    • How to mint DTP
      • Create New Staking DTP
      • Create BOD
      • Deposit
      • Delegate & Remap
    • How to redeem DTP
      • Undelegate
      • Withdraw
  • SPECIFICATION
    • Intuition
    • What is in-kind remap?
      • In-kind vs wrapped
    • Contract Architecture
    • BitcoinPod Overview
      • Stateless vs Stateful
    • Restaking remap
Powered by GitBook
On this page

Was this helpful?

  1. SPECIFICATION

Contract Architecture

BitcoinPodManager.sol

This contract is the entry point for the client for all actions related to BitcoinPod, aka BOD. This contract:

  1. Deploys the BOD

  2. Handles bitcoin deposit/withdrawal requests

  3. Interacts with the service manager

  4. Delegates to Apps

BitcoinPod.sol

This is a unique contract deployed everytime for a new bitcoin address created a BOD. This contract:

  1. Maps a Bitcoin address to an Ethereum address

  2. Tracks Bitcoin balances in the BOD

  3. Delegates to apps via BitcoinPodManager.sol

  4. Manages bitcoin transaction storage

BitDSMRegistry.sol

  1. Handles operator's registration/deregistration

  2. Stores a mapping for operator's bitcoin pubkey

AppRegistry.sol

This is the entrypoint for Apps to gain access to in-kind Bitcoin. This contract

  1. Maintains a mapping of the contract address for the app and the BODs delegated to it.

BitDSMServiceManager.sol

This is the AVS service manager contract deployed on Eigenlayer's AVSDirectory.sol. This contract:

  1. Manages Bitcoin pod operations through IBitcoinPodManager

  2. Handles deposit/withdrawal confirmations from operators

  3. Integrates with EigenLayer for staking and delegation

PreviousIn-kind vs wrappedNextBitcoinPod Overview

Was this helpful?