wiki:TorWeeklyNews/2013/10

Version 38 (modified by lunar, 6 years ago) (diff)

write about Tor crypto

Eleventh issue of Tor Weekly News. Covering what's happening from from September 4th, 2013 to September 10th, 2013. To be released on September 11th, 2013.

Editor:

Subject: Tor Weekly News — September, 11th 2013

========================================================================
Tor Weekly News                                     September 11th, 2013
========================================================================

Welcome to the eleventh issue of Tor Weekly News, the weekly newsletter that
covers what is happening in the XXX Tor community.

Tor 0.2.4.17-rc is out
----------------------

On 5th September, Roger Dingledine announced the release of a new release candidate 
for Tor 0.2.4 series [XXX]. It comes with very handy feature in the current situation [XXX]
- prioritizing faster and safer circuit-level handshakes "NTor" over "TAP" used by
0.2.3 clients.

“Relays now process the new "NTor" circuit-level handshake requests with higher 
priority than the old "TAP" circuit-level handshake requests. We still process 
some TAP requests to not totally starve 0.2.3 clients when NTor becomes popular. 
A new consensus parameter "NumNTorsPerTAP" lets us tune the balance later if we 
need to. Implements ticket 9574 [XXX].”

Roger asks relay operators to consider upgrading to 0.2.4.17-rc version due the huge 
circuit overload we see nowadays [XXX]. Upgrading to development branch is surprisingly
easy using this guide [XXX].

  [XXX] https://lists.torproject.org/pipermail/tor-talk/2013-September/029857.html
  [XXX] https://blog.torproject.org/blog/how-to-handle-millions-new-tor-clients
  [XXX] https://trac.torproject.org/projects/tor/ticket/9574
  [XXX] https://lists.torproject.org/pipermail/tor-relays/2013-September/002701.html
  [XXX] https://www.torproject.org/docs/debian.html.en#development

 XXX:Expand

The future of Tor cryptography
------------------------------

After the last round of revelations from Edward Snowden, described as
“explosive” by Bruce Schneier [XXX], several threads started on the
tor-talk mailing list to discuss Tor cryptography.

A lot of what has been written is speculative at this point. But some
have raised concerns [XXX] about 1024 bit Diffie-Helmank key exchange [XXX].
This has already been adressed with the introduction of the “ntor”
handshake [XXX] in 0.2.4 and Nick Mathewson encourages everybody to
upgrade [XXX].

Another thread [XXX] prompted Nick to summarize [XXX] its
views on the future of Tor cryptography. Regarding public keys, “with
Tor 0.2.4, forward secrecy uses 256-bit ECC, which is certainly
better, but RSA-1024 is still used in some places for signatures.
I want to fix all that in 0.2.5 — see proposal 220 [XXX], and George
Kadianakis’ draft hidden service improvements [XXX,XXX], and so forth.”
Regarding symmetric keys, Nick wrote: “We’re using AES128.  I’m hoping
to move to XSalsa20 or something like it.”

The effort to design better cryptography for the Tor protocols is not
new. More than a year ago, Nick Mathewson presented proposal 202 [XXX]
outlining two possible new relay encryption protocols for Tor cells.

A third question was raised [XXX] regarding the trust in algorithms
certified by the US NIST [XXX]. Nick speculations put aside, he also
emphasised that several NIST algorithms were “hard to implement
correctly” [XXX].

Nick’s also plan to move away from NIST algorithms [XXX]: “Over the 0.2.5
series, I want to move even more things (including hidden services) to
curve25519 and its allies for public key crypto.  I also want to add
more hard-to-implement-wrong protocols to our mix: Salsa20 is looking
like a much better choice to me than AES nowadays, for instance.”

Nick concluded one of his email with “these are interesting times for
crypto”. It sounds like a good way to put it.

  [XXX] https://www.schneier.com/blog/archives/2013/09/the_nsa_is_brea.html
  [XXX] https://lists.torproject.org/pipermail/tor-talk/2013-September/029917.html
  [XXX] https://en.wikipedia.org/wiki/Diffie–Hellman_key_exchange
  [XXX] https://gitweb.torproject.org/torspec.git/blob_plain/HEAD:/proposals/216-ntor-handshake.txt
  [XXX] https://lists.torproject.org/pipermail/tor-talk/2013-September/029930.html
  [XXX] https://lists.torproject.org/pipermail/tor-talk/2013-September/029927.html
  [XXX] https://lists.torproject.org/pipermail/tor-talk/2013-September/029941.html
  [XXX] https://gitweb.torproject.org/torspec.git/blob_plain/HEAD:/proposals/220-ecc-id-keys.txt
  [XXX] https://lists.torproject.org/pipermail/tor-dev/2013-August/005279.html
  [XXX] https://lists.torproject.org/pipermail/tor-dev/2013-August/005280.html
  [XXX] https://gitweb.torproject.org/torspec.git/blob_plain/HEAD:/proposals/202-improved-relay-crypto.txt
  [XXX] https://lists.torproject.org/pipermail/tor-talk/2013-September/029933.html
  [XXX] https://en.wikipedia.org/wiki/National_Institute_of_Standards_and_Technology
  [XXX] https://lists.torproject.org/pipermail/tor-talk/2013-September/029937.html
  [XXX] https://lists.torproject.org/pipermail/tor-talk/2013-September/029929.html

