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

dokumen-dokumen yang mirip
BAB III ANALISIS PENYELESAIAN MASALAH

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

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

BAB III ANALISA MASALAH DAN PERANCANGAN PROGRAM

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISA DAN DESAIN SISTEM

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

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM

BAB II LANDASAN TEORI

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

BAB IV HASIL DAN UJI COBA

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA DAN PERANCANGAN

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

BAB III ANALISA DAN DESAIN SISTEM

BAB IV ANALISA DAN PERANCANGAN

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM

Bab 3. Metode dan Perancangan Sistem

BAB III PERANCANGAN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN SISTEM

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA DAN DESAIN SISTEM


BAB IV HASIL DAN UJI COBA

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA MASALAH DAN PERANCANGAN


BAB III ANALISIS DAN DESAIN SISTEM

BAB IV PERANCANGAN SISTEM

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISA DAN PERANCANGAN

BAB IV HASIL DAN UJI COBA

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN SISTEM. permasalahan-permasalahan dan kebutuhan-kebutuhan yang diharapkan sehingga dapat

BAB III ANALISIS DAN PERANCANGAN

BAB IV HASIL DAN UJI COBA

BAB III ANALISA DAN DESAIN SISTEM

Bab 3. Metode dan Perancangan Sistem

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

ANALISA DAN PERANCANGAN SISTEM

BAB IV. ANALISIS DAN PERANCANGAN

BAB IV HASIL DAN UJI COBA


BAB III ANALISA DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA MASALAH DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN SISTEM

BAB IV HASIL DAN PEMBAHASAN

BAB I PENDAHULUAN 1.1 Latar Belakang

IMPLEMENTASI PENGAMANAN DATA ENKRIPSI SMS DENGAN ALGORITMA RC4 BERBASIS ANDROID

IMPLEMENTASI ALGORITMA ADVANCED ENCRYPTION STANDARD (AES) UNTUK ENKRIPSI DAN DEKRIPSI PADA DOKUMEN TEKS ABSTRAK

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISA DAN PERANCANGAN. pengamanan file teks dengan menggunakan algoritma triangle chain dan rivest cipher (RC4).

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN PERANCANGAN SISTEM

BAB III ANALISIS DAN PERANCANGAN

APLIKASI JAVA KRIPTOGRAFI MENGGUNAKAN ALGORITMA VIGENERE. Abstract

BAB III BAB III METODE PENELITIAN

BAB III ANALISIS DAN PERANCANGAN SISTEM

Gambar 4.1 Flowchart

BAB 1 PENDAHULUAN Latar Belakang

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

BAB V IMPLEMENTASI DAN PENGUJIAN

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISIS DAN PERANCANGAN

BAB III. ANALISIS MASALAH

BAB III ANALISIS DAN PERANCANGAN 3.1 ANALISIS DAN PROSES BISNIS YANG BERJALAN

BAB III PERANCANGAN SISTEM. Shipping Direktorat Jenderal Imigrasi menunjukkan bahwasanya dalam akses

BAB IV HASIL DAN PEMBAHASAN

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISIS DAN DESAIN SISTEM

APLIKASI SECURE MESSAGE MENGGUNAKAN ALGORITMA CR6 BERBASIS ANDROID

BAB III ANALISA DAN PERANCANGAN

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

Bab 1 PENDAHULUAN Latar Belakang

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB IV PERANCANGAN Perancangan Proses Kriptanalisis

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM

BAB I PENDAHULUAN Latar Belakang

Transkripsi:

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM III.1. Analisis 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. Dalam pembahasan kriptografi yang sedang di bahas yaitu mengenai mengamankan isi dari sebuah pesan singkat pada platform symbian dengan menggunakan algoritma kriptografi RC6. Berikut di bawah ini analisa rancangan dari permasalahan yang sedang di bahas : a. Kurangnya keamanan pada saat pengiriman pesan singkat melalui SMS. b. Memanfaatkan layanan SMS untuk mengirim pesan atau informasi yang bersifat rahasia. 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. Seperti telah dijelaskan pada bab sebelumnya, struktur SMS secara garis besar dibagi menjadi dua bagian, yaitu Message Header dan Message Body. Perlu 54

55 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.1. Analisis Algoritma RC6 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

56 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 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

57 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. III.1.2. 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. 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

58 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. 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 bityang jarak karakternya direpresentasikan oleh bit-bit 00000000 sampai 01111111 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 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

59 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. Algoritma RC6 yang akan digunakan dalam aplikasi pengamanan SMS yang akan dibangun dengan w sebesar 32 bit, r sebesar 20 kali putaran dan panjang kunci beragam lebih dari 1 karakter (8 bit). Adapun langkah-langkah algoritma RC6 dalam aplikasi pengamanan SMS ini akan dikelompokan ke dalam beberapa bagian, yaitu : a. Pembangkit Sub Kunci Kunci dari pengguna ini akan dimasukan oleh pengguna pada saat akan melakukan proses enkripsi dan dekripsi. Kunci ini memiliki tipe data string. b. Baca Masukan untuk Proses Enkripsi Yang dilakukan pada tahapan ini adalah membaca teks yang menjadi masukan pada proses enkripsi yaitu field dari aplikasi ini pada proses enkripsi pesan, field-nya adalah isi pesan. c. Enkripsi meliputi whitening awal, iterasi, dan whitening akhir. d. Baca Masukan untuk Proses Dekripsi Yang dilakukan pada tahapan ini adalah membaca teks yang menjadi masukan pada proses dekripsi, yaitu record dari hasil pesan yang telah dienkripsi pada pengirim dan menjadi field pesan pada penerima. e. Dekripsi merupakan kebalikan dari proses enkripsi.

60 Adapun contoh proses enkripsi RC6 adalah sebagai berikut : Misal : Kunci = AAAABBBBCCCCDDDD Hex = 41414141424242424343434344444444 IV/C0 = 20,25,30,14,255,254,244,233,150,140,111,125,13,55,16,180 Hex = 14191E0EFFFEF4E9968C677D0D3710B4 Plainteks = RIKIAPRIANEFENDI Hex = 52494B4941505249414E4546454E4449 P XOR IV = 52494B4941505249414E4546454E4449 OR 14191E0EFFFEF4E9968C677D0D3710B4 = 66505547BEAEA6A0D7C2223B487954FD Hasil XOR Kunci = 66505547BEAEA6A0D7C2223B487954FD XOR 41414141424242424343434344444444 = 27111406FCECE4E2958161780C3D10B9 Geser 1 bit ke kiri = 4E22280DF9D9C9C52B02C2F0187A2172 Hasilnya = N (13 +2 24z!r

61 Adapun contoh proses dekripsi RC6 adalah sebagai berikut : Ciphertext = N (13 +2 24z!r Hex = 4E22280DF9D9C9C52B02C2F0187A2172 Geser Kanan 1 Bit = 27111406FCECE4E2958161780C3D10B9 Hasil XOR Kunci = 27111406FCECE4E295 8161780C3D10B9 XOR 41414141424242424343434344444444 = 66505547BEAEA6A0D7C2223B487954FD Hasil XOR IV = 66505547BEAEA6A0D7C2223B487954FD XOR 14191E0EFFFEF4E9968C677D0D3710B4 = 52494B4941505249414E4546454E4449 Hasilnya = RIKIAPRIANEFENDI III.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. Data yang akan digunakan dalam sistem, yaitu : 1. Data Pesan SMS Data pesan SMS adalah pesan yang dimasukkan oleh pengirim yang ingin

62 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. 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.

63 III.2.1. 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, system harus dapat berjalan terus dan dapat memberikan pemberitahuan jika pesan datang.

64 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 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. III.2.2. Flowchart Flowchart atau diagram alir adalah sekumpulan simbol-simbol atau skema yang menunjukkan atau menggambarkan rangkaian kegiatan-kegiatan program dari mulai awal hingga akhir. Adapun flowchart dari aplikasi enkripsi dengan menggunakan algoritma RC6 yang diterapkan untuk enkripsi SMS adalah pada gambar III.1.

65 1. Flowchart Menu Utama Start X Menu Utama Pilihan menu Kirim Pesan Y Form Kirim Pesan A T Baca Pesan Y Form Baca Pesan B T T Keluar Y End Gambar III.1. Flowchart Menu Utama

66 2. Flowchart Form Kirim Pesan A Input No Tujuan Input Isi Pesan Input Kunci Bangun Kunci Internal Ubah Pesan Menjadi Binary Enkripsi Pesan Mengirim Pesan X Gambar III.2. Flowchart Form Kirim Pesan 3. Flowchart Form Baca Pesan B Input Kunci Bangun Kunci Internal Dekripsi Pesan Menampilkan Isi Pesan X Gambar III.3. Flowchart Form Baca Pesan

67 4. Flowchart Proses Enkripsi RC6 Mulai Whitening B = B + S[0] D = D + S[1] i = 0 i = i + 1 t=ror((b*(2b+1)),lgw u=ror((d*2d+1)),lgw A=Ror((A t),u)+s[2i] C=Ror((C u,t)+s[2i+1] (A,B,C,D)=(B,C,D,A) Tidak i=r Ya Whitening A = A + S[42] C = C + S[43] Selesai Gambar III.4. Flowchart Proses Enkripsi RC6

68 5. Flowchart Proses Dekripsi RC6 Mulai Whitening C = C - S[43] A = A - S[42] i = r + 1 i = i - r (A,B,C,D)=(B,C,D,A) u=rol((d*2d+1)),lgw t=rol((b*(2b+1)),lgw C=Ror((C-S[2i+1],t)), u A=Ror((A-S[2i],u)), 1 Tidak i=0 Ya Whitening D = D - S[1] B = B - S[0] Selesai Gambar III.5. Flowchart Proses Dekripsi RC6

69 III.2.3. Use Case Hal-hal yang dapat dilakukan oleh pengguna terhadap sistem dapat dilihat pada diagram use case pada Gambar III.4. Tulis SMS extends Enkripsi SMS Inbox extends Dekripsi SMS Pengguna Outbox Bantuan Keterangan Gambar III.6. Use Case Diagram Aplikasi Pengamanan SMS Pada Gambar III.4. yang dimaksud dengan pengguna adalah pengirim atau penerima, di mana pengirim dapat menjadi penerima dan penerima dapat menjadi pengirim. Penjelasan use case pada Gambar III.4. adalah sebagai berikut: 1. Mengirim/menulis pesan terenkripsi. Aktor dapat melakukan pengiriman pesan melalui menu Tulis 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 enkripsidan juga dilakukan proses enkripsi tersebut sebelum pesan dikirimkan, pada akhir dari proses pesan yang dikirimkan disimpan.

70 2. Mendekripsi pesan yang diterima pada kotak Inbox. 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 menjadi 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. 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 telah masuk. 3. Pengguna juga dapat melihat pesan yang telah dikirim dan tersimpan pada kotak Outbox, pesan yang tersimpan ini dapat dihapus atau diteruskan ke nomor tujuan yang lain. 4. Pengguna juga dapat melihat cara menggunakan aplikasi menu Bantuan dan pada menu Keterangan berisi tentang pembuat aplikasi SMS ini. III.2.4. Activity Diagram Activity diagram merupakan salah satu cara memodelkan event-event yang terjadi dalam use case. Pada diagram ini secara ensensial mirip dengan diagram alir (flowchart), memperlihatkan aliran kendali dari suatu aktifitas ke aktifitas lainnya. Activity diagram berfungsi untuk menvisualisasikan, menspesifikasi, mengkonstruksi, serta mendokumentasikan sifat dari sekumpulan objek, selain itu juga dapat digunakan memodelkan aliran kendali dari suatu operasi.

71 Pada gambar III.7. ditunjukkan aliran sistem secara global di mana dapat dilihat aliran-aliran atau proses yang terjadi dan menjelaskan aktivitas-aktifitas yang terjadi pada aplikasi pengiriman SMS. Gambar III.7. Diagram Activity Aplikasi Pengiriman SMS III.2.5. Sequence Diagram Sequence diagram menggambarkan interaksi sebagai diagram dua matra (dimensi). Matra vertikal adalah sumbu waktu, waktu bertambah dari atas ke bawah. Matra horizontal memperlihatkan peran pengklasifikasi yang mempersentasikan objek-objek mandiri yang terlibat dalam kolaborasi. Panahpanah yang menggambarkan aliran pesan antar peran pengklasifikasi digambarkan dalam urutan waktu kejadiannya dari atas ke bawah. Sequence diagram dari dapat dilihat pada gambar III.8.

72 Aplikasi User 1.1 Memilih menu kirim sms 1.2 Menampilkan pilihan input no tujuan 1.3 Menginput no tujuan 1.4 Menampilkan pilihan input isi pesan 1.5 Menginput isi pesan 1.6 Menampilkan pilihan input kunci 1.7 Menginput isi kunci 1.8 Mengenkrip dan mengirim sms 2.1 Memilih menu baca pesan 2.2 Menampilkan pilihan input kunci 2.3 Menginput Kunci 2.4 Mendekripsi dan menampilkan pesan 3.1 Keluar dari Aplikasi Gambar III.8. Sequence DiagramAplikasi Pengiriman

73 III.2.6. Perancangan Interface Pada perancangan ini, dilengkapi dengan rancangan user interface, yang menjadi acuan dalam implementasi dengan menggunakan bahasa pemrograman Java. 1. Form Menu Utama Form menu utama menampilkan pilihan untuk mengirim pesan atau menampilkan isi pesan. MENU SMS Tulis SMS Inbox Outbox Bantuan Keterangan Keluar Pilih Gambar III.9. Form Menu Utama 2. Form Tulis SMS Form Tulis SMS berfungsi untuk menulis dan mengirimkan pesan. Form ini memiliki input isi pesan, kunci dan no tujuan.

74 Tulis Pesan Pilihan Kirim/Balas Simpan Hapus Text Kembali Pilihan Kembali Kirim Ke Key OK Batal Kirim Gambar III.10. Form Tulis SMS 3. Form Inbox daftar inbox. Form Inbox berfungsi untuk menampilkan pesan masuk yang ada pada

75 Daftar SMS Inbox No Pengirim SMS Dari xxxxxx Isi Pesan No Pengirim No Pengirim Kembali Menu Kembali Pilihan Gambar III.11. Form Inbox 4. Form Outbox daftar outbox. Form Outbox berfungsi untuk menampilkan pesan keluar yang ada pada Daftar SMS Outbox No Tujuan Ke xxxxxxxxxxx Isi Pesan No Tujuan No Tujuan Kembali Menu Gambar III.12. Form Outbox Kembali Pilihan 5. Form Bantuan Form Bantuan merupakan form untuk menampilkan bantuan untuk menggunakan aplikasi yang dirancang.

76 Bantuan Bantuan Kembali Gambar III.13. Form Bantuan 6. Form Keterangan aplikasi ini. Form Keterangan merupakan form untuk menampilkan keterangan tentang Keterangan Keterangan Kembali Gambar III.14. Form Keterangan