On Fri, Jan 31, 2014 at 09:59:34AM -0800, David Fifield wrote: > Here is a repository containing a simple HTTP-based transport. > git clone https://www.bamsoftware.com/git/meek.git > cd meek/meek-client > export GOPATH=~/go > go get > go build > tor -f torrc > Usually when you think of an HTTP transport, you think of something that > steganographically tries to make something look like plain HTTP requests > and responses. Try and forget that idea for now, because that's not what > I have in mind. > > The protocol is simple. The client generates a random string to serve as > a session id. It puts this session id in a POST to the server. The > server has a map from session ids to ORPort connections; if the POST's > id is not in the map, the server creates a new ORPort connection, > otherwise it uses an existing one. The server copies the POST body to > the ORPort, and copies a block of data from the ORPort to the HTTP > response. The client receives the response, and when it has more to > send, it does another POST (with the same session id). Then repeat.
I made a wiki page. It depicts a sample traffic flow. https://trac.torproject.org/projects/tor/wiki/doc/meek David Fifield _______________________________________________ tor-dev mailing list [email protected] https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev
