md5() function PHP

md5() function berguna untuk meng-encrypt string menggunakan md5.

Syntax

string md5(string $str, bool $raw_output)

Parameter

Parameter Penjelasan
str Parameter ini wajib ada. String yang ingin diproses.
raw_output Parameter ini pilihan. Pilihan untuk menentukan format hash yang dihasilkan.

  • TRUE. Format binary 16 character.
  • FALSE (Default). Format hex 32 character.

Catatan

md5() function menghasilkan hash dalam bentuk string.

Hash adalah data yang sudah sudah diubah bentuknya oleh encryptor (md5) sehingga tidak bisa dibaca. Biasanya digunakan untuk mengamankan password yang disimpan.

Encryptor bekerja mengamankan data secara satu arah (one way) sehingga data yang sudah di-encrypt tidak bisa dikembalikan seperti semula (bisa namun sangat sulit sekali). Namun bila data yang sama di-encrypt mengggunakan encryptor yang sama maka hasilnya akan sama.

Contoh, data [a] di-encrypt menggunakan encryptor md5 yang menghasilkan hash [b]. Hash [b] tidak bisa dikembalikan seperti semula menjadi data [a] namun jika data [a] di-encrypt kembali menggunakan cara yang sama maka hasilnya tetaplah hash [b].

Contoh cara encryptor dalam mengamankan data password adalah sebagai berikut:

  1. User menyimpan password di website.
  2. Data password tersebut diubah dan disimpan dalam bentuk hash.
  3. User login kembali ke website dengan memberikan password.
  4. Password yang baru diberikan oleh user diubah menjadi hash dan dicocokkan dengan password yang disimpan di dalam website.

Dengan cara di atas, walaupun hacker berhasil membobol website dan melihat data password yang tersimpan dalam bentuk hash namun data tersebut tidak bisa digunakan tanpa data password yang asli.

Contoh

Berikut ini adalah contoh penggunaan md5() function:

Code PHP 1:

<?php
$str = "Selamat pagi!";

$a = md5($str);  
$b = md5($str, TRUE);  

var_dump($a, $b);
?>

Hasil running code di atas bila dilihat melalui page source browser akan tampak sebagai berikut ini:

string(32) "a33245870b4a51b907443038ac3e58fe"
string(16) "�2E�JQ�D08�>X�"

Lihat function lainnya:

  • md5_file() – Meng-encrypt file menggunakan md5.
  • sha1() – Meng-encrypt string menggunakan sha1.
  • sha1_file() – Meng-encrypt file menggunakan sha1.
  • crypt() – Meng-encrypt string menggunakan DES, Blowfish atau MD5 tergantung dari encryptor yang dimiliki oleh system.
  • crc32() – Meng-encrypt data menggunakan algoritma crc32.
  • str_rot13() – Meng-encrypt string menggunakan rot13.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>