<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div><br></div><blockquote type="cite"><span>Date: Mon, 4 May 2015 16:07:20 -0400</span><br><span>From: CJ Ess <<a href="mailto:zxcvbn4038@gmail.com">zxcvbn4038@gmail.com</a>></span><br><span></span><br><span>Thanks for going into so much detail, you've given me a lot to think about.</span><br><span>The real solution is probably the one that nobody wants to take on - having</span><br><span>an application HTTP port that could take direct input from HTTP aware stuff</span><br><span>and utilize a richer set of information then SOCKS allows for. I've spent a</span><br><span>couple evenings looking to see if I could take the code stuff from the</span><br><span>dirport and use it for that purpose. I need to spend another couple</span><br><span>evenings and and go back and look at the SOCKS4 stuff, I've just recently</span><br><span>realized that the state machine for that is closer to an http</span><br><span>request/response.</span></blockquote><br><div><span style="background-color: rgba(255, 255, 255, 0);">CJ,</span></div><div><span style="background-color: rgba(255, 255, 255, 0);"><br></span></div><div><span style="background-color: rgba(255, 255, 255, 0);">Pluggable transports are designed to arbitrarily change how tor makes outgoing connections. The existing transports are used for obfuscation, but they could be used for dynamic proxy authentication as well. (Some do take authentication arguments.)</span></div><div><span style="background-color: rgba(255, 255, 255, 0);"><br></span></div><div><span style="background-color: rgba(255, 255, 255, 0);">You'd just have to work out which user to authenticate each tor connection with - which is a difficult question of policy. This arises because tor only makes a small number of long-term connections to a few guard nodes, and multiplexes multiple streams over these connections.<br><br></span><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div apple-content-edited="true"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><span style="background-color: rgba(255, 255, 255, 0);">teor</span></div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><span style="background-color: rgba(255, 255, 255, 0);"><br></span></div><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><span style="background-color: rgba(255, 255, 255, 0);">teor2345 at gmail dot com<br>pgp 0xABFED1AC<br><a href="https://gist.github.com/teor2345/d033b8ce0a99adbc89c5">https://gist.github.com/teor2345/d033b8ce0a99adbc89c5</a><br><br>teor at blah dot im<br>OTR D5BE4EC2 255D7585 F3874930 DB130265 7C9EBBC7</span></div></div></div></div></div></div></div></div></div></body></html>