Cara menggunakan password_hash login php

Jika anda membuat login script dengan PHP maka anda harus tahu cara hashing dan verifikasi password dengan teknik hashing password. Menggunakan "password_hash" adalah cara yang paling direkomendasikan untuk menyimpan password di database. Dan ini adalah cara paling aman untuk dipakai di script login page.

Untuk memakainya cukup sederhana, misal kita ada input username dan password dari pengunjung dengan submit button yang setelah disubmit mengirim post berupa data berikut:

$username = $_POST['username'];$password = $_POST['password'];

Kita dapat membuat password hash dengan perintah berikut:

$hashed_password = password_hash($password, PASSWORD_DEFAULT);

Sekarang kita lihat hasil hashingnya dengan var_dum()

var_dump($hashed_password);

Jika anda script coding anda benar, maka akan ditampilkan kode string acak pada layar anda.

Sekarang kita asumsikan variabel $hashed_password (yang sudah kita buat tadi), kita simpan di database untuk informasi data login selanjutnya. Pastikan field/kolom di table database untuk menyimpan hasil hashing password cukup panjang karakternya untuk menyimpan hasil hash password. Untuk jaga-jaga biar aman sebaiknya memakai tipe varcar dengan panjang karakter 100.

Untuk memverifikasi password antara yang disimpan didatabase dan yang diinput oleh pengunjung saat akan login, kita bisa pakai kode dibawah ini:

Pada tutorial kali ini kita akan belajar tentang Cara Menerapkan Password_hash() dan Password_verify() Pada Login System, seperti yang kita ketahui password hash merupakan salah satu fungsi dari php yang bertujuan untuk melakukan hash dengan menggunakan algoritma hashing satu arah (one-way hashing), sedangkan password verify merupakan fungsi yang terdapat pada php yang bertujuan untuk melakukan verifikasi (mencocokan) data yang telah kita hash sebelumnya dengan menggunakan password hash().

Cara Menerapkan Password_hash() dan Password_verify() Pada Login System yaitu yang pertama kita akan membuat sebuah folder dengan nama login didalam folder login tersebut terdapat sebuah file index.php, selanjutnya kita akan masukan script seperti dibawah ini :

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

<!DOCTYPE html>

<html>

<head>

<title>Login</title>

</head>

<?php

//proses login

session_start();

 

$user = "dumet";

$pass = password_hash("school", PASSWORD_DEFAULT);

 

if(isset($_POST["login"])) {

//if (password_verify($_POST["password"], $hash)) {

if($_POST["username"] == $user && password_verify($_POST["password"], $pass)){

$_SESSION["user"] = $_POST["username"];

$_SESSION["pass"] = $_POST["password"];

header('location:admin.php');

}else {

echo "login gagal";

}

}

?>

<body>

<form method="post">

<input type="text" name="username" placeholder="username"><br><br>

<input type="password" name="password" placeholder="password"><br><br>

<input type="submit" name="login" value="login">

</form>

</body>

</html>

Berikutnya kita akan membuat sebuah file dengan nama admin.php di dalam folder login kemudian kita akan masukan scriptnya seperti dibawah ini :

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

<!DOCTYPE html>

<html>

<head>

<title>Admin</title>

</head>

<body>

<?php

session_start();

if(!$_SESSION["user"]){

header("location:index.php");

} else {

echo "<h2>hallo, ".$_SESSION["user"]."</h2>";

}

?>

<a href="logout.php">logout</a>

</body>

</html>

Selanjutnya kita akan akan membuat proses untuk proses logoutnya, silahkan teman-teman buat sebuah file dengan nama logout.php, untuk scriptnya seperti dibawah ini :

1

2

3

4

5

<?php

session_start();

session_unset();

session_destroy();

header("location:index.php");

Jika kita jalankan pada browser dan jika username dan password yang kita masukan benar maka akan terlihat hasinya seperti dibawah ini :

Cara menggunakan password_hash login php
Cara menggunakan password_hash login php

Cara menggunakan password_hash login php
Cara menggunakan password_hash login php

Oke teman-teman itulah pembahasan kita kali ini tentang Cara Menerapkan Password_hash() dan Password_verify() Pada Login System.

Apa itu hash password?

Hash password merupakan algoritma one-way hashing atau pengenkripsian satu arah. Artinya, ketika kata sandi sudah dienkripsi, maka tidak bisa lagi dikembalikan (dekripsi). "Hash adalah proses enkripsi password. Misalnya, password 12345 kalau di hash maka akan menjadi kerkw23.

Apa nama fungsi dari PHP untuk mencocokan password asli dengan password yang di masukkan borrower?

Password_verify 2 adalah fungsi PHP yang berguna untuk melakukan verifikasi (mencocokkan) data yang telah terhash memakai fungsi password_hash(). $hashed adalah variabel untuk menampung nilai data yang dihasilkan dari proses hashing dengan fungsi password_hash().