e6f832400449ba24298dd4b1d42f0d5beb4d4ef8
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1) ## translation metadata
Roger Dingledine looks like we never set the...

Roger Dingledine authored 13 years ago

2) # Revision: $Revision$
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

3) # Translation-Priority: 4-optional
4) 
5) #include "head.wmi" TITLE="Tor: Volunteer" CHARSET="UTF-8"
6) <div id="content" class="clearfix">
7)   <div id="breadcrumbs">
Andrew Lewman change all of the breadcrum...

Andrew Lewman authored 13 years ago

8)     <a href="<page index>">Home &raquo; </a>
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

9)     <a href="<page getinvolved/volunteer>">Volunteer</a>
10)   </div>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

11)   <div id="maincol">
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

12)     <!-- PUT CONTENT AFTER THIS TAG -->
13)     <h1>A few things everyone can do now:</h1>
14)     <ol>
15)     <li>Please consider <a href="<page docs/tor-doc-relay>">running
16)     a relay</a> to help the Tor network grow.</li>
Damian Johnson Adding Tor Cloud to ways to...

Damian Johnson authored 12 years ago

17)     <li>Do you have an Amazon account? Are you willing to spend up to $3 a
Roger Dingledine it's not a relay, it's a br...

Roger Dingledine authored 12 years ago

18)     month? Then spin up your own Tor <a href="<page
19)     docs/bridges>">bridge</a> in less than 10 minutes with <a
Damian Johnson Adding Tor Cloud to ways to...

Damian Johnson authored 12 years ago

20)     href="https://cloud.torproject.org/">tor cloud</a>!</li>
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

21)     <li>Tell your friends! Get them to run relays. Get them to run hidden
22)     services. Get them to tell their friends.</li>
23)     <li>If you like Tor's goals, please <a href="<page donate/donate>">take a moment
24)     to donate to support further Tor development</a>. We're also looking
25)     for more sponsors &mdash; if you know any companies, NGOs, agencies,
26)     or other organizations that want anonymity / privacy / communications
27)     security, let them know about us.</li>
28)     <li>We're looking for more <a href="<page about/torusers>">good examples of Tor
29)     users and Tor use cases</a>. If you use Tor for a scenario or purpose not
30)     yet described on that page, and you're comfortable sharing it with us,
31)     we'd love to hear from you.</li>
32)     </ol>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

33) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

34)     <a id="Documentation"></a>
35)     <h2><a class="anchor" href="#Documentation">Documentation</a></h2>
36)     <ol>
Roger Dingledine the beginnings of a volunte...

Roger Dingledine authored 11 years ago

37)     <li>Help translate the
38) <!-- web page and -->
39)     documentation into other
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

40)     languages. See the <a href="<page getinvolved/translation>">translation
41)     guidelines</a> if you want to help out. We especially need Arabic or
42)     Farsi translations, for the many Tor users in censored areas.</li>
43)     <li>Evaluate and document
Karsten Loesing Update wiki links

Karsten Loesing authored 12 years ago

44)     <a href="<wiki>doc/TorifyHOWTO">our
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

45)     list of programs</a> that can be configured to use Tor.</li>
46)     <li>We have a huge list of <a
Karsten Loesing Update wiki links

Karsten Loesing authored 12 years ago

47)     href="<wiki>doc/SupportPrograms">potentially useful
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

48)     programs that interface to Tor</a>. Which ones are useful in which
49)     situations? Please help us test them out and document your results.</li>
50)     </ol>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

51) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

52)     <a id="Advocacy"></a>
53)     <h2><a class="anchor" href="#Advocacy">Advocacy</a></h2>
54)     <ol>
Andrew Lewman apply fixes from rransom.

Andrew Lewman authored 13 years ago

55)     <li>Create a presentation that can be used for various user group
56) meetings around the world.</li>
Andrew Lewman format the paragraphs corre...

Andrew Lewman authored 13 years ago

57)     <li>Create a video about the positive uses of Tor, what Tor is,
58)     or how to use it.  Some have already started on <a
Robert Ransom HTTPS-ify links to media.tp...

Robert Ransom authored 13 years ago

59)     href="https://media.torproject.org/video/">Tor's Media server</a>,
Andrew Lewman format the paragraphs corre...

Andrew Lewman authored 13 years ago

60)     <a
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

61)     href="http://www.howcast.com/videos/90601-How-To-Circumvent-an-Internet-Proxy">Howcast</a>,
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

62)     and <a href="http://www.youtube.com/thetorproject">YouTube</a>.</li>
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

63)     <li>Create a poster, or a set of posters, around a theme,
Roger Dingledine the beginnings of a volunte...

Roger Dingledine authored 11 years ago

64)     such as "Tor for Freedom!"</li>
65)     <li>Create a t-shirt design that incorporates "<a
66)     href="https://check.torproject.org/">Congratulations! You are using
67)     Tor!</a>" in any language.</li>
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

68)     </ol>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

69) 
Damian Johnson Dropping GSoC and OPW from...

Damian Johnson authored 10 years ago

70) <!--
Damian Johnson Better emphasizing GSoC is...

Damian Johnson authored 11 years ago

71)     <a id="gsoc"></a>
72)     <h2><a class="anchor" href="#gsoc">Google Summer of Code</a></h2>
73) 
74)     <p>
75)     Tor is also taking part in this year's <a
76)     href="https://www.google-melange.com/gsoc/homepage/google/gsoc2013">Google
77)     Summer of Code</a>! The criteria for this is a little different - either
78)     gender can apply but you need to be either <a
79)     href="https://www.google-melange.com/gsoc/document/show/gsoc_program/google/gsoc2013/help_page#2._Whos_eligible_to_participate_as_a">a
80)     present student or just graduated</a>.
81)     </p>
82) 
83)     <p>
84)     As mentioned above if you're eligible for either program then please apply
85)     for both! Google Summer of Code is a far, far larger program for us than
86)     OPW so your chances of being applied that way are considerably better.
87)     </p>
88) 
89)     <p>
90)     <b>See our page for <a href="<page about/gsoc>">Google Summer of Code</a>
91)     for more information.</b>
92)     </p>
Damian Johnson Dropping GSoC and OPW from...

Damian Johnson authored 10 years ago

93) -->
Damian Johnson Better emphasizing GSoC is...

Damian Johnson authored 11 years ago

94) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

95)     <a id="Projects"></a>
96)     <h2><a class="anchor" href="#Projects">Projects</a></h2>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

97) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

98)     <p>
99)     Below are a list of Tor related projects we're developing and/or
100)     maintaining. Most discussions happen on IRC so if you're interested in any
101)     of these (or you have a project idea of your own), then please <a
Sebastian Hahn Project members aren't list...

Sebastian Hahn authored 13 years ago

102)     href="<page about/contact>#irc">join us in #tor-dev</a>. Don't be shy
103)     to ask questions, and don't hesitate to ask even if the main contributors
104)     aren't active at that moment.
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

105)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

106) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

107)     <table id="projects">
108)       <tr>
109)         <th>Name</th>
110)         <th>Category</th>
111)         <th>Language</th>
112)         <th>Activity</th>
113)         <th>Contributors</th>
114)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

115) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

116)       <tr>
117)         <td><a href="#project-tor">Tor</a></td>
118)         <td>Core</td>
119)         <td>C</td>
120)         <td>Heavy</td>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

121)         <td>nickm, athena, arma</td>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

122)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

123) 
Damian Johnson Using a better method to st...

Damian Johnson authored 10 years ago

124)       <tr>
Damian Johnson Adding JTor back to the vol...

Damian Johnson authored 11 years ago

125)         <td>*<a href="#project-jtor">JTor</a></td>
126)         <td>Core</td>
127)         <td>Java</td>
Damian Johnson Raising the JTor activity t...

Damian Johnson authored 11 years ago

128)         <td>Moderate</td>
Damian Johnson Adding JTor back to the vol...

Damian Johnson authored 11 years ago

129)         <td>bleidl</td>
130)       </tr>
131) 
132)       <tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

133)         <td><a href="#project-torbrowser">Tor Browser</a></td>
Damian Johnson Merging TBB and TorBrowser...

Damian Johnson authored 11 years ago

134)         <td>Bundle</td>
Damian Johnson Dropping JTor from the proj...

Damian Johnson authored 11 years ago

135)         <td>C, Scripting</td>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

136)         <td>Moderate</td>
Damian Johnson Merging TBB and TorBrowser...

Damian Johnson authored 11 years ago

137)         <td>mikeperry, Erinn</td>
Damian Johnson Adding TAILS to the project...

Damian Johnson authored 13 years ago

138)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

139) 
Damian Johnson Using a better method to st...

Damian Johnson authored 10 years ago

140)       <tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

141)         <td><a href="#project-torbutton">Torbutton</a></td>
142)         <td>Browser Add-on</td>
143)         <td>Javascript</td>
144)         <td>Moderate</td>
145)         <td>mikeperry</td>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

146)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

147) 
Damian Johnson Adding JTor back to the vol...

Damian Johnson authored 11 years ago

148)       <tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

149)         <td><a href="#project-httpseverywhere">HTTPS Everywhere</a></td>
150)         <td>Browser Add-on</td>
151)         <td>Javascript</td>
152)         <td>Moderate</td>
153)         <td>pde, mikeperry</td>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

154)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

155) 
Damian Johnson Using a better method to st...

Damian Johnson authored 10 years ago

156)       <tr>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

157)         <td><a href="#project-vidalia">Vidalia</a></td>
158)         <td>User Interface</td>
159)         <td>C++, Qt</td>
Damian Johnson Restoring r25975, minus stu...

Damian Johnson authored 11 years ago

160)         <td>None</td>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

161)         <td>chiiph</td>
162)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

163) 
Damian Johnson Adding JTor back to the vol...

Damian Johnson authored 11 years ago

164)       <tr>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

165)         <td><a href="#project-arm">Arm</a></td>
166)         <td>User Interface</td>
167)         <td>Python, Curses</td>
Damian Johnson Active arm development has...

Damian Johnson authored 12 years ago

168)         <td>Light</td>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

169)         <td>atagar</td>
170)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

171) 
Damian Johnson Using a better method to st...

Damian Johnson authored 10 years ago

172)       <tr>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

173)         <td><a href="#project-orbot">Orbot</a></td>
174)         <td>User Interface</td>
175)         <td>Java</td>
Damian Johnson Restoring r25975, minus stu...

Damian Johnson authored 11 years ago

176)         <td>Light</td>
Damian Johnson Adjusting the volunteer pro...

Damian Johnson authored 11 years ago

177)         <td>n8fr8</td>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

178)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

179) 
Damian Johnson Adding JTor back to the vol...

Damian Johnson authored 11 years ago

180)       <tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

181)         <td><a href="#project-tails">Tails</a></td>
182)         <td>OS image</td>
183)         <td>Sys Admin</td>
184)         <td>Heavy</td>
185)         <td><a href="https://tails.boum.org/">#tails</a></td>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

186)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

187) 
Damian Johnson Using a better method to st...

Damian Johnson authored 10 years ago

188)       <tr>
Peter Palfrader Revert "Projects Table Revi...

Peter Palfrader authored 11 years ago

189)         <td><a href="#project-torramdisk">tor-ramdisk</a></td>
190)         <td>OS image</td>
191)         <td>Sys Admin</td>
192)         <td>Light</td>
193)         <td>blueness</td>
194)       </tr>
195) 
Damian Johnson Adding JTor back to the vol...

Damian Johnson authored 11 years ago

196)       <tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

197)         <td>*<a href="#project-torouter">Torouter</a></td>
198)         <td>OS image</td>
199)         <td>Sys Admin</td>
Damian Johnson Restoring r25975, minus stu...

Damian Johnson authored 11 years ago

200)         <td>None</td>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

201)         <td>ioerror</td>
202)       </tr>
203) 
Damian Johnson Using a better method to st...

Damian Johnson authored 10 years ago

204)       <tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

205)         <td><a href="#project-torsocks">Torsocks</a></td>
206)         <td>Usability</td>
207)         <td>C</td>
Damian Johnson Adjusting the volunteer pro...

Damian Johnson authored 11 years ago

208)         <td>Light</td>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

209)         <td>ioerror, nickm</td>
210)       </tr>
211) 
Damian Johnson Adding JTor back to the vol...

Damian Johnson authored 11 years ago

212)       <tr>
Damian Johnson Adding TorBirdy to the proj...

Damian Johnson authored 11 years ago

213)         <td><a href="#project-torbirdy">TorBirdy</a></td>
214)         <td>Browser Add-on</td>
215)         <td>JavaScript</td>
216)         <td>Heavy</td>
217)         <td>Sukhbir (sukhe), ioerror</td>
218)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

219) 
Damian Johnson Using a better method to st...

Damian Johnson authored 10 years ago

220)       <tr>
Damian Johnson Adding obfsproxy to the vol...

Damian Johnson authored 12 years ago

221)         <td><a href="#project-obfsproxy">Obfsproxy</a></td>
222)         <td>Client Add-on</td>
Damian Johnson Restoring r25975, minus stu...

Damian Johnson authored 11 years ago

223)         <td>C, Python</td>
224)         <td>Moderate</td>
225)         <td>asn, nickm</td>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

226)       </tr>
227) 
Damian Johnson Adding JTor back to the vol...

Damian Johnson authored 11 years ago

228)       <tr>
Damian Johnson Adding Flash Proxy to the p...

Damian Johnson authored 11 years ago

229)         <td><a href="#project-flash-proxy">Flash Proxy</a></td>
230)         <td>Client Add-on</td>
231)         <td>Python, JavaScript, Go</td>
Damian Johnson Restoring r25975, minus stu...

Damian Johnson authored 11 years ago

232)         <td>Heavy</td>
Damian Johnson Adding Flash Proxy to the p...

Damian Johnson authored 11 years ago

233)         <td>dcf, aallai, jct</td>
234)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

235) 
Damian Johnson Using a better method to st...

Damian Johnson authored 10 years ago

236)       <tr>
Damian Johnson Volunteer page entry for Sh...

Damian Johnson authored 12 years ago

237)         <td><a href="#project-shadow">Shadow</a></td>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

238)         <td>Simulator</td>
Damian Johnson Volunteer page entry for Sh...

Damian Johnson authored 12 years ago

239)         <td>C, Python</td>
Damian Johnson Restoring r25975, minus stu...

Damian Johnson authored 11 years ago

240)         <td>Heavy</td>
Damian Johnson Volunteer page entry for Sh...

Damian Johnson authored 12 years ago

241)         <td>robgjansen</td>
242)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

243) 
Damian Johnson Dropping thandy from the vo...

Damian Johnson authored 10 years ago

244)       <tr>
Damian Johnson Dropping alpha flag from stem

Damian Johnson authored 11 years ago

245)         <td><a href="#project-stem">Stem</a></td>
Damian Johnson Adding stem to volunteer ta...

Damian Johnson authored 12 years ago

246)         <td>Library</td>
247)         <td>Python</td>
248)         <td>Heavy</td>
Damian Johnson Adjusting the volunteer pro...

Damian Johnson authored 11 years ago

249)         <td>atagar</td>
Damian Johnson Adding stem to volunteer ta...

Damian Johnson authored 12 years ago

250)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

251) 
Damian Johnson Using a better method to st...

Damian Johnson authored 10 years ago

252)       <tr>
Damian Johnson Adding Txtorcon to the volu...

Damian Johnson authored 11 years ago

253)         <td><a href="#project-txtorcon">Txtorcon</a></td>
254)         <td>Library</td>
255)         <td>Python, Twisted</td>
Damian Johnson Restoring r25975, minus stu...

Damian Johnson authored 11 years ago

256)         <td>Heavy</td>
Damian Johnson Adding Txtorcon to the volu...

Damian Johnson authored 11 years ago

257)         <td>meejah</td>
258)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

259) 
Damian Johnson Dropping thandy from the vo...

Damian Johnson authored 10 years ago

260)       <tr>
Damian Johnson Adding tlsdate to the volun...

Damian Johnson authored 11 years ago

261)         <td><a href="#project-tlsdate">Tlsdate</a></td>
262)         <td>Utility</td>
263)         <td>C</td>
Damian Johnson Adjusting the volunteer pro...

Damian Johnson authored 11 years ago

264)         <td>Moderate</td>
Damian Johnson Adding tlsdate to the volun...

Damian Johnson authored 11 years ago

265)         <td>ioerror</td>
266)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

267) 
Damian Johnson Using a better method to st...

Damian Johnson authored 10 years ago

268)       <tr>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

269)         <td><a href="#project-metrics">Metrics</a></td>
270)         <td>Client Service</td>
271)         <td>Java</td>
272)         <td>Heavy</td>
273)         <td>karsten</td>
274)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

275) 
Damian Johnson Dropping thandy from the vo...

Damian Johnson authored 10 years ago

276)       <tr>
Damian Johnson Adding Atlas and Onionoo to...

Damian Johnson authored 12 years ago

277)         <td><a href="#project-atlas">Atlas</a></td>
278)         <td>Client Service</td>
279)         <td>JavaScript</td>
Damian Johnson Restoring r25975, minus stu...

Damian Johnson authored 11 years ago

280)         <td>Light</td>
Damian Johnson Adjusting the volunteer pro...

Damian Johnson authored 11 years ago

281)         <td>hellais, karsten</td>
Damian Johnson Adding Atlas and Onionoo to...

Damian Johnson authored 12 years ago

282)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

283) 
Damian Johnson Adding Globe to the volunte...

Damian Johnson authored 10 years ago

284)       <tr>
285)         <td><a href="#project-globe">Globe</a></td>
286)         <td>Client Service</td>
287)         <td>JavaScript</td>
288)         <td>Heavy</td>
289)         <td>Christian</td>
290)       </tr>
291) 
Damian Johnson Dropping thandy from the vo...

Damian Johnson authored 10 years ago

292)       <tr>
Damian Johnson Adding Compass and Pyoninoo...

Damian Johnson authored 11 years ago

293)         <td><a href="#project-compass">Compass</a></td>
294)         <td>Client Service</td>
295)         <td>Python</td>
Damian Johnson Restoring r25975, minus stu...

Damian Johnson authored 11 years ago

296)         <td>Light</td>
Damian Johnson Adjusting the volunteer pro...

Damian Johnson authored 11 years ago

297)         <td>gsathya, karsten, cwacek</td>
Damian Johnson Adding Compass and Pyoninoo...

Damian Johnson authored 11 years ago

298)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

299) 
Damian Johnson Using a better method to st...

Damian Johnson authored 10 years ago

300)       <tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

301)         <td><a href="#project-onionoo">Onionoo</a></td>
302)         <td>Backend Service</td>
303)         <td>Java, Python</td>
Damian Johnson Adjusting the volunteer pro...

Damian Johnson authored 11 years ago

304)         <td>Light</td>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

305)         <td>karsten, gsathya</td>
306)       </tr>
307) 
Damian Johnson Dropping thandy from the vo...

Damian Johnson authored 10 years ago

308)       <tr>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

309)         <td><a href="#project-weather">Weather</a></td>
310)         <td>Client Service</td>
311)         <td>Python</td>
Damian Johnson Adding stem to volunteer ta...

Damian Johnson authored 12 years ago

312)         <td>None</td>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

313)         <td>kaner</td>
314)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

315) 
Damian Johnson Using a better method to st...

Damian Johnson authored 10 years ago

316)       <tr>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

317)         <td><a href="#project-gettor">GetTor</a></td>
318)         <td>Client Service</td>
319)         <td>Python</td>
Damian Johnson Adding stem to volunteer ta...

Damian Johnson authored 12 years ago

320)         <td>None</td>
Damian Johnson Modifications for the proje...

Damian Johnson authored 13 years ago

321)         <td>kaner</td>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

322)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

323) 
Damian Johnson Dropping thandy from the vo...

Damian Johnson authored 10 years ago

324)       <tr>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

325)         <td><a href="#project-torcheck">TorCheck</a></td>
326)         <td>Client Service</td>
327)         <td>Python, Perl</td>
328)         <td>None</td>
Damian Johnson Project table changes reque...

Damian Johnson authored 11 years ago

329)         <td>ioerror</td>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

330)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

331) 
Damian Johnson Using a better method to st...

Damian Johnson authored 10 years ago

332)       <tr>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

333)         <td><a href="#project-bridgedb">BridgeDB</a></td>
334)         <td>Backend Service</td>
335)         <td>Python</td>
Damian Johnson Adding stem to volunteer ta...

Damian Johnson authored 12 years ago

336)         <td>None</td>
Damian Johnson Modifications for the proje...

Damian Johnson authored 13 years ago

337)         <td>kaner, nickm</td>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

338)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

339) 
Damian Johnson Dropping thandy from the vo...

Damian Johnson authored 10 years ago

340)       <tr>
Damian Johnson Restoring r25975, minus stu...

Damian Johnson authored 11 years ago

341)         <td><a href="#project-ooni-probe">Ooni Probe</a></td>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

342)         <td>Scanner</td>
343)         <td>Python</td>
Damian Johnson Restoring r25975, minus stu...

Damian Johnson authored 11 years ago

344)         <td>Heavy</td>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

345)         <td>hellais, isis, ioerror</td>
346)       </tr>
347) 
Damian Johnson Using a better method to st...

Damian Johnson authored 10 years ago

348)       <tr>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

349)         <td><a href="#project-torflow">TorFlow</a></td>
350)         <td>Backend Service</td>
351)         <td>Python</td>
Damian Johnson Few minor tweaks for the vo...

Damian Johnson authored 11 years ago

352)         <td>None</td>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

353)         <td>aagbsn, mikeperry</td>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

354)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

355) 
Damian Johnson Dropping thandy from the vo...

Damian Johnson authored 10 years ago

356)       <tr>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

357)         <td>*<a href="#project-torbel">TorBEL</a></td>
358)         <td>Backend Service</td>
359)         <td>Python</td>
360)         <td>None</td>
361)         <td>Sebastian</td>
362)       </tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

363) 
Damian Johnson Using a better method to st...

Damian Johnson authored 10 years ago

364)       <tr>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

365)         <td><a href="#project-tor2web">Tor2web</a></td>
366)         <td>Client Service</td>
Roger Dingledine add in my fixes from earlier

Roger Dingledine authored 11 years ago

367)         <td>Python</td>
Damian Johnson Adjusting the volunteer pro...

Damian Johnson authored 11 years ago

368)         <td>Moderate</td>
Roger Dingledine add in my fixes from earlier

Roger Dingledine authored 11 years ago

369)         <td>hellais</td>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

370)       </tr>
Peter Palfrader Revert "Projects Table Revi...

Peter Palfrader authored 11 years ago

371) 
Damian Johnson Dropping thandy from the vo...

Damian Johnson authored 10 years ago

372)       <tr>
Peter Palfrader Revert "Projects Table Revi...

Peter Palfrader authored 11 years ago

373)         <td><a href="#project-anonbib">Anonbib</a></td>
374)         <td>Website</td>
Roger Dingledine add in my fixes from earlier

Roger Dingledine authored 11 years ago

375)         <td>Python</td>
Peter Palfrader Revert "Projects Table Revi...

Peter Palfrader authored 11 years ago

376)         <td>Light</td>
377)         <td>arma, nickm</td>
378)       </tr>
379) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

380)     </table>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

381) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

382)     <sub>
383)     * Project is still in an alpha state.
384)     </sub>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

385) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

386)     <br /><br />
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

387) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

388)     <a id="project-tor"></a>
389)     <h3>Tor (<a href="https://gitweb.torproject.org/tor.git">code</a>, <a
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

390)     href="https://trac.torproject.org/projects/tor/report/12">bug
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

391)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

392) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

393)     <p>
394)     Central project, providing the core software for using and participating in
395)     the Tor network. Numerous people contribute to the project to varying
396)     extents, but the chief architects are Nick Mathewson and Roger Dingledine.
397)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

398) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

399)     <p>
400)     <b>Project Ideas:</b><br />
Damian Johnson Adding revised tor project...

Damian Johnson authored 11 years ago

401)     <i><a href="#limitCapabilities">Run With Limited Capabilities</a></i><br />
402)     <i><a href="#torCleanup">Tor Codebase Cleanup</a></i><br />
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

403)     <i><a href="#httpsImpersonation">HTTPS Server Impersonation</a></i><br />
Damian Johnson Adding revised tor project...

Damian Johnson authored 11 years ago

404)     <i><a href="#chutneyExpansion">Make Chutney Do More, More Reliably</a></i>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

405)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

406) 
Damian Johnson Modifications for the proje...

Damian Johnson authored 13 years ago

407)     <a id="project-jtor"></a>
408)     <h3><a href="https://github.com/brl/JTor/wiki">JTor</a> (<a
Roger Dingledine better url for jtor

Roger Dingledine authored 11 years ago

409)     href="https://gitweb.torproject.org/jtor.git">code</a>, <a
Damian Johnson Modifications for the proje...

Damian Johnson authored 13 years ago

410)     href="https://github.com/brl/JTor/issues">bug
411)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

412) 
Damian Johnson Modifications for the proje...

Damian Johnson authored 13 years ago

413)     <p>
414)     Java implementation of Tor and successor to <a
415)     href="http://onioncoffee.sourceforge.net/">OnionCoffee</a>. This project
416)     isn't yet complete, and has been inactive since Fall 2010.
417)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

418) 
Damian Johnson Merging TBB and TorBrowser...

Damian Johnson authored 11 years ago

419)     <a id="project-torbrowser"></a>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

420)     <h3><a href="<page projects/torbrowser>">Tor Browser Bundle</a> (<a
421)     href="https://gitweb.torproject.org/torbrowser.git">code</a>, <a
422)     href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_review&status=new&status=reopened&component=Tor+bundles/installation&order=priority">bug
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

423)     tracker</a>, <a href="https://www.torproject.org/projects/torbrowser/design/">design doc</a>)</h3>
424) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

425)     <p>
426)     The Tor Browser Bundle is an easy-to-use portable package of Tor, Vidalia,
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

427)     Torbutton, and a Firefox fork preconfigured to work together out of
Damian Johnson Merging TBB and TorBrowser...

Damian Johnson authored 11 years ago

428)     the box. It contains a modified copy of Firefox that aims to resolve the
429)     privacy and security issues in mainline version.
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

430)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

431) 
432)     <a id="project-torbutton"></a>
433)     <h3><a href="<page torbutton/index>">Torbutton</a> (<a
434)     href="https://gitweb.torproject.org/torbutton.git">code</a>, <a
435)     href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_review&status=new&status=reopened&component=Torbutton&order=priority">bug
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

436)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

437) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

438)     <p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

439)     Firefox addon that addresses many of the client-side threats to browsing
440)     the Internet anonymously. Mike has since continued to adapt it to new
441)     threats, updated versions of Firefox, and possibly <a
442)     href="https://blog.torproject.org/blog/google-chrome-incognito-mode-tor-and-fingerprinting">Chrome
443)     as well</a>.
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

444)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

445) 
446)     <a id="project-httpseverywhere"></a>
447)     <h3><a href="https://www.eff.org/https-everywhere">HTTPS Everywhere</a> (<a
448)     href="https://gitweb.torproject.org/https-everywhere.git">code</a>, <a
449)     href="https://trac.torproject.org/projects/tor/report/19">bug
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

450)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

451) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

452)     <p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

453)     HTTPS Everywhere is a Firefox and Chrome extension that encrypts
454)     your communications with many major websites, making your browsing
455)     more secure.
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

456)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

457) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

458)     <a id="project-vidalia"></a>
459)     <h3><a href="<page projects/vidalia>">Vidalia</a> (<a
Damian Johnson Several projects have moved...

Damian Johnson authored 12 years ago

460)     href="https://gitweb.torproject.org/vidalia.git">code</a>, <a
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

461)     href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_review&status=new&status=reopened&component=Vidalia&order=priority">bug
462)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

463) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

464)     <p>
465)     The most commonly used user interface for Tor. Matt Edman started the
466)     project in 2006 and brought it to its current stable state. Development
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

467)     slowed for several years, though Tomás Touceda has since taken the
468)     lead with pushing the project forward.
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

469)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

470) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

471)     <a id="project-arm"></a>
472)     <h3><a href="http://www.atagar.com/arm/">Arm</a> (<a
Damian Johnson Several projects have moved...

Damian Johnson authored 12 years ago

473)     href="https://gitweb.torproject.org/arm.git">code</a>, <a
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

474)     href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_review&status=new&status=reopened&component=arm&order=priority">bug
475)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

476) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

477)     <p>
Peter Palfrader Use atagar's new text for arm

Peter Palfrader authored 11 years ago

478)     The anonymizing relay monitor (arm) is a terminal status monitor for Tor,
479)     intended for command-line aficionados, ssh connections, and anyone with a
480)     tty terminal. This works much like top does for system usage, providing
481)     real time statistics for bandwidth, resource usage, connections, and quite
482)     a bit more.
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

483)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

484) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

485)     <a id="project-orbot"></a>
486)     <h3><a href="https://guardianproject.info/apps/orbot/">Orbot</a> (<a
Damian Johnson Several projects have moved...

Damian Johnson authored 12 years ago

487)     href="https://gitweb.torproject.org/orbot.git">code</a>, <a
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

488)     href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_review&status=new&status=reopened&component=Orbot&order=priority">bug
489)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

490) 
491)     <p>
492)     Provides Tor on the Android platform. This was under very active
493)     development up through Fall 2010, after which things have been quiet.
494)     </p>
495) 
496)     <a id="project-tails"></a>
497)     <h3><a href="https://tails.boum.org/">The Amnesic Incognito Live System</a> (<a
498)     href="http://git.immerda.ch/?p=amnesia.git;a=summary">code</a>, <a
499)     href="https://tails.boum.org/bugs/">bug
500)     tracker</a>)</h3>
501) 
502)     <p>
503)     The Amnesic Incognito Live System is a live CD/USB distribution
504)     preconfigured so that everything is safely routed through Tor and leaves no
505)     trace on the local system. This is a merger of the Amnesia and <a
506)     href="http://www.anonymityanywhere.com/incognito/">Incognito</a> projects,
507)     and still under very active development.
508)     </p>
509) 
Peter Palfrader Revert "Projects Table Revi...

Peter Palfrader authored 11 years ago

510)     <a id="project-torramdisk"></a>
511)     <h3><a href="http://opensource.dyc.edu/tor-ramdisk">Tor-ramdisk</a> (<a
Roger Dingledine details on tor-ramdisk

Roger Dingledine authored 11 years ago

512)     href="http://opensource.dyc.edu/gitweb/?p=tor-ramdisk.git;a=summary">code</a>, <a
513)     href="http://opensource.dyc.edu/tor-ramdisk-documentation">documentation</a>)</h3>
Peter Palfrader Revert "Projects Table Revi...

Peter Palfrader authored 11 years ago

514) 
515)     <p>
Roger Dingledine details on tor-ramdisk

Roger Dingledine authored 11 years ago

516)     Tor-ramdisk is a uClibc-based micro Linux distribution whose sole
517)     purpose is to securely host a Tor server purely in RAM.
Peter Palfrader Revert "Projects Table Revi...

Peter Palfrader authored 11 years ago

518)     </p>
519) 
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

520)     <a id="project-torouter"></a>
521)     <h3><a
522)     href="<wiki>doc/Torouter">Torouter</a> (<a
Damian Johnson Restoring r25975, minus stu...

Damian Johnson authored 11 years ago

523)     href="https://gitweb.torproject.org/torouter.git">code</a>, <a
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

524)     href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_review&status=new&status=reopened&component=Torouter&order=priority">bug
525)     tracker</a>)</h3>
526) 
527)     <p>
528)     Project to provide an easy-to-use, embedded Tor instance for routers. This
529)     had high activity in late 2010, but has since been rather quiet.
530)     </p>
531) 
532)     <a id="project-torsocks"></a>
Roger Dingledine stop linking to google code...

Roger Dingledine authored 11 years ago

533)     <h3>Torsocks (<a
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

534)     href="https://gitweb.torproject.org/torsocks.git">code</a>, <a
535)     href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_review&status=new&status=reopened&component=Torify&order=priority">bug
536)     tracker</a>)</h3>
537) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

538)     <p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

539)     Utility for adapting other applications to work with Tor. Development has
540)     slowed and compatibility issues remain with some platforms, but it's
541)     otherwise feature complete.
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

542)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

543) 
Damian Johnson Adding TorBirdy to the proj...

Damian Johnson authored 11 years ago

544)     <a id="project-torbirdy"></a>
545)     <h3>TorBirdy (<a
546)     href="https://github.com/ioerror/torbirdy">code</a>, <a
547)     href="https://trac.torproject.org/projects/tor/wiki/torbirdy/dev">bug
548)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

549) 
Damian Johnson Adding TorBirdy to the proj...

Damian Johnson authored 11 years ago

550)     <p>
551)     TorBirdy is Torbutton for Thunderbird and related Mozilla mail clients.
552)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

553) 
Damian Johnson Adding obfsproxy to the vol...

Damian Johnson authored 12 years ago

554)     <a id="project-obfsproxy"></a>
Roger Dingledine the beginnings of a volunte...

Roger Dingledine authored 11 years ago

555)     <h3><a href="<page projects/obfsproxy>">Obfsproxy</a> (<a
Damian Johnson Restoring r25975, minus stu...

Damian Johnson authored 11 years ago

556)     href="https://gitweb.torproject.org/obfsproxy.git">C codebase</a>, <a
557)     href="https://gitweb.torproject.org/user/asn/pyobfsproxy.git">python
558)     codebase</a>, <a
Damian Johnson Adding obfsproxy to the vol...

Damian Johnson authored 12 years ago

559)     href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_review&status=new&status=reopened&component=Pluggable+transport&order=priority">bug
560)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

561) 
Damian Johnson Adding obfsproxy to the vol...

Damian Johnson authored 12 years ago

562)     <p>
563)     A proxy that shapes Tor traffic, making it harder for censors to detect and
Damian Johnson Restoring r25975, minus stu...

Damian Johnson authored 11 years ago

564)     block Tor. This has both a C and python implementation.
Damian Johnson Adding obfsproxy to the vol...

Damian Johnson authored 12 years ago

565)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

566) 
Damian Johnson Couple more GSoC projects f...

Damian Johnson authored 11 years ago

567)     <p>
568)     <b>Project Ideas:</b><br />
569)     <i><a href="#betterPluggableTransports">Build Better Pluggable Transports</a></i>
570)     </p>
571) 
Damian Johnson Adding Flash Proxy to the p...

Damian Johnson authored 11 years ago

572)     <a id="project-flash-proxy"></a>
573)     <h3><a href="https://crypto.stanford.edu/flashproxy/">Flash Proxy</a> (<a
574)     href="https://gitweb.torproject.org/flashproxy.git">code</a>, <a
575)     href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_information&status=needs_review&status=needs_revision&status=new&status=reopened&component=Flashproxy">bug
576)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

577) 
Damian Johnson Adding Flash Proxy to the p...

Damian Johnson authored 11 years ago

578)     <p>
579)     Pluggable transport using proxies running in web browsers to defeat
580)     address-based blocking.
581)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

582) 
Damian Johnson Volunteer page entry for Sh...

Damian Johnson authored 12 years ago

583)     <a id="project-shadow"></a>
584)     <h3><a href="https://shadow.cs.umn.edu/">Shadow</a> (<a
585)     href="https://github.com/shadow">code</a>, <a
586)     href="https://github.com/shadow/shadow/issues">bug
587)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

588) 
Damian Johnson Volunteer page entry for Sh...

Damian Johnson authored 12 years ago

589)     <p>
590)     Shadow is a discrete-event network simulator that runs the real
591)     Tor software as a plug-in. Shadow is open-source software that enables
592)     accurate, efficient, controlled, and repeatable Tor experimentation.
Roger Dingledine work experimentor and torpe...

Roger Dingledine authored 11 years ago

593)     For another simulator, see <a
594)     href="http://crysp.uwaterloo.ca/software/exptor/">ExperimenTor</a>.
Damian Johnson Volunteer page entry for Sh...

Damian Johnson authored 12 years ago

595)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

596) 
Damian Johnson Adding stem to volunteer ta...

Damian Johnson authored 12 years ago

597)     <a id="project-stem"></a>
Damian Johnson Updating stem's url

Damian Johnson authored 11 years ago

598)     <h3><a href="https://stem.torproject.org/">Stem</a> (<a
Damian Johnson Adding stem to volunteer ta...

Damian Johnson authored 12 years ago

599)     href="https://gitweb.torproject.org/stem.git">code</a>, <a
Damian Johnson Adding stem to the projects...

Damian Johnson authored 11 years ago

600)     href="https://trac.torproject.org/projects/tor/wiki/doc/stem/bugs">bug
Damian Johnson Adding stem to volunteer ta...

Damian Johnson authored 12 years ago

601)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

602) 
Damian Johnson Adding stem to volunteer ta...

Damian Johnson authored 12 years ago

603)     <p>
Damian Johnson Dropping TorCtl from the pr...

Damian Johnson authored 11 years ago

604)     Python controller library for scripts and controller applications using
605)     Tor.
Damian Johnson Adding stem to volunteer ta...

Damian Johnson authored 12 years ago

606)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

607) 
Damian Johnson Stem PathSupport project idea

Damian Johnson authored 12 years ago

608)     <p>
609)     <b>Project Ideas:</b><br />
Damian Johnson Adding a project for cross...

Damian Johnson authored 11 years ago

610)     <i><a href="#txtorcon-stemIntegration">Txtorcon/Stem Integration</a></i><br />
Damian Johnson Adding a project idea for r...

Damian Johnson authored 11 years ago

611)     <i><a href="#metrics-pyDoctor">PyDoctor</a></i><br />
Damian Johnson Adding a project to expand...

