Pages

Subscribe:

Labels

.

Effeck Saljou

Ads 468x60px

.
.

Senin, 30 Juli 2012

IMPLEMENTASI SECURITY PADA WEB SERVICE NUSOAP DENGAN MENGGUNAKAN ALGORITMA RIJNDAEL/ AES


BAB I
PENDAHULUAN

A. Latar Belakang Masalah
Perkembangan teknologi komputer dan teknologi telekomunikasi pada saat ini telah mengubah cara masyarakat dalam berkomunikasi. Dulu, komunikasi jarak jauh masih dilakukan dengan cara konvensional, yaitu dengan cara saling mengirim surat. Sekarang, dengan adanya internet, komunikasi jarak jauh bisa dilakukan dengan cara saling mengirim email atau sms (short messaging service). Internet juga telah membuat komunikasi semakin terbuka dan pertukaran informasi juga semakin cepat melewati batas-batas negara dan benua. Namun tidak semua perkembangan teknologi komunikasi ini memberikan dampak yang menguntungkan bagi dunia komunikasi. Penyadapan data merupakan hal yang paling ditakuti oleh pengguna jaringan komunikasi pada saat ini. Dengan adanya kemungkinan penyadapan data, maka aspek keamanan dalam pertukaran informasi menjadi sangat penting karena suatu komunikasi data jarak jauh belum tentu memiliki jalur transmisi yang aman dari penyadapan sehingga keamanan informasi menjadi bagian penting dalam dunia informasi itu sendiri. Terdapat data-data yang tidak terlalu penting, sehingga apabila publik mengetahui data tersebut, pemilik data tidak terlalu dirugikan. Tetapi apabila pemilik data adalah pihak militer atau pemerintah, keamanan dalam pertukaran informasi menjadi sangat penting karena data yang mereka kirim kebanyakan adalah data-data rahasia yang tidak boleh diketahui oleh publik.

Kelemahan web service pada umumnya terletak pada keamanan pertukaran data. Pada NuSOAP pengiriman dan penerimaan payload hanya dilakukan encode dengan format GZIP atau DEFLATE dan tidak dienkripsi sehingga apabila koneksi dari client ke server disadap, payload yang dikirim baik dari server ke client maupun sebaliknya dapat saja dicuri oleh pihakketiga. Untuk mengatasi masalah ini, perlu diimplementasikan algoritma enkripsi pada pengiriman dan penerimaan payload tersebut. Algoritma enkripsi yang dinilai sebagai pilihan yang baik adalah Rijndael, yang sekarang menjadi Advanced Encryption Standard (AES) setelah ditetapkan sebagai pemenang sayembara algoritma enkripsi oleh NIST pada Oktober 2006. Pada keamanan Rijndael masih bekerja dalam performa yang sangat baik, karena jumlah putaran perhitungan sangat banyak sehingga mempersulit proses kriptanalisis. Hal ini berarti algoritma Rijndael benar-benar kuat. Oleh karena itu, Rijndael dipilih sebagai algoritma enkripsi yang akan diimplementasikan pada library web service NuSOAP. NuSOAP adalah group dari PHP yang dapat digunakan untuk membuat SOAP web service. NuSOAP mempunyai library untuk fitur web service dengan tipe SOAP (Simple Object Access Protocol). NuSOAP diimplementasikan dalam lingkungan PHP. NuSOAP menyediakan berbagai fungsi server maupun client dengan penggunaan yang mudah. Oleh karena
itu, NuSOAP dipakai oleh banyak pengguna pada web service.

Kriptografi adalah salah satu teknik yang digunakan untuk meningkatkan aspek keamanan suatu informasi. Kriptografi merupakan kajian ilmu dan seni untuk menjaga suatu pesan atau data informasi agar data tersebut aman. Kriptografi pada dasarnya terdiri dari dua proses, yaitu proses enkripsi dan proses dekripsi. Proses enkripsi adalah proses penyandian pesan terbuka menjadi pesan rahasia (ciphertext). Ciphertext inilah yang nantinya akan dikirimkan melalui saluran komunikasi terbuka. Pada saat ciphertext diterima oleh penerima pesan, maka pesan rahasia tersebut diubah lagi menjadi pesan terbuka melalui proses dekripsi sehingga pesan tadi dapat dibaca kembali oleh penerima pesan. Kriptografi mendukung kebutuhan dari dua aspek keamanan informasi, yaitu secrecy (perlindungan terhadap kerahasiaan data informasi) dan authenticity (perlindungan terhadap pemalsuan dan pengubahan informasi yang tidak diinginkan). Saat ini aplikasi yang sedang populer untuk diimplementasikan adalah web service. Web service merupakan salah satu sistem perangkat lunak yang menginteroperabilitaskan berbagai sistem lainnya pada jaringan internet. Dengan adanya web service, sebuah sistem web dapat berbagi informasi maupun fungsionalitas (remote procedure call) dari setiap sistem dalam hubungan server dan client.

