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.
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 E
22, E
21, E
1, dan E
3. Algoritma
SAFER+ ini terdiri dari dua subsistem yaitu key scheduling dan enkripsi.
Key scheduling membangkitkan 17 128 bit sub-kunci yang berbeda, yaitu K
1sampai
K
17. 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 (B
2sampai B
17) yang digunakan mengikuti rumus berikut:
B
c[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 E
22Telah 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 A
r’. 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 E
22.Gambar B-1 Proses key scheduling SAFER+
Algoritma E
21Data 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 A
r’. Kunci yang digunakan untuk A
r’ 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 E
21.
Gambar B-2 Proses algoritma E
22Gambar B-2 Proses algoritma E
21Algoritma E
1Algoritma ini menerima masukan berupa:
1. Sebuah random word AU_RAND
A2. Kunci penghubung K
linkxv
Rancangan dari algoritma ini mengandung baik A
rdan A
r’. Kunci penghubung
digunakan dua kali. Pertama, digunakan untuk masukan dari A
r. Selanjutnya
digunakan untuk transformasi offset dan masukan A
r’ . 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.
xvi
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.
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)
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.
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 request for connection pesan “A device (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
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 getRandomMengembalikan 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 initIS : 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
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
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 initxxviii
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
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
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
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
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
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
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
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 Konfir masi 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 Konfir masi 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 Memili h 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 : “0016BC F247A4” o Kunci publik: “1654019 73758142 95569” o Modulus: “1526489 85583892 40121” 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 : “0016BC F247A4” o Modulus: “1526489 85583892 40121” 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 Memil ih edit key o Mengi si form data kunci publik o Memil ih OK o Memilih data dengan nama: “made” o Pemilik: “made” o Alamat perangkat: “0016BCF247A 4” o Kunci publik: “2222222222222 2222222” o Modulus: “3333333333333 3333333” 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: “0016BCF247A 4” o Modulus: “3333333333333 3333333” 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 DiterimaTabel 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
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 !" DiterimaTabel 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 : “pengu jian pengiri man data BlueSe FT” 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 : “pengu jian pengiri man data BlueSe FT” 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