Damian Johnson commited on 2013-04-09 18:41:49
Zeige 1 geänderte Dateien mit 60 Einfügungen und 0 Löschungen.
... | ... |
@@ -603,6 +603,11 @@ meetings around the world.</li> |
603 | 603 |
block Tor. This has both a C and python implementation. |
604 | 604 |
</p> |
605 | 605 |
|
606 |
+ <p> |
|
607 |
+ <b>Project Ideas:</b><br /> |
|
608 |
+ <i><a href="#betterPluggableTransports">Build Better Pluggable Transports</a></i> |
|
609 |
+ </p> |
|
610 |
+ |
|
606 | 611 |
<a id="project-flash-proxy"></a> |
607 | 612 |
<h3><a href="https://crypto.stanford.edu/flashproxy/">Flash Proxy</a> (<a |
608 | 613 |
href="https://gitweb.torproject.org/flashproxy.git">code</a>, <a |
... | ... |
@@ -1270,6 +1275,61 @@ meetings around the world.</li> |
1270 | 1275 |
</p> |
1271 | 1276 |
</li> |
1272 | 1277 |
|
1278 |
+ <a id="betterPluggableTransports"></a> |
|
1279 |
+ <li> |
|
1280 |
+ <b>Build Better Pluggable Transports</b> |
|
1281 |
+ <br> |
|
1282 |
+ Effort Level: <i>Medium to High</i> |
|
1283 |
+ <br> |
|
1284 |
+ Skill Level: <i>Medium</i> |
|
1285 |
+ <br> |
|
1286 |
+ Likely Mentors: <i>Steven (sjmurdoch)</i> |
|
1287 |
+ <p> |
|
1288 |
+ For Tor users in censored countries, we currently offer <a |
|
1289 |
+ href="https://www.torproject.org/projects/obfsproxy.html.en">obfsproxy</a> |
|
1290 |
+ bridges, which disguise Tor traffic by making it look random. This works |
|
1291 |
+ for many users, but it has disadvantages: firstly it does not disguise |
|
1292 |
+ packet size and secondly it looks like no real protocol. These weaknesses |
|
1293 |
+ may result in obfsproxy being blocked. |
|
1294 |
+ </p> |
|
1295 |
+ |
|
1296 |
+ <p> |
|
1297 |
+ The goal for this project will be to implement new pluggable transports, |
|
1298 |
+ which resolve these weaknesses and so can be deployed if/when obfsproxy is |
|
1299 |
+ blocked. Ideas for doing so include: |
|
1300 |
+ <ul> |
|
1301 |
+ <li>Impersonate a voice-over-IP protocol</li> |
|
1302 |
+ <li>Impersonate HTTP sufficiently well that traffic will go through a HTTP-only proxy</li> |
|
1303 |
+ <li>Implement <a href="http://cacr.uwaterloo.ca/techreports/2011/cacr2011-21.pdf">scanning resistance</a></a> |
|
1304 |
+ </ul> |
|
1305 |
+ </p> |
|
1306 |
+ |
|
1307 |
+ <a id="profileUDPTransport"></a> |
|
1308 |
+ <li> |
|
1309 |
+ <b>Profile UDP transport protocols</b> |
|
1310 |
+ <br> |
|
1311 |
+ Effort Level: <i>Medium to High</i> |
|
1312 |
+ <br> |
|
1313 |
+ Skill Level: <i>High</i> |
|
1314 |
+ <br> |
|
1315 |
+ Likely Mentors: <i>Steven (sjmurdoch)</i> |
|
1316 |
+ <p> |
|
1317 |
+ There are <a |
|
1318 |
+ href="https://research.torproject.org/techreports/datagram-comparison-2011-11-07.pdf">lots |
|
1319 |
+ of options</a> as to how Tor could send its data over UDP rather than TCP, |
|
1320 |
+ and some will likely perform significantly better than others. This project |
|
1321 |
+ will evaluate these options, so as to decide which should be used in future |
|
1322 |
+ versions of Tor. A first step will be to benchmark the various transport |
|
1323 |
+ protocols being considered, in terms of performance and also code quality, |
|
1324 |
+ including userspace TCP, <a |
|
1325 |
+ href="https://github.com/bittorrent/libutp">μTP</a>, <a |
|
1326 |
+ href="http://en.wikipedia.org/wiki/Stream_Control_Transmission_Protocol">SCTP</a> |
|
1327 |
+ and <a href="http://curvecp.org/">CurveCP</a>. Initially these transport |
|
1328 |
+ protocols will be examined in isolation, but if the project progresses well |
|
1329 |
+ one or more could be integrated in Tor. |
|
1330 |
+ </p> |
|
1331 |
+ </li> |
|
1332 |
+ |
|
1273 | 1333 |
<li> |
1274 | 1334 |
<b>Bring up new ideas!</b> |
1275 | 1335 |
<br> |
1276 | 1336 |