Toward a better performance measurement tool
--------------------------------------------

“I just finished […] sketching out the requirements and a software design
for a new Torperf implementation“ announced Karsten Loesing [XXX] on
the tor-dev mailing list.

The report begins with: “Four years ago, we presented a simple tool to
measure performance of the Tor network.  This tool, called Torperf,
requests static files of three different sizes over the Tor network and
logs timestamps of various request substeps. These data turned out to be
quite useful to observe user-perceived network performance over 
time [XXX]. However, static file downloads are not the typical use case
of a user browsing the web using Tor, so absolute numbers are not very
meaningful. Also, Torperf consists of a bunch of shell scripts which
makes it neither very user-friendly to set up and run, nor extensible to
cover new use cases.”

The specification lay out the various requirements for the new tool, and
details several experiments like visiting high profile websites with an
automated graphical web browser, downloading static files, crafting a
canonical web page, measuring hidden service performance, and checking
on upload capacity.

Karsten added “neither the requirements nor the software design 
are set in stone, and the implementation, well, does not exist yet.
Plenty of options for giving feedback and helping out, and most parts
don't even require specific experience with hacking on Tor. Just in case
somebody's looking for an introductory Tor project to hack on.”

Saytha already wrote that this was enough material to get the 
implementation started [XXX]. The project needs enough work for anyone 
interested. Feel free to join him!

  [XXX] https://lists.torproject.org/pipermail/tor-dev/2013-September/005386.html
  [XXX] https://metrics.torproject.org/performance.html
  [XXX] https://lists.torproject.org/pipermail/tor-dev/2013-September/005388.html

Monthly status reports for XXX month 2013
-----------------------------------------

The wave of regular monthly reports from Tor project members for the
month of XXX has begun. XXX released his report first [XXX], followed
by reports from name 2 [XXX], name 3 [XXX], and name 4 [XXX].

 [XXX]
 [XXX]
 [XXX]
 [XXX]

MOAR reports:
Sukhbir Singh https://lists.torproject.org/pipermail/tor-reports/2013-September/000326.html
Matt Pagan https://lists.torproject.org/pipermail/tor-reports/2013-September/000327.html
Ximin Luo https://lists.torproject.org/pipermail/tor-reports/2013-September/000328.html
Nima https://lists.torproject.org/pipermail/tor-reports/2013-September/000329.html
Pearl Crescent https://lists.torproject.org/pipermail/tor-reports/2013-September/000330.html
Andrew Lewman https://lists.torproject.org/pipermail/tor-reports/2013-September/000331.html
Mike Perry https://lists.torproject.org/pipermail/tor-reports/2013-September/000332.html
Kelley Misata https://lists.torproject.org/pipermail/tor-reports/2013-September/000333.html
Nick Mathewson https://lists.torproject.org/pipermail/tor-reports/2013-September/000334.html
Jason Tsai https://lists.torproject.org/pipermail/tor-reports/2013-September/000335.html
Tails https://lists.torproject.org/pipermail/tor-reports/2013-September/000336.html
Aaron https://lists.torproject.org/pipermail/tor-reports/2013-September/000337.html
Damian Johnson https://lists.torproject.org/pipermail/tor-reports/2013-September/000338.html

Miscellaneous news
------------------

Thanks Frenn vun der Enn [XXX] for setting up a new mirror [XXX] of the 
Tor project website.

  [XXX] http://enn.lu/
  [XXX] https://lists.torproject.org/pipermail/tor-mirrors/2013-September/000351.html

With the Google Summer of Code ending in two weeks, the students have 
sent their the next to last reports: Kostas Jakeliunas for the 
Searchable metrics archive [XXX], Johannes Fürmann for EvilGenius [XXX],
Hareesan for the Steganography Browser Extension [XXX], and Cristian-Matei
Toader for Tor capabilities [XXX].

  [XXX] https://lists.torproject.org/pipermail/tor-dev/2013-September/005380.html
  [XXX] https://lists.torproject.org/pipermail/tor-dev/2013-September/005394.html
  [XXX] https://lists.torproject.org/pipermail/tor-dev/2013-September/005409.html
  [XXX] https://lists.torproject.org/pipermail/tor-dev/2013-September/005412.html

