Update to the german translation. Just a reminder: There are two pages that aren't yet translated: the FAQ and the ideas part in the volunteer page. This commit includes changes to: trunk/de/easy-download.wml, trunk/de/gsoc.wml, trunk/de/verifying-signatures.wml and trunk/de/volunteer.wml.
Oliver Knapp

Oliver Knapp commited on 2009-03-12 10:38:52
Zeige 4 geänderte Dateien mit 496 Einfügungen und 301 Löschungen.

... ...
@@ -1,5 +1,5 @@
1 1
 ## translation metadata
2
-# Based-On-Revision: 18887
2
+# Based-On-Revision: 18918
3 3
 # Last-Translator: mail a-t oliverknapp .de
4 4
 
5 5
 #include "head.wmi" TITLE="Tor: Download" CHARSET="UTF-8"
... ...
@@ -44,14 +44,15 @@ Bebilderte Anleitung</a>.</td>
44 44
 verschlüsselt. Du solltest verstehen, was Tor für dich macht und was es nicht
45 45
 macht. <a href="<page download>#Warning">Lies mehr über dieses Thema!</a>.</p></li>
46 46
 
47
-<li><p>Überprüfe die Signaturen für die Pakete! (<a href="<page verifying-signatures>">Wie das geht?</a>):
47
+<li><p>Überprüfe die Signaturen für die Pakete! (<a href="<page verifying-signatures>">
48
+Wie das geht?</a>):</p>
48 49
   <ul>
49 50
     <li><a href="torbrowser/dist/tor-im-browser-<version-torimbrowserbundle>_de.exe.asc">
50 51
     Signatur der installationsfreien Windowsversion</a></li>
51 52
     <li><a href="<package-win32-bundle-stable-sig>">Signatur des "Installationspaket für
52 53
     Windows"</a></li>
53 54
     <li><a href="<package-osx-bundle-stable-sig>">Signatur des OS X Installationspakets</a></li>
54
-  </ul></p></li>
55
+  </ul></li>
55 56
 
56 57
 <li><p>Du brauchst mehr Auswahl? <a href="<page download>">Hier gibt es unserer
57 58
 Downloadseite für fortgeschrittene Anwender</a>.</p></li>
... ...
@@ -1,31 +1,31 @@
1 1
 ## translation metadata
2
-# Based-On-Revision: 18524
2
+# Based-On-Revision: 18909
3 3
 # Last-Translator: mail et oliverknapp INSERT_DOT de
4 4
 
5
-#include "head.wmi" TITLE="Tor: Google Summer of Code 2008" CHARSET="UTF-8"
5
+#include "head.wmi" TITLE="Tor: Google Summer of Code 2009" CHARSET="UTF-8"
6 6
 
7 7
 <div class="main-column">
8 8
 
9
-<h2>Tor: Google Summer of Code 2008</h2>
9
+<h2>Tor: Google Summer of Code 2009</h2>
10 10
 <hr />
11 11
 
12
-<p> Letztes Jahr (2007) hat das Tor Projekt zusammen mit der <a
13
-href="https://www.eff.org/">Electronic Frontier Foundation</a>
14
-erfolgreich am <a href="http://code.google.com/soc/">Google Summer of Code
15
-2007</a> teilgenommen. Insgesamt hatten wir vier Studenten als
16
-Vollzeitentwickler im Sommer 2007. </p>
12
+<p> Doe letzten beiden Jahren, hat das Tor Projekt zusammen mit der <a
13
+href="https://www.eff.org/">Electronic Frontier Foundation</a> erfolgreich am
14
+<a href="http://code.google.com/soc/">Google Summer of Code 2007</a> und <a
15
+href="http://code.google.com/soc/2008/eff/about.html">2008</a> teilgenommen.
16
+Insgesamt hatten wir 11 Studenten als Vollzeitentwickler in den Sommern 2007
17
+und 2008. </p>
17 18
 
18 19
 <p> Google hat angekündigt, dass es auch einen <a
19
-href="http://code.google.com/soc/2008/">Google Summer of Code 2008</a> geben
20
-wird... und wir wurden <a
21
-href="http://code.google.com/soc/2008/eff/about.html">angenommen!</a> Diese
20
+href="http://code.google.com/soc/2008/">Google Summer of Code 2009</a> geben
21
+wird und wir wollen uns bewerben. Diese
22 22
 Seite enthält einige Informationen für interessierte Studenten. </p>
23 23
 
24
-<p> Der letztmögliche <a
24
+<!--<p> Der letztmögliche <a
25 25
 href="http://code.google.com/opensource/gsoc/2008/faqs.html#0.1_timeline">
26 26
 Zeitpunkt</a> für deine <a
27 27
 href="http://groups.google.com/group/google-summer-of-code-announce/web/guide-to-the-gsoc-web-app-for-student-applicants">
28
-Bewerbung</a> ist der <b>7. April 2008</b> um 17 Uhr Pacific time. </p>
28
+Bewerbung</a> ist der <b>7. April 2008</b> um 17 Uhr Pacific time. </p>-->
29 29
 
30 30
 <p> Du musst unabbhängig und ohne dass wir dich ständig motivieren müssen
31 31
 arbeiten können. Wir haben eine spannende Community von interessierten
... ...
@@ -59,7 +59,17 @@ Entwicklung von Tor hat viele Fragen und Probleme im Bereich der <a
59 59
 href="http://freehaven.net/anonbib/">anonymen Systeme</a> aufgeworfen.</li>
60 60
 </ul>
61 61
 
62
+<a id="Ideas"></a>
63
+<h2><a class="anchor" href="#Ideas">Ideensammlung</a></h2>
64
+
65
+<p>Dieses Jahr haben wir zwei Ideen: Eine Sache wäre es <a href="<page
66
+volunteer>#Projects">bei der Entwicklung von Tor zu helfen</a>, die andere
67
+Idee ist, bei der Entwicklung des
68
+<a href="http://www.eff.org/testyourisp/switzerland">Switzerland Werkzeugs der
69
+EFF zu helfen.</a>.</p>
70
+
62 71
 <a id="Template"></a>
72
+<h2><a class="anchor" href="#Template">Application Template</a></h2>
63 73
 
64 74
 <p> Bitte benutze die folgende Vorlage für deine Bewerbung, damit stellst du
65 75
 sicher, dass du alle nötigen Informationen, die wir brauchen um dich und
... ...
@@ -67,13 +77,12 @@ deinen Vorschlag zu bewerten, mitlieferst. </p>
67 77
 
68 78
 <ol>
69 79
 
70
-<li>An welchem Projekt willst du arbeiten? Schau in <a href="<page
71
-volunteer>#Projects">diese Liste</a> für Ideen oder denk dir was Eigenes
72
-aus. Dein
73
-Vorschlag sollte generelle Informationen über das beinhalten, was du machen
74
-willst, wobei du Bereiche in denen du Probleme erwartest genauer ausführen
75
-solltest. In deinem Vorschlag solltest du das Projekt auch in kleinere Etappen
76
-zerlegen und uns davon überzeugen, dass du planst es fertig zu bekommen.</li>
80
+<li>An welchem Projekt willst du arbeiten? Nutze unsere Ideen als ein Anfang
81
+und entwickle eine eigene Idee an der du arbeiten möchtest. Dein Vorschlag
82
+sollte generelle Informationen über das beinhalten, was du machen willst,
83
+wobei du Bereiche in denen du Probleme erwartest genauer ausführen solltest.
84
+In deinem Vorschlag solltest du das Projekt auch in kleinere Etappen zerlegen
85
+und uns davon überzeugen, dass du planst es fertig zu bekommen.</li>
77 86
 
78 87
 <li>Zeig uns ein Code-Beispiel: Etwas Schickes und Sauberes, damit wir sehen
79 88
 dass du weißt was du so treibst, am Besten von einem bestehenden Projekt.</li>
... ...
@@ -107,8 +116,9 @@ Forschungsgruppe bist, welche ist das?</li>
107 116
 
108 117
 </ol>
109 118
 
