• Tidak ada hasil yang ditemukan

ANALISIS DAN PERANCANGAN

3.1 Analisis Sistem

3.1.2 Analisis Persyaratan (Requirement Analysis)

3.1.2.3 Pemodelan Persyaratan Sistem dengan Use Case

Untuk mendapatkan gambaran yang lebih jelas mengenai objek yang akan saling berinteraksi dengan sistem dan apa saja yang harus dilakukan oleh sistem agar sistem tersebut berfungsi dengan baik dan sesuai dengan fungsinya, maka akan dilakukan pemodelan sistem. Pemodelan yang akan dikembangkan adalah diagram use case, dimana yang menjadi aktor utamanya adalah pengguna. Pengguna dapat dikategorikan menjadu dua entitas yakni pengirim dan penerima.

Berdasarkan analisis kebutuhan sistem, beberapa hal yang harus dipenuhi oleh sistem, yaitu:

1. Sistem harus dapat membangkitkan kunci publik dan kunci privat yang akan digunakan dalam proses enkripsi dan dekripsi.

2. Sistem harus dapat melakukan enkripsi data atau informasi, kemudian sistem juga harus dapat menyisipkan chipertext ke file citra.

3. Sistem harus dapat mengekstraksi data atau informasi yang telah disisipkan kedalam citra, kemudian di dekripsi.

Berikut ini merupakan rancangan use case sistem yang akan dibuat sesuai dengan analisis kebutuhan yang telah dilakukan :

Dari use case diagram tampak bahwa penerima akan membangkitkan kunci publik dan kunci privat, kemudian kunci publik diberikan kepada siapa saja yang ingin mengirim data atau informasi kepadanya. Sedangkan kunci privat hanya diketahui oleh si penerima sehingga orang yang tidak berkepentingan tidak mengetahui data atau informasi yang dikirimkan oleh si pengirim. Setelah si pengirim mendapatkan kunci publik, kemudian pengirim akan melakukan proses enkripsi dan menyisipkan ciphertext ke dalam sebuah citra. Setelah data dienkripsi dan disisipkan, maka si pengirim dapat mengirimkan citra yang berisi data atau infromasi tersebut melalui layanan email atau sejenisnya kepada penerima. Setelah penerima menerima citra yang dikirimkan si pengirim, maka penerima akan mengekstraksi dan mendekripsikan data atau informasi yang ada pada citra tersebut. Berikut ini dokumentasi naratif untuk use case diagram :

Tabel 3.1 Dokumentasi Naratif Program Enkripsi dan Steganografi. Nama use case Program enkripsi dan steganografi

Aktor Penerima dan pengirim

Deskripsi

Use case mendeskripsikan bagaimana proses yang terjadi antara satu proses dengan proses yang lain dan antar proses dengan peringim atau penerima.

Pre-condition Data atau informasi yang dikirm berupa file txt

Typical course of event

Aksi aktor Respon sistem

Langkah-1: Penerima menjalankan program.

Langkah-3: Penerima akan memilih bangkitkan kunci dari menu utama.

Langkah-5 : Penerima akan menyimpan kunci, kemudian membagikan kunci publik kepada setiap orang yang ingin mengirim data atau informasi kepadanya.

Langkah-7: Penerima akan

Langkah-2: Sistem akan memuat modul-modul pada menu utama.

Langkah-4: Sistem kemudian membangkitkan kunci publik dan privat.

Langkah-6:Pengirim kemudian menjalankan program dan melakukan proses enkripsi dan menyisipkannya ke citra, dan mengirimkannya ke penerima.

mengekstraksi dan mendekripsi- kan data atau informasi yang ada pada citra.

Alternate course

Aksi aktor Respon sistem

- -

Post condition Data atau informasi yang dikirim si pengirim kepada penerima

sampai tanpa diketahui oleh orang lain.

Tabel diatas menjelaskan use case program enkripsi dan steganografi secara detail dimana terdapat actor, pre-condition, post-condition dan serta action dari pengguna dan sistem. Dengan tabel diatas dapat diketahui bagaimana cara penggunaan program dan langkah-langkah dalam menggunakan program.