Damian Johnson anounced [XXX] he had completed the rewrite of DocTor in
Python [XXX],  “a service that pulls hourly consensus information and
checks it for a host of issues (directory authority outages, expiring
certificates, etc). In the case of a problem it notifies
tor-consensus-health@ [XXX], and we in turn give the authority operator 
a heads up.”

  [XXX] https://lists.torproject.org/pipermail/tor-reports/2013-September/000338.html
  [XXX] https://gitweb.torproject.org/doctor.git
  [XXX] https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-consensus-health

On Tuesday September 3rd, the IRC meeting was held to discuss a progress on sponsor F [XXX]
project. See Karsten Loesing’s notes for output [XXX].

  [XXX] https://trac.torproject.org/projects/tor/wiki/org/sponsors/SponsorF
  [XXX] https://lists.torproject.org/pipermail/tor-dev/2013-September/005370.html

Vulnerabilities
---------------

XXX: Reported vulnerabilities [XXX].

 [XXX] vulnerability report source

Help Desk Roundup
-----------------
We had a number of emails this week asking about the recent stories in 
the New York Times, the Guardian, and Pro Publica regarding NSA's cryptographic 
capabilities. Some users asked whether there was a backdoor in Tor. Others asked 
if Tor's crypto was broken. 

There is absolutely no backdoor in Tor. We have been vocal in the past about how
tremendously irresponsible it would be to backdoor our users[xxx]. We also have
an FAQ entry explaining some ways we would fight back if anyone tried[xxx].

We do not have any more facts about NSA's cryptanalysis capabilities than have 
been published in newspapers. However it is the belief of many Tor developers 
that even considering these new developments, Tor's encryption is effective. 
Tor uses TLS for link encryption. If the TLS is good, an outside attacker can't 
even get to Tor's crypto. If the TLS is bad, good thing we have Tor's crypto. 

Breaking SSL/TLS could involve something besides cracking cryptographic 
primitives. For example an attack could be accomplished by finding some 
vulnerability in the way the https protocol is implemented, or by compromising 
the computers of Certificate Authorites to get their private keys. Or by legally 
coercing Certificate Authorities to hand over their private keys and shut up 
about it. I'm sure there are other ways it could be done as well. The math that 
makes encryption hard to break still stands. Tor's code is completely open source 
and has many eyes inspecting it. The encryption that Tor uses is summarized on the
FAQ page[xxx] and detailed in the Tor specification[xxx]. 

[xxx]: https://blog.torproject.org/blog/calea-2-and-tor
[xxx]: http://www.torproject.org/docs/faq.html.en#Backdoor
[xxx]: https://www.torproject.org/docs/faq.html.en#KeyManagement
[xxx]: https://gitweb.torproject.org/torspec.git?a=blob_plain;hb=HEAD;f=tor-spec.txt


Simple Ways to Contribute This Week 
----------------------------------- 

Each week will be listed here some simple tasks that people who want to
begin to hack on the Tor Project could do.

If you're hacking on Tor and want a ticket featured here, add "easy" to
the keywords field on Trac.

Highlighted this week:

* Let User's know which IP is making a new control port connection [XXX]
  Why? Let User's know which IP/application is making a new control port 
  connection so they have info to go on to rule out an attack. 
  Practice: C, Network Service Primitives 

* Change 'your' to 'this' on check.torproject.org page [XXX]
  Why? A small percentage of users will misinterpret "your browser" to
  mean their existing browser with dire consequences.
  Practice: Git, Patch, Diff

* Add tests to Stem to try and detect new versions of Tor [XXX]
  Why? Reduce workload for keeping Stem up to date with changes in Tor & 
  making sure programs that rely on Stem are kept closely up to date with
  Tor.
  Practice: Python, Tor Control Protocol, Testing
  
  [XXX] https://trac.torproject.org/projects/tor/ticket/9698 
  [XXX] https://trac.torproject.org/projects/tor/ticket/9631
  [XXX] https://trac.torproject.org/projects/tor/ticket/8250

Upcoming events
---------------

Sep 29-01 | Tor at OpenITP Circumvention Tech Summit IV
          | Berlin, Germany
          | https://www.openitp.org/openitp/circumvention-tech-summit.html
          |
Oct 09-10 | Andrew speaking at Secure Poland 2013
          | Warszawa, Poland
          | http://www.secure.edu.pl/


This issue of Tor Weekly News has been assembled by XXX, XXX, and
XXX.

Want to continue reading TWN? Please help us create this newsletter.
We still need more volunteers to watch the Tor community and report
important news. Please see the project page [XXX], write down your
name and subscribe to the team mailing list [XXX] if you want to
get involved!

  [XXX] https://trac.torproject.org/projects/tor/wiki/TorWeeklyNews
  [XXX] https://lists.torproject.org/cgi-bin/mailman/listinfo/news-team

Possible items: