Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Using systems like TrueCrypt, when I have to define a new password I am often informed that using a short password is insecure and "very easy" to break by brute-force.

I always use passwords of 8 characters in length, which are not based on dictionary words, which consists of characters from the set A-Z, a-z, 0-9

I.e. I use password like sDvE98f1

How easy is it to crack such a password by brute-force? I.e. how fast.

I know it heavily depends on the hardware but maybe someone could give me an estimate how long it would take to do this on a dual core with 2GHZ or whatever to have a frame of reference for the hardware.

To briute-force attack such a password one needs not only to cycle through all combinations but also try to de-crypt with each guessed password which also needs some time.

Also, is there some software to brute-force hack truecrypt because I want to try to brute-force crack my own passsword to see how long it takes if it is really that "very easy".

share|improve this question
10  
Well now that you've told us your passwords are always 8 characters and not dictionary words, you've made it much easier ;-) –  Josh Mar 13 '10 at 16:56
    
Damn! I should have better taken a dictionary word... :) –  user31073 Mar 13 '10 at 17:13
    
If you are really concerned about passwords try KeePass. My password management had reached critical mass, then KeePass changed my life. Now I only have to remember 2 password, one to login to my computer and one to login to my KeePass database. All my passwords (and most of my usernames) are now unique and extremely complex, and using a username/password combo is as easy as CTRL + ALT + A if I'm logged into KeePass. –  ubiquibacon Jul 12 '13 at 15:06

6 Answers 6

up vote 10 down vote accepted

If the attacker can gain access to the password hash it is often very easy to brute force since it simply entails hashing passwords until the hashes match.

The hash "strength" is dependent on how the password is stored. A MD5 hash might take less time to generate then a SHA-512 hash.

Windows used to (and may still, I don't know) store passwords in a LM hash format, which uppercased the password and split it into two 7 character chunks which were then hashed. If you had a 15 character password it wouldn't matter because it only stored the first 14 characters, and it was easy to brute force because you weren't brute forcing a 14 character password, you were brute forcing two 7 character passwords.

If you feel the need, download a program such as John The Ripper or Cain & Abel (links withheld) and test it.

I recall being able to generate 200,000 hashes a second for an LM hash. Depending on how Truecrypt stores the hash, and if it can be retrieved from a locked volume, it could take more or less time.

Brute force attacks are often used when the attacker has a large number of hashes to go through. After running through a common dictionary they will often start weeding passwords out with common brute force attacks. Numbered passwords up to ten, extended alpha and numeric, alphanumeric and common symbols, alphanumeric and extended symbols. Depending on the goal of the attack it can lead with varying success rates. Attempting to compromise the security of one account in particular is often not the goal.

share|improve this answer
    
Thanks for this answer. I should have mentioned that I normally use RIPEMD-160 for the hash function. And for the password, with the way I generate it as described above that's 218340105584896 possible password (26+26+10)^8 (but the attacker does not know that). So I just wonder if such passwords are secure against brute-force attacks within reason (I'm not talking about keyloggers, cryotricks or rubber hose cryptography, only regarding brute-force password-guessing). And I am mostly using TrueCrypt. –  user31073 Mar 13 '10 at 16:55
    
Just to clarify, you answered my question, based on 200,000 for 218340105584896 combinations on 1 node it would take ~36 years, provided that the attacker knows the password length. This is also what the online calculator gives me. Thanks! –  user31073 Mar 13 '10 at 17:04
    
If it's possible for them to obtain the hash then yes it is possible to run a brute force attack. Whether or not they are successful depends a lot on how much they know about the password and how much time they have. Answer updated. –  Josh K Mar 13 '10 at 17:07
3  
Remember that 36 years gets quick if you precompute the hashes using a distributed network. If you use 1000 computers, then that's down to a manageable number. –  Rich Bradshaw May 7 '10 at 6:04
1  
It's also good to remind that by increasing the password length the difficulty increases immensely. If 8 char password takes 36 years, by doubling the length to 16 chars the time isn't doubled, but instead jumps up to 7663387620052652 years. :) –  Ilari Kajaste Jul 22 '10 at 9:14

Brute-Force is not a viable attack, pretty much ever. If the attacker knows nothing about your password, he isn't getting it through brute-force this side of 2020. This may change in the future, as hardware advances (For example, one could use all however-many-it-has-now cores on an i7, massively speeding up the process (Still talking years, though))

