Tell me more ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I guess am a bit of a paranoid ha... anyway i encrypted my HDD with truecrypt using all printable ASCII characters and the password is 64 characters long. It is quite random, certainly no dictionary words but it is still possible to memorize easily.

Can it be brute-forced? The thing is, i know that its supposed to be secure, but isn't there a chance that someone can just guess the password after like 10 attempts?

Surely that possibility exists. Sometimes lightning strikes as they say.

share|improve this question
17  
64 characters long, really? Are you trolling us? – uSlackr Jun 23 '11 at 14:06
21  
"Once upon a time I went insane, and hallucinated that I had two kids named }6A}wE"&=\#>QEdE?+%(COqESsCFcmHy and (xH"aLHh+KGD<6Nlkc\Q^yV^kH@h0<40." – Matthew Read Jun 23 '11 at 15:02
6  
Easier if you have 6 kids, shorter names are easier to remember. – paranoiaISgood Jun 23 '11 at 15:09
8  
Every time I wanted to mount that hard drive I'd have to weigh the pros and cons. "Do I really want that data? Is it worth typing the password?" – Michael Mrozek Jun 23 '11 at 15:40
5  
There's a chance that someone could just guess your password in one attempt. – Nick T Jun 24 '11 at 1:48
show 10 more comments

10 Answers

up vote 32 down vote accepted

The short answer is: NO!

No security measure is safe on its own, as it may contain bugs/vulnerabilities/etc. It might withstand a single method (e.g. brute-forcing) for circumventing the protection, but there might be a combination of methods that it may not be able to handle.

Truecrypt was (or, still is?) vulnerable to "Cold boot attacks":

Passwords stored in memory

TrueCrypt stores its keys in RAM; on an ordinary personal computer the DRAM will maintain its contents for several seconds after power is cut (or longer if the temperature is lowered). Even if there is some degradation in the memory contents, various algorithms can intelligently recover the keys. This method, known as a cold boot attack (which would apply in particular to a notebook computer obtained while in power-on, suspended, or screen-locked mode), has been successfully used to attack a file system protected by TrueCrypt.

Additional reading on "TrueCrypt Security Concerns".

share|improve this answer
5  
Cold Boot attacks can be mitigated by enabling memory testing in the BIOS (which will scrub the RAM at power up), and preventing someone from removing the DIMMs from your PC (which will prevent someone from pulling the DIMMs and copying the contents). Oh, and epoxy your CMOS battery and CMOS clear jumper to prevent someone from disabling the memory testing. – msemack Jun 23 '11 at 19:11
1  
TrueCrypt 7 wipes cached passwords from the driver memory, after TrueCrypt exits or automatic dismount of devices. You can enable this in the "True Crypt - Preferences"-Dialog – DiableNoir Jun 23 '11 at 19:45

Actual actual reality: nobody cares about his secrets.  (Also, I would be hard-pressed to find that wrench for $5.)

If you have all ASCII characters, quite frankly, it is possible still - but highly unlikely.

share|improve this answer
1  
@Nifle - nice edit! :) – William Hilsum Jun 23 '11 at 19:33

You're far more at risk from a virus on your computer that accesses the unlocked drive or peeks at "in flight" cleartext data.

share|improve this answer

At work, we deal with hard drive encryption on a daily basis. The truth is, the kind of encryption you have on your drive are probably very sufficient for a home user. I have that same feeling of being paranoid with all my data, and truecrypt satisfies me.

However, true encryption for hard drives has to be at the hardware level. Looks for Stonewood drives (Flagstones) on the net. The offer full hardware encryption with a maximum of 5 attempts before locking out, then 5 more before completely destroying the drive according to government standards.

share|improve this answer

If your password is sufficiently random then, as BlueRaja detailed, you are quite safe from a brute-force attack.

However, there is a marginally stronger, and certainly less painful, approach that may be available to you (I say "may" because I'm not sufficiently familiar with TrueCrypt; I use this approach with a LUKS/AES-256 drive). Unlock the drive with a private key instead. Store that key on a USB drive. Lock that key with a passphrase (it doesn't have to be overly complex) and you're effectively in two-factor Nirvana.