Damian Johnson authored 11 years ago

612)     <i><a href="#stemUsability">Stem Usability and Porting</a></i><br />
613)     <i><a href="#stemTestingForTor">Stem Tests for Tor</a></i>
Damian Johnson Stem PathSupport project idea

Damian Johnson authored 12 years ago

614)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

615) 
Damian Johnson Adding Txtorcon to the volu...

Damian Johnson authored 11 years ago

616)     <a id="project-txtorcon"></a>
617)     <h3>Txtorcon (<a
618)     href="https://github.com/meejah/txtorcon">code</a>, <a
619)     href="https://txtorcon.readthedocs.org">docs</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

620) 
Damian Johnson Adding Txtorcon to the volu...

Damian Johnson authored 11 years ago

621)     <p>
622)     Twisted-based asynchronous Tor control protocol implementation. Includes
623)     unit-tests, examples, state-tracking code and configuration abstraction.
624)     Used by OONI and APAF.
625)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

626) 
Damian Johnson Adding a project for cross...

Damian Johnson authored 11 years ago

627)     <p>
628)     <b>Project Ideas:</b><br />
629)     <i><a href="#txtorcon-stemIntegration">Txtorcon/Stem Integration</a></i>
630)     </p>
631) 
Damian Johnson Adding tlsdate to the volun...

Damian Johnson authored 11 years ago

632)     <a id="project-tlsdate"></a>
633)     <h3>Tlsdate (<a href="https://github.com/ioerror/tlsdate">code</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

634) 
Damian Johnson Adding tlsdate to the volun...

Damian Johnson authored 11 years ago

635)     <p>
636)     tlsdate: secure parasitic rdate replacement
637)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

638) 
Damian Johnson Adding tlsdate to the volun...

Damian Johnson authored 11 years ago

639)     <p>
640)     tlsdate sets the local clock by securely connecting with TLS to remote
641)     servers and extracting the remote time out of the secure handshake. Unlike
642)     ntpdate, tlsdate uses TCP, for instance connecting to a remote HTTPS or TLS
643)     enabled service, and provides some protection against adversaries that try
644)     to feed you malicious time information.
645)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

646) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

647)     <a id="project-metrics"></a>
648)     <h3><a href="https://metrics.torproject.org/">Metrics</a> (code: <a
649)     href="https://gitweb.torproject.org/metrics-db.git">db</a>, <a
650)     href="https://gitweb.torproject.org/metrics-utils.git">utils</a>, <a
651)     href="https://gitweb.torproject.org/metrics-web.git">web</a>, <a
652)     href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_review&status=new&status=reopened&component=Metrics&order=priority">bug
653)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

654) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

655)     <p>
656)     Processing and analytics of consensus data, provided to users via the
657)     metrics portal. This has been under active development for several years by
Roger Dingledine work experimentor and torpe...

Roger Dingledine authored 11 years ago

658)     Karsten Loesing. See also <a
659)     href="https://gitweb.torproject.org/torperf.git">TorPerf</a>.
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

660)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

661) 
Damian Johnson Adding Karsten's metrics pr...

Damian Johnson authored 12 years ago

662)     <p>
663)     <b>Project Ideas:</b><br />
Damian Johnson Adding a project idea for r...

Damian Johnson authored 11 years ago

664)     <i><a href="#metrics-pyDoctor">PyDoctor</a></i><br />
Damian Johnson Adding Karsten's metrics pr...

Damian Johnson authored 12 years ago

665)     <i><a href="#metricsSearch">Searchable Tor descriptor and Metrics data archive</a></i> (Python/Django?)
666)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

667) 
Damian Johnson Adding Atlas and Onionoo to...

Damian Johnson authored 12 years ago

668)     <a id="project-atlas"></a>
669)     <h3><a href="https://atlas.torproject.org/">Atlas</a> (<a
670)     href="https://gitweb.torproject.org/atlas.git">code</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

671) 
Damian Johnson Adding Atlas and Onionoo to...

Damian Johnson authored 12 years ago

672)     <p>
673)     Atlas is a web application to discover Tor relays and bridges. It provides
674)     useful information on how relays are configured along with graphics about
Damian Johnson Removing TorStatus from the...

Damian Johnson authored 10 years ago

675)     their past usage.
Damian Johnson Adding Atlas and Onionoo to...

Damian Johnson authored 12 years ago

676)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

677) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

678)     <p>
Damian Johnson Removing TorStatus from the...

Damian Johnson authored 10 years ago

679)     This is the spiritual successor to <a
680)     href="https://gitweb.torproject.org/torstatus.git">TorStatus</a>, the <a
Damian Johnson Noting the django torstatus...

Damian Johnson authored 12 years ago

681)     href="https://svn.torproject.org/svn/torstatus/trunk/">original
Damian Johnson Removing TorStatus from the...

Damian Johnson authored 10 years ago

682)     codebase</a> for which was written in PHP, and rewritten by students from
683)     Wesleyan as Django.
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

684)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

685) 
Damian Johnson Adding Globe to the volunte...

Damian Johnson authored 10 years ago

686)     <a id="project-globe"></a>
687)     <h3><a href="http://globe.rndm.de/">Globe</a> (<a
688)     href="https://github.com/makepanic/globe">code</a>, <a
689)     href="https://github.com/makepanic/globe/issues">bug tracker</a>)</h3>
690) 
691)     <p>
692)     Globe is a web application that allows you to search for Tor relays and
693)     bridges. It gives you a detailed overview of properties and configurations
694)     of a relay or bridge.
695)     </p>
696) 
Damian Johnson Adding Compass and Pyoninoo...

Damian Johnson authored 11 years ago

697)     <a id="project-compass"></a>
698)     <h3><a href="https://compass.torproject.org/">Compass</a> (<a
699)     href="https://gitweb.torproject.org/compass.git">code</a>, <a
700)     href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_review&status=new&status=reopened&component=Compass&order=priority">bug
701)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

702) 
Damian Johnson Adding Compass and Pyoninoo...

Damian Johnson authored 11 years ago

703)     <p>
704)     Compass is a web and command line application that filters and
705)     aggregates the Tor relays based on various attributes.
706)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

707) 
708)     <a id="project-onionoo"></a>
709)     <h3><a href="<page projects/onionoo>">Onionoo</a> (<a
710)     href="https://gitweb.torproject.org/onionoo.git">java codebase</a>, <a
711)     href="https://gitweb.torproject.org/pyonionoo.git">python
Damian Johnson Restoring r25975, minus stu...

Damian Johnson authored 11 years ago

712)     codebase</a>, <a href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_review&status=new&status=reopened&component=Onionoo&order=priority">bug tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

713) 
714)     <p>
715)     Onionoo is a JSON based protocol to learn information about currently
716)     running Tor relays and bridges.
717)     </p>
718) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

719)     <a id="project-weather"></a>
Damian Johnson Fixing volunteer page links...

Damian Johnson authored 12 years ago

720)     <h3><a href="https://trac.torproject.org/projects/tor/wiki/org/roadmaps/Weather">Weather</a> (<a
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

721)     href="https://gitweb.torproject.org/weather.git">code</a>, <a
722)     href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_review&status=new&status=reopened&component=Tor+Weather&order=priority">bug
723)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

724) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

725)     <p>
726)     Provides automatic notification to subscribed relay operators when their
727)     relay's unreachable. This underwent a rewrite by the <a
728)     href="http://hfoss.wesleyan.edu/">Wesleyan HFOSS team</a>, which went live
729)     in early 2011.
730)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

731) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

732)     <a id="project-gettor"></a>
Damian Johnson Fixing volunteer page links...

Damian Johnson authored 12 years ago

733)     <h3><a href="https://trac.torproject.org/projects/tor/wiki/org/roadmaps/GetTor">GetTor</a> (<a
Damian Johnson Several projects have moved...

Damian Johnson authored 12 years ago

734)     href="https://gitweb.torproject.org/gettor.git">code</a>, <a
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

735)     href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_review&status=new&status=reopened&component=GetTor&order=priority">bug
736)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

737) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

738)     <p>
739)     E-mail autoresponder providing Tor's packages over SMTP. This has been
740)     relatively unchanged for quite a while.
741)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

742) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

743)     <a id="project-torcheck"></a>
Damian Johnson Fixing volunteer page links...

Damian Johnson authored 12 years ago

744)     <h3><a href="https://trac.torproject.org/projects/tor/wiki/org/roadmaps/TorCheck">TorCheck</a> (<a
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

745)     href="https://svn.torproject.org/svn/check/trunk/">code</a>, <a
746)     href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_review&status=new&status=reopened&component=Tor+Check&order=priority">bug
747)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

748) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

749)     <p>
750)     Provides a simple site for determining if the visitor is using Tor or not.
751)     This has been relatively unchanged for quite a while.
752)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

753) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

754)     <a id="project-bridgedb"></a>
Damian Johnson Fixing volunteer page links...

Damian Johnson authored 12 years ago

755)     <h3><a href="https://trac.torproject.org/projects/tor/wiki/org/roadmaps/BridgeDB">BridgeDB</a> (<a
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

756)     href="https://gitweb.torproject.org/bridgedb.git">code</a>, <a
757)     href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_review&status=new&status=reopened&component=BridgeDB&order=priority">bug
758)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

759) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

760)     <p>
761)     Backend bridge distributor, handling the various pools they're distributed
762)     in. This was actively developed until Fall of 2010.
763)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

764) 
765)     <a id="project-ooni-probe"></a>
Damian Johnson Linking to Ooni Probe's sit...

Damian Johnson authored 11 years ago

766)     <h3><a href="https://ooni.torproject.org/">Ooni Probe</a> (<a
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

767)     href="https://gitweb.torproject.org/ooni-probe.git">code</a>, <a
768)     href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_review&status=new&status=reopened&component=Ooni&order=priority">bug
769)     tracker</a>)</h3>
770) 
771)     <p>
772)     Censorship scanner, checking your local connection for blocked or modified
773)     content.
774)     </p>
775) 
Damian Johnson Adding Ooni Probe simulator...

Damian Johnson authored 11 years ago

776)     <p>
777)     <b>Project Ideas:</b><br />
778)     <i><a href="#ooniprobeSimulator">Create an Internet Censorship Virtual Machine Based Simulator</a></i>
779)     </p>
780) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

781)     <a id="project-torflow"></a>
Damian Johnson Fixing volunteer page links...

Damian Johnson authored 12 years ago

782)     <h3><a href="https://trac.torproject.org/projects/tor/wiki/org/roadmaps/TorFlow">TorFlow</a> (<a
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

783)     href="https://gitweb.torproject.org/torflow.git">code</a>, <a
784)     href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_review&status=new&status=reopened&component=Torflow&order=priority">bug
785)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

786) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

787)     <p>
788)     Library and collection of services for actively monitoring the Tor network.
789)     These include the Bandwidth Scanners (measuring throughput of relays) and
790)     SoaT (scans for malicious or misconfigured exit nodes). SoaT was last
791)     actively developed in the Summer of 2010, and the Bandwidth Scanners a few
792)     months later. Both have been under active use since then, but development
793)     has stopped.
794)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

795) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

796)     <a id="project-torbel"></a>
797)     <h3><a
Sebastian Hahn Update links for torbel on...

Sebastian Hahn authored 12 years ago

798)     href="https://blog.torproject.org/blog/torbel-tor-bulk-exit-list-tools">TorBEL</a> (<a
799)     href="https://gitweb.torproject.org/torbel.git">code</a>, <a
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

800)     href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_review&status=new&status=reopened&component=TorDNSEL/TorBEL&order=priority">bug
801)     tracker</a>)</h3>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

802) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

803)     <p>
804)     The Tor Bulk Exitlist provides a method of identifying if IPs belong to
805)     exit nodes or not. This is a replacement for TorDNSEL which is a stable
806)     (though unmaintained) Haskell application for this purpose. The initial
807)     version of TorBEL was started in GSOC 2010 but since then the project has
808)     been inactive.
809)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

810) 
Damian Johnson Expanding project idea to i...

Damian Johnson authored 11 years ago

811)     <p>
812)     <b>Project Ideas:</b><br />
813)     <i><a href="#stemUsability">Stem Usability and Porting (this includes an idea for finishing off TorBEL)</a></i>
814)     </p>
815) 
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

816)     <a id="project-tor2web"></a>
817)     <h3><a
818)     href="http://wiki.tor2web.org/index.php/Main_Page">Tor2web</a> (<a
819)     href="https://github.com/globaleaks/tor2web-3.0/wiki">code</a>)</h3>
820) 
821)     <p>
822)     Tor2web allows Internet users to browse websites running in <a
823)     href="<page docs/hidden-services>">Tor hidden services</a>. It trades
824)     user anonymity for usability by allowing anonymous content to be
825)     distributed to non-anonymous users.
826)     </p>
827) 
Peter Palfrader Revert "Projects Table Revi...

