Estoy considerando usar SCRYPT para el almacenamiento de contraseñas. (También estoy abierto a PBKDF2, o bcrypt por sí mismo).
El problema es que no quiero que esto se convierta en un punto potencial para un ataque DDOS, dada la sobrecarga del cálculo real.
Estaba pensando que algo MUY débil con muchas colisiones como una prueba de validez primero (como CRC8) contra SALT + PASSPHRASE podría ser una buena idea. (luego usar una espera antes de devolver la falla para protegerse contra el ataque de tiempo).
Esto supone una longitud mínima de 8, con un requisito de 3 de 4 para:
- Alpha en mayúsculas
- Alfa minúscula
- número
- no alfanumérico
¿Cuánto reduciría esto realmente la efectividad de SCRYPT en un ataque de fuerza bruta si se comprometieran los datos?