There is this merge: https://github.com/sumoprojects/sumokoin/pull/63 that enables SSL for Sumokoin (can be used also for Monero).

What is it used for? I guess For SSL communication between RPC-wallet and daemon, but I am not sure, because I set enable_ssl to true and even the initialization somehow failed, I think it failed on handshake. I can spend more time investigating that, but I guess asking here is faster.

What I am looking for is a way to have SSL communication between client (for example someone using cURL to communicate with RPC-wallet) and RPC-wallet, so I guess this isn't it and it makes communication between RPC-wallet and daemon using SSL, is that right?

Btw, the init method with with parameter enable_ssl set to true is never used in Sumokoin code, so I am really not sure about the usage.


Monero does not implement SSL in the RPC but it's super simple to enable if you really want to open up a remote node with encrypted communication.

Some options are:

  • Connect via an SSH tunnel
  • Proxy an SSL enabled Apache/Nginx vhost
  • Use stunnel
  • EDIT: I want to have the security on server side, not on client side, I mean that I don't want to be able to establish SSL connection from client to RPC, but to force all connections to RPC to be via SSL. – Salda May 18 '18 at 14:13
  • This is exactly what my answer addresses. The way you do this is only bind the RPC daemon/wallet-rpc to localhost ( on the server and then use one of the options outlined in the answer to tunnel/proxy. E.g. daemon bound to localhost and an Apache Vhost (on same machine) using SSL proxying to the daemon port. – jtgrassie May 18 '18 at 14:52
  • Ok, I maybe said it incorrectly again, the feature is at least partially implemented into sumokoin and I want to use it so all users using my fork of the daemon will be forced to use SSL connections, but I can't force everyone running the daemon to use more security. I should define the question much more clearly :( – Salda May 18 '18 at 16:53
  • Using a remote deamon is not the usual use case. Those that need remote daemons can easily run over encrypted channels as answered. Also this is a Monero stackexchange, not sumokoin. Ask questions about Monero here please, not forks. – jtgrassie May 18 '18 at 20:53

The SSL code you refer to is only used by the Sumokoin Android wallet. It's not hooked anywhere else yet and I'm not aware of any plans to do so.

Source: I made that change

  • Thanks a lot, but it seems that it can be used everywhere. Or not? The bool enable_ssl is used in wallet2::init and wallet2 is used for both RPC-wallet and CLI-wallet and I guess one of that is also used for android. But if I just change default value of enable_ssl from false to true, it somehow doesn't work and fails quite soon during initialization, but I see some encrypted data in daemon coming on the start of communication. Should I change something else to make the SSL communication work? I run it on Ubuntu so I guess the environment is set right. – Salda May 20 '18 at 20:55

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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