• Tidak ada hasil yang ditemukan

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

N/A
N/A
Protected

Academic year: 2021

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

Copied!
13
0
0

Teks penuh

(1)

IV-1

BAB IV

PERANCANGAN

Pada bab IV akan dibahas rancangan lebih lanjut dari perancangan perangkat lunak yang akan dibangun. Perancangan tersebut akan meliputi pembahasan diagram kelas, perancangan modul dan perancangan antar muka.

4.1 Perancangan Kelas

4.1.1 Diagram Perancangan Kelas

Berdasarkan analisis kelas yang telah dilakukan pada subbab 3.2.4, maka dapat dilihat diagram kelas perancangan pada Gambar IV-1.

Interface + SendAndSave () : void SMSSender - inter : Interface + run () : void SMSReceive -smsPort smsconn msg senderAddress buf inter : String : MessageConnection : Message : String : StringBuffer : Interface + + AmbilNomor (String S) run () : String : void RC6 -w u r S[] A B C D LGW : int : int : int : int : int : int : int : int : int = 32 = 4 = 5 -+ -+ -+ -Decription ()

Dekrip (byte[] in, int inOff, byte[] out) Encryption ()

Enkrip (byte[] in, int inOff, byte[] out) F (int x)

initreg (byte[] src, int srcOff) regToCipher (byte[] dst, int dstOff) regToPlain (byte[] out, int inOff) rotateLeft (int x, int y) rotateRight (int x, int y) setKey (byte[] key)

swap (int A, int B, int C, int D)

: void : void : void : void : int : void : void : void : int : int : void : void ECB -plain blocksize algo jumlahblock pad : byte[] : int : RC6 : int : int = 16 + + enkripECB () DekripECB () : void : void SMSStore -inbox inboxdate outbox outboxdate sender receiver : RecordStore : RecordStore : RecordStore : RecordStore : RecordStore : RecordStore + + + + DeleteAllInbox () DeleteAllOutbox ()

SaveInbox (byte[] pesan, byte[] date, byte[] address) SaveOutbox (byte[] pesan, byte[] date, byte[] address)

: void : void : void : void

(2)

IV-2

4.1.2 Deskripsi Diagram Perancangan Kelas

Berikut adalah deskripsi dan penjelasan dari kelas-kelas yang muncul pada diagram perancangan kelas:

1. Kelas Interface

Kelas ini akan menjadi kelas midlet perangkat lunak yang akan dibangun. Kelas ini juga akan menjadi kelas yang menunggu datangnya SMS pada port yang digunakan oleh perangkat lunak untuk menerima SMS. Port yang digunakan untuk menunggu pesan adalah port 50000.

2. Kelas ECB

Isi dari kelas ini adalah mengimplementasikan mode ECB yang digunakan untuk melakukan enkripsi pada pesan yang akan dikirim.

3. Kelas SMSSender

Kelas ini akan menjadi kelas yang dapat dijalankan pada sebuah thread. Kelas ini akan melakukan pengiriman pesan. Pesan yang dikirim akan ditujukan pada aplikasi yang menempati port 50000.

4. Kelas SMSReceive

Kelas ini digunakan untuk memproses pesan yang datang pada port 50000. Pesan yang datang akan diproses sehingga informasi pesan tersebut dapat ditampilkan pada layar dan siap untuk didekripsi.

5. Kelas SMSStore

Kelas ini akan berfungsi untuk melakukan penyimpanan pesan. Pada sebuah pesan, informasi yang akan dipesan adalah informasi isi pesan, informasi pengirim atau penerima dan informasi waktu pesan dikirimkan atau diterima. Untuk pesan yang diterima, pesan yang disimpan adalah pesan yang telah didekripsi, oleh karena itu, apabila pengguna tidak melakukan dekripsi pesan maka pesan tidak akan disimpan. Sedangkan untuk pesan yang dikirim, pesan yang disimpan adalah pesan yang telah terenkripsi.

6. Kelas RC6

Kelas ini akan mengimplementasikan algoritma RC6 yang siap untuk diimplementasikan pada mode ECB.

(3)

IV-3

4.1.3 Operasi dan Atribut

1. Kelas Interface

Daftar dan penjelasan operasi dari kelas Interface dapat dilihat pada Tabel IV-1.

Tabel IV-1 Daftar Operasi dari Kelas Interface

Nama Operasi Visibility

(private, public)

Keterangan

SendAndSave Public Prosedur ini berfungsi untuk

menjalankan prosedur pengiriman pesan dan menyimpan pesan yang dikirim.

2. Kelas ECB

Daftar operasi dan penjelasan dari kelas ECB dapat dilihat pada Tabel IV-2 dan daftar atribut kelas ECB dapat dilihat pada Tabel IV-3.

Tabel IV-2 Daftar Operasi Kelas ECB

Nama Operasi Visibility

(private, public)

Keterangan

enkripECB Public Prosedur ini berfungsi untuk

melakukan enkripsi dengan mode ECB

DekripECB Public Prosedur ini berfungsi untuk

melakukan dekripsi dengan mode ECB

Tabel IV-3 Daftar Atribut Kelas ECB

Nama Atribut Visibility

(private, public)

Tipe

plain Private Array of byte

(4)

IV-4 3. Kelas SMSSender

Daftar operasi dan penjelasan dari kelas ECB dapat dilihat pada Tabel IV-4 dan daftar atribut kelas ECB dapat dilihat pada Tabel IV-5.

Tabel IV-4 Daftar Operasi Kelas SMSSender

Nama Operasi Visibility

(private, public)

Keterangan

run Public Prosedur ini akan dapat

dijalankan pada sebuah thread. Pada fungsi ini akan dilakukan proses pengiriman pesan.

Tabel IV-5 Daftar Atribut Kelas SMSSender

Nama Atribut Visibility

(private, public)

Tipe

inter private Interface

4. Kelas SMSReceive

Daftar operasi dan penjelasan dari kelas ECB dapat dilihat pada Tabel IV-6 dan daftar atribut kelas ECB dapat dilihat pada Tabel IV-7.

Tabel IV-6 Daftar Operasi Kelas SMSReceive

Nama Operasi Visibility

(private, public)

Keterangan

AmbilNomor Public Fungsi ini digunakan untuk

mengambil nomor pengirim dari data pesan yang didapat

run Public Prosedur ini dapat dijalankan

pada sebuah thread. Fungsi ini akan berjalan ketika pesan datang. fungsi ini akan berfungsi untuk memproses pesan yang datang.

(5)

IV-5 Tabel IV-7 Daftar Atribut Kelas SMSReceive

Nama Atribut Visibility

(private, public)

Tipe

smsPort Private String

Smsconn Private MessageConnection

msg Private Message

senderAddress Private String

buf Private StrinBuffer

inter Private Interface

5. Kelas SMSStore

Daftar operasi dan penjelasan dari kelas ECB dapat dilihat pada Tabel IV-8 dan daftar atribut kelas ECB dapat dilihat pada Tabel IV-9.

Tabel IV-8 Daftar Operasi Kelas SMSStore

Nama Operasi Visibility

(private, public)

Keterangan

DeleteAllInbox Public Prosedur ini berfungsi untuk

menghapus semua isi data pada inbox

DeleteAllOutbox Public Prosedur ini berfungsi untuk menghapus semua isi data pada outbox.

SaveInbox Public Prosedur ini berfungsi untuk

menyimpan informasi pesan pada inbox.

SaveOutbox Public Prosedur ini berfungsi untuk

menyimpan informasi pesan pada inbox

Tabel IV-9 Daftar Atribut Kelas SMSStore

Nama Atribut Visibility

(private, public)

Tipe

inbox Private RecordStore

inboxdate Private RecordStore

outbox Private RecordStore

(6)

IV-6

Nama Atribut Visibility

(private, public)

Tipe

sender Private RecordStore

receiver Private RecordStore

6. Kelas RC6

Daftar operasi dan penjelasan dari kelas ECB dapat dilihat pada Tabel IV-10 dan daftar atribut kelas ECB dapat dilihat pada Tabel IV-11.

Tabel IV-10 Daftar Operasi Kelas RC6

Nama Operasi Visibility

(private, public)

Keterangan

Decryption Private Prosedur ini berisi

implementasi fungsi dekripsi algoritma RC6.

Dekrip Public Prosedur berfungsi untuk

melakukan dekripsi suatu blok plainteks

Encryption Private Prosedur ini berisi

implementasi fungsi enkripsi algoritma RC6.

Enkrip Public Prosedur berfungsi untuk

melakukan enkripsi suatu blok plainteks

F Private Fungsi berisi fungsi

f(x) = (x*(2*+!))

initreg Private Prosedur ini berfungsi untuk

melakukan inisialisasi register A, B, C dan D

regToCipher Private Prosedur ini berfungsi untuk

mengubah hasil enkripsi yang masih berupa register-register menjadi cipherteks.

(7)

IV-7

Nama Operasi Visibility

(private, public)

Keterangan

regToPlain Private Prosedur ini berfungsi untuk

mengubah hasil dekripsi yang masih berupa register-register menjadi plainteks.

rotateLeft Private Fungsi untuk melakukan

rotasi sejumlah bit ke kiri.

rotateRight Private Fungsi ini berfungsi untuk

melakukan rotasi sejumlah bit ke kanan.

setKey Public Fungsi ini berfungsi untuk

membangun kunci internal.

swap Private Prosedur ini digunakan untuk

melakukan swapping antara register.

Tabel IV-11 Daftar Atribut Kelas RC6

Nama Atribut Visibility

(private, public) Tipe w Private Integer U Private Integer R Private Integer S Private Integer A Private Integer B Private Integer C Private Integer D Private Integer LGW Private Integer

(8)

IV-8

4.2 Pembagian Modul

Modul yang akan terdapat pada perangkat lunak akan dibagi menjadi 4 modul, yaitu:

1. Modul enkripsi pesan

Modul ini berisi fungsi-fungsi yang diperlukan untuk mengubah pesan yang dimasukkan oleh pengguna menjadi cipherteks. Pesan yang telah diubah menjadi cipherteks ini siap dikirimkan kepada penerima. Implementasi algoritma enkripsi RC6 diimplementasikan pada modul ini.

2. Modul penyimpanan pesan

Modul ini akan menangani proses penyimpanan pesan. Dari sisi pengirim, pesan yang disimpan merupakan pesan yang telah dikirimkan kepada penerima, yaitu berupa cipherteks, sedangkan dari sisi penerima, pesan yang disimpan adalah pesan yang telah diterima dan di dekripsi. Pesan yang disimpan oleh penerima tidak memperhitungkan pesan tersebut di dekripsi dengan menggunakan kunci yang tepat atau tidak.

3. Modul pengirim pesan

Fungsi-fungsi untuk melakukan pengiriman pesan dilakukan oleh modul ini. Modul pengiriman pesan ini akan mengirimkan pesan yang telah terenkripsi kepada telepon selular tujuan.

4. Modul dekripsi pesan

Dekripsi pesan ditangani oleh modul ini. Fungsi-fungsi pada modul ini akan berisi fungsi dekripsi algoritma RC6 dan fungsi-fungsi lain yang berguna untuk melakukan dekripsi.

5. Modul penerima pesan

Modul ini akan memiliki fungsi-fungsi yang berguna untuk menangkap pesan yang masuk dan memprosesnya sehingga pesan tersebut siap untuk didekripsi.

(9)

IV-9 Modul-modul tersebut akan berinteraksi satu sama lain sesuai dengan Gambar IV-2

Gambar IV-2 Interaksi Modul

4.3 Perancangan Antar Muka

Berikut akan dilakukan perancangan antar muka dari beberapa layar yang penting pada aplikasi yang akan dibangun. Antar muka yang akan dirancang meliputi:

1. antar muka menu utama

2. antar muka menu pembangunan pesan 3. antar muka laporan hasil enkripsi. 4. antar muka daftar pesan yang disimpan

Antar muka lainnya akan mengikuti rancangan antar muka ketiga antar muka utama tersebut. Antar muka yang dibangun akan ditujukan pada telepon selular dengan dua buah tombol navigasi.

4.3.1 Perancangan Antar Muka Menu Utama

Menu utama ini akan menjadi menu navigasi utama dari perangkat lunak yang akan dibangun. Gambar antar muka hasil perancangan untuk menu utama dapat dilihat pada Gambar IV-3.

(10)

IV-10 Gambar IV-3 Perancangan Antar Muka Menu Utama

Pada Gambar IV-3 dapat terlihat bahwa akan terdapat 6 buah pilihan yang dapat dipilih dari menu utama. Pilihan tersebut adalah:

1. Compose Message

Jika pilihan ini dipilih maka layar untuk membuat suatu pesan akan muncul dan pengguna akan dapat memulai untuk membangun pesan.

2. Inbox

Menu inbox akan menampilkan daftar dari pesan yang telah diterima yang telah didekripsi oleh pengguna.

3. Outbox

Pesan yang telah dikirimkan akan masuk ke Outbox. Untuk melihak daftar dari Outbox tersebut, menu ini haruslah dipilih.

4. Option

Pilihan ini berfungsi untuk menuju layar untuk melakukan perubahan jumlah rotasi dari algoritma RC6.

5. Help

Jika pengguna ingin melihat menu pertolongan, maka pilihan Help inilah yang seharusnya dipilih.

6. Exit

(11)

IV-11

4.3.2 Perancangan Antar Menu Pembangunan Pesan

Antar muka yang akan terlihat ketika pengguna membangun pesan yang akan dienkripsi yang kemudian akan dikirimkan dapat dilihat pada Gambar IV-4.

Gambar IV-4 Perancangan Antar Muka Menu Pembangunan Pesan

Pada layar antar muka pembangunan pesan akan terdapat dua buah teks field, yaitu

Phone Number dan Message. Field Phone Number merupakan isian yang digunakan

sebagai nomor tujuan pengiriman pesan dan field Message merupakan isi pesan yang akan dienkripsi. Dua buah tombol yang akan muncul adalah tombol back dan menu.

Tombol back akan berfungsi untuk kembali ke layar menu utama dan tombol menu akan menampilkan menu lain, yaitu menu yang terdiri dari tombol encrypt message dan tombol exit. Tombol encrypt message akan memunculkan sebuah field untuk memasukkan kunci enkripsi yang akan digunakan untuk melakukan enkripsi terhadap pesan yang ditulis oleh pengguna. Tombol exit akan berfungsi untuk keluar dari aplikasi.

(12)

IV-12

4.3.3 Perancangan Antar Muka Layar Laporan Hasil Enkripsi

Pada Gambar IV-5 dapat dilihat rancangan antar muka dari layar yang ditampilkan ketika aplikasi selesai melakukan enkripsi terhadap pesan yang telah dimasukkan oleh pengguna.

Gambar IV-5 Perancangan Layar Laporan Hasil Enkripsi

Pada layar laporan hasil enkripsi akan terdapat tiga buah field teks, yaitu:

1. Encrypted Message

Field akan berisi informasi dari pesan yang telah dienkripsi yang diubah menjadi bentuk String.

2. Hex Information

Untuk melengkapi informasi yang terdapat pada field Encrypted Message yang dimana informasi yang ditampilkannya tidak akan benar-benar akurat karena pada dasarnya layar monitor tidak dapat menampilkan bentuk binary. Pada field Hex Information, informasi cipher teks dalam bentuk heksadesimal akan ditampilkan.

3. Encription Time

Pada field ini akan ditampilkan waktu yang digunakan aplikasi dalam melakukan enkripsi pesan.

(13)

IV-13

4.3.4 Perancangan Antar Muka Daftar Isi Pesan yang Disimpan

Pada Gambar IV-6 dapat dilihat perancangan antar muka untuk menampilkan daftar inbox dan outbox.

Gambar IV-6 Perancangan Antar Muka Daftar Isi Pesan yang Disimpan

Jenis pesan pada pada Gambar IV-6 adalah merupakan judul daftar pesan apakah itu

inbox atau outbox. Menu untuk tombol disamping akan menampilkan perintah untuk

melihat detail pesan tersebut atau untuk membalas pesan tersebut untuk inbox. Tombol back akan berfungsi untuk kembali ke layar menu utama.

Daftar pesan diperlihatkan dengan format:

<nomor pengirim/penerima><tanggal pesan diterima/ dikirimkan>

Detil pesan sendiri akan ditampilkan pada suatu textbox Detil pesan yang akan ditampilkan terdiri dari informasi pengirim atau penerima, tanggal pesan dikirim atau diterima dan isi dari pesan.

Gambar

Gambar IV-1 Diagram Kelas Perancangan
Tabel IV-2 Daftar Operasi Kelas ECB
Tabel IV-4 Daftar Operasi Kelas SMSSender
Tabel IV-8 Daftar Operasi Kelas SMSStore
+7

Referensi

Dokumen terkait

Manajer harus sangat berhati – hati dalam pengambilan keputusan pendanaan, sebab jumlah hutang yang semakin tinggi akan mengakibatkan financial distress yang

Peraturan Menteri Pendidikan dan Kebudayaan nomor 137 tahun 20014 tentang Standar Nasional Pendidikan Anak Usia Dini (PAUD) menjelaskan bahwa standar penilaian merupakan

Persepsi nasabah terhadapa banking card dilihat dari berbagai sisi dari pengetahuan nasabah kurang mengetahui akad-akad yang di gunakan dalam hasanah card, dari sisi

Peningkatan volume kendaraan dan atau transportasi udara dengan bahan bakarnya telah menjadikan udara diperkotaan tercemari (polusi udara). Termasuk berdirinya pabrik

[r]

Luaran dari kegiatan ini adalah terbentuknya kesadaran masyarakat desa gunungsari tentang manfat ekonomis sampah plastik dan logam, terbentuknya wadah ekonomi

Berdasarkan uraian tersebut dapat disimpulkan bahwa didapatkan nilai kuat tekan optimum pada penambahan modulus alkali 2 dikarenakan pada prosentase tersebut terjadi