But how do we want to handle this in the UI? Should we automatically replace the address to a .onion when the user chooses a server? Or should we have a dropdown menu?
I'd think replacing invisibly to the user is best. Even better would be if the situation would be handled transparently as soon as no connection to the server could be made by falling back to the original domain (in case it's only the hidden service which is off) and only if that fails, too, inform the user. But I guess that is quite messy to implement?
Tor Messenger will now configure (XMPP) accounts for known servers to automatically use the onion address if available. The current list of servers we have borrowed are from xmpp-client and are riseup.net, jabber.ccc.de, jabber.otr.im and jabber.calyxinstitute.org. For now, the default server is jabber.org and users have to manually enter the name of the service they want to use.
This process is transparent to the user (but requires no input from them so as to keep it easy) and in case the connection doesn't work or they don't want to use a hidden service, they can choose to omit this step.
Trac: Status: assigned to closed Resolution: N/Ato fixed
Just to add, we are still open to comments about how to make it apparent to the user that we are setting the onion addresses so that they are not confused when they see it in the server field (since they are not setting it). Modal dialog windows are out of the question; suggestions are welcome for other ways, like perhaps tooltips?
These sentences are paraphrased from a discussion on IRC with dgoulet.
Using the onions by default has the potential to bring these services (or their guards) to their knees. Some experiments show HSs as unusable with around 60 to 100 client connections with data in transit. ~30% of the whole CPU/tor process is crypto at that load, which for the most part doesn't make use of multiple cores. Until that's fixed or DonnchaC's HS load balancing comes along, maybe we don't want that as the default.
A better starting point may be to make it easier to configure the onions.