Beranda > Tak Berkategori > Pengamanan Situs dengan Enkripsi Head dan Body HTML Menggunakan Algoritma RC4

Pengamanan Situs dengan Enkripsi Head dan Body HTML Menggunakan Algoritma RC4

Januari 8, 2010

Dalam tugas akhir ini dikembangkan aplikasi situs berbagi file yang menggunakan sistem enkripsi-dekripsi halaman HTML sebagai metode otentikasinya. Sistem ini dikembangkan dikarenakan metode otentikasi yang sudah umum digunakan, yaitu sistem password memiliki celah sehingga penyadap bisa mencuri password user. Algoritma enkripsi-dekripsi yang digunakan dalam sistem ini adalah RC4 karena algoritma tersebut cepat sehingga aplikasi terhindar dari bottleneck. Aplikasi ini terdiri dari dua bagian terpisah, yaitu encryptor dan decryptor. Modul encryptor sekaligus pembangun aplikasi situs berbagi file yang berada di sisi server menggunakan bahasa pemrograman PHP sebagai pembangunnya. Di sisi lain, modul decryptor yang berada di sisi klien menggunakan JavaScript sebagai bahasa pemrogramannya. Modul decryptor diintegrasikan menggunakan web browser Mozilla Firefox yang dilengkapi plug-in Greasemonkey sehingga bisa berkomunikasi dengan modul encryptor. Setelah dilakukan pengujian terhadap aplikasi, diperoleh hasil bahwa sistem yang dikembangkan berhasil mengamankan transmisi halaman HTML dari server ke klien sehingga bisa menjadi alternatif proses otentikasi selain sistem password.

Perkembangan teknologi informasi dewasa ini tidak terlepas dari peran internet sebagai tulang punggung utamanya. Berbagai macam layanan dapat disediakan dalam sistem yang melibatkan jaringan seluruh dunia. Salah satu layanan utama yang disediakan dalam sistem internet adalah situs web. Situs web adalah suatu fasilitas yang tersedia di internet berupa sekelompok halaman web (web page), gambar, video dan data digital yang disediakan di satu atau beberapa web server. Sebuah halaman situs bisa dibuat dari berbagai macam format file di server, antara lain HTML, PHP, JSP atau ASP. Format paling sederhana yang bisa digunakan adalah HTML. Situs yang menggunakan file HTML sebagai halamannya tidak bisa melakukan otorisasi user disebabkan sifat file HTML yang statik. Oleh karena itu, situs-situs yang membutuhkan otentikasi user untuk bisa mengaksesnya menggunakan format PHP, JSP atau ASP sebagai pembangun halaman situsnya. Selain bisa melakukan otorisasi user, situs yang menggunakan format PHP, JSP, atau ASP bisa melakukan update content situs secara dinamik sehingga pembuat situs tidak perlu melakukan coding terhadap isi file melainkan bisa melalui fasilitas query ke basis data.
Ketiga format yang memiliki sifat dinamik seperti disebut sebelumnya menggunakan cara server-side scripting, yaitu suatu cara mengeksekusi isi file yang ada di server sebelum dikirimkan ke klien dalam bentuk HTML[W3S07]. Jadi, isi file yang diterima di pihak klien tidak sama dengan isi file di server. Dalam sebuah situs, server bisa menyediakan berbagai layanan bagi kliennya, seperti berita, ilmu pengetahuan, riset, hiburan dan sebagainya. Sebagian besar situs di internet bisa diakses secara bebas oleh siapa saja yang membutuhkan layanan dari situs tersebut. Artinya, setiap klien mempunyai hak akses terhadap segala content situs. Akan tetapi, tidak semua situs bisa diakses secara bebas oleh setiap klien. Hal ini bisa disebabkan oleh kerahasiaan content situs tersebut sehingga server tidak ingin klien yang tidak berhak mengaksesnya.
Metode yang umumnya digunakan dalam pengamanan situs dari akses klien yang tidak terotentikasi adalah dengan sistem password, yaitu suatu cara dimana klien yang ingin mengakses halaman sebuah situs diminta memasukkan username dan password yang sah atau sudah disetujui oleh server. Sistem ini sudah dianggap cukup aman sehingga banyak diterapkan di berbagai situs. Namun, dalam sistem ini terdapat suatu celah yang bisa disusupi serangan oleh pihak ketiga, yaitu ketika user mengirimkan username dan password miliknya ke server dengan method POST yang digunakan. Hal ini bisa dimanfaatkan oleh pihak ketiga tersebut dengan melakukan eavesdropping (penyadapan) terhadap username dan password yang dikirimkan.
Contoh situs yang menggunakan sistem ini antara lain situs-situs surat elektronik seperti Yahoo!, Gmail atau situs surat elektronik milik ITB (students.itb.ac.id). Celah yang dimiliki oleh sistem password yang disebutkan sebelumnya disebabkan karena otorisasi dilakukan di pihak server sehingga ada suatu saat dimana data yang seharusnya rahasia dilewatkan begitu saja di jaringan. Username dan password yang dikirimkan ini terkadang dienkripsi dalam pengirimannya. Akan tetapi, panjang username dan password yang umumnya pendek memudahkan penyerang dalam melakukan kriptanalisis (ilmu dan seni untuk memecahkan teks terenkripsi menjadi teks aslinya tanpa mengetahui kunci yang digunakan untuk penyandian[RIN06]).

Untuk membuktikan bahwa penggunaan username dan password tidak aman, diberikan contoh kasus sebagai berikut. Pada Gambar I-1 terlihat situs email untuk mahasiswa ITB (students.itb.ac.id). Dalam situs tersebut, mahasiswa yang ingin melihat email pribadi diminta memasukkan username dan password yang bersesuaian. Dalam contoh ini, username yang dimasukkan adalah “username” sedangkan password adalah “password”. Gambar I-2 memperlihatkan screenshot dari Wireshark, sebuah aplikasi pemantau aktivitas interkomunikasi yang melalui sebuah komputer. Terlihat bahwa ketika user melakukan posting username dan password, aplikasi Wireshark mencatat aktivitas tersebut dan menyimpan nilai yang dimasukkan oleh user tersebut dalam log sehingga pihak lain yang memasang aplikasi ini di komputer gateway bisa mengetahui username dan password user tersebut.

Seperti disebutkan sebelumnya, penggunaan enkripsi bisa mencegah pencurian data oleh pihak luar. Algoritma enkripsi sendiri terdiri dari cipher blok dan cipher aliran. Cipher aliran memiliki keuntungan dibanding cipher blok dilihat dari sisi kompleksitas dan kecepatan komputasinya karena hanya bergantung dari algoritma yang digunakan. Selain itu, cipher aliran memiliki perambatan kesalahan yang kecil[BLE07]. Berdasarkan kunci yang digunakan, algoritma enkripsi terbagi menjadi algoritma kunci simetri dan kunci asimetri yang juga dikenal sebagai kunci publik.

Salah satu algoritma kunci simetri yang dikenal adalah RC4. Algoritma ini merupakan salah satu algoritma cipher aliran. RC4 terkenal dengan kecepatan prosesnya. Hal ini ditulis di [BUD98] dengan membandingkan RC4 dan Blowfish. Menurut hasil pengujian kecepatan algoritma kriptografi RC4 adalah 5.380,035 Kbyte/detik pada Pentium133 memori 16MB pada Windows 95 sedangkan algoritma Blowfish pada jenis komputer yang sama menghasilkan kecepatan 2.300 KByte/detik.

Kategori:Tak Berkategori
%d blogger menyukai ini: