Making Electrum more anonymous [combined summary]



Individual post summaries: Click here to read the original discussion on the bitcoin-dev mailing list

Published on: 2015-07-24T21:20:06+00:00


Summary:

In an effort to improve the anonymity of Electrum, Thomas Voegtlin, the creator of the platform, has proposed the creation of an anonymous routing layer between Electrum servers and clients. Currently, when using Electrum, clients connect to multiple servers to fetch block headers, but request address balances and histories from a single server. This means that the chosen server knows which addresses belong to the same wallet, even if Electrum is used over TOR.Several proposals have been put forward to address this issue, such as creating subsets of wallet addresses and sending them to separate servers. However, these proposals require trusting more servers and do not necessarily provide improved anonymity. Inspired by the TOR network, Voegtlin suggests the implementation of an anonymous routing layer.Under this proposed system, each Electrum server would publish an RSA public key, and clients would receive a list of available servers along with their respective public keys. For each wallet address, the client would choose a server and generate an RSA keypair. They would then create a list of encrypted requests containing the wallet address and the generated keypair, encrypting it with the chosen server's public key.The client would send this list of encrypted requests to a main server, which would dispatch the requests to the corresponding servers without revealing the client's IP address. Each server would decrypt the received requests, perform the requested operations, and encrypt the results with the keypair. The main server would then receive the encrypted responses and forward them to the client, who would decrypt them using the corresponding keypair.However, it is important to note that this approach would be ineffective if all servers or a significant portion of them were controlled by the same entity that controls the main server. Furthermore, the weaknesses observed in TOR implementations, such as lack of relay nodes and the need for distinct routes to prevent correlation, are also applicable to this proposed scheme.Voegtlin is seeking feedback on this idea and wants to understand the costs and benefits associated with implementing an anonymous routing layer between Electrum servers and clients. One respondent suggested considering the Dissent protocol, which reduces the impact of Sybil attacks. It remains to be seen how this proposal will be received within the bitcoin-dev community and if it will ultimately be implemented in Electrum.


Updated on: 2023-08-01T14:26:05.194826+00:00