Activity diagram untuk use case program enkripsi dan steganografi adalah :

Pada use case dapat dilihat terdapat beberapa aksi yang dilakukan oleh aktor, yaitu bangkitkan kunci, enkripsi dan penyisipan, ekstraksi dan dekripsi. Untuk menjelaskan ketiga proses, akan digambarkan dengan diagram activity setiap proses. Untuk menjelaskan proses bangkitkan kunci, maka berikut akan dibuatkan dokumentasi naratif untuk use case

bangkitkan kunci :

Tabel 3.2 Dokumentasi Naratif Use Case Bangkitkan kunci Nama use case Bangkitkan kunci

Aktor Penerima

Deskripsi Use case mendeskripsikan bagaimana penerima menggunakan sistem untuk membangkitkan sebuah kunci privat dan pulik.

Pre-condition Penerima belum memiliki kunci privat dan publik

Typical course of event

Aksi aktor Respon sistem

Langkah 1: Penerima

mengimputkan sebuah bilangan. Langkah 3: Penerima

menginputkan bilangan prima tersebut sebagai kunci.

Langkah 5: Penerima akan menyimpan kunci yang telah dibangkitkan kedalam file txt.

Langkah 2: sistem mengecek apakah biangan tersebut prima atau tidak. Jika prima maka bilangan tersebut akan dicetak dan jika tidak, akan digenerate sebuah bilangan prima.

Langkah 4: Sistem akan membangkitkan kunci privat dan publik

Alternate course

Aksi aktor Respon sistem

- -

Post condition Kunci telah dibangkitkan dan telah disimpan

Tabel diatas menjelaskan usecase bangkitkan kunci secara detail dimana terdapat

actor, pre-condition, post-condition dan serta action dari pengguna dan sistem. Dengan tabel diatas dapat diketahui apa saja action yang dilakukan pengguna dan sistem pada saat membangkitkan kunci.

Gambar 3.4 Activity Diagram Bangkitkan Kunci

Pada proses enkripsi dan penyisipan, maka hal pertama yang dilakukan sistem adalah memeriksa apakah data atau informasi yang akan disisipkan ada atau tidak, kemudian sistem juga mengecek kunci publiknya dan citra yang akan disisipi. Apabila ada yang kosong, maka sistem akan memberikan pemberitahuan apa yang harus dilakukan, jika tidak ada yang kosong, akan dilakukan proses enkripsi. Pada proses enkripsi, maka setiap karakter data atau informasi akan diubah ke bentuk desimal menggunakan kode ascii. Setelah diubah ke bentuk desimal, akan dilakukan proses enkripsi dengan menggunakan algoritma ElGamal. Hasil enkripsi akan diubah ke bentuk binari, kemudian dihitung jumlah bitnya. Setelah itu, dihitung pula jumlah bit yang dapat ditampung oleh citra, jika citra tidak dapat menampung bit hasil enkripsi, maka proses diberhentikan. Apabila bit-bit hasil enkripsi dapat ditampung oleh citra, akan dilakukan proses penyisipan bit-bit tersebut ke citra. Setelah itu akan dicetak citra yang telah disisipi. Untuk lebih memahami proses enkripsi dan penyisipan, berikut akan dibuat tabel dokumentasi naratif proses enkripsi dan penyisipan :

Tabel 3.3 Dokumentasi Naratif Use Case Enkripsi. Nama use case Enkripsi dan Penyisipan

Aktor Pengirim

Deskripsi

Use case ini berfungsi untuk melakukan enkripsi dengan algoritma ElGamal, kemudian hasil enkripsi disisipkan ke sebuah citra dengan algoritma LSB

Pre-condition Data atau informasi dalam bentuk text atau txt.

Typical course of event

Aksi aktor Respon sistem

Langkah 1: Pengirim menginput- kan data atau informasi, kunci publik dan citra.

Langkah 8: Pengirim menyimpan citra yang berisi data atau informasi yang telah dienkripsi.

