1

I run a service that involves ~500 separate Monero wallets, since they all need unique private keys. To make wallet access faster, I keep the wallets in sync constantly with a simple Python script that opens the wallets one at a time, waits for them to sync, then closes the wallet again.

I'm worried that this isn't as efficient as it could be; my server is constantly at max CPU due to this, and as my service grows, it becomes more difficult. So I'm wondering - is there a better way of doing this?

Thanks

0

Seeing as you have custody of the wallets, it would seem to make a whole lot more sense to track the funds via subaddresses in a single RPC wallet. Should you still want to dish out individual wallets, you can provide a means to move funds between the master RPC wallet and any other wallet at that time of need.

However, I would question any service creating full wallets for end-users as it's essentially promoting a false sense of security - you (the provider) still have the custody even if you dish out private keys.

Lastly, as you are finding, holding (and maintaining) hundreds of independent full wallets is never going to scale well because each wallet independently needs to scan blocks for transactions. Using subaddresses solves this problem.

In summary, I suggest rethinking the design.

| improve this answer | |
  • I'm more worried about people being able to withdraw after the service goes down, so none of these really apply. – Dr-Bracket May 9 at 18:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.