Damian Johnson commited on 2014-02-06 17:52:25
Zeige 1 geänderte Dateien mit 53 Einfügungen und 12 Löschungen.
Applying a patch from Ximin for the 'Build Better Pluggable Transports' project.
... | ... |
@@ -240,7 +240,7 @@ meetings around the world.</li> |
240 | 240 |
<td>Client Add-on</td> |
241 | 241 |
<td>Python, JavaScript, Go</td> |
242 | 242 |
<td>Heavy</td> |
243 |
- <td>dcf, aallai, jct</td> |
|
243 |
+ <td>dcf, infinity0, aallai, jct</td> |
|
244 | 244 |
</tr> |
245 | 245 |
|
246 | 246 |
<tr> |
... | ... |
@@ -1070,25 +1070,66 @@ meetings around the world.</li> |
1070 | 1070 |
<br> |
1071 | 1071 |
Skill Level: <i>Medium</i> |
1072 | 1072 |
<br> |
1073 |
- Likely Mentors: <i>Steven (sjmurdoch), George (asn)</i> |
|
1073 |
+ Likely Mentors: <i>Steven (sjmurdoch), Ximin (infinity0), George (asn)</i> |
|
1074 | 1074 |
<p> |
1075 |
- For Tor users in censored countries, we currently offer <a |
|
1075 |
+ For Tor users in censored countries, we have a <a |
|
1076 |
+ href="https://www.torproject.org/docs/pluggable-transports.html.en"> |
|
1077 |
+ pluggable transports</a> framework that uses external programs to bypass |
|
1078 |
+ censorship in different ways. Each of these have their own strengths and |
|
1079 |
+ weaknesses. |
|
1080 |
+ </p> |
|
1081 |
+ |
|
1082 |
+ <p> |
|
1083 |
+ We have deployed <a |
|
1076 | 1084 |
href="https://www.torproject.org/projects/obfsproxy.html.en">obfsproxy</a> |
1077 |
- bridges, which disguise Tor traffic by making it look random. This works |
|
1078 |
- for many users, but it has disadvantages: firstly it does not disguise |
|
1079 |
- packet size and secondly it looks like no real protocol. These weaknesses |
|
1080 |
- may result in obfsproxy being blocked. |
|
1085 |
+ and <a href="http://crypto.stanford.edu/flashproxy/">flashproxy</a> bridges |
|
1086 |
+ for a while, accessible using separately-installed pluggable transport |
|
1087 |
+ clients. Recently, we added this client support to the main Tor Browser |
|
1088 |
+ Bundle, and are adding more transports such as scramblesuit and fteproxy. |
|
1081 | 1089 |
</p> |
1082 | 1090 |
|
1083 | 1091 |
<p> |
1084 |
- The goal for this project will be to implement new pluggable transports, |
|
1085 |
- which resolve these weaknesses and so can be deployed if/when obfsproxy is |
|
1086 |
- blocked. Ideas for doing so include: |
|
1092 |
+ There are several possible directions for this project. Ideas include: |
|
1093 |
+ <ol> |
|
1094 |
+ <li>Address gaps or weaknesses in our existing pluggable transports |
|
1095 |
+ <ul> |
|
1096 |
+ <li>Flashproxy: Add WebRTC support to traverse NATs.</li> |
|
1097 |
+ <li>Flashproxy: Improve the facilitator's resistance against DoS |
|
1098 |
+ and poisoning attacks.</li> |
|
1099 |
+ </ul> |
|
1100 |
+ </li> |
|
1101 |
+ <li>Build our pluggable transport combiner, that chains several |
|
1102 |
+ transports together to take advantage of orthogonal types of blocking |
|
1103 |
+ resistance.</li> |
|
1104 |
+ <li>Improve the UX for selecting the appropriate pluggable transport in |
|
1105 |
+ the new Tor Browser Bundle, whilst maintaining user security.</li> |
|
1106 |
+ <li>Implement a new pluggable transport that resists blocking in a |
|
1107 |
+ novel way. |
|
1087 | 1108 |
<ul> |
1088 | 1109 |
<li>Impersonate a voice-over-IP protocol</li> |
1089 |
- <li>Impersonate HTTP sufficiently well that traffic will go through a HTTP-only proxy</li> |
|
1090 |
- <li>Implement <a href="http://cacr.uwaterloo.ca/techreports/2011/cacr2011-21.pdf">scanning resistance</a></a> |
|
1110 |
+ <li>Impersonate HTTP <a |
|
1111 |
+ href="http://www.cs.utexas.edu/~amir/papers/parrot.pdf">sufficiently |
|
1112 |
+ well</a> that traffic will go through a HTTP-only proxy</li> |
|
1113 |
+ <li>Implement <a |
|
1114 |
+ href="http://cacr.uwaterloo.ca/techreports/2011/cacr2011-21.pdf">scanning |
|
1115 |
+ resistance</a></li> |
|
1091 | 1116 |
</ul> |
1117 |
+ </li> |
|
1118 |
+ </ol> |
|
1119 |
+ </p> |
|
1120 |
+ |
|
1121 |
+ <p> |
|
1122 |
+ Applicants should be familiar with asynchronous/reactive programming, in |
|
1123 |
+ particular the <a href="https://twistedmatrix.com/">Twisted framework</a> |
|
1124 |
+ or something related. Most of the existing code is written in Python, with |
|
1125 |
+ some parts in JavaScript and Go, so you should know at least one of these. |
|
1126 |
+ You are invited to talk to us and ask questions, via our mailing lists |
|
1127 |
+ or IRC. <b>As part of your application, please contribute a patch that |
|
1128 |
+ implements a small feature or fixes a bug related to this area, e.g. <a |
|
1129 |
+ href="https://trac.torproject.org/projects/tor/query?status=!closed&component=Pluggable+transport">1</a>, |
|
1130 |
+ <a href="https://trac.torproject.org/projects/tor/query?status=!closed&component=Obfsproxy">2</a>, |
|
1131 |
+ <a href="https://trac.torproject.org/projects/tor/query?status=!closed&component=Flashproxy">3</a>. |
|
1132 |
+ </b> |
|
1092 | 1133 |
</p> |
1093 | 1134 |
|
1094 | 1135 |
<a id="hsSearchEngine"></a> |
1095 | 1136 |