Menyimpan password di database dengan benar

Menyimpan password di database dengan benar

Menyimpan password user tanpa enskripsi tanpa hash adalah tindakan yang tidak benar. Bayangkan jika penyusup bisa masuk ke database Anda maka kebocoran password bisa membahayakan user-user Anda. Berikut tips untuk membuat penyimpanan password menjadi lebih aman.

Cara yang salah dalam hash password

  1. menyimpannya dengan bentuk plain text
  2. Hashing password menggunakan md5 (atau sha1 atau bahkan sha256) adalah cara yang kurang benar. Mungkin ada yang bilang md5 itu hash didak bisa didecrypt. Coba deh coba script yang saya share di blog ini. Mungkin tidak decrypt beneran, tapi bisa menemukan password 3 karakter dalam waktu yang sangat cepat walau sudah di-hash menggunakan md5.
    Artikel lama saya: Crack md5 hash
  3. menggunakan salt mungkin cukup membantu namun sepertinya masih kurang efektif melindungi passwprd Anda.

Cara yang dianjurkan dalam hash password

  1. untuk PHP versi 5.5
    Cara yang dianjurkan untuk menyimpan password di database adalah menggunakan 'native passwords hashing API'. Anda bisa mempelajarinya lebih lanjut di http://php.net/manual/en/book.password.php
    Field untuk password di database silahkan diset untuk varchar(255)

    Sedangkan untuk mengecek apakah password benar atau salah silahkan menggunakan kode ini:
  2. untuk PHP versi lebih kecil dari 5.5
    Untuk versi lebih lama dari PHP 5.5 silahkan menggunkan php library ini. password_compat yang bisa didownload di sini: https://github.com/ircmaxell/password_compat
  3. untuk PHP versi di bawah 5.3.6
    Sedangkan untuk versi 5.3.6 ke bawah silahkan menggunakan phppass di sini: http://www.openwall.com/phpass/

Semoga  tips ini bisa sedikit membantu.

loading komentar ...