110
-<p> Wir haben für dieses Jahr 11 Mentoren ausgewählt &mdash; die meisten
119
+<p> Wir haben für dieses Jahr 12 Mentoren ausgewählt &mdash; die meisten
111 120
 stammen aus dem <a href="<page people>#Core">Kernentwickler-Team von Tor</a>
121
+und ein paar Leute von der <a href="http://www.eff.org/about/staff">EFF</a>
112 122
 &mdash; daher sollten wir in der Lage sein ein breites Spektrum an Projekten
113 123
 zu begleiten; neben der Arbeit an Tor selbst zum Beispiel auch Projekte an
114 124
 zusätzlichen Komponenten oder anderen, mit Tor verbundenen Programmen. Wir
... ...
@@ -1,5 +1,5 @@
1 1
 ## translation metadata
2
-# Based-On-Revision: 18276
2
+# Based-On-Revision: 18807
3 3
 # Last-Translator: mail (a.t) oliverknapp. de
4 4
 
5 5
 
... ...
@@ -1,5 +1,5 @@
1 1
 ## translation metadata
2
-# Based-On-Revision: 18874
2
+# Based-On-Revision: 18921
3 3
 # Last-Translator: mail 11 oliverknapp 22 de
4 4
 
5 5
 #include "head.wmi" TITLE="Tor: Mithelfen" CHARSET="UTF-8"
... ...
@@ -75,17 +75,15 @@
75 75
   dies zu erreichen, wäre alle Daten zu Google zu schicken und diese
76 76
   machen dann die Karte für uns. Wie sehr beeinflusst dies die
77 77
   Privatsphäre und haben wir noch andere gute Optionen?</li>
78
-  <li>Tor bietet anonyme Verbindungen. Wenn du jedoch verschiedene
79
-    Pseudonyme haben möchtest (z.B. rufst du desöfteren zwei Webseiten
80
-    auf und wenn das jemand weiß, kann er auf dich schliessen.),
81
-    unterstützen wir das nicht sehr gut.  Wir sollten einen guten
82
-    Ansatz und eine Schnittstelle zur Handhabung von pseudonymen
83
-    Profilen finden. Schaue dir
84
-    den <a
85
-    href="http://archives.seul.org/or/talk/Dec-2004/msg00086.html">Beitrag
86
-    </a> und den <a
87
-    href="http://archives.seul.org/or/talk/Jan-2005/msg00007.html">Followup</a>
88
-    für mehr Details an.</li>
78
+</ol>
79
+
80
+<a id="Advocacy"></a>
81
+<h2><a class="anchor" href="#Advocacy">Tor-Botschafter</a></h2>
82
+<ol>
83
+<li>Baue ein Communitylogo unter einer Creative Commons Lizenz, das alle benutzen und verändern dürfen</li>
84
+<li>Mache eine Präsentation die weltweit für Talks und Diskusionen über Tor verwendet werden kann.</li>
85
+<li>Dreh ein Video über deine positiven Einsätze von Tor. Es haben schon ein paar auf Seesmic angefangen.</li>
86
+<li>Entwickle ein Poster oder ein Set von Postern rund um ein Thema wie z.B. "Freiheit dank Tor!"</li>
89 87
 </ol>
90 88
 
91 89
 <a id="Documentation"></a>
... ...
@@ -162,6 +160,14 @@ currently does not exist and would need to be developed as well.
162 160
 <li>
163 161
 <b>Help track the overall Tor Network status</b>
164 162
 <br />
163
+Priority: <i>Medium to High</i>
164
+<br />
165
+Effort Level: <i>Medium</i>
166
+<br />
167
+Skill Level: <i>Medium</i>
168
+<br />
169
+Likely Mentors: <i>Karsten</i>
170
+<br />
165 171
 It would be great to set up an automated system for tracking network
166 172
 health over time, graphing it, etc. Part of this project would involve
167 173
 inventing better metrics for assessing network health and growth. Is the
... ...
@@ -230,6 +236,14 @@ experience with Qt is helpful, but not required.
230 236
 <li>
231 237
 <b>Improving Tor's ability to resist censorship</b>
232 238
 <br />
239
+Priority: <i>High</i>
240
+<br />
241
+Effort Level: <i>High</i>
242
+<br />
243
+Skill Level: <i>High</i>
244
+<br />
245
+Likely Mentors: <i>Nick</i>
246
+<br />
233 247
 The Tor 0.2.0.x series makes <a
234 248
 href="<svnsandbox>doc/design-paper/blocking.html">significant
235 249
 improvements</a> in resisting national and organizational censorship.
... ...
@@ -290,20 +304,27 @@ with others prior to implementation.
290 304
 </li>
291 305
 -->
292 306
 
293
-<!-- Matt already made good progress on this.
294 307
 <li>
295 308
 <b>An Improved and More Usable Network Map in Vidalia</b>
296 309
 <br />
310
+Priority: <i>Medium</i>
311
+<br />
312
+Effort Level: <i>Medium</i>
313
+<br />
314
+Skill Level: <i>Medium</i>
315
+<br />
316
+Likely Mentors: <i>Matt</i>
317
+<br />
297 318
 One of Vidalia's existing features is a network map that shows the user
298 319
 the approximate geographic location of relays in the Tor network and
299 320
 plots the paths the user's traffic takes as it is tunneled through the
300 321
 Tor network. The map is currently not very interactive and has rather
301
-poor graphics. Instead, we would like to leverage KDE's Marble widget
302
-that gives us a better quality map and enables improved interactivity,
322
+poor graphics. Instead, we implemented KDE's Marble widget such
323
+that it gives us a better quality map and enables improved interactivity,
303 324
 such as allowing the user to click on individual relays or circuits to
304
-display additional information. We might also consider adding the ability
325
+display additional information. We want to add the ability
305 326
 for users to click on a particular relay or a country containing one or
306
-more Tor exit relays and say, "I want my connections to foo.com to exit
327
+more Tor exit relays and say, "I want my connections to exit
307 328
 from here."
308 329
 <br />
309 330
 This project will first involve getting familiar with Vidalia
... ...
@@ -316,11 +337,18 @@ A person undertaking this project should have good C++ development
316 337
 experience. Previous experience with Qt and CMake is helpful, but not
317 338
 required.
318 339
 </li>
319
--->
320 340
 
321 341
 <li>
322 342
 <b>Tor Controller Status Event Interface</b>
323 343
 <br />
344
+Priority: <i>Medium</i>
345
+<br />
346
+Effort Level: <i>Medium</i>
347
+<br />
348
+Skill Level: <i>Medium</i>
349
+<br />
350
+Likely Mentors: <i>Matt</i>
351
+<br />
324 352
 There are a number of status changes inside Tor of which the user may need
325 353
 to be informed. For example, if the user is trying to set up his Tor as a
326 354
 relay and Tor decides that its ports are not reachable from outside
... ...
@@ -386,7 +414,7 @@ href="<svnsandbox>doc/spec/proposals/131-verify-tor-usage.txt">proposal
386 414
 The <a href="http://p56soo2ibjkx23xo.onion/">exitlist software</a>
387 415
 is written by our fabulous anonymous
388 416
 contributer Tup. It's a DNS server written in Haskell that supports part of our <a
389
-href="https://<svnsandbox>doc/contrib/torel-design.txt">exitlist
417
+href="<svnsandbox>doc/contrib/torel-design.txt">exitlist
390 418
 design document</a>. Currently, it is functional and it is used by
391 419
 check.torproject.org and other users. The issues that are outstanding
392 420
 are mostly aesthetic. This wonderful service could use a much better
... ...
@@ -446,6 +474,14 @@ Also tricky will be adding rate-limiting to Libevent.
446 474
 <li>
447 475
 <b>Tuneup Tor!</b>
448 476
 <br />
477
+Priority: <i>Medium</i>
478
+<br />
479
+Effort Level: <i>Medium</i>
480
+<br />
481
+Skill Level: <i>Medium to High</i>
482
+<br />
483
+Likely Mentors: <i>Nick, Roger, Mike</i>
484
+<br />
449 485
 Right now, Tor relays measure and report their own bandwidth, and Tor
450 486
 clients choose which relays to use in part based on that bandwidth.
451 487
 This approach is vulnerable to
... ...
@@ -499,6 +535,14 @@ changes in performance on machines in different roles automatically.
499 535
 <li>
500 536
 <b>Improve our unit testing process</b>
501 537
 <br />
538
+Priority: <i>Medium</i>
539
+<br />
540
+Effort Level: <i>Medium</i>
541
+<br />
542
+Skill Level: <i>Medium</i>
543
+<br />
544
+Likely Mentors: <i>Nick</i>
545
+<br />
502 546
 Tor needs to be far more tested. This is a multi-part effort. To start
503 547
 with, our unit test coverage should rise substantially, especially in
504 548
 the areas outside the utility functions. This will require significant
... ...
@@ -508,8 +552,8 @@ as possible from globals.
508 552
 Additionally, we need to automate our performance testing. We've got
509 553
 buildbot to automate our regular integration and compile testing already
510 554
 (though we need somebody to set it up on Windows),
511
-but we need to get our network simulation tests (as built in
512
-<a href="https://svn.torproject.org/svn/torflow/trunk/README">TorFlow</a>)
555
+but we need to get our network simulation tests (as built in <a
556
+href="https://svn.torproject.org/svn/torflow/trunk/README">TorFlow</a>)
513 557
 updated for more recent versions of Tor, and designed to launch a test
514 558
 network either on a single machine, or across several, so we can test
515 559
 changes in performance on machines in different roles automatically.
... ...
@@ -518,6 +562,14 @@ changes in performance on machines in different roles automatically.
518 562
 <li>
519 563
 <b>Help revive an independent Tor client implementation</b>
520 564
 <br />
565
+Priority: <i>Medium</i>
566
+<br />
567
+Effort Level: <i>High</i>
568
+<br />
569
+Skill Level: <i>Medium to High</i>
570
+<br />
571
+Likely Mentors: <i>Karsten, Nick</i>
572
+<br />
521 573
 Reanimate one of the approaches to implement a Tor client in Java,
522 574
 e.g. the <a href="http://onioncoffee.sourceforge.net/">OnionCoffee
523 575
 project</a>, and make it run on <a
... ...
@@ -528,7 +580,8 @@ protocol versions like the <a href="<svnsandbox>doc/spec/dir-spec.txt">v3
528 580
 directory protocol</a>. Further, support for requesting or even
529 581
 providing Tor hidden services would be neat, but not required.
530 582
 <br />
531
-A perspective developer should be able to understand and write new Java code, including
583
+A prospective developer should be able to understand and write new Java
584
+code, including
532 585
 a Java cryptography API. Being able to read C code would be helpful,
533 586
 too. One should be willing to read the existing documentation,
534 587
 implement code based on it, and refine the documentation
... ...
@@ -539,6 +592,14 @@ to a small degree about design.
539 592
 <li>
540 593
 <b>Bring moniTor to life</b>
541 594
 <br />
595
+Priority: <i>Medium</i>
596
+<br />
597
+Effort Level: <i>Medium</i>
598
+<br />
599
+Skill Level: <i>Low to Medium</i>
600
+<br />
601
+Likely Mentors: <i>Karsten, Jacob</i>
602
+<br />
542 603
 Implement a <a href="http://www.ss64.com/bash/top.html">top-like</a>
543 604
 management tool for Tor relays. The purpose of such a tool would be
544 605
 to monitor a local Tor relay via its control port and include useful
... ...
@@ -577,22 +638,28 @@ with not too much involvement in the Tor internals.
577 638
 -->
578 639
 
579 640
 <li>
580
-<b>Porting Polipo to Windows</b>
641
+<b>Improving Polipo on Windows</b>
642
+<br />
643
+Priority: <i>Medium</i>
644
+<br />
645
+Effort Level: <i>Low</i>
646
+<br />
647
+Skill Level: <i>Medium</i>
648
+<br />
649
+Likely Mentors: <i>Martin</i>
581 650
 <br />
582 651
 Help port <a
583 652
 href="http://www.pps.jussieu.fr/~jch/software/polipo/">Polipo</a> to
584 653
 Windows. Example topics to tackle include:
585
-1) handle spaces in path names and understand the filesystem
586
-namespace &mdash; that is, where application data, personal data,
587
-and program data typically reside in various versions of Windows. 2) the
588
-ability to handle ipv6 communications. 3) the ability to asynchronously
654
+1) the ability to asynchronously
589 655
 query name servers, find the system nameservers, and manage netbios
590
-and dns queries. 4) use native regex capabilities of Windows, rather
591
-than using 3rd party GNU regex libraries. 5) manage events and buffers
656
+and dns queries.
657
+2) manage events and buffers
592 658
 natively (i.e. in Unix-like OSes, Polipo defaults to 25% of ram, in
593
-Windows it's whatever the config specifies). 6) some sort of GUI config
659
+Windows it's whatever the config specifies). 3) some sort of GUI config
594 660
 and reporting tool, bonus if it has a systray icon with right clickable
595 661
 menu options. Double bonus if it's cross-platform compatible.
662
+3) allow the software to use the Windows Registry and handle proper Windows directory locations, such as "C:\Program Files\Polipo"
596 663
 </li>
597 664
 
598 665
 <!-- Is Blossom development still happening?
... ...
@@ -648,9 +716,17 @@ the core of the Blossom effort.
648 716
 <li>
649 717
 <b>Implement a torrent-based scheme for downloading Thandy packages</b>
650 718
 <br />
719
+Priority: <i>Medium</i>
720
+<br />
721
+Effort Level: <i>High</i>
722
+<br />
723
+Skill Level: <i>Medium to High</i>
724
+<br />
725
+Likely Mentors: <i>Martin, Nick</i>
726
+<br />
651 727
 <a
652 728
 href="http://git.torproject.org/checkout/thandy/master/specs/thandy-spec.txt">Thandy</a>
653
-is a relatively new software to allow automatic updates of Tor and related
729
+is a relatively new software to allow assisted updates of Tor and related
654 730
 software. Currently, there are very few users, but we expect Thandy to be
655 731
 used by almost every Tor user in the future. To avoid crashing servers on
656 732
 the day of a Tor update, we need new ways to distribute new packages
... ...
@@ -663,6 +739,14 @@ there should be an easy way for them to help distributing the packages.
663 739
 <li>
664 740
 <b>Torbutton equivalent for Thunderbird</b>
665 741
 <br />
742
+Priority: <i>Medium</i>
743
+<br />
744
+Effort Level: <i>High</i>
745
+<br />
746
+Skill Level: <i>High</i>
747
+<br />
748
+Likely Mentors: <i>Mike</i>
749
+<br />
666 750
 We're hearing from an increasing number of users that they want to use
667 751
 Thunderbird with Tor. However, there are plenty of application-level
668 752
 concerns, for example, by default Thunderbird will put your hostname in
... ...
@@ -673,22 +757,29 @@ push to build a Thunderbird extension similar to Torbutton.
673 757
 <li>
674 758
 <b>New Torbutton Features</b>
675 759
 <br />
760
+Priority: <i>Medium</i>
761
+<br />
762
+Effort Level: <i>High</i>
763
+<br />
764
+Skill Level: <i>High</i>
765
+<br />
766
+Likely Mentors: <i>Mike</i>
767
+<br/>
676 768
 There are several <a
677
-href="https://bugs.torproject.org/flyspray/index.php?tasks=all&project=5&type=2">good
769
+href="https://bugs.torproject.org/flyspray/index.php?tasks=all&amp;project=5&amp;type=2">good
678 770
 feature requests</a> on the Torbutton Flyspray section. In particular, <a
679
-href="https://bugs.torproject.org/flyspray/index.php?do=details&id=523">Integrating
771
+href="https://bugs.torproject.org/flyspray/index.php?do=details&amp;id=523">Integrating
680 772
 'New Identity' with Vidalia</a>,
681
-<a href="https://bugs.torproject.org/flyspray/index.php?do=details&id=940">ways of
773
+<a href="https://bugs.torproject.org/flyspray/index.php?do=details&amp;id=940">ways of
682 774
 managing multiple cookie jars/identities</a>, <a
