Saltar al contenido
uencoder

PBKDF2

PBKDF2 (Password-Based Key Derivation Function 2) es el KDF estandarizado en PKCS#5 que deriva claves de contraseñas mediante HMAC iterado, muy usado para hash de contraseñas y derivación de claves.

Propósito

Deriva una clave de alta entropía a partir de una contraseña de baja entropía, con el número de iteraciones multiplicando el coste de la fuerza bruta.

Mecanismo

DK = T1 || T2 || ..., donde Ti = U1 ⊕ ... ⊕ Uc, U1 = HMAC(P, salt || i), Uj = HMAC(P, U_{j-1}). El número de iteraciones c suele ser ≥ 100000. Es solo CPU-hard y no resiste el paralelismo de GPU/ASIC.

Casos de uso

  • Derivación de claves WPA2/3 de Wi-Fi
  • Copias de seguridad de contraseñas en iOS/Android
  • Derivación de claves de 1Password
  • Almacenamiento de claves PKCS#12

Ejemplos

  • entrada
    password, salt, c=600000
    Output
    256-bit derived key

    OWASP 2023 recommends ≥ 600000

Errores comunes

Iteration count too low (e.g., 1000)
Use at least 600000 (OWASP 2023)

Términos relacionados

Herramientas relacionadas

References