Show September 22, 2019 53 sec read Cara Penerapan Enkripsi AES 256 bit di PHP – Hi Bret !!! kali ini saya akan share ke kalian penerapan enkripsi AES di pemrograman PHP, Dalam kriptografi, Advanced Encryption Standard (AES) merupakan standar enkripsi dengan kunci simetris yang diadopsi oleh pemerintah Amerika Serikat. enkripsi ini terdiri dari 3 blok cipher, yaitu AES-128, AES-192 and AES-256, yang diadopsi dari koleksi yang lebih besar yang awalnya diterbitkan sebagai Rijndael. masing* pada cipher mempunyai ukuran 128-bit, dengan ukuran kunci masing-masing 128, 192, dan 256 bit. AES telah di tersebar secara luas dan sekarang digunakan di seluruh dunia, seperti halnya dengan pendahulunya, Data Encryption Standard (DES). Langsung saja ke prakteknya karena kalau sejarahnya akan sangat panjang. Sebelumnya kalian download library AES nya ->>> Disini. Dalam pembahasan ini akan saya jelaskan contoh dengan sederhana mengkripsi nama, dan outputnya akan saya tampilkan deskripsinya. Langkah pertama kalian buat file dengan nama index.php, lalu kalian masukkan code berikut.
Pada bagian include prosesaes.php adalah memanggil file library algoritma AES. variabel $z adalah key untuk enkripsi AES, dan variabel $decrypted berfungsi untuk mendecrypt string yang sebelumnya di enkripsi. Sekian tutorialnya, kalian bisa mengembangkan lagi dengan library diatas, bisa digunakan enkripsi file text, atau pada fitur login untuk keamanannya. Selamat mencoba brettt 😀
Kali ini yang akan kita kupas adalah cara mengenskripsi URL parameter agar lebih aman dari peretasan seperti XSS exploit, SQL Injection, dll seperti kebanyakan website – website besar. Tentu yang harus kita lakukan pertama adalah membuat function. Berikut functionnya: Jadi ada dua fungsi, yang satu encrypt() berfungsi untuk mengubah string menjadi tipe string md5 yang kemudian di encrypt kembali menjadi base64, dengan kata lain untuk melakukan double enkripsi. Fungsi yang satunya adalah kebalikan dari fungsi encrypt() yaitu untuk mengembalikan ke string semula Berikut kode PHP-nya, tambahkan di bawah function tadi: Foto sebelum dan sesudah di enkrip: Terimakasih sudah berkunjung di alvian-cs.blogspot.com, silakan membaca artikel yang lainnya lagi dan jangan lupa berkomentar cerdas dengan tidak membuat SPAM :) Data adalah harta karun yang paling berharga dalam sebuah sistem. Apabila itu dicuri… …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:
|