Generated Key
Key Derivation Function (KDF)
This tool computes a key from a password or passphrase using a Key Derivation Function (KDF). KDFs are designed to be computationally intensive to protect against brute-force attacks. This tool supports two common KDFs: PBKDF2 and EvpKDF.
Features
- Multiple KDF Algorithms:
- PBKDF2 (Password-Based Key Derivation Function 2): A widely used standard for deriving keys from passwords. It uses a pseudorandom function (like HMAC-SHA) and applies it iteratively.
- EvpKDF (EVP Key Derivation Function): A key derivation method used in various libraries, including OpenSSL.
- Customizable Parameters:
- Input (Password): The master password or passphrase.
- Salt: A random value added to the input to ensure that identical passwords produce different keys.
- Iterations: The number of times the hash function is applied. A higher number increases security but also computation time. The maximum is 6000.
- Key Size: The desired length of the derived key in bits.
- Simultaneous Computation: The tool computes the key using multiple hash algorithms (e.g., SHA1, SHA256, SHA512, MD5) simultaneously for the selected KDF type.
- Instant Results: View the derived keys for all supported hash functions at once.
How to Use
-
Select KDF Type:
- Choose between PBKDF2 and EvpKDF. The available hash algorithms will update based on your selection.
-
Provide Inputs:
- Input: Enter the password or passphrase.
- Salt: Provide a salt value. For security, this should be a unique, random string for each password.
- Iterations: Set the number of iterations. Higher values are more secure.
- Key Size: Specify the desired key length in bits (e.g., 128, 256).
-
Compute:
- Click the Compute button. The tool will derive the keys based on your inputs.
-
View and Copy Results:
- The derived keys for each hash algorithm will be displayed.
- Click the copy icon next to any result to copy it to your clipboard.
What is a KDF?
A Key Derivation Function (KDF) is a cryptographic algorithm that derives one or more secret keys from a secret value such as a master key, a password, or a passphrase using a pseudorandom function. KDFs are often used to stretch keys into longer keys or to obtain keys of a required format, such as converting a user's password into a symmetric encryption key. The inclusion of a salt and a high number of iterations makes them resistant to dictionary and brute-force attacks.
Example
PBKDF2 Example
Password: mypassword
Salt: randomsalt
Iterations: 1000
Key Length: 256 bits
Derived Key: 5f4dcc3b5aa765d61d8327deb882cf99