B. Identifikasi Masalah
Sistem informasi pada masa sekarang ini merupakan suatu kebutuhan dan sarana yang penting, baik yang digunakan oleh kalangan sendiri maupun masyarakat luas. Tetapi pada kenyataannya sekarang ini masih banyak penyedia informasi yang bersifat manual, terbatas pada area tertentu dan masih memiliki banyak kelemahan pada security sehingga data sangat mudah dicuri bahkan dirubah oleh orang lain yang tidak bertanggung jawab. Berdasarkan latar belakang masalah yang telah diuraikan diatas, maka dapat diidentifikasi masalah pada penelitian ini sebagai berikut :
1. Pada umumnya Web service belum dilengkapi dengan fitur keamanan data baik enkripsi maupun dekripsi.
2. Pada NuSOAP pengiriman dan penerimaan payload hanya dilakukan encode dengan format GZIP atau DEFLATE dan tidak dienkripsi sehingga apabila koneksi dari client ke server dapat disadap dan dicuri oleh pihak ketiga Untuk itu perlu adanya keamanan pada security web service dengan melakukan enkripsi pada pengiriman data dan dekripsi pada penerimaan data sehingga pertukaran data relatif aman.

C. Batasan Masalah
Batasan masalah dari penelitian ini adalah :
1. Mengimplementasikan penggunaan metode algoritma Rijndael yang merupakan algoritma enkripsi bekerja dalam performa yang sangat baik, karena jumlah putaran perhitungan sangat banyak sehingga mempersulit proses kriptanalisis sehingga dinilai sebagai pilihan yang baik dan sekarang menjadi Advanced Encryption Standard (AES) karena dari sekian banyak metode kriptografi yang dikembangkan oleh banyak hacker, Rijndael belum berhasil dikriptanalisis. Agar keamanan dalam pertukaran data benar-benar kuat.
2. Implementasi security pada library Nusoap web service.
3. Studi kasus pada penelitian ini di implementasikan pada web service
perpustakaan Universitas Ahmad Dahlan.

D. Rumusan Masalah
Berdasarkan batasan masalah maka dapat diambil suatu perumusan masalah yaitu bagaimana mengimplementasikan metode enkripsi dan dekripsi algoritma Rijndael/ Advanced Encryption Standard (AES) pada library web service dengan berbasis pada NuSOAP.

E. Tujuan Penelitian
Adapun tujuan dari penenelitian ini adalah Merancang serta mengimplementasikan metode algoritma Rijndael/ Advanced Encryption Standard (AES) pada library web service NuSOAP.

F. Manfaat Penelitian
Manfaat penelitian ini, sebagai berikut :
1. Menambah khasanah pustaka library pada NuSOAP dalam kriptografi.
2. Memberikan keamanan data dalam melakukan proses pertukaran, pengiriman dan penerimaan data sehingga tidak diketahui dan dicuri oleh pihak ketiga.
3. Menambah keamanan dalam pertukaran data pada web service perpustakaan UAD Yogyakarta karena sebagai studi kasus penelitian.

BAB II
TINJAUAN PUSTAKA

