A C++ HTTP forward proxy server that routes traffic through multiple hops for anonymous communication. Currently implementing multi-hop encryption similar to Tor's onion routing.
Phase 1-2 Complete:
- Basic HTTP server with GET/POST request handling
- Single-hop proxy forwarding
- Multi-hop proxy chain routing (Proxy A → Proxy B → Destination)
Phase 3 In Progress:
- AES symmetric encryption between proxy nodes
- RSA public key cryptography for key exchange
- Layered encryption/decryption at each hop
- Multi-hop forwarding: Route traffic through multiple proxy nodes
- Socket-based networking: Built with native C++ sockets
- HTTP request/response parsing: Full HTTP protocol support
- Modular architecture: Separate components for server, proxy, and utilities
# Build
make
# Run proxy server
./http_proxyClient → Proxy Node 1 → Proxy Node 2 → Destination Server
(encrypt) (decrypt/ (serve content)
re-encrypt)
Each proxy node decrypts the layer intended for it and forwards the remaining encrypted traffic to the next hop.
- HTTP server with static file serving
- Single-hop proxy forwarding
- Multi-hop proxy chain
- AES-256 encryption between nodes
- Onion routing with layered encryption
- SOCKS5 protocol support
- Language: C++
- Networking: BSD sockets
- Encryption: OpenSSL (in progress)
Building a Tor-like anonymous communication system where traffic is encrypted in layers and routed through multiple proxy nodes to ensure privacy and anonymity.
Note: Educational project exploring proxy servers, encryption, and anonymous networking protocols.