Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

1,000 PBKDF2 iterations is far too weak to protect most passwords #7

Closed
scrod opened this issue Feb 1, 2013 · 2 comments
Closed

1,000 PBKDF2 iterations is far too weak to protect most passwords #7

scrod opened this issue Feb 1, 2013 · 2 comments

Comments

@scrod
Copy link

scrod commented Feb 1, 2013

I strongly encourage you to use a far higher number of iterations when deriving encryption keys. At even 13,000 iterations (the equivalent of spending 100ms in PBKDF2 on a Core i7), 8 letter passwords are trivially crackable. At only 1,000 iterations, the user's password will need to be very long to provide the same level of security, and many people may not realize this when choosing their password.

You can use the CommonCrypto framework to estimate the number of iterations needed to engage the user's machine for a period of (for example) 5 seconds:

uint rounds = CCCalibratePBKDF(kCCPBKDF2,
                               [password length],
                               [salt length],
                               kCCPRFHmacAlgSHA1,
                               CC_SHA1_DIGEST_LENGTH),
                               5000);

And of course if claims about scrypt are to be believed, then you might consider switching your key derivation function entirely.

@sreitshamer
Copy link
Collaborator

Arq now uses 200,000 iterations. We need to update arq_restore.

@arqbackup
Copy link
Owner

We finally updated arq_restore to work with Arq 5-created backups.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants