ReQrypt - Request Encryption
ReQrypt is an experimental tool for encrypting and tunneling web browser requests so third parties cannot read them. ReQrypt can be used for:
- bypassing ISP-level URL filtering (censorship) systems; and
- bypassing ISP-level URL logging and data retention systems.
ReQrypt - How it works
When you type a URL, e.g. http://reqrypt.org, into the address bar of your browser, your browser will send a web request to a server which will send a web response containing the webpage. For normal HTTP transfer, both the web request and web response are not encrypted, and thus are visible to anyone who can intercept these messages, e.g. an internet service provider (ISP).
Normally web requests are sent directly to web servers, and web responses are sent directly back in the other direction.
Most ISP-level filtering work by intercepting these unencrypted web requests and sending "fake" responses instead of the actual web content. The fake content is typically a block page, or a forged HTTP error message such as 404 Not Found. ReQrypt works by diverting web requests through an encrypted tunnels so they cannot be intercepted in a configuration known as "triangular routing":
Since the ISP (or other snooper) cannot see the web request, they cannot filter the web request, which will arrive at the web server unchanged. The web response, and not the "fake" web response from the filter, is sent back to your browser as per normal.
Unlike "traditional" technologies for bypassing filters, such as proxy servers, VPNs, TOR, etc., ReQrypt does not change your IP address. Instead tunneled packets are simply forwarded to the destination web server intact, and web responses are sent directly back via the normal route. This means that ReQrypt has lower latency and is generally faster compared to these other technologies.
ReQrypt - How to get
The following (beta) versions of ReQrypt are available:
- reqrypt_0.1_amd64.deb (75KB) Debian package for 64-bit Linux.
- reqrypt.sh (73KB) Stand-alone executable for 64-bit Linux.
- reqrypt32.sh (70KB) Stand-alone executable for 32-bit Linux.
- reqrypt-install.exe (175KB)
NOTE: for Windows XP only - not compatible with Windows 7 or Vista XP mode.
- reqryptd_0.1_amd64.deb (41KB) Debian package for 64-bit Linux.
This includes Windows Vista/7, MacOSX, and FreeBSD support.
ReQrypt is an open source project released under GNU GPL VERSION 3.
ReQrypt - Spin-off projects
- WinDivert - Divert sockets for Windows.