Peter Palfrader authored 11 years ago

828)     <a id="project-anonbib"></a>
829)     <h3><a
830)     href="http://freehaven.net/anonbib/">Anonymity Bibliography</a> (<a
831)     href="https://gitweb.torproject.org/anonbib.git">code</a>)</h3>
832) 
833)     <p>
Roger Dingledine add in my fixes from earlier

Roger Dingledine authored 11 years ago

834)     Anonbib is a list of important papers in the field of anonymity. It's
835)     also a set of scripts to generate the website from Latex (bibtex). If
836)     we're missing any important papers, please let us know!
Peter Palfrader Revert "Projects Table Revi...

Peter Palfrader authored 11 years ago

837)     </p>
838) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

839)     <a id="Coding"></a>
840)     <a id="Summer"></a>
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

841)     <h2><a class="anchor" href="#Coding">Project Ideas</a></h2>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

842) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

843)     <p>
Damian Johnson Suggested OPW revisions

Damian Johnson authored 11 years ago

844)     You may find some of these projects to be good ideas for <a href="<page
845)     about/gsoc>">Google Summer of Code</a> and the <a
846)     href="https://live.gnome.org/OutreachProgramForWomen">Outreach Program for
Damian Johnson Dropping mention of priorit...

Damian Johnson authored 11 years ago

847)     Women</a>. We have labelled each idea with how much work we expect it would
848)     be (effort level), how much clue you should start with (skill level),
849)     and which of our <a href="<page about/corepeople>">core developers</a>
850)     would be good mentors. If one or more of these ideas looks promising to
851)     you, please <a href="<page about/contact>">contact us</a> to discuss your
852)     plans rather than sending blind applications. You may also want to propose
853)     your own project idea &mdash; which often results in the best applications.
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

854)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

855) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

856)     <ol>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

857) 
Damian Johnson Adding a project idea for r...

Damian Johnson authored 11 years ago

858)     <a id="metrics-pyDoctor"></a>
859)     <li>
860)     <b>PyDoctor</b>
861)     <br>
862)     Effort Level: <i>Medium</i>
863)     <br>
864)     Skill Level: <i>Medium</i>
865)     <br>
866)     Likely Mentors: <i>karsten, Damian (atagar)</i>
867)     <p><a href="https://gitweb.torproject.org/doctor.git">DocTor</a>, also
868)     known as the consensus-health checker, is a service that periodically
869)     checks the Tor network for consensus conflicts and other hiccups.  In order
870)     to do so it downloads the Tor consensus and votes from the Tor directory
871)     authorities and checks them for consensus problems.  DocTor writes its
872)     findings to local files which can then be sent to a <a
873)     href="https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-consensus-health">mailing
874)     list</a> or IRC bot (nsa in #tor-bots on OFTC), or which can be served by
875)     an <a href="https://metrics.torproject.org/consensus-health.html">HTTP
876)     server</a>.</p>
877) 
878)     <p>This project would be about rewriting DocTor in Python and using Stem
879)     for the descriptor parsing.  This would require extending Stem to download
880)     consensuses and votes (and later server descriptors for Damian's
881)     consensus checker), and it would require rewriting the DocTor code in
882)     Python.</p>
883)     </li>
884) 
Damian Johnson Adding a project for cross...

Damian Johnson authored 11 years ago

885)     <a id="txtorcon-stemIntegration"></a>
886)     <li>
887)     <b>Txtorcon/Stem Integration</b>
888)     <br>
889)     Effort Level: <i>Medium</i>
890)     <br>
891)     Skill Level: <i>Medium</i>
892)     <br>
893)     Likely Mentors: <i>meejah, Damian (atagar)</i>
894)     <p>Txtorcon is a Twisted-based Python controller library, and Stem is a
895)     synchronous (threaded) one, also in Python. There is no need to have
896)     two implementations of (at least) the protocol parsing code. This
897)     project would entail eliminating duplication by leveraging Stem's
898)     parsing in txtorcon while keeping txtorcon's API the same (or at least
899)     close).</p>
Damian Johnson Subtasks for txtorcon/stem...

Damian Johnson authored 11 years ago

900)     <p>Besides this you should identify some additional tasks to improve our
901)     controller space across these two libraries. Some ideas are...</p>
902)     <ul>
903)       <li>Write a tutorial for <a
904)       href="https://stem.torproject.org/tutorials.html">stem's tutorial
905)       page</a> demonstrating cross txtorcon/stem usage.</li>
906)       <li>Expand the txtorcon API to include functionality of <a
907)       href="https://gitweb.torproject.org/stem.git/blob/HEAD:/stem/control.py">stem's
908)       controller</a> that would be of interest to twisted users. All additions
909)       should include tests!</li>
910)       <li>Come up with some ideas of your own! We'd love to discuss them with
911)       you.</li>
912)     </ul>
Damian Johnson Adding a project for cross...

Damian Johnson authored 11 years ago

913)     <p>This would very likely involve changes to both libraries, although
914)     most would be expected to be in txtorcon. meejah is available to
915)     mentor txtorcon changes, and Damian (atagar) can help with Stem.</p>
916)     <p>It would help if you're already familiar with event-based programming,
917)     bonus points if it's Twisted.</p>
918)     </li>
919) 
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

920)     <a id="httpsImpersonation"></a>
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

921)     <li>
922)     <b>HTTPS Server Impersonation</b>
923)     <br>
924)     Effort Level: <i>Medium to High</i>
925)     <br>
926)     Skill Level: <i>Medium to High</i>
927)     <br>
928)     Likely Mentors: <i>Nick (nickm)</i>
Damian Johnson Adding revised tor project...

Damian Johnson authored 11 years ago

929)     <p>
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

930)     We have an open proposal for a way to make Tor bridges avoid censorship by
931)     impersonating an HTTPS server.  Specifically, we need to hack some popular
932)     SSL "reverse proxy" (your choice) so that it relays regular web connections
933)     to an HTTP server, but certain connections to a local Tor process.  <a
934)     href="https://gitweb.torproject.org/torspec.git/blob_plain/HEAD:/proposals/203-https-frontend.txt">Proposal
935)     203</a> has a general design sketch.
Damian Johnson Adding revised tor project...

Damian Johnson authored 11 years ago

936)     </p>
Damian Johnson Adding application prereqs...

Damian Johnson authored 11 years ago

937) 
938)     <p>
939)     <b>This project is likely trickier than it looks. You should avoid applying
940)     for this if you're uncertain about being able to complete it.</b>
941)     </p>
942)     </li>
Damian Johnson Adding revised tor project...

Damian Johnson authored 11 years ago

943)     </li>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

944) 
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

945)     <a id="chutneyExpansion"></a>
946)     <li>
947)     <b>Make Chutney Do More, More Reliably</b>
948)     <br>
949)     Effort Level: <i>Medium to High, depending on scope of project</i>
950)     <br>
951)     Skill Level: <i>Medium</i>
952)     <br>
Damian Johnson Adding revised tor project...

Damian Johnson authored 11 years ago

953)     Likely Mentors: <i>Nick (nickm)</i>
954)     <p>
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

955)     We have a little Python tool called <a
956)     href="https://gitweb.torproject.org/nickm/chutney.git">Chutney</a> for
957)     making small local test networks.  It's small, not widely used, and not as
958)     automated as it could be.
Damian Johnson Adding revised tor project...

Damian Johnson authored 11 years ago

959)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

960) 
Damian Johnson Adding revised tor project...

Damian Johnson authored 11 years ago

961)     <p>
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

962)     It would be great to see chutney extended and a set of supporting tests
963)     built to the point where we could use Chutney to exercise various Tor
964)     features as an automated integration test.
Damian Johnson Adding revised tor project...

Damian Johnson authored 11 years ago

965)     </p>
Damian Johnson Adding application prereqs...

Damian Johnson authored 11 years ago

966) 
967)     <p>
968)     <b>As part of your application for this project please submit a patch that
969)     expands Chutney.</b>
970)     </p>
971) 
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

972)     </li>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

973) 
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

974)     <a id="limitCapabilities"></a>
Damian Johnson Adding revised tor project...

Damian Johnson authored 11 years ago

975)     <li>
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

976)     <b>Run With Limited Capabilities</b>
Damian Johnson Adding revised tor project...

Damian Johnson authored 11 years ago

977)     <br>
978)     Effort Level: <i>Medium to High</i>
979)     <br>
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

980)     Skill Level: <i>High</i>
Damian Johnson Adding revised tor project...

Damian Johnson authored 11 years ago

981)     <br>
982)     Likely Mentors: <i>Nick (nickm)</i>
983)     <p>
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

984)     Many modern operating systems give a running program the ability to drop
985)     capabilities that it no longer needs, and other ways for a program to run
986)     pieces of itself in a sandbox with diminished privileges.
Damian Johnson Adding revised tor project...

Damian Johnson authored 11 years ago

987)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

988) 
Damian Johnson Adding revised tor project...

Damian Johnson authored 11 years ago

989)     <p>
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

990)     We'd like to do this with Tor, to improve its resistance to attacks.  The
991)     easiest areas to address would be on systems like <a
992)     href="https://lwn.net/Articles/475361/">recent Linux kernels</a> that make
993)     it easy to drop or restrict the set of syscalls that a program can invoke.
994)     That's a great project, but probably not big enough for an internship just
995)     on its own.  For that, we'd want to make progress on at least multiple
996)     platforms, or look into refactoring Tor into pieces that need more
997)     privileges and pieces that don't with an eye towards sandboxing them
998)     differently.
Damian Johnson Adding revised tor project...

Damian Johnson authored 11 years ago

999)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1000) 
Damian Johnson Adding revised tor project...

Damian Johnson authored 11 years ago

1001)     <p>
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1002)     See tickets <a href="https://trac.torproject.org/7005">#7005</a> and <a
1003)     href="https://trac.torproject.org/5219">#5219</a>, and their descendants,
1004)     for more information.
Damian Johnson Adding revised tor project...

Damian Johnson authored 11 years ago

1005)     </p>
1006)     </li>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1007) 
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1008)     <a id="metricsSearch"></a>
Damian Johnson Replace stem's PathSupport...

Damian Johnson authored 11 years ago

1009)     <li>
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1010)     <b>Searchable Tor descriptor and Metrics data archive</b>
Damian Johnson Replace stem's PathSupport...

Damian Johnson authored 11 years ago

1011)     <br>
1012)     Effort Level: <i>Medium</i>
1013)     <br>
1014)     Skill Level: <i>Medium</i>
1015)     <br>
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1016)     Likely Mentors: <i>Karsten</i>
1017)     <p>The <a href="https://metrics.torproject.org/data.html">Metrics data
1018)     archive</a> of Tor relay descriptors and other Tor-related network data has
1019)     grown to over 100G in size, bz2-compressed.  We have developed two search
1020)     interfaces: the <a
1021)     href="https://metrics.torproject.org/relay-search.html">relay search</a>
1022)     finds relays by nickname, fingerprint, or IP address in a given month; <a
1023)     href="https://metrics.torproject.org/exonerator.html">ExoneraTor</a> finds
1024)     whether a given IP address was a relay on a given day.</p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1025) 
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1026)     <p>We'd like to have a more general search application for Tor descriptors
1027)     and metrics data.  There are more <a
1028)     href="https://metrics.torproject.org/formats.html">descriptor types</a>
1029)     that we'd like to include in the search.  The search application should
1030)     handle most of them and understand some semantics like what's a timestamp,
1031)     what's an IP address, and what's a link to another descriptor.  Users
1032)     should then be able to search for arbitrary strings or limit their search
1033)     to given time periods or IP address ranges.  Descriptors that reference
1034)     other descriptors should contain links, and descriptors should be able to
1035)     say from where they are linked.  The goal is to make the archive easily
1036)     browsable.</p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1037) 
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1038)     <p>The search application shall be separate from the metrics website and
1039)     shouldn't rely on the metrics website codebase.  The search application
1040)     will contain hourly updated descriptor data from the metrics website via
1041)     rsync.  Programming language and database system are not specified yet,
1042)     though there's a slight preference for Python/Django and Postgres for
1043)     maintenance reasons.  If there are good reasons to pick something else,
1044)     e.g, some NoSQL variant or some search application framework, that's fine,
1045)     too.  Further requirements are that lookups should be really fast and that
1046)     changes to the search application can be implemented in reasonable
1047)     time.</p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1048) 
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1049)     <p>Applications for this project should come with a design of the proposed
1050)     search application, ideally with a proof-of-concept based on a subset of
1051)     the available data to show that it will be able to handle the 100G+ of
1052)     data.</p>
Damian Johnson Replace stem's PathSupport...

