Data adalah harta karun yang paling berharga dalam sebuah sistem. Apabila itu dicuri… Show …bencana besar bisa terjadi 😄. Enkripsi adalah teknik untuk mengamankan data-data tersebut agar isinya tidak diketahui orang lain. Enkripsi biasanya dilakukan terhadap data-data sensitif seperti password. Enkripsi akan menjamin data-data tetap aman meskipun berada di tangan orang lain, karena mereka tidak tahu isi aslinya. Pada kesempatan ini, saya akan membahas beberapa fungsi enkripsi yang sudah disediakan oleh PHP, diantaranya: Masing-masing fungsi memiliki algoritmanya tersendiri, ada yang kuat ada juga yang lemah. Mari kita bahas satu-per-satu… 1. Fungsi password_hash()Fungsi ini akan menghasilkan sebuah kode hash baru dengan metode one-way hashing. one-way hasing artinya, hasil enkripsinya tidak bisa dikembalikan seperti semula (decrypt/decode). Contoh:
Hasilnya:
Fungsi ini sangat disarankan untuk mengenkripsi password, karena sulit didekripsi atau di-crack. Sebelum mengenal fungsi ini, saya biasanya menggunakan fungsi Karena itu, sebaiknya menggunakan fungsi Contoh penggunaan: Sebelum menyimpan password ke database, sebaiknya dienkripsi terlebih dahulu:
Fungsi Fungsi Contoh:
Tips: bila ingin menyimpan hasil dari fungsi Contoh lengkapnya bisa dilihat di: Tutorial PHP dan MySQL: Membuat Login Register 2. Fungsi crypt()Fungsi ini menghasilkan kode hash dengan menggunakan algoritma DES, Blowfish, dan MD5. Contoh:
Hasilnya: Bila diperhatikan, susuan karakter yang dihasilkan mirip seperti karakter yang digunakan pada alamat URL video youtube. Mungkin saja youtube juga menggunakan algoritma yang sama dengan fungsi ini. Pada contoh diatas, kita membarikan dua paramter kepada fungsinya. Parameter pertama adalah teks yang akan dienkripsi. Sementara, parameter kedua adalah Garam adalah sebuah data acak yang dimasukkan ke dalam fungsi enkripsi. Fungsi ini juga dapat digunakan untuk mengamankan password, karena sulit di-decode. 3. Fungsi md5()Fungsi ini akan menghasilkan kode hash sepanjang 32 karakter.
Hasilnya:
Bila ditambahkan garam, hasilnya akan berubah. Contoh:
Hasilnya: Fungsi ini juga dapat digunakan untuk mengamankan password. Akan tetapi, kalau kita perhatikan kecepatan komputer zaman sekarang… Sangat mungkin untuk melakukan decrypt. 4. Fungsi hash()Fungsi ini akan menciptkan sebuah kode hash dengan algoritma tertentu. Contoh:
Hasilnya:
Pada contoh di atas, parameter Bila ingin mengetahui nama-nama algoritma yang bisa digunakan, silahkan coba eksekusi kode ini:
Hasilnya:
5. Fungsi sha1()Fungsi ini akan menghasilkan kode hash sepanjang 40 karakter. Mirip seperti
fungsi Contoh:
Hasilnya:
Seperti halnya fungsi Contoh:
Hasilnya: 6. Fungsi base64_encode()Fungsi ini akan menghasilkan kode hash dari teks yang diinputkan dan bisa dikembalikan ke bentuk semula dengan fungsi Metode ini disebut two-way hasing. Contoh:
Hasilnya: Sementara itu, untuk mengembalikan (decrypt) atau decode dapat menggunakan fungsi Contoh:
Hasilnya: Enkripsi
dengan Akhir Kata…Itulah 6 (enam) fungsi enkripsi di PHP untuk mengamankan data. Setiap fungsi memiliki algoritmanya masing-masing. Gunakan fungsi yang menggunakan metode one-way hasing untuk melindungi password. Tapi, perlu diselidiki dulu…apakah fungsi tersebut masih aman atau tidak? Sedangkan untuk fungsi yang menggunakan metode two-way hasing, sangat tidak disarankan untuk melindungi password, karena memiliki fungsi untuk decode atau mengembalikannya dari bentuk hash menjadi plain text. Referensi:
Apa itu enkripsi password?Enkripsi adalah teknik untuk mengamankan data-data tersebut agar isinya tidak diketahui orang lain. Enkripsi biasanya dilakukan terhadap data-data sensitif seperti password. Enkripsi akan menjamin data-data tetap aman meskipun berada di tangan orang lain, karena mereka tidak tahu isi aslinya.
Apa itu MD5 dalam PHP?Pengertian MD5
dan merupakan sebuah algoritma fungsi hash dari kriptografi yang di gunakan dengan hash value 128-bit. MD5 telah di gunakan untuk berbagai macam keperluan dalam membangun keamanan sebuah sebuah aplikasi. khususnya MD5 Sering di gunakan untuk membantu validasi login pada sistem.
Apa yang dimaksud dengan MD5?Enkripsi MD5 merupakan singkatan dari Message-Digest algortihm 5, adalah fungsi hash (prosedur terdefinisi atau fungsi matematika yang mengubah variabel dari suatu data yang berukuran besar menjadi lebih sederhana) kriptografik yang digunakan secara luas dengan hash value 128-bit.
|