[liberationtech] New report on Internet Censorship and Surveillance in Turkmenistan
Jacob Appelbaum
jacob at appelbaum.net
Mon Jan 7 17:10:20 PST 2013
Rafal Rohozinski:
> Jacob:
>
>>> What is the difference between Black Watch and ooniprobe,
>>> practically?
>>
>> Or rephrased, we'd be happy to take patches for ooniprobe if the
>> features aren't already implemented and if nothing else, we'd like
>> to ensure that our output data formats are compatible for
>> analysis.
>
> There may be 50 ways to leave your lover, but generally about a
> dozen proven ways to measure censorship and surveillance :-) From
> that point of view, no, there are no significant practical
> differences between how Black Watch and ooniprobe test and detect
> censorship/surveillance events.
That seems odd. We're trying to create a general taxonomy with
OONI/ooniprobe/other tools. We have general tests for specific details
(eg: DNS packet contains a lie, first hop terminates TCP connections,
etc) and from that, we are able to say interesting things about the
network in question.
> As you know, I've been involved with
> ONI for the past decade, and I know you've taken a very keen interest
> in these issues in the last few years (by you, I also mean the TOR
> project).
Well, I've tried for the better part of ten years to learn about the
internal methods of ONI.
> Consequently, I think that at a technical level of our
> thinking is quite strongly aligned around a clear understanding of
> the challenges involved. In that respect, there is strong synergy
> between Black Watch and ooniprobe and I hope that we can align both
> projects in 2013. I'd include here participating in the ooniprobe
> project at the coding and conceptual level. At a minimum, we are
> committed to making sure that the output format/data for both
> systems is the same.
Ok. Sounds interesting. Our output format is rather straight forward and
documented here:
http://ooni.readthedocs.org/en/latest/
>
> Consequently, the main differences between the two projects may be
> in the considerations driving the design and usage model.
>
> Black Watch was designed to provide recurrent 24X7 testing against
> specific resources. Initially, this was driven by the difficulty we
> faced at ONI in testing for just-in-time filtering, or filtering
> around elections and other temporally-bound events. This meant fewer
> targets for testing, but a more rapid, recurrent and re-targetable
> testing cycle. Unlike rTurtle (the ONI testing tool) it was not
> built for broad spectrum testing/detection for all blocked/filtered
> content (although it is capable of that as well.)
ooniprobe has tests designed to be run constantly or to be run when
interested in answering specific questions.
>
> We wanted Black Watch to be responsive - to give the tester immediate
> feedback and to make the data quickly accessible and easily
> understandable. We spent a lot of time developing GUI's so as to
> make the process of tasking multiple testing devices and correlating
> data intuitive. Currently the system allows users to schedule
> testing, and group testing by country, region, service. In fact, we
> spent a lot of time on the visualization aspects overall so as to be
> able to show real-time patterns across country/services ( sort of
> like a weather forecast).
>
We're not focused on analysis of data across the entire network of
probes as we want to create a pipeline. We do plan a GUI for a given
tester and currently our tools are console tools with instant feedback.
> Sustainability was also a core part of the Black Watch design
> criteria. The "sustainability" motivation is pretty
> straightforward and based on my experience with Psiphon where an
>> open source project is sustained through commercial contracts that
> make the service available to those living in countries practice
> political censorship of the Internet. In the case of Black Watch,
> it's the same: use commercial contracts to off-set the cost of
> creating publicly available Open Data on censorship and surveillance.
> What kind of contracts are we talking about? Mostly "due diligence":
> Companies, service providers, broadcasters pay content delivery
> providers for services that they often cannot verify. Black Watch
> can provide that verification.
This generally fits with an open taxonomy of terms,
verifiable/reproducible data, and free/open source software tools.
>
> We also spent a lot of tome thinking about obfuscation and resilience
> so as to limit detectability and communication with remote testing
> devices (not an easy challenge, as you can surmise).
>
We covered a bit of this in our paper at FOCI last year. rTurtle had a
rather serious problem in this department - how do you solve this problem?
> At some stage in the near future we will share a design document so
> as to lay this out as clearly as possible. Contrary to popular
> belief, SecDev is not a massive behemoth, rather we are a relatively
> small shop with lots of activities so time/brain cycles available for
> working on this is the biggest constraint.
>
I'd love to see these documents just openly published, especially if
you're already collecting data in the wild.
All the best,
Jacob
More information about the liberationtech
mailing list