🍋
Menu
Security

Password Hashing

Password Hashing (Penyimpanan Kredensial Aman)

Proses mengubah kata sandi teks biasa menjadi nilai hash panjang tetap yang tidak dapat dibalik untuk penyimpanan, memastikan bahwa meskipun database diretas, kata sandi asli tidak dapat dengan mudah dipulihkan.

Detail Teknis

Algoritma password hashing harus sengaja lambat untuk menahan serangan brute-force: bcrypt (1999, work factor yang dapat disesuaikan, output 184-bit), scrypt (2009, memory-hard, tahan serangan GPU), dan Argon2 (2015, pemenang Password Hashing Competition, time/memory/parallelism yang dapat dikonfigurasi). Setiap kata sandi dikombinasikan dengan salt acak unik sebelum hashing untuk mencegah serangan rainbow table. Pepper (rahasia sisi server) menambahkan perlindungan tambahan. Hash kriptografis mentah (SHA-256) tidak cocok karena dirancang untuk cepat, memungkinkan miliaran tebakan per detik pada GPU. OWASP merekomendasikan Argon2id sebagai pilihan utama.

Contoh

```
Password hashing comparison:

  bcrypt:  $2b$12$salt22chars..hash31chars..
           Cost factor 12 → ~250ms per hash

  argon2id: $argon2id$v=19$m=65536,t=3,p=4$salt$hash
            Memory: 64MB, Iterations: 3, Parallelism: 4

  Never use: MD5, SHA-256 alone (too fast → brute-forceable)
```

Alat Terkait

Istilah Terkait