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 |