Langkah 2: Sistem mengecek apakah data, kunci dan citra ada yang kosong atau tidak. Langkah 3 : Sistem melakukan proses enkripsi.

Langkah 4 : sistem mengecek apakah citra dapat menampung hasil enkripsi.

Langkah 5: Sistem menyisip- kan ciphertext ke citra.

Langkah 7: Sistem mencetak citra yang telah disisipi dengan ciphertext.

Alternate course

Aksi aktor Respon sistem

- -

Post condition Data atau informasi telah dienkripsi dan disisipkan ke citra, dimana

perubahan citra sangat kecil yang tidak tampak oleh mata manusia.

Tabel diatas menjelaskan use case enkripsi dan penyisipan secara detail dimana terdapat actor, pre-condition, post-condition dan serta action dari pengguna dan sistem. Dengan tabel diatas dapat diketahui action yang dilakukan pengguna dan proses yang terjadi pada saat proses enkripsi dan penyisipan.

Gambar 3.5 Activity Diagram Proses Enkripsi dan Penyisipan

Pada proses ekstraksi dan dekripsi, penerima akan menginputkan citra yang diterima dari si pengirim dan kunci privatnya. Sistem akan mengecek apakah citra atau kunci privat, ada yang kosong. Apabila ada yang kosong, akan ada pemberitahuan apa yang harus dilakukan dan apabila tidak ada maka sistem akan melakukan proses ekstraksi. Hasil ektraksi akan didekripsi kemudiam hasilnya akan dicetak. Penerima menyimpan data atau informasi dalam bentuk file txt. Untuk lebih jelas, berikut akan dibuatkan dokumentasi naratif use case

Tabel 3.4 Dokumentasi Naratif Use Case Ektraksi dan Dekripsi Nama use case Ekstraksi dan dekripsi

Aktor Penerima

Deskripsi

Use case ini berfungsi untuk melakukan ekstraksi hasil enkripsi dari citra, kemudian didekripsi untuk memperoleh data atau informasi yang disimpan pada citra.

Pre-condition Data atau informasi dalam bentuk yang dienkripsi dan disisipkan

dalam citra.

Typical course of event

Aksi aktor Respon sistem

Langkah 1: Penerima menginput- kan citra (berisi data atau informasi ) dan kunci privat.

Langkah 6: Penerima akan menyimpan hasil ektraksi dan dekripsi dalam bentuk file txt.

Langkah 2: Sistem memeriksa citra dan kunci privat, apakah ada yang kosong.

Langkah 3 : Sistem melakukan proses ekstraksi.

Langkah 4 : Sistem melakukan proses dekripsi atas hasil ektraksi.

Langkah 5: Sistem akan mencetak hasil ekstraksi dan dekripsi.

Alternate course

Aksi aktor Respon sistem

- -

Post condition Diperoleh data atau informasi yang ada pada citra yang kemudian

disimpan dalam file txt.

Tabel diatas menjelaskan usecase ekstraksi dan dekripsi secara detail dimana terdapat

actor, pre-condition, post-condition dan serta action dari pengguna dan sistem. Dengan tabel diatas dapat diketahui action yang dilakukan pengguna dan proses-proses yang terjadi pada saat ekstraksi dan dekripsi.

Activity diagram untuk use case proses ekstraksi dan dekripsi adalah sebagai berikut :

Gambar 3.6 Activity Diagram Ekstraksi dan Dekripsi

Berdasarkan dokumentasi naratif dan activity diagram dapat dilihat bahwa proses pertama yang dilakukan adalah ekstraksi data atau informasi yang disisipkan pada citra dengan menggunakan algoritma LSB. Kemudian hasil ekstraksi didekripsikan menggunakan algoritma ElGamal. Pada proses dekripsi, kunci yang digunakan adalah kunci privat. Apabila kunci privatnya salah maka proses dekripsinya tetap dikerjakan, akan tetapi hasil dekripsinya akan berbeda dengan data atau informasi aslinya.

Dokumen terkait