Attention when choosing an Encryption solution - Weakness in Password manager of Firefox and Thunderbird
Added on 03/21/2018 by Frank Hissen
An "IT security researcher" recently engaged attention on a seemingly older, known weakness in Mozilla's password managers of Firefox and Thunderbird. Core problem is the way of dealing with the master password (keyword: secure password hashing). We recommend for years to pay close attention - when choosing an encryption software - which password hashing procedure is used. Otherwise, you eventually have no real data encryption at all. We try to provide some clear background information.
Password-based Encryption: Background knowledge
For a better understanding it has to be explained that password-based encryption technologies – e.g., like the pre-mentioned integrated password managers, but also disk or file encryption – use a so called master password as a basis. Sometimes it is also called passphrase. This has to be "hashed" securely so that the actual encryption works securely. For the interested reader, we already cover technical details and backgrounds in our article "Secure Password Hashing".
Briefly explained for the layperson: Encryption works on the basis of so called encryption keys – or short 'keys'. Common encryption methods or algorithms that you might have heard of are for instance RSA or AES-256. These are used in SSL/TLS on a daily basis by yourself whenever you call a website using HTTPS. Technically, a key is nothing else but a unique data array which allows only its owner (user) the encryption and decryption of data.
However, a master password is no key (yet). To encrypt data (e.g., a password collection within a password manager), a suitable key has to be "created" from the master password. This "generation" has to be secure for obvious reasons. Because: If the key generation is not secure, the whole encryption is broke. All following procedures could be the best possible, but if the starting point – the key generation – is insecure, all these procedures are void. So, at the end you have effectively no encryption at all.
THE COMPLETE FREE ARTICLE IS HERE