I am examining the collection of cipher suites that some mobile apps use (Client Hello) and I noticed that the majority of them include the TLS_RC4_128_MD5 and TLS_RC4_128_SHA. According to the OWASP Transport Layer Protection Cheat Sheet https://www.owasp.org/index.php/Transport_Layer_Protection_Cheat_Sheet, RC4 and MD5 are considered weak and shouldn't be used any more. Therefore I am wondering why developers keep using them?

Thank you

  • One of the reason I can think of is to support older devices. Commented Mar 14, 2016 at 12:45
  • @mike-stokkel Doesn't that however make them vulnerable against the TLS protocol downgrade attack ? I noticed that even a banking app is using it.
    – Irene Ant
    Commented Mar 14, 2016 at 12:56
  • Remember that the client hello is only a suggestion. The client suggests, the server chooses. So, while a client may say *hey, I accept weak ciphers!" as long as it also supports strong ciphers, the server can choose to use strong ciphers instead, and does not, in fact, need to support weak ciphers at all.
    – Xander
    Commented Mar 14, 2016 at 13:03

1 Answer 1


Developers aren't deliberately using them. Developers are developing applications using whatever the defaults for that platform are, and the defaults are now and have always strongly favored "never cause a user to notice something to complain to us about" over "reduce the chance the user gets hacked".

Additionally, older clients and libraries rarely if ever get updated, since they are "no longer supported" despite being in widespread use because OS developers, library developers, device manufacturers, developers, and users are all unwilling to upgrade and/or change defaults.

And so on.

You must log in to answer this question.

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