put the 'phase 2' preliminary todo items in place
[tor/rransom.git] / doc / TODO.external
blobc801a8ab4ae047fc48d652fd717abd7267470fd8
1 $Id$
2 Legend:
3 SPEC!!  - Not specified
4 SPEC    - Spec not finalized
5 N       - nick claims
6 R       - arma claims
7 P       - phobos claims
8 S       - Steven claims
9 E       - Matt claims
10 M       - Mike claims
11 J       - Jeff claims
12 I       - ioerror claims
13 W       - weasel claims
14 K       - Karsten claims
15 C       - coderman claims
16         - Not done
17         * Top priority
18         . Partially done
19         o Done
20         d Deferrable
21         D Deferred
22         X Abandoned
24 =======================================================================
26 External constraints:
28 Past due:
29 N   - Refine proposal 158, and implement.
31 For June/July:
32 NR  - Work more on Paul's NRL research problem.
34 For March 22:
35 I   * Email auto-responder
36       * How do we better support users with limited email
37         bandwidth? Multi-part download? Teach them how to reconnect
38         their gmail? Does downloading your gmail work when your network
39         keeps dying?
41 K   - Metrics.
42       - With Mike's help, use Torflow to start doing monthly rudimentary
43         performance evaluations:
44         - Circuit throughput and latency
45         - Measure via Broadband and dialup
46       - Publish a report addressing key long-term metrics questions:
47         - What metrics should we present?
48         - What data are available for these metrics?
49         - What data are missing, and can collect them safely? Can we
50           publish them safely?
51         - What systems are available to present this data?
53 E   - Vidalia improvements
54       - Put out a Vidalia release with the new features in it.
55       - Vidalia displays by-country user summary for bridge operators
56 ?       - write a help page for vidalia, "what is this"
58 M   - Torbutton development
59       - Put out a Torbutton release with the new features in it.
61 C   - Transparent interception of connections on Windows
62       - Write a summary (with links) of current progress and current
63         limitations.
65 S   - Continue analyzing "traces" left on host machine by use of
66       Tor Browser, especially once we have our new launcher and have moved
67       to FF3. Write a summary of current progress, and what remains. Try
68       to solve some of the low-hanging fruit.
70 I   d Get a relay operator mailing list going, with a plan and supporting
71       scripts and so on.
73 For mid August:
75 Section 0, items that didn't make it into the original roadmap:
77 0.1, installers and packaging
78 C - i18n for the msi bundle files
79 P - more consistent TBB builds
80 IC- get a buildbot up again. Have Linux and BSD build machines.
81     (Windows would be nice but realistically will come later.)
82 E - Get Tor to work properly on the iPhone.
84 3.1.1, performance work.
86 XXX
88 4.1, IOCP / libevent / windows / tor
89 N - get it working for nick
90 N - put out a release so other people can start testing it.
91 N - both the libevent buffer abstraction, and the
92     tor-uses-libevent-buffer-abstraction. Unless we think that's
93     unreachable for this milestone?
95 4.2.1, risks from becoming a relay
96 S - Have a clear plan for how users who become relays will be safe,
97     and be confident that we can build this plan.
98     - evaluate all the various attacks that are made possible by relaying.
99       specifically, see "relaying-traffic attacks" in 6.6.
100     - identify and evaluate ways to make them not a big deal
101       - setting a low RelayBandwidth
102       - Nick Hopper's FC08 paper suggesting that we should do a modified
103         round-robin so we leak less about other circuits
104       - instructing clients to disable pings in their firewall, etc
105     - pick the promising ones, improve them so they're even better, and
106       spec them out so we know how to build them and how much effort is
107       involved in building them.
109 4.5, clients download less directory info
110 N - deploy proposal 158.
111 N - decide whether to do proposal 140. if so, construct an implementation
112     plan for how we'll do it. if not, explain why not.
114 5.1, Normalize TLS fingerprint
115 N - write a draft list of possible attacks for this section, with
116     estimates about difficulty of attack, difficulty of solution, etc
117 N - revisit the list and revise our plans as needed
118 NR- put up a blog post about the two contradictory conclusions: we can
119     discuss the theory of arms races, and our quandry, without revealing
120     any specific vulnerabilities. (or decide not to put up a blog post,
121     and explain why not.)
123 5.5, email autoresponder
124 I - maintenance and keeping it running
126 5.7.2, metrics
128 XXX.
130 6.2, Vidalia work
131 E - add breakpad support or similar for windows debugging
132 E - let vidalia change languages without needing a restart
133 E - Implement the status warning event interface started for the
134     phase one deliverables.
135 E - Work with Steve Tyree on building a Vidalia plugin API to enable
136     building Herdict and TBB plugins.
138 6.3, Node scanning
139 M - Steps toward automation
140     - Set up email list for results
141     - Map failure types to potential BadExit lines
142 M - Improve the ability of SoaT to mimic various real web browsers
143     - randomizing user agents and locale strings
144     - caching, XMLHTTPRequest, form posting, content sniffing
145     - Investigate ideas like running Chrome/xulrunner in parallel
146 M - Other protocols
147     - SSH, IMAPS, POPS, SMTPS
148 M - Add ability to geolocalize exit selection based on scanner location
149     - Use this to rescan dynamic urls filtered by the URL filter
151 6.4, Torbutton development
152 M - Resolve extension conflicts and other high priority bugs
153 M - Fix or hack around ugly firefox bugs, especially Timezone issue.
154     Definitely leaning towards "hack around" unless we see some
155     level of love from Mozilla.
156 M - Vidalia New Nym Integration
157     - Implement for Torbutton to pick up on Vidalia's NEWNYM and clear
158       cookies based on FoeBud's source
159     - Do this in such a way that we could adapt polipo to purge cache
160       if we were so inclined
161 M - Write up a summary of our options for dealing with the google
162     you-must-solve-a-captcha-to-search problem, and pick one as our
163     favorite option.
165 6.6, Evaluate new anonymity attacks
166 S - relaying-traffic attacks
167     - original murdoch-danezis attack
168     - nick hopper's latency measurement attack
169     - columbia bandwidth measurement attack
170     - christian grothoff's long-circuit attack
171 S - client attacks
172     - website fingerprinting
174 7.1, Tor VM Research, analysis, and prototyping
175 C - Get a working package out, meaning other people are testing it.
177 7.2, Tor Browser Bundle
178 I - Port to one of OS X or Linux, and start the port to the other.
179 I - Make it the recommended Tor download on Windows
180 I - Make sure it's easy to un-brand TBB in case Firefox asks us to
181 I - Evaluate CCC's Freedom Stick