Password Salting คืออะไร?
Password Salting เป็นรูปแบบการเข้ารหัสรหัสผ่าน ที่นำ Password มาต่อท้าย Username แล้ว Hash สตริงตัวอักษรใหม่ โดยทั่วไปใช้ MD5 Hashing Algorithm
การทำงาน
- พบใน Linux OS มากกว่า Microsoft ถือว่าปลอดภัยกว่า
- สร้าง Username → User ตั้ง Password → ระบบต่อ Password เข้ากับ Username → Hash สตริงใหม่
- แม้ 2 User ตั้ง Password เหมือนกัน Username ต่างกัน → Hash ต่างกัน
Salting (การเพิ่มเกลือ)
คำที่เกี่ยวข้องกับ Password Hashing ค่าเฉพาะที่เติมท้าย Password เพื่อสร้าง Hash Value ที่ต่างกัน เพิ่ม Layer ความปลอดภัย ต่อ Brute-force Attacks (ลองทุกรูปแบบจนเจอ Password)
คุณสมบัติและการใช้งาน
- Salts: ข้อมูลสุ่มที่ใช้ใน Hashing Passwords/ข้อมูล ใน Cryptography Input มาก = ปลอดภัยมาก
- แต่ละ Password มี Unique Salt ผ่าน Cryptographic Hash Function ระบบเก็บ Output Hash และ Salt ใน Database ปลอดภัย
- Hashing Function ช่วย Admin ทำ Authentication โดยไม่เปิดเผย Plaintext Passwords
- Salt สร้างได้จาก: Date-time, Username, Secret, Random Value, หรือผสมกัน Bcrypt = Hashing Algorithm ที่มี Unique Salts Per-hash โดย Default
ความเสี่ยงหากไม่มี Salt
- Hash Values เหมือนกัน → โจมตีรู้ว่า: Default Password สำหรับทุก Account, หรือทาย Password ได้ → เข้าถึงทุก Account นั้น
- Salting ป้องกัน Password Lists จาก Brute-force Attacks (Botnet ลองทุกรูปแบบ)