Damian Johnson authored 11 years ago

1053)     </li>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1054) 
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1055)     <a id="stemUsability"></a>
Damian Johnson Adding Orbot project ideas...

Damian Johnson authored 13 years ago

1056)     <li>
Damian Johnson Updating stem's usability i...

Damian Johnson authored 11 years ago

1057)     <b>Stem Usability and Porting</b>
Damian Johnson Adding Orbot project ideas...

Damian Johnson authored 13 years ago

1058)     <br>
1059)     Effort Level: <i>Medium</i>
1060)     <br>
1061)     Skill Level: <i>Medium</i>
1062)     <br>
Damian Johnson Expanding project idea to i...

Damian Johnson authored 11 years ago

1063)     Likely Mentors: <i>Damian (atagar), Sebastian</i>
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1064)     <p>
Damian Johnson Updating stem's url

Damian Johnson authored 11 years ago

1065)     <a href="https://stem.torproject.org/">Stem</a> is a
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1066)     python controller library for tor. Like it's predecessor, <a
Damian Johnson Dropping TorCtl from the pr...

Damian Johnson authored 11 years ago

1067)     href="https://gitweb.torproject.org/pytorctl.git">TorCtl</a>, it uses tor's <a
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1068)     href="https://gitweb.torproject.org/torspec.git/blob/HEAD:/control-spec.txt">control
1069)     protocol</a> to help developers program against the tor process, enabling
1070)     them to build things similar to <a href="#project-vidalia">Vidalia</a> and
Damian Johnson Updating stem's usability i...

Damian Johnson authored 11 years ago

1071)     <a href="http://www.atagar.com/arm/">arm</a>.
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1072)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1073) 
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1074)     <p>
1075)     While TorCtl provided a fine first draft for this sort of functionality,
1076)     it has not proved to be extensible nor maintainable. Stem is a rewrite of
1077)     TorCtl with a heavy focus on testing, documentation, and providing a
1078)     developer friendly API.
1079)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1080) 
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1081)     <p>
Damian Johnson Updating stem's usability i...

Damian Johnson authored 11 years ago

1082)     Stem has largely met these goals but there's still plenty of low hanging
1083)     fruit in terms of usability improvements. Also, we have clients still using
Damian Johnson Expanding project idea to i...

Damian Johnson authored 11 years ago

1084)     TorCtl that need to be ported over. This project would include several
1085)     subtasks. Some ideas for instance are...
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1086)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1087) 
Damian Johnson Updating stem's usability i...

Damian Johnson authored 11 years ago

1088)     <ol>
1089)       <li>Come up with a better, more developer friendly "Module Overview" for our documentation (<a href="https://stem.torproject.org/api/control.html">example page</a>). For instance, it would be nice to provide interlinking between the overview and the classes/methods that it lists. This will probably involve asking for help from the <a href="http://sphinx-doc.org/">Sphinx user list</a>. (<a href="https://trac.torproject.org/7632">ticket</a>)</li>
Damian Johnson Expanding project idea to i...

Damian Johnson authored 11 years ago

1090)       <li>After getting some exposure to stem it would be time to give using it a try. Tor has a couple clients (<a href="https://trac.torproject.org/8263">TorBEL</a> and <a href="https://trac.torproject.org/8264">Tor Weather</a>) that are ready to be moved to stem. Hopefully porting these will also provide us with some lessons on how we can further improve stem's API. <b>Note that this would also involve polishing off <a href="#project-torbel">TorBEL</a>, including the <a href="https://trac.torproject.org/projects/tor/query?status=accepted&status=assigned&status=needs_information&status=needs_review&status=needs_revision&status=new&status=reopened&group=component&component=TorDNSEL%2FTorBEL&order=priority">issues that prevent us from deploying it</a></b>. This later portion would be primarily mentored by Sebastian.</li>
Damian Johnson Fixing stem tutorial urls

Damian Johnson authored 11 years ago

1091)       <li><b>... other ideas?</b> The above are just some ideas I've come up with to improve usability and likely not enough to fill the summer. Feel free to suggest some of your own! For instance, one option would be to expand <a href="https://stem.torproject.org/tutorials.html">stem's tutorials</a> with more examples, maybe <a href="https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev/">contacting tor-dev@</a> to brainstorm ideas. This last bit is pretty open so I look forward to seeing what you come up with!</li>
Damian Johnson Updating stem's usability i...

Damian Johnson authored 11 years ago

1092)     </ol>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1093) 
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1094)     <p>
Damian Johnson Fixing stem tutorial urls

Damian Johnson authored 11 years ago

1095)     <b>As part of your application for this project please write a script that does something interesting with stem.</b> Bonus points if this is something that we can <a href="https://stem.torproject.org/tutorials.html">make a tutorial</a> around!
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1096)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1097) 
Damian Johnson Adding a project to expand...

Damian Johnson authored 11 years ago

1098)     <a id="stemTestingForTor"></a>
1099)     <li>
1100)     <b>Stem Tests for Tor</b>
1101)     <br>
1102)     Effort Level: <i>Medium</i>
1103)     <br>
1104)     Skill Level: <i>Medium</i>
1105)     <br>
1106)     Likely Mentors: <i>Damian (atagar)</i>
1107)     <p>
1108)     Stem is a library for interacting with Tor (see '<a href="#stemUsability">Stem Usability and Porting</a>' above for a summary). The library has both <a href="https://gitweb.torproject.org/stem.git/tree/HEAD:/test/unit">unit</a> and <a href="https://gitweb.torproject.org/stem.git/tree/HEAD:/test/integ">integration</a> tests. The unit tests provide a quick, direct test of stem's codebase while the integration test exercises its functionality against a live instance of Tor.
1109)     </p>
1110) 
1111)     <p>
1112)     Stem's integration tests have thus far been (unsurprisingly) designed to test stem but there's no need for them to be limited to that. Stem is a complete implementation of Tor's <a href="https://gitweb.torproject.org/torspec.git/blob/HEAD:/control-spec.txt">control-spec</a> and <a href="https://gitweb.torproject.org/torspec.git/blob/HEAD:/dir-spec.txt">dir-spec</a>. As such, stem's tests could be easily expanded to more dedicatedly test behavior involved in those portions of Tor's codebase, as well as provide a smoke test for its general functionality.
1113)     </p>
1114) 
1115)     <p>
1116)     This project would involve several components:
1117)     </p>
1118) 
1119)     <ol>
1120)       <li>Determine what kind of tests we need. <b>This should be done during the application phase</b> by <a href="https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev/">contacting tor-dev@</a>. Hopefully this will give us an idea of what would be the most useful kind of tests of this nature for Tor development.</li>
Damian Johnson Dropping project idea item...

Damian Johnson authored 11 years ago

1121)       <li>Our <a href="https://jenkins.torproject.org/job/stem-tor-ci/">automated testing environment</a> presently sends the test output when they fail. We should think about having our tests optionally provide html formatted results (maybe this is something a testing framework can already provide?).</li>
Damian Johnson Adding a project to expand...

Damian Johnson authored 11 years ago

1122)       <li>Implement the new suite of integration tests for Tor. This will likely include expanding Tor to support better testability. One useful candidate, for instance, would be a controller method to fetch our own descriptor. This would let us easily test various configurations to see if they provide valid descriptor content.</li>
1123)     </ol>
1124) 
1125)     <p>
Moritz Bartl fixed typo

Moritz Bartl authored 11 years ago

1126)     <b>As part of your application for this project please write some code to expand stem's tests.</b> Bonus points if it implements one of your suggestions for better testing Tor!
Damian Johnson Adding a project to expand...

Damian Johnson authored 11 years ago

1127)     </p>
1128) 
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1129)     <a id="torCleanup"></a>
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1130)     <li>
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1131)     <b>Tor Codebase Cleanup</b>
Sebastian Hahn We decided to go with HTML...

Sebastian Hahn authored 13 years ago

1132)     <br>
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1133)     Effort Level: <i>Low to High, depending on subproject chosen</i>
Sebastian Hahn We decided to go with HTML...

Sebastian Hahn authored 13 years ago

1134)     <br>
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1135)     Skill Level: <i>Medium to High</i>
Sebastian Hahn We decided to go with HTML...

Sebastian Hahn authored 13 years ago

1136)     <br>
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1137)     Likely Mentors: <i>Nick (nickm)</i>
Damian Johnson Revisions to project ideas...

Damian Johnson authored 13 years ago

1138)     <p>
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1139)     The Tor code is almost 10 years old in places, and we haven't always had
1140)     enough time or wisdom to write things as well as we could have.  Our unit
1141)     test coverage is shamefully low, and the dependency graph of our modules is
1142)     shamefully convoluted . We could use refactoring and unit tests!  Please
1143)     look through the Tor source code and look for ugly or tricky code or
1144)     dependencies -- the uglier and trickier the better -- and think about how
1145)     you could make the code look better, read better, and (subject to testing)
1146)     work better.
Damian Johnson Revisions to project ideas...

Damian Johnson authored 13 years ago

1147)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1148) 
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

1149)     <p>
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1150)     If this is for a fun side-project, it would be great for you to work on
1151)     anything that can be made better and more tested.  For an internship-level
1152)     position, we'd hope that you could find a number of particularly tricky or
1153)     knotty piece of the code to clean up, and aim for resolving the ugliest
1154)     problems, not necessarily the easiest.
Damian Johnson Adding project summaries an...

Damian Johnson authored 13 years ago

1155)     </p>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1156) 
Damian Johnson Revisions to project ideas...

Damian Johnson authored 13 years ago

1157)     <p>
Damian Johnson Dropping task priority and...

Damian Johnson authored 11 years ago

1158)     For a big project here, it would be great to pick one of the major
1159)     "submodules" of Tor -- path selection, node discovery, directory authority
1160)     operations, directory service -- and refactor its interface completely, to
1161)     minify and codify its points of contact with the rest of Tor.
Damian Johnson Revisions to project ideas...

Damian Johnson authored 13 years ago

1162)     </p>
Damian Johnson Adding application prereqs...

Damian Johnson authored 11 years ago

1163) 
1164)     <p>
1165)     <b>As part of your application for this project please identify one of the
1166)     thorniest Tor functions and submit a patch refactoring it to be better. If
1167)     you find this to be difficult then this likely isn't the project for
1168)     you.</b>
1169)     </p>
Damian Johnson Revisions to project ideas...

Damian Johnson authored 13 years ago

1170)     </li>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1171) 
Damian Johnson Adding Ooni Probe simulator...

Damian Johnson authored 11 years ago

1172)     <a id="ooniprobeSimulator"></a>
1173)     <li>
1174)     <b>Create an Internet Censorship Virtual Machine Based Simulator</b>
1175)     <br>
1176)     Effort Level: <i>Medium</i>
1177)     <br>
1178)     Skill Level: <i>Medium</i>
1179)     <br>
1180)     Likely Mentors: <i>hellais</i>
1181)     <p>
1182)     The purpose of this is to create a virtual machine based environment for
1183)     recreating censorship. The task of the student will be to document and
1184)     implement a system that allows you to recreated a censored network with the
1185)     purpose of testing the proper functioning of ooniprobe tests.
1186)     </p>
1187) 
1188)     <p>
1189)     Some ideas of things that would be useful to have be emulated by the test
1190)     lab:
1191)     </p>
1192) 
1193)     <ul>
1194)       <li>A transparent HTTP proxy (based on squid)</li>
1195)       <li>NAT traversal</li>
1196)       <li>HTTP proxy blocking certain sites</li>
1197)       <li>DNS based censorship</li>
1198)     </ul>
1199) 
1200)     <p>
1201)     The process of setting up the virtual machines and simulating censorship
1202)     should be fully automated (<a
1203)     href="https://trac.torproject.org/projects/tor/ticket/7233">related
1204)     ticket</a>).
1205)     </p>
1206)     </li>
1207) 
Damian Johnson Adding 'Steganography Brows...

Damian Johnson authored 11 years ago

1208)     <a id="steganographyBrowserAddon"></a>
1209)     <li>
1210)     <b>Steganography Browser Addon</b>
1211)     <br>
1212)     Effort Level: <i>Medium</i>
1213)     <br>
1214)     Skill Level: <i>Medium</i>
1215)     <br>
1216)     Likely Mentors: <i>sukhbir, Moritz (gamambel)</i>
1217)     <p>
1218)     To facilitate the sharing of bridge addresses and other secrets, we want
1219)     a browser addon that detects steganographically and  asymmetrically
1220)     encrypted content embedded in website content. It would ship with a set
1221)     of preconfigured keys, as well as allow users to modify that set.
1222)     Additionally, it should be able to embed secrets. It must be written in
1223)     an extensible way, so that other steganography libraries and supported
1224)     media types can be added to the code easily.
1225)     </p>
1226) 
1227)     <p>
1228)     As part of your application for this project assess the current state of
1229)     Javascript steganography libraries, tell us which one you would pick
1230)     primarily, and why. Ideally, your application comes with some mockups of
1231)     how parts of the user interface of your addon would look like.
1232)     </p>
Damian Johnson Noting research paper for '...

Damian Johnson authored 11 years ago

1233) 
1234)     <p>
1235)     For more information see the <a
1236)     href="http://www.cs.kau.se/philwint/censorbib/#Invernizzi2012">Message In A
1237)     Bottle: Sailing Past Censorship</a> research paper.
1238)     </p>
Damian Johnson Adding 'Steganography Brows...

Damian Johnson authored 11 years ago

1239)     </li>
1240) 
Damian Johnson Couple more GSoC projects f...

Damian Johnson authored 11 years ago

1241)     <a id="betterPluggableTransports"></a>
1242)     <li>
1243)     <b>Build Better Pluggable Transports</b>
1244)     <br>
1245)     Effort Level: <i>Medium to High</i>
1246)     <br>
1247)     Skill Level: <i>Medium</i>
1248)     <br>
1249)     Likely Mentors: <i>Steven (sjmurdoch)</i>
1250)     <p>
1251)     For Tor users in censored countries, we currently offer <a
1252)     href="https://www.torproject.org/projects/obfsproxy.html.en">obfsproxy</a>
1253)     bridges, which disguise Tor traffic by making it look random. This works
1254)     for many users, but it has disadvantages: firstly it does not disguise
1255)     packet size and secondly it looks like no real protocol. These weaknesses
1256)     may result in obfsproxy being blocked.
1257)     </p>
1258) 
1259)     <p>
1260)     The goal for this project will be to implement new pluggable transports,
1261)     which resolve these weaknesses and so can be deployed if/when obfsproxy is
1262)     blocked. Ideas for doing so include:
1263)       <ul>
1264)         <li>Impersonate a voice-over-IP protocol</li>
1265)         <li>Impersonate HTTP sufficiently well that traffic will go through a HTTP-only proxy</li>
1266)         <li>Implement <a href="http://cacr.uwaterloo.ca/techreports/2011/cacr2011-21.pdf">scanning resistance</a></a>
1267)       </ul>
1268)     </p>
1269) 
1270)     <a id="profileUDPTransport"></a>
1271)     <li>
1272)     <b>Profile UDP transport protocols</b>
1273)     <br>
1274)     Effort Level: <i>Medium to High</i>
1275)     <br>
1276)     Skill Level: <i>High</i>
1277)     <br>
1278)     Likely Mentors: <i>Steven (sjmurdoch)</i>
1279)     <p>
1280)     There are <a
1281)     href="https://research.torproject.org/techreports/datagram-comparison-2011-11-07.pdf">lots
1282)     of options</a> as to how Tor could send its data over UDP rather than TCP,
1283)     and some will likely perform significantly better than others. This project
1284)     will evaluate these options, so as to decide which should be used in future
1285)     versions of Tor. A first step will be to benchmark the various transport
1286)     protocols being considered, in terms of performance and also code quality,
1287)     including userspace TCP, <a
1288)     href="https://github.com/bittorrent/libutp">&mu;TP</a>, <a
1289)     href="http://en.wikipedia.org/wiki/Stream_Control_Transmission_Protocol">SCTP</a>
1290)     and <a href="http://curvecp.org/">CurveCP</a>. Initially these transport
1291)     protocols will be examined in isolation, but if the project progresses well
1292)     one or more could be integrated in Tor.
1293)     </p>
1294)     </li>
1295) 
Damian Johnson EFF Project Ideas for GSoC...

Damian Johnson authored 11 years ago

1296)     <a id="reportingBuggyRulesets"></a>
1297)     <li>
1298)     <b>Automated Reporting of Buggy Rulesets</b>
1299)     <br>
1300)     Effort Level: <i>Medium</i>
1301)     <br>
1302)     Skill Level: <i>Medium</i>
1303)     <br>
Damian Johnson Replacing Seth with Micah L...

Damian Johnson authored 11 years ago

1304)     Likely Mentors: <i>Peter Eckersley (pde), Micah Lee</i>
Damian Johnson EFF Project Ideas for GSoC...

Damian Johnson authored 11 years ago

1305)     <p>
1306) When users manually disable an HTTPS Everywhere ruleset via the toolbar menu,
1307) that's a strong hint that that ruleset might be buggy.  If we could obtain
1308) statistics about which rulesets are manually disabled by the users of which
1309) HTTPS E versions, we could get a statistical picture of which rulesets need
1310) the most urgent debugging and/or disablement.  This would enormously improve
1311) the quality of the HTTPS Everywhere user experience.
1312)     </p>
1313) 
1314)     <p>
1315) HTTPS Everywhere already includes a pipeline for anonymised user submissions
1316) (via Tor where available) that is used for the Decentralized SSL Observatory.
1317) We should do a popup that asks the users to submit anonymous reports of
1318) disabled rules, when they manually disable one for the first time.
1319)     </p>
1320) 
1321)     <p>
1322) Perhaps this feature could optionally let users submit the URL of the page
1323) they were looking at when the bug occurred, although we would need to take
1324) care in handling those, and perhaps implement some countermeasures against
1325) sending passwords or auth tokens when URLs contain those.
1326)     </p>
1327)     </li>
1328) 
1329)     <a id="httpsEverywhereForFirefoxModile"></a>
1330)     <li>
1331)     <b>Port HTTPS Everywhere to Firefox Mobile</b>
1332)     <br>
1333)     Effort Level: <i>Medium</i>
1334)     <br>
1335)     Skill Level: <i>Medium</i>
1336)     <br>
Damian Johnson Replacing Seth with Micah L...

Damian Johnson authored 11 years ago

1337)     Likely Mentors: <i>Peter Eckersley (pde), Micah Lee</i>
Damian Johnson EFF Project Ideas for GSoC...

Damian Johnson authored 11 years ago

1338)     <p>
1339) In the past a Firefox Mobile port of HTTPS Everywhere was made impractically
1340) complicated by the Electrolysis threading architecture used in that variant of
1341) Firefox (<a href="https://trac.torproject.org/projects/tor/ticket/2471">ticket</a>).  However with
1342) the implementation of the simple NSIHTTPChannel.redirectTo() API in Firefox
1343) 20+ (<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=765934">ticket</a>) we are probably very
1344) close to having a trivial port of HTTPS Everywhere to Firefox on Android.
1345)     </p>
1346) 
1347)     <p>
1348) This would make a great GSOC project for someone who'd like to learn some
1349) introductory skills with hacking on the internals of real web browsers!
1350)     </p>
1351)     </li>
1352) 
1353)     <a id="httpsEverywhereMixedContentHandling"></a>
1354)     <li>
1355)     <b>HTTPS Everywhere mixed content detection and handling</b>
1356)     <br>
1357)     Effort Level: <i>Medium</i>
1358)     <br>
1359)     Skill Level: <i>Medium</i>
1360)     <br>
Damian Johnson Replacing Seth with Micah L...

Damian Johnson authored 11 years ago

1361)     Likely Mentors: <i>Peter Eckersley (pde), Micah Lee</i>
Damian Johnson EFF Project Ideas for GSoC...

Damian Johnson authored 11 years ago

1362)     <p>
1363) Since version 20, Chrome has automatically blocked the loading of insecure
1364) HTTP scripts and CSS in HTTPS pages.  Firefox version 23 will do the same.
1365) This is good security practice, but it causes havoc with many sites where
1366) HTTPS Everywhere can secure some, but not all, of the site's content.
1367)     </p>
1368) 
1369)     <p>
1370) Before Firefox 23 launches, we will need a more coherent plan for detecting
1371) sites where we are causing these mixed content situations, and either
1372) disabling or working around the limitation.  Failure to do so will mean that
1373) HTTPS Everywhere user experience worsens dramatically when Firefox 23 is
1374) released.  Success will mean a dramatic improvement in user experience with
1375) HTTPS Everywhere for Chrome.
1376)     </p>
1377) 
1378)     <b>Critical-path tickets:</b>
1379) 
1380)     <ul>
1381)       <li><a href="https://trac.torproject.org/projects/tor/ticket/6975">6975</a></li>
1382)       <li><a href="https://trac.torproject.org/projects/tor/ticket/8664">8664</a></li>
1383)       <li><a href="https://trac.torproject.org/projects/tor/ticket/8776">8776</a></li>
1384)     </ul>
1385) 
1386)     <b>Related tickets:</b>
1387) 
1388)     <ul>
1389)       <li><a href="https://trac.torproject.org/projects/tor/ticket/3777">3777</a></li>
1390)       <li><a href="https://trac.torproject.org/projects/tor/ticket/6977">6977</a></li>
1391)     </ul>
1392)     </li>
1393) 
1394)     <a id="httpsEverywhereRulesetTesting"></a>
1395)     <li>
1396)     <b>Incorporate Ruleset Testing into the HTTPS Everywhere release process</b>
1397)     <br>
1398)     Effort Level: <i>Medium</i>
1399)     <br>
1400)     Skill Level: <i>Medium</i>
1401)     <br>
Damian Johnson Replacing Seth with Micah L...

Damian Johnson authored 11 years ago

1402)     Likely Mentors: <i>Peter Eckersley (pde), Micah Lee</i>
Damian Johnson EFF Project Ideas for GSoC...

Damian Johnson authored 11 years ago

1403)     <p>
1404) Ondrej Mikle has implemented a codebase for testing HTTPS Everywhere rulesets
1405) by crawling pages that are affected by the ruleset (<a href="https://github.com/hiviah/https-everywhere-checker">repository</a>).
1406)     </p>
1407) 
1408)     <p>
1409) This codebase still has some rough edges that need to be smoothed over, but
1410) once those are done it should be incorporated into the HTTPS Everywhere build
1411) process, in order to improve the quality of our releases.
1412)     </p>
1413)     </li>
1414) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1415)     <li>
1416)     <b>Bring up new ideas!</b>
Sebastian Hahn We decided to go with HTML...

Sebastian Hahn authored 13 years ago

1417)     <br>
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1418)     Don't like any of these? Look at the <a
Andrew Lewman why did anyone think the ro...

Andrew Lewman authored 13 years ago

1419)     href="/press/presskit/2008-12-19-roadmap-full.pdf">Tor development
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1420)     roadmap</a> for more ideas, or just try out Tor, Vidalia, and Torbutton,
1421)     and find out what you think needs fixing.
Sebastian Hahn Fix links that broke due to...

Sebastian Hahn authored 13 years ago

1422)     Some of the <a href="<spectree>proposals">current proposals</a>
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1423)     might also be short on developers.
1424)     </li>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1425) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1426)     </ol>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1427) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1428)     <a id="OtherCoding"></a>
1429)     <h2><a class="anchor" href="#OtherCoding">Other Coding and Design related ideas</a></h2>
1430)     <ol>
1431)     <li>Tor relays don't work well on Windows XP. On
1432)     Windows, Tor uses the standard <tt>select()</tt> system
1433)     call, which uses space in the non-page pool. This means
1434)     that a medium sized Tor relay will empty the non-page pool, <a
Karsten Loesing Update wiki links

Karsten Loesing authored 12 years ago

1435)     href="<wiki>doc/WindowsBufferProblems">causing
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1436)     havoc and system crashes</a>. We should probably be using overlapped IO
1437)     instead. One solution would be to teach <a
1438)     href="http://www.monkey.org/~provos/libevent/">libevent</a> how to use
1439)     overlapped IO rather than select() on Windows, and then adapt Tor to
1440)     the new libevent interface. Christian King made a
1441)     <a href="https://svn.torproject.org/svn/libevent-urz/trunk/">good
1442)     start</a> on this in the summer of 2007.</li>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1443) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1444)     <li>We need to actually start building our <a href="<page
1445)     docs/documentation>#DesignDoc">blocking-resistance design</a>. This involves
1446)     fleshing out the design, modifying many different pieces of Tor, adapting
1447)     <a href="<page projects/vidalia>">Vidalia</a> so it supports the
1448)     new features, and planning for deployment.</li>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1449) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1450)     <li>We need a flexible simulator framework for studying end-to-end
1451)     traffic confirmation attacks. Many researchers have whipped up ad hoc
1452)     simulators to support their intuition either that the attacks work
1453)     really well or that some defense works great. Can we build a simulator
1454)     that's clearly documented and open enough that everybody knows it's
1455)     giving a reasonable answer? This will spur a lot of new research.
1456)     See the entry <a href="#Research">below</a> on confirmation attacks for
1457)     details on the research side of this task &mdash; who knows, when it's
1458)     done maybe you can help write a paper or three also.</li>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1459) 
Andrew Lewman format the paragraphs corre...

