Open fpietrosanti opened 9 years ago
A vhost-like system could be implemented in Tor2Web as an alternative to running thousands (potentially low traffic) hidden services.
The "OnionFlare" service would run a single or small number of real hidden services. Tor2Web would then publish a separate descriptor under an individual key for each onion service. All of these onion services would use the same set of introduction point which were selected by the actually running hidden service.
This would allow users to route to a single hidden service (like 1 IP) from multiple onion addresses (like vhosts), allowing a large number of unique onion services with low overhead. This type of introduction point republishing is similar to the strategy implemented in OnionBalance.
Tor2Web could then route the HTTP requests to the correct backend website at the application level by inspecting the HTTP Host header.
This ticket is to integrate an OnionFlare[1] functionality within Tor2web.
The idea is to enable anyone to "Onionify" it's existing internet website by enabling a Onion->Internet proxy service.
The OnionFlare service must support loading up at minimum 10.000 Tor Hidden Services.
The OnionFlare service, from a Tor2web perspective, shall enable a pre-authenticated machine to machine configuration of a Tor Hidden Service (e.g. using a REST API) and web-driven service.
The web driven service must support authenticating the user requesting the "onionification" of the internet-site, by giving a token to be loaded on https://internetiste.org/token.html .
This ticket require first identifying and fixing Tor performance issue in loading 10.000 Tor Hidden Services described at https://trac.torproject.org/projects/tor/ticket/15251
This ticket, as suggested by @virgil, require also supporting for Performance issue TorHS without location anonymity per ticket "Enable exposing a Tor HS without Location Anonymity (-3 hops)" https://trac.torproject.org/projects/tor/ticket/15271
The loading of the TorHS descriptors shall be entirely managed trough the new feature https://trac.torproject.org/projects/tor/ticket/6411 that's now supported in Tor 0.2.7-alpha, with TxTorcon support.