683
-href="https://bugs.torproject.org/flyspray/index.php?do=details&id=637">preserving
684
-specific cookies</a> when
685
-cookies are cleared,
775
+href="https://bugs.torproject.org/flyspray/index.php?do=details&amp;id=637">preserving
776
+specific cookies</a> when cookies are cleared,
686 777
 <a
687
-href="https://bugs.torproject.org/flyspray/index.php?do=details&id=524">better
778
+href="https://bugs.torproject.org/flyspray/index.php?do=details&amp;id=524">better
688 779
 referrer spoofing</a>, <a
689
-href="https://bugs.torproject.org/flyspray/index.php?do=details&id=564">correct
780
+href="https://bugs.torproject.org/flyspray/index.php?do=details&amp;id=564">correct
690 781
 Tor status reporting</a>, and <a
691
-href="https://bugs.torproject.org/flyspray/index.php?do=details&id=462">"tor://"
782
+href="https://bugs.torproject.org/flyspray/index.php?do=details&amp;id=462">"tor://"
692 783
 and "tors://" urls</a> are all interesting
693 784
 features that could be added.
694 785
 <br />
... ...
@@ -700,6 +791,14 @@ with not too much involvement in the Tor internals.
700 791
 <li>
701 792
 <b>Usability testing of Tor</b>
702 793
 <br />
794
+Priority: <i>Medium</i>
795
+<br />
796
+Effort Level: <i>Medium</i>
797
+<br />
798
+Skill Level: <i>Low to Medium</i>
799
+<br />
800
+Likely Mentors: <i>Andrew</i>
801
+<br />
703 802
 Especially the browser bundle, ideally amongst our target demographic.
704 803
 That would help a lot in knowing what needs to be done in terms of bug
705 804
 fixes or new features. We get this informally at the moment, but a more
... ...
@@ -709,6 +808,14 @@ structured process would be better.
709 808
 <li>
710 809
 <b>Translation wiki for our website</b>
711 810
 <br />
811
+Priority: <i>High</i>
812
+<br />
813
+Effort Level: <i>Medium</i>
814
+<br />
815
+Skill Level: <i>Medium</i>
816
+<br />
817
+Likely Mentors: <i>Jacob</i>
818
+<br />
712 819
 The Tor Project has been working over the past year to set up web-based
713 820
 tools to help volunteers translate our applications into other languages.
714 821
 We finally hit upon Pootle, and we have a fine web-based translation engine
... ...
@@ -718,259 +825,337 @@ files. This project is about finding a way to convert our wml files into po
718 825
 strings and back, so they can be handled by Pootle.
719 826
 </li>
720 827
 
828
+<li>
829
+<b>New Thandy Features</b>
830
+<br />
831
+Priority: <i>Medium</i>
832
+<br />
833
+Effort Level: <i>Medium</i>
834
+<br />
835
+Skill Level: <i>Medium to High</i>
836
+<br />
837
+Likely Mentors: <i>Martin</i>
838
+<br />
839
+Additional capabilities are needed for assisted updates of all the Tor
840
+related software for Windows and other operating systems. Some of the
841
+features to consider include:
842
+1) Integration of the <a
843
+href="http://chandlerproject.org/Projects/MeTooCrypto">MeTooCrypto
844
+Python library</a>
845
+for authenticated HTTPS downloads. 2) Adding a level of indirection
846
+between the timestamp signatures and the package files included in an
847
+update. See the "Thandy attacks / suggestions" thread on or-dev.
848
+3) Support locale specific installation and configuration of assisted
849
+updates based on preference, host, or user account language settings.
850
+Familiarity with Windows codepages, unicode, and other character sets
851
+is helpful in addition to general win32 and posix API experience and
852
+Python proficiency.
853
+</li>
854
+
855
+<li>
856
+<b>Intermediate Level Network Device Driver</b>
857
+<br />
858
+Priority: <i>Low</i>
859
+<br />
860
+Effort Level: <i>High</i>
861
+<br />
862
+Skill Level: <i>High</i>
863
+<br />
864
+Likely Mentors: <i>Martin</i>
865
+<br />
866
+The WinPCAP device driver used by Tor VM for bridged networking does
867
+not support a number of wireless and non-Ethernet network adapters.
868
+Implementation of a intermediate level network device driver for win32
869
+and 64bit would provide a way to intercept and route traffic over such
870
+networks. This project will require knowledge of and experience with
871
+Windows kernel device driver development and testing. Familiarity with
872
+Winsock and Qemu would also be helpful.
873
+</li>
874
+
875
+<li>
876
+<b>Tor Browser Bundle for Linux/Mac OS X</b>
877
+<br />
878
+Priority: <i>High</i>
879
+<br />
880
+Effort Level: <i>High</i>
881
+<br />
882
+Skill Level: <i>Medium</i>
883
+<br />
884
+Likely Mentors: <i>Steven</i>
885
+<br />
886
+The Tor Browser bundle incorporates Tor, Firefox, and the Vidalia user
887
+interface (and optionally Pidgin IM). Components are pre-configured to
888
+operate in a secure way, and it has very few dependencies on the
889
+installed operating system. It has therefore become one of the most
890
+easy to use, and popular, ways to use Tor on Windows.
891
+<br />
892
+However, there is currently no comparable package for Linux and Mac OS
893
+X, so this project would be to implement Tor Browser Bundle for these
894
+platforms. This will involve modifications to Vidalia (C++), possibly
895
+Firefox (C) then creating and testing the launcher on a range of
896
+operating system versions and configurations to verify portability.
897
+<br />
898
+Students should be familiar with application development on one or
899
+preferably both of Linux and Mac OS X, and be comfortable with C/C++
900
+and shell scripting.
901
+</li>
902
+
903
+<li>
904
+<b>Simulator for slow Internet connections</b>
905
+<br />
906
+Priority: <i>Medium</i>
907
+<br />
908
+Effort Level: <i>Medium</i>
909
+<br />
910
+Skill Level: <i>Medium</i>
911
+<br />
912
+Likely Mentors: <i>Steven</i>
913
+<br />
914
+Many users of Tor have poor-quality Internet connections, giving low
915
+bandwidth, high latency, and high packet loss/re-ordering. User
916
+experience is that Tor reacts badly to these conditions, but it is
917
+difficult to improve the situation without being able to repeat the
918
+problems in the lab.
919
+<br />
920
+This project would be to build a simulation environment which
921
+replicates the poor connectivity so that the effect on Tor performance
922
+can be measured. Other components would be a testing utility to
923
+establish what are the properties of connections available, and to
924
+measure the effect of performance-improving modifications to Tor.
925
+<br />
926
+The tools used would be up to the student, but dummynet (for FreeBSD)
927
+and nistnet (for Linux) are two potential components on which this
928
+project could be built. Students should be experienced with network
929
+programming/debugging and TCP/IP, and preferably familiar with C and a
930
+scripting language.
931
+</li>
932
+
721 933
 <li>
722 934
 <b>Bring up new ideas!</b>
723 935
 <br />
724 936
 Don't like any of these? Look at the <a
725
-href="<svnsandbox>doc/roadmap/2008-12-19-roadmap-full.pdf">Tor development
937
+href="<svnsandbox>doc/roadmaps/2008-12-19-roadmap-full.pdf">Tor development
726 938
 roadmap</a> for more ideas.
939
+Some of the <a href="<svnsandbox>doc/spec/proposals/">current proposals</a>
940
+might also be short on developers.
727 941
 </li>
728 942
 
729 943
 </ol>
730 944
 
731 945
 <a id="OtherCoding"></a>
946
+<h2><a class="anchor" href="#OtherCoding">Other Coding and Design related ideas</a></h2>
947
+<ol>
948
+<li>Tor relays don't work well on Windows XP. On
949
+Windows, Tor uses the standard <tt>select()</tt> system
950
+call, which uses space in the non-page pool. This means
951
+that a medium sized Tor relay will empty the non-page pool, <a
952
+href="https://wiki.torproject.org/noreply/TheOnionRouter/WindowsBufferProblems">causing
953
+havoc and system crashes</a>. We should probably be using overlapped IO
954
+instead. One solution would be to teach <a
955
+href="http://www.monkey.org/~provos/libevent/">libevent</a> how to use
956
+overlapped IO rather than select() on Windows, and then adapt Tor to
957
+the new libevent interface. Christian King made a
958
+<a href="https://svn.torproject.org/svn/libevent-urz/trunk/">good
959
+start</a> on this in the summer of 2007.</li>
732 960
 
