PBKDF2 is a key derivation and strengthening function, commonly used for password storage.

learn more… | top users | synonyms

1
vote
2answers
33 views

Guessing the whole PBDKF2 output from 1 half

If I use PBDKF2 with a good enough password and salt to generate a 2n bytes key, does knowing the first or last n bytes make it any easier for a 3rd party to guess the other half of my key than using ...
3
votes
4answers
140 views

How safe is password based key derivation in the case of long password?

I am encrypting files inside a device and store it. So I need to maintain the same key throughout the life cycle of the device. For key derivation I use EVP_bytestokey() of OpenSSL. The problem in ...
2
votes
2answers
62 views

Clarification about IV in PBKDF2 to generate encryption key

I've realized that the following implementation isn't truly safe: $pb = pbkdf2('sha256', $_POST['pass'], "enc_salt", 100, 100); $d = openssl_decrypt ($data['container'],'aes-192-cbc', $pb, true, ...
0
votes
2answers
78 views

Protect against malicious client with key derivation function (PBKDF2)?

Consider a protocol that allows clients to retrieve XML "forms" from a server. Forms are identified by a unique, randomly generated form ID that is embedded in the form. Clients fill out the form and ...
0
votes
0answers
13 views

ECIES-like scheme using PBKF2?

I would like to marry ECIES to a scheme based on PBKFD2. Effectively, I want the Key Encapsulation Mechanism to use Diffie-Hellman, but rather than encrypting the seed material with the recipient's ...
5
votes
2answers
200 views

Do I REALLY need to change my LastPass password?

Last weekend LastPass' network was compromised and that a list of email addresses along with the hashes of the master passwords were stolen. It is being recommended that LastPass users change their ...
87
votes
4answers
20k views

Recommended # of iterations when using PKBDF2-SHA256?

I'm curious if anyone has any advice or points of reference when it comes to determining how many iterations is 'good enough' when using PBKDF2 (specifically with SHA-256). Certainly, 'good enough' is ...
2
votes
1answer
68 views

Which KDF should be used for ECIES?

According to Wikipedia, ECIES requires a key derivation function. I already have an implementation of PBKDF2-HMAC-SHA256 in my library, so I could use this. Is PBKDF2-HMAC-SHA256 (salted of course) ...
9
votes
5answers
2k views

Gold Standard for password hashing

I've developing a web application that will be dealing with highly sensitive information and I want to ensure the hashing of passwords is gold standard. Ideally I'd go for per-user salted SHA512 ...
2
votes
3answers
673 views

Tracking IP address to prevent abuse without logging user metadata

I am trying to balance good security practices against excessive logging of user metadata / Personally Identifiable Information. I am constructing a web app that allows for secure messaging. In part ...
0
votes
1answer
54 views

MD5 before PBKDF2 on legacy software

I am mantaining a legacy software that uses MD5 in the following way: The client asks for a 16 byte salt when authenticating an account. The server generates a 16 byte salt, links it to the account ...
-2
votes
1answer
53 views

Sanity check security scheme, is it secure? Is there cruft?

This article: Life in a post-database world: using crypto to avoid DB writes Prompted me to write this url-crypt Node.js module to convert a Secret into secure urlsafe base64 strings. Think of an ...
2
votes
2answers
194 views

Combining SCRYPT + a short crc

I'm considering using SCRYPT for password storage. (I'm open to PBKDF2 as well, or bcrypt by itself). The issue is that I don't want this to become a potential point for a DDOS attack, given the ...
2
votes
1answer
102 views

Encrypting files securely using user supplied password

I'm currently trying to build a (sort of) secure, desktop based RTF text editor written for node-webkit using node.js. Based on some answers that I read here, such as How can I securely convert a ...
0
votes
1answer
85 views

Looking for a way to encrypt/decrypt data using a generated key that works in Windows and Linux

I am looking for a way to encrypt/decrypt data on windows and linux platforms. The data gets encrypted in windows and the same data needs to be decrypted on linux/windows and vice versa. I understand ...
1
vote
1answer
71 views

PBKDF2 strong salt

I want to use a strong authentication scheme, so I decided to use PBKDF2. I'm using PBKDF2 with SHA256 algorithm, 5000 iterations and I use username (which is full email address of user) as salt. So ...
2
votes
2answers
541 views

PBKDF2: can the salt be known from the hash?

I understand that some KDFs bundle the salt with the output, such as bcrypt (modular crypt format). In PKCS5_PBKDF2_HMAC (specifically, looking at OpenSSL implementation) with a single iteration, is ...
1
vote
3answers
152 views

Password history with PBKDF2

Scenario: Cannot use previous 15 passwords Using PBKDF2 with iterations targeting 1 second execution time In this scenario, when a user wishes to create a new password, the server must combine ...
14
votes
6answers
4k views

Client side password hashing

Edit: Updated to put more emphasis on the goal - peace of mind for the user, and not beefing up the security. After reading through a few discussions here about client side hashing of passwords, I'm ...
2
votes
3answers
312 views

PBKDF2 used to generate an encryption key: long shared secret (password) vs iterations count

I want to use pbkdf2 to generate a key for a symetric encryption (DES, 3DES, may be AES) algorith, that will be used to secure private data between an AS/400 and another computer (probably running ...
1
vote
1answer
391 views

What is the right way to implement Keyed Password Hashing?

As mentioned in this wonderful link, the way to get a PBKDF2 Hash of a user given password given a password (of course), a salt (generated Cryptographically Secure Random Number Generator. iteration ...
2
votes
2answers
80 views

Simple PBKDF2 vs. scrypt question

scrypt was designed to use more memory. We can use its parameters to specify (approximately) how much memory we want it to require. But both scrypt and PBKDF2 allow us to specify the output data ...
1
vote
1answer
205 views

How to safely use a Key Derivation Function to secure private data - need guidance

I have some secure data created in my client app which I wish to store on the server as backup for the user. The user already has a password to authenticate with the server. The password is never ...
3
votes
1answer
134 views

Encryption and HMAC with the same password

I need to send authenticated ciphered messages by using a single password. Reusing the same (derived) key for the block cipher and the HMAC is not a good practice, I know. My initial idea is to ...
1
vote
0answers
257 views

Database row level encryption scheme

I am wanting to secure some highly sensitive data in a database. This would mean that the data needs to be encrypted and remain secure for 100 years if it were to fall into adversary hands. I also ...
0
votes
1answer
538 views

Password Storage with Jasypt StrongPasswordEncryptor vs PBKDF2

We are currently working on authentication for a web application. For password storage, we're using Jasypt StrongPasswordEncryptor with SHA-256 and tens of thousands of iterations. Going into the ...
0
votes
1answer
205 views

Will obtaining password hash compromise derived encryption key?

I've been looking at how PBKDF is used to generate encryption key for AES. One thing I couldn't get my head around is that how those OS keep the encryption key safe apart from using hardware modules. ...
2
votes
2answers
320 views

How to know which output length to request from PBKDF2?

I feel like I'm asking a fairly obvious question here, but with it being so easy to make mistakes in this space, here goes. From wikipedia: DK = PBKDF2(PRF, Password, Salt, c, dkLen) dkLen ...
3
votes
2answers
496 views

Why use PBKDF2 over multiple iterations of a another cryptographic hash function?

People often recommend PBKDF2 over using hash functions directly, but typically they compare PBKDF2 to a single unsalted hash. What advatages are there to using PBKDF2 over multiple iterations of a ...
0
votes
1answer
69 views

two encrypting / hashing case, which one is best

Thinking about these below two cases, which one is best and most secure one 1st case //key1 generated from static salt and user password, because in case attacker don't know about source code (bad ...
0
votes
2answers
196 views

Any reason to use bcrypt, pbkdf2, scrpt for other things than passwords? [closed]

Let's say I want to hash some data, using SHA256, in order to prove I know something. Maybe it's my secret ID for something. In the real of passwords we have moved from hashing -> hashing+salt -> cpu ...
1
vote
0answers
133 views

Login details security using salt n hash and a login role in postgresql

I am coding up the security for a website in express.js and postgresql db. Now I have been reading about salting and hashing and I have the code set up with pdkdf2 using the crypto module, but my ...
2
votes
3answers
133 views

Limit attempt of user login against PBKDF2

I have been tasked been tasked by my boss to change the encryption system of our web application from MD5 to PBKDF2 as MD5/SHA1 has been shown to be breakable in recent years . I argued against it ...
2
votes
1answer
357 views

Supplying a password to PBKDF2 in raw binary vs. base64?

Background: I'm working with Node's crypto library. I'm using PBKDF2 to convert a variable-length binary "passphrase" into constant-length keys for an AES cipher later on. The underlying source of ...
5
votes
2answers
248 views

Benefit to using PBKDF2 on key generated by RNGCryptoServiceProvider?

I have a program that generates a fixed-length 32 byte (256-bit) password using RNGCryptoService provider and then uses Rfc2898DeriveBytes on that password to arrive at an encryption key. However, to ...
6
votes
2answers
2k views

Is it safe to use PBKDF2 for hashing?

I would like to get a few opinions on whether it would be safe or not to use PBKDF2 to generate a hash of a password. For my purposes I'd like to assume that the hash itself will be posted on the ...
1
vote
2answers
432 views

Do I need to salt PBKDF2 when it's used for AES encryption

If I'm using PBKDF2 to stretch a password into a suitable key for use in encryption with AES, should I be using a random salt (for PBKDF2, not the AES IV)?
3
votes
2answers
812 views

Using AES to encrypt user data

I know next to nothing about cryptography, and I'm basically just looking for someone to look over what I'm doing and tell me if I'm screwing up. I have the user entering in some sensitive ...
10
votes
4answers
1k views

At what point does adding more iterations to PBKDF2 provide no extra security?

If my true passphrase is used only to generate a hash which is used as the cipher's actual key, doesn't that mean it's possible to try and brute force the cipher itself? I know it would take an ...
6
votes
4answers
794 views

Secure authentication: partial client-side key stretching… please review/criticize my idea

I am trying to figure out what would be the 'perfect' authentication system for a website. On one end, we know that simple hashing algorithms can be brute-forced or cracked in other ways. Hence why ...
4
votes
2answers
1k views

How much does unknown PBKDF2 iteration count improve security?

We are crackers who get our hand on an encrypted file. We know the whole file is AES-256 encryption of the original plaintext file. We also know that PBKDF2 was run 1000 times on the original plain ...
1
vote
1answer
415 views

Questions towards my application that uses bouncy castle crypto

I am implementing an application using bouncy castle crypto API it uses AES-CBC to encrypt files and i have some questions regarding the development of my application. I dont want to use a static ...
3
votes
2answers
694 views

Store private key on server, then use k1 to log in, k2 to verify HMAC and k3 to decrypt private key

I'm working on a proof-of-concept program to encrypt email with less difficulty for end-users with a process like: To create an account: Generate a random salt and IV, and get a password from the ...
2
votes
2answers
1k views

Login system using authenticated encryption without storing user password

I'm not a security expert, so I might be asking a silly question, but let me describe what I am thinking about. First, I know that a lot of web sites store hashed/encrypted passwords which could be ...
2
votes
3answers
154 views

User specified iteration count

I'm working on a PHP authentication and registration system following the standard salt+password = 'auth hash' and using the plaintext/unencrypted username as the lookup field on the initial query. ...
4
votes
1answer
416 views

RSA vs PBKDF2 for password storage (theoretical)

I know this is not the right way to store passwords, but I'm asking this from a theoretical perspective: Suppose a web site's passwords were encrypted with RSA asymmetric encryption and the private ...
5
votes
2answers
496 views

Why is 8ms a goal for hashing?

I'm currently developing a small project in PHP, and as it involves user authentication, I've been researching what options I've got regarding hashing. I've settled on PBKDF2 primarily due to it's ...
8
votes
3answers
1k views

Verify Login and Encrypt with PBKDF2

I'm writing a desktop application where I'm using PBKDF2 to generate an encryption key to AES-128 encrypt the config file. The config file contains a crypo-random key that's been used to encrypt the ...
8
votes
3answers
424 views

Increase the security of an already stored password hash

Right now we're using 1024 byte PBKDF2 with 256 byte user-specific salt and variable iterations. However, I would much prefer to be able to, perhaps once every year or two, to be able to flat out ...
22
votes
5answers
2k views

Is it possible to increase the cost of BCrypt or PBKDF2 when its already calculated and without the original password?

I just wanted to know if you can increase the cost (iterations) of those two algorithms off-line. I want to increase the cost every year of my users passwords. One solution is to recalculate them ...