4. Pelayanan
Sistem yang mudah dipahami oleh pengguna awam disertai dengan fitur bantuan untuk menunjukkan fungsi masing-masing tombol pada sistem.
3.2 Pemodelan Sistem
3.2.1 Use-Case Diagram
Sebuah Use Case adalah model penggambaran sistem yang menjelaskan sifat dari sistem di bawah kondisi yang berbeda dimana sistem tersebut merespon permintaan
dari salah satu penggunanya. Dalam arti lain, sebuah Use Case menceritakan bagaimana seorang pengguna berinteraksi dengan sistem dibawah kondisi tertentu.
Penceritaan tersebut dapat berupa sebuah kata-kata naratif atau representasi diagram.
Gambar 3.2 Diagram Use-Case
Pada gambar 3.2 terdapat dua actor yang berperan sebagai pengguna elgamal dan sebagai peretas hacker. Pengguna ElGamal berperan untuk membangkitkan kunci
publik dan kemudian menggunakan kunci publik tersebut untuk mengenkripsikan pesan murni plaintext menjadi ciphertext. Kemudian menggunakan kunci privat,
pengguna dapat mendekripsikan kembali pesannya menjadi plaintext kembali. Peretas berperan untuk memecahkan kunci privat dengan asumsi peretas telah mengetahui
Universitas Sumatera Utara
informasi kunci publik. Peretas kemudian dapat menggunakan kunci privat tersebut untuk mengenkripsi atau mendekripsi pesan tanpa seijin dari pengguna ElGamal.
Berikut ini merupakan tabel narrative use-case yang dapat dilihat pada tabel 3.1, tabel 3.2, tabel 3.3, dan tabel 3.4.
Tabel 3.1 Narrative Use-Case Bangkitkan Kunci
Use-case Name Bangkitkan Kunci
Actor ElGamal User
Description Mendeskripsikan jalannya proses pembangkitan kunci dimulai
dari pembangkitan bilangan prima dengan Lehmann Primality Test
, pencarian akar primitif, pembangkitan kunci rahasia, serta nilai dari α
a
Precondition Sistem menerima inputan panjang digit kunci minimal 3 digit
Post Condition Sistem menghasilkan tiga buah kunci publik
Success Scenario 1.
Pengguna meng-input panjang kunci bilangan prima minimal 3 digit.
2. Pengguna menekan tombol Enter.
3. Sistem akan melakukan komputasi untuk membangkitkan
kunci publik dan kunci privat ElGamal 4.
Sistem akan menampilkan hasil kalkulasi kunci privat dan kunci publik ElGamal.
Exception 1a.
Pengguna memasukkan nilai input panjang kunci publik kurang dari 3 atau kosong.
1a1. Sistem akan memberikan pesan bahwa nilai input kunci yang dimasukkan harus lebih dari 3.
1a2. Sistem akan memberikan pesan bahwa nilai input kunci yang dimasukkan tidak ada atau kosong.
Universitas Sumatera Utara
Tabel 3.2 Narrative Use-Case Enkripsi
Use-case Name Enkripsi
Actor ElGamal User dan Hacker
Description Pengguna dan peretas sama-sama dapat melakukan proses
enkripsi pesan, yaitu mengubah pesan murni plaintext menjadi pesan rahasia ciphertext
Precondition Sistem menerima inputan file pesan murni dengan ekstensi file
.doc atau .txt Post Condition
Sistem menghasilkan file .txt yang berisikan pesan yang telah dienkripsi
Success Scenario 1.
Pengguna atau peretass memilih file teks yang akan dienkripsi.
2. Pengguna atau peretas menginputkan kunci publik pribadi
atau yang telah dibangkitkan 3.
Pengguna atau peretas menekan tombol Encrypt 4.
Sistem akan melakukan proses enkripsi pesan 5.
Sistem menampilkan pesan enkripsi berhasil. 6.
Sistem menyimpan file ciphertext ke lokasi yang ditentukan Exception
1a. Pengguna memasukkan file teks engan ekstensi yang salah.
1a.1. Sistem akan memberikan pesan untuk memeriksa kembali file yang dimasukkan.
2a. Pengguna memasukan inputan kunci publik yang salah
2a.1. Sistem akan memberikan pesan untuk memeriksa kembali inputan kunci publik
Tabel 3.3 Narrative Use-Case Dekripsi
Use-case Name Dekripsi
Actor ElGamal User dan Hacker
Description Pengguna dan peretas sama-sama dapat melakukan proses
dekripsi pesan, yaitu mengubah pesan rahasia ciphertext menjadi pesan murni plaintext.
Precondition Sistem menerima inputan file pesan rahasia dengan ekstensi file
.txt Post Condition
Sistem memberikan pesan hasil dekripsi file Success Scenario
1. Pengguna atau peretas memilih file teks yang akan
didekripsikan. 2.
Pengguna atau peretas menginputkan kunci publik p bilangan prima dan kunci privat pribadi atau yang telah dipecahkan.
3. Pengguna atau peretas menekan tombol Decrypt
4. Sistem akan melakukan proses dekripsi pesan
5. Sistem menampilkan isi pesan yang sudah didekripsi
Exception 1a.
Pengguna memasukkan file teks engan ekstensi yang salah. 1a.1. Sistem akan memberikan pesan untuk memeriksa
kembali file yang dimasukkan.
Universitas Sumatera Utara
Exception 2a.
Pengguna memasukan inputan kunci publik yang salah 2a.1. Sistem akan memberikan pesan untuk memeriksa
kembali inputan kunci publik
Tabel 3.4 Narrative Use-Case Pemecahan Kunci
Use-case Name Pemecahan Kunci
Actor Hacker
Description Peretas dapat memecahkan kunci rahasia milik pengguna hanya
dengan memiliki informasi kunci publik yang kemudian akan diproses dengan metode Baby-step Giant-step.
Precondition Sistem menerima inputan berupa kunci publik p,
α ,dan α
a
Post Condition Sistem menampilkan kunci rahasia a
Success Scenario 1.
Peretas menginput nilai kunci publik yang telah diketahui. 2.
Peretas menekan tombol Find 3.
Sistem melakukan proses komputasi untuk menemukan kunci rahasia dengan menggunakan metode Baby-step Giant-step
4. Sistem menampilkan kunci rahasia yang telah ditemukan
Exceptions 1a.
Pengguna memasukan inputan kunci publik yang salah 2a.1. Sistem akan memberikan pesan untuk memeriksa
kembali inputan kunci publik
Universitas Sumatera Utara
3.2.2 Sequence Diagram