BAB III ANALISIS PENYELESAIAN MASALAH

dokumen-dokumen yang mirip
BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM. telah dijelaskan pada bab sebelumnya. Analisis yang dilakukan bertujuan untuk

BAB III ANALISA DAN PERANCANGAN. 3.1 Analisa Berikut tahap-tahap awal dalam pembuatan:

BAB IV PERANCANGAN. SMSSender. - inter : Interface + run () : void. inbox inboxdate outbox outboxdate sender receiver

BAB II LANDASAN TEORI

PENERAPAN ALGORITMA RC6 UNTUK PERANCANGAN APLIKASI PENGAMANAN SMS PADA MOBILE DEVICE BERBASIS ANDROID

Implementasi Algoritma RC6 Untuk Enkripsi SMS Pada Telepon Selular

BAB V IMPLEMENTASI DAN PENGUJIAN

BAB III ANALISA MASALAH DAN RANCANGAN PROGRAM. Analisa yang dilakukan bertujuan untuk menentukan solusi dari

BAB IV. ANALISIS DAN PERANCANGAN

BAB I PENDAHULUAN. yang beragam dan salah satu diantaranya adalah media SMS ( Short Message

BAB III ANALISIS DAN DESAIN SISTEM

Bab 3. Metode dan Perancangan Sistem

PENERAPAN PROTOCOL DATA UNIT PADA SHORT MESSAGE SERVICE HASIL STUDI MAHASISWA (STUDI KASUS : STMIK BUDI DARMA MEDAN) Abstrak

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISIS DAN PERANCANGAN

BAB IV ANALISA DAN PERANCANGAN

BAB I PENDAHULUAN. yang beragam dan salah satu di antaranya adalah media SMS (Short Message

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB 1 PENDAHULUAN Latar Belakang

BAB IV ANALISIS DAN PERANCANGAN PERANGKAT LUNAK

BAB I PENDAHULUAN. multiplayer games, transfer data, vidio streaming dan lain-lain. Berbagai

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISA MASALAH DAN PERANCANGAN

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB I PENDAHULUAN 1.1 Latar Belakang

Implementasi Algoritma RC6 Untuk Enkripsi SMS Pada Telepon Selular

BAB IV HASIL DAN UJI COBA

BAB III ANALISA DAN DESAIN SISTEM

BAB I PENDAHULUAN. Pada era teknologi informasi yang semakin berkembang, pengiriman data

BAB III ANALISA DAN DESAIN SISTEM

BAB I PENDAHULUAN. dari isinya, informasi dapat berupa penting atau tidak penting. Bila dilihat dari sifat

BAB I PENDAHULUAN Latar Belakang

BAB IV HASIL DAN PENGUJIAN

BAB III ANALISIS DAN DESAIN SISTEM

BAB IV HASIL DAN UJI COBA

Aplikasi Enkripsi Short Message Service (SMS) Berbasis Android Menggunakan Metode XXTEA

Bab 1 PENDAHULUAN Latar Belakang

Teknik Konversi Berbagai Jenis Arsip ke Dalam bentuk Teks Terenkripsi

BAB III ANALISIS KEBUTUHAN DAN PERANCANGAN SISTEM. KriptoSMS akan mengenkripsi pesan yang akan dikirim menjadi ciphertext dan

BAB IV HASIL DAN UJI COBA

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB III PERANCANGAN SISTEM

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA DAN PERANCANGAN

Bab I Pendahuluan. I.1 Latar Belakang

BAB III PERANCANGAN PROGRAM

BAB III ANALISIS DAN PERANCANGAN SISTEM

BAB III ANALISA MASALAH DAN PERANCANGAN

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS. Pada tahap analisis, dilakukan penguraian terhadap topik penelitian untuk

BAB IV HASIL DAN UJI COBA

BAB I PENDAHULUAN. Kerahasiaan dan keamanan saat melakukan pertukaran. data adalah hal yang sangat penting dalam komunikasi data,

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB IV HASIL DAN UJI COBA

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB I PENDAHULUAN. teknologi, salah satunya adalah telepon selular (ponsel). Mulai dari ponsel yang

PERANCANGAN APLIKASI PENGACAKAN CITRA MENGGUNAKAN M-SEQUENCE BERDASARKAN PARAMETER

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN. dengan munculnya berbagai sistem operasi yang lengkap layaknya komputer,

BAB 1 PENDAHULUAN Latar belakang

BAB I PENDAHULUAN. pada kehidupan manusia. Teknologi mengubah cara hidup baik untuk melakukan

BAB IV PERANCANGAN SISTEM


BAB III. ANALISIS MASALAH

1. BAB III ANALISA DAN PERANCANGAN SISTEM

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB III ANALISIS DAN PERANCANGAN

STMIK GI MDP. Program Studi Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil Tahun 2010/2011

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB III ANALISIS DAN PERANCANGAN

1BAB I PENDAHULUAN 1.1 Latar Belakang

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB III ANALISIS DAN PERANCANGAN

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN. 1.1 Latar Belakang. Seiring dengan perkembangan peradaban manusia dan kemajuan pesat di

BAB IV HASIL DAN UJI COBA

BAB I PENDAHULUAN. Perkembangan teknologi informasi yang semakin pesat. dapat dirasakan hampir di setiap bidang kehidupan. Salah

IMPLEMENTASI PENGAMANAN DATA ENKRIPSI SMS DENGAN ALGORITMA RC4 BERBASIS ANDROID

IV. RANCANG BANGUN SISTEM. Perangkat lunak bantu yang dibuat adalah perangkat lunak yang digunakan untuk

BAB III PERANCANGAN DAN PEMBUATAN

BAB I PENDAHULUAN , 1.1. Latar Belakang

Aplikasi Kriptografi pada Pengiriman SMS dengan Menggunakan Metode Enkripsi Simetris

BAB III ANALISA DAN DESAIN SISTEM

Pemanfaatan dan Implementasi Library XMLSEC Untuk Keamanan Data Pada XML Encryption

BAB IV HASIL DAN PEMBAHASAN

Abstrak. Keyword : Penjualan, Pembelian, Stok, SMS, Bonus, laporan, C# Microsoft Visual Studio. NET 2003, Mobile FBUS 1.5, format.

Implementasi Algoritma Blowfish dalam Layanan Pesan Singkat pada Platform Android

STUDI ALGORITMA ADLER, CRC, FLETCHER DAN IMPLEMENTASI PADA MAC

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISA MASALAH DAN PERANCANGAN

BAB IV HASIL DAN PEMBAHASAN

BAB I PENDAHULUAN. dan rahasia telah menjadi suatu hal yang sangat berharga. Data atau informasi

BAB IV IMPLEMENTASI, PENGUJIAN, DAN ANALISIS HASIL. Perangkat keras yang digunakan untuk perancangan aplikasi ini adalah : : Intel Pentium Dual core

BAB III ANALISA DAN PERANCANGAN

Transkripsi:

BAB III ANALISIS PENYELESAIAN MASALAH Pada bab tiga ini akan dilakukan analisis terhadap landasan teori yang telah dijelaskan pada bab sebelumnya. Analisis yang dilakukan bertujuan untuk menemukan solusi dari permasalahan untuk melakukan implementasi algoritma RC6 untuk enkripsi SMS pada telepon selular. Hasil analisis pada bab ini akan membantu dalam penyelesaian implementasi aplikasi dan penulisan bab empat. 3.1 Analisis Masalah Masalah utama dari tugas akhir ini adalah melakukan implementasi algoritma RC6 untuk melakukan enkripsi SMS pada telepon selular. Pada subbab berikut akan dibahas analisis dari faktor faktor penting yang perlu diperhatikan dalam melakukan implementasi algoritma RC6 untuk melakukan enkripsi SMS pada telepon selular. 3.1.1 Analisis Struktur SMS Seperti telah dijelaskan pada bab sebelumnya, struktur SMS secara garis besar dibagi menjadi dua bagian, yaitu Message Header dan Message Body. Perlu diperhatikan, pada message header terdiri dari instruksi-instruksi kepada komponen-komponen jaringan SMS, maka apabila terjadi kehilangan data atau kerusakan data pada bagian message header ini akan mengakibatkan pesan tidak dapat atau gagal dikirim. Agar pesan dapat dikirimkan dengan baik, dalam melakukan enkripsi, yang dienkripsi hanya bagian message body saja karena jika bagian dari message header dienkripsi, maka pesan tidak akan disampaikan dengan baik. Sebagai contoh, salah satu bagian dari message header adalah nomor tujuan, apabila nomor tujuan ini dienkripsi, maka nomor dapat menjadi tidak dikenali atau berubah menjadi nomor lain sehingga pesan tidak dapat dikirimkan atau salah mengirimkan. III-1

3.1.2 Analisis Algoritma RC6 Secara lengkap, algortima RC6 ditulis sebagai berikut: RC6 w/r/b Algoritma RC6 merupakan algoritma yang memiliki parameter sebagai input, parameter tersebut terdiri dari panjang word (w), jumlah iterasi (r) dan panjang kunci (b). Dengan adanya parameter tersebut dalam melakukan implementasi algoritma RC6 dapat disesuaikan kebutuhan yang diinginkan, apabila yang diinginkan adalah algoritma enkripsi yang cepat maka jumlah iterasi yang dilakukan dapat dikurangi, walaupun dengan mengurangi jumlah iterasi dapat mengurangi kekuatan keamanan algoritma RC6. Sebaliknya, jika menambahkan jumlah iterasi, maka akan dihasilkan algoritma kriptografi yang kuat, namun membutuhkan waktu yang cukup lama dalam melakukan enkripsi. Dan untuk menyesuaikan implementasi dengan mesin yang menjadi target implementasi dapat dilakukan dengan melakukan perubahan pada panjang word. Dengan karakteristik seperti ini, algoritma RC6 akan dapat diimplementasikan secara fleksibel pada berbagai jenis platform dan mesin dengan prosesor yang beragam. Panjang word (b) yang akan digunakan pada perangkat lunak yang akan dibangun adalah 32 bit, berarti panjang blok yang akan digunakan adalah 128 bit. Panjang word tersebut dipilih karena pada dasarnya algoritma RC6 memang ditujukan untuk menggunakan panjang word tersebut dan mudah untuk diimplementasikan karena algoritma RC6 menggunakan operasi integer modulo sebesar panjang word dan tipe integer sebagian besar compiler yang beredar sekarang ini memiliki panjang 32 bit. Untuk jumlah rotasi (r), akan terdapat menu pilihan pada perangkat lunak yang akan dibangun untuk menentukan jumlah rotasi yang akan digunakan. Panjang kunci yang akan digunakan akan beragam dari 0 sampai 255 karakter, hal ini sudah menjadi sifat algortima RC6 yang menerima kunci dengan panjang kunci yang beragam. Mode yang akan diterapkan pada perangkat lunak adalah mode ECB, mode ini adalah mode yang paling sederhana dan sering digunakan. Secara teori, mode ini dapat digunakan dengan baik untuk melakukan enkripsi SMS karena pesan pada SMS berupa kesatuan yang dibangun dan dikirimkan sebagai satu kesatuan. Pada setiap III-2

blok, kunci internal yang akan digunakan sama, oleh karena proses pembentukan kunci internal akan dipisahkan dari proses enkripsi yang menggunakan mode ECB. Karakter yang dapat digunakan pada SMS beragam, sebuah karakter dapat memiliki panjang 7 bit, 8 bit atau 16 bit, sebuah pesan tidak dapat memiliki karakter dengan panjang yang beragam, hal ini harus diperhatikan dalam melakukan perancangan algoritma enkripsi. Jika panjang karakter yang digunakan menggunakan panjang 7 bit, maka akan menimbulkan masalah karena pada algoritma RC6 terdapat lg w dimana merupakan logaritma basis dua dengan w adalah panjang word, jika yang digunakan kerakter dengan panjang 7 bit, maka panjang word akan menjadi kelipatan 7 sehingga tidak akan ditemukan bilangan bulat dari lg w. Atas dasar pertimbangan tersebut, dalam implementasi yang akan dilakukan karakter yang akan digunakan adalah karakter menggunakan karakter dengan panjang 8 bit. 3.1.3 Analisis Penerapan Enkripsi SMS Algoritma RC6 merupakan algoritma yang sederhana, fungsi yang digunakan merupakan fungsi yang sederhana dan hanya mengandalkan prinsip iterated cipher untuk keamanan. Sehingga, dalam implementasi untuk melakukan enkripsi SMS pada telepon selular tidak diperlukan adanya penanganan khusus dalam melakukan implementasi algoritma, yang perlu diperhatikan dalam melakukan implementasi algoritma RC6 untuk enkripsi SMS pada telepon selular adalah menghindari pemakaian memory yang berlebihan dan melakukan penyesuaian aplikasi SMS terhadap algoritma RC6. Aplikasi yang akan dibangun merupakan aplikasi pengiriman dan penerimaan pesan yang berdiri sendiri. Hal tersebut berdasarkan pertimbangan dimana aplikasi SMS standar tiap jenis telepon selular tidaklah sama, panjang sebuah karakter dapat beragam dan kemampuan untuk melakukan konkatinasi tidak dimiliki oleh semua jenis telepon selular dan juga tidak semua aplikasi pengiriman SMS mengirimkan pesan dalam bentuk binary. III-3

Penggunaan nomor port pada sebuah aplikasi pengiriman dan penerimaan SMS dapat berdiri sendiri dan tidak mengganggu aplikasi standar yang terdapat pada telepon selular. Penerimaan pesan akan melalui nomor port tersebut dan pengiriman pesan akan selalu ditujukan pada nomor port tersebut. Nomor port yang digunakan tentunya akan menggunakan nomor port yang belum digunakan oleh aplikasi-aplikasi standar pada telepon selular. Pemakaian nomor port ini akan menyebabkan panjang pesan berkurang karena informasi nomor port tersebut akan dikirimkan. Pemakaian nomor port ini juga akan menyebabkan aplikasi dapat berdiri sendiri namun tidak akan dapat menerima pesan jika diimplementasikan pada telepon selular yang menggunakan kartu SIM berjenis CDMA. Nomor port tersebut dibawa pada UDH (User Data Header) pada paket data SMS, yang dimana UDH tersebut tidak terdapat pada paket data SMS pada CDMA. Pembangunan aplikasi SMS yang berdiri sendiri akan memiliki kekurangan dimana aplikasi tidak akan dapat menerima pesan jika diimplementasikan pada telepon selular CDMA yang menyebabkan jenis telepon selular yang dapat digunakan menjadi terbatas pada telepon selular GSM, namun jika aplikasi yang dibangun bukan merupakan aplikasi yang berdiri sendiri atau menggunakan fungsi-fungsi dari aplikasi standar sebuah telepon selular, maka kompatibilas aplikasi akan lebih terbatas karena telepon selular yang dapat digunakan hanya akan terbatas pada aplikasi standarnya, jika aplikasi standarnya berbeda maka aplikasi yang dibangun tidak akan dapat digunakan dan pada umumnya hanya sedikit sekali jenis telepon selular yang menggunakan aplikasi standar yang sama. Atas dasar pertimbangan tersebut, aplikasi yang dibangun akan ditujukan untuk pengguna GSM. Tampilan hasil enkripsi dan data hasil enkripsi yang diterima harus diperhatikan, hal ini dikarenakan pada data hasil enkripsi, setiap karakternya akan memiliki panjang 8 bit, sedangkan sebagian telepon selular hanya dapat menampilkan karakter dengan panjang 7 bit. Untuk 128 karakter pertama pada karakter ASCII dengan panjang 8 bit yang jarak karakternya direpresentasikan oleh bit-bit 00000000 sampai 011111111 akan dapat ditampilkan oleh telepon selular karena bit MSB yang bernilai 0 tidak akan dibaca, namun apabila bit MSB tersebut bernilai 1, maka jika dipaksa untuk ditampilkan sebagai karakter oleh telepon selular, akan ditampilkan sebagai karakter dalam format ucs2 atau unicode yang memiliki panjang 16 bit atau menjadi bernilai 2 III-4

byte. hal ini akan sangat merugikan jika diimplementasikan untuk SMS. Dengan pertimbangan tersebut, dalam implementasi yang akan dilakukan, jika sebuah pesan telah terenkripsi, maka, dalam pengiriman pesan, pesan yang dikirim berupa pesan binary yang terdiri dari byte-byte hasil enkripsi. Seperti telah dijelaskan sebelumnya, layar pada sebagian besar telepon selular hanya dapat menampilkan karakter dengan panjang 7 bit dan pesan yang telah terenkripsi akan berbentuk binary, sehingga layar tidak akan dapat menampilkan dengan semestinya. Oleh karena itu, pada aplikasi yang akan dibangun, untuk menampilkan pesan yang telah dienkripsi, ditambahkan informasi karakter yang terdapat pesan tersebut dengan format heksadesimal agar dapat ditampilkan dilayar dan informasinya dapat terbaca. 3.1.4 Analisis Dampak Sistem Berikut akan dibahas dampak perangkat lunak yang akan dibangun terhadap sistem pada telepon selular dan juga dampak keamanan yang ditimbulkan oleh perangkat lunak, akan dibahas juga perbandingan perangkat lunak yang akan dibangun dengan aplikasi SMS standar: 1. Dampak perangkat lunak terhadap sistem telepon selular Perangkat lunak yang akan dibangun akan berdiri sendiri, oleh karena itu perangkat lunak yang akan dibangun tidak melakukan komunikasi atau berinteraksi dengan aplikasi yang sudah terdapat pada telepon selular. Pada dasarnya, sebuah telepon selular hanya memiliki sebuah saluran untuk melakukan pengiriman SMS, oleh karena itu ketika perangkat lunak yang akan dibangun sedang melakukan pengiriman SMS, maka selama pengiriman tersebut, aplikasi SMS lain tidak dapat melakukan pengiriman SMS, begitu pula sebaliknya. Hal yang sama terjadi juga pada penerimaan SMS, walaupun menggunakan nomor port, namun pada dasarnya saluran penerimaan SMS pada telepon selular hanya satu, nomor port tersebut hanya digunakan untuk menandai aplikasi yang akan menerima pesan. SMS yang dikirimkan oleh perangkat lunak yang akan dibangun akan diterima oleh perangkat lunak yang sama, jika telepon selular yang dituju tidak memiliki perangkat lunak tersebut, maka SMS akan masuk ke dalam aplikasi SMS standar yang dimiliki oleh III-5

telepon selular tersebut. Perangkat lunak yang akan dibangun akan memiliki penyimpanan data sendiri, oleh karena itu tidak akan mempengaruhi penyimpanan data yang digunakan oleh aplikasi lain pada telepon selular. Perangkat lunak yang akan dibangun akan menempati sebuah port, sehingga port yang sudah digunakan oleh perangkat lunak yang akan dibangun ini tidak dapat digunakan oleh perangkat lunak lain, namun port yang akan digunakan akan menggunakan port yang jarang digunakan. 2. Dampak keamanan oleh perangkat lunak Dengan dienkripsinya SMS yang dikirimkan, maka serangan berjenis man-inthe-middle attack yang terjadi ketika pesan berada pada jaringan SMS dapat dihindarkan. SMS yang dikirimkan oleh pengirim akan berhenti pada jaringan SMS seperti MSC, pada saat ini, penyerang dapat melihat pesan yang dikirmkan, penyerang akan mudah memilih pesan untuk dibaca, karena nomor pengirim akan terdapat pada pesan yang dikirimkan, namun dengan dienkripsinya isi pesan, penyerang tidak dapat membaca pesan tersebut. Kerahasiaan pun akan terjaga apabila terjadi salah kirim, karena tanpa masukkan kunci yang benar pesan tidak akan terbaca. 3. Perbandingan dengan aplikasi SMS standar Jika dibandingkan dengan aplikasi SMS standar, perangkat lunak yang akan dibangun akan memberikan keuntungan berupa keamanan. Pesan yang dikirimkan oleh perangkat lunak yang akan dibangun akan terenkripsi sehingga sulit untuk dibaca. Namun perangkat lunak yang akan dibangun akan memiliki kekurangan yaitu, pesan akan cenderung membesar, ada kemungkinan sebuah pesan berubah menjadi dua buah pesan setelah dienkripsi. 3.2 Analisis Kebutuhan Perangkat Lunak Pada subbab ini akan dilakukan analisis dari proses pembangunan perangkat lunak berdasarkan analisis yang telah dilakukan pada subbab sebelumnya. Analisis yang akan dibahas akan meliputi analisis kebutuhan perangkat lunak, perancangan arsitektur perangkat lunak dan proses perangkat lunak. III-6

3.2.1 Deskripsi Umum Sistem Perangkat lunak yang akan dibangun, merupakan perangkat lunak yang diterapkan pada telepon selular dan memiliki fungsi untuk melakukan enkripsi SMS. Perangkat lunak yang akan dibangun harus dapat melakukan pengiriman dan peneriman pesan, baik pesan yang terenkripsi maupun yang tidak terenkripsi. Perangkat lunak yang akan dibentuk merupakan perangkat lunak yang digunakan untuk berkomunikasi, oleh karena itu, perangkat lunak yang akan dibangun akan ditanamkan pada pengirim dan juga penerima. Pengguna akan berinteraksi dengan perangkat lunak melalui user interface yang disediakan oleh perangkat lunak, pengguna memasukkan data dengan menggunakan keypad yang dimiliki oleh telepon selular. Pesan yang telah dibuat dikirimkan ke telepon selular lain melalui jaringan SMS. Secara umum, arsitektur global perangkat lunak dapat dilihat pada Gambar III-1. Gambar III-1Arsitektur Global Sistem Data yang akan digunakan dalam sistem, yaitu : 1. Data pesan SMS Data pesan SMS adalah pesan yang dimasukkan oleh pengirim yang ingin ditujukan pada penerima. Data pesan SMS ini adalah pesan yang belum terenkripsi. Data pesan ini merupakan pesan teks, namun pada awal proses enkripsi, data ini diubah menjadi bentuk binary. III-7

2. Data pesan SMS terenkripsi Data pesan SMS terenkripsi adalah data pesan SMS yang telah terenkripsi oleh algoritma RC6 berdasarkan kunci yang dimasukkan oleh pengguna. Data pesan SMS terenkripsi berbentuk binary, oleh karena itu pada umumnya tidak dapat dibaca. 3. Data kunci enkripsi Data ini berasal dari pengirim. Data ini digunakan untuk melakukan proses enkripsi. Seperti halnya data pesan SMS, data ini pada awalnya berupa teks, diubah menjadi bentuk binary. Pada pemakaiannya untuk proses enkripsi, data ini diubah menjadi kumpulan kunci internal. 4. Data kunci dekripsi Data ini berasal dari penerima, penggunaan data ini dalam proses dekripsi sama dengan data kunci enkripsi pada proses enkripsi. Jika data ini sama dengan data kunci enkripsi, maka hasil data pesan SMS keluaran yang dihasilkan akan sama dengan data pesan SMS. 5. Data pesan keluaran Data ini adalah hasil keluaran akhir yang didapatkan oleh penerima setelah memasukan data kunci dekripsi. Pada awalnya data ini akan didapat dalam bentuk binary, namun akan diubah dalam bentuk teks agar lebih mudah untuk dibaca. Untuk lebih jelasnya bagaimana data tersebut akan bekerja pada sistem, dapat dilihat pada skema kerja sistem Gambar III-2. Gambar III-2 Skema kerja sistem III-8

3.2.2 Analisis Spesifikasi dan Kebutuhan Perangkat Lunak Perangkat lunak yang akan dibangun memiliki dua buah fitur utama, yaitu: 1. Melakukan enkripsi SMS pada telepon selular dengan algoritma RC6. Pada perangkat lunak yang akan dibangun, pengguna harus dapat melakukan pembuatan SMS yang kemudian dapat dienkripsi dan pesan SMS yang telah terenkripsi tersebut harus dapat dikirimkan ke tujuan dengan baik oleh perangkat lunak yang akan dibangun. 2. Melakukan dekripsi dari SMS terenkripsi yang diterima oleh telepon selular dengan algoritma RC6. Perangkat lunak harus dapat menerima pesan yang telah terenkripsi dan perangkat lunak juga harus dapat mendekripsi dengan baik pesan yang telah terenkripsi tersebut, jika kunci yang dimasukan benar. Agar kedua fitur utama tersebut dapat dipenuhi dan pengguna dapat menggunakan sistem dengan mudah, maka perangkat lunak yang akan dibangun memiliki beberapa kebutuhan yang harus tersedia pada perangkat lunak tersebut, kebutuhan fungsional perangkat lunak tersebut, yaitu: 1. Sistem memiliki kemampuan untuk dapat melakukan pengiriman pesan yang berbentuk binary. 2. Sistem dapat melakukan enkripsi SMS dengan menggunakan algoritma RC6. 3. Sistem harus dapat melakukan penyimpanan pesan. 4. Dalam melakukan penyimpanan pesan, pesan yang akan / sudah terkirim dengan pesan yang diterima harus dapat dibedakan. 5. Sistem harus dapat menerima pesan. Untuk dapat menerima pesan ini, sistem harus dapat berjalan terus dan dapat memberikan pemberitahuan jika pesan datang. 6. Sistem harus mampu melakukan dekripsi. Pesan yang telah terenkripsi harus dapat dikembalikan menjadi pesan semula jika masukkan kunci dari pengguna benar. 7. Sistem memiliki fasilitas untuk melakukan pemilihan properti algoritma RC6. Selain kebutuhan fungsional diatas, aplikasi yang akan dibangun harus dapat memenuhi beberapa kebutuhan non-fungsional yang dapat membantu pengguna III-9

dalam menggunakan aplikasi dan juga dapat memudahkan dalam pengembangan lebih lanjut. Kebutuhan non-fungsional itu antara lain: 1. Sistem akan memiliki antar muka yang menarik dan juga mudah untuk dimengerti. 2. Sistem akan memiliki menu bantuan agar memudahkan dalam penggunaan. 3. Sistem mudah untuk dikembangkan lebih lanjut. Untuk memenuhi hal ini, sistem sebaiknya dibangun dengan konsep pemrograman berorientasi objek, dengan rancangan kelas yang baik. 3.2.3 Model Use Case Hal-hal yang dapat dilakukan oleh pengguna terhadap sistem dapat dilihat pada diagram use case pada Gambar III-3. Gambar III-3 Use Case Global Pada Gambar III-3, yang dimaksud dengan pengguna adalah pengirim atau penerima, dimana pengirim dapat menjadi penerima dan penerima dapat menjadi pengirim. III-10

Penjelasan use case pada Gambar III-3 adalah sebagai berikut: 1 Mengirim pesan terenkripsi. Aktor dapat melakukan pengiriman pesan melalui SMS. Pesan yang dikirim merupakan pesan yang telah terenkripsi. Pesan yang telah dikirimkan disimpan pada telepon selular. Pada use case ini dilakukan pula proses pembentukan kunci internal untuk digunakan dalam proses enkripsi dan juga dilakukan proses enkripsi tersebut sebelum pesan dikirimkan, pada akhir dari proses pesan yang dikirimkan disimpan. Diagram use case detil dari use case mengirim pesan terenkripsi dapat dilihat pada Gambar III-4. Diagram alir untuk pengiriman pesan terenkripsi dapat dilihat pada Gambar III-5, dimana proses dimulai ketika pengguna menjalankan aplikasi. Gambar III-4 Diagram use case detil : use case mengirim pesan terenkripsi III-11

Gambar III-5 Diagram alir mengirim pesan terenkripsi 2 Mendekripsi pesan yang diterima. Aktor dapat menerima pesan yang telah dikirimkan oleh perangkat lunak. Pesan yang diterima berupa pesan yang telah terenkripsi. Pesan yang diterima akan dapat didekripsi dan kembali menjasi pesan awal jika kunci yang dimasukkan benar. Pesan yang telah didekripsi diubah menjadi pesan teks agar dapat dibaca oleh pengguna dengan mudah. Pada use case ini, terdapat proses penerimaan pesan, pembentukan kunci internal untuk proses dekripsi dan pesan yang telah didekripsikan disimpan kemudian ditampilkan. Diagram use case detil dari use case menerima pesan dapat dilihat pada Gambar III-6. Proses dari use case ini dimulai ketika sistem menerima pesan, setelah sistem menerima pesan, sistem akan otomatis berjalan dan melakukan pemberitahuan kepada pengguna bahwa pesan III-12

telah masuk. Diagram alir untuk mendekripsi pesan yang diterima dapat dilihat pada Gambar III-7. Gambar III-6 Diagram use case detil : use case mendekripsi pesan yang diterima Gambar III-7 Diagram alir mendekripsi pesan yang diterima III-13

3 Memilih properti algoritma. Aktor dapat memilih jumlah rotasi yang akan digunakan untuk melakukan enkripsi dan dekripsi. Use case ini cukup sederhana, pada use case ini sistem hanya akan menyesuaikan jumlah rotasi algoritma sesuai dengan keinginan pengguna. Diagram alir untuk memilih properti algoritma dimulai dari pengguna memilih menu opsi, untuk selengkapnya dapat dilihat pada Gambar III-8. Gambar III-8 Diagram alir memilih properti algoritma 3.2.4 Analisis Kelas Berikut adalah kelas-kelas yang akan muncul pada perangkat lunak yang akan dibangun: 1. Kelas Interface Kelas ini berfungsi sebagai antar muka pengguna untuk melakukan interaksi dengan perangkat lunak. Pengguna akan melakukan masukkan-masukkan baik perintah ataupun data lain melalui kelas ini, hasil-hasil keluaran dari perangkat lunak pun akan ditampilkan melalui kelas ini. Kelas ini juga berfungsi sebagai antar muka aplikasi dengan sistem pada telepon selular, dimana ketika telepon selular mendapatkan pesan dan ternyata ditujukan untuk perangkat lunak yang sakan dibangun, kelas ini akan menangkap pesan tersebut dan menyalakan aplikasi. III-14

2. Kelas RC6 Algoritma RC6 beserta algoritma pembentukan kunci internal RC6 akan diimplementasikan pada kelas ini. Pada kelas ini dilakukan proses enkripsi dan dekripsi sebuah blok dengan menggunakan algoritma RC6. 3. Kelas ECB Pada kelas ini akan diimplementasikan mode ECB untuk melakukan pemrosesan blok ketika melakukan enkripsi dan dekripsi. Kelas ini akan menggunakan kelas RC6 untuk melakukan pemrosesan setiap bloknya. 4. Kelas SMSSender Kelas ini akan berfungsi sebagai pengirim pesan. Kelas ini akan merubah pesan teks menjadi bentuk binary yang kemudian melakukan enkripsi pesan tersebut dan akhirnya mengirimkan pesan tersebut. Kelas ini akan memanggil kelas ECB untuk melakukan enkripsi. 5. Kelas SMSReceiver Kelas ini akan menerima pesan yang dikirimkan oleh kelas SMSSender. Kelas ini akan dipanggil oleh kelas Interface ketika kelas Interface menerima pesan. Kelas ini akan memanggil kelas ECB untuk melakukan dekripsi sesuai kunci yang dimasukkan pengguna, kemudian mengubah hasil dekripsi menjadi bentuk yang dapat dibaca oleh pengguna. 6. Kelas SMSStore Kelas ini akan berfungsi untuk menyimpan pesan yang telah dikirmkan ataupun pesan yang telah diterima berdasarkan keinginan dari pengguna. Untuk lebih jelas, perancangan kelas analisis yang dibangun dapat dilihat pada Gambar III-9. III-15

SMSSender Interface SMSStore ECB SMSReceive RC6 Gambar III-9 Diagram Kelas Analisis III-16