If you want to be -super- secure, stick an extended-ascii symbol in there (Hold alt, use the numpad to type in a number larger than 255). Doing that pretty much assures that a plain brute-force is useless.

You should be concerned about potential flaws in truecrypt's encryption algorithm, which could make finding a password much easier, and of course, the most complex password in the world is useless if the machine you're using it on is compromised.

share|improve this answer
    
While it's true that brute force attacks are rarely successful against a single target, if I were to dump the user database for a website that uses MD5 to hash the passwords I could easily load them up and run a brute force against that with a limit of 6 characters, alpha+, numeric, and symbols. I wouldn't have 100% success, but I would be able to compromise a decent number of the accounts. –  Josh K Mar 13 '10 at 17:06
    
If the salt was static, sure. It shouldn't be. And that's not really brute force, either, it's just searching against a precomputed rainbow table. There's a reason we salt our hashes ;) –  Phoshi Mar 13 '10 at 17:11
    
How many websites salt the hashes? Isn't a rainbow table simply a brute force attack compressed into a file? ;) My point is that if you have 1000 users with passwords, some of them are bound to have passwords like 12blue. –  Josh K Mar 13 '10 at 17:20
    
If a website isn't salting their hash, they're doing it wrong. A rainbow table is just every possible value, so sorta like a precomputed brute-force, true. | l2blue still shouldn't be bruteforcable with a good salt, and it'd still take a good long time to go through that. (2176782336 possible combinations, assuming the attacker knows it's a-z0-9) –  Phoshi Mar 13 '10 at 17:59
1  
It's a bad idea to use extended-ascii symbols, unless you're pretty sure it will be accepted by the database. More often than not I got my password corrupted and the system was unable to match it with what I type on the login, even if it's exactly the same. This happens because unicode is still not a common standard and text encoding is poorly treated in most places. –  Cawas Mar 22 '10 at 17:49

You can use this online tool for a estimation http://lastbit.com/pswcalc.asp

share|improve this answer
    
How accurate is that site? –  Josh Mar 13 '10 at 17:00
1  
@Josh; Looks like it just does the maths, so perfectly accurate given a correct passwords/second value. –  Phoshi Mar 13 '10 at 17:02
    
Any idea why howsecureismypassword.net says it only takes 10 days to break this password? –  sgmoore Jun 29 '11 at 9:43

EDIT: Others have given good answers for the part of your question regarding "How easy is it to crack such a password by brute-force? I.e. how fast"

To address this part of your question:

Also, is there some software to brute-force hack truecrypt because I want to try to brute-force crack my own passsword to see how long it takes if it is really that "very easy".

Here are a variety of options for bruteforcing Truecrypt

Here's another one from Princeton University.

share|improve this answer
    
This doesn't answer his question about how secure his short password is, and instead lays out various other attacks on the Truecrypt platform. –  Josh K Mar 13 '10 at 17:11
    
@Josh K: No, it answers his question, "Also, is there some software to brute-force hack truecrypt because I want to try to brute-force crack my own passsword to see how long it takes if it is really that 'very easy'." –  Josh Mar 13 '10 at 19:00
    
@Joshes now now, don't fight on each other! You're both actually the same person, aren't you? –  Cawas Mar 22 '10 at 17:50
    
No, actually we're not. –  Josh K Mar 22 '10 at 18:31

The password:

This is a simple, but long, password.

is greatly more resistant to brute force, including dictionary based attacks, than:

sDvE98f1

So using a short but difficult password is just counter-productive. It's more difficult to remember and less secure.

Use a simple but long phrase.

share|improve this answer
    
source? –  hyperslug Jun 28 '11 at 16:28
    
@hyper: simple high school math? –  Andreas Bonini Jun 28 '11 at 16:33
    
Randall has a useful visualization about length vs complexity: xkcd.com/936 –  Charles Lindsay Jul 12 '13 at 15:43

GRC's haystack said it would take 36.99 minutes to crack your password in an offline attack. https://www.grc.com/haystack.htm

share|improve this answer

protected by nhinkle Jul 12 '13 at 17:09

Thank you for your interest in this question. Because it has attracted low-quality answers, posting an answer now requires 10 reputation on this site.

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.