Andrew Lewman commited on 2009-12-08 07:57:39
Zeige 1 geänderte Dateien mit 93 Einfügungen und 39 Löschungen.
... | ... |
@@ -13,10 +13,10 @@ |
13 | 13 |
able to work independently and want to help make Tor better. |
14 | 14 |
</p> |
15 | 15 |
|
16 |
-<p>In particular, we're looking for two categories of people:</p> |
|
16 |
+<p>In particular, we're looking for a few people:</p> |
|
17 | 17 |
<ul> |
18 |
-<li><a href="#developer">Software Developer</a></li> |
|
19 |
-<li><a href="#activist">Activist/Outreach</a></li> |
|
18 |
+<li><a href="#sysdev">Systems Developer</a></li> |
|
19 |
+<li><a href="#windowsdev">Microsoft Windows Developer</a></li> |
|
20 | 20 |
</ul> |
21 | 21 |
|
22 | 22 |
<p>Working on Tor is rewarding because:</p> |
... | ... |
@@ -35,11 +35,97 @@ We want you to have good communication and writing skills (in particular, |
35 | 35 |
you should know how to keep other project members informed of your |
36 | 36 |
progress), and we want you to know how to figure out what needs doing and |
37 | 37 |
then take the initiative to do it. Most project members play more than |
38 |
-one role, so combination developer/activist/grantwriters are very welcome. |
|
38 |
+one role, so combination developer/activist are very welcome. |
|
39 | 39 |
</p> |
40 | 40 |
|
41 |
-<a id="developer"></a> |
|
42 |
-<h3><a class="anchor" href="#developer">Developer</a></h3> |
|
41 |
+<a id="sysdev"></a> |
|
42 |
+<h3><a class="anchor" href="#sysdev">Systems Developer</a></h3> |
|
43 |
+<ul> |
|
44 |
+<li><strong>New Secure Updater Features</strong>: |
|
45 |
+<br /> |
|
46 |
+Additional capabilities are needed for assisted updates of all the Tor |
|
47 |
+related software for Windows and other operating systems. Some of the |
|
48 |
+features to consider include: |
|
49 |
+<ol> |
|
50 |
+<li> Integration of the <a |
|
51 |
+href="http://chandlerproject.org/Projects/MeTooCrypto">MeTooCrypto |
|
52 |
+Python library</a> for authenticated HTTPS downloads.</li> |
|
53 |
+<li> Adding a level of indirection between the timestamp signatures |
|
54 |
+and the package files included in an update. See the "Thandy attacks / |
|
55 |
+suggestions" thread on or-dev.</li> |
|
56 |
+<li> Support locale specific installation and configuration of assisted |
|
57 |
+updates based on preference, host, or user account language settings. |
|
58 |
+Familiarity with Windows codepages, unicode, and other character sets |
|
59 |
+is helpful in addition to general win32 and posix API experience and |
|
60 |
+Python proficiency.</li> |
|
61 |
+</ol> |
|
62 |
+</li> |
|
63 |
+ |
|
64 |
+<li><strong>Tor/Polipo/Vidalia Auto-Update Framework</strong>: |
|
65 |
+<p>We're in need of a good authenticated-update framework. Vidalia already |
|
66 |
+has the ability to notice when the user is running an outdated or |
|
67 |
+unrecommended version of Tor, using signed statements inside the Tor |
|
68 |
+directory information. Currently, Vidalia simply pops up a little message |
|
69 |
+box that lets the user know they should manually upgrade. The goal of |
|
70 |
+this project would be to extend Vidalia with the ability to also fetch |
|
71 |
+and install the updated Tor software for the user. We should do the |
|
72 |
+fetches via Tor when possible, but also fall back to direct fetches in |
|
73 |
+a smart way. Time permitting, we would also like to be able to update |
|
74 |
+other applications included in the bundled installers, such as Polipo |
|
75 |
+and Vidalia itself.</p> |
|
76 |
+<p>To complete this project, you will first need to first investigate |
|
77 |
+the existing auto-update frameworks (e.g., Sparkle on OS X) to evaluate |
|
78 |
+their strengths, weaknesses, security properties, and ability to be |
|
79 |
+integrated into Vidalia. If none are found to be suitable, the student |
|
80 |
+will design their own auto-update framework, document the design, and |
|
81 |
+then discuss the design with other developers to assess any security |
|
82 |
+issues. You will then implement their framework (or integrate |
|
83 |
+an existing one) and test it.</p> |
|
84 |
+<p>A person undertaking this project should have good C++ development |
|
85 |
+experience. Previous experience with Qt is helpful, but not required. One |
|
86 |
+should also have a good understanding of common security |
|
87 |
+practices, such as package signature verification. Good writing ability |
|
88 |
+is also important for this project, since a vital step of the project |
|
89 |
+will be producing a design document to review and discuss |
|
90 |
+with others prior to implementation.</p> |
|
91 |
+</li> |
|
92 |
+</ul> |
|
93 |
+ |
|
94 |
+<a id="windowsdev"></a> |
|
95 |
+<h3><a class="anchor" href="#windowsdev">Microsoft Windows Developer</a></h3> |
|
96 |
+This person needs to be very familiar with Windows at a system and |
|
97 |
+network level. We're looking or someone to do two projects: |
|
98 |
+<ul> |
|
99 |
+<li><strong>Improving Polipo on Windows</strong>: |
|
100 |
+<p>Help port <a |
|
101 |
+href="http://www.pps.jussieu.fr/~jch/software/polipo/">Polipo</a> |
|
102 |
+to Windows. Example topics to tackle include: |
|
103 |
+<ol> |
|
104 |
+<li> the ability to asynchronously query name servers, find the system |
|
105 |
+nameservers, and manage netbios and dns queries.</li> |
|
106 |
+<li> manage events and buffers natively (i.e. in Unix-like OSes, Polipo |
|
107 |
+defaults to 25% of ram, in Windows it's whatever the config |
|
108 |
+specifies).</li> |
|
109 |
+<li> some sort of GUI config and reporting tool, bonus if it has a |
|
110 |
+systray icon with right clickable menu options. Double bonus if it's |
|
111 |
+cross-platform compatible.</li> |
|
112 |
+<li> allow the software to use the Windows Registry and handle proper |
|
113 |
+Windows directory locations, such as "C:\Program Files\Polipo"</li> |
|
114 |
+</ol> |
|
115 |
+</li> |
|
116 |
+ |
|
117 |
+<li><strong>Intermediate Level Network Device Driver</strong>: |
|
118 |
+<br /> |
|
119 |
+The WinPCAP device driver used by Tor VM for bridged networking does |
|
120 |
+not support a number of wireless and non-Ethernet network adapters. |
|
121 |
+Implementation of a intermediate level network device driver for win32 |
|
122 |
+and 64bit would provide a way to intercept and route traffic over such |
|
123 |
+networks. This project will require knowledge of and experience with |
|
124 |
+Windows kernel device driver development and testing. Familiarity with |
|
125 |
+Winsock and Qemu would also be helpful. |
|
126 |
+</li> |
|
127 |
+</ul> |
|
128 |
+</p> |
|
43 | 129 |
|
44 | 130 |
<p> |
45 | 131 |
The best way to get noticed as a good developer is to join the community |
... | ... |
@@ -52,40 +138,8 @@ Torbutton, etc. |
52 | 138 |
Periodically we get new funding to work on more development |
53 | 139 |
projects. Your goal should be to get into the list of <a href="<page |
54 | 140 |
people>#Core">core project members</a> so we think of you when new |
55 |
-funding arrives. We're particularly looking for Windows developers and |
|
141 |
+funding arrives. We're particularly looking for Qt developers and |
|
56 | 142 |
people to help maintain <a href="<page vidalia/index>">Vidalia</a>. |
57 |
-</p> |
|
58 |
- |
|
59 |
-<a id="activist"></a> |
|
60 |
-<h3><a class="anchor" href="#activist">Activist and Outreach</a></h3> |
|
61 |
- |
|
62 |
-<p> |
|
63 |
-There are a lot of excited people about there who want to help Tor |
|
64 |
-— by running relays, helping users, writing documentation, |
|
65 |
-working on add-on tools, and so on. We need to keep in touch with |
|
66 |
-all of them, help them work with each other, and help them understand |
|
67 |
-where they can be most useful. |
|
68 |
-</p> |
|
69 |
- |
|
70 |
-<p> |
|
71 |
-Tor activists should understand Tor's role in the world, and they should |
|
72 |
-be good at explaining to the world why privacy/security/anonymity are |
|
73 |
-important. They should also be well-connected with other groups around |
|
74 |
-the world who care about these issues. |
|
75 |
-</p> |
|
76 |
- |
|
77 |
-<p> |
|
78 |
-Like the developer positions above, the best way to get noticed |
|
79 |
-for this position is to start helping out: join the <a href="<page |
|
80 |
-documentation>#MailingLists">mailing lists</a> and the <a href="<page |
|
81 |
-documentation>#Support">IRC channel</a>, help clean up our FAQ, and |
|
82 |
-generally be useful. Once we notice you're competent and reliable, |
|
83 |
-we'll add you to the <a href="<page contact>">"tor-assistants"</a> list, |
|
84 |
-and we can see where it goes from there. |
|
85 |
-</p> |
|
86 |
- |
|
87 |
-<p> |
|
88 |
-In addition, we are looking to hire experienced grant-writers. |
|
89 | 143 |
</p> |
90 | 144 |
|
91 | 145 |
</div><!-- #main --> |
92 | 146 |