How to manage multiple wallets on one multichaind instance?

+8 votes
I have many users, and it is not feasible to have one multichaind instance per user. So, users will (somehow) need to safely share a wallet on the same multichaind instance or (better) have a wallet each on the same multichaind instance.

What is the recommended (secure) solution for this? In case of multiple wallets on the same multichaind instance, how to I create these wallets and how do I specify which wallet to use in transactions, e.g. when sending money?
asked Jan 28, 2017 by Morten

I have the same problem than you, do could solve this problem? Could you share what solution was taken ?
I follow the advice given by Mulltichain in their answer.

1 Answer

+5 votes
Best answer

For now multichaind does not have support for the kind of multitenant security you need. So I recommend storing private keys outside the node's wallet, and using those to sign transactions. Here are some APIs that will help:

  • createkeypairs to create private keys and provide their corresponding addresses, without storing them in any way in the node.
  • importaddress to add a watch-only address to the node, so that it can see what's going on with that address and easily prepare transactions for it. Pass rescan=false for new address to save time.
  • createrawsendfrom to prepare an unsigned transactions that spends funds for a particular address. you can then use signrawtransaction to sign it using the externally held private key (which you pass a parameter) and sendrawtransaction to broadcast the transaction.
answered Jan 29, 2017 by MultiChain