🔐 PBKDF2 Generator

🎯
🔑
🧬
⚙️
{{ iterations.toLocaleString() }}
{{ length }} bytes
🔄 Random salt will be generated automatically
🔍
🔐
{{ result.hash }}
{{ result.base64Hash }}
{{ result.formattedHash }}
Algorithm: {{ result.algorithmName }}
Iterations: {{ result.iterations?.toLocaleString() }}
Length: {{ result.length }} bytes
Salt: {{ result.salt }} ({{ result.saltLength }} chars)
{{ verifyResult.verified ?'✅' :'❌' }}
Algorithm: {{ verifyResult.info.algorithmName }}
Iterations: {{ verifyResult.info.iterations?.toLocaleString() }}
Length: {{ verifyResult.info.length }} bytes
Salt: {{ verifyResult.info.salt }} ({{ verifyResult.info.saltLength }} chars)
Error: {{ verifyResult.error }}
🔬
Security Level: {{ getSecurityInfo().level }}
Security Score: {{ getSecurityInfo().score }}/2.0
Iteration Ratio: {{ getSecurityInfo().iterationRatio }}x recommended
Est. Computation Time: {{ formatTime(getSecurityInfo().estimatedTimeMs) }}
Security Notes:
  • {{ note }}
🧪
💡
  • Use SHA-256 with 310,000+ iterations for new applications
  • Use SHA-512 with 210,000+ iterations for high security
  • Always use a random salt of at least 16 bytes
  • Test performance on your production hardware
  • Store the complete formatted hash including all parameters
  • Avoid MD5 and SHA-1 for new applications
⚠️

ℹ️ About PBKDF2 Generator

PBKDF2 (Password-Based Key Derivation Function 2) derives a cryptographic key from a password, salt, iteration count, and pseudorandom function. It is specified in RFC 8018 as part of PKCS #5 and is still widely supported in platform APIs, password-hash migration tooling, encrypted file formats, and authentication systems that need standards-based compatibility.

Why PBKDF2?

  • Industry standard: referenced by NIST password guidance in SP 800-63B and available in many runtimes.
  • Configurable iterations: increases attacker cost by repeating HMAC many times.
  • Salt support: unique salts prevent precomputed rainbow-table reuse across accounts.
  • Verification mode: compare a candidate password against stored parameters during migration or testing.
  • Compatibility: useful when a system cannot move to memory-hard schemes yet.

Algorithm Support:

  • SHA-256: good default for modern PBKDF2 deployments.
  • SHA-512: common on 64-bit systems and sensitive-data workflows.
  • SHA-384: supported for compatibility with specific policies.
  • SHA-1: legacy compatibility only; avoid for new designs unless required by an existing format.
  • MD5: not recommended for password storage; included only when analyzing old data.

Parameter Guidelines:

  • Iterations: tune on your production hardware so verification is slow enough to resist guessing but fast enough for sign-in traffic.
  • Hash length: 32 bytes (256 bits) is a practical default for many applications.
  • Salt: use a random 16-byte or longer salt for each password.
  • Modern alternatives: prefer memory-hard algorithms such as Argon2 from RFC 9106 when compatibility allows.
  • Privacy: use sample passwords in this web tool; do not paste production secrets.

API Usage Example:

POST /api/tools/crypto/pbkdf2
Content-Type: application/json

{
    "password": "mySecretPassword123",
    "algorithm": "sha256",
    "iterations": 310000,
    "length": 32,
    "salt": null
}
Ready