57
b. Pada Proses Dekripsi
1. Transformasi karakter chiper menjadi kode ASCII
Proses dekripsi dimulai dengan mengubah karakter chiper yang diterima menjadi kode ASCII sehingga menjadi decimal
chiper
. 2.
Normalisasi kode ASCII chiper Setelah itu akan dilakukan normalisasi.
a. Decimal chiper akan ditambah dengan 32.
b. Setelah itu decimal chiper dikurangi dengan decimal
key
c. Lalu hasil pengurangan decimal chiper tersebut akan dinormalisasi
kembali, jika lebih kecil dari 32 maka ditambah dengan 94 agar menjadi range 126, dan jika tidak maka tetap.setelah normalisasi
selesai maka akan diperoleh decimal
plaintext
. 3.
Transformasi kode ASCII
plaintext
menjadi karakter
plaintext
Setelah mendapatkan decimal
plaintext
, maka akan diubah menjadi karakter kembali, dan
plaintext
dapat dibaca oleh user. Berikut adalah contoh penerapan penghitungan manual proses dekripsi :
Gambar 3. 2 Penghitungan manual proses dekripsi
58
Berikut adalah algoritma method dekripsi dengan Vigenere Running
Key
yang akan diterapkan pada kelas Vinerey
1. Mulai.
2. Deklarasikan atribut hasil bertipe string sama dengan “ “.
3. Deklarasikan atribut tampung bertipe int sama dengan 0.
4. Untuk i=0 sampai I kurang dari panjang pesan lakukan langkah.
5. Ubah pesan
Chiper
menjadi kode ASCII + 32. 6.
Hasil penjumlahan ditampung pada variabel tampung. 7.
Apakah, tampung 32? 8.
tampung+94. 9.
Ubah tampung menjadi karakter. 10.
Selesai.
59
3.7. Analisis Kebutuhan Sistem
3.7.1. Use Case Diagram
PENGGUNA Input No HP
Input Pesan Input Kunci
Enkripsi SMS
Mengirim SMS Menerima SMS
Input Kunci
Dekripsi SMS
include
include include
include
Menghapus SMS
include include
Gambar 3. 3 Usecase diagram pengguna Aplikasi VinereySMS
60
3.7.2. Narasi Use Case
Skenario Use Case Mengirim SMS
Aktor : Pengirim
Kondisi awal : Aktor belum mengirim SMS
Kondisi Akhir : Aktor sudah mengirim SMS
Actor Action System Respons
1. Pengguna membuka
Aplikasi VinereySMS. 2.
Sistem menampilkan menu Tulis.
3. User memasukkan No.hp,
Pesan, Kunci . 4.
Sistem melakukan enkripsi terhadap pesan
yang akan dikirim, kemudian sistem
mengirimkan pesan ke no HP tujuan.
5. Sistem menampilkan
toast
yang berisi bahwa sms sukses dikirimkan
Tabel 3. 1 Narasi Usecase Mengirim SMS
61
Skenario Use Case Menerima SMS
Aktor : Penerima
Kondisi awal : Aktor belum menerima SMS
Kondisi Akhir : Aktor sudah menerima SMS
Actor Action System Respons
1. Sistem menampilkan
peringatan bahwa ada pesan masuk.
2. User membuka Aplikasi
VinereySMS 3.
User memilih menu Inbox.
4. Sistem menampilkan
list
pesan yang diterima beserta dengan Nomor
pengirim.
5. User memasukkan kunci
6. User memilih pesan yang
akan dibaca 7.
Sistem melakukan dekripsi pada pesan yang
dipilih, dan menampilkan
form
yang berisi pesan asli
plaintext
yang dapat dibaca user
Tabel 3. 2 Narasi Usecase Menerima SMS
62
Skenario Use Case Menghapus SMS
Aktor : Pengirim dan Penerima
Kondisi awal : Aktor belum menghapus SMS
Kondisi Akhir : SMS terhapus
Actor Action System Respons
1. User membuka Aplikasi
VinereySMS 2.
Sistem menampilkan Menu Utama
3. Jika user ingin menghapus
pesan masuk, maka user memilih menu Inbox. Jika
user ingin menghapus pesan keluar, maka user
memilih menu outbox.
4. Sistem menampilkan
list
pesan 5.
User memilih hold tap pesan yang akan dihapus.
6. Sistem menampilkan
pilihan Delete pesan. 7.
User memilih Delete. 8.
Sistem menghapus pesan.
Tabel 3. 3 Narasi Usecase Menghapus SMS
63
3.7.3. Diagram Aktifitas Setiap Usecase
a. Mengirim SMS
Mengirim SMS
Sistem User
Membuka Aplikasi VinereySMS
Menampilkan Menu Utama
Mengisi No.HP, Pesan, Kunci
Mengklik Button Send
Mengecek apakah
panjang kunci = panjang
pesan
Mengirim Pesan
Tidak
Ya
64
b. Menerima SMS
Menerima SMS
Sistem User
Membuka Aplikasi VinereySMS
Menampilkan menu Inbox
Mengisi Kunci
Meng-klik pesan yang akan dibaca
Mendekripsi Pesan
65
c. Menghapus SMS
Menghapus SMS
Sistem User
Membuka Aplikasi VinereySMS
Menampilkan Menu Utama
Mengklik menu Inbox
atau Outbox
Menampilkan Menu
Inbox atau Outbox
Hold tap Pesan yang akan dihapus
Menghapus Pesan
Tidak
Ya Apakah
pesan akan dihapus
66
3.7.4. Sequenced Diagram
MainActivity btnSend
Vinerey User
Input No.HP, Pesan, Kunci
txtPhone.getText txtPesan.getText
txt.Vinerey.getText Encrpyt
Send
lvMsgOutbox
Simpan pada Outbox
Gambar 3. 4 Sequenced Diagram Mengirim SMS
67
User MainActivity
Vinerey
Input Kunci Decrypt
txtVinereyInbox.getText
lvMsgInbox
Gambar 3. 5 Sequenced diagram Menerima SMS
68
User MainActivity
Hold tap pesan deleteSMS
Gambar 3. 6 Sequenced Diagram Menghapus Pesan
69
3.7.5. Class Diagram
- statusSimpanKunci :boolean - kunciTersimpan
:String - txtPhone
:EditText - txtPesan
:EditText - txtVinerey
:EditText - txtVinereyInbox
:EditText - txtVinereyOutbox :EditText
- btnEnkrip :Button
- btnReset :Button
- btnSend :Button
- btnSimpanKunci :Button
- chiper :String
- vn :vinerey
- lblMsg :TextView
-lblNo :TextView
- contactView :TextView
- etSearch :EditText
- adapterKontak :KontakAdapter
+ deleteSMSContext, String, String +tampilView
+tampilKontakString +OnCreateBudle
+OnCreateOptionsMenuMenu +OnCreateContextMenuContextMenu,
View, ContextMenuInfo +OnCreateItemSelectedMenuItem
+Encrypt +Decrypt
+KontakAdapter
MainActivity
Vinerey KontakAdapter
1 .
1..
memanggil memanggil
1 ..1
1 .1
70
3.8. Desain Fisikal