[tor-bugs] #9349 [Flashproxy]: flashproxy facilitator: Allow clients to specify transports

Tor Bug Tracker & Wiki blackhole at torproject.org
Thu Sep 19 15:55:34 UTC 2013


#9349: flashproxy facilitator: Allow clients to specify transports
----------------------------+-------------------
     Reporter:  asn         |      Owner:  dcf
         Type:  task        |     Status:  new
     Priority:  normal      |  Milestone:
    Component:  Flashproxy  |    Version:
   Resolution:              |   Keywords:
Actual Points:              |  Parent ID:  #7167
       Points:              |
----------------------------+-------------------

Comment (by infinity0):

 Replying to [comment:23 infinity0]:
 > So what really matters, is not the "outermost layer", but a "suffix
 constraint" for each proxy, which must be matched against the full
 transport chain. In the case of a raw TCP-TCP proxy, this suffix
 constraint is empty, and therefore matches all transport chains.

 Continuing down this path then, instead of matching the "outermost layer",
 a totally generalised protocol would have each proxy to declare its
 client-constraints [C1,C2,...] and server-constraints [S1,S2,...] to the
 facilitator, where each C/S is a string "t|t|..." of transport-chain
 suffixes, possibly the empty chain [] for a raw TCP stream. For the
 currently-implemented proxy, the client/server constraints would be
 ["websocket"]/["websocket"], and for arlolra's raw-TCP-capable proxy, they
 would be ["websocket"]/["websocket",""].

 In order to match a client supporting transports [CT1,CT2,...] to a server
 supporting transports [ST1,ST2,...], the facilitator needs to find a proxy
 with client suffix-constraints [C1,C2,...] and server suffix-constraints
 [S1,S2,...] such that CTi == PREFIX + Ca == PREFIX + Sb == STj for some
 i,j,a,b,PREFIX, where:

 - i,j,a,b are indexes into the relevant lists for preciseness purposes
 - PREFIX is the opaque data that the proxy doesn't need to understand
 - Ca/Sb are the transformations that the proxy understands and can strip
 off / attach on. For the current default browser proxy, this would just be
 websocket/websocket.
 - CTi == STj is the underlying data that needs to be matched between the
 client / server.

-- 
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/9349#comment:24>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list