Andrew Lewman authored 13 years ago

1460)     <li>Tor 0.1.1.x and later include support for hardware crypto
1461)     accelerators via OpenSSL. It has been lightly tested and is
1462)     possibly very buggy.  We're looking for more rigorous testing,
Andrew Lewman apply fixes from rransom.

Andrew Lewman authored 13 years ago

1463)     performance analysis, and optimally, code fixes to OpenSSL and
Andrew Lewman format the paragraphs corre...

Andrew Lewman authored 13 years ago

1464)     Tor if needed.</li>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1465) 
George Kadianakis Rephrase the volunteer entr...

George Kadianakis authored 11 years ago

1466)     <li>Write a <a
1467)     href="https://secure.wikimedia.org/wikipedia/en/wiki/Fuzz_testing">fuzzer</a>
1468)     for Tor to discover security vulnerabilities. Determine if there
1469)     are good fuzzing frameworks out there for what we want. Win fame by
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1470)     getting credit when we put out a new release because of you!</li>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1471) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1472)     <li>Tor uses TCP for transport and TLS for link
1473)     encryption. This is nice and simple, but it means all cells
1474)     on a link are delayed when a single packet gets dropped, and
1475)     it means we can only reasonably support TCP streams. We have a <a
Roger Dingledine revise TransportIPnotTCP an...

Roger Dingledine authored 13 years ago

1476)     href="<page docs/faq>#TransportIPnotTCP">list
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1477)     of reasons why we haven't shifted to UDP transport</a>, but it would
1478)     be great to see that list get shorter. We also have a proposed <a
Sebastian Hahn Fix links that broke due to...

Sebastian Hahn authored 13 years ago

1479)     href="<specblob>proposals/100-tor-spec-udp.txt">specification
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1480)     for Tor and
1481)     UDP</a> &mdash; please let us know what's wrong with it.</li>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1482) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1483)     <li>We're not that far from having IPv6 support for destination addresses
1484)     (at exit nodes). If you care strongly about IPv6, that's probably the
1485)     first place to start.</li>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1486) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1487)     <li>We need a way to generate the website diagrams (for example, the "How
1488)     Tor Works" pictures on the <a href="<page about/overview>">overview page</a>
1489)     from source, so we can translate them as UTF-8 text rather than edit
1490)     them by hand with Gimp. We might want to
1491)     integrate this as an wml file so translations are easy and images are
1492)     generated in multiple languages whenever we build the website.</li>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1493) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1494)     <li>How can we make the various LiveCD/USB systems easier
1495)     to maintain, improve, and document?  One example is <a
Damian Johnson More changes requested by i...

Damian Johnson authored 13 years ago

1496)     href="https://tails.boum.org/">The Amnesic Incognito Live
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1497)     System</a>.
1498)     </li>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1499) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1500)     <li>
1501)     Another anti-censorship project is to try to make Tor
1502)     more scanning-resistant.  Right now, an adversary can identify <a
Sebastian Hahn Fix links that broke due to...

Sebastian Hahn authored 13 years ago

1503)     href="<specblob>proposals/125-bridges.txt">Tor bridges</a>
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1504)     just by trying to connect to them, following the Tor protocol,
1505)     and seeing if they respond.  To solve this, bridges could <a
1506)     href="<svnprojects>design-paper/blocking.html#tth_sEc9.3">act like
1507)     webservers</a> (HTTP or HTTPS) when contacted by port-scanning tools,
1508)     and not act like bridges until the user provides a bridge-specific key.
1509)     To start, check out Shane Pope's <a
1510)     href="http://dl.dropbox.com/u/37735/index.html">thesis and prototype</a>.
1511)     </li>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1512) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1513)     </ol>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1514) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1515)     <a id="Research"></a>
1516)     <h2><a class="anchor" href="#Research">Research</a></h2>
1517)     <ol>
1518)     <li>The "end-to-end traffic confirmation attack":
1519)     by watching traffic at Alice and at Bob, we can <a
1520)     href="http://freehaven.net/anonbib/#danezis:pet2004">compare
1521)     traffic signatures and become convinced that we're watching the same
1522)     stream</a>. So far Tor accepts this as a fact of life and assumes this
1523)     attack is trivial in all cases. First of all, is that actually true? How
1524)     much traffic of what sort of distribution is needed before the adversary
1525)     is confident he has won? Are there scenarios (e.g. not transmitting much)
1526)     that slow down the attack? Do some traffic padding or traffic shaping
1527)     schemes work better than others?</li>
1528)     <li>A related question is: Does running a relay/bridge provide additional
1529)     protection against these timing attacks? Can an external adversary that can't
1530)     see inside TLS links still recognize individual streams reliably?
1531)     Does the amount of traffic carried degrade this ability any? What if the
1532)     client-relay deliberately delayed upstream relayed traffic to create a queue
1533)     that could be used to mimic timings of client downstream traffic to make it
1534)     look like it was also relayed? This same queue could also be used for masking
1535)     timings in client upstream traffic with the techniques from <a
1536)     href="http://www.freehaven.net/anonbib/#ShWa-Timing06">adaptive padding</a>,
1537)     but without the need for additional traffic. Would such an interleaving of
1538)     client upstream traffic obscure timings for external adversaries? Would the
1539)     strategies need to be adjusted for asymmetric links? For example, on
1540)     asymmetric links, is it actually possible to differentiate client traffic from
1541)     natural bursts due to their asymmetric capacity? Or is it easier than
1542)     symmetric links for some other reason?</li>
1543)     <li>Repeat Murdoch and Danezis's <a
1544)     href="http://www.cl.cam.ac.uk/~sjm217/projects/anon/#torta">attack from
1545)     Oakland 05</a> on the current Tor network. See if you can learn why it
1546)     works well on some nodes and not well on others. (My theory is that the
1547)     fast nodes with spare capacity resist the attack better.) If that's true,
1548)     then experiment with the RelayBandwidthRate and RelayBandwidthBurst
1549)     options to run a relay that is used as a client while relaying the
1550)     attacker's traffic: as we crank down the RelayBandwidthRate, does the
1551)     attack get harder? What's the right ratio of RelayBandwidthRate to
1552)     actually capacity? Or is it a ratio at all? While we're at it, does a
1553)     much larger set of candidate relays increase the false positive rate
1554)     or other complexity for the attack? (The Tor network is now almost two
1555)     orders of magnitude larger than it was when they wrote their paper.) Be
1556)     sure to read <a href="http://freehaven.net/anonbib/#clog-the-queue">Don't
1557)     Clog the Queue</a> too.</li>
1558)     <li>The "routing zones attack": most of the literature thinks of
1559)     the network path between Alice and her entry node (and between the
1560)     exit node and Bob) as a single link on some graph. In practice,
1561)     though, the path traverses many autonomous systems (ASes), and <a
1562)     href="http://freehaven.net/anonbib/#feamster:wpes2004">it's not uncommon
1563)     that the same AS appears on both the entry path and the exit path</a>.
1564)     Unfortunately, to accurately predict whether a given Alice, entry,
1565)     exit, Bob quad will be dangerous, we need to download an entire Internet
1566)     routing zone and perform expensive operations on it. Are there practical
1567)     approximations, such as avoiding IP addresses in the same /8 network?</li>
1568)     <li>Other research questions regarding geographic diversity consider
1569)     the tradeoff between choosing an efficient circuit and choosing a random
1570)     circuit. Look at Stephen Rollyson's <a
1571)     href="http://swiki.cc.gatech.edu:8080/ugResearch/uploads/7/ImprovingTor.pdf">position
1572)     paper</a> on how to discard particularly slow choices without hurting
1573)     anonymity "too much". This line of reasoning needs more work and more
1574)     thinking, but it looks very promising.</li>
1575)     <li>Tor doesn't work very well when relays have asymmetric bandwidth
1576)     (e.g. cable or DSL). Because Tor has separate TCP connections between
1577)     each hop, if the incoming bytes are arriving just fine and the outgoing
1578)     bytes are all getting dropped on the floor, the TCP push-back mechanisms
1579)     don't really transmit this information back to the incoming streams.
1580)     Perhaps Tor should detect when it's dropping a lot of outgoing packets,
1581)     and rate-limit incoming streams to regulate this itself? I can imagine
1582)     a build-up and drop-off scheme where we pick a conservative rate-limit,
1583)     slowly increase it until we get lost packets, back off, repeat. We
1584)     need somebody who's good with networks to simulate this and help design
1585)     solutions; and/or we need to understand the extent of the performance
1586)     degradation, and use this as motivation to reconsider UDP transport.</li>
1587)     <li>A related topic is congestion control. Is our
1588)     current design sufficient once we have heavy use? Maybe
1589)     we should experiment with variable-sized windows rather
1590)     than fixed-size windows? That seemed to go well in an <a
Andrew Lewman correct link, fixes #6627.

Andrew Lewman authored 11 years ago

1591)     href="http://www.psc.edu/index.php/hpn-ssh/638">ssh
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1592)     throughput experiment</a>. We'll need to measure and tweak, and maybe
1593)     overhaul if the results are good.</li>
1594)     <li>Our censorship-resistance goals include preventing
1595)     an attacker who's looking at Tor traffic on the wire from <a
1596)     href="<svnprojects>design-paper/blocking.html#sec:network-fingerprint">distinguishing
1597)     it from normal SSL traffic</a>. Obviously we can't achieve perfect
1598)     steganography and still remain usable, but for a first step we'd like to
1599)     block any attacks that can win by observing only a few packets. One of
1600)     the remaining attacks we haven't examined much is that Tor cells are 512
1601)     bytes, so the traffic on the wire may well be a multiple of 512 bytes.
1602)     How much does the batching and overhead in TLS records blur this on the
1603)     wire? Do different buffer flushing strategies in Tor affect this? Could
1604)     a bit of padding help a lot, or is this an attack we must accept?</li>
1605)     <li>Tor circuits are built one hop at a time, so in theory we have the
1606)     ability to make some streams exit from the second hop, some from the
1607)     third, and so on. This seems nice because it breaks up the set of exiting
1608)     streams that a given relay can see. But if we want each stream to be safe,
1609)     the "shortest" path should be at least 3 hops long by our current logic, so
1610)     the rest will be even longer. We need to examine this performance / security
1611)     tradeoff.</li>
1612)     <li>It's not that hard to DoS Tor relays or directory authorities. Are client
1613)     puzzles the right answer? What other practical approaches are there? Bonus
1614)     if they're backward-compatible with the current Tor protocol.</li>
1615)     <li>Programs like <a
Andrew Lewman get the website to build cl...

Andrew Lewman authored 13 years ago

1616)     href="<page torbutton/index>">Torbutton</a> aim to hide
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1617)     your browser's UserAgent string by replacing it with a uniform answer for
1618)     every Tor user. That way the attacker can't splinter Tor's anonymity set
1619)     by looking at that header. It tries to pick a string that is commonly used
1620)     by non-Tor users too, so it doesn't stand out. Question one: how badly
1621)     do we hurt ourselves by periodically updating the version of Firefox
1622)     that Torbutton claims to be? If we update it too often, we splinter the
1623)     anonymity sets ourselves. If we don't update it often enough, then all the
1624)     Tor users stand out because they claim to be running a quite old version
1625)     of Firefox. The answer here probably depends on the Firefox versions seen
1626)     in the wild. Question two: periodically people ask us to cycle through N
1627)     UserAgent strings rather than stick with one. Does this approach help,
1628)     hurt, or not matter? Consider: cookies and recognizing Torbutton users
1629)     by their rotating UserAgents; malicious websites who only attack certain
1630)     browsers; and whether the answers to question one impact this answer.
1631)     </li>
1632)     <li>How many bridge relays do you need to know to maintain
1633)     reachability? We should measure the churn in our bridges. If there is
1634)     lots of churn, are there ways to keep bridge users more likely to stay
1635)     connected?
1636)     </li>
1637)     </ol>
Roger Dingledine add a bunch more projects;...

Roger Dingledine authored 11 years ago

1638) 
Andrew Lewman first cut of the new, shiny...

Andrew Lewman authored 13 years ago

1639)     <p>
1640)     <a href="<page about/contact>">Let us know</a> if you've made progress on any
1641)     of these!
1642)     </p>
1643)   </div>
1644)   <!-- END MAINCOL -->
1645)   <div id = "sidecol">
1646) #include "side.wmi"
1647) #include "info.wmi"
1648)   </div>
1649)   <!-- END SIDECOL -->
1650) </div>
1651) <!-- END CONTENT -->