Pemodelan UML ANALISIS DAN PERANCANGAN SISTEM

31 6. Keamanan Dalam hal ini sistem mengamankan kunci yang digunakan. 3.1.3. Analisis proses Pada penelitian ini sistem yang dibangun menggunakan algoritma Hill Cipher untuk melakukan proses enkripsi dan dekripsi pesan dan Rabin Public Key dalam melakukan proses enkripsi dan dekripsi kunci pesan. Pada awalnya, pengirim mengirim pesan lalu dan setelah itu dienkripsi oleh algortima Hill Cipher. Setelah pesan dienkripsi, pengirim memasukkan kunci Hill, kunci P dan Q dimana kunci P dan Q merupakan bilangan prima dan dienkripsi menggunakan algoritma Rabin. Pencarian greatest common divisor menggunakan algoritma extended Euclidean. Untuk membangkitkan kunci pada algoritma Rabin Cryptosystem, digunakan algoritma Fermat untuk menemukan bilangan prima atau menentukan keprimaan suatu bilangan. Setelah semua proses dilakukan, pesan akan dikirim kepada penerima. Proses selanjutnya adalah penerima menerima pesan yang telah dienkripsi oleh pengirim. Setelah pesan masuk, penerima memasukkan kunci P dan Q untuk dekripsi kunci Hill yang telah diinputkan pengirim. Setelah kunci didekripsi, maka pesan dapat didekripsi dan pesan asli dapat diketahui oleh penerima.

3.2. Pemodelan UML

Unified Modeling Language UML digunakan sebagai bahasa spesifikasi standar suatu model yang berfungsi untuk membantu merancang sebuah sistem. Pemodelan sistem dilakukan untuk menunjukkan dan mendeskripsikan gambaran dari sistem yang akan dibangun. Pada penelitian ini dilakukan pemodelan dengan menggunakan UML untuk mendesain serta merancang sistem. Model UML yang digunakan dalam penelitian ini antara lain adalah usecase diagram, activity diagram serta sequence diagram. 3.2.1. Use-Case Diagram Diagram usecase digunakan untuk menggambarkan hubungan antara aktor dengan fungsi atau layanan yang disediakan oleh sistem Ambler, 2005. Aktor yang terlibat atau mempunyai interaksi dengan sistem pada penelitian ini adalah pengirim dan penerima. Hubungan antara aktor dengan fungsi usecase yang Universitas Sumatera Utara 32 tersedia pada sistem dihubungkan oleh garis lurus menyatakan bahwa aktor tersebut melakukan inisiasi atau mengajukan permintaan terhadap suatu usecase. Hubungan yang menyatakan suatu usecase dapat dilaksanakan dengan syarat yaitu kelakuan yang harus terpenuhi include digambarkan oleh garis putus-putus dengan tanda panah terbuka. Pada hubungan include, yang menjadi syarat dari suatu usecase adalah usecase pada pangkal tanda panah. Diagram usecase pada penelitian ini dapat dilihat pada Gambar 3.2. Gambar 3.2 Diagram Use-Case Pada Gambar 3.2 terdapat actor yang mempunyai peran yaitu sebagai pengirim atau penerima. Actor pengirim pesan mengenkripsikan pesan terlebih dahulu dengan algoritma Hill Cipher setelah plaintext dienkripsikan menjadi ciphertext lalu kunci dari Hill Cipher dienkripsikan dengan algoritma Rabin. Kemudian Actror penerima membutuhkan kunci Rabin untuk mendeksripsikan Ciphertext Hill dan didekripsi lagi dengan kunci Hill Cipher menjadi Plaintext kunci Hill Cipher yang digunakan untuk mendeksripsikan pesan yang sebenarnya. Berikut ini merupakan tabel narrative usecase yang dapat dilihat pada Tabel 3.1 Tabel 3.1 Narrative Use-Case Enkripsi Pesan Use-case Name Enkripsi Pesan Design Scope Sistem black box Goal Level User-goal Stakeholder and Interest Pengirim Pengguna: dapat mengenkripsikan pesan dan kunci pesan untuk menjaga keamanan pesan. Universitas Sumatera Utara 33 Precondition Pengirim Pengguna menginputkan pesan dan kunci. Minimal Guarantee Sistem akan memberikan pesan error ketika enkripsi pesan gagal. Success Guarantee Sistem akan memberikan pesan enkripsi telah sukses. Trigger Pengguna menekan tombol enkripsi pesan. Main Success Scenario 1. Pengirim menginputkan plaintext yang akan dienkripsi 2. Pengirim melakukan proses enkripsi kunci 3. Pengirim melakukan proses enkripsi pesan dengan Hill Cipher 4. Sistem akan melakukan enkripsi kunci dengan Rabin Public Key 5. Sistem akan melakukan enkripsi pesan. 6. Sistem akan memberikan pesan bahwa enkripsi pesan dan kunci pesan telah sukses. Extensions 1. Kunci enkripsi tidak lengkap atau kosong. a. Sistem akan memberikan pesan kepada pengirim untuk dilakukan cek ulang kembali input-an yang telah diberikan. Berikut ini merupakan tabel narrative usecase yang dapat dilihat pada Tabel 3.2 yang menjelaskan narrative usecase dekripsi pesan. Tabel 3.2 Narrative Use-Case Dekripsi Pesan Use-case Name Dekripsi Pesan Design Scope Sistem black box Goal Level User-goal Stakeholder and Interest Penerima dapat mendekripsikan kembali cipherkey dan ciphertext ke dalam bentuk plaintext. Precondition Penerima menerima ciphertext Minimal Guarantee Sistem akan memberikan pesan error ketika dekripsi pesan gagal. Success Guarantee Sistem akan memberikan pesan dekripsi telah sukses. Trigger Pengguna dapat menekan tombol Dekripsi Pesan. Main Succes Scenario 1. Penerima memiliki kunci kunci privat P dan Q 2. Penerima mengdekripsikan kunci Pesan dengan Kunci Rabin. 3. Penerima mengdekripsikan ciphertext menjadi plaintext. 4. Sistem akan melakukan dekripsi pesan dengan Hill Cipher. Universitas Sumatera Utara 34 5. Sistem akan memberikan pesan bahwa dekripsi telah sukses. 6. Sistem akan menampilkan plaintext 3.2.2. Sequence Diagram Diagram sequence menggambarkan interaksi antar objek dan menggambarkan komunikasi antar objek-objek tersebut Ambler, 2005. Berikut Sequence Diagram dari sistem yang dirancang dapat dilihat pada gambar 3.3 dan gambar 3.4. Gambar 3.3 Diagram Sequence untuk Enkripsi Gambar 3.4 Diagram Sequence untuk Dekripsi Universitas Sumatera Utara 35 3.2.3. Activity Diagram Diagram aktivitas activity diagram menggambarkan proses bisnis atau urutan aktivitas dalam sebuah sistem. Activity Diagram juga bertujuan untuk membantu bagaimana memahami proses dan menggambarkan setiap interaksi yang ada antara beberapa usecase yang digunakan Ambler, 2005. Activity Diagram dari sistem dapat dilihat pada Gambar 3.5 dan Gambar 3.6. Gambar 3.5. Activity Diagram Enkripsi Universitas Sumatera Utara 36 Gambar 3.6. Activity Diagram Dekripsi Universitas Sumatera Utara 37

3.3. Flowchart Sistem