9

It was a bit surprising that Wikipedia has switched to TLS because we all know it's public information available to anyone, but I suppose that the real purpose for that is to provide authentication/integrity so that no one can tamper with the articles in transit like Chinese or other governments. Looking at the certificate information in Chrome browser I see that they use AES for encryption. Why is that needed, since it is possible to provide only integrity without confidentiality which will save a lot of resources.

Is it a problem with TLS that it does not allow selecting None or something as ciphersuite?

Or is there some other consideration that I did not think of?

4
  • 5
    What about hiding what a user is looking up? TLS would provide that kind of confidentiality.
    – schroeder
    Aug 24, 2015 at 18:54
  • Yes, that's true. I did not think about confidentiality in this scenario, it is probably important for wikipedia to provide this type of confidentiality to prevent governments etc. from spying. Aug 24, 2015 at 18:56
  • 1
    Or employers, or people on the shared wifi, or ... Governments aren't the only ones people want to be private from.
    – schroeder
    Aug 24, 2015 at 18:58
  • 2
    Funfact: TLS provides (some) cipher suites that only give integrity / authentication. See for example TLS_ECDHE_RSA_WITH_NULL_SHA
    – SEJPM
    Aug 24, 2015 at 20:39

2 Answers 2

7

In theory, yes, TLS/SSL can provide integrity and authentication without confidentiality: you can use the "NULL" family of ciphers, which don't perform any encryption, but do perform integrity checking and authentication. Note the "in theory". In practice, nobody enables the NULL ciphers for their servers or clients.

As for the specific case of Wikipedia, TLS is used to hide what you're looking up. Imagine what would happen if your boss/the police/your spouse discovered you were reading The Turner Diaries, synthesis of methamphetamine, or comparison of online dating websites.

5

There are a couple of cipher suites that provide integrity and server authentication but no encryption (e.g. TLS_RSA_WITH_NULL_SHA256). However, no browser supports them, precisely because they do not offer encryption, thus requiring some sort of user interface to let the user decide whether the site he wants to reach requires encryption or not. From a usability point of view, this would be inconvenient; also, users are notoriously bad at making informed security decisions.

For these reasons, browsers only support cipher suites with strong encryption. This is not a problem in practice, because the computational cost of encryption in that context is mostly negligible (even an anemic smartphone can encrypt data ten times faster than it can download it).

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .