movementlabsxyz / MIP

Movement Improvement Proposals
10 stars 11 forks source link

MD-16: MOVE on Bitcoin #16

Open andygolay opened 1 week ago

andygolay commented 1 week ago

Summary

This MD suggests creating a MOVE fungible asset (FA) on Bitcoin using the runes protocol. This would allow users to interact with the Bitcoin ecosystem similarly to how ERC-20 token users can interact with the Ethereum ecosystem. Runes use Bitcoin's UTXO model in a more native manner than older Bitcoin FA protocols, runes have been acknowledged as the dominant Bitcoin FA protocol, and emerging protocols claim that they will support runes.

0xPrimata commented 6 days ago

can you envision a bridge on Bitcoin that uses our bridge interface?

0xmovses commented 6 days ago

Interesting, it may be that Layer Zero integration (if it happens) could render this, less useful. However, it also may not! And that both things could be interesting to exist along side each other and provide value.

All that we would need to do here is create the underlying contracts on Chain A and Chain B (Initiator and Counterparty) then deploy a new relayer to serve that pair (as currently one relayer can only support one pair), which is fine.

Or, is there more work involved in this?

andygolay commented 5 days ago

can you envision a bridge on Bitcoin that uses our bridge interface?

yes

andygolay commented 5 days ago

Interesting, it may be that Layer Zero integration (if it happens) could render this, less useful. However, it also may not! And that both things could be interesting to exist along side each other and provide value.

All that we would need to do here is create the underlying contracts on Chain A and Chain B (Initiator and Counterparty) then deploy a new relayer to serve that pair (as currently one relayer can only support one pair), which is fine.

Or, is there more work involved in this?

Right, just the contracts and relayer would be needed. along with clients to interact

0xmovses commented 5 days ago

So work to be done would be:

  1. Rune - smart contracts (Initiator, Counterparty) Do you have any resources for this? Is there a DSL?
  2. New packages for chains/bitcoin/* clients and other necessary structs in there.
  3. Client integration tests.
andygolay commented 5 days ago

So work to be done would be:

  1. Rune - smart contracts (Initiator, Counterparty) Do you have any resources for this? Is there a DSL?
  2. New packages for chains/bitcoin/* clients and other necessary structs in there.
  3. Client integration tests.

Yes. For creating the tokens on Bitcoin testnet we could use a tool like https://app-testnet.runemine.com/ as a convenience.

There is indeed a Bitcoin DSL: https://github.com/pool2win/bitcoin-dsl

For the client we could use https://github.com/rust-bitcoin/rust-bitcoin