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

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I understand that guesses per second depends on the hardware and the encryption algorithm, so I don't expect an absolute number as answer.

For example, with an average machine you can make a lot (thousands?) of guesses per second for a hash created with a single md5 round, because md5 is fast, making brute force and dictionary attacks a real danger for most passwords. But if instead you use bcrypt with enough rounds, you can slow the attack down to 1 guess per second, for example.

1) So how does disk encryption usually work?

This is how I imagine it, tell me if it is close to reality: When I enter the passphrase, it is hashed with a slow algorithm to generate a key (always the same?). Because this is slow, brute force is not a good approach to break it. Then, with the generated key, the disk is unencrypted on the fly very fast, so there is not a significant performance lose.

2) How can I test this with my own machine? I want to calculate the guesses per second my machine can make.

3) How many guesses per second are possible against an encrypted disk with the fastest PC ever so far?

share|improve this question

closed as not constructive by Diogo, Ƭᴇcʜιᴇ007, slhck, Canadian Luke, Moab Jun 4 '12 at 15:05

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

I don't feel this is a very complete answer so I will leave a comment: 1) See Shadok's answer 2) Go find a free decryption program and run it and see how many per second it runs. 3) The fastest ever is classified as it is owned by the government for decrypting data received by the enemy. I don't know how fast it is but $2 Billion can buy you a lot of decryption power – Scott Chamberlain Jun 4 '12 at 15:00
The problem is verifying your results. How do you know the decrypted data is valid? – Oliver Salzburg Jun 4 '12 at 15:03
@OliverSalzburg Usually the encrypted data for things like drive encryption will have a known header, if the header is gibberish then the key you tried was not the correct one. – Scott Chamberlain Jun 4 '12 at 15:04
@Scott What if I used multiple layers of encryption? – Oliver Salzburg Jun 4 '12 at 15:12
@OliverSalzburg: If you don't think your encryption algorithm is strong enough, you should change it, not put another insufficiently-strong band-aid on top of it and hope that it "adds up". – David Schwartz Jun 4 '12 at 16:49
up vote 3 down vote accepted

The only thing you have to decrypt to be assured you have the right password is the header and its checksum.

You can just cut the first X bytes (as you only need the header) and throw passwords at it in RAM, thus speeding up the cracking many times.
The good password is the one which decrypts a valid header with a good checksum and you can then re-use it for the full disk, however you have to know the header structure beforehand for this to work.

share|improve this answer

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