How strong is a strong password?

  • September 13, 2017
  • 0 Comments

These days on the Internet all of your important information could be just a website request away. This is why it's important as ever to ensure that you're using a secure password to restrict access to your private information.

You should keep your cPanel, and Email passwords secure, as well as any CMS such as WordPress. Anything that's publicly accessible on the Internet should be using a strong password for your security.

It's typically better to come up with a secure password that you can actually remember, otherwise you'll probably rely on writing it down or storing it on your computer which could potentially be hacked.

How are passwords cracked?

Most accounts that have their passwords compromised are not done so by another human being directly.

Instead a computer will be tasked with guessing your password, so planning should go in to understanding and then deterring a computer from cracking your password.

A hacker has a variety of malicious tactics available to them when trying to crack your password. These would be the two most common attacks you see on the Internet today:

Password entropy and understanding password strength

In the world of computing and passwords, there is something commonly referred to as password entropy.

define entropy: lack of order or predictability; gradual decline into disorder.

In layman's terms this basically means the higher your password entropy the less predictable your password patterns are for a computer, so the stronger and more secure your password is theoretically.

This is a simple equation to demonstrate password entropy:

H total binary bits of entropy | L length of your password | N number of possible symbols in password

H = L * log2(N)

Depending on how the password was generated, either by a random sequence or a human, this equation can get a lot more complex. But for our purposes here it should work fine.

Creating stronger passwords with higher entropy

Knowing how entropy is calculated, we can see that doing certain things to our password adds more than others.

The length of your password can add a lot of entropy to your password, but adding complexity by using more than one character set can also greatly increase it.

This is why typically most sites require you to use at least one uppercase, one lowercase, one digit, and one special symbol character in your password.

Your typical online account password can be made up of a possible 94 characters in each character slot.

So a 6 character password using at least 1 character from each possible keyboard character set, is just about as strong as a 12 character password limited to only using digits 0-9, at least from a theoretical approach.

Dictionary attacks complicate matters

When an attacker uses a dictionary of words to try to guess your password, this can make a seemingly strong password very weak all of the sudden.

If we simply used a single all lowercase word for our password, to a human, cow might be easier to guess than supercalifragilisticexpialidocious just off the top of their head. But a computer might be doing a dictionary attack in which they would go through the total number of words in the English language (1,022,000 in 2010).

As we're trying to protect against computers guessing our passwords if you figure out the entropy for these two words you'll quickly see the pitfall of using words from any kind of dictionary in your password.

A short English word under a dictionary attack

If an attack is trying all lowercase English words to guess your password, here would be the entropy for cow:

19.9629 = 1 * log2(1,022,000)

Notice how we're only using 1 character instead of what you might expect with cow having 3 characters in it? This is because if the attacker is just guessing single words, the characters in the password don't matter at this point, if they match our single word to one in the dictionary, they've cracked the password.

A long English word under a dictionary attack

Now here is where things get interesting with a very long word such as supercalifragilisticexpialidocious:

19.9629 = 1 * log2(1,022,000)

Even though this word has 34 characters, there are only 1,022,000 possible combinations of all those characters to make up an English word. So we don't gain any password entropy when a dictionary attack is being used.

A long English word under a Brute Force attack

Although if the hacker only relied on a brute force attack changing 1 character at a time, this would be an extremely strong password due to its length.

222.8560 = 34 * log2(94)

Create a strong password you can remember

Now hopefully that you understand a bit about password entropy and how to protect against automated cracking attempts of your password. This is the most common way passwords are stolen these days.

It's also important to protect against human attacks as well, and not to leave yourself vunerable on either front. For instance while the password nowthisisastoryallabouthowmylifegotflippedturnedupsidedown would have a very high password entropy of 272.6255 with 58 characters and a possible 26 lowercase characters.

There are many methods for creating a unique strong password you can remember, but ultimately it's going to come down to what works for you. Just be sure you know the pitfalls of not using multiple character sets or using words from any type of dictionary.

One popular method is converting a unique phrase into something you can remember with some character substitutions that only you'd think of. Here's a simple example:

The best password is one I can remember forever

How helpful was this article to you?