Senin, 02 Januari 2012

Cara Mudah Enkripsi Script PHP


Macam-macam Enkripsi Di PHP
Enkripsi adalah proses mengamankan suatu informasi dengan membuat informasi tersebut tidak dapat dibaca tanpa bantuan pengetahuan khusus.
Keuntungan dari enkripsi adalah kode asli kita tidak dapat dibaca oleh orang lain.
Ada banyak fungsi enkripsi yang ada di PHP. Enkripsi untuk melindungi script maupun output dan untuk randomize dalam pembuatan sesuatu. Setidaknya ada 6 jenis enkripsi yang tersedia di PHP. Bisa di dekripsi balik maupun tidak. Itu adalah :
CRC 32
MD5
Crypt()
SHA1
str_rot13
BASE 64
Diantara itu semua,, str_rot 13 dan base 64 yang bisa di decrypt/decode biar bisa dibaca normal lagi.
CRC 32
CRC32 ini biasa dipakai untuk checksum file download selain dengan metode md5. Untuk crc32 ini biasanya output-nya berupa file integer dan tidak jarang pula hasilnya adalah negative. Jadi bisa digunakan untuk meng-enkripsi dalam bentuk yang singkat. Tidak bisa di dekripsi balik. Syntaxnya :
$kata = "Hello World!";
echo(crc32($kata));
?>
MD5
Ini termasuk enkripsi yang lumayan panjang lah! Dan termasuk yang divaforitkan untuk meng-enkripsi semacam data-data penting seperti password dan lain-lain. Dengan sifatnya yang panjang (lebih dari 10 karakter), maka akan sulit di deskripsikan (walaupun sekarang katanya udah ada yang bisa deskripsikan!) dan ditebak makna sebenarnya. Syntaxnya tergolong gampang :
$kata = "Hello World!";
echo(md5($kata));
?>
Crypt()
PHP mempunyai fungsi standar yang mencakup banyak metode enkripsi, dikutip dari sumber resminya :
The standard DES-based encryption crypt() returns the salt as the first two characters of the output. It also only uses the first eight characters of str , so longer strings that start with the same eight characters will generate the same result (when the same salt is used).
jadi ada beberapa metode pengecekan yang bisa dilakukan fungsi ini. Contoh :
$pass = crypt("alfa21");
if(crypt("alfa21") == $pass){
echo"Passed";
}
?>
Emang hasilnya pasti Passed tapi setidaknya bisa direpresentasikan.
SHA1
Enkripsi ini mirip-mirip sama md5. Bisa dikatakan juga ini “adiknya” md5 yang sama panjangnya. Selain itu, ada salt-nya juga bisa ditambahkan. Syntaxnya :
$kata = "Hello World!";
echo(sha1($kata));
?>
str_rot13
Ini salah satu fungsi di PHP yang “mudah” ditebak deskripsinya pake mata telanjang dan mudah dibaca. Di wikipedia juga ada cara untuk deskripsi metode ini. Dalam str_rot13 ini semua huruf akan di enkripsi kecuali karakter numerik/angka, cocok dipakai untuk keamanan tingkat sederhana. Syntaxnya :
$kata = "Hello World!";
echo(str_rot13$kata));
?>
BASE 64
Untuk ini,, ada 2 metode dan perintah di PHP. Yang 1  untuk mengenkripsi, dan yang 1 untuk mendeskripsi dengan perintah yang berbeda pula. Menurutku, inilah metode yang pas untuk emngenkripsi query yang ada di database, mengingat mudah dan cepatnya proses eksekusi. Tapi untuk website berkeamanan tinggi, saya tidak menganjurkan untuk dipakai dalam menyimpan password.
Mungkin inilah salah satu enkripsi yang sangat unik dalam penggabungan huruf kecil dan besarnya. Satu karakter yang berbeda saja akan berakibat hasil yang berbeda dalam penggunaan karakternya. Selain itu dalam jumlah banyak, maka otomatis akan men generate tanda sama dengan di akhir enkripsi. Syntaxnya juga sederhana :
$kata = "Hello World!";
$encode = base64_encode($kata); //enkripsi
$decode = base64_decode($encode); //dekripsi
echo "$decode";
?>
 
Hal yang pertama kali harus dilakukan untuk dapat menggunakan metode enkripsi di PHP adalah, Mengaktifkan konfigurasi m_crypt di file php.ini. Ada dua file yang harus di konfigurasi ulang.
Menggunakan xampp
1. php.ini di lokasi c:/xampp/apache/bin
2.php.ini di lokasi c:/xampp/php/
Cari baris kode ;extension=php_mcrypt.dll kemudian hapus karakter ‘titik koma’ (;) sehingga menjadi extension=php_mcrypt.dll. Jangan lupa untuk me-restart xampp sehingga fungsi enkripsi di php dapat digunakan.
Cara menambahkan enkripsi password MD5
Halaman Insert Record
Pada halaman ini, biasanya Anda memasukkan data Administrator termasuk Username dan Password. Jika Anda lihat pada kode yang di generate oleh Dreamweaver, maka Anda akan melihat kode di bawah ini:
$insertSQL = sprintf(“INSERT INTO users (username, password) VALUES (%s, %s)”,
GetSQLValueString($_POST['username'], “text”),
GetSQLValueString($_POST['password'], “text”));
Ubahlah kode di atas menjadi:
$insertSQL = sprintf(“INSERT INTO users (username, password) VALUES (%s, %s)”,
GetSQLValueString($_POST['username'], “text”),
GetSQLValueString(md5($_POST['password']), “text”));
Halaman Log In Form
Cari kode seperti di bawah ini:
if (isset($_POST['username'])) {
$loginUsername=$_POST['username'];
$password=$_POST['password'];
$MM_fldUserAuthorization = “”;
Ubahlah menjadi:
if (isset($_POST['username'])) {
$loginUsername=$_POST['username'];
$password=md5($_POST['password']);
$MM_fldUserAuthorization = “”;



Enkripsi Script PHP dengan TrueBug PHP Obfuscator Encoder

Jika ingin mengenkripsi script php untuk keperluan keamanan atau untuk melindungan hak cipta kamu, mungkin bisa menggunakan aplikasi ini,

{Tampilan depan}

{Pilih file yang akan dienskripsi}
{Seleksi variabel dari script yang akan dienskripsi}


{Contoh script PHP yang masih asli}

{Contoh Hasil Script PHP yang sudah di enskripsi}





5 Komentar:

  1. terkait dengan penerapan enkripsi, bisa diunduh artikel berikut http://repository.gunadarma.ac.id/bitstream/123456789/2274/1/01-03-010-Penerapan%5BRangga%5D.pdf

    BalasHapus
  2. ada contoh enkripsi paSSWORDNYA GAN/ MAKLUM NEWBIE PINGIN BELAJAR

    BalasHapus
  3. thank atas info...

    BalasHapus
  4. alhamdulillah ketemu juga ,, makasih buanyakk gan.. hidup gunadaram!!!

    BalasHapus
  5. Thx gan, tgs ane berhasil nih.
    share aja nyimpen password yg mau di enskripsi.
    include "config.php";

    $username = $_POST["username"];
    $pass = crypt("password");

    $simpan = mysql_query("INSERT INTO tabelmu( username, password) VALUES('$username','$pass')");

    nti d database jd terenskripsi.. :D

    BalasHapus