For the truly paranoid, there are attack vectors other than a cold-boot attack:

  1. A persistent, boot sector attack. For example:

    A bad guy, who has physical access to your machine, could replace the TrueCrypt boot loader with a malicious one. It would look and act sufficiently like TrueCrypt, allowing you to unlock and access your encrypted drive, but would store your passphrase for later retrieval by the bad guy. I've not actually tested this, but I read that a tool of this nature does indeed exist:

    http://www.blackhat.com/presentations/bh-usa-09/KLEISSNER/BHUSA09-Kleissner-StonedBootkit-PAPER.pdf

    (Again, I don't know if TrueCrypt supports this, but...) A decent solution to this is to place the boot sector and unencrypted boot loader on a USB drive. Presumably you keep this on your person. (For added security, use a USB drive with hardware encryption).

  2. A key-logger or video recording of you entering your password. Using a USB drive-based key would protect you from this (until an attacker mods your hardware to monitor the USB/data bus/memory of your machine. This, I suppose, is unlikely...)

Nice encryption attack vector reference: http://tldp.org/HOWTO/html_single/Disk-Encryption-HOWTO/#ThreatModel

share|improve this answer
+1 for key-logger. – cagcowboy Jun 23 '11 at 20:44

According to http://howsecureismypassword.net/, it would take roughly 314 trigintillion years for a normal desktop computer to crack your password. That's several orders of magnitude greater than the time left in the existence of the Universe. I think you're covered on the brute force front.

Just for fun:

1 trigintillion = 1,000,000,000,000,000,000,000,000,000,000,
                  000,000,000,000,000,000,000,000,000,000,000
                  000,000,000,000,000,000,000,000,000,000
share|improve this answer

In response to "Can it be brute-forced":

There are 95 printable ASCII characters (including space), so there are 9564 possible 64-character passwords. That's 3.75 x 10126, which is over 420 bits of security. In comparison, 128-bits is considered secure from brute forcing for an AES key, and 265-bits is enough to assign a different value to every atom in the visible universe.

Assuming your adversary has a botnet of 10 billion computers (1000x larger than the largest known botnet), each of which can check 1 billion passwords per second, the expected time to find your password by brute-force would be 5.87 x 1051 years - that's 45 trillion trillion trillion times the age of the universe.

So yes, your password is absolutely secure from brute-forcing. In fact, assuming you are using AES-256, your 64-character password gives you no extra security over a 39-character password, because after that point it would be faster to just brute-force the key.

share|improve this answer
4  
"TrueCrypt uses AES with a 256-bit key". Therefore using more than 39 characters won't change anything. – Max Ried Jun 23 '11 at 18:45
While this is true as far as it goes, calculations like this assume that all the password possibilities must be tried for the attack to be successful. That is, you're assuming that the last password possibility will be the correct one, rather than just the last one they try. Which could be the first, the fifteenth, or the fiftieth just as easily. They are after all trying passwords in random order. And random allows early success as well as no success at all. Since we're in to paranoia. – zenbike Jun 26 '11 at 14:05
@zenbike: Yes, that is taken into account in my calculations; the expected time (average over many attempts) is the square-root of the search space (see here) - that is, after 5.87 x 10^51 years, there's a 50% chance of having found it. The chance drops off rapidly as we get closer; for instance, the chance of finding the password in 5.87 x 10^46 years is about 0.000001% - the chance of finding the password in our lifetimes would be about the same as the chance of a person randomly walking through a wall due to quantum effects. – BlueRaja Jun 26 '11 at 18:40
@BlueRaja: And yet, as small as the chance is, it exists, and the possibility (not probability) of breaking the encryption in a usable timeframe also exists. – zenbike Jun 27 '11 at 12:57
@zenbike: Luckily, we live in the real world, where some things are so improbable they are considered, for all intents and purposes, impossible. This is fortunate, for it's completely possible, for example, for every atom in my body to magnetize at once and rip the iron right out of my blood; or for every bond to suddenly break, turning me into a gas. Back in the real world, SHA-1 has only 80 bits of security (many orders of magnitude less than his password) against collisions, yet, despite supercomputers actively searching, no one has ever found two passwords that hash to the same SHA-1. – BlueRaja Jun 27 '11 at 16:15
show 2 more comments

By the way, you could even hide some encrypted volumes behind fake movies files: http://www.ghacks.net/2011/04/12/disguising-true-crypt-volumes-in-mp4-videos/

share|improve this answer

The right question is what risk are you trying to mitigate and is HD encryption sufficient to mitigate to an acceptable level. If you are storing super top-secret govt plan plans to take over the world, then you might need more or less security than if you are protecting your personal financial data (or pr0n stash).

Humans are horrible at assessing the true level of risk associated with an activity. Chances are if someone steals your laptop they are more interested in re-using it than getting the data (unless you have those super secret plans...)

share|improve this answer

Anything can be cracked/hacked/bypassed/...
Not everyone can do it (most people can't), but there are always people out there who can do a bit more than the avarage computer user.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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