aboutsummaryrefslogtreecommitdiff
path: root/changes
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2014-04-14 14:10:05 -0400
committerNick Mathewson <nickm@torproject.org>2014-04-14 14:16:49 -0400
commitbd3db82906a2efcd678b5f4b61fef26c93828777 (patch)
tree9dcd77ff5d7de0059741299a7ec3a8c1a8cc0923 /changes
parent47f7085de7a496b6bfa79de9e1b22ca4a28b0f27 (diff)
downloadtor-bd3db82906a2efcd678b5f4b61fef26c93828777.tar.gz
tor-bd3db82906a2efcd678b5f4b61fef26c93828777.zip
New sort order for server choice of ciphersuites.
Back in 175b2678, we allowed servers to recognize clients who are telling them the truth about their ciphersuites, and select the best cipher from on that list. This implemented the server side of proposal 198. In bugs 11492, 11498, and 11499, cypherpunks found a bunch of mistakes and omissions and typos in the UNRESTRICTED_SERVER_CIPHER_LIST we had. In #11513, I found a couple more. Rather than try to hand-edit this list, I wrote a short python script to generate our ciphersuite preferences from the openssl headers. The new rules are: * Require forward secrecy. * Require RSA (since our servers only configure RSA keys) * Require AES or 3DES. (This means, reject RC4, DES, SEED, CAMELLIA, and NULL.) * No export ciphersuites. Then: * Prefer AES to 3DES. * If both suites have the same cipher, prefer ECDHE to DHE. * If both suites have the same DHE group type, prefer GCM to CBC. * If both suites have the same cipher mode, prefer SHA384 to SHA256 to SHA1. * If both suites have the same digest, prefer AES256 to AES128.
Diffstat (limited to 'changes')
-rw-r--r--changes/bug1151312
1 files changed, 12 insertions, 0 deletions
diff --git a/changes/bug11513 b/changes/bug11513
new file mode 100644
index 0000000000..820c02605f
--- /dev/null
+++ b/changes/bug11513
@@ -0,0 +1,12 @@
+ o Major bugfixes:
+ - Generate the server's preference list for ciphersuites
+ automatically based on uniform criteria, and considering all
+ OpenSSL ciphersuites with acceptable strength and forward
+ secrecy. (The sort order is: prefer AES to 3DES; break ties by
+ preferring ECDHE to DHE; break ties by preferring GCM to CBC;
+ break ties by preferring SHA384 to SHA256 to SHA1; and finally,
+ break ties by preferring AES256 to AES128.) This resolves bugs
+ #11513, #11492, #11498, #11499. Bugs reported by 'cypherpunks'.
+ Bugfix on 0.2.4.8-alpha.
+
+