Skip to content

Contract execution and wallet modules POC

chimp1984 edited this page May 7, 2021 · 2 revisions

I tried to model the requirements for multiple protocols (https://github.com/bisq-network/projects/issues/54) with flexible security modules and asset transfer as well as wallet and blockchain data providers (https://github.com/bisq-network/projects/issues/52).

I mocked 2 simple protocols to check feasibility of design:

  • BSQ bond based protocol
  • 2of2 Multisig (MAD) based protocol

The protocol class should use a state machine or similar to have a better formal structure, but for the poc I just used the CompleteableFuture callbacks.

I also tried to model different wallet and chain providers like bitcoind, ledger and electrum.

Package: https://github.com/chimp1984/misq/tree/master/contract/src/main/java/misq/contract

Test runners with configs are here: https://github.com/chimp1984/misq/tree/master/contract/src/test/java/misq/contract

@stejbac , @jmacxx : Could you have a look if that basic approach makes sense? Of course its totally simplified and there will be much more complexity to be considered. Specially how external protocols like farcaster could be supported (I have no idea about that yet). Feel free to reject if it does not fit to your intended approach. I just tried to see if its feasible, and from my point of view it seems so.

Clone this wiki locally