A. Kajian Pustaka Terdahulu
Kajian pustaka yang pertama diambil dari skripsi Fahmi Rizal [16] yang berjudul “Implementasi Web Service pada Data Base Terdistribusi Studi Kasus Sistem Informasi Perpustakaan UAD”, dimana dalam penelitiannya Fahmi banyak menjelaskan bahwa web service memberikan kemudahan dan lebih menghemat waktu bagi siapa saja untuk mengetahui keberadaan buku dicari, tanpa harus berkunjung ke beberapa perpustakaan yang berbeda, pembuatan web service juga akan menghemat biaya dan mempermudah developer dalam mengembangkan system yang akan dibuat karena aplikasi yang dibuat terletak pada bagian business logicnya sehingga apabila aplikasi web service tersebut akan dirombak tidak perlu merombak seluruh sistem, yang dirubah atau diperbaiki hanya bagian servicenya tanpa mempengaruhi bagian-bagian yang lain.

Kajian pustaka yang kedua diambil dari skripsi Much. Fauzi BT [5] yang berjudul ”Implementasi Keamanan Data Bertingkat dengan Menggunakan Algoritma RSA dan Rijndael”, dimana dalam penelitiannya Fauzi menjelaskan tentang penggabungan pemanfaatan antara kedua algoritma yang ada yaitu algoritma RSA dan Rijndael menjadi sebuah aplikasi keamanan data bertingkat yang saling sinergis dan saling memperkuat sistem yang dirancang selain mampu mengenkripsi data (plaintext), sistem dibangun untuk mengamankan kunci yang telah tersedia dan tersimpan dalam file sehingga ketika mendapatkan security attack khususnya serangan interception tidak bernilai apa-apa.

Pada penelitian ini akan mendalami tentang implementasi keamanan pada web service yaitu bagaimana pertukaran data antar aplikasi dapat dilakukan dengan menggunakan web service yang memberikan keamanan data dalam melakukan proses pertukaran, pengiriman dan penerimaan data. Karena pada bagian payload yang dikirim dan diterima hanya dilakukan encode dengan format GZIP atau DEFLATE yang diketahui berfungsi untuk mengkompres, bukan untuk mengenkripsi sehingga dinilai kurang aman. Oleh karena itu, perlu melakukan enkripsi dan dekripsi pada bagian pengiriman dan penerimaan payload dengan menggunakan metode algoritma Rijndael/Advanced Encryption Standard (AES). Dengan melakukan enkripsi dan dekripsi data sehingga pengiriman dan penerimaan data pada payload relatif aman. Pada penelitian ini fungsi enkripsi ditulis dengan menggunakan bahasa pemrograman PHP.

B. Web service
1. Pengantar
Web service atau layanan web, secara umum dapat didefinisikan sebagai ”sekumpulan standart dan protocol-protokol yang digunakan untuk mempertukarkan data di antara berbagai aplikasi”[17]. Software aplikasi yang ditulis pada berbagai bahasa pemrograman dan berjalan pada platform-platform yang berbeda. Dapat menggunakan web servis untuk saling bertukar data melalui jaringan komputer, termasuk internet, dengan cara yang mirip seperti halnya komunikasi antar proses dalam sebuah komputer tunggal[2]. Sedangkan menurut definisi yang dikeluarkan oleh world wide web comsorsium, web service di definisikan sebagai berikut[8]:
a. Dapat diidentifikasikan dengan URI (Unifrom Resource Identifier).
b. Dapat di akses melalui protokol web standart.
c. Mampu mengirim, menerima, dan bekerja pada pesan-pesan berbasis XML.
d. Mampu berinteraksi dengan aplikasi serta program dengan user interface yang secara tidak langsung dikendalikan oleh manusia.

Konsep utama dari web service adalah memandang segala sesuatu sebagai service yang dapat disusun kembali sedemikian rupa bersama dengan service-service yang lain untuk menciptakan sebuah service yang baru. Hal ini merupakan pengembangan lebih lanjut dari konsep Object Oriented, dimana segala sesuatu di pandang sebagai sebuah objek. Disisi lain, web service menawarkan beberapa keuntungan pada saat aplikasi IT cenderung untuk merujuk ke dunia web, seperti saat ini. Web servis menggunakan komponen-komponen yang bersifat loosely coupled, sehingga memudahkan penggabungan komponen-komponen antar sistem melalui jaringan internet. Dan juga, penggunaan dinamik binding pada suatu saat runtime memungkingkan terciptanya suatu kondisi yang di sebut just in time integration service. Dalam kondisi ini, semua komponen yang ada dalam sistem adalah servis yang mengenkapsulasikan tingkah laku serta mengirimkan pesan API kepada komponen lain yang bekerjasama melalui jaringan. Servis- servis ini di awasi oleh aplikasi-aplikasi yang menggunakan discovery service untuk memungkinkan dynamic binding pada saat proses kerja sama[3].

