Thinking about NAT traversal as Tor's killer feature lead to this discussion: https://news.ycombinator.com/item?id=8018213
If torrents are P2P's killer application, and NAT traversal/"static IP" are Tor's (via hidden services), putting them together could prove to be the best incentivization scheme for growing the Tor network other than cold crypto cash.
Everybody knows you're not supposed to use torrents with tor, right?
But the problem there is using existing bittorent clients and how they leak IPs to trackers, etc. Drop those stones for a second and hear me out.
Say we do the following:
- Make a DHT that serves out peer onion addresses (OAs?) instead of IP addresses;
- Fork Popcorn Time, make it create a hidden service for the user and connect to the OA DHT;
- Make the Popcorn Time fork also be a relay by default*. If you're going to add a lot of load to the network, you have to give back.
This "Onion Popcorn" could also soft-enforce some download limit based on the amount of traffic the user has relayed. Sane defaults and interface nudges can go a long way. (Popcorn Time itself doesn't even expose network/bandwidth adjustments to the user and, for the mainstream, we can count on hiding some options as an easier alternative to coming up with a proof-of-correctness anti-leeching scheme.)
Bandwidth at first probably wouldn't be enough to stream anything, but otherwise should work for downloading and watching.
The end result is that you're incentivizing Tor "miners" by giving them something they want (so bad that it takes up most internet traffic).
There's an issue with running a relay and a hiddens service on the same machine. Discussion here: https://lists.torproject.org/pipermail/tor-talk/2014-July/033819.html
I just had an idea like this except a bit different... I want a torrent tracker & search mechanism that can not be shut down without shutting down literally every participant. And because of that I want it to be impossible (read: very difficult) to determine who the participants are.
If only Tor supported UDP traffic... I'll have to figure out a different way.
But my current concept is to mesh net everything(and somehow securely and privately transfer all data), and everything should be "Torrent Tracker, Some sort of search and filtering mechanism"