Jacob Appelbaum commited on 2008-03-11 06:40:37
Zeige 1 geänderte Dateien mit 53 Einfügungen und 16 Löschungen.
... | ... |
@@ -94,7 +94,7 @@ Farsi translations, for the many Tor users in censored areas.</li> |
94 | 94 |
<ol> |
95 | 95 |
|
96 | 96 |
<li> |
97 |
-Tor/Polipo/Vidalia Auto-Update Framework |
|
97 |
+<b>Tor/Polipo/Vidalia Auto-Update Framework</b> |
|
98 | 98 |
<br /> |
99 | 99 |
Vidalia already has the ability to notice when the user is running an |
100 | 100 |
outdated or unrecommended version of Tor. Currently, Vidalia simply pops |
... | ... |
@@ -124,7 +124,7 @@ with the student prior to implementation. |
124 | 124 |
</li> |
125 | 125 |
|
126 | 126 |
<li> |
127 |
-An Improved and More Usable Network Map |
|
127 |
+<b>An Improved and More Usable Network Map</b> |
|
128 | 128 |
<br /> |
129 | 129 |
One of Vidalia's existing features is a network map that shows the user |
130 | 130 |
the approximate geographic location of relays in the Tor network and |
... | ... |
@@ -150,7 +150,7 @@ required. |
150 | 150 |
</li> |
151 | 151 |
|
152 | 152 |
<li> |
153 |
-Better Debian Support & Packaging |
|
153 |
+<b>Better Debian Support & Packaging</b> |
|
154 | 154 |
<br /> |
155 | 155 |
Vidalia currently doesn't play nicely on Debian and Ubuntu with the |
156 | 156 |
default Tor packages. The current Tor packages automatically start Tor |
... | ... |
@@ -182,7 +182,7 @@ experience with Qt is helpful, but not required. |
182 | 182 |
</li> |
183 | 183 |
|
184 | 184 |
<li> |
185 |
-Tor Status Event Interface |
|
185 |
+<b>Tor Status Event Interface<b> |
|
186 | 186 |
<br /> |
187 | 187 |
There may are a number of status changes of which the user may need |
188 | 188 |
to be informed. For example, if the user is trying to set up a Tor |
... | ... |
@@ -217,7 +217,7 @@ design/Photoshop fu, since we might want/need some shiny new icons too. |
217 | 217 |
</li> |
218 | 218 |
|
219 | 219 |
<li> |
220 |
-A translation wiki |
|
220 |
+<b>A Translation Wiki</b> |
|
221 | 221 |
<br /> |
222 | 222 |
We require a way to edit and translate sections of the website — |
223 | 223 |
possibly resulting in a patch for the official svn tree. The current |
... | ... |
@@ -235,7 +235,8 @@ with the software, only the documentation on the website. |
235 | 235 |
</li> |
236 | 236 |
|
237 | 237 |
<li> |
238 |
-https://check.torproject.org |
|
238 |
+<b>Improvements on our active browser configuration tester</b> - |
|
239 |
+<a href="https://check.torproject.org">https://check.torproject.org</a> |
|
239 | 240 |
<br /> |
240 | 241 |
We currently have a functional web page to detect if Tor is working. It |
241 | 242 |
is has a few places where it falls short. It requires improvements with |
... | ... |
@@ -251,7 +252,8 @@ to interact minimally with Tor to test their code. |
251 | 252 |
</li> |
252 | 253 |
|
253 | 254 |
<li> |
254 |
-exitlist.torproject.org |
|
255 |
+<b>Improvements on our DNS Exit List service</b> - |
|
256 |
+<a href="http://exitlist.torproject.org">http://exitlist.torproject.org</a> |
|
255 | 257 |
<br /> |
256 | 258 |
The exitlist software is written by our fabulous anonymous |
257 | 259 |
contributer Tup. It's a DNS server written in Haskell that supports part of our <a |
... | ... |
@@ -270,7 +272,7 @@ torel-design.txt suggestions. |
270 | 272 |
</li> |
271 | 273 |
|
272 | 274 |
<li> |
273 |
-Testing Tor for end users |
|
275 |
+<b>Testing integration of Tor with web browsers for our end users</b> |
|
274 | 276 |
<br /> |
275 | 277 |
The Tor project currently lacks a solid test to ensure that a |
276 | 278 |
user has a properly configured web browser. It should test for as |
... | ... |
@@ -291,6 +293,8 @@ to prevent Tor leakage. |
291 | 293 |
</li> |
292 | 294 |
|
293 | 295 |
<li> |
296 |
+<b>Improving our ability to be resistant to censorship</b> |
|
297 |
+<br /> |
|
294 | 298 |
Tor needs even better censorship resistance mechanisms. There are |
295 | 299 |
several mechanisms that can help. Tor should be able listen on multiple |
296 | 300 |
addresses and ports, and allow clients to connect to all of them. |
... | ... |
@@ -299,6 +303,8 @@ contacted by port-scanning tools. |
299 | 303 |
</li> |
300 | 304 |
|
301 | 305 |
<li> |
306 |
+<b>Libevent and Tor integration improvements</b> |
|
307 |
+<br /> |
|
302 | 308 |
Tor should make better use of the more recent features of Niels Provos's |
303 | 309 |
Libevent library. Libevent already provides HTTP and socket buffers; |
304 | 310 |
Tor's code for those could be replaced. We'll need to improve libevent's |
... | ... |
@@ -307,6 +313,8 @@ libevent's buffer abstraction. |
307 | 313 |
</li> |
308 | 314 |
|
309 | 315 |
<li> |
316 |
+<b>Tuneup Tor!</b> |
|
317 |
+<br /> |
|
310 | 318 |
Tor should possibly measure bandwidth in a distributed way, as in the |
311 | 319 |
<a href="http://freehaven.net/anonbib/">"A Tuneup for Tor"</a> paper |
312 | 320 |
by Snader and Borisov. A student could use current testing code to |
... | ... |
@@ -317,6 +325,8 @@ at the directory authorities. |
317 | 325 |
</li> |
318 | 326 |
|
319 | 327 |
<li> |
328 |
+<b>Improving the Tor QA process: Continuous Integration for Windows builds</b> |
|
329 |
+<br /> |
|
320 | 330 |
It would be useful to have automated build processes for Windows and |
321 | 331 |
probably other platforms. The purpose of having a continuous integration |
322 | 332 |
build environment is to ensure that Windows isn't left behind for any of |
... | ... |
@@ -332,10 +342,19 @@ of the respective Tor related code bases from scratch. Furthermore, the |
332 | 342 |
person should have some experience building software in Windows |
333 | 343 |
environments as this is the target audience we want to ensure we do not |
334 | 344 |
leave behind. It would require close work with the Tor source code but |
335 |
-probably only in the form of building, not authoring. |
|
345 |
+probably only in the form of building, not authoring.<br /> |
|
346 |
+Additionally, we need to automate our performance testing for all platforms. |
|
347 |
+We've got buildbot (except on Windows — as noted above) to automate |
|
348 |
+our regular integration and compile testing already, |
|
349 |
+but we need to get our network simulation tests (as built in torflow) |
|
350 |
+updated for more recent versions of Tor, and designed to launch a test |
|
351 |
+network either on a single machine, or across several, so we can test |
|
352 |
+changes in performance on machines in different roles automatically.<br /> |
|
336 | 353 |
</li> |
337 | 354 |
|
338 | 355 |
<li> |
356 |
+<b>Improve our unit testing process</b> |
|
357 |
+<br /> |
|
339 | 358 |
Tor needs to be far more tested. This is a multi-part effort. To start |
340 | 359 |
with, our unit test coverage should rise substantially, especially in |
341 | 360 |
the areas outside the utility functions. This will require significant |
... | ... |
@@ -351,6 +370,8 @@ changes in performance on machines in different roles automatically.<br /> |
351 | 370 |
</li> |
352 | 371 |
|
353 | 372 |
<li> |
373 |
+<b>Help revive the Java community around Tor</b> |
|
374 |
+<br /> |
|
354 | 375 |
Reanimate one of the approaches to implement a Tor client in Java, |
355 | 376 |
e.g. the <a href="http://onioncoffee.sourceforge.net/">OnionCoffee |
356 | 377 |
project</a>, and make it run on <a |
... | ... |
@@ -361,7 +382,7 @@ protocol versions like the <a href="<svnsandbox>doc/spec/dir-spec.txt">v3 |
361 | 382 |
directory protocol</a>. Further, support for requesting or even |
362 | 383 |
providing Tor hidden services would be neat, but not required. The |
363 | 384 |
student should be able to understand and write new Java code, including |
364 |
-a Java cryptography API. Being able to read C code would be helping, |
|
385 |
+a Java cryptography API. Being able to read C code would be helpful, |
|
365 | 386 |
too. The student should be willing to read the existing documentation, |
366 | 387 |
implement code based on it, and, if required, refine the documentation |
367 | 388 |
if things are underdocumented. This project is mostly about coding and |
... | ... |
@@ -369,6 +390,8 @@ to a small degree about design. |
369 | 390 |
</li> |
370 | 391 |
|
371 | 392 |
<li> |
393 |
+<b>Become the PuppeTor Master</b> |
|
394 |
+<br /> |
|
372 | 395 |
Write a tool that runs automatic system tests in addition |
373 | 396 |
to the existing unit tests. The Java-based Tor simulator <a |
374 | 397 |
href="https://tor-svn.freehaven.net/svn/puppetor/trunk/">PuppeTor</a> |
... | ... |
@@ -387,6 +410,8 @@ about design and partly about coding. |
387 | 410 |
</li> |
388 | 411 |
|
389 | 412 |
<li> |
413 |
+<b>Bring moniTor to life</b> |
|
414 |
+<br /> |
|
390 | 415 |
Implement a <a href="http://www.ss64.com/bash/top.html">top-like</a> |
391 | 416 |
management tool for Tor relays. The purpose of such a tool would be |
392 | 417 |
to monitor a local Tor relay via its control port and include useful |
... | ... |
@@ -402,22 +427,32 @@ tool and designing its interface; but on the other part, the project |
402 | 427 |
also requires a lot of coding. |
403 | 428 |
</li> |
404 | 429 |
|
405 |
-<li>Help Mike Perry on his <a |
|
430 |
+<li> |
|
431 |
+<b>TorFlow improvements</b> |
|
432 |
+<br /> |
|
433 |
+Help Mike Perry on his <a |
|
406 | 434 |
href="https://www.torproject.org/svn/torflow/">TorFlow</a> |
407 | 435 |
library (<a href="https://www.torproject.org/svn/torflow/TODO">TODO</a>): |
408 | 436 |
it's a python library that uses the <a |
409 | 437 |
href="https://www.torproject.org/svn/torctl/doc/howto.txt">Tor controller |
410 | 438 |
protocol</a> to instruct Tor to build circuits in a variety of ways, |
411 |
-and then it measures performance and tries to detect anomalies.</li> |
|
412 |
-<li>Torflow / soat to detect bad relays and automatically get that |
|
413 |
-info to the directory authorities for realtime blacklisting</li> |
|
414 |
-<li>Torstatus. Set up an automated system for tracking network health |
|
439 |
+and then it measures performance and tries to detect anomalies. |
|
440 |
+Help detect bad relays and automatically get that |
|
441 |
+info to the directory authorities for realtime blacklisting. |
|
442 |
+ |
|
443 |
+<li> |
|
444 |
+<b>Help track the overall Tor Network status</b> |
|
445 |
+Torstatus. Set up an automated system for tracking network health |
|
415 | 446 |
over time, graphing it, etc. Better metrics for assessing network |
416 |
-health and growth.</li> |
|
447 |
+health and growth. Make it short and simple. Unbloated and easy to audit. |
|
448 |
+</li> |
|
449 |
+ |
|
417 | 450 |
<li>vidalia and upnp</li> |
418 | 451 |
<li>nymble</li> |
419 | 452 |
|
420 | 453 |
<li> |
454 |
+<b>Porting Polipo to Windows</b> |
|
455 |
+<br /> |
|
421 | 456 |
Help port <a |
422 | 457 |
href="http://www.pps.jussieu.fr/~jch/software/polipo/">Polipo</a> to |
423 | 458 |
Windows. 1) handle spaces in path names and understand the filesystem |
... | ... |
@@ -434,6 +469,8 @@ menu options. Double bonus if it's cross-platform compatible. |
434 | 469 |
</li> |
435 | 470 |
|
436 | 471 |
<li> |
472 |
+<b></b> |
|
473 |
+<br /> |
|
437 | 474 |
a way to generate the website diagrams from source, so we can translate |
438 | 475 |
them as utf-8 text rather than with gimp. (svg? or imagemagick?) |
439 | 476 |
integrate this with a wml file so translations are easy and images are |
440 | 477 |