Sabtu, 30 Oktober 2010

Paper Tim Riset STSN - 1

Paper pertama saya yang diterima dan dipresentasikan pada
Konferensi Nasional Sistem dan Informatika, STIKOM Bali - Nop 2008

CHERRI : SECURE MOBILE MESSAGING SYSTEM

Dony Harso1) Setiyo Cahyono2) Yan Adikusuma3) Tri Wahyudi4) Amri Shodiq5) Prasetyo Adi WP6) M. Taufik Y7)

Sekolah Tinggi Sandi Negara, Bogor, Jawa Barat
dony.harso@stsn-nci.ac.id1) setiyo.cahyono@stsn-nci.ac.id2) yan.adikusuma@stsn-nci.ac.id3)
tri.wahyudi@stsn-nci.ac.id4) amri.shodiq@stsn-nci.ac.id5) prasetyo.adi.wp@stsn-nci.ac.id6) m.taufik.y@stsn-nci.ac.id7)


Abstract

The continued proliferation of mobile phone and the Internet has provided users with more desirable options for application services and mobility. These two phenomenons have to the growth of mobile internet that changed the way of people doing their business. Since the workforce is becoming increasingly mobile, the need of mobile email as one of the mobile internet applications is required and predicted will increase in the near future.
However, some security issues are impeding further adoption of the technology especially for government and business such as insufficient security protection for privacy and integrity of the e-mail’s message exchange between users as well as authenticity of the users that are vulnerable to security threats. These security threats include message alteration, eavesdropping, and impersonation.
In this paper, we develop a simple yet secure mobile messaging system called as Cherri, using hybrid cryptosystem based on proprietary stream cipher algorithm and RSA public key algorithm combined with administration server for user registration as well as key management. In this scheme, privacy and integrity of the message is achieved through encryption by using session key and public key for protecting the session key. In addition, the user is authenticated by presenting an identity binding with the public key. A prototype is developed to prove the feasibility of the system and statistical test has been conducted to prove the randomness of the proprietary algorithm. By using this prototype, the results showed that the average encryption time was 544 ms for 625kb file size, which can be considered small enough for practical use and the proprietary algorithm that is based on chaos has passed the test of DIE HARD statistical test suite.

Keyword: Cryptography, Mobile Email, Chaos



1. Pendahuluan

Layanan komunikasi mobile di Indonesia kian berkembang pesat Hal ini berbanding lurus dengan tumbuh suburnya para pengguna piranti mobile baik dalam kerangka kerja maupun sekedar sarana komunikasi pribadi. Menurut Gartner Reports, 80% pekerja di dunia akan menggunakan mobile email pada tahun 2008. Saat ini di Indonesia lebih dari 30 juta pelanggan internet mobile dan diprediksi 58,7 juta pada tahun 2010.
Namun di sisi lain, layanan-layanan komunikasi mobile yang ada pada saat ini belum banyak memperhatikan sisi privasi dan keamanan penggunanya. Informasi yang dikirimkan melalui sarana ini dapat dengan mudah dibaca oleh pihak lain seperti operator provider. Bila ditinjau dari sisi keamanan, maka komunikasi seperti ini sangat lemah mengingat informasi dari perangkat mobile dikirimkan melalui gelombang radio, sehingga siapapun dapat mengambil informasi tersebut dari udara. Selain itu ancaman mobile email yang lain adalah message alteration, eavesdropping, and impersonation.
Melihat potensi ancaman yang mungkin terjadi, diperlukan suatu metode yang dapat menjamin keamanan dan otentikasi baik pengguna maupun informasi yang dikirim. Salah satu metode yang dapat digunakan yaitu kriptografi. Banyak sekali teknik kriptografi yang telah dikembangkan berdasarkan fungsi atau konsep tertentu di antaranya adalah fungsi chaos. Pemilihan chaos ini didasarkan atas karakteristiknya yang memiliki kesamaan dengan karakteristik kriptografi yaitu konfusi, difusi, dan deterministic pseudorandom. Secara khusus, chaos dapat digunakan sebagai pembangkit rangkaian kunci yang acak bagi sistem kriptografi. Pada penelitian ini dikembangkan suatu prototipe secure mobile messaging system khususnya berbasis email yang memanfaatkan hybrid cryptosystem dengan algoritma kripto stream cipher yang berbasis chaos dan algoritma kunci publik RSA. Selanjutnya dilakukan implementasi pada perangkat komunikasi mobile dengan menggunakan J2ME yang selanjutnya disebut CHERRI (CHaos Encryption Reduce Risk of Information) yang merupakan alternatif solusi bagi secure mobile messaging dengan memperhatikan faktor confidentiality, integrity, and authenticity.
Adapun tujuan dari penelitian ini yaitu membangun aplikasi Cherri untuk secure mobile messaging dengan mengaplikasikan konsep email dan kriptografi pada mobile equipment, sehingga dapat meminimalisir resiko ancaman email, simple dalam implementasi, easy dalam penggunaan dan menjamin privacy bagi informasi yang dipertukarkan.

2. Landasan Teori
2.1 Email
Menurut Man Young Rhee, electronic mail atau email adalah suatu layanan yang membolehkan user untuk mengirim catatan singkat ataupun memo yang panjang melalui internet. Email sangat populer karena menawarkan kecepatan dan metode yang nyaman dalam bertukar informasi dan berkomunikasi.
Berdasarkan email client yang digunakan email dapat dibagi menjadi dua yaitu:
a. Mail user agent
Mail user agent adalah sebutan untuk email client pengguna yang berupa program komputer. Pada dasarnya mail user agent adalah sebuah program sederhana untuk mengirim dan membaca email.
b. Web base mail
Web base mail adalah tipe situs web yang membolehkan pengguna untuk mengirim dan membaca email pada World Wide Web (WWW). Email tipe ini merupakan alternatif dari mail user agent yang berbasis halaman web.

Protokol komunikasi yang biasa digunakan dalam pengiriman email diantaranya adalah :
a. Simple Mail Transfer Protocol (SMTP)
SMTP adalah protokol komunikasi yang mentransfer email dari satu server ke server yang lain. Protokol ini menyediakan mekanisme untuk bertukar pesan melalui beberapa server terpisah. Fitur-fitur SMTP meliputi mailing list, reply dan forward. SMTP biasanya diimplementasikan pada port 25 TCP.
b. Post Office Protocol Version 3 (POP3)
POP3 adalah protokol standar yang paling populer digunakan untuk mentransfer pesan email dari server mailbox ke komputer lokal. Seorang user akan meminta POP3 client membuat koneksi TCP kepada server POP3 pada komputer mailbox. Pengguna diharuskan login dan memberikan password untuk otentikasi. Setelah proses otentikasi diterima client dapat mengambil salinan pesan pada mailbox dan menghapusnya dari server. Pesan akan ditransfer sebagai file teks dalam format standar sesuai dengan RFC 2822.

2.2 Kriptografi

Menurut Bruce Schneier, kriptografi adalah seni dan pengetahuan dalam menjaga berita-berita tetap aman. Selain memberikan jaminan kerahasiaan (confidentiality), kriptografi juga memiliki fungsi lain, yaitu :
a. Otentikasi (authentication). Penerima berita harus dapat membuktikan keaslian berita yang diterima. Seseorang tidak dapat berpura-pura menjadi orang lain.
b. Integritas (integrity). Penerima berita harus dapat memverifikasi bahwa tidak ada perubahan terhadap berita selama pengirimannya. Seseorang tidak dapat menukar berita yang asli dengan yang palsu.
c. Anti penyangkalan (non repudiation). Pengirim berita tidak dapat menyangkal dikemudian hari bahwa bukan dia yang mengirim berita tersebut.

Jaminan kerahasiaan (confidentiality) dari suatu data dapat dicapai dengan menggunakan teknik enkripsi yaitu proses mengolah pesan berupa teks terang menjadi teks sandi yang tidak dapat dimengerti oleh pihak yang tidak berwenang (Menezes et al., 1997). Proses mengembalikan teks sandi menjadi teks terang disebut dekripsi. Proses enkripsi dan dekripsi dilakukan dengan menggunakan suatu algoritma yang aman dari sisi kriptografis, baik menurut standar maupun teori-teori yang ada.
Menurut kunci yang digunakan, algoritma enkripsi terbagi menjadi dua, yaitu asimetrik (asymmetric encryption) dan simetrik (symmetric encryption). Algoritma asimetrik yang disebut juga algoritma kunci publik (public key algorithm) adalah algoritma yang dirancang sedemikian sehingga kunci yang digunakan untuk enkripsi berbeda dengan kunci yang digunakan untuk dekripsi. Disebut juga algoritma kunci publik dikarenakan kunci enkripsi disediakan untuk publik. Siapa pun dapat menggunakan kunci publik tersebut untuk mengenkripsi pesan, namun hanya pihak yang memiliki kunci dekripsi (kunci privat) yang bersesuaian yang dapat membuka pesan tersebut (Schneier, 1996).
Algoritma simetrik adalah algoritma yang menggunakan kunci enkripsi sama dengan kunci dekripsi. Algoritma simetrik dapat dibagi menjadi dua kategori, yaitu: stream algorithm atau stream cipher dan block algorithm atau block cipher. Stream cipher mengoperasikan bit tunggal atau karakter teks terang pada tiap satuan waktu. Sedangkan block cipher mengoperasikan teks terang dalam bentuk kelompok bit (block).
Selain untuk enkripsi dan dekripsi teknik ini juga dapat digunakan sebagai skema tanda tangan digital (digital signature). Skema ini akan memberikan mekanisme otentikasi dan merupakan bukti yang tidak dapat disangkal. Sedangkan untuk menjamin integritas data, skema ini dapat digabungkan dengan fungsi hash. Yaitu fungsi dengan perhitungan yang efisien yang memetakan string biner dengan panjang tak tentu menjadi string biner dengan panjang tertentu yang disebut nilai hash (hash value).

3. Metode Penelitian

Dalam metode penelitian ini akan dijelaskan sebagai berikut :
a. Pada penelitian ini diawali dengan mendesain algoritma cryptosystem berbasis chaos dengan menggunakan fungsi chebyshev polynomial, setelah itu dilakukan pengujian kerandoman rangkaian kunci dengan tools DIE HARD Statistical Test Suite. Algoritma public key yang digunakan adalah Public Key RSA yang digunakan sebagai media manajemen kunci. Sedangkan untuk keperluan enkripsi dan dekripsi, merupakan modifikasi dari algoritma Vector Stream Cipher.
b. Selanjutnya dilakukan desain protokol-protokol yang diberlakukan antara lain pendaftaran public key ke server Cherri, permintaan public key penerima, dan format pesan terenkripsi.
c. Pada tahap akhir, dilakukan desain aplikasi Cherri yang terdiri dari client mobile dan administration server dengan mengimplementasikan algoritma di atas sebagai modul enkripsi bagi pengamanan informasi.

4. Desain
4.1 Arsitektur Sistem

Pada sistem ini, terdapat 2 (dua) komponen utama yaitu client mobile dan administration server (Gambar 1). Client mobile ini berupa send email dan receive email yang berfungsi untuk mengirim dan menerima pesan email terenkripsi. Administration server berupa key updater dan subscriber yang berfungsi sebagai pembangkit dan pendistribusi kunci (key management) serta registrasi pengguna (user/contact management) (Gambar 2). Pada implementasinya, sistem cherri menggunakan manajemen kunci berbasis Public Key Infrastructure. Dengan demikian, fungsi Server Cherri secara lebih spesifik mirip dengan Certification Authority, yaitu pihak yang berhak mengesahkan bahwa kunci publik adalah milik pihak tertentu. Server Cherri menyimpan pula data-data public key penggunanya.





Gambar 1. Arsitektur Sistem Cherri
















Gambar 2. Bagan Server

Ketika user ingin berkomunikasi secara aman maka aplikasi client diinstall ke telepon seluler (MIDP 2.0 dan CDLC 1.0), kemudian user mengaktifkan dengan melakukan registrasi ke web service / administration server (Web Server Apache, PHP with MySQL) sehingga kunci akan terdownload secara otomatis. Sebelum dilakukan pengiriman pesan terenkripsi, pada pengiriman pesan pertama dilakukan penambahan contact untuk mendapatkan public key user penerima. dengan melakukan koneksi ke administration server.

4.2 Desain Algoritma

Cherri menggunakan public key infrastructure yang didesain unik (tidak menganut salah standar yang berlaku di Internet). Algoritma public key yang digunakan adalah RSA. Algoritma ini digunakan sebagai media manajemen kunci. Sedangkan untuk keperluan enkripsi dan dekripsi, digunakan algoritma yang merupakan modifikasi dari Vector Stream Cipher dengan memanfaatkan salah satu fungsi chaotic yaitu Chebyshev Polynomial second kind.

4.3 Desain Protokol dan Aplikasi

Agar komunikasinya dapat berjalan, pada sistem Cherri digunakan beberapa protokol antara lain:
a. Pendaftaran public key ke server Cherri, yang meliputi format pendaftaran pengguna, format data yang dikirimkan dan format respon server.
b. Permintaan public key penerima, yang meliputi format informasi yang diterima, format data permintaan dan format public key penerima, format respon server yang lain.
c. Pesan terenkripsi yang meliputi format pesan terenkripsi.

Aplikasi client mobile ditulis dengan bahasa pemrograman Java, J2ME. Oleh karenanya Cherri dapat diinstal dan bekerja pada telepon selular yang mendukung Java, MIDP 2.0 CLDC 1.1 atau CLDC 1.0, sedangkan aplikasi server Cherri ditulis dengan PHP. Pada prinsipnya, Cherri bekerja dalam 4 (empat) proses utama yaitu registrasi online, penambahan contact; pengiriman pesan dan penerimaan/pengambilan pesan. Adapun secara lebih mendetail keempat proses tersebut dijelaskan seperti yang terlihat pada gambar 3, gambar 4, gambar 5 dan gambar 6 dibawah ini:



Gambar 3. Registrasi online Gambar 4. Penambahan contact


Gambar 5. Pengiriman pesan Gambar 6. Pengambilan pesan
5. Hasil dan Diskusi
5.1. Analisis Keamanan Algoritma Kripto dan Performa Aplikasi

Diehard merupakan salah satu batere untuk uji keacakan dari suatu pembangkit rangkaian kunci. yang terdiri dari 17 uji statistik dengan p-value yang lebih besar dari 0.005 dan lebih kecil dari 0.995. Pengujian dilakukan sebanyak 10 sampel file, yang terdiri dari 5 sampel kunci tetap tetapi nilai IV berbeda-beda dan 5 sampel kunci berbeda-beda tetapi IV tetap. Dari hasil pengujian rangkaian kunci tersebut didapatkan hasil seluruh sampel lulus (succeed).

Tabel 1. Hasil pengujian rangkaian kunci
No. Sampel File p-value Kesimpulan
1 VSC_Result\result_0.txt 0.543694 Succeed
2 VSC_Result\result_1.txt 0.750809 Succeed
3 VSC_Result\result_2.txt 0.865958 Succeed
4 VSC_Result\result_3.txt 0.875024 Succeed
5 VSC_Result\result_4.txt 0.595418 Succeed
6 VSC_Result\result_5.txt 0.846217 Succeed
7 VSC_Result\result_6.txt 0.052925 Succeed
8 VSC_Result\result_7.txt 0.517329 Succeed
9 VSC_Result\result_8.txt 0.219022 Succeed
10 VSC_Result\result_9.txt 0.560322 Succeed

p-value yang lebih besar dari 0.005 dan lebih kecil dari 0.995 berarti rangkaian kunci yang dihasilkan oleh algoritma diacak dengan tingkat kepercayaan 99.5%. Algoritma stream cipher berbasis chaos, pada intinya adalah generator key untuk enkripsi sedangkan enkripsinya hanya xor key dengan plain text, jadi jika key stream lulus tes Diehard berarti rangkaian kuncinya random atau tidak bisa diprediksi seperti One Time Pad, sehingga dinyatakan kuat secara kriptografis. Penggunaan kunci dengan 128 bit ditambah Initialisation Vector sesuai dengan tingkat keamanan yang sekarang dianjurkan (AES dan NESSIE-Uni Eropa).
Pada performa aplikasi, dilakukan pengukuran waktu proses enkripsi di client sebanyak 100 file dengan masing-masing berukuran 625 Kb (rata-rata ukuran email), dan dihasilkan waktu average 544 ms.

6. Kesimpulan
Cherri merupakan secure mobile messaging system yang didesain berbasis hybrid cryptosystem, guna meminimalisir resiko ancaman pada email. Hasil pengujian algoritma simetrik proprietary berbasis chaos lulus uji keacakan DIE HARD dan prototipe piranti lunak pada perangkat selular yang berupa aplikasi enkripsi email menggunakan teknologi pop3, memiliki waktu enkripsi rata-rata sebesar 544 ms untuk file berukuran 625 Kb.

7. Saran
Prototipe ini dapat dikengembangkan lebih lanjut dengan menggunakan teknologi push mail dan perlu dilakukan analisa segmentasi pasar (pemerintah atau publik) dan kajian budaya calon pengguna aplikasi yang bekerjasama dengan pihak provider selular atau perusahaan telekomunikasi.

DAFTAR PUSTAKA
[ 1 ] Menezes, A., P. van Oorschot dan S. Vanstone, (1996), Handbook of Applied Cryptography, CRC Press.
[ 2 ] Pressman, Roger S., (1997), Software Engineering : A Practitioner’s Approach, Mc. Graw-Hill.
[ 3 ] Rahardjo, Budi, (2005), Keamanan Sistem Informasi Berbasis Internet. IlmuKomputer.com.
[ 4 ] Rhee, Man Young, (2003), Internet Security: Cryptographic principles, algorithms and protocols, England : John Wiley & Son Ltd..
[ 5 ] Schneier, Bruce, Applied Cryptography Second Edition: Protocols, Algorithms and Source Code in C, John Wiley & sons, Inc.
[ 6 ] www.gartner .com, diakses terakhir tanggal 19 Juli 2008

2 komentar: