my final project - versi1.0 block cipher (blowfish) ... 18 oktober 2007, pukul 15.43 wib. xi ......
TRANSCRIPT
x
DAFTAR REFERENSI
[GEH04] Gehrmann,Christian dkk. (2004). Bluetooth Security. Artech House.
[KLI04] Klingsheim, Andre N. (2004). J2ME Bluetooth Programming.
[LWC03] Local Wireless Communication project team. (2003). Bluetooth
Threats and Security Measures.
http://grouper.ieee.org/groups/1451/5/Comparison%20of%20PHY/Blu
etooth_24Security_Paper.pdf.
Tanggal Akses: 18 Oktober 2007, pukul 10.11 WIB.
[MUN06] Munir, Rinaldi. (2006). Dikat Kuliah IF5054 Kriptografi.
[SCH94] Schneier, Bruce. (1994). Description of a New Variable Length Key,
64-bit Block Cipher (Blowfish). http://www.schneier.com/paper-
blowfish-fse.html.
Tanggal Akses : 25 Mei 2008, pukul 18.45 WIB.
[SCH96] Schneier, Bruce. (1996). Applied Cryptography Second Edition. John
Willey & Sons.
[SHA05] Shaked, Yaniv and Wool, Avishai. (2005). Cracking the Bluetooth
PIN. http://www.eng.tau.ac.il/~yash/shaked-wool-mobisys05/.
Tanggal Akses : 18 Oktober 2007, pukul 13.21 WIB.
[SIG07] SIG , Bluetooth. (2007). Bluetooth Spesification Version 2.1 + EDR
[SUN05] Sun, Jun-Zhao dkk. (2005) . Design, Implementation, and Evaluation
of Bluetooth Security.
http://www.mediateam.oulu.fi/publications/pdf/87.pdf.
Tanggal Akses : 18 Oktober 2007, pukul 15.43 WIB.
xi
DAFTAR PUSTAKA
[GEH04] Gehrmann,Christian dkk. (2004). Bluetooth Security. Artech House.
[JAV06] JavaNB. (2006). Securing Network Data - Wireless Java Developing
with J2ME, Second Edition,
http://book.javanb.com/wireless-java-developing-with-j2me
Tanggal Akses : 20 April 2008, pukul 14.25 WIB
[KAM02] Kammer, David dkk. (2002). Bluetooth Appplication Developer’s
Guide. Syngress
[MUN06] Munir, Rinaldi. (2006). Dikat Kuliah IF5054 Kriptografi, Program
Studi Teknik Informatika Institut Teknologi Bandung.
[PER06] Permadi, Rahadian Bayu. (2006). Aplikasi Instant Messaging untuk
Perangkat Nirkabel dengan Menggunakan Protokol Jabber pada
jaringan Bluetooth, Program Studi Teknik Informatika Institut
Teknologi Bandung.
[PRA05] Pranomo, Ranto. (2005). Studi dan Implementasi Protokol Diffie-
Hellman dengan Penambahan Otentikasi untuk Pertukaran Kunci,
Program Studi Teknik Informatika Institut Teknologi Bandung.
[SCH96] Schneir, Bruce. (1996). Applied Cryptography Second Edition. John
Willey & Sons.
[SIG07] SIG , Bluetooth. (2007). Bluetooth Spesification Version 2.1 + EDR
[SUN02] Sun. (2002). Java Cryptography Architecture Standard Algorithm
Name Documentation,
http://java.sun.com/javase/6/docs/technotes/guides/security/StandardN
ames.html.
Tanggal Akses : 25 Mei 2008, pukul 19.55 WIB.
xii
LAMPIRAN A : ALGORITMA SAFER+ Seperti yang telah dijelaskan pada bab II, bahwa algoritma kriptografi yang digunakan
pada Bluetooth didasarkan pada algoritma SAFER+ dengan sedikit modifikasi.
Modifikasi ini menghasilkan algoritma seperti E22, E21, E1, dan E3. Algoritma
SAFER+ ini terdiri dari dua subsistem yaitu key scheduling dan enkripsi.
Key scheduling membangkitkan 17 128 bit sub-kunci yang berbeda, yaitu K1 sampai
K17. Setiap putaran pada SAFER+ menggunakan dua buah sub-kunci dan satu kunci
terakhir digunakan untuk transformasi keluaran. Hal terpenting pada setiap langkah
pembangkitan kunci ini adalah setiap byte akan digeser (wraping) ke kiri sejauh tiga
bit dan kunci sepanjang 16 bit dipilih sebagai keluaran sub-kunci. Mekanisme ini juga
menggunakan 128 bit bias vector yang berbeda pada setiap langkahnya untuk
ditambahkan kepada keluaran byte yang dipilih. Prosesnya adalah sebagai berikut:
Adapun 16 bit bias vector (B2 sampai B17) yang digunakan mengikuti rumus berikut:
Bc[i] = ((45(4517c+i+1 mod 257) mod 257) mod 256),
untuk i = 0,.., 15.
Masing-masing bias vector digunakan untuk setiap langkah putaran kunci kecuali
pada langkah pertama. Sebagai catatan putaran pertama tidak mengandung perputaran
siklis. Gambar B-1 menggambarkan keseluruhan proses pembangkitan kunci.
Algoritma E22
Telah dijelaskan pada bab II bahwa algoritma E22 ini memerlukan input data:
1. Sebuah BD_ADDR (sepanjang 48 bit)
2. Kode PIN dan panjangnya
3. Nilia random sepanjang 128 bit (IN_RAND)
Pertama kali PIN dan BD_ADDR dikombinasikan untuk membentuk sebuah word
baru. Jika PIN ukurannya kurang dari 16 byte, maka beberapa byte dari BD_ADDR
akan ditambahkan kepada nilai PIN ini. Jika ukuran PIN lebih kecil dari 10 byte maka
semua byte dari BD_ADDR harus digunakan. Misal PIN’ adalah word baru yang
berhasil dibentuk, dan L’ adalah jumlah byte yang terkandung didalam PIN’.
Sekarang, jika ukuran L’ kurang dari 16 byte, maka nilai L’ ini akan diekspansi secara
xiii
siklis sampai akihirnya berukuran 16 byte. Sekarang misalkan PIN” adalah word
berikutnya. PIN” digunakan sebagai masukan untuk Ar’. IN_RAND digunakan sebagai
128 bit input data, setelah me-xor-kannya dengan the most significant byte dengan L’.
Gambar B-2 memperlihat proses yang dilakukan di dalam algoritma E22.
Gambar B-1 Proses key scheduling SAFER+ Algoritma E21
Data masukan untuk algoritma ini adalah:
1. Sebuah alamat dari Bluetooth sepanjang 48 bit (BD_ADDR)
2. Nilai random sepanjang 128 bit (LK_RAND)
Pertama, BD_ADDR diekspanse secara siklis untuk membentuk 128 bit word yang
akan digunakan sebagai masukan untuk Ar’. Kunci yang digunakan untuk Ar’ terdiri
xiv
dari nilai random 128 bit (LK_RAND), setelah me-xor-kan the most significant byte-
nya dengan 6 (dihasilkan LK_RAND’). Gambar B-3 menunjukan proses pada
algoritma E21.
Gambar B-2 Proses algoritma E22
Gambar B-2 Proses algoritma E21
Algoritma E1
Algoritma ini menerima masukan berupa:
1. Sebuah random word AU_RANDA
2. Kunci penghubung Klink
3. BD_ADDR
xv
Rancangan dari algoritma ini mengandung baik Ar dan Ar’. Kunci penghubung
digunakan dua kali. Pertama, digunakan untuk masukan dari Ar. Selanjutnya
digunakan untuk transformasi offset dan masukan Ar’ . Tranformasi offset
mengandung fungsi penambahan dan xor dari nilai byte-nya dengan suatu konstanta.
Rincian lengkap dari algorimta ini dapat dilihat pada Gambar B-4.
Gambar B-4 Proses Algoritma E1
xvii
LAMPIRAN C: SKENARIO USE CASE
Tabel C-1 Skenario Use Case Manage Key
Nomor Use Case UC-MK Aktor User Prekondisi Aplikasi menampilkan layar utama
Skenario Normal (UC-MK-01) Aksi Aktor Reaksi Sistem
1. Memilih menu manage key. 2.Melakukan query ke database untuk mendapatkan daftar kunci publik yang tersimpan. 4.Menampilkan daftar kunci publik yang tersimpan dalam database sistem. 5.Menampilkan menu untuk manajemen kunci
Kondisi Akhir Aplikasi menampilkan daftar kunci publik yang tersimpan dalam database sistem dan menu manage
Tabel C-2 Skenario Use Case Insert Key
Nomor Use Case UC-IK Aktor User Prekondisi Aplikasi menampilkan daftar kunci publik yang
tersimpan dalam database sistem dan menu manage
Skenario Normal (UC-IK-01) Aksi Aktor Reaksi Sistem
1. Memilih menu manage. 2.Aplikasi menampilkan sub-menu insert, edit dan delete.
3.Memilih sub-menu insert. 4.Aplikasi menampilkan form untuk memasukan data kunci publik.
5.Memasukan data kunci publik 6.Mekan tombol “OK”
7.Aplikasi memvalidasi masukan user 8.Aplikasi menyimpan data kunci publik baru yang dimasukan user ke dalam database. 9.Aplikasi menampilkan daftar kunci publik baru.
Kondisi Akhir Data kunci publik baru berhasil disimpan ke dalam database dan aplikasi menampilkan daftar kunci publik.
Skenarion Alternatif I : Form tidak lengkap (UC-IK-02)1. Memilih menu manage. 2.Aplikasi menampilkan sub-menu insert, edit
dan delete. 3.Memilih sub-menu insert. 4.Aplikasi menampilkan form untuk memasukan
data kunci publik. 5.Memasukan data kunci publik 6.Mekan tombol “OK”
7.Aplikasi memvalidasi masukan user 8.Aplikasi menampilkan pesan “Field(s) can not be empty !”. 9.Aplikasi kembali menampilkan form dan menandai field yang kosong.
Kondisi Akhir Tidak ada data kunci publik baru yang berhasil disimpan dalam database dan aplikasi kembali menampilkan form
Skenarion Alternatif II : ID untuk kunci publik sudah ada dalam database (UC-IK-03) 1. Memilih menu manage. 2.Aplikasi menampilkan sub-menu insert, edit
dan delete. 3.Memilih sub-menu insert. 4.Aplikasi menampilkan form untuk memasukan
data kunci publik. 5.Memasukan data kunci publik 7.Aplikasi memvalidasi masukan user
xviii
6.Mekan tombol “OK” 8.Aplikasi menyimpan data kunci publik baru yang dimasukan user ke dalam database. 9.Aplikasi menampilkan pesan “Error, ID already exist !” 10.Aplikasi kembali menampilkan form dan menandai field ID.
Kondisi Akhir Tidak ada data kunci publik baru yang berhasil disimpan dalam database dan aplikasi kembali menampilkan form.
Tabel C-3 Skenario Use Case Edit Key
Nomor Use Case UC-DK Aktor User Prekondisi Aplikasi menampilkan daftar kunci publik yang
tersimpan dalam database sistem dan menu manage
Skenario Normal (UC-EK-01) Aksi Aktor Reaksi Sistem
1.Memilih data kunci publik yang akan dirubah 2.Memilih menu manage.
3.Aplikasi menampilkan sub-menu insert, edit dan delete.
4.Memilih sub-menu edit. 5.Aplikasi menampilkan form yang telah terisisi data sesuai data kunci publik lama untuk dirubah kecuali data ID yang tidak bisa dirubah.
6.Merubah data kunci publik 7.Mekan tombol “OK”
8.Aplikasi memvalidasi masukan user 9.Aplikasi kembali menyimpan data kunci publik hasil editing user ke dalam database. 10.Aplikasi menampilkan daftar kunci publik baru.
Kondisi Akhir Data kunci publik berhasil dirubah dan disimpan kembali kedalam database serta aplikasi menampilkan daftar kunci publik baru.
Skenarion Alternatif I : Form tidak lengkap (UC-IK-02)1.Memilih data kunci publik yang akan dirubah 2.Memilih menu manage.
3.Aplikasi menampilkan sub-menu insert, update dan delete.
4.Memilih sub-menu edit. 5.Aplikasi menampilkan form yang telah terisisi data sesuai data kunci publik lama untuk dirubah kecuali data ID yang tidak bisa dirubah.
5.Merubah data kunci publik 6.Mekan tombol “OK”
7.Aplikasi memvalidasi masukan user 8.Aplikasi menampilkan pesan “Fields can not be empty !”. 9.Aplikasi kembali menampilkan form dan menandai field yang kosong.
Kondisi Akhir Tidak ada data kunci publik yang berhasil dirubah dan aplikasi kembali menampilkan form.
Tabel C-4 Skenario Use Case Delete Key
Nomor Use Case UC-DK Aktor User Prekondisi Aplikasi menampilkan daftar kunci publik yang
tersimpan dalam database sistem dan menu manage
Skenario Normal (UC-DK-01) Aksi Aktor Reaksi Sistem
1.Memilih data kunci publik yang akan dihapus 2.Memilih menu manage.
3.Aplikasi menampilkan sub-menu insert, edit dan delete.
4.Memilih sub-menu delete. 5.Aplikasi menampilkan pesan konfirmasi “Are you sure to delete this key ?” (yes/no)
6.Memilih “Yes” 8.Aplikasi menghapus data kunci yang dipilih dari
xix
database. 9.Aplikasi menampilkan daftar kunci publik baru.
Kondisi Akhir Data kunci publik berhasil dihapus dari database dan aplikasi menampilkan daftar kunci publik baru.
Skenarion Alternatif I : User membatalkan penghapusan (UC-IK-02) 1.Memilih data kunci publik yang akan dihapus 2.Memilih menu manage.
3.Aplikasi menampilkan sub-menu insert, edit dan delete.
4.Memilih sub-menu delete. 5.Aplikasi menampilkan pesan konfirmasi “Are you sure to delete this key ?” (yes/no)
6.Memilih “No” 8.Aplikasi kembali menampilkan daftar kunci publik.
Kondisi Akhir Tidak ada data kunci publik yang dihapus dari database dan aplikasi kembali menampilkan daftar kunci publik.
Tabel C-5 Skenario Use Case Search Device
Nomor Use Case UC-SD Aktor User Prekondisi Aplikasi menampilkan layar utama
Skenario Normal (UC-SD-01) Aksi Aktor Reaksi Sistem
1.Memilih menu search device
2.Aplikasi melakukan pencarian perangkat lain disekitar yang sedang aktif pada berada pada mode discoverable. 3.Setelah 10 detik pencarian perangkat lain dilakukan makan pencarian dihentikan kemudian perangkat menampilkan daftar perangkat yang didapat pada saat itu.
Kondisi Akhir Aplikasi menampilkan daftar perangkat di sekitar yang sedang aktif pada saat itu .
Tabel C-6 Skenario Use Case Connect
Nomor Use Case UC-CN Aktor User, BlueSeFT Partner Prekondisi Aplikasi menampilkan daftar perangkat di sekitar
yang sedang aktif pada saat itu . Skenario Normal (UC-CN-01)
Aksi Aktor (User) Aksi Aktor (BlueSeFT Partner)
Reaksi Sistem
1. Memilih salah satu perangkat yang akan dihubungi 2.Menekan tombol “connect”
3.Menghubungi perangkat yang bersangkutan untuk meminta dapat terhubung.
4.Mengirimkan data pertanda otentikasi dapat dilanjutkan (data yang dikirimkan berupa pasangan bilangan {g,n} untuk otentikasi perangkat).
5.Menerima data pertanda otentikasi dapat dilanjutkan 6. Menampilkan data kunci publik yang akan dipergunakan untuk mengontentikasi pihak lawan 7.Melakukan otentikasi. 8.Menampilkan pesan “Device connected”
Kondisi Akhir Perangkat berhasil terhubung dengan perangkat lain
Skenario Alternatif I : Perangkat partner menolak terhubung (UC-CN-02) 1. Memilih salah satu perangkat yang akan dihubungi 2.Menekan tombol “connect”
3.Menghubungi perangkat yang bersangkutan untuk meminta dapat terhubung.
4.Mengirimkan data 5.Menerima data pertanda
xx
pertanda otentikasi tidak dapat dilanjutkan.
otentikasi tidak dapat dilanjutkan. 6.Menampilkan pesan “Partner rejects connection !”
Kondisi Akhir Hubungan antar perangkat dibatalkan Skenario Alternatif II : Otentikasi gagal (UC-CN-03)
1. Memilih salah satu perangkat yang akan dihubungi 2.Menekan tombol “connect”
3.Menghubungi perangkat yang bersangkutan untuk meminta dapat terhubung.
4.Mengirimkan data pertanda otentikasi dapat dilanjutkan (data yang dikirimkan berupa pasangan bilangan {g,n} untuk otentikasi perangkat).
5.Menerima data pertanda otentikasi tidak dapat dilanjutkan. 6.Melakukan otentikasi. 7.Menampilkan pesan “Authentication is failed”
Kondisi Akhir Otentikasi gagal hubungan antar perangkat dibatalkan.
Skenario Alternatif III : Koneksi ke perangkat yang tidak mendukung atau sibuk (UC-CN-04)1. Memilih salah satu perangkat yang akan dihubungi 2.Menekan tombol “connect”
3.Menghubungi perangkat yang bersangkutan untuk meminta dapat terhubung.
4.Mendeteksi bahwa perangkat client tidak mendukung layanan BlueSeFT. 5.Menampilkan pesan "Tidak bisa terkoneksi, karena perangkat client sedang sibuk atau tidak mendukung layanan BlueSeFT !"
Tabel C-7 Skenario Use Case Authenticate
Nomor Use Case UC-AU Aktor User, BlueSeFT Partner Prekondisi Pertanda otentikasi dapat dilanjutkan telah
diterima dan aplikasi menampilkan data kunci publik yang akan dipergunakan untuk mengontentikasi pihak lawan
Skenario Normal (UC-AU-01) Aksi Aktor (User) Aksi Aktor (BlueSeFT
Partner) Reaksi Sistem
1. Memilih data kunci publik dari pihak lawan yang akan diajak untuk berkomunikasi. 2.Memasukan data kunci privat
3.Mengirimkan data hasil enkripsi dengan kunci publik user
4.Menerima data hasil enkripsi dengan kunci publik user dari partner 5.Mendekripsi data yang diterima tersebut dengan kunci privat user. 6.Mengirimkan data hasil dekripsi ke perangkat partner. 7.Membangkitkan suatu nilai random 8.Menghitung nilai X = gx mod n 9.Menandatangani nilai X 10.Kemudian mengirim nilai X dan tanda tangannya ke pada partner
11.Mengirimkan suatu nilai 12.Menerima suatu nilai dengan
xxi
disertai tanda tangannya tanda tangannya 13.Memverifikasi kesesuaian nilai dengan tanda tangannya.
Kondisi Akhir Otentikasi berhasil dan kunci rahasia telah berhasil tersimpan.
Skenario Alternatif I : Perangkat partner mendeteksi kesalahan 1 (UC-AU-02) 1. Memilih data kunci publik dari pihak lawan yang akan diajak untuk berkomunikasi. 2.Memasukan data kunci privat
3.Mengirimkan data hasil enkripsi dengan kunci publik user
4.Menerima data hasil enkripsi dengan kunci publik user dari partner 5.Mendekripsi data yang diterima tersebut dengan kunci privat user. 6.Mengirimkan data hasil dekripsi ke perangkat partner.
7.Memutuskan hubungan 8.Mendeteksi perangkat partner memutuskan hubungan.
Kondisi Akhir Otentikasi gagal, hubungan terputus. Skenario Alternatif II : Perangkat partner mendeteksi kesalahan 2 (UC-AU-03)
1. Memilih data kunci publik dari pihak lawan yang akan diajak untuk berkomunikasi. 2.Memasukan data kunci privat
3.Mengirimkan data hasil enkripsi dengan kunci publik user
4.Menerima data hasil enkripsi dengan kunci publik user dari partner 5.Mendekripsi data yang diterima tersebut dengan kunci privat user. 6.Mengirimkan data hasil dekripsi ke perangkat partner. 7.Membangkitkan suatu nilai random 8.Menghitung nilai X = gx mod n 9.Menandatangani nilai X 10.Kemudian mengirim nilai X dan tanda tangannya ke pada partner
11. Memutuskan hubungan Mendeteksi perangkat partner memutuskan hubungan.
Kondisi Akhir Otentikasi gagal, hubungan terputus. Skenario Alternatif III : Perangkat partner tidak otentik (UC-AU-04)
1. Memilih data kunci publik dari pihak lawan yang akan diajak untuk berkomunikasi. 2.Memasukan data kunci privat
3.Mengirimkan data hasil enkripsi dengan kunci publik user
4.Menerima data hasil enkripsi dengan kunci publik user dari partner 5.Mendekripsi data yang diterima tersebut dengan kunci privat user. 6.Mengirimkan data hasil dekripsi ke perangkat partner. 7.Membangkitkan suatu nilai random 8.Menghitung nilai X = gx mod n 9.Menandatangani nilai X 10.Kemudian mengirim nilai X dan tanda tangannya ke pada partner
xxii
11.Mengirimkan suatu nilai disertai tanda tangannya
12.Menerima suatu nilai dengan tanda tangannya 13.Memverifikasi kesesuaian nilai dengan tanda tangannya. 15.Memutuskan hubungan
Kondisi Akhir Otentikasi gagal, hubungan terputus.
Tabel C-8 Skenario Use Case Send Data
Nomor Use Case UC-SN Aktor User Prekondisi Perangkat dan pengguna yang berkomunikasi
telah terotentikasi dan terkoneksi satu sama lain Skenario Normal (UC-SN-01)
Aksi Aktor Reaksi Sistem 1. Mempersiapkan data yang akan dikirimkan 2.Menekan tombol “send”
3.Mengenkripsi data dengan kunci rahasia dari hasil otentikasi dengan algoritma RC4. 4.Mengirimkan data hasil enkripsi ke partner
Kondisi Akhir Data berhasil dikirimkan ke partner
Tabel C-9 Skenario Use Case Receive Data
Nomor Use Case UC-RD Aktor BlueSeFT Partner Prekondisi Perangkat dan pengguna yang berkomunikasi
telah terotentikasi dan terkoneksi satu sama lain Skenario Normal (UC-SN-01)
Aksi Aktor Reaksi Sistem 1. Mengirimkan data yang telah dienkripsi 3.Menerima data dan mendekripsinya
4.Menampilkan data yang telah dienkripsi sesuai bentuknya.
Kondisi Akhir Data berhasil diterima.
Tabel C-10 Skenario Use Case Request Connection
Nomor Use Case UC-RD Aktor User, BlueSeFT Partner Prekondisi -
Skenario Normal (UC-RD-01) Aksi Aktor (BlueSeFT Partner) Aksi Aktor (User) Reaksi Sistem 1. Menghubungi perangkat untuk meminta dapat terkoneksi
2.Menampilkan pesan “A device request for connection (accept/deny) ?”
3.Menekan tombol “accept “
4.Mengirimkan data pertanda otentikasi dapat dilanjutkan (data yang dikirimkan berupa pasangan bilangan {g,n} untuk otentikasi perangkat).
Kondisi Akhir Perangkat terhubung dengan perangkat lain
Skenario Alternatif I : Pengguna menolak untuk terhubung (UC-RD-02) 1. Menghubungi perangkat untuk meminta dapat terkoneksi
2.Menampilkan pesan “A device request for connection (accept/deny) ?”
3.Menekan tombol “accept “
4.Menolak permintaan untuk terhubung
Kondisi Akir Perangkat tidak terhubung dengan perangkat lain.
xxiii
Tabel C-11 Skenario Use Case Configure
Nomor Use Case UC-CF Aktor User Prekondisi Aplikasi menampilkan layar utama
Skenario Normal (UC-CF-01) Aksi Aktor Reaksi Sistem
1. Memilih menu “configure” 2.Menampilkan form untuk konfigurasi aplikasi 3.Memasukan data konfigurasi ke dalam form konfigurasi yang disediakan 4.Menekan tombol “save”
4.Memvalidasi masukan user 5.Menyimpan data hasil konfigurasi user 6.Meng-update aplikasi sesuai konfigurasi yang baru
Kondisi Akhir Konfigurasi yang baru disimpan dan aplikasi di-update sesuai data konfigurasi yang baru.
Skenario Alternatif I : Data yang dimasukan user tidak valid (UC-CF-02) 1. Memilih menu “configure” 2.Menampilkan form untuk konfigurasi aplikasi 3.Memasukan data konfigurasi ke dalam form konfigurasi yang disediakan 4.Menekan tombol “save”
4.Memvalidasi masukan user 5.Menampilkan pesan “Data is not valid ” 6.Menampilkan kembali form konfigurasi dan menandai fields dimana data yang dimasukan tidak valid.
Kondisi Akhir Tidak ada konfigurasi baru yang disimpan dan aplikasi kembali menampilkan form konfigurasi dengan menandai setiap field yang tidak valid.
xxiv
LAMPIRAN D: PERANCANGAN FUNGSI DAN PROSEDUR PADA KELAS-KELAS PERANGKAT LUNAK BLUESEFT
D.1 Kelas Authenticator 1. public function getRandom
Mengembalikan suatu nilai acak yang aman untuk kriptografi
2. public function encryptRSA
Mengembalikan nilai hasil enkripsi data menggunakan algoritma RSA.
3. public function decryptRSA
Mengembalikan nilai hasil dekripsi dengan menggunakan algoritma
RSA (dapat sekaligus dipergunakan untuk melakukan tanda tangan
digital dan pertukaran kunci dengan protokol Diffie-Hellman yang
akan menghasilkan kunci sepanjang 20 digit)
4. public function doClientRSA
Mengembalikan nilai hasil proses masukan dengan menggunakan
algoritma RSA.
5. public procedure setClientKey
IS : nilai client key masih null
FS : nilai client key sudah terdefinisi sesuai dengan masukan
Proses : mendefinisikan nilai client key sesuai dengan masukan
yang diberikan sebagai paramete input dari procedure ini
D.2 BTListener 1. public porcedure handleAction
(merupakan kelas interface sehingga procedure ini tidak
diimplemetasikan disini)
D.3 BlueSeFT 1. private procedure initialize
IS : Semua atribut kelas belum dialokasi dan diinisialisasi
FS : Atribut dari kelas telah diinisialisasi dan dialokasikan
Proses : melakukan alokasi dan inisialsasi atribut kelas
2. private procedure startMIDlet
IS : aplikasi belum dijalankan
FS : aplikasi berjalan pada perangkat mobile
Proses :
3. public procedure exitMIDlet
IS : aplikasi masih berjalan
xxv
FS : aplikasi tertutup
Proses : semua memory yang sedang dipegang oleh atribut dilepas
dan aplikasi di deinisialisasi.
4. public procedure startApp
IS : semua atribut belum terinisialisasi
FS : procedure startMidlet dipanggil dan atribut diinisialisais
Proses : menginisialisasi semua atribut dan menjalan aplikasi
5. public procedure destroyApp
IS : atribut masih teralokasi.
FS : semua memori yang dipegang oleh atribut sudah dilepaskan .
Proses : merelease semua memori yang sedang dipegang oleh atribut
pada kelas.
6. public procedure commandAction
IS : aplikasi belum melakukan apa-apa
FS : aplikasi melakukan aksi sesuai dengan command yang dipilih
Proses : memanggil method sesuai dengan command yang dipilih
7. public procedure handleAction
IS : aplikasi belum melakukan apa-apa
FS : aplikasi melakukan aksi sesuai dengan aksi yang dikirimkan
Proses : memanggil method sesuai dengan aksi yang diterima yang
dipilih
8. public procedure aboutForm
IS : aplikasi belum menampilkan about form
FS : about form ditampilkan oleh aplikasi
Proses : memanggil about form dan menampilkannya ke user
9. public procedure displayAlertForever
IS : aplikasi belum menampilkan pesan yang dikirimkan
FS : pesan yang diterima ditampilkan oleh aplikasi
Proses : memanggil method pemanggilan pesan sesuai dengan jenis
pesan yang diterima.
D.4 BluetoothBrowser 1. public void init
IS : atribut kelas belum teralokasi dan terinisialisasi
FS : atribut kelas telah teralokasi dan terinisialisasi
Proses : mengalokasikan memori untuk atribut dan menge-set nilai
awal atribut.
2. public function getDevicesFound
Mengem semua data perangkat yang ditemukan ketikan melakukan
device inquiry
3. public function getServiceFound
xxvi
Mengembalikan semua service record yang ditemukan ketika melakukan
service inquiry
4. public procedure deviceDiscovered
IS : Proses device inquiry sudah dimulai
FS : Semua perangkat yang ditemukan disimpan kedalam sebuah vector
Proses : mendapatkan setiap perangkat yang ditemukan pada proses
device inquiry dan menambahkannya ke dalam vector.
5. public procedure servicesDiscovered
IS : proses service inquiry sudah dimulai
FS : Service dengan UUID BlueSeFT yang ditemukan pada suatu
perangkat disimpan untuk dikoneksikan
Proses : melakukan pencarian service sesuai dengan UUID BlueSeFT
untuk dikoneksikan.
6. public procedure serviceSearchCompleted
IS : proses service inquiry masih dilakukan
FS : proses service inquiry selesai dilakukan
Proses : menghentikan proses service inquiry
7. public procedure inquiryCompleted
IS : proses device inquiry masih dilakukan
FS : proses device inquiry selesai dilakukan
Proses : menghentikan proses device inquiry
8. public procedure doDeviceDiscovery
IS : proses device inquiry belum dimulai
FS : proses device inquiry dimulai
Proses : memanggil method untuk memulai proses device inquiry
9. public procedure doServiceDiscovery
IS : proses service inquiry belum dimulai
FS : proses service inquiry dimulai
Proses : memanggil method untuk memulai proses service inquiry
D.5 CompleteKey 1. public procedure setKey
IS : nilai atribut kelas belum diinisialisasi
FS : nilai atribut kelas berhasil dinisialisasi
Proses : meng-assign suatu nilai ke atribut kelas
2. public procedure setUserKey
IS : nilai kunci pengguna belum diinisialisasi
FS : nilai kunci pengguna berhasil dinisialisasi
Proses : meng-assign suatu nilai ke atribut kunci pengguna
3. public function getUserKey
Mengembalikan nilai kunci pengguna
xxvii
4. public function setPrivateExponent
IS : nilai kunci private belum diinisialisasi
FS : nilai kunci privat berhasil dinisialisasi
Proses : meng-assign suatu nilai ke atribut kunci privat
5. public function getPrivateExponent
Mengembalikan nilai dari atribut kunci private
D.6 Configure 1. public function getKey
Mengembalikan nilai kunci keseluruhan dari pengguna, meliputi
password dan pasangan kunci RSA.
2. public procedure showTextField
IS : form untuk input kunci belum ditampilkan
FS : form untuk input kunci diinisialisasi dan ditampilkan
Proses : menginisialisasi form untuk masukan kunci dan menampilkan
form tersebut.
3. public procedure showKeyTextBox
IS : form untuk input password belum ditampilkan
FS : form untuk input password diinisialisasi dan ditampilkan
Proses : menginisialisasi form untuk masukan password dan
menampilkan form tersebut.
4. public procedure saveKey
IS : data kunci belum dimasukan ke dalam basis data
FS : data kunci telah dimasukan ke dalam basis data
Proses : menginsert atau mengupdate data kunci yang terdapat
didalam basis data
5. public procedure selectKey
IS : data kunci belum diselect dari basis data
FS : data kunci berhasil didapatkan dari basis data
Proses : melakukan select ke basis data terkait data kunci yang
disimpan.
6. public procedure generateKey
IS : sembarang
FS : pasangan kunci publik dan privat berhasil digenerate dan
ditampilkan ke user dengan panjang masing-masing 20 digit
Proses : menggunakan algoritma RSA untuk pembentukan pasangan
kunci publik dan privat.
D.7 ConnectorDevice 1. public procedure init
IS : data atribut dari kelas belum diinisialisasi
xxviii
FS : atribut Bluetooth Browser dan remote device berhasil di
inisialisasi
Proses : meng-assign nilai ke atribut yang disebutkan diatas
2. public procedure addMsgsElement
IS : atribut msgs belum ditambahkan data yang baru
FS : atribut msgs berhasil ditambahkan data baru
Proses : memanggi method add element untuk menambahkan data baru
ke atribut msgs
3. public procedure setSenderReader
IS : atribut sender dan reader belum diinisialisasi
FS : atribut sender dan reader berhasil diinisialisasi
Proses : meng-assign atribut sender dan reader dengan instant dari
kelasnya masing-masing.
4. public procedure startSenderReader
IS : thread sender dan reader belum dibentuk dan diajalankan
FS : membentuk dan menjalankan thread sender dan reander
Proses : memanggil method start() dari thread sender dan reader
5. public procedure disconnect
IS : koneksi antar perangkat belum terputus
FS : koneksi antar perangkat berhasil diputus
Proses : memanggil method close untuk data output dan input
stream.
6. public procedure sendMessage
IS : data belum dikirimkan
FS : data dikirimkan ke perangkat tujuan
Proses : memanggil method writeInt dan writeUTF untuk mengirimkan
data.
7. public procedure SetUpSenderEncrytpor
IS : enkriptor untuk mengirimkan data belum diinisialisasi
FS : enkriptor berhasil diinsialisasi sesuai kebutuhan dan siap
digunakan.
Proses : memanggil instant yang bersesuaian untuk enkriptor.
8. public procedure run
IS : thread untuk kelas ini belum dijalankan
FS : thread kelas dibentuk dan dijalankan
Proses : meresponse method start yang dipanggil dari instant kelas
ini.
D.8 Encryptor 1. public function encryptString
xxix
Mengembalikan nilai hasil enkripsi dengan menggunakan alforitma
yang dipilih ketika melakukan inisialisasi kelas
2. public function decryptString
Mengembalikan nilai dekripsi data masukan sesuai dengan algoritma
yang dipilih ketika melakukan inisialisasi kelas
D.9 InputKeyUI 1. public procedure showTextField
IS : form masukan kunci publik perangkat lain belum ditampilkan
FS : form masukan kunci publik perangkat lain berhasil ditampilkan
Proses : mengatur display untuk menampilkan form kunci publik
2. public function getInputPublicKey
Mengembalikan nilai kunci publik suatu perangkat yang dipilih
3. public procedure setTextField
IS : form masukan kunci publik belum diinisialisasi
FS : form masukan kunci publik telah diinisialisasi
Proses : mengassign suatu nilai ke masing-masing atribut form
4. public function getStatus
Mengembalikan status pada saat itu sedang proses edit atau insert
5. public procedure setStatus
IS : nilai status belum diupdate
FS : nilai status diupdate ke kondisi terbaru
Proses : mengassign nilai baru ke atribut status
D.10 InputUI 1. public procedure showUI
IS : form input untuk pesan belum ditampilkan
FS : form input pesan ditampilkan
Proses : menginisialisasi dan mengatur display menjadi form input
pesan
D.11 ListDeviceUI 1. public procedure run
IS : thread dari kelas yang bersangkutan belum dibentuk dan
dijalankan
FS : thread dibentuk dan dijalankan
Proses : memanggil method start dari instant kelas bersangkutan
2. private function getFriendlyNames
Mengembalikan nama dari perangkat Bluetooth
3. public procedure screen
IS : sembarang
FS : tampilan diatur sesuai dengan parameter yang dimasukan
xxx
Proses : mengeset display sesuai dengan masukan
4. public procedure connect
IS : perangkat belum terkoneksi
FS : perangkat mencoba melakukan koneksi dengan perangkat lain
Proses : mencoba untuk terkoneksi dengan melakukan otentikasi
pengguna dan perangkat
5. public procedure cancelDeviceSearch
IS : proses device inquiry sedang dilakukan
FS : proses device inquiry dihentikan
Proses : memanggil method cancel inquiry
D.12 ListKeyUI 1. public procedure retrieveKeys
IS : sembarang
FS : data kunci publik yang tersimpan dalam basis data berhasil
diambil
Proses : melakukan query ke basis data untuk mendapatkan data yang
disimpan kemudian menampungnya ke memori
2. public procedure savedKeys
IS : Data kunci publik masih tersimpan dalam memori
FS : data kunci publik berhasil disimpan ke dalam basis data
Proses : memindahkan data yang terdapat didalam memori ke basis
data dengan melakukan insert data
3. public procedure insertKey
IS : sembarang
FS : data kunci publik berhasil ditambahkan ke penampung sementara
di memori
Proses : menambahakan data ke penampungan sementara di memori
dengan memanggil method addElement
4. public procedure editKey
IS : sembarang
FS : data kunci publik di memori berhasil diubah
Proses : mengedit data kunci publik yang terdapat di penampungan
sementara dengan memanggil metho setElement
5. public procedure deleteKey
IS : data kunci publik masih tersimpan dalam memori
FS : data kunci publik berhasil dihapus
Proses : menghapus data kunci dengan memanggil method delete
6. public function getDetailPublicKey
Mengembalikan data kunci publik detail sesuai dengan id masukan
xxxi
D.13 MessageUI 1. protected procedure paint
IS : sembarang
FS : form digambar unlang untuk menampilkan data yang baru
Proses : memanggil method repaint
2. public procedure keyPressed
IS : sembarang
FS : state dari form dirubah sesuai dengan aksi yang dilukan pada
tombol perangkat
Proses : mengupdate form dan memanggil method repaint
3. public procedure clearMessage
IS : form masih berisikan data lama
FS : data pada form telah dihapus
Proses : memanggil method remove element dilanjutkan dengan
repaint
D.14 PublicKey 1. public procedure setPublicKey
IS : nilai public key belum diupdate
FS : nilai public key diupdate ke kondisi terbaru
Proses : mengassign nilai baru ke atribut public key
2. public procedure setPublicExponent
IS : nilai public exponent belum diupdate
FS : nilai public exponent diupdate ke kondisi terbaru
Proses : mengassign nilai baru ke atribut public exponent
3. public procedure setPublicModulus
IS : nilai public modulus belum diupdate
FS : nilai public modulus diupdate ke kondisi terbaru
Proses : mengassign nilai baru ke atribut public modulus
4. public procedure setOwner
IS : nilai owner belum diupdate
FS : nilai owner diupdate ke kondisi terbaru
Proses : mengassign nilai baru ke atribut owner
5. public procedure setAddress
IS : nilai address belum diupdate
FS : nilai address diupdate ke kondisi terbaru
Proses : mengassign nilai baru ke atribut address
6. public function getBluetoothAddress
Mengembalikan nilai alamat dari Bluetooth address
7. public function getBluetoothOwner
Mengembalikan nilai alamat dari Bluetooth owner
xxxii
8. public function getPublicExponent
Mengembalikan nilai alamat dari public exponent
9. public function getPublicModulus
Mengembalikan nilai alamat dari public modulus
D.15 Reader 1. public procedure buildEncryptor
IS : enkriptor reader belum di inisialisasi
FS : enkriptor berhasil diinisialisasi
Proses : memanggil konstruktor dari enkriptor dan menentukan
algoritma untuk enkriptor
2. public procedure setAuthenticator
IS : nilai atribut authenticator belum diset
FS : nilai atribut authenticator berhasil diset
Proses : mengassign nilai baru ke atribut authenticator
3. public procedure setConnectorDevice
IS : nilai atribut connector device belum diset
FS : nilai atribut connector device berhasil diset
Proses : mengassign nilai baru ke atribut connector device
4. public procedure stop
IS : thread reader masih terus berjalan dengan melakukan looping
FS : looping dihentikan dan thread di musnahkan
Proses : memanggil method stop dan close untuk menutup koneksi
5. public procedure run
IS : thread reader belum berjalan
FS : thread dinisialisasi dan dijalankan
Proses : memanggil method start untuk mengaktifkan thread
D.16 Sender 1. public procedure buildEncryptor
IS : enkriptor sender belum di inisialisasi
FS : enkriptor berhasil diinisialisasi
Proses : memanggil konstruktor dari enkriptor dan menentukan
algoritma untuk enkriptor
2. public procedure setConnectorDevice
IS : nilai atribut authenticator belum diset
FS : nilai atribut authenticator berhasil diset
Proses : mengassign nilai baru ke atribut authenticator
3. public procedure stop
IS : thread sender masih terus berjalan dengan melakukan looping
FS : looping dihentikan dan thread di musnahkan
Proses : memanggil method stop dan close untuk menutup koneksi
xxxiii
4. public procedure run
IS : thread sender belum berjalan
FS : thread dinisialisasi dan dijalankan
Proses : memanggil method start untuk mengaktifkan thread
D.17 Server 1. public procedure startServer
IS : layanan BlueSeFT belum dibuka
FS : layanan BlueSeFT dibuka
Proses : melakukan setting untuk mengestablish layanan Bluetooth
dengan mengeset UUID-nya sesuai dengan layanan BlueSeFT
2. public procedure stopServer
IS : layanan BlueSeFT sedang terbuka
FS : layanan BlueSeFT ditutup
Proses : memanggil method method close untuk menutup koneksi
3. public procedure run
IS : thread server belum berjalan
FS : thread dinisialisasi dan dijalankan
Proses : memanggil method start untuk mengaktifkan thread
xxxiv
LAMPIRAN E: ANTARMUKA PERANGKAT LUNAK
Gambar E-1 About Form Gambar E-2 Konfigurasi Kunci
Gambar E-3 Manajemen Kunci Publik Gambar E-4 Daftar Data Kunci Publik
Gambar E-5 Daftar Perangkat yang Ditemukan Gambar E-6 Pengiriman/penerimaan pesan
xxxv
LAMIRAN F: HASIL PENGUJIAN PERANGKAT LUNAK BLUESEFT
Tabel F-1 Pengujian Use Case Configure
Deskripsi Prosedur
Pengujian
Masukan Keluaran yang
Diharapkan
Kriteria
Evaluasi Hasil
Hasil yang
Didapat
Kesimpu
lan
Pengujian
konfigurasi
data kunci
pengguna
o Memilih configure
o Memasukan data konfigurasi kunci
o Memilih menu generate key
o Memilih menu OK
o Kunci: “123”
o Konfirmasi kunci: “123”
Data
konfigurasi
berhasil
disimpan ke
dalam database
Ketika
menekan
tombol
configure data
ini
ditampilkan
kembali.
Data berhasil
disimpan ke
dalam
database dan
ketika
dipilihconfigur
e sistem
menampilkan
data ini
kembali
Diterima
Pengujian
konfigurasi
dengan data
yang salah
o Memilih configure
o Memasukan data konfigurasi
o Memilih menu generate
o Memilih menu OK
o Kunci: “123”
o Konfirmasi kunci: “124”
Aplikasi
menampilkan
pesan
kesalahan
“Kunci yang
Anda masukan
salah” dan data
dalam basis
data tidak di-
update
Pesan
kesalahan
ditampilkan
dan aplikasi
kembali
menunjukan
form
konfigurasi
Aplikasi
menampikan
pesan “Data
kunci yang
Anda masukan
salah”, Tidak
ada data yang
di-update
Diterima
Tabel F-2 Pengujian Use Case Manage Key
Deskripsi Prosedur
Pengujian
Mas
ukan
Keluaran yang
Diharapkan
Kriteria Evaluasi
Hasil
Hasil yang
Didapat
Kesimpu
lan
Pengujian untuk
mendaftar semua
data kunci publik
yang telah
tersimpan untuk
melakukanmanaj
emen kunci
o Memilih show key
- Daftar kunci
publik seluruh
perangkat yang
tersimpan
ditampilkan
Aplikasi
menampilkan
semua daftar
kunci publik yang
telah tersimpan
dalam bentuk list
kunci publik
Semua daftar
kunci publik
berhasil
ditampilkan
dalam bentuk
list
Diterima
xxxvi
Tabel F-3 Pengujian Use Case Insert Key
Deskripsi Prosedur
Pengujian
Masukan Keluaran yang
Diharapkan
Kriteria
Evaluasi
Hasil
Hasil yang
Didapat
Kesimpu
lan
Pengujian
untuk
input data
kunci
publik
perangkat
lain
o Memilih insert key
o Mengisi form data kunci publik
o Memilih OK
o Pemilik: “made”
o Alamat perangkat: “0016BCF247A4”
o Kunci publik: “16540197375814295569”
o Modulus: “15264898558389240121”
Data kunci
publik baru
berhasil
disimpan ke
dalam basis data
dan aplikasi
kembali
menampilkan
daftar kunci
publik
Ketika
aplikasi
menampilka
n data kunci
publik, kunci
publik yang
baru
dimasukan
ikut
ditampilkan
Data berhasil
disimpan ke
dalam basis data
dan ketika daftar
kunci publik
ditampilkan data
baru ini telah
diikutsertakan
Diterima
Pengujian
konfiguras
i dengan
data yang
tidak
lengkap
o Pemilik: “made”
o Alamat perangkat: “0016BCF247A4”
o Modulus: “15264898558389240121”
Aplikasi
menampilkan
pesan kesalahan
“Anda harus
melengkapi
semua field”
dan data tidak
disimpan ke
dalam basis data
Pesan
kesalahan
ditampilkan
dan aplikasi
kembali
menunjukan
form
masukan
kunci publik
Aplikasi
menampikan
pesan “Anda
harus melengkapi
semua field”
kemudian form
yang belum
lengkap kembali
ditampilkan
Diterima
Tabel F-4 Pengujian Use Case Edit Key
Deskripsi Prosedur
Pengujia
n
Masukan Keluaran
yang
Diharapkan
Kriteria
Evaluasi Hasil
Hasil yang
Didapat
Kesimpu
lan
Pengujian
untuk
pengubahan
data kunci
publik
perangkat
yang telah
tersimpan
o Memilih edit key
o Mengisi form data kunci publik
o Memilih OK
o Memilih data dengan nama: “made”
o Pemilik: “made” o Alamat
perangkat: “0016BCF247A4”
o Kunci publik: “22222222222222222222”
o Modulus: “33333333333333333333”
Aplikasi
menampilka
n data kunci
publik,
dengan
sebelumnya
telah meng-
update data
kunci publik
Aplikasi
mengupdate
data kunci
publik
kemudian
kembali
menampilkan
daftar kunci
publik
Aplikasi
menampilka
n data kunci
publik dan
kunci publik
yang dipilih
berhasil di-
update
Diterima
xxxvii
Deskripsi Prosedur
Pengujia
n
Masukan Keluaran
yang
Diharapkan
Kriteria
Evaluasi Hasil
Hasil yang
Didapat
Kesimpu
lan
Pengujian
konfigurasi
dengan data
yang tidak
lengkap
o Memilih data dengan nama: “made”
o Pemilik: “made” o Alamat
perangkat: “0016BCF247A4”
o Modulus: “33333333333333333333”
Aplikasi
menampilka
n pesan
kesalahan
“Anda harus
melengkapi
semua field”
dan data
tidak
disimpan ke
dalam basis
data
Pesan
kesalahan
ditampilkan
dan aplikasi
kembali
menunjukan
form masukan
kunci publik
Aplikasi
menampikan
pesan “Anda
harus
melengkapi
semua field”
kemudian
form yang
belum
lengkap
kembali
ditampilkan
Diterima
Tabel F-5 Pengujian Use Case Delete Key
Deskripsi Prosedur
Pengujian
Masukan Keluaran yang
Diharapkan
Kriteria
Evaluasi Hasil
Hasil yang
Didapat
Kesimpu
lan
Pengujian
untuk
menghapu
s data
kunci
publik
perangkat
yang telah
tersimpan
o Memilih delete key
o Memilih data dengan nama: “made”
o Memilih OK pada pesan konfirmasi
Aplikasi
menampilkan
pesan
konfirmasi jika
user memilih
OK maka data
kunci publik
dihapus
Data kunci
publik dihapus
dari basis data
dan aplikasi
kembali
menampilkan
daftar kunci
publik baru
Aplikasi
menampilkan
pesan
konfirmasi
“Apakah Anda
yakin
menghapus
kunci dari
made” dan
ketika OK
maka data ini
berhasil
dihapus
Diterima
xxxviii
Tabel F-6 Pengujian Use Case Search Device
Deskripsi Prosedur
Pengujian
Masukan Keluaran yang
Diharapkan
Kriteria
Evaluasi Hasil
Hasil yang
Didapat
Kesimpu
lan
Pengujian
untuk
melakukan
pencarian
perangkat
yang
berada
disekitar
o Memilih search device
-
Daftar
perangkat
Bluetooth yang
berada di
sekitar (berada
dalam jakauan
perangkat
Bluetooth)
Semua
perangkat
yang berada
disekitar
ditampilkan
oleh aplikasi
Aplikasi
menampilkan
daftar
perangkat
yang berhasil
ditemukan
selama proses
inquiry
Diterima
Tabel F-7 Pengujian Use Case Connect Device
Deskripsi Prosedur
Pengujian
Masukan Keluaran
yang
Diharapkan
Kriteria
Evaluasi
Hasil
Hasil yang
Didapat
Kesimpu
lan
Pengujian
dimana
data kunci
publik
perangkat
client
belum
disimpan
o Memilih connect
o Memilih perangkat yang akan dihubungi “Ade’s phone”
Koneksi
dibatalkan
dan
menampilkan
pesan error
Aplikasi
menolak
untuk
melakukan
koneksi
dengan
perangkat
yang dituju
Aplikasi
menampilkan
pesan kesalahan
“Tidak bisa
terkoneksi, data
public key
perangkat belum
tersimpan”
Diterima
Pengujian
dimana
perangkat
yang akan
dihubungi
sedang
sibuk
o Memilih perangkat yang akan dihubungi “Ade’s phone”
Koneksi
dibatalkan
dan
menampilkan
pesan error
Aplikasi
menolak
untuk
melakukan
koneksi
dengan
perangkat
yang dituju
Aplikasi
menampilkan
pesan kesalahan
“Tidak bisa
terkoneksi, karena
perangkat client
sedang sibuk”
Diterima
xxxix
Deskripsi Prosedur
Pengujian
Masukan Keluaran
yang
Diharapkan
Kriteria
Evaluasi
Hasil
Hasil yang
Didapat
Kesimpu
lan
Pengujian
untuk
melakukan
koneksi
dengan
perangkat
yang tidak
mendukun
g aplikasi
serupa
o Memilih perangkat yang akan dihubungi “My Computer”
Koneksi
dibatalkan
dan
menampilkan
pesan error
Aplikasi
menolak
untuk
melakukan
koneksi
dengan
perangkat
yang dituju
Aplikasi
menampilkan
pesan kesalahan
"Tidak bisa
terkoneksi, karena
perangkat client
sedang sibuk atau
tidak mendukung
layanan BlueSeFT
!"
Diterima
Pengujian
untuk
melakukan
koneksi
dengan
perangkat
yang
sudah
tidak
ditempat
o Memilih perangkat yang akan dihubungi “Ade’s phone”
Koneksi
dibatalkan
dan
menampilkan
pesan error
Aplikasi tida
dapat
melakukan
koneksi
karena
perangkat
tidak dapat
dijangkau
Aplikasi
menampilkan
pesan kesalahan
"Tidak bisa
terkoneksi, karena
perangkat tidak
bisa dijangkau !"
Diterima
Tabel F-8 Pengujian Use Case Authenticate
Deskripsi Prosedur
Pengujian
Masukan Keluaran yang
Diharapkan
Kriteria
Evaluasi Hasil
Hasil yang
Didapat
Kesimpu
lan
Pengujian
untuk
melakukan
otentkasi
pengguna
dan
perangkat
o Memilih connect device
- Perangkat
berhasil
terkoneksi dan
siap untuk
bertukar
informasi
Aplikasi
menampilkan
pesan
terkoneksi dan
data yang
diterima.
Aplikasi
menampilkan
pesan
“Berhasil
terkoneksi
dengan Nokia
3110c” dan
menampilkan
data yang
dikirim oleh
client
Diterima
xl
Deskripsi Prosedur
Pengujian
Masukan Keluaran yang
Diharapkan
Kriteria
Evaluasi Hasil
Hasil yang
Didapat
Kesimpu
lan
Pengujian
ketika
proses
otentikasi
gagal
- Perangkat tidak
terkoneksi dan
menampilkan
pesan error
Perangkat
tidak
terkoneksi dan
menampilkan
pesan error
Aplikasi
menampilkan
pesan
“Otentikasi
pengguna
gagal, kunci
yang
digunakan
salah”
Diterima
Pengujian
ketika
protokol
ontetikasi
dilanggar
- Perangkat tidak
terkoneksi dan
menampilkan
pesan error
Perangkat
tidak
terkoneksi dan
menampilkan
pesan error
Aplikasi
menampilkan
pesan
“Protokol
otentikasi
dilanggar”
diterima
Tabel F-9 Pengujian Use Case Send Data
Deskripsi Prosedur
Pengujian
Masukan Keluaran yang
Diharapkan
Kriteria
Evaluasi Hasil
Hasil yang
Didapat
Kesimpu
lan
Pengujian
untuk
mengirimk
an pesan
ke
perangkat
lain yang
telah
terkoneksi
o Memilih menu write
o Memilih menu send
o Pesan : “pengujian pengiriman data BlueSeFT”
Aplikasi
mengirimkan
pesan ke
perangkat yang
dituju dan
sekaligus
menampilkan
pesan tersebut
pada pengguna
Pesan yang
telah
dikirimkan
ditampilkan
oleh aplikasi
ke pada
pengguna
Aplikasi
menampilkan
pesan yang
telah
dikirimkan
Diterima
Pengujian
ketika
koneksi
terputus
secara
tidak
normal
o Pesan : “pengujian pengiriman data BlueSeFT”
Aplikasi gagal
mengirimkan
pesan dan
menampilkan
pesan
kesalahan
Pesan
kesalahan
ditampilkan
kemudian
koneksi
ditandai telah
terputus
Aplikasi
menampilakn
pesan
“Koneksi
terputus” dan
koneksi
diakhiri
xli
Tabel F-10 Pengujian Use Case Receive Data
Deskripsi Prosedur
Pengujian
Masuk
an
Keluaran yang
Diharapkan
Kriteria
Evaluasi Hasil
Hasil yang
Didapat
Kesimpu
lan
Pengujian
untuk
menerima
pesan
yang
dikirimkan
oleh
perangkat
lain
-
- Aplikasi
menapilkan pesan
yang diterima
kepada pengguna
Aplikasi telah
menerima dan
menampilkan
pesan yang
diterima
dimana pesan
tersebut sudah
didekripsi
Pesan
ditampilkan
sesuai dengan
apa yang
dikirimkan
oleh perangkat
lain (telah
didekripsi)
Diterima
Tabel F-11 Pengujian Use Case Request Connection
Deskripsi Prosedur
Pengujian
Masukan Keluaran yang
Diharapkan
Kriteria
Evaluasi Hasil
Hasil yang
Didapat
Kesimpu
lan
Pengujian
untuk
menerima
koneksi
dari
perangkat
lain
- - Aplikasi
melakukan
proses
otentikasi
Proses
ontentikasi
dilakukan baik
berhasil
ataupun tidak
Aplikasi telah
melakukan
otentikasi dan
menampilkan
pesan sesuai
status
otentikasi
Diterima
Pengujian
ketika
protokol
otentikasi
dilanggar
Aplikasi
menampilkan
pesan
kesalahan
proses koneksi
tidak
dilanjutkan
Koneksi tidak
dilanjutkan
oleh perangkat
Aplikasi
menampilkan
pesan
“Protokol
otentikasi
dilanggar”
Diterima
Tabel F-12 Pengujian Waktu Koneksi
No. Jarak Pengujian
Waktu Pengujian I Waktu Pengujian II
Waktu Pengujian III
Rata-rata Waktu Koneksi
1. 0 – 2 meter 2,69 detik 2,96 detik 2,49 detik 2,713 detik 2. 2 – 4 meter 2,78 detik 3,18 detik 3,35 detik 3,103 detik 3. 4 – 6 meter 3,20 detik 3,20 detik 3,16 detik 3,187 detik 4. 6 – 8 meter 2,81 detik 3,35 detik 3,30 detik 3,153 detik 5. 8 – 10 meter 2,74 detik 3,22 detik 3,38 detik 3,113 detik