733
-<h2><a class="anchor" href="#Coding">Andere Ideen zu Programmierung und Design</a></h2>
961
+<li>We need to actually start building our <a href="<page
962
+documentation>#DesignDoc">blocking-resistance design</a>. This involves
963
+fleshing out the design, modifying many different pieces of Tor, adapting
964
+<a href="http://vidalia-project.net/">Vidalia</a> so it supports the
965
+new features, and planning for deployment.</li>
734 966
 
735
-<ol>
736
-  <li>Torserver funktionieren unter Windows XP nicht sehr gut. Wir
737
-  verwenden auf Windows den standardmäßigen <code>select</code>-Systemaufruf.
738
-  Dies bereitet gerade auf mittelgroßen Servern <a
739
-  href="https://wiki.torproject.org/noreply/TheOnionRouter/WindowsBufferProblems">Probleme</a>.
740
-  Wahrscheinlich sollten wir hier besser Overlapped I/O nutzen. Eine Lösung
741
-  wäre, <a href="http://www.monkey.org/~provos/libevent/">libevent</a>
742
-  beizubringen, Overlapped I/O statt <code>select()</code> zu wählen. Tor muss
743
-  dann an die neue libevent-Schnittstelle angepasst werden. Christian
744
-  King hat
745
-  <a href="https://svn.torproject.org/svn/libevent-urz/trunk/">einen guten
746
-  Anfang</a> gemacht.</li>
747
-  <li>Wie können wir die <a
748
-  href="http://anonymityanywhere.com/incognito/">Incognito LiveCD</a> leichter
749
-  zu warten, verbessern und zu dokumentieren machen?</li>
750
-  <li>Wir sollten damit anfangen unser <a href="<page
751
-  documentation>#DesignDoc">gegen Blockierungen geschütztes Design</a> zu
752
-  implementieren. Dies beinhaltet die Ausarbeitung des Designs, die
753
-  Modifizierung diverser Teile von Tor, die Arbeit an einer <a
754
-  href="http://vidalia-project.net/">GUI</a>, die intuitiv ist und die Planung
755
-  für den Einsatz.</li>
756
-  <li>Wir brauchen ein flexibles Gerüst, um Ende-zu-Ende Attacken des
757
-  Netzverkehrs zu simulieren. Viele Forscher haben Simulatoren geschaffen, die
758
-  ihre Intuition, ob ein Angriff oder Verteidigung funktioniert, unterstützt.
759
-  Können wir einen Simulator bauen, der offen und gut dokumentiert ist? Dies
760
-  wird eine Menge neuer Forschung anregen. Schaue auch auf den <a
761
-  href="#Research">Eintrag unten</a>, um Details zu dieser Aufgabe zu entdecken.
762
-  Wenn es fertig ist, könntest du helfen, eine Veröffentlichung  dazu zu schreiben.</li>
763
-  <li>Momentan werden die Deskriptoren der versteckten Services nur
764
-  auf einigen wenigen Verzeichnisservern gespeichert. Dies ist
765
-  schlecht für die Privatsphäre und die Robustheit. Um mehr Robustheit
766
-  zu erlangen, sollten wir die privaten Daten aus den Deskriptoren
767
-  entfernen, um diese auf verschiedenen Plätzen spiegeln zu
768
-  können. Idealerweise hätten wir gern ein Speicher-/Backupsystem, das
769
-  verschieden zu den Verzeichnisservern ist. Das erste Problem ist,
770
-  das wir Format für die versteckten Services schaffen müssen, welches
771
-  a) ASCII statt binär ist, b) die Liste der Introductionpoints
772
-  verschlüsselt, solange man nicht die <tt>.onion</tt>-Adresse kennt
773
-  und c) den Verzeichnissen erlaubt, den Zeitstempel und die Signatur
774
-  eines Deskriptors zu verifizieren, so dass diese nicht mit falschen
775
-  überrumpelt werden. Zweitens wird es jedes verteilte Speichersystem
776
-  tun, solange es authentifizierte Updates erlaubt.</li>
777
-  <li>Torversionen ab 0.1.1.x unterstützen Cryptohardwarebeschleuniger
778
-    via OpenSSL. Bisher hat das niemand getestet. Möchte jemand gern
779
-    eine Karte haben und schauen, ob das funktioniert?</li>
780
-  <li>Eine Sicherheitsanalyse mit
781
-    "<a href="http://en.wikipedia.org/wiki/Fuzz_testing">Fuzz</a>"
782
-    machen.  Herausfinden, ob es da draußen gute Bibliotheken dafür
783
-    gibt. Gewinne Ruhm und Ehre, wenn wir nur wegen dir ein neues
784
-    Release herausbringen!</li>
785
-  <li>Tor nutzt TCP für den Transport und TLS für die Verschlüsselung
786
-    der Verbindungen. Dies ist einfach. Es bedeutet aber auch, dass
787
-    alle Zellen Verspätungen erfahren, wenn nur ein Paket verworfen
788
-    wird. Daher können wir nur bedingt TCP-Streams unterstützen. Es
789
-    gibt eine <a
790
-    href="https://wiki.torproject.org/noreply/TheOnionRouter/TorFAQ#TransportIPnotTCP">Liste
791
-    von Gründen</a>, warum wir nicht zu Transport per UDP gewechselt
792
-    sind. Es wäre schön, wenn diese Liste kürzer werden würde. Wir
793
-  haben auch eine <a
794
-  href="<svnsandbox>doc/100-tor-spec-udp.txt">Spezifikation für Tor
795
-  und UDP</a> &mdash; bitte lass uns wissen, wenn damit etwas nicht
796
-  stimmt.</li>
797
-  <li>Wir sind nicht weit davon entfernt, Unterstützung für IPv6 bei
798
-    Exitknoten zu haben. Falls du dich stark um IPv6 kümmerst, ist
799
-    das wahrscheinlich der Platz, um zu starten.</li>
800
-    
801
-<li>Wir brauchen einen Weg die Diagramme auf der Webseite aus Quellcode zu
802
-generieren (zum Beispiel das "How Tor Works" Bild auf der <a href="<page
803
-overview>">Übersichtsseite</a>), damit wir das Bild als UTF-8 text übersetzen
804
-können, statt es händisch mit Gimp zu ändern. Wir würden dies gerne als
805
-wml-Datei einbinden, damit die Übersetzung einfach ist und die Bilder in
806
-verschiedenen Sprachen erzeugt werden, wenn wir die Webseite erstellen.</li>
807
-
808
-<li>Wie können wir die <a
967
+<li>We need a flexible simulator framework for studying end-to-end
968
+traffic confirmation attacks. Many researchers have whipped up ad hoc
969
+simulators to support their intuition either that the attacks work
970
+really well or that some defense works great. Can we build a simulator
971
+that's clearly documented and open enough that everybody knows it's
972
+giving a reasonable answer? This will spur a lot of new research.
973
+See the entry <a href="#Research">below</a> on confirmation attacks for
974
+details on the research side of this task &mdash; who knows, when it's
975
+done maybe you can help write a paper or three also.</li>
976
+
977
+<li>Tor 0.1.1.x and later include support for hardware crypto accelerators
978
+via OpenSSL. It has been lightly tested and is possibly very buggy.  We're looking for more rigorous testing, performance analysis, and optimally, code fixes to openssl and Tor if needed.</li>
979
+
980
+<li>Perform a security analysis of Tor with <a
981
+href="http://en.wikipedia.org/wiki/Fuzz_testing">"fuzz"</a>. Determine
982
+if there are good fuzzing libraries out there for what we want. Win fame by
983
+getting credit when we put out a new release because of you!</li>
984
+
985
+<li>Tor uses TCP for transport and TLS for link
986
+encryption. This is nice and simple, but it means all cells
987
+on a link are delayed when a single packet gets dropped, and
988
+it means we can only reasonably support TCP streams. We have a <a
989
+href="https://wiki.torproject.org/noreply/TheOnionRouter/TorFAQ#TransportIPnotTCP">list
990
+of reasons why we haven't shifted to UDP transport</a>, but it would
991
+be great to see that list get shorter. We also have a proposed <a
992
+href="<svnsandbox>doc/spec/proposals/100-tor-spec-udp.txt">specification
993
+for Tor and
994
+UDP</a> &mdash; please let us know what's wrong with it.</li>
995
+
996
+<li>We're not that far from having IPv6 support for destination addresses
997
+(at exit nodes). If you care strongly about IPv6, that's probably the
998
+first place to start.</li>
999
+
1000
+<li>We need a way to generate the website diagrams (for example, the "How
1001
+Tor Works" pictures on the <a href="<page overview>">overview page</a>
1002
+from source, so we can translate them as UTF-8 text rather than edit
1003
+them by hand with Gimp. We might want to
1004
+integrate this as an wml file so translations are easy and images are
1005
+generated in multiple languages whenever we build the website.</li>
1006
+
1007
+<li>How can we make the <a
809 1008
 href="http://anonymityanywhere.com/incognito/">Incognito LiveCD</a>
810
-leichter warten, verbessern und dokumentieren?</li>
1009
+easier to maintain, improve, and document?</li>
811 1010
 </ol>
812 1011
 
813 1012
 <a id="Research"></a>
814
-<h2><a class="anchor" href="#Research">Forschung</a></h2>
815
-
1013
+<h2><a class="anchor" href="#Research">Research</a></h2>
816 1014
 <ol>
817
-  <li>Die Fingerprintattacken gegen Webseiten machen eine Liste von
818
-    einigen wenigen populären Webseiten, laden die Inhalte herunter
819
-    und machen einen Satz von Signaturen für jede Seite. Danach
820
-    beobachten sie den Verkehr des Torclients. Währenddessen gelangen sie
821
-    schnell zu einer Vermutung, welche Seite gerade besucht wird. Wie
822
-    effektiv ist dieser Angriff bezüglich der aktuellen Codebasis von
823
-    Tor? Beginne danach Verteidigungsmöglichkeiten auszuloten. Wir
824
-    könnten beispielsweise die Zellgröße von 512 Bytes auf 1024 Bytes
825
-    anheben und Techniken wie <a
826
-    href="http://freehaven.net/anonbib/#timing-fc2004">defensives
827
-    Verwerfen</a> anwenden. Wir könnten auch künstliche Verspätungen
828
-    einarbeiten. Welchen Einfluss haben diese Massnahmen und wie groß
829
-    ist der Einfluss auf die Benutzbarkeit?</li>
830
-  <li>Eine weitere Angriffsmöglichkeit (end-to-end traffic
831
-    confirmation attack) basiert darauf, dass der Verkehr zwischen
832
-    Alice und Bob beobachtet wird. Durch den <a
833
-    href="http://freehaven.net/anonbib/#danezis:pet2004">Vergleich
834
-    der Signaturen des Netzverkehrs kann man herausfinden, on man
835
-    denselben Stream verfolgt</a>. Bis jetzt akzeptiert Tor dies als
836
-    Fakt und nimmt an, dass dies in allen Fällen trivial ist. Ist das
837
-    wahr? Wieviel Verkehr von welcher Sorte braucht man, um sicher zu
838
-    sicher, dass es funktioniert? Gibt es Szenarien, die die Attacke
839
-    ausbremsen? Funktioniert Padding besser als anderes?</li>
840
-    <li>Eine verwandte Frage: Bringt der Betrieb eines Relays oder
841
-  eines Brückenservers zusätzlichen Schutz gegen Timingangriffe? Kann
842
-  ein externer Angreifer individuelle Ströme erkennen, obwohl er nicht
843
-  in die TLS-Ströme sehen kann? Hat die Höhe des durchgeleiteten
844
-  Verkehrs Einfluss? Was wäre, wenn der Client anderen Verkehr
845
-  verlangsamt, um es so aussehen zu lassen, dass er auch
846
-  weitergeleitet wird? Die selbe Queue könnte auch zur Maskierung der
847
-  Timings mit Techniken von <a
848
-  href="http://www.freehaven.net/anonbib/#ShWa-Timing06" >adaptivem
849
-  Padding</a> genutzt werden, aber ohne zusätzlich Traffic zu
850
-  erzeugen. Würde das das Timing für externe Angreifer verschleiern?
851
-  Müssten die Strategien für assymetrische Knoten angepasst werden?
852
-  Wäre es dort beispielsweise möglich, den Clienttraffic von anderem
853
-  zu unterscheiden? Oder ist das vielleicht für symmetrische
854
-  Verbindungen leichter?</li>
855
-  <li>Wiederhole die <a
856
-  href="http://www.cl.cam.ac.uk/~sjm217/projects/anon/#torta"
857
-  >Angriffe von Murdoch und Danezis von der Oakland 05</a> im
858
-  aktuellen Tor-Netzwerk. Schaue, ob du herausfinden kannst, warum das
859
-  bei einigen gut und bei anderen schlecht funktioniert. (Meine
860
-  Theorie ist, dass schnelle Knoten mit Restkapazität dem Angriff
861
-  besser widerstehen.) Wenn das wahr ist, experimentiere mit
862
-  <var>RelayBandwidthRate</var> und
863
-  <var>RelayBandwidthBurst</var>. Dabei betreibst du ein Relay,
864
-  welches als Client genutzt wird, um den Verkehr des Angreifers
865
-  weiterzuleiten. Was ist das richtige Verhältnis von
866
-  <var>RelayBandwidthRate</var> zu aktueller Kapazität? Gibt es
867
-  überhaupt ein Verhältnis? Wenn wir dabei sind, erhöht eine große
868
-  Zahl von Relays die Fehlerrate des Angriffs? (Das Tor-Netzwerk ist
869
-  nun fast zwei Größenordnungen gewachsen, seit die Veröffentlichung
870
-  geschrieben wurde.) Lies auf jeden Fall auch <a
871
-  href="http://freehaven.net/anonbib/#clog-the-queue">Don't Clog the
872
-  Queue</a>.</li>
873
-  <li>Die Attacke auf die Routingzonen ist der Netzpfad zwischen
874
-    Alice und dem Eingangsknoten (bzw. zwischen dem Exitknoten und
875
-    Bob). In der Literatur wird dies als einfache Verbindung auf
876
-    einem Graph dargestellt. In der Praxis durchquert der Pfad viele
877
-    autonome Systeme. Es ist nicht ungewöhnlich, dass dasselbe
878
-    <a href="http://freehaven.net/anonbib/#feamster:wpes2004">autonome
879
-    System sowohl beim Eingangs- wie auch beim Ausgangspfad
880
-    erscheint</a>. Um nun herauszufinden, ob ein spezielles Alice-,
881
-    Eingangs-, Ausgangs-, Bobviereck gefährlich ist, müssten wir die
882
-    gesamte Routingzone des Internet herunterladen und Operationen
883
-    darauf ausführen. Gibt es praktische Abschätzungen, die die
884
-    Arbeit erleichtern können?</li>
885
-    <li>Andere Fragen in der Forschung, die die geografische
886
-    Verteilung betreffen, betrachten einen Kompromiss zwischen der Wahl
887
-    einer effizienten Route und einer zufälligen Route. Wirf einen Blick
888
-    auf das <a
889
-    href="http://swiki.cc.gatech.edu:8080/ugResearch/uploads/7/ImprovingTor.pdf">Positionspapier</a>
890
-    von Stephen Rollyson. Es diskutiert, wie man langsame Leitungen
891
-    auschalten kann, ohne die Anonymität zu stark einzuschränken. Die
892
-    Begründungen machen einen guten Eindruck, brauchen aber noch mehr
893
-    Arbeit.</li>
894
-  <li>Tor funktioniert nicht sehr gut, wenn Server eine asymmetrische
895
-    Bandbreite (Kabel oder DSL) haben. Tor hat separate
896
-    TCP-Verbindungen zwischen jedem Hop. Wenn nun die einkommenden
897
-    Pakete gut ankommen und die ausgehenden alle verworfen werden,
898
-    übertragen die die TCP-Pushback-Mechanismen diese Informationen
899
-    nicht gut hin zu den eingehenden Verbindungen. Eventuell sollte
900
-    Tor feststellen, wenn eine Menge an ausgehenden Verbindungen
901
-    verworfen werden und dann die eigehenden Verbindungen selbst
902
-    herunterregeln? Ich könnte mir ein Schema vorstellen, wo wir ein
903
-    konservatives Ratelimit suchen und das langsam vergrößern, bis
904
-    Pakete verworfen werden. Wir brauchen jemanden, der sich gut mit
905
-    Netzwerken auskennt, um dies zu simulieren und eine Lösung zu
906
-    finden. Wir müssen die Erosion in der Performance verstehen und
907
-    das als Motivation für Transport per UDP verstehen.</li>
908
-  <li>Ein verwandtes Thema ist die Kontrolle bei Netzüberlastung. Ist
909
-    unser Design ausreichend, um hohe Netzlast auszuhalten?
910
-    Vielleicht sollten wir mit Fenstern von variabler Größe
911
-    experimentieren? Das schien im <a
912
-    href="http://www.psc.edu/networking/projects/hpn-ssh/theory.php">Experiment
913
-    mit dem SSH-Durchsatz</a> gut zu funktionieren. Wir müssen das
914
-    messen und verbessern und bei guten Resultaten Tor überholen.</li>
915
-  <li>Unsere Ziele zum Schutz vor Zensur schließen ein, dass ein
916
-    Angreifer Tor-Verkehr von <a
917
-    href="<svnsandbox>doc/design-paper/blocking.html#sec:network-fingerprint">normalem
918
-    SSL-Verkehr unterscheiden</a> kann. Offensichtlich können wir keine
919
-    perfekte Steganographie erreichen und dabei benutzbar bleiben. Aber
920
-    wir möchten gern Angriffen, die nur wenige Pakete betrachten,
921
-    überwinden. Eine der verbliebenen Angriffe, die wir nicht sehr geprüft
922
-    haben, ist das Verhältnis von der Größe der Tor-Zellen (512 Byte)
923
-    zum restlichen Verkehr. Wieviel erkennt man davon, haben die
924
-    Leerungsmechanismen der Buffer einen Einfluss, könnte Padding helfen?</li>
925
-  <li>Tor-Verbindungen werden schrittweise aufgebaut, ein Knoten nach
926
-    dem anderen.  Also haben wir theoretisch die Möglichkeit, manche
927
-    Ströme schon nach dem zweiten Knoten die Tor-Wolke verlassen zu
928
-    lassen, andere nach dem dritten Knoten, und so weiter.  Dies erscheint
929
-    nett, weil es die Menge der austretenden Ströme, welcher ein bestimmter
930
-    Server sieht, begrenzt.  Wenn wir diesen Strom jedoch sicher haben wollen,
931
-    dann, laut unserer aktuellen Logik,  sollte der kürzeste Pfad mindestens 3
932
-    Knoten lang sein.  Das heisst, die anderen Ströme wären noch länger.  Wir
933
-    müssen diese Performance/Sicherheitsabwägung untersuchen.</li>
934
-   <li>Es ist nicht schwer, DoS Angriffe auf Tor-Server oder
935
-    Tor-Verzeischnisserver erfolgreich durchzuführen.  Sind Client-Puzzles die
936
-    richtige Anwort?  Welche anderen praktischen Herangehensweisen gibt es?
937
-    Bonuspunkte, wenn diese mit dem aktuellen Tor-Protokoll abwärtskompatibel
938
-    sind.</li>
939
-  <li>Programme, wie <a
940
-    href="<page torbutton/index>">Torbutton</a>,
941
-    versuchen den User-Agent des Browsers zu verstecken, indem sie
942
-    diesen durch eine gewöhnliche Angabe ersetzen. Dadurch kann ein
943
-    Angreifer Tor-Nutzer nicht durch einen Blick auf die
944
-    Nachrichtenköpfe erkennen. Die Software versucht einen, allgemein
945
-    genutzten Wert zu nehmen. Frage 1: Wie sehr schaden wir uns, wenn
946
-    wir die Firefox-Version periodisch anpassen? Wenn wir zu oft
947
-    updaten, kann man es unterscheiden. Machen wir es nicht, findet man
948
-    Tor-Nutzer heraus, da sie sehr alte Versionen nutzen. Die Antwort
949
-    hängt wahrscheinlich von den Firefox-Versionen, die es gibt,
950
-    ab. Frage 2: Die Leute fragen immer wieder, zwischen n verschiedenen
951
-    User-Agents zu wechseln. Hilft der Ansatz oder macht das keinen
952
-    Unterschied? Betrachte dabei Cookies und Tor-Nutzer, die periodisch
953
-    den User-Agent wechseln. Bösartige Webseiten greifen nur bestimmte
954
-    Browser an. Wie beeinflussen die Antworten auf diese Fragen diese
955
-    Antwort.</li>
956
-  <li>Momentan benutzen Tor-Clients eine aufgebaute Verbindungsstrecke
957
-    für zehn Minuten, nachdem diese aufgebaut wurde. Das Ziel hierfür
958
-    ist, das Netzwerk nicht mit Nachrichten zum Verbindungsaufbau zu
959
-    überlasten. Außerdem kann der Austrittsknoten dadurch kein Profil
960
-    über den Nutzer bilden. Es hat sich herausgestellt, dass zehn
961
-    Minuten zu lang sind. Insbesondere dann, wenn Verbindungen von
962
-    verschiedenen Protokollen (IM und HTTP) benutzt werden. Wenn wir
963
-    die Gesamtzahl an Erweiterungen der Verbindungsstrecke beibehalten,
964
-    gibt es effizientere/sichere Wege, Streams zu den
965
-    Verbindungsstrecken zu alloziieren oder präemptiv Strecken
966
-    aufzubauen? Natürlich muss dieser Punkt damit beginnen, dass
967
-    erforscht wird, welche Verbindungen die Programme typischerweise
968
-    benutzen. Damit hast du dann einen realistischen Ansatz, den du
969
-    optimierst.</li>
970
-  <li>Wie viele Brückenserver benötigt man, um die Verfügbarkeit zu
971
-    garantieren? Wir sollten die Abwanderung unseren Brückenservern messen.
972
-    Wenn es viel davon gibt, gibt es Möglichkeiten, dass die Nutzer
973
-    länger verbunden bleiben?</li>
1015
+<li>The "website fingerprinting attack": make a list of a few
1016
+hundred popular websites, download their pages, and make a set of
1017
+"signatures" for each site. Then observe a Tor client's traffic. As
1018
+you watch him receive data, you quickly approach a guess about which
1019
+(if any) of those sites he is visiting. First, how effective is
1020
+this attack on the deployed Tor codebase? Then start exploring
1021
+defenses: for example, we could change Tor's cell size from 512
1022
+bytes to 1024 bytes, we could employ padding techniques like <a
1023
+href="http://freehaven.net/anonbib/#timing-fc2004">defensive dropping</a>,
1024
+or we could add traffic delays. How much of an impact do these have,
1025
+and how much usability impact (using some suitable metric) is there from
1026
+a successful defense in each case?</li>
1027
+<li>The "end-to-end traffic confirmation attack":
1028
+by watching traffic at Alice and at Bob, we can <a
1029
+href="http://freehaven.net/anonbib/#danezis:pet2004">compare
1030
+traffic signatures and become convinced that we're watching the same
1031
+stream</a>. So far Tor accepts this as a fact of life and assumes this
1032
+attack is trivial in all cases. First of all, is that actually true? How
1033
+much traffic of what sort of distribution is needed before the adversary
1034
+is confident he has won? Are there scenarios (e.g. not transmitting much)
1035
+that slow down the attack? Do some traffic padding or traffic shaping
1036
+schemes work better than others?</li>
1037
+<li>A related question is: Does running a relay/bridge provide additional
1038
+protection against these timing attacks? Can an external adversary that can't
1039
+see inside TLS links still recognize individual streams reliably?
1040
+Does the amount of traffic carried degrade this ability any? What if the
1041
+client-relay deliberately delayed upstream relayed traffic to create a queue
1042
+that could be used to mimic timings of client downstream traffic to make it
1043
+look like it was also relayed? This same queue could also be used for masking
1044
+timings in client upstream traffic with the techniques from <a
1045
+href="http://www.freehaven.net/anonbib/#ShWa-Timing06">adaptive padding</a>,
1046
+but without the need for additional traffic. Would such an interleaving of
1047
+client upstream traffic obscure timings for external adversaries? Would the
1048
+strategies need to be adjusted for asymmetric links? For example, on
1049
+asymmetric links, is it actually possible to differentiate client traffic from
1050
+natural bursts due to their asymmetric capacity? Or is it easier than
1051
+symmetric links for some other reason?</li>
1052
+<li>Repeat Murdoch and Danezis's <a
1053
+href="http://www.cl.cam.ac.uk/~sjm217/projects/anon/#torta">attack from
1054
+Oakland 05</a> on the current Tor network. See if you can learn why it
1055
+works well on some nodes and not well on others. (My theory is that the
1056
+fast nodes with spare capacity resist the attack better.) If that's true,
1057
+then experiment with the RelayBandwidthRate and RelayBandwidthBurst
1058
+options to run a relay that is used as a client while relaying the
1059
+attacker's traffic: as we crank down the RelayBandwidthRate, does the
1060
+attack get harder? What's the right ratio of RelayBandwidthRate to
1061
+actually capacity? Or is it a ratio at all? While we're at it, does a
1062
+much larger set of candidate relays increase the false positive rate
1063
+or other complexity for the attack? (The Tor network is now almost two
1064
+orders of magnitude larger than it was when they wrote their paper.) Be
1065
+sure to read <a href="http://freehaven.net/anonbib/#clog-the-queue">Don't
1066
+Clog the Queue</a> too.</li>
1067
+<li>The "routing zones attack": most of the literature thinks of
1068
+the network path between Alice and her entry node (and between the
1069
+exit node and Bob) as a single link on some graph. In practice,
1070
+though, the path traverses many autonomous systems (ASes), and <a
1071
+href="http://freehaven.net/anonbib/#feamster:wpes2004">it's not uncommon
1072
+that the same AS appears on both the entry path and the exit path</a>.
1073
+Unfortunately, to accurately predict whether a given Alice, entry,
1074
+exit, Bob quad will be dangerous, we need to download an entire Internet
1075
+routing zone and perform expensive operations on it. Are there practical
1076
+approximations, such as avoiding IP addresses in the same /8 network?</li>
1077
+<li>Other research questions regarding geographic diversity consider
1078
+the tradeoff between choosing an efficient circuit and choosing a random
1079
+circuit. Look at Stephen Rollyson's <a
1080
+href="http://swiki.cc.gatech.edu:8080/ugResearch/uploads/7/ImprovingTor.pdf">position
1081
+paper</a> on how to discard particularly slow choices without hurting
1082
+anonymity "too much". This line of reasoning needs more work and more
1083
+thinking, but it looks very promising.</li>
1084
+<li>Tor doesn't work very well when relays have asymmetric bandwidth
1085
+(e.g. cable or DSL). Because Tor has separate TCP connections between
1086
+each hop, if the incoming bytes are arriving just fine and the outgoing
1087
+bytes are all getting dropped on the floor, the TCP push-back mechanisms
1088
+don't really transmit this information back to the incoming streams.
1089
+Perhaps Tor should detect when it's dropping a lot of outgoing packets,
1090
+and rate-limit incoming streams to regulate this itself? I can imagine
1091
+a build-up and drop-off scheme where we pick a conservative rate-limit,
1092
+slowly increase it until we get lost packets, back off, repeat. We
1093
+need somebody who's good with networks to simulate this and help design
1094
+solutions; and/or we need to understand the extent of the performance
1095
+degradation, and use this as motivation to reconsider UDP transport.</li>
1096
+<li>A related topic is congestion control. Is our
1097
+current design sufficient once we have heavy use? Maybe
1098
+we should experiment with variable-sized windows rather
1099
+than fixed-size windows? That seemed to go well in an <a
1100
+href="http://www.psc.edu/networking/projects/hpn-ssh/theory.php">ssh
1101
+throughput experiment</a>. We'll need to measure and tweak, and maybe
1102
+overhaul if the results are good.</li>
1103
+<li>Our censorship-resistance goals include preventing
1104
+an attacker who's looking at Tor traffic on the wire from <a
1105
+href="<svnsandbox>doc/design-paper/blocking.html#sec:network-fingerprint">distinguishing
1106
+it from normal SSL traffic</a>. Obviously we can't achieve perfect
1107
+steganography and still remain usable, but for a first step we'd like to
1108
+block any attacks that can win by observing only a few packets. One of
1109
+the remaining attacks we haven't examined much is that Tor cells are 512
1110
+bytes, so the traffic on the wire may well be a multiple of 512 bytes.
1111
+How much does the batching and overhead in TLS records blur this on the
1112
+wire? Do different buffer flushing strategies in Tor affect this? Could
1113
+a bit of padding help a lot, or is this an attack we must accept?</li>
1114
+<li>Tor circuits are built one hop at a time, so in theory we have the
1115
+ability to make some streams exit from the second hop, some from the
1116
+third, and so on. This seems nice because it breaks up the set of exiting
1117
+streams that a given relay can see. But if we want each stream to be safe,
1118
+the "shortest" path should be at least 3 hops long by our current logic, so
1119
+the rest will be even longer. We need to examine this performance / security
1120
+tradeoff.</li>
1121
+<li>It's not that hard to DoS Tor relays or directory authorities. Are client
1122
+puzzles the right answer? What other practical approaches are there? Bonus
1123
+if they're backward-compatible with the current Tor protocol.</li>
1124
+<li>Programs like <a
1125
+href="<page torbutton/index>">Torbutton</a> aim to hide
1126
+your browser's UserAgent string by replacing it with a uniform answer for
1127
+every Tor user. That way the attacker can't splinter Tor's anonymity set
1128
+by looking at that header. It tries to pick a string that is commonly used
1129
+by non-Tor users too, so it doesn't stand out. Question one: how badly
1130
+do we hurt ourselves by periodically updating the version of Firefox
1131
+that Torbutton claims to be? If we update it too often, we splinter the
1132
+anonymity sets ourselves. If we don't update it often enough, then all the
1133
+Tor users stand out because they claim to be running a quite old version
1134
+of Firefox. The answer here probably depends on the Firefox versions seen
1135
+in the wild. Question two: periodically people ask us to cycle through N
1136
+UserAgent strings rather than stick with one. Does this approach help,
1137
+hurt, or not matter? Consider: cookies and recognizing Torbutton users
1138
+by their rotating UserAgents; malicious websites who only attack certain
1139
+browsers; and whether the answers to question one impact this answer.
1140
+</li>
1141
+<li>Right now Tor clients are willing to reuse a given circuit for ten
1142
+minutes after it's first used. The goal is to avoid loading down the
1143
+network with too many circuit extend operations, yet to also avoid having
1144
+clients use the same circuit for so long that the exit node can build a
1145
+useful pseudonymous profile of them. Alas, ten minutes is probably way
1146
+too long, especially if connections from multiple protocols (e.g. IM and
1147
+web browsing) are put on the same circuit. If we keep fixed the overall
1148
+number of circuit extends that the network needs to do, are there more
1149
+efficient and/or safer ways for clients to allocate streams to circuits,
1150
+or for clients to build preemptive circuits? Perhaps this research item
1151
+needs to start with gathering some traces of what connections typical
1152
+clients try to launch, so you have something realistic to try to optimize.
1153
+</li>
1154
+<li>How many bridge relays do you need to know to maintain
1155
+reachability? We should measure the churn in our bridges. If there is
1156
+lots of churn, are there ways to keep bridge users more likely to stay
1157
+connected?
1158
+</li>
974 1159
 </ol>
975 1160
 
976 1161
 <p><a href="<page contact>">Lass uns wissen</a>, wenn du bei einem
977 1162