In nearly all software (that I've used so far) that allows to set the encryption settings, default settings are kind of weak. There is always something that you should tweak to achieve better protection. It applies to regularly updated software as well. Why is it so? If a main task of a software is to protect your data via encryption, why does it allow to set potentially insecure options?

migrated from crypto.stackexchange.com Dec 25 '17 at 15:07

This question came from our site for software developers, mathematicians and others interested in cryptography.

  • Can't say in general. Sometimes it is for hysterical raisins: older versions of the software were made with bad choices and newer ones have to stick with them. Sometimes it is for performance reasons, if the security level of the faster option is adequate. Generally user-visible knobs controlling crypto are a bad idea, because most users are not competent to make decisions about that. – Squeamish Ossifrage Dec 24 '17 at 19:25
  • I guess I forgot to mention that I was under the impression of dm-crypt/truecrypt and similar, that require you to be somewhat competent. – Alexey Novikov Dec 24 '17 at 19:28
  • 2
    What exactly do you see as "weak encryption"? Would you say that AES with 128 bit key is weak and that a program should better use AES 256, or something like triple encryption (AES, Serpent, Twofisch, as Truecrypt has the option for as far as I know)? – Nova Dec 24 '17 at 21:47
  • 1
    I agree with @Nova that this question makes a claim of "default settings are generally weaker than optimal ones" without actually proving this claim and explaining what this weaker than optimal really means for the OP. In my opinion a setting is optimal if it provides enough security for the specific purpose without needing too much resources (CPU, memory, time, usability). I don't consider stronger encryption optimal if it uses more resources without actually improving the real security in the specific use case. – Steffen Ullrich Dec 25 '17 at 21:18
  • To say something is optimal, you need to define the optimization goal. The default setting in your encryption software is likely optimal for the goal that the software developers had in mind, however the developer's goal may not necessarily be the same as yours. – Lie Ryan Dec 26 '17 at 18:08

One reason is that older algorithms are likely to have wider support. Such defaults probably ensure that the software runs on a wide variety of platforms out of the box. The software itself might also be old.

It may be assumed by the developers that you will configure the software to meet your expectations after installation. It may be arguable that this is not an ideal assumption to make.

However, if the alternative is that the user must configure the software just to install it at all, then non-technical users may balk or may not be proficient enough to understand the installation/configuration process. Which means that the software won't be installed or used properly, which is worse then being stuck with Triple-DES as the default cipher.

  • 7
    "Security at the expense of usability, comes at the expense of security." ~ AviD's rule. – SEJPM Dec 25 '17 at 9:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy