Atomic Swap Between BTC and Zenon Network

@sol let’s coordinate this swap here. What do I need to get setup? Would you be willing to be my counterparty?

Maybe we swap 1 ZNN with 0.00003414 BTC

What do I need to get started? Let’s use the same CLI tool so it’s easy to share commands.

BTW - I’ve run several BTC nodes. This one is the best IMO.

And it’s super easy to setup and run.

1 Like

I have everything ready whenever you want to swap.

Thanks for the offer, 0x :slight_smile:

During testing, I noticed that the btcatomicswap CLI tool prevented me from creating P2SH contracts with low BTC amounts. I think the lowest I could send was 0.0007 BTC (~10 ZNN?) on BTC Testnet, limited by a fee calculation. It might be different on BTC Mainnet.

Is it okay if we use BTC Testnet for the initial swap? Once you’ve completed that, I’d feel more comfortable trying it on Mainnet.

Either way, the instructions are similar. You’ll need:

  • access to a BTC (pruned or full) node with RPC enabled
  • access to a BTC wallet with funds (~0.005 BTC is a good amount)
  • bitcoin-core
  • btcatomicswap
    • Dependency: Go
    • Instructions
      • git clone && cd atomicswap
      • cd cmd/btcatomicswap && go install
      • btcatomicswap
        • If that fails, you can go build and it will create an executable in the same directory

Once you have all that, we can proceed with the instructions for the cross-chain swap.

@Chadass feel free to participate, if you want.


Do we swap tBTC or real BTC ?

We can swap either one, depending on which network we want to use.

I’m proposing we initially test with tBTC, then we can do a swap with real coins once we have everything setup.

1 Like

I recommend we start with testnet. When I did this with Crypto Fish on NoM i screwed it up like 3x. So probably better to do on testnet. I will review everything and get things setup for a test this weekend if that works @sol.

1 Like

Did you use a trusted RPC, or sync yourself? What node software did you use?

Atomic Swap Tool Commands

 # Commands:
initiate <participant address> <amount>
participate <initiator address> <amount> <secret hash>
redeem <contract> <contract transaction> <secret>
refund <contract> <contract transaction>
extractsecret <redemption transaction> <secret hash>
auditcontract <contract> <contract transaction>

Instructions look pretty straight forward: GitHub - decred/atomicswap: On-chain atomic swaps for Decred and other cryptocurrencies.

@sol could you jump on a call today to review everything I need to setup? I think I can just use the bitcoin core wallet and sync. But wanted to confirm.

I downloaded Bitcoin Core, configured bitcoin.conf, and synced my own node using bitcoin-qt.

I’m afk for the next few hours. I might be available around 9pm EST, though. I’ll ping you on Discord.

I primarily used the Bitcoin core wallet (bitcoin-qt) and it’s easy to confirm which network it’s connected to, sync status, balance, etc.

OK I think that is all I need. I’ll get going on the sync. No need to talk tonight (I don’t think).

1 Like

I’m synced.

did you sync testnet and mainnet or can you only select one at a time?

I synced both separately, and only one can be in use at any time.

1 Like

I’m syncing testnet now. says 5 hours to sync. @sol will you be around for a swap at 6 or 7 PM your time? …as if you don’t have better things to do. If tonight does not work we can reschedule to anytime that works for you.

Sure, just ping me when you’re ready

@sol can I use the C# CLI? Do you have any ZNN on your testnet? If C# is OK, I will create a wallet with it and Share Address

What is your testnet RPC?

Yes, it should work, though I haven’t tried it in a few months.
Feel free to use that or the Dart znn-cli (branch: spork_htlc).

RPC: ws://


curl -X POST -H 'Content-Type: application/json' -d '{"address":"z1qr3uww8uqh75qnsuxqajegvwaesqynfglrare2"}'

The faucet dispenses 100 tZNN and 100 tQSR.
I can manually send you funds if you need.

Let’s party!!