Is it possible to specify a specific/fixed coinbase address for mining in zcashd?

Rather than having my mining rewards go to a new/different coinbase address for each block I find, I’d like to be able to specify a single/particular/fixed coinbase address that will not change with each block discovered.

The motivation is to improve key-management and decrease the likelihood of losing mined coins. Here’s where I am:

I’m currently doing some experimentation that works like this:

  • I set up a particular software configuration specific for mining.
  • I take an image of the the machine.
  • I use that same image on a handful of different machines (each with a different hardware configuration).
  • I note performance differences.

My concern: because zcashd doesn’t implement HD wallets, each of my instances is going to (eventually) end up with a different keypool. Which means the private keys to any newly mined coins are not in one centralized location.

My solution: set a static coinbase address in the original image. That way all my instances will be mining to the same address, and that address will never change. Additionally, I could keep that one static coinbase private key safe (offline), so that even if someone gains access to one of my mining machines, they can’t swipe my coins – because the privKeys aren’t even on the machine.

The challenge, for me, is that I don’t know the zcashd codebase well enough to know how to set a fixed/static coinbase address.

Can anyone help?

I appreciate it.



I suspect removing line 419 from src/miner.cpp and recompiling would do the trick.

Also, just to be safe, one could also remove line 2033 from src/wallet/wallet.cpp and recompile.

This has implications for the anonymity of the miner, but I fully understand them and am personally okay with them.

1 Like

@Austin-Williams do you know if there has been an easier way to set the coinbase (or toggle it off and on) in Beta?