6. security system

28
Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012) ISBN 9786021983706 Security System 6-1 Metode Enkripsi Menggunakan Algoritma RSA pada Sistem Login Husni Lubis, Ihsan Lubis, Sayuti Rahman Program Studi Sistem Informasi, Sekolah Tinggi Teknik Harapan ABSTRAK Perkembangan teknologi telekomunikasi dan penyimpanan data dengan menggunakan komputer memungkinkan pengiriman data jarak jauh. Berbagai jenis layanan komunikasi tersedia di internet, diantaranya adalah web, e-mail, milis, dan sebagainya. Dengan maraknya pemanfaatan layanan komunikasi di internet tersebut, maka permasalahan pun bermunculan, ditambah dengan adanya hacker dan cracker. Sehingga sangat memungkinkan data yang tersimpan dapat disadap dan diubah oleh pihak lain. Untuk meminimalkan penyadapan dan perubahan yang dapat dilakukan pihak lain maka dilakukan proses penyandian yaitu dengan cara mengenkripsi user id dan password. Algoritma yang digunakan untuk mengenkripsi user id dan password adalah algoritma RSA karena sulitnya memfaktorkan bilangan prima yang besar. Dalam penelitian ini membahas perancangan dan desain sistem halaman log-in pada halaman web. Perancangan dan pembuatan program menggunakan Bahasa Pemrograman PHP. Kata kunci : Algoritma RSA, Enkripsi, sistem login 1. Pendahuluan Pemanfaatan internet sebagai sarana media informasi saat ini sudah menjangkau seluruh pelosok dunia bahkan ke desa-desa yang sangat terpencil sudah dapat menikmati informasi lewat layanan berbasis web, yang kemudian sangat berpengaruh terhadap pengamanan web sehingga tidak mudah bagi orang yang tidak bertanggung jawab untuk memasuki halaman web. Saat ini juga terjadi berbagai macam penipuan seperti phising. Phising adalah sebuah bentuk penipuan dengan cara membuat web yang sama persis agar user yang masuk ke dalam web itu yakin bahwa web yang dikunjunginya adalah web yang sama. Hal ini mungkin tidak terlalu penting untuk web yang isinya hanya informasi umum tetapi akan menjadi sensitif ketika web yang kita kunjungi adalah web yang membutuhkan informasi penting dari diri kita. Sebagai contoh Internet Banking e- mail atau e-commerce. Hal itu bisa menyebabkan kasus kejahatan di dunia maya. Besar kemungkinan account kita dicuri orang akibat phising ini. Oleh karena itu sistem login yang kita gunakan haruslah diamankan. Dengan mengenkripsi sistem login, kita dapat mengamankan account user dan data yang ada pada web dari serangan hacker. Ketika seseorang ingin mengakses isi web kita maka pada web tersebut akan menampilkan halaman login sehingga tidak semua orang bisa dengan mudah mengakses web tersebut. Algoritma yang dipilih untuk meng-enkripsi sistem login adalah algoritma RSA. Karena walaupun memang sedikit lambat namun keamanan dari RSA sudah tidak diragukan lagi. 2. Tinjauan Pustaka 2.1 Kriptografi Kriptografi (cryptography) adalah studi mengenai metode penyandian pesan yang bertujuan untuk menghindari perolehan pesan secara tidak sah[10]. Kriptografi merupakan ilmu dan seni untuk menjaga pesan agar aman. (Cryptography is the art and science of keeping messages secure) [2]. “Crypto” berarti “secret” (rahasia) dan “graphy” berarti “writing” (tulisan). Para pelaku atau praktisi kriptografi disebut cryptographers. Sebuah algoritma kriptografik (cryptographic algorithm) disebut cipher, merupakan persamaan matematik yang digunakan untuk proses enkripsi dan dekripsi. Biasanya kedua persamaan matematik (untuk enkripsi dan dekripsi) tersebut memiliki hubungan matematis yang erat. Tujuan utama dari kriptografi adalah kerahasiaan. Melalui kriptografi user dapat memastikan bahwa hanya recipient yang dituju yang dapat meng”unlock(decrypt) sebuah pesan yang terenkripsi. Kebanyakan dari algoritma modern cukup aman bahwa siapa saja yang tidak memiliki kunci tidak dapat membaca pesan itu. Jadi sangat penting untuk menjaga kerahasiaan kunci. 2.2 Algoritma RSA Algoritma RSA merupakan algoritma kriptografi kunci publik(asimetris). Ditemukan pertama kali pada tahun 1977 oleh R. Rivest, A.

Upload: dony-riyanto

Post on 05-Dec-2014

2.260 views

Category:

Technology


7 download

DESCRIPTION

 

TRANSCRIPT

Page 1: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System  6-1

Metode Enkripsi Menggunakan Algoritma RSA pada Sistem Login

Husni Lubis, Ihsan Lubis, Sayuti Rahman Program Studi Sistem Informasi, Sekolah Tinggi Teknik Harapan

ABSTRAK Perkembangan teknologi telekomunikasi dan

penyimpanan data dengan menggunakan komputer memungkinkan pengiriman data jarak jauh. Berbagai jenis layanan komunikasi tersedia di internet, diantaranya adalah web, e-mail, milis, dan sebagainya. Dengan maraknya pemanfaatan layanan komunikasi di internet tersebut, maka permasalahan pun bermunculan, ditambah dengan adanya hacker dan cracker. Sehingga sangat memungkinkan data yang tersimpan dapat disadap dan diubah oleh pihak lain. Untuk meminimalkan penyadapan dan perubahan yang dapat dilakukan pihak lain maka dilakukan proses penyandian yaitu dengan cara mengenkripsi user id dan password. Algoritma yang digunakan untuk mengenkripsi user id dan password adalah algoritma RSA karena sulitnya memfaktorkan bilangan prima yang besar. Dalam penelitian ini membahas perancangan dan desain sistem halaman log-in pada halaman web. Perancangan dan pembuatan program menggunakan Bahasa Pemrograman PHP. Kata kunci : Algoritma RSA, Enkripsi, sistem login

1. Pendahuluan Pemanfaatan internet sebagai sarana media

informasi saat ini sudah menjangkau seluruh pelosok dunia bahkan ke desa-desa yang sangat terpencil sudah dapat menikmati informasi lewat layanan berbasis web, yang kemudian sangat berpengaruh terhadap pengamanan web sehingga tidak mudah bagi orang yang tidak bertanggung jawab untuk memasuki halaman web.

Saat ini juga terjadi berbagai macam penipuan seperti phising. Phising adalah sebuah bentuk penipuan dengan cara membuat web yang sama persis agar user yang masuk ke dalam web itu yakin bahwa web yang dikunjunginya adalah web yang sama. Hal ini mungkin tidak terlalu penting untuk web yang isinya hanya informasi umum tetapi akan menjadi sensitif ketika web yang kita kunjungi adalah web yang membutuhkan informasi penting dari diri kita. Sebagai contoh Internet Banking e-mail atau e-commerce. Hal itu bisa menyebabkan kasus kejahatan di dunia maya. Besar kemungkinan

account kita dicuri orang akibat phising ini. Oleh karena itu sistem login yang kita gunakan haruslah diamankan.

Dengan mengenkripsi sistem login, kita dapat mengamankan account user dan data yang ada pada web dari serangan hacker. Ketika seseorang ingin mengakses isi web kita maka pada web tersebut akan menampilkan halaman login sehingga tidak semua orang bisa dengan mudah mengakses web tersebut.

Algoritma yang dipilih untuk meng-enkripsi sistem login adalah algoritma RSA. Karena walaupun memang sedikit lambat namun keamanan dari RSA sudah tidak diragukan lagi. 2. Tinjauan Pustaka

2.1 Kriptografi Kriptografi (cryptography) adalah studi

mengenai metode penyandian pesan yang bertujuan untuk menghindari perolehan pesan secara tidak sah[10]. Kriptografi merupakan ilmu dan seni untuk menjaga pesan agar aman. (Cryptography is the art and science of keeping messages secure) [2]. “Crypto” berarti “secret” (rahasia) dan “graphy” berarti “writing” (tulisan). Para pelaku atau praktisi kriptografi disebut cryptographers. Sebuah algoritma kriptografik (cryptographic algorithm) disebut cipher, merupakan persamaan matematik yang digunakan untuk proses enkripsi dan dekripsi. Biasanya kedua persamaan matematik (untuk enkripsi dan dekripsi) tersebut memiliki hubungan matematis yang erat.

Tujuan utama dari kriptografi adalah kerahasiaan. Melalui kriptografi user dapat memastikan bahwa hanya recipient yang dituju yang dapat meng”unlock” (decrypt) sebuah pesan yang terenkripsi. Kebanyakan dari algoritma modern cukup aman bahwa siapa saja yang tidak memiliki kunci tidak dapat membaca pesan itu. Jadi sangat penting untuk menjaga kerahasiaan kunci.

2.2 Algoritma RSA Algoritma RSA merupakan algoritma

kriptografi kunci publik(asimetris). Ditemukan pertama kali pada tahun 1977 oleh R. Rivest, A.

Page 2: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System 6-2

Shamir, dan L. Adleman. Nama RSA sendiri diambil dari ketiga penemunya tersebut.

Sebagai algoritma kunci publik, RSA mempunyai dua kunci, yaitu kunci publik dan kunci rahasia. Kunci publik boleh diketahui oleh siapa saja, dan digunakan untuk proses enkripsi. Sedangkan kunci rahasia hanya pihak-pihak tertentu saja yang boleh mengetahuinya, dan digunakan untuk proses dekripsi.

Keamanan sandi RSA terletak pada sulitnya memfaktorkan bilangan yang besar. Sampai saat ini RSA masih dipercaya dan digunakan secara luas di internet.

Gambar 1. Skema algoritma kunci publik

Secara garis besar, proses kriptografi pada algoritma RSA terdiri dari 3 tahapan yaitu : 1. Pembangkitan Kunci

Untuk membangkitkan kedua kunci, dipilih dua buah bilangan prima yang sangat besar, p dan q. Untuk mendapatkan keamanan yang maksimum, dipilih dua bilangan p dan q yang besar. Kemudian dihitung : n = pq Kemudian dihitung : φ = (p-1) (q-1) Lalu dipilih kunci enkripsi e secara acak, sedemikian sehingga e dan (p-1)(q-1) relatif prima. Artinya e dan φ tidak memiliki faktor persekutuan bersama. Kemudian dengan algoritma Euclidean yang diperluas, dihitung kunci dekripsi d, sedemikian sehingga : ed = 1 mod (p-1)(q-1) atau ed – 1 = k (p-1)(q-1) di mana k merupakan konstanta integer. Perhatikan bahwa d dan n juga relative prima. Bilangan e dan n merupakan kunci publik, sedangkan d kunci privat. Dua bilangan prima p dan q tidak diperlukan lagi. Namun p dan q kadang diperlukan untuk mempercepat perhitungan dekripsi.

2. Proses Enkripsi Untuk mengenkripsi pesan m, terlebih dahulu pesan dibagi ke dalam blok-blok numerik yang lebih kecil dari n (dengan data biner, dipilih pangkat terbesar dari 2 yang kurang dari n). Jadi jika p dan q bilangan prima 100 digit, maka n

akan memiliki sekitar 200 buah digit dari setiap blok pesan m, seharusnya kurang dari 200 digit panjangnya. Pesan yang terenkripsi (c), akan tersusun dari blok-blok (c) yang hampir sama panjangnya. Rumus enkripsinya adalah: c = me mod n

3. Proses Dekripsi Setelah menerima pesan yang sudah terenkripsi maka penerima pesan akan melakukan proses dekripsi pesan dengan cara : m = cd mod n

2.3 Sistem Login Login adalah proses untuk mengakses

komputer dengan memasukkan identitas dari account pengguna dan kata sandi guna mendapatkan hak akses menggunakan sumber daya komputer tujuan. Untuk melakukan log masuk ke sistem biasanya membutuhkan account pengguna yang digunakan sebagai identitas berupa runtutan karakter yang secara unik merujuk ke pengguna tertentu, dan kata sandi yang merupakan runtutan karakter berupa kunci yang dijaga kerahasiaannya terhadap orang lain.

Sistem login adalah sebuah form yang digunakan untuk mengakses lebih jauh sebuah web. Sistem login ini akan menyimpan semua data-data dari pengguna yang diinputkan ketika registrasi sehingga ketika pengguna ingin mengakses halaman web tidak perlu melakukan registrasi lagi.

3. Analisa dan Perancangan Sistem

Pada dasarnya Algoritma RSA ini dibuat berdasarkan fakta bahwa dalam perhitungan dengan komputer, untuk menemukan suatu bilangan prima yang besar sangat mudah, namun untuk mencari faktor dari perkalian dua bilangan prima yang besar sangat sulit, bahkan hampir tidak mungkin. Perkalian dua bilangan prima ini digunakan untuk membentuk kunci publik dan kunci privat.

Algortima RSA memiliki dua proses, yaitu enkripsi dan dekripsi. Pembentukan kunci dilakukan oleh penerima, kunci yang dibentuk penerima adalah kunci publik dan kunci privat. Setelah kunci terbentuk maka penerima mengirimkan kunci publik ke pengirim, sedangkan kunci privat tetap disimpan penerima. Setelah kunci publik diterima pengirim, maka pengirim dapat meng-enkripsikan teks asli (plaintext). Hasil enkripsi teks asli tersebut adalah ciphertext yang kemudian dikirim kembali ke penerima untuk didekripsikan.

Page 3: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System  6-3

Gambar 3.1 Proses Algoritma RSA

Untuk mengetahui lebih rinci tentang algoritma RSA, berikut ini ada beberapa kasus sebagai contoh. Plaintext = M = HARI INI M diubah ke dalam ASCII = 7265827332737873 Pembentukan kunci : Misalkan p = 47 dan q = 71 (p dan q harus bilangan prima) di mana p dan q dipilih secara acak. Hitung : n = p.q = 47.71 = 3337 Maka Ф(n) = (p-1)(q-1) = 3220 Pilih kunci publik e = 79 (relatif prima terhadap 3220 karena pembagi terbesar bersamanya adalah 1). Hitung nilai cipher dengan menggunakan kunci publik e : c1 = m1

e mod n = 72679 mod 3337 = 215 c2 = m2

e mod n = 58279 mod 3337 = 776 c3 = m3

e mod n = 73379 mod 3337 = 1743 c4 = m4

e mod n = 27379 mod 3337 = 933 c5 = m5

e mod n = 78779 mod 3337 = 1731 c6 = m6

e mod n = 00379 mod 3337 = 158 Selanjutnya bentuk kunci privat : e.d = 1 (mod ф (n)) d = 1 (mod ф (n )) = 1019 m Proses enkripsi : Pecah M menjadi blok yang lebih kecil : m1 = 726, m2 = 582, m3 = 733, m4 = 273, m5 = 787, m6 = 003 Jadi ciphertext yang dihasilkan adalah 215 776 1743 933 1731 158 Proses dekripsi : Ubahlah ciphertext dengan menggunakan kunci privat m1 = c1

d mod n = 2151019 mod 3337 = 726 m2 = c2

d mod n = 7761019 mod 3337 = 582 m3 = c3

d mod n = 17431019 mod 3337 = 733 m4 = c4

d mod n = 9331019 mod 3337 = 273 m5 = c5d mod n = 17311019 mod 3337 = 787

m6 = c6d mod n = 1581019 mod 3337 = 3

Jadi plaintext yang dihasilkan = 726 582 733 273 582 3 = HARI INI

Perancangn aplikasi ini terdapat beberapa bagian penting dalam penerapan atau analisis sebuah password dengan metode RSA, bagian-bagian yang dimaksud ialah register dan login. Sebelum user dapat menggunakan passwordnya maka dia akan melakukan registrasi terlebih dahulu. Setelah user selesai melakukan registrasi, maka user tersebut baru dapat melakukan login.

Data yang inputkan user kemudian oleh sistem akan diproses untuk dienkripsi dengan menggunakan algoritma RSA. Data-data tersebut akan tersimpan ke dalam sebuah database dimana data yang tersimpan ke dalam database bukan data yang sebenarnya melainkan data yang sudah dienkripsi sehingga menyulitkan penyerang untuk mendapatkan data user yang sebenarnya. Perancangan aplikasi ini dapat dilihat pada diagram alir berikut ini.

Gambar 3.2 Diagram Alir Sistem Login

Page 4: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System 6-4

Rancangan aplikasi sistem login ini terdiri beberapa form, yaitu form login, form register dan form menu. Form login berguna untuk user melakukan login. Form register berguna untuk melakukan registrasi. Form menu adalah halaman yang tampil setelah user berhasil melakukan login.

Gambar 3.3 Form Login

4. Implementasi Perancangan aplikasi sistem login ini

menggunakan bahasa pemrogramana PHP. Mengenkripsi sistem login ini untuk meminimalkan pencurian-pencurian yang dapat dilakukan oleh hacker maupun cracker sehingga sebuah web lebih terjamin keamanannya.

Hasil perancangan ini terdapat beberapa halaman web. Pada halaman utama terdapat 2 buah link, yaitu login dan register. Login berguna untuk melakukan proses login agar dapat menjelajahi web, dan register berguna untuk melakukan registrasi user yang belum terdaftar di dalam web ini.

Gambar 4.1 Form Registrasi

Pada proses registrasi ini, dicontohkan dengan

menginputkan name user husni, password husni, repassword husni, NIM 12378, Nama Lengkap husni lubis, alamat medan, tempat lahir medan,

tanggal lahir 1 mei 1982. Apabila sukses melakukan registrasi maka semua input langsung di-enkripsi oleh sistem dan disimpan dalam sebuah file. Proses enkripsi tidak diperlihatkan oleh sistem. Apabila proses enkripsi diperlihatkan, akan mempermudah para hacker dan cracker untuk mencuri data-data.

Gambar 4.2 Hasil Enkripsi

5. Kesimpulan Dengan mengenkripsi sistem login, keamanan

suatu web lebih terjamin. Walaupun para pencuri mendapatkan data-data user yang terenkripsi, para pencuri tersebut tidak bisa menggunakannya langsung karena pencuri tersebut harus mendekripsikannya terlebih dahulu agar data-data yang didapatkan bisa digunakan.

Referensi [1]. Alan G.Konheim (2007), “Computer Security

and Cryptograhy”, New Jersey, John Wiley & Sons, Inc.

[2]. Budi Raharjo (2005), “Keamanan Sistem Informasi Berbasis Internet”. PT Insan Infonesia - Bandung & PT INDOCISC – Jakarta.

[3]. Dony Ariyus (2008), “Pengantar Ilmu Kriptografi, Teori, Analisis, dan Implementasi”, Yogyakarta, Andi Offset.

[4]. Steve Burnett and Stephen Paine, 2001, “RSA Security’s Official Guide to Cryptography”, McGraw-Hill Companies, Inc.

[5] Wiwit Siswoutomo (2007), “Fundamental of PHP Security”, Jakarta, Elex Media Komputindo.

Page 5: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System  6-5

Steganografi Menggunakan Metode Least Significant Bit (LSB) Pada

Aplikasi MMS (Multimedia Message Service)

Lucyana Angel Christine, Wiwin Styorini, Dini Nurmalasari

Program Studi Teknik Telekomunikasi Politeknik Caltex Riau Email: [email protected], [email protected], [email protected]

Abstrak Pengambilan informasi secara ilegal sangat

sering terjadi. Oleh karena itu, banyak upaya yang dilakukan untuk melindungi informasi tersebut. Salah satu upaya yang dilakukan adalah steganografi. Steganografi merupakan suatu metode untuk menyimpan pesan ke dalam pesan lainnya agar tidak dapat dideteksi oleh pihak asing. Salah satu metode yang digunakan dalam steganografi adalah metode LSB ( Least Significant Bit) yang bekerja dengan menyisipkan pesan rahasia dalam bit – bit LSB pada media penampungnya. Aplikasi ini dibangun dengan menggunakan Netbeans 6. Aplikasi ini dapat menyimpan pesan rahasia kedalam Multimedia Messaging Service (MMS), dengan menggunakan metode LSB. MMS yang sudah ditumpangi pesan rahasia dapat dikirimkan ke user lain, dan hanya user yang mempunyai password yang bisa mengekstrak MMS dan pesan rahasia tersebut.

Kata kunci : Steganografi , Least Significant Bit, Netbeans 6, MMS

1. Pendahuluan

Seiring dengan perkembangan teknologi informasi, ada banyak dampak yang ditimbulkan, baik positif maupun negative. Untuk dampak positifnya manusia sangat mudah dan cepat mendapatkan informasi dari berbagai belahan bumi, sedangkan dampak negatifnya , salah satunya adalah banyaknya penyadap berkeliaran didunia informasi , sehingga pengambilan informasi secara ilegal sangat sering terjadi. Oleh karena itu, banyak upaya yang dilakukan untuk melindungi informasi tersebut. Salah satunya adalah teknologi steganografi.

Steganografi merupakan suatu metode untuk menyimpan pesan ke dalam pesan lainnya agar tidak dapat dideteksi oleh pihak asing. Teknik steganografi memiliki banyak metode, salah satunya adalah metode Least Significant Bit.

Metode ini banyak digunakan karena merupakan metode yang lebih sederhana. Metode LSB ini akan mengganti bit-bit yang tidak significant dan kemudian menyisipkan bit-bit tersebut dengan informasi yang akan dikirim.

Pada penelitian ini, penulis akan membahas teknik steganografi pada aplikasi Multimedia Message Service (MMS ) dengan menggunakan metode LSB, wadah penampungnya adalah citra digital karena adanya batasan kepekaan manusia dalam visualisasi. Hasil keluaran dari steganografi ini memiliki bentuk persepsi yang sama dengan yang aslinya, tentunya persepsi disini sebatas kemampuan indera manusia bukan oleh komputer atau alat pengolah citra digital. Pada penelitian ini penulis menggunakan software Netbeans 6 karena software ini memiliki compiler dan dapat diaplikasikan pada handphone dengan teknologi J2ME.

2. Tinjauan Pustaka

2.1 Steganografi Steganografi adalah seni dan ilmu menulis

pesan tersembunyi atau menyembunyikan pesan dengan suatu cara sehingga selain pengirim dan penerima, tidak ada seorangpun yang mengetahui atau menyadari bahwa ada suatu pesan rahasia. Kata "steganografi" berasal dari bahasa Yunani steganos, yang artinya “tersembunyi atau terselubung”, dan graphein, “menulis”. Tujuan dari steganografi adalah merahasiakan atau menyembunyikan keberadaan dari sebuah pesan tersembunyi atau sebuah informasi.

Pada umumnya, pesan steganografi muncul dengan rupa lain seperti gambar, artikel, daftar belanjaan, atau pesan-pesan lainnya. Pesan yang tertulis ini merupakan tulisan yang menyelubungi atau menutupi. Contohnya, suatu pesan bisa disembunyikan dengan menggunakan tinta yang tidak terlihat di antara garis-garis yang kelihatan.(El Said, 2010)

Page 6: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System 6-6

Teknik steganografi meliputi banyak sekali metode komunikasi untuk menyembunyikan pesan rahasia (teks atau gambar) di dalam berkas-berkas lain yang mengandung teks, image, bahkan audio tanpa menunjukkan ciri-ciri perubahan yang nyata atau terlihat dalam kualitas dan struktur dari berkas semula. Metode ini termasuk tinta yang tidak tampak, microdots, pengaturan kata, tanda tangan digital, jalur tersembunyi dan komunikasi spektrum lebar.

Format yang biasa digunakan di antaranya: a. Format image : bitmap (bmp), gif, pcx, jpeg, dll. b. Format audio : wav, voc, mp3, dll. c. Format lain : teks file, html, pdf, dll.

Kelebihan steganografi jika dibandingkan dengan kriptografi adalah pesan-pesannya tidak menarik perhatian orang lain. Pesan-pesan berkode dalam kriptografi yang tidak disembunyikan, walaupun tidak dapat dipecahkan, akan menimbulkan kecurigaan. Seringkali, steganografi dan kriptografi digunakan secara bersamaan untuk menjamin keamanan pesan rahasianya.

Gambar 2.1 Steganografi

Sebuah pesan steganografi (plaintext), biasanya pertama-tama dienkripsikan dengan beberapa arti tradisional, yang menghasilkan ciphertext. Kemudian, covertext dimodifikasi dalam beberapa cara sehingga berisi ciphertext, yang menghasilkan stegotext. Contohnya, ukuran huruf, ukuran spasi, jenis huruf, atau karakteristik covertext lainnya dapat dimanipulasi untuk membawa pesan tersembunyi; hanya penerima (yang harus mengetahui teknik yang digunakan) dapat membuka pesan dan mendekripsikannya. Terdapat beberapa istilah yang berkaitan dengan steganografi: 1. Hiddentext atau embedded message: pesan yang

disembunyikan. 2. Covertext atau cover-object: pesan yang

digunakan untuk menyembunyikan embedded message.

3. Stegotext atau stego-object: pesan yang sudah berisi embedded message

Gambar 2.2 Proses Steganografi

Di dalam Steganografi citra digital ini, hidden text atau embedded message yang dimaksudkan adalah adalah teks yang akan disisipkan ke dalam covertext atau coverobject yaitu file citra digital yang digunakan sebagai media penampung pesan yang akan disisipkan. Dari hasil encoding atau embedding pesan kedalam file citra akan dihasilkan stegotext atau stego-object yang merupakan file citra yang berisikan pesan embedding.

Penyisipan pesan ke dalam media covertext dinamakan encoding, sedangkan ekstraksi pesan dari stegotext dinamakan decoding. Kedua proses ini memerlukan kunci rahasia (stegokey) agar hanya pihak yang berhak saja yang dapat melakukan penyisipan dan ekstraksi pesan, seperti yang terlihat pada gambar diatas.

2.2 Metode LSB Metode LSB merupakan salah satu metode

yang paling sederhana.Bit yang sesuai untuk ditukar adalah bit LSB karena perubahan pada daerah tersebut hanya akan menyebabkan nilai byte menjadi lebih tinggi 1 angka atau lebih rendah 1 angka dari nilai sebelumnya.

2.3 MMS Multimedia Message Service (MMS) adalah

sebuah standar layanan pesan telepon yang memungkinkan untuk mengirim pesan yang mengandung objek multimedia, seperti gambar, audio, video, dan rich text. Layanan ini berbeda dengan SMS (Short Message Service) yang hanya dapat mengirim pesan teks saja.

2.4 J2ME (Java 2 Micro Edition ) J2ME adalah teknologi Java yang diperuntukkan perangkat-perangkat kecil consumer

Page 7: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System  6-7

device , terutama wireless. Teknologi Java mungkin merupakan satu-satunya cara memprogram beberapa perangkat, berbagi logic antara perangkat dan server, pengantaran aplikasi secara dinamis, program yang kompak, lingkungan pengembangan yang aman dan cepat. J2ME memungkinkan perangkat lunak dapat di-download perangkat sekaligus memungkinkan layanan yang dapat disesuaikan di beragam perangkat.

3 Perancangan

3.1 Arsitektur Umum Pada tahap ini, akan dilakukan penggambaran

tentang proses perancangan yang berupa flowchart dan usecase diagram. Perancangan yang akan dibuat secara umum adalah sebagai berikut:

Gambar 3.1 Arsitektur Umum

Ada dua client yang dilibatkan dalam perancangan ini yaitu client A dan client B sebagai pengirim dan penerima MMS. Client A mengirimkan MMS yang sudah ditumpangi dengan pesan tersembunyi. Pengirim dan penerima harus memiliki kunci yang sama. Kunci yang digunakan adalah berupa password tertentu, dimana fungsinya untuk menjaga keamanan data yang dikirimkan agar pesan yang disembunyikan tidak dibaca oleh pihak yang tidak berkepentingan. Setelah MMS diterima pada client B, maka pada client B memasukkan stegokey agar pesan yang disembunyikankan tersebut dapat dibaca. Sebelum pengiriman dan pembacaan MMS dilakukan proses Encoding dan decoding.

3.2 Flowchart Aplikasi 3.2.1 Flowchart Encoding Steganografi

Perancangan encoding ini dilakukan sebelum MMS dikirmkan ke penerima. Adapun flowchart untuk pengiriman MMS tersebut adalah:

Gambar 3.2 Flowchart encoding Steganografi

Page 8: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System 6-8

3.2.2 Flowchart Decoding Steganografi

Decoding dilakukan ketika penerima telah menerima MMS tersebut. Adapun proses decoding steganografi adalah sebagai berikut:

Gambar 3.3 Flowchart decoding steganografi

3.3 Prototipe 1. Tampilan Menu Utama

Gambar 3.4 Tampilan Menu Utama

2. Tampilan Send

Gambar 3.5 Tampilan Send

3. Tampilan awal ketika user memilih Read

Gambar 3.6 Tampilan awal ketika user memilih

Read

4. Tampilan awal ketika user memilih menu utama Help

Gambar 3.7 Tampilan Help

4. Hasil dan Pembahasan

4. 1 Pembahasan Aplikasi ini dibuat dengan menggunakan

Netbeans 6.8 dengan emulator Wireless Toolkit 2.5.2 for CLDC dengan spesifikasi MIDP 2.0 dan CLDC 1.1. Aplikasi ini memiliki menu Send MMS, Inbox, Outbox, dan Help. Menu SendMMS ini merupakan menu yang digunakan oleh user untuk membuat pesan yang disembunyikan lalu mengirimkannya ke nomor tujuan. Menu Inbox merupakan suatu menu yang digunakan untuk menampung pesan yang masuk dari pengirim. Menu Outbox merupakan menu yang berguna untuk menampung pesan yang terkirim ke penerima. Menu Help merupakan menu yang berfungsi sebagai informasi dari aplikasi ini.

Pada data pengujian gambar yang digunakan

seperti pada gambar 4.1

Page 9: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System  6-9

Gambar 4.1 Gambar Awal Tipe dari gambar diatas adalah JPEG dengan

ukuran gambar 2.07Kb. gambar diatas merupakan gambar yang belum disisipkan pesan. Gambar yang sudah disisipkan pesan adalah sebagai berikut:

Gambar 4.2 Gambar Yang Sudah Disisipkan Pesan

Jika dilihat dengan sekilas maka tidak terjadi perbedaan yang sangat mencolok ketika gambar disisipkan pesan. Untuk menyisipkan pesan tersebut digunakan metode LSB yang mana bit-bit LSB pada gambar diganti dengan pesan yang disembunyikan.

Untuk megetahui proses LSB secara detail dapat dilihat pada gambar dibawah ini.

Gambar 4.3 Pixel Yang Belum Mengalami

Perubahan

Ini merupakan gambaran yang belum mengalami perubahan. Dan dan dari gambar diatas dapat diketahui urutan – urutan perubahan bit pada dua buah pixel. Misalkan pada pengujian disisipkan kalimat “ hello apa kabar ?? “. Misalkan karakter ‘h’ yang kita sisipkan dengan kode biner 01101000, maka nilai pixel pertama dan nilai pixel kedua menjadi: Data biner: Piksel 1 : 10101110 11111111 10001110 Piksel 2 : 10101110 11111110 10001001

Dari data diatas dapat dilihat bahwa dari 2 piksel yang digunakan dapat menyisipkan 1 karakter yitu karaker ‘ h ‘.

4.2 Hasil Pengujian

4.2.1 Pengujian Tampilan Utama

Gambar 4.4 Tampilan awal

Gambar diatas merupakan tampilan awal dari aplikasi steganografi. Ketika user mulai membuka aplikasi ini maka yang akan muncul adalah gambar 4.4.

Gambar 4.5 Tampilan Menu

Pada gambar 4.5 ini merupakan tampilan menu dari aplikasi ini. User dapat memilih menu Send MMS,Inbox,Outbox, dan Help.

4.2.2 Pengujian Send MMS

Pada pengujian ini user pertama kali harus memasukkan nomor tujuan. Seperti gambar dibawah ini :

Gambar 4.6 Tampilan Nomor Tujuan

Jika user tidak memasukkan nomor tujuan maka akan muncul tampilan seperti gambar dibawah ini:

Page 10: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System 6-10

Gambar 4.7 Tampilan Jika Tidak Memasukkan

Nomor Tujuan

Jika user sudah menginputkan nomor tujuan maka akan muncul tampilan message yang merupakan informasi yang akan kita sembunyikan. Dibawah ini merupakan tampilan message :

Gambar 4.8 Tampilan Message

Jika user sudah menginputkan pesan yang akan disembunyikan maka user dapat menekan tombol “Lanjut”. User akan memilih gambar yang digunakan untuk menyembunyikan pesan tersebut.

Gambar 4.9 Tampilan Pilihan Gambar

Gambar 4.10 Tampilan Preview Gambar

Setelah itu jika user menekan tombol “Lanjut” maka user akan diminta untuk memasukkan kunci. Kunci ini digunakan nantinya oleh user yang lain untuk membaca pesan yang disembunyikan dalam gambar tersebut. Dibawah ini merupakan tampilannya:

Gambar 4.11 Tampilan Kunci

Jika user tidak memasukkan kunci maka akan muncul seperti gambar dibawah ini:

Gambar 4.12 Tampilan Jika Tidak Memasukkan

Kunci

Kemudian jika user menekan tombol “embed” maka akan muncul gambar dibawah ini:

Gambar 4.13 Tampilan Embedding

Kemudian user dapat mengirimkan MMS tersebut. Dibawah ini merupakan gambar tampilan proses pengiriman MMS:

Gambar 4.14 Tampilan Sending

4.2.3 Pengujian Inbox

Gambar dibawah ini merupakan tampilan awal ketika ada MMS masuk.

Page 11: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System  6-11

Gambar 4.15 Tampilan Awal Inbox

Setelah itu user dapat melihat pada menu Inbox. Gambar dibawah ini merupakan tampilan inbox:

Gambar 4.16 Tampilan MMS Yang Masuk

Kemudian user dapat membuka detail dari pesan tersebut dengan menekan tombol “Detail”. Gambar dibawah ini menunjukkan detail dari MMS tersebut:

Gambar 4.17Tampilan MMS

Untuk membuka pesan tersembunyi maka user dapat menekan tombol “Menu” kemudian pilih menu “Lanjut”.

Gambar 4.18 Tampilan Untuk Membuka Pesan

Yang Disembunyikan

Setelah user menekan tombol “Lanjut” maka user akan diminta memasukkan kunci. Kunci yang harus dimasukkan harus sama jika tidak sama maka pesan yang diekstrak tidak sesuai dengan yang telah diinputkan.

Gambar 4.19 Tampilan Input Kunci

Setelah itu user dapat menekan tombol “Extract”.Gambar dibawah ini merupakan tampilan ketika user salah memasukkan kunci.

Gambar 4.20 Tampilan Extract Message Dengan

Kunci yang Salah

Jika user benar menginputkan kunci nya maka akan muncul seperti gambar dibawah ini:

Gambar 4.21 Tampilan Extract MMS

Jika kunci yang dimasukkan benar maka user

dapat menemukan pesan rahasia yang sesuai dengan yang dikirimkan.

4.2.4 Pengujian Outbox

Untuk melihat tampilan outbox ini, maka pada pilihan menu user dapat menekan menu “Outbox” seperti pada gambar dibawah ini:

Page 12: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System 6-12

Gambar 4.22 Tampilan Menu

Ketika user memilih menu Outbox maka muncul gambar seperti dibawah ini:

Gambar 4.23 Tampilan Outbox

Ketika user menekan tombol “Detail” maka user akan melihat pesan yang terkirim. Hal ini dapat dilihat pada gambar 4.23, dimana ini merupakan pesan terkirim yang dikirimkan ke nomor tujuan 5550001.

Gambar 4.24 Tampilan Pesan Yang Terkirim

4.1.5 Pengujian Help Untuk masuk ke tampilan help maka user

dapat memilih menu “Help” pada menu utama seperti gambar 4.24.

Gambar 4.25 Tampilan Menu

Ketika user memilih menu Help maka akan muncul informasi tentang aplikasi nya. Gambar 4.26 merupakan tampilan informasi dari aplikasi ini.

Gambar 4.26 Tampilan Help

5. Kesimpulan dan Saran

5.1 Kesimpulan 1. Aplikasi Steganografi MMS ini dapat

mengirimkan dan menerima sebuah MMS sekaligus memiliki fasilitas untuk mengAmankan atau menyembunyikan informasi dari pesan yang dikirimkan.

2. Metode LSB merupakan metode yang paling sederhana dalam penyembunyian pesan dan tidak merubah kualitas gambar.

3. Gambar yang sudah disisipkan pesan tidak mengalami penurunan kualitas gambar.

5.2 Saran Saran untuk kedepannya steganografi ini dapat

dikembangkan melalui media lain dan dengan metode yang bervariasi.

Page 13: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System  6-13

Daftar Pustaka 1. Anang, Michael. (2009). Steganografi.

[Online].Tersedia: http://michaelanang24.blogspot.com/ [20 November 2010].

2. Frinando,Hafid. (2010). Aplikasi Steganografi Pada Citra Menggunakan Metode Least Significant Bit Berbasis Image Viewer.Program Studi Teknik Informatika.Politeknik Caltex Riau

3. El said, Fairuz.(2008).Keamanan Sistem Informasi.[Online). Tersedia : http://fairuzelsaid.wordpress.com/kemanan-sistem-informasistenogangrafi/ [5 Desember 2010].

4. Kurnia, Asep. Arsip Untuk Steganografi. (2008). [Online]. Tersedia http://askoeyy.wordpress.com/category/jaringan-komputer/steganografi/ [ 15 Desember 2010].

5. M.Shalahuddin. (2008). Pemrograman J2ME. Bandung : Penerbit Informatika.

6. M. Istiadi. (2008). Aplikasi Handphone. [Online]. Tersedia http://handphonemaniax.110mb.com/aplikasi%20handphone.htm#sms [ 10 Januari 2011 ].

7. Munir, Rinaldi. (2004). IF5054 Kriptografi Steganografi dan Watermarking. Program Studi Teknik Informatika. Institut Teknologi Bandung.

8. Nazaret, Ralph. (2008). Penyembunyian Pesan ( Steganografi ) Pada Image. [Online].Tersedia: http://www.google.co.id/PENYEMBUNYIAN+PESAN+(STEGANOGRAFI)/ [9 Januari 2010]

Page 14: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System 6-14

Page 15: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System  6-15

Aplikasi Pengaman Pertukaran SMS pada Perangkat Android dengan Metode RSA

Hendra, Sukiman

Teknik Informatika, STMIK IBBI Medan [email protected], [email protected]

Abstrak Pengiriman pesan dengan menggunakan Short

Message Service (SMS) merupakan suatu layanan yang sangat populer dikalangan pemakaian perangkat bergerak di Indonesia. Pengiriman SMS dari satu perangkat ke perangkat lain membutuhkan perantara SMS Center (SMSC) untuk menyimpan dan menyampaikan SMS ke tujuan ketika perangkat tujuan tersedia. Teknologi SMS sendirinya memiliki kelemahan yaitu yaitu enkripsi hanya dilakukan antara Mobile Station (MS) dan Base Transceiver Station (BTS) sedangkan pada bagian lain terbuka sama sekali, sehingga memungkinkan serangan berupa penyadapan maupun modifikasi. Pada bagian lain juga dimungkinkan terjadinya serangan SMS spoofing dengan menggunakan SMSC simulator. Makalah ini membahas perancangan aplikasi pengaman pertukaran SMS pada perangkat Android dengan metode RSA.

1. Pendahuluan SMS merupakan salah satu layanan yang

populer pada telepon bergerak, dan digunakan oleh berbagai kalangan baik hanya sekedar untuk membuat pesan pribadi maupun oleh institusi bisnis untuk melakukan transaksi seperti pemesanan barang, konfirmasi pengiriman, sampai kepada konfirmasi pembayaran. Layanan SMS juga digunakan pada transaksi perbankan yaitu digunakan untuk pengiriman informasi saldo dan PIN untuk transaksi e-Banking.

SMS sendirinya memiliki berbagai kelemahan yaitu SMS dibangun dengan sistem dan program yang sama, dan SMS sendiri bisa melakukan roaming jaringan setempat hingga ke jaringan asing sehingga dimungkinkan SMS spoofing dalam bentuk penyamaran atau manipulasi informasi seperi alamat atau data lainnya yang menyerupai user pada umumnya. Kelemahan dari SMS lainnya adalah isi SMS yang dikirim terbuka di sistim penyedia jasa maupun pegawainya.

Pada makalah ini peneliti ingin menawarkan suatu solusi pengamanan SMS yang dikirim antar perangkat Android dengan menggunakan metode enkripsi algoritma RSA yang memiliki keunggulan yaitu tidak membutuhkan pertukaran secret key dan dapat menjaga keaslian dari pengirim SMS.

Permasalahan pada penelitian ini adalah bagaimana rancangan aplikasi pengirim dan penerima SMS yang dapat meningkatkan aspek confidentiality, integrity, authenticity dan non-repudiation pada perangkat mobile berbasis Android.

Secara umum, tujuan dari penelitian ini adalah mendapatkan suatu rancangan aplikasi pengirim dan penerima SMS yang meningkatkan kesulitan bagi cracker untuk membaca, mengubah maupun membuat SMS spoofing pada lintasan jalur pengiriman sms antara dua perangkat berbasis Android.

Adapun pembatasan masalah yang dilakukan pada rancangan aplikasi adalah aplikasi hanya beroperasi pada Android 2.2 keatas, dan menggunakan metode RSA dengan ukuran key 688 bit, dan panjang pesan yang dapat dikirim per-sms adalah maksimum 86 karakter.

2. Metode

2.1. Android Android adalah sebuah tumpukan software

untuk peralatan bergerak yang terdiri dari sistim operasi, middleware, dan aplikasi kunci lainnya. Platform Android merupakan produk dari Open Handset Alliance (OHA) yang merupakan suatu kelompok organisasi yang berkolaborasi untuk membangun mobile phone yang lebih baik. Kelompok ini dipimpin oleh Google, operator mobile, pabrikan, pabrikan komponen, dan software provider, serta perusahaan marketing[1]

Suatu aplikasi Android dapat berupa salah satu dari empat komponen sebagai berikut ini : 1. Activities, merupakan suatu aplikasi yang

memiliki UI yang diimplementasikan dalam suatu activity, ketika pemakai memilih sebuah

Page 16: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System 6-16

aplikasi dari home screen atau application launcher, suatu activity utama diaktifkan.

2. Services, suatu layanan digunakan untuk aplikasi yang membutuhkan existensi untuk jangka waktu yang lama, seperti suatu monitoring jaringan, atau aplikasi pemeriksaan update.

3. Content Providers, suatu content provider bertugas untuk mengatur akses ke data tetap, seperti database SQLite, jika aplikasi anda sangat sederhana, anda tidak perlu membuat content provider, jika anda membuat aplikasi yang menyimpan data secara permanen, atau sesuatu yang membuat data tersedia untuk banyak aktivitas maupun aplikasi lainnya, maka suatu content provider dibutuhkan.

4. Broadcast Receivers, suatu aplikasi Android yang mungkin mengaktifkan proses dari suatu elemen data atau tanggapan respon terhadap suatu kejadian, seperti menerima suatu pesan teks.

2.2. Arsitektur SMS Suatu pesan sms dikirim melalui kanal sinyal

GSM antara Mobile Station (MS) dan Base Transceiver Station (BTS). Pesan ini mengalir seperti panggilan normalnya, tetapi mereka diarahkan dari MSC ke suatu Short Message Service Center (SMSC). SMSC akan menyimpan pesan tersebut sampai dapat dikirim kepada penerima ataupun sampai kepada validitas waktu dari pesan telah terlewati. Penerima dari pesan ini dapat berupa pemakai MS maupun SMS gateway. SMS gateway adalah suatu server yang terkoneksi kepada satu atau lebih SMSC untuk menyediakan aplikasi SMS kepada pemakai MS. Aplikasi meliputi nada dering, icon, hiburan, layanan perbankan, dan layanan bermanfaat lainnya sebagaimana ditunjukan pada Gambar 1.

Gambar 1. Arsitektur SMS[3]

2.3. Keamanan SMS Dua aspek penting dari suatu entitas yang

menggunakan teknologi SMS untuk pertukaran data pribadi maupun bisnis adalah sebagai berikut: 1. SMS bukanlah suatu lingkungan yang aman.

2. Pelanggaran keamanan sering terjadi lebih mudah pada konsentrasi terhadap manusia dari pada teknologi.[3] Isi dari pesan SMS adalah tidak terenkripsi

pada sistim operator, sehingga karyawan maupun penyusup pada sistim operator dapat dengan gampang melakukan penyadapan maupun perubahan, sehingga SMS bukankah suatu teknologi yang cocok untuk komunikasi yang membutuhkan keamanan. Kebanyakan pemakai tidak menyadari bahwa begitu mudahnya pembacaan isi SMS oleh karyawan operator.

2.4. Serangan pada SMS Koneksi antara SMSC dan SMS gateway

adalah bukan merupakan bagian dari standard GSM, dimana dimungkinkan pemakaian protokol seperti TCP/IP dan X.25 untuk komunikasi antara SMSC dan gateway, kemudian koneksi tersebut juga bukanlah merupakan bagian dari jaringan GSM, tetapi merupakan jaringan atanra operator dengan penyedia konten, atau bahkan dengan internet. Keaman pada jaringan ini sangat longgar proteksinya, sehingga dapat dengan gampang menjadi sasaran cracker karena isi dari pesan dikirim dalam bentuk plaintext, walaupun pada gateway telah memiliki authentikasi, tetapi kebanyakan menggunakan protokol dengan plaintext yang mengandung informasi nama login dan password. Serangan man-in-the-middle attack dapat saja dilakukan walaupun tidak gampang dilakukan karena biasanya gateway dan SMSC berada dibelakang firewall. Permasalahan lainnya yang perlu diketahui adalah dimungkinkan penyerang untuk membuat suatu gateway dimana dia berpura-pura menjadi gateway yang sebenarnya. Gateway palsu ini kemudian dapat mengirim segala jenis sms kepada pemakai MS melalui SMSC tersebut dengan memanipulasi informasi pengirim pesan pada field tertentu pada SMSC protokol, dengan teknik spoofing ini dimungkinkan untuk memanipulasi Mobile Station International ISDN Number (MSISDN) sehingga seakan-akan pesan tersebut datang dari telepon bergerak tertentu. Keberhasilan teknik ini tergantung kepada implementasi pada SMSC, karena SMSC dapat juga cukup cerdas untuk memeriksa keabsahan pengirim dan memblokir pesan tersebut, karena berasal dari suatu gateway yang bukan merupakan suatu telepon bergerak, dan hal ini penyerang harus membuat suatu SMSC simulator yang berpura-pura menjadi suatu SMSC yang sebenarnya sebagaimana ditunjukan Gambar 2.

Page 17: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System  6-17

Gambar 2, Teknik Spoofing SMS[6]

Pada gambar 2 dapat dijelaskan bahwa sms

dikirim kepada SMS-C dengan memanipulasi MSISDN seakan-akan berasal dari pemakai akhir dari PLMN A, dan mengirim SMS kepada pemakai akhir pada PLMN B.

2.5. Algoritma RSA

Algoritma RSA mengambil nama dari Ron Rivest, Adi Shamir dan Len Adleman yang menciptakan metode ini pada tahuin 1977. Teknik dasarnya ditemukan pertama kali pada tahun 1973 oleh Clifford Cock dari CESG (bargian dari British GCHQ) tetapi dirahasiakan samapi tahun 1977. Paten dimiliki oleh RSA Labs dan telah expired[4].

RSA merupakan sistim kriptografi public key yang digunakan secara luas didunia yang memiliki keunggulan yaitu mendukung kepada keamanan informasi dan tanda tangan digital[4]. RSA digunakan untuk enkripsi suatu berita tanpa membutuhkan pertukaran secret key. Alis dapat mengirim pesan tersandi kepada Bob tanpa perlu pertukaran secret key sebelumnya. Alis cukup menggunakan kunci publik milik Bob untuk proses enkrispi berita menjadi ciphertext, dan Bob menggunakan kunci privat yang hanya diketahuinya untuk proses dekripsi ciphertext tersebut menjadi plaintext. RSA juga dapat digunakan untuk suatu tandatangan digital pada berita, dimana Alis menandatangani pesan dengan menggunakan kunci privat-nya dan Bob dapat memeriksanya dengan menggunakan kunci publik milik Alis, jadi RSA dapat digunakan untuk enkripsi kunci publik dan tandatangan digital, dan memiliki keamanan yang didasarkan pada faktorisasi bilangan integer besar[4].

Berikut ini adalah algoritma untuk pembuatan key: 1. Hasilkan dua bilangan prima besar secara

random, p dan q, dengan ukuran kira-kira sama seperti bahwa produk mereka n = pq adalah panjang bit yang diperlukan, misalnya 1024 bit.

2. Hitung n = pq dan (phi) φ = (p-1)(q-1). 3. Pilih sebuah bilangan bulat e, 1 < e < phi,

dimana gcd(e, phi) = 1.

4. Hitung eksponen rahasia d, 1 < d < phi, sehingga ed ≡ 1 (mod phi).

5. Publik key adalah (n, e) dan private key (d, p, q). Simpan semua nilai dari d, p, q dan phi secara rahasia, n dikenal sebagai modulus, e dikenal sebagai eksponen public, dan d dikenal sebagai eksponen rahasaia atau eksponen dekripsi.[4]

2.6. Enkripsi

Misalnya Alis ingin mengirim sebuah pesan m kepada Bob. Alis membuat ciphertext c dengan eksponensialisasi: c = me mod n, dimana e dan n adalah kunci publik dari Bobo. Dia mengirim c kepada Bob. Untuk melakukan dekripsi, Bob juga melakukan eksponensialisasi: m = cd mod n; keterkaitan antara e dan d adalah memastikan bahwa Bob dengan benar melakukan recovery m. Karena hanya Bob mengetahui d, maka hanya Bob yang dapat melakukan dekripsi terhadap pesan tersebut[4]. 2.7. Tanda Tangan Digital

Misalnya Alis ingin mengirim sebuah pesan m kepada Bob dengan cara dimana Bob bisa diyakinkan bahwa pesan tersebut adalah asli dalam keadaan tidak mengalami perubahan, dan benar adalah dari Alis. Alis membuat suatu tandatangan digital s dengan eksponensialisasi: s = md mod n, dimana d dan n adalah kunci privat dari Alis. Dia mengirim m dan s kepada Bob. Untuk menverifikasi tandatangan ini, Bob melakukan eksponensialisasi dan memeriksa bahwa pesan m berhasil direcover: m = se mod n, dimana e dan n adalah kunci publik milik Alis[4].

2.8. Base64-encoding

Permasalahan penyimpan kunci publik dan kunci privat maupun pesan hasil enkripsi sebagai data biner dan harus berurusan dengan masalah trailing zero maupun karakter ASCII yang tidak dapat dicetak, sehingga anda perlu mengkonversikannya ke teks string [6]. Teks string adalah lebih mudah ditangani jika anda perlu mengirim ataupun menyimpan informasi tersebut dalam format teks. Suatu base64-encoding dapat digunakan untuk memecahkan masalah trailing zero maupun karakter ASCII yang tidak dapat dicetak[6].

Secara mendasar base64-encoding mengkonversi suatu array byte kepada suatu string ASCII yang dapat dicetak, yang mana kemudian dapat ditransformasi kembali. Algoritma base64-encoding mengambil tiga byte dari data dan

Page 18: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System 6-18

mengkonversi mereka menjadi empat byte karakter ASCII yang dapat dicetak. Jika ukuran dari byte array adalah tidak persis kelipatan tiga, algoritma tersebut akan menambah satu atau lebih tanda sama dengan (satu untuk setiap kekurangan byte) pada akhir dari nilai string hasil encoding. Konvensi ini memastikan bahwa ukuran dari string adalah selalu merupakan kelipatan dari empat Panjang dari suatu string hasil encoding base64 dapat dihitung dengan formula 1.

Base64 = (Bytes + 2 - ((Bytes + 2)MOD 3))/3*4

…................................................................. 1)

3. Diskusi

3.1. Metodologi Adapun langkah-langkah pada penelitian ini

adalah sebagai berikut: 1. Melakukan studi pustaka dengan menggambil

referensi dari berbagai literatur, jurnal dan situs yang relevan yang membahas tentang kemanan sms, dan cryptography serta penanganan sms pada platform Android.

2. Merancang algoritma aplikasi untuk pembangkit kunci publik dan kunci privat dengan metode RSA, aplikasi pengirim dan penerima sms yang berisi kunci publik, algoritma pengirim dan penerima sms terenkripsi, dan aplikasi penyajian data sms.

3. Melakukan pembuatan prototipe aplikasi dan dilakukan pengujian terhadap kemampuan aplikasi akan tujuan dari penelitian

Untuk mendukung penelitian ini penulis menggunakan perangkat pengembangan aplikasi IDE Eclipse yang dilengkapi dengan ADT pluggins, dan Android SDK serta emulator Android 2.2 yang tersedia pada Android SDK.

3.2. Algoritma

Secara umum aplikasi yang dirancang terdiri dari 5 kompomen utama yaitu: 1. Activity untuk generate kunci publik dan kunci

privat pemakai dengan algoritma RSA. 2. Activity untuk mengirim kunci publik pemakai

kepada alamat target tujuan dengan menggunakan sms.

3. Activity untuk mengirim sms terenkripsi ke alamat tujuan.

4. Broadcast receiver yang berfungsi melakukan penerimaan kunci publik maupun sms terenkripsi dan menyimpan ke database

5. Activity yang berfungsi menampilkan plaintext dari sms terenkripsi.

Gambar 3, Algoritma generate key

dan pertukaran key

Awalnya pemakai perlu men-generate sepasang kunci menurut algoritma RSA yaitu kunci publik dan kunci privat, adapun ukuran kunci adalah 688 bit dengan kondisi dimana nantinya kunci publik tersebut akan dikirim kepada pihak yang akan berkorespondensi dengan menggunakan fasilitas sms. Sebagaimana kita ketahui bahwa ukuran teks pada satu sms dibatasi sebanyak 160 karakter, sehingga panjang string teks kunci publik yang telah di enkoding base64 tidak boleh melebihi 160 karakter, dan dalam hal ini kunci publik RSA dengan ukuran kunci 688 bit adalah 159 karakter. Kedua kunci hasil generate akan disimpan pada suatu tabel. Kemudian pemakai perlu melakukan pertukaran kunci publik dengan pihak dimana pertukaran sms rahasia perlu dilakukan, pertukaran kunci ini hanya perlu dilakukan sekali saja. Setelah pertukaran kunci publik berhasil dilakukan, maka pengiriman sms rahasia dapat dilakukan, sms plaintext akan dienkripsi dengan kunci publik penerima sebagai C1, kemudian C1 akan dienkripsi sekali lagi dengan menggunakan kunci private pengirim sms menjadi C2, dan akhirnya C2 inilah yang akan dikirim kepenerima. Algoritma dari ketiga proses tersebut ditunjukan pada Gambar 3.

Gambar 4 Algoritma penerimaan sms kunci publik

dan sms rahasia

Page 19: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System  6-19

Penerimaan sms pada Android dilakukan melalui suatu Broadcast Receiver yang dilengkapi dengan intent filter untuk menyaring broadcast yang dipancarkan oleh sistim dalam bentuk intent. Broadcast receiver tersebut akan memfilter intent dengan action android.provider. Telephony.SMS_RECEIVED dan membaca data sms, serta melakukan pemeriksaan apakah sms tersebut adalah suatu sms yang berisi kunci publik dengan kriteria sms diawali dengan tanda @ dan memiliki panjang 160 (159 + 1) Karakter, jika tidak maka akan diperiksa apakah merupakan sms rahasia berdasarkan alamat pengirim yang dicocokan dengan tabel TheirKey yang berisi kunci publik dan alamat pemiliknya, jika ada maka sms tersebut akan dikategorikan sebagai sms rahasia, dan disimpan ke tabel Sms dan broadcast tersebut akan dibatalkan, dan jika bukan sms rahasia maka broadcast tersebut akan dilanjutkan ke broadcast receiver lainnya. Algoritma dari proses ini ditunjukan pada Gambar 4.

Gambar 5 Algoritma tampil sms rahasia

3.3. Struktur Database Penyimpanan data kunci publik dan privat,

maupun kunci publik dari hasil pertukaran key, maupun pertukaran sms menggunakan database SQLite3 yang sudah tersedia pada platform Android, adapun perintah SQL untuk pembuatan masing-masing tabel adalah disajikan pada Tabel 1, Tabel 2 dan Tabel 3.

Tabel 1, Struktur tabel MyKey

Nama field Tipe Data Keterangan

_id Integer Primary key, autoincrement

PublicKey Text

PrivateKey Text

Tabel 2, Struktur tabel TheirKey

Nama field Tipe Data Keterangan

_id Integer Primary key, autoincrement

Nomor Text

PublicKey Text

Tabel 3, Struktur tabel SMS

Nama field Tipe Data Keterangan

_id Integer Primary key, autoincrement

Jenis Integer 0=sent, 1=received

Nomor Text

Waktu Integer long timestamp

Pesan Text

Baca Integer 0=unread, 1 = read

3.4. Class dan Metoda Class MyCrypto merupakan class yang berisi

beberapa static method yang nantinya akan digunakan untuk mengenerate kunci publik da kunci private dengan menggunakan algoritma RSA dengan panjang kunci 688 bit. Pada class ini dilengkapi dengan setter dan getter untuk membaca dan menuliskan nilai kunci privat dan kunci. public class MyCrypto { private static final String CIPHER_ALGORITHM = "RSA"; public static final int RANDOM_KEY_SIZE = 688; public static final int PUBLIC_KEY_SIZE = 118; private static KeyPair keyPair; private static Cipher cipher; private static PrivateKey privateKey; private static PublicKey publicKey; public static void generateKey() throws Exception { KeyPairGenerator kpg = KeyPairGenerator.getInstance(CIPHER_ALGORITHM); kpg.initialize(RANDOM_KEY_SIZE);

Page 20: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System 6-20

cipher = Cipher.getInstance(CIPHER_ALGORITHM); keyPair = kpg.generateKeyPair(); privateKey = keyPair.getPrivate(); publicKey = keyPair.getPublic(); } public static String encrypt(String plaintext) throws Exception { cipher = Cipher.getInstance(CIPHER_ALGORITHM); cipher.init(Cipher.ENCRYPT_MODE,publicKey); byte[] bytes = plaintext.getBytes(); byte[] encrypted1 = cipher.doFinal(bytes); cipher.init(Cipher.ENCRYPT_MODE,privateKey); byte[] encrypted2 = cipher.doFinal(encrypted1); String encryptedString = Base64.encodeToString(encrypted2,Base64.DEFAULT); return encryptedString; } public static String decrypt(String encrypted)

throws Exception { cipher = Cipher.getInstance(CIPHER_ALGORITHM); cipher.init(Cipher.DECRYPT_MODE, publicKey); byte[] bytes = Base64.decode(encrypted, Base64.DEFAULT); byte[] decrypted1 = cipher.doFinal(bytes); cipher.init(Cipher.DECRYPT_MODE, privateKey); byte[] decrypted2 = cipher.doFinal(decrypted1); return new String(decrypted2); } public static void setPrivateKeyFromString(String key) { KeyFactory keyFactory; try { keyFactory = KeyFactory.getInstance(CIPHER_ALGORITHM); EncodedKeySpec privateKeySpec = new PKCS8EncodedKeySpec(Base64.decode(key.getBytes(),Base64.DEFAULT)); privateKey = keyFactory.generatePrivate(privateKeySpec); } catch (NoSuchAlgorithmException e) {

e.printStackTrace(); } catch (InvalidKeySpecException e) { e.printStackTrace(); } } public static void setPublicKeyFromString(String key) { KeyFactory keyFactory; try { keyFactory = KeyFactory.getInstance(CIPHER_ALGORITHM); EncodedKeySpec publicKeySpec = new X509EncodedKeySpec(Base64.decode(key.getBytes(),Base64.DEFAULT)); publicKey = keyFactory.generatePublic(publicKeySpec); } catch (NoSuchAlgorithmException e) { e.printStackTrace();

} catch (InvalidKeySpecException e) { e.printStackTrace(); } } Public static String getPrivateKey() throws UnsupportedEncodingException { byte[] encoded = Base64.encode(privateKey.getEncoded(), Base64.DEFAULT); String string = new String(encoded,"UTF-8"); return string; } public static String getPublicKey() throws UnsupportedEncodingException { byte[] encoded = Base64.encode(publicKey.getEncoded(), Base64.DEFAULT); String string = new String(encoded,"UTF-8"); return string; } }

4. Hasil

4.1. Ukuran Kunci Publik dan SMS Karena pertukaran kunci publik dilakukan

melalui sms, maka perlu memperhatikan keterbatasan jumlah teks yang dapat dikirim suatu sms adalah 160 byte, sehingga perlu dipilih ukuran kunci RSA yang menghasilkan kunci public dalam format base64-encoded yang mendekati batasan tersebut, maka diuji panjang karakter kunci publik dan kunci privat dalam format base64-encoded berdasarkan masing-masing ukuran kunci RSA dengan hasil yang disajikan pada Tabel 4.

Tabel 4, Ukuran kunci publik dan privatdari berbagai ukuran key RSA

Base64-encoded

Ukuran kunci RSA (bit) Kunci publik

(byte) Kunci private

(byte)

128 65 167

256 86 268

384 106 369

512 130 471

640 150 564

656 154 576

672 154 588

688 159 600

768 171 661

896 195 758

1024 219 860

Page 21: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System  6-21

Berdasarkan penyajian tersebut diatas, maka panjang key RSA yang dipilih adalah 688 bit, dan karena RSA bekerja sebagai block cipher, maka panjang sms yang dapat dienkripsi per-blok adalah 86 karakter

4.2. Menu Utama Menu utama dari prototipe aplikasi pengaman

SMS ditunjukan pada Gambar 6.

Gambar 6. Menu utama aplikasi

4.3. Pembuatan Kunci Publik dan Privat Proses pembuatan kunci publik dan kunci

private ditunjukan pada Gambar 7.

Gambar 7. Pembuatan kunci publik dan privat

4.4. Pertukaran Kunci Publik Proses pertukaran kunci publik ditunjukan

pada Gambar 8.

Gambar 8. Pertukaran kunci public

4.5. Penerimaan Kunci Publik Proses penerimaan kunci publik

ditunjukan pada Gambar 9.

Gambar 9. Penerimaan kunci publik

4.6. Pengiriman SMS Rahasia Proses pengiriman kunci publik ditunjukan

pada Gambar 10.

Gambar 10. Pengiriman SMS rahasia

Page 22: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System 6-22

4.7. Pembacaan SMS Rahasia Proses pembacaan SMS Rahasia ditunjukan

pada Gambar 11 dan Gambar 12.

Gambar 11. Daftar SMS rahasia

Gambar 12. Plaintext SMS rahasia

5. Penutup

5.1. Kesimpulan Berdasarkan hasil pengujian yang dilakukan

maka diekspektasikan rancangan aplikasi dapat meningkatkan keamanan sms dari aspek authentikasi, integritas dan non-repudiation, karena plaintext sms sebelum dikirim akan dienkripsi dengan kunci public penerima sebagai ciphertext1, dan ciphertext1 akan dienkripsi sekali lagi dengan kunci privat pengirim menjadi ciphertext2. Jika seorang cracker melakukan penyadapan dan ingin membaca ataupun melakukan perubahan isi pesan, maka dia perlu memecahkan kunci privat penerima sms rahasia tersebut. Jika seorang cracker ingin mengirim SMS spoofing, maka dia perlu memecahkan kunci private pengirim sms rahasia tersebut.

Karena RSA merupakan blok cipher menyebabkan pemakaian ukuran kunci 688 bit hanya dapat memproses 86 karakter per-blok enkripsi, sehingga ukuran per-sms pada aplikasi ini dibatasi hanya 86 karakter.

5.2. Saran Aplikasi hasil rancangan dibatasi pada RSA

dengan ukuran kunci 688 Bit untuk memenuhi batasan pengiriman kunci publik dalam format

base64-encoded terhadap ukuran sms dalam format teks adalah 160 karakter, untuk pemakaian yang membutuhkan tingkat keamanan yang lebih tinggi, maka aplikasi perlu dipertimbangkan dan pengembangan aplikasi yang memungkinkan untuk mengirim kunci publik dan sms rahasia yang menggunakan lebih dari satu sms.

Daftar Pustaka [1] Developer Android, What is Android,

http://developer.android.com/guide/basics/what-is-android.html, November 2011.

[2] Network Security Solution (NSS), SMS Vulnerabilities – XMS Technology White Paper, February 2006.

[3] Nick Jones, Don't Use SMS for Confidential Communication, Gartner, Inc., 2002.

[4] David Ireland, RSA Algorithm, http://www.di-mgt.com.au/rsa_alg.html, DI Management.

[5]. R. Rivest, A. Shamir and L. Adleman. A Method for Obtaining Digital Signatures and Public-Key Cryptosystems. Communications of the ACM, 21 (2), pp. 120-126, February 1978.

[6] Obiviex, How to Calculate the Size of Encrypted Data?, http://www.obviex.com/Articles/CiphertextSize.aspx

Page 23: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System  6-23

Implementasi Teknologi Web Services dalam Pengamanan Database Server Sistem Informasi Kendaraan Bermotor Unit Kepolisian

SAMSAT Palembang

Ahmad Mutakin Bakti, Muhammad Izman Herdiansyah, Muhammad Akbar

Fakultas Ilmu Komputer, Universitas Bina Darma Palembang email: [email protected], [email protected],

[email protected]

Abstrak Penggunaan teknologi client server

mengharuskan pengembang mengakses langsung database server. Cara akses dengan metode ini mempunyai resiko lemahnya keamanan data karena developer mengetahui alamat komputer serta user id dan password database server. Penelitian ini bertujuan untuk membuat aplikasi layanan dengan menggunakan web services yang menggunakan XML sebagai format dokumennya, yang dapat menjembatani berbagai aplikasi di unit client dengan database server sistem informasi, dan dapat mengamankan database server dari akses langsung. Ujicoba dilakukan pada sistem informasi kendaraan bermotor di kantor SAMSAT Palembang. Dari penelitian yang dilakukan, disimpulkan bahwa aplikasi layanan ini mampu mengatasi masalah keamanan database server dan mengurangi biaya pengembangan karena tidak harus menyeragamkan bahasa pemerograman. Aplikasi berbasis desktop dapat pula mengakses data meskipun melalui jaringan internet. Kata kunci : Web Services, XML, Database Server

1. Pendahuluan Seiring dengan tingginya tuntutan transparansi,

kemudahan, dan kecepatan pelayanan publik kepada masyarakat oleh instansi pemerintah, kantor SAMSAT (Sistem Administrasi Manunggal di bawah Satu Atap) Palembang sedang giatnya untuk mewujudkan tatakelola pelayanan pemerintahan yang baik, diantaranya sedang membangun sistem komputerisasi pelayanan yang saling berintegerasi antar instansi didalamnya.

Meskipun beberapa kantor SAMSAT sudah menggunakan fasilitas on-line,misalnya pada proses pendaftaran kendaraan baru, hal tersebut masih dirasa kurang dan terbatas karena dalam pembuatan aplikasinya masih harus dibatasi menggunakan

program tertentu saja dan sebagian besar aplikasinya berdiri sendiri. Implementasi aplikasi yang diterapkan saat ini mengharuskan aplikasi server dan aplikasi client menggunakan bahasa pemrograman yang sama, hal ini dirasa kurang efektif.Kantor SAMSAT merupakan kantor bersama berbagai instansi yang terdiri dari Kepolisian, Dinas Pendapatan Daerah, Asuransi Jasaraharja dan perbankan, yang pada dasarnya masing-masing instansi telah memiliki aplikasi dengan bahasa pemerograman yang berbeda seperti INFORMIX .ASP.Net VB 6.0, VB.Net dan lain-lain.

Saat ini aplikasi di kantor SAMSAT Palembang yang telah mengintegrasikan antar instansi adalah aplikasi yang dimiliki oleh Kepolisian dengan aplikasi yang dimiliki oleh Dinas Pendapatan Daerah (DISPENDA) Sumatera Selatanuntuk mengelola Penerimaan Pajak Kendaraan Bermotor.Aplikasi yang dijalankan di sisi DISPENDA secara langsung mengakses Database Server yang dimiliki oleh Kepolisian. Cara ini, menurut peneliti memiliki resiko keamanan terhadap data, karena pengembang aplikasi DISPENDA akan mengetahui userid dan password untuk melakukanlog-in ke Database Server Kepolisian.

Dari kondisi di atas, dibutuhkan sebuah aplikasi layanan yang mampu menghubungkan aplikasi client baik berbasis Desktop maupun berbasis web(yang dibangun menggunakan berbagai bahasa pemrograman) dengan Database Server yang dimiliki Kepolisian.

Teknologi yang diimplementasikan untuk mengatasi hal tersebut dalam penelitian ini adalah web services, sebuah service atau fungsi yang melakukan tugas atau proses yang spesifik. Beberapa teknologi telah dikembangkan untuk mewujudkan kebutuhan akan koneksi atau hubungan antar aplikasi ini, misalnya teknologi DCOM danCORBA. Namun masih memiliki keterbatasan dalam bekerja antar sistem operasi maupun antarbahasa pemrograman.XML Web Services yang digunakan dalam penelitian ini

Page 24: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System 6-24

mampu mengatasi berbagai permasalahan tersebutkarenamerupakan jenis layanan berbasis XMLsebagai format dokumen dalam pertukaran data, dan menggunakan protokol http untuk komunikasi datanya.

Penerapan teknologi Web Services ini telah berhasil memberi layanan tanpa mengharuskan bahasa pemrograman melakukan koneksi langsung ke Database Server. Hal ini akanmeningkatkan keamanan data kendaraan bermotor pada sistem Kepolisian dari resiko kehilangan data akibat akses database langsung.

2. Teknologi Webservices Web Services (Berlilana,2008) merupakan

salah satu bentuk implementasi dari arsitektur model aplikasi N-Tier yang berorientasi pada layanan. Perbedaan Web Services dengan pendekatan N-Tier adalah dari aspek infrastruktur dan dokumen yang digunakan sebagai format pertukaran data. Dalam implementasinya, Web Services tidak mempunyai tampilan, karena Web Services termasuk dalam Business-Service tier. Pada Web Services hanya tersedia fungsi-fungsi yang nantinya dapat digunakan oleh aplikasi lainnya. Wicaksono dan Primadhanty (2006) menyatakan sebuah web service mempunyai interface berupa web Application Programming Interface (API).

Dari uraian diatas dapat dinyatakan bahwa pada dasarnya web service mempunyai tampilan atau interface,jikafungsi atau layanan itu menggunakan parameter masukan. Interface ini berupa web Application Programming Interface (API), tetapi jika tidak mempunyai parameter maka fungsi atau layanan ini tidak mempunyai tampilan.

Web Services dapat diimplementasikan dalam berbagai jenis platform dengan menggunakan bahasa pemrograman apa pun, dan dapat digunakan oleh berbagai aplikasi yang menggunakan berbagai bahasa pemrograman dengan platform apapun. Selama aplikasi tersebut dapat berkomunikasi dengan Web Services dengan menggunakan protokol-protokol komunikasi.

Pada sisi lain, W3C dalam Wulandari (2006) menyatakan bahwaWeb Service adalah suatu sistem perangkat lunak yang didisain untuk mendukung interaksi mesin ke mesin pada suatu jaringan. Ia mempunyai suatu interface yang diuraikan dalam suatu format machine-processible seperti WSDL.

Dalam implementasi model aplikasi N-Tier, Web Service dapat dijadikan altrenatif, karena dibangun berdasarkan text-based document format XML dan standard protocol TCP/IP, memungkinkan Web Service berkembang pesat dan

diadopsi oleh berbagai platform (Hadiwinata,2003). Sedangkan Santosa (2008) dalam kesimpulan penelitianyamenyatakanXMLWeb Services menjadi komponen utama di dalam mengembangkan sistem informasi yang dapat memberikan kemudahan bagi pemrogram untuk membangun aplikasi sesuai fungsi dan tampilan yang dibutuhan.

Berdasarkan keuntungan yang penulis kutip di atas maka dapat disimpulkan bahwa Web Service adalah teknologi yang cocok untuk mengamankan database server karena Web Service dapat memberikan layanan yang standar kepada bahasa pemerogrman yang berbeda tanpa harus masuk ke database server.

3. Model, Analisis, Desain dan Implementasi

3.1 Model Penelitian

Penelitian ini menggunakan metode penelitian tindakan (action research).Penggunaan metode penelitian inikarena metode ini merupakan metode yang bertujuan untuk mengembangkan pendekatan baru dalam memecahkan permasalahan,dan/atau memperbaiki sistem pemecahan masalah.

3.2 Analisis Metode analisis menggunakan metode unified

yang terdiri dari beberapa tahapan (Haryanto, 2004): 1) Berpedoman pada kebutuhan pemakai sistem. 2) Mengidentifikasikan skenario pemakaian atau

use-case. 3) Memilih kelas-kelas dan objek-objek

menggunakan kebutuhan sebagai penuntun. 4) Mengidentifikasi atribut dan operasi untuk

masing-masing kelas objek. 5) Mengidentifikasi struktur dan hirarki kelas-

kelas. 6) Membangun model keterhubungan kelas dan

objek. 7) Melakukan review model yang dihasilkan

dengan skenario atau use-case.

3.2.1. Analisis Masalah

Permasalahan yang dihadapi oleh pembuat sistem di SAMSAT Palembang dimulai dengan banyaknya instansi yang terlibat, yaitu Kepolisian Republik Indonesia, Dinas Pendapatan Daerah, Asuransi Jasa Raharja dan Bank. Dimana masing-masing instansi mengembangkan sistem sendiri-sendiri (Bakti, 2010).

Page 25: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System  6-25

Dinas Pendapatan Daerah mengembangkan sistem penerimaan pajak menggunakan bahasa pemrograman dan database Informix Base. Kepolisian mengembangkan Sistem Informasi Kendaraan (SIKB) menggunakan bahasa pemrograman Visual Basic.Net dan database management system menggunakan Microsoft SQLServer 2005. Sedangkan Asuransi Jasa Raharja menggunakan ASP.Net dan pengelola database menggunakan Oracle.

Dengan perbedaan ini timbul kesulitan dalam menghubungkan (link) data antar instansi tersebut. Saat ini yang sudah terhubung aplikasinya adalah aplikasi yang dimiliki oleh Kepolisian dengan aplikasi yang dimiliki oleh Dinas Pendapatan Daerah dengan bentuk link aplikasi pajak yang dimiliki oleh Dinas Pendapatan Daerah, yang langsung mengakses database yang dimiliki oleh Kepolisian. Bentuk ini yang memiliki resiko meskipun hak akses sudah dikonfigurasi sedemikian rupa untuk menjaga keamanan data.

3.2.1. Analisis Kebutuhan

Spesifikasi kebutuhan dapat digambarkan dengan diagram Uses Case.Diagram ini adalah diagram yang menggambarkan fungsionalitas yang diharapkan dari sistem Administrasi teliti ulang kendaraan di Kepolisian dan pembayaran pajak di Dinas Pendapatan Daerah Sumatera Selatan yang tergabung dalam satu kantor yaitu SAMSAT. Selain itu desain Use Case ini juga untuk menggambarkan kebutuhan sistem dari sudut pandang user dengan memfokuskan pada proses komputerisasi (automated processing).

Gambar 1. Use Case Diagram

Pada Gambar 1terlihat Wajib Pajak (pemilik kendaraan atau yang diwakilkan) mendaftarkan dengan menyerahkan berkas kelengkapan seperti KTP, Surat Tanda Nomor Kendaraan (STNK) Lama dan form isian kepada bagian Pendaftaran dan dilakukan verifikasi. Selanjutnya di-input datanya dengan memasukan nomor polisi oleh orang (Aktor) yang sama yaitu bagian pendaftaran.

Itulah sebabnya maka gambar verifikasi termasuk (include) atau mempunyai syarat mendaftar dan entry nopolisi harus ada proses verifikasi dahulu. Selanjutnya cetak IDBerkas yang akan merupakan key inputuntuk proses selanjtnya yaitu penetapan pajak oleh petugas penetapan. Terlihat bahwa entry IDberkas merupakan bagian dari penetapan pajak.

Selanjutnya pembayaran pajak bisa dilakukakn jika status penetapan pajak dan asuransi sudah dilakukan. Terakhir adalah proses cetak notes pajak dan cetak STNK yang mempunyai syarat harus entry pembayaran terlebih dahulu. 3.3 Perancangan

Pada tahapan ini adalah tahapan mendesain perangkat lunak web services. 3.3.1. Desain Arsitektur Sistem Web Services

Desain ini berguna untuk memberi gambaran dan memudahkan kita dalam menempatkan perangkat keras dan lunak yang merupakan sumber daya yang dibutuhkan aplikasi web services.

Pada web services yang nantinya hanya difokuskan pada instansi Kepolisian yang servicenya dapat diberikan Dinas Pendapatan Daerah dan Jasaraharja.

Gambar 2. Arsitektur Sistem Web Services

Pada gambar 2 dijelaskan aplikasi web services nantinya akan di install di komputer web server yang ada di Kepolisian. sedangkan aplikasi web bisa di install di web server atau aplikasi desktop di computer client. Semua kegiatan akses database di kerjakan oleh aplikasi web services, sehingga sisi keamanan database dapat dijaga. Karena programmer, user tidak mengetahui di komputer apa dan dimana letak database server. Sedangkan di Kepolisian dibuat dengan dua kemungkinan bisa akses langsung ke database ataupun aplikasi yang harus mengakses webservice karena dikepolisian sendiri ada aplikasi yang berbeda bahasa

Page 26: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System 6-26

pemerogramannya dan dibuat oleh Programmer yang berbeda.

3.3.2. Desain Database

Proses desain database adalah tahapan mendesain Tabel, View, Strored Procedure serta Trigger. Karena hasil dari penelitian ini hanya model maka tidak semua table akan di desain.

Nama database adalah DBSIKBermotor yang terdiri dari beberapa table yaitu: • Tabel TabelIndukKendaraan • Tabel TabelIdentitasPemilik • Tabel TabelMasterPekerjaan • TabelRegistrasi • Tabel TabelMasterTipe • Tabel TabelMasterPendaftaran • Tabel TabelMasterATPM • TabelMasterJenis • Tabel TabelMasterModel • Tabel TabelMasterMerek • Tabel TabelPendaftaranSTNK • Tabel TabelMasterProses • Tabel TabelBerkas

Pada dasarnya masih banyak lagi tabel yang ada di Sistem Informasi Kendaraan Bermotor.Tetapi yang terlibat langsung ke sistem instansi lain dalam hal ini Dispenda, Jasaraharja dan Bank hanya tabel-tabel di atas. Jadi peneliti hanya fokus pada tabel-tabel di atas.

3.3.3. Desain Interface atau Tampilan Web services

Web servicespada dasarnya adalah sebuah

layanan.Namun, jika kita menggunakan fungsi yang membutuhkan parameter maka tampilannya dapat kita lihat, sehingga tampilan web services dapat dibuatmenyesuaikan dengan Function yang memerlukan parameter imputan.

Rancangan interface yang dihasilkan dalam penelitian ini terdiri dari: 1) Desain Fungsi AksesDataKendaraan 2) Desain Fungsi InsertTabel_IdentitasPemilik

yang digunakan untuk menyimpan identitas pemilik kendaraan.

3) Desain Fungsi InsertTabel_Kendaraan yang berfungsi untuk menyimpan data induk kendaraan.

4) Desain Fungsi InsertTabelMasterTipe 5) Desain Fungsi InsertTabel_Registrasiyang

berfungsi untuk menyimpan data registrasi nomor polisi.

6) Desain Fungsi UpdateStatusBayar yang berfungsi untuk mengupdate statusbayar menjadi true pada tabel tabelpendaftaranstnk.

7) Desain Fungsi AksesSemuaDataMasteruntuk mengakses semua data master, terutama data master yang hanya mempunyai dua kolom.

3.3.4. Desain Class Diagram

Desain Class Diagram adalah desain blue print dari program. Pada diagram di bawah ini terdiri atas empat class yaitu DataKendaraan, DataMaster, Koneksi, Service,Pesan dan Security serta MyHeader. 1) Class Service

Class utama pada aplikasi ini adalah service. Class service mempunyai method : a. “AksesDataKendaraan” yang merupakan

method untuk menampilkan nilai dari objek yang merupakan implementasi dari class “DataKendaraan”. Karena fungsi atau method ini merupakan fungsi yang bertipe class DataKendaraan

b. “InsertDataMaster” Method ini merupakan implementasi dari class pesanyang mempunyai atribut atau field NilaiPesan. Maka File XMLnya mempunyai atribut sama dengan class pesan. File XML inilah yang bias dimanfaatkan Programmer pada aplikasinya untuk memberitahu pengguna bahwa kondisi baris data sudah tersimpan atau tidak.

c. “InsertTabel_IdentitasPemilik” Method ini merupakan implementasi dari

class pesan yang mempunyai atribut atau field NilaiPesan

d. “InsertTabel_Registrasi Method ini merupakan implementasi dari

class pesan yang mempunyai atribut atau field NilaiPesan.

e. “InsertTabel_Kendaraan” Method ini merupakan implementasi dari

class pesan yang mempunyai atribut atau field NilaiPesan.

f. “InsertTabel_MasterTipe g. “UpdateStatusBayar” h. “AksesSemuaDataMaster” Method ini merupakan implementasi dari

class DataMaster yang mempunyai atribut atau field Kode dan Nama yang bertipe Array Integer dan Array String. File XML dari fungsi ini dapat dimanfaatkan oleh pengembang untuk ditampilkan misalnya di combo box dan lain-lain

2) Class DataKendaraan

Page 27: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System  6-27

Kelas ini adalah Base Class untuk kelas Service. Pada kelas DataKendaraan hanya mempunyai atribut.

3) Class DataMaster Kelas ini adalah Base Class untuk kelas service. Hubungan satu ke banyak karena kelas ini banyak di implementasikan di kelas service.

4) Class Koneksi Pada kelas ini mempunyai dua method yaitu Konek dan diskonek.Sedangkan atribut yang dimiliki hanya satu yaitu kon yang implementasi dari baseclass SqlConnection yang sudah disediahkan Viusal Basic Net.2010. Kelas diimplementasikan pada kelas service

5) Class Myheader Kelas ini dibuat untuk menjaga keamanan aplikasi web service.Diimplementasikan pada kelas Security.Atribut yang dimilik adalah adalah password dan username yang keduanya bertipe string.

6) Class Security Security adalah kelas yang digunakan untuk menjaga keamanan web services.Kelas ini mempunyai method cekpassword yang memiliki parameter userid dan password bertipe string. Sedangkan atribut yang dimiliki passwordok yang bertipe Boolean dan sHeader yang bertipe kelas MyHeader .jadi pada kelas security mempunyai atribut yang merupakan implementasi dari base class MyHeader yaitu sHeader.

Gambar 10. Class Diagram

4. Hasil Penelitian Hasil dari penelitian adalah sebuah perangkat

lunak layanan yang menggunakan teknologi web services. Aplikasi ini ini adalah aplikasi yang berbasis web, maka tentunya membutuhkan perangkat lunak web server. Perangkat Lunak web server yang digunakan adalah Internet Information Services (IIS) yang sudah melekat di sistem operasi windows.

Aplikasi web services ini diletakan di web server untuk pembahasan ini diletakan di lingkungan jaringan local dengan alamat http://localhost/webservice/Service.asmx. Service ini mempunyai 11 layanan utama seperti yang terlihat pada gambar 11.

Gambar 11. Tampilan Layanan Web services

Kesepuluh layanan tersebut adalah Akses Data Kendaraan, Cari Data Berkas, Insert Tabel Berkas, Insert Data Master, Insert Tabel Pendaftaran STNK, Insert Pemilik, Insert Master Kendaraan, Insert Master Tipe, Insert Registrasi, Update Status Bayar, Akses Semua Data Master.

Gambar 12. Layanan AksesDataKendaraan ServiceSIKB

Detail dari layanan-layanan ini sebagai

berikut: 1) Layanan AksesDataKendaraan

Service ini digunakan untuk menampilkan data kendaraan termasuk pemiliknya.Nantinya service ini salah satunya digunakan oleh instansi dinas pendapatan daerah untuk digunakan didalam aplikasinya.Layanan ini mempunyai 4 paramater, yaitu userid, password nomor polisi dan seri nomor polisi. Bentuk tampilan dari layanan atau service ini adalah:

Kita akan mencoba mengisi nilai empat parameter yang diminta. Maka file XML yang dihasilkan dari layanan ini seperti terlihat di bawah ini:

Page 28: 6. security system

Seminar Nasional Teknologi Informasi dan Komunikasi (SNASTIKOM 2012)  ISBN 978‐602‐19837‐0‐6 

Security System 6-28

Gambar 13. Hasil Layanan AksesDataKendaraan

Layanan ini sengaja dibuat dengan memaksa pengguna menggunakan bahasa pemerograman untuk mengakses data XML nya. Yaitu dengan cara memasukan user id dan password. Nilai kedua parameter ini diambil dari web services yang berbeda yaitu Security.

2) Layanan “CekPassword” pada Web Services Security

Pada web services ini mempunyai layanan yaitu cekpassword. Layanan ini mempunyai parameter yaitu user id danpassword

Gambar 14. Layanan Cekpassword pada Web

Services Security

5. Kesimpulan Setelah melalui tahap perancangan dan

pembahasan, maka dapat ditarik kesimpulan bahwa Web Service Penyedia Layanan ini mempunyai keunggulan 1) Mampu mensinergikan berbagai bahasa

pemerograman karena komunikasi datanya menggunakan data dengan format XML.

2) Bahasa pemerograman dapat berkomunikasi dengan database server tanpa harus koneksi langsung.

3) Dengan tidak koneksi langsung ke database server maka keamanan data di database server dapat terjamin.

4) Menggunakan protokol http sebagai komunikasi data, sehingga tidak perlu lagi untuk membangun jaringan pribadi dalam implementasinya.

5) Karena menggunakan protocol http maka bahasa pemrograman yang berbasis desktop dapat mengakses data meskipun melalui jaringan internet.

Referensi Bakti, Mutakin, 2010, “Pengamanan Database

Server Sistem Informasi Kendaraan Bermotor di Unit Kepolisian Menggunakan Teknologi Web Services (Studi Kasus: Kantor SAMSAT Kota Palembang”, Thesis, Universitas Bina Darma

Berlilana. 2008. “Web Service Sebagai Penyedia Layanan Administrasi Pada Penjualan Tiket Bus”. http://p3m.amikom.ac.id/p3m/dasi/maret08/. Diakses tanggal 3 Maret 2010

Hadiwinata, Mario. 2003. “Solusi Pemrograman XML Web Service Dengan Visual Basic.Net”. PT Elex Media Komputindo, Jakarta

Santosa, Budi. 2008. ”ANALISA DAN PERANCANGAN WEB SERVICES UNTUK SISTEM INFORMASI UNIVERSITAS”. http://yudiagusta.files.wordpress.com/2009/11/267-272-knsi08-047-analisa-dan-perancangan-web-services-untuk-sistem-informasi-universitas.pdf. Diakses tanggal 18 Februari 2011.

Wicaksono, Narenda., Primadhanty, Audi. 2006. ”Sistem Layanan Pesan Pada Telepon Genggam GSM dengan Memanfaatkan GPRS dan Web Services”. Sekolah Teknik Elektro dan Informatika ITB. Bandung

Wulandari , Lily dan I Wayan Simri Wicaksana. 2008. ”Toward Web Service”. Proceeding, Seminar Ilmiah Nasional Komputer dan Sistem Intelijen (KOMMIT 2006) Auditorium Universitas Gunadarma, Depok, 23-24 Agustus 2006. Depok