2. Konsep Web service
XML merupakan bahasa meta yang digunakan untuk mendeskripsikan data yang dimaksud dan berdiri sendiri [3]. XML dapat digunakan untuk menampilkan isi dari berbagai bahasa natural. XML juga didukung oleh banyak vendor sehingga digunakan sebagai format pertukaran data antar entitas. XML merupakan dasar terbentuknya web service. Bahkan dilevel paling detail. XML digunakan untuk menjelaskan suatu data yang bersifat platform independent. Tag dalam XML menjelaskan mengenai informasi dan struktur suatu dokumen. Kelebihan dari XML adalah:
1) Intelligence yaitu XML dapat menangani bebagai level kompleks
2) XML dapat mengadaptasi untuk membuat bahasa sesuai dengan kebutuhan.
3) XML hanya berisi data markup sedangkan markup dan stylesheet dan link terpisah dari dokumen.
4) XML mempunyai link kebanyak pointer yang berada di dalam data maupun yang diluar data.
5) Bahasa yang digunakan XML lebih sederhana.



BAB III
METODE PENELITIAN

A. Subjek Penelitian
Subjek penelitian ini adalah implementasi keamanan web service NuSOAP dengan menggunakan Algoritma Rijndael, yaitu menggunakan PHP, NuSoap, database MySql, dan penggunaan algoritma Rijndael/ AES dengan studi kasus Sistem Informasi Perpustakaan Universitas Ahmad Dahlan.

B. Metode Pengumpulan Data
Metode pengumpulan data yang digunakan adalah studi literatur yaitu bahan-bahannya diambil dari internet dan buku-buku yang berkaitan dengan web service, Algoritma Rijndael/ AES dan topik-topik yang masih berhubungan[9].
1. Metode Kepustakaan
Penelitian dengan metode ini dimaksudkan untuk mendapatkan konsep tertulis mengenai bagaimana merancang keamanan suatu sistem informasi dan bagaimana cara mengimplementasikan sistem keamanan tersebut menggunakan pemrograman.
2. Browsing
Browsing yaitu melakukan pengumpulan data dengan cara mencari fitur-fitur web service melaui site-site internet yang berkenaan dengan materi yang diambil. Metode browsing dirasa sangat efektif dimana dengan mudahnya mendapatkan sumber-sumber yang berkenaan dengan tema.

C. Perangkat Keras
Perangkat keras yang digunakan dalam penelitian ini adalah komputer kelas desktop yang secara rinci adalah sebagai berikut :
1. Processor Intel Pentium 4 2,0 Ghz
2. Motherboard Gygabyte P4848P
3. Hard Disk Samsung 160 Giga
4. RAM Visipro 512 MB DDR
5. VGA Ati Radeon 9200, 128 MB

D. Perangkat Lunak
Perangkat lunak yang digunakan dalam proses pengembangan web service ini adalah:
1. Windows xp sp 2, sebagai sistem operasi.
2. NuSoap, sebagai tool library pembuat dokumen soap.
3. AppServ 2.5.4a, yang mencakup apache webServer, php dan mysql.
4. PHP, XML dan HTML, sebagai bahasa pemrograman
5. phpMyAdmin, sebagai koneksi ke database.
6. PHP Designer 2005, sebagai editor.

E. Metode Pengembangan Sistem 
Metode pengembangan sistem yang digunakan pada penelitian ini adalah dengan menerapkan model System Development Life Cycle (SDLC). SDLC merupakan metodologi yang digunakan untuk mengembangkan, memelihara, dan menggunakan sistem informasi. Karakteristik model SDLC ini adanya feedback (umpan balik) tiap fasenya sehingga mampu mengakomodasikan perubahan setiap prosesnya [19].

1. Analisis Sistem
Analisis sistem pada penelitian ini dilakukan dengan cara :
a. Menganalisis keamanan pada web services. Terjadi proses pertukaran (transaksi) komunikasi data-data Diperlukan adanya mekanisme yang menjamin keamanan dan keutuhan data ataupun informasi yang dikirim atau diterima melalui saluran perantara.
b. Melakukan analisis kerentanan pada Web Service. Web Service memiliki kerentanan tambahan yang disebabkan oleh karakteristik teknologi yang mendasari Web Service, yaitu XML dan SOAP.
c. Melakukan analisis serangan pada Web Service. Beberapa jenis serangan yang mungkin terjadi terhadap aplikasi berbasis Web juga bisa terjadi pada aplikasi Web Service, yaitu antara lain adalah Denial of Service (DOS), Buffer Overflow, Reply Attack, dan Dictionary Attack.

2. Desain Sistem
Tujuan utama dari desain sistem adalah menghasilkan rancangan yang memenuhi kebutuhan selama tahapan analisis sistem. Tahap ini terbagi manjadi dua bagian yaitu:

a. Perancangan Konseptual
Yang dimaksud perancangan konseptual pada penelitian ini adalah bagaimana merancang Teknik pengamanan web service dengan menggunakan otentikasi SOAP merupakan proses yang dilakukan dengan cara menyisipkan suatu informasi pada pesan SOAP yang menggambarkan bahwa suatu pesan SOAP memiliki keaslian tersendiri yang bersifat unik dari suatu client tertentu yang meminta layanan. Web service ini terdiri dari client dan Server. Server di sini adalah yang memberikan data, sedangkan client adalah yang meminta data. Server dibuat dengan menggunakan bahasa pemrograman php dan tool tambahan berupa NuSoap yang juga menggunakan bahasa pemrograman php. Pada pengiriman dan penerimaan payload client
yang digunakan penyandian dengan menggunakan algoritma Rijndael sehingga perpindahan data ke Server terdapat enkripsi data dan pada penerimaan di Server penyandian tersebut didekripsi sehingga data dapat dibaca oleh server.

b. Perancangan Fisik
Installasi web Server menggunakan AppServ dan mendukung script php. Installasi tool NuSoap untuk membuat dan menggunakan web service, Konfigurasi alamat Server serta Konfigurasi client untuk menggunakan alamat Server.

3. Implementasi Sistem
Pemrograman menggunakan kelas-kelas yang ada dalam nusoap pada client dan Server web service untuk menghasilkan WSDL, soap dan mengimplementasikan Fungsi enkripsi Rijndael sebenarnya telah tersedia pada library MCRYPT di PHP. Namun, pada penelitian ini fungsi enkripsi ini ditulis dalam bahasa PHP. Nantinya fungsi enkripsi akan dilakukan melalui otentikasi SOAP. Fungsi enkripsi yang diimplementasikan merupakan algoritma AES-128 atau dengan kata lain algoritma Rijndael dengan panjang kunci 128 bit = 16 byte = 4 word, dalam pengujian terhadap web service.

4. Pengujian Sistem
Uji coba (testing) adalah proses akhir dari pembuatan sistem secara menyeluruh. Ada berbagai metode yang digunakan dalam proses uji coba ini. Metode uji coba yang akan digunakan adalah metode black box dan alpha test, berikut penjelasan dari masing-masing tipe pengujian :

a. Black box test
Yaitu pengujian program yang dilakukan oleh pendesain atau pembuat dari pihak vendor tersebut. Dimana akan dilakukan pengujian terhadap sistem dengan cara melakukan, mengamati, dan mencoba fungsi hasil pengembangan. Pengujian secara black box ini mengundang user ahli yaitu seseorang yang sudah berpengalaman dalam pengembangan web service. Pengujian ini dilakukan untuk melihat apakah keamanan pertukaran data hasil pengembangan sudah dapat diintegrasikan dan dioperasikan dengan baik dalam sistem
informasi.

b. Alpha test
Pengujian alpha test ini dilakukan dengan cara mengundang beberapa rekan pada Kelompuk Study Linux (KSL), Multimedia, Infomatic Database Club (IDC) untuk menjalankan sistem tersebut. Kemudian pengguna akan memberikan penilaian terhadap program yang dijalankan ditinjau dari Graphical User Interface-nya dan kemudahan dalam pemasukan datanya

1 komentar:

  1. bisa sharing ga om implementasi nya menngunakan AES pada nuSoap kalo bisa sih minta contoh :)
    Thanks abas.aja@gmail.com

    BalasHapus