Currently, GPG supports using HTTP proxies, but not using SOCKS proxies. Before we get rid of Polipo, we should add support for SOCKS proxies to GPG so Windows users have some hope of torifying GPG. (Users of most Unixoid systems, now including MacOS and FreeBSD, can use torsocks to torify GPG.)
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Child items ...
Show closed items
Linked items 0
Link issues together to show that they're related.
Learn more.
Also, gnupg's network code really isn't bad at all, and there isn't much of it: if we want to go via a patch route, it doesn't look as if it would be too hard.
That's great. The reality is this shouldn't block us from making releases without Polipo though. There are probably 2 people who use the gpg command line on Windows with Tor. It is almost certain that the other 7 GPG users on Windows use a GUI and would never even know to set proxy settings of any sort for the execution of gpg itself.
We can probably hack gpg to try connect to a bare IP and if it fails to connect with that error, we could take that as a hint that gpg isn't safe to use.
I don't think this is a solved problem on Windows.
On Mac OS X 10.5.8, I see that the popular gpg package ( https://www.gpgtools.org ) links against libcurl/7.16.3 and so it does not work. I suspect that other versions of Mac OS X will have other versions of libcurl. A version table would be nice - does anyone have one offhand?
I've heard that curl Version 7.21.4 is the version included in Mac OS X 10.8 - so that would likely be safe if it is properly used by gpgtools.
It appears that the versions of curl are as follows:
Mac OS X 10.8.x - 7.24.0
Mac OS X 10.7.4 - 7.21.4
Mac OS X 10.6 - 7.19.0
Mac OS X 10.5 - 7.16.2
Mac OS X 10.4 (intel) - 7.13.0
I'm guessing that information based on extracting version numbers from Apple's developer man page website. Painful and likely error prone.
If that is correct, I guess no version of gpg on Mac OS X 10.4.x -> 10.7.x would be likely to support such a proxy. It may be the case that Mac OS X 10.8.x has a newer curl release but I'm not sure.
Well - things just appear to get worse and worse here - I see the same SRV DNS leaks (DNS Standard query SRV _pgpkey-http._tcp.pool.sks-keyservers.net) even when we use an HTTP proxy. See this bug for how I setup a local HTTP proxy with shim:
https://trac.torproject.org/projects/tor/ticket/6060#comment:8
I thought that perhaps if we set '--no-auto-key-locate' - we would not leak DNS. It still leaks DNS as far as I am able to tell. It looks like the configuration option '--disable-dns-srv' at compile time may be the next best hope.