Mengenkripsi password login
Login merupakan area yang penting bagi sebuah program dimana halaman login umumnya dibuat sebagai akses bagi user dan admin untuk mengelola data mereka. kolom yang terdapat input pada form login biasanya digunakan bagi para hacker untuk meretas sebuah program. Maka perlu diperhatikan untuk menjaga keamanan form login kita dengan membatasi dalam penginputan. Login umumnya terdiri dari 2 kolom, yaitu username dan password. Pada banyak program username disarankan untuk dibuat unik sebagai identifikasi pengguna program begitu pula password yang pada umumnya password disarankan dibuat dari lebih atau sama dengan 8 karakter dengan karakter unik tentunya. Sehingga mempersulit bagi para hacker dalam melakukan peretasan pada program kita. Selain itu password yang disimpan dalam database haruslah merupakan sebuah password yang telah terenkripsi.
Kali ini kita akan belajar tentang cara untuk melakukan enkripsi password. Enkripsi yang paling sederhana dan dipakai adalah dengan menggunakan fungsi MD5 (Message Digest algirithm 5) dimana fungsi ini dapat mengenkripsi sebuah password menjadi 32 karakter acak dengan kombinasi angka dan huruf. Sebagai contoh "82591da96f90eaea3b87da484916d1cf" yang jika dilakukan decrypt maka hasilnya "tutorialtoweb". Ada banyak situs online yang dapat kita gunakan jika kita ingin mengetahui hasil enkripsi MD5 pada sebuah kata. Misalnya "https://www.md5online.org/". Struktur penulisan MD5 adalah MD5(string $str). Anda bisa mencobanya, buatlah sebuah file php dengan kode seperti dibawah ini.
<?php echo md5('tutorialtoweb');?>
maka ketika dijalankan akan menghasilkan output "82591da96f90eaea3b87da484916d1cf".
Pada tutorial kali ini kita tidak disarankan menggunakan fungsi MD5 untuk mengenkripsi password
kita, tetapi kita bisa menggunakan fungsi yang lain yaitu fungsi crypt. Struktur penulisan fungsi ini sebagai berikut
crypt(string,salt)
kode salt ini terdiri dari beberapa bentuk, seperti dibawah ini.
1. CRYPT_STD_DES
Salt terdiri terdiri dari 2 karakter, sebagai contoh:
crypt('tutorialtoweb','tw');
"tutorialtoweb" merupakan string yang akan dienkripsi/dihash, sedangkan "tw" merupakan salt.
2. CRYPT_EXT_DES
Salt terdiri dari 4 karakter, sebagai contoh:
crypt('tutorialtoweb','_S4..webs');
"tutorialtoweb" merupakan string yang akan dienkripsi/dihash, sedangakan "webs" merupakan salt.
3. CRYPT_MD5
Salt terdiri dari 12 karakter dan diawali dengan $1$, sebagai contoh:
crypt('tutorialtoweb','$1$websites$');
"tutorialtoweb" merupakan string yang akan dienkripsi/dihash, sedangkan "$1$websites$" merupakan salt.
4. CRYPT_BLOWFISH
Salt diawali dengan $2a$, dua digit cost paramater 09, dan 22 karakter. Sebagai contoh:
crypt('tutorialtoweb','$2a$09$websiteskerenpertamaku$');
"tutorialtoweb" merupakan string yang akan dienkripsi/dihash, sedangkan "$2a$09$websiteskerenpertamaku$" merupakan salt.
Anda dapat menggunakan salahsatunya untuk melakukan enkripsi pada password anda. Selamat mencoba,,, :)
Kali ini kita akan belajar tentang cara untuk melakukan enkripsi password. Enkripsi yang paling sederhana dan dipakai adalah dengan menggunakan fungsi MD5 (Message Digest algirithm 5) dimana fungsi ini dapat mengenkripsi sebuah password menjadi 32 karakter acak dengan kombinasi angka dan huruf. Sebagai contoh "82591da96f90eaea3b87da484916d1cf" yang jika dilakukan decrypt maka hasilnya "tutorialtoweb". Ada banyak situs online yang dapat kita gunakan jika kita ingin mengetahui hasil enkripsi MD5 pada sebuah kata. Misalnya "https://www.md5online.org/". Struktur penulisan MD5 adalah MD5(string $str). Anda bisa mencobanya, buatlah sebuah file php dengan kode seperti dibawah ini.
<?php echo md5('tutorialtoweb');?>
maka ketika dijalankan akan menghasilkan output "82591da96f90eaea3b87da484916d1cf".
Pada tutorial kali ini kita tidak disarankan menggunakan fungsi MD5 untuk mengenkripsi password
kita, tetapi kita bisa menggunakan fungsi yang lain yaitu fungsi crypt. Struktur penulisan fungsi ini sebagai berikut
crypt(string,salt)
kode salt ini terdiri dari beberapa bentuk, seperti dibawah ini.
1. CRYPT_STD_DES
Salt terdiri terdiri dari 2 karakter, sebagai contoh:
crypt('tutorialtoweb','tw');
"tutorialtoweb" merupakan string yang akan dienkripsi/dihash, sedangkan "tw" merupakan salt.
2. CRYPT_EXT_DES
Salt terdiri dari 4 karakter, sebagai contoh:
crypt('tutorialtoweb','_S4..webs');
"tutorialtoweb" merupakan string yang akan dienkripsi/dihash, sedangakan "webs" merupakan salt.
3. CRYPT_MD5
Salt terdiri dari 12 karakter dan diawali dengan $1$, sebagai contoh:
crypt('tutorialtoweb','$1$websites$');
"tutorialtoweb" merupakan string yang akan dienkripsi/dihash, sedangkan "$1$websites$" merupakan salt.
4. CRYPT_BLOWFISH
Salt diawali dengan $2a$, dua digit cost paramater 09, dan 22 karakter. Sebagai contoh:
crypt('tutorialtoweb','$2a$09$websiteskerenpertamaku$');
"tutorialtoweb" merupakan string yang akan dienkripsi/dihash, sedangkan "$2a$09$websiteskerenpertamaku$" merupakan salt.
Anda dapat menggunakan salahsatunya untuk melakukan enkripsi pada password anda. Selamat mencoba,,, :)
Comments
Post a Comment