PBKDF2 คืออะไร?
PBKDF2 (Password-Based Key Derivation Function 2) สร้างคีย์เข้ารหัสจากรหัสผ่านด้วยซอลต์และการวนซ้ำจำนวนมาก ช่วยชะลอการโจมตีแบบ brute‑force และให้คีย์ที่ต่างกันเมื่อซอลต์เปลี่ยนไป
ประเด็นสำคัญ:
- ใช้ HMAC กับแฮชที่เลือก (SHA-1/SHA-256 เป็นต้น)
- จำนวนรอบมากขึ้นทำให้ต้นทุนการคำนวณสูงขึ้น
- ความยาวผลลัพธ์สามารถกำหนดได้
แนวทางที่ดี:
- ใช้ซอลต์แบบสุ่มและไม่ซ้ำ
- เพิ่มจำนวนรอบภายในประสิทธิภาพที่ยอมรับได้
- ระบบใหม่ควรพิจารณา Argon2 หรือ scrypt