BAB IV PERANCANGAN SISTEM 4.1 Rancangan Flowchart Flowchart merupakan diagram yang menunjukan bagaimana cara kerja dari sebuah aplikasi untuk masuk pada program pada saat program pertama kali dijalankan. 4.1.1 Rancangan Flowchart Proses Enkripsi dan Deskripsi Rancangan Flowchart pada proses Enkripsi dan Deskripsi dapat dilihat pada gambar 4.1 dan gambar 4.2 Gambar 4.1 Flowchart Form Enkripsi Pada proses ini, pertama kali form enkripsi akan ditampilkan, setelah itu user akan memilih gambar yang akan disisipkan pesan. Lalu sudah maka user akan memasukkan pesan dengan cara mengetik langsung di textfield yang tersedia atau dapat memilih file dari computer dengan format.txt. Selanjutnya adalah proses pembentukan kunci. Kunci P, G dan X akan diacak dengan cara mengkilk tombol acak.apabila X kurang dari angka 255 maka sistem akan mengacak kembali kunci P, G dan X. dan jika apabila P lebih besar dari G dan X lebih kecil dari P maka proses akan dilanjutkan. Jika tidak maka proses akan diulang pada tahap pengacakan kunci P, G dan X. Proses selanjutnya adalah pesan akan dienkripsi dengan berdasarkan kunci tersebut. Lalu pesan akan disisipkan pada gambar yang sebelumnya dipilih. Pesan 35
disisipkan dengan cara metode EOF, yaitu pesan akan disisipkan pada akhir bit atau pixel dari gambar. Selanjutnya gambar tersebut akan disimpan pada folder yang sudah dtentukan sebelumnya. Gambar 4.2. Flowchart Form Deskripsi Pada proses deskripsi maka form deskripsi akan ditampilkan. Proses selanjutnya adalah memilih gambar yang akan dideskripsi. Lalu user akan memasukkan kunci P. Selanjutnya berdasarkan kunci P tersebut, sistem akan menentukan kunci G dan X. Kemudian pesan akan dipisahkan dari gambar, dan berdasarkan kunci tersebut pesan akan dideskripsi. Apabila pemisahan pesan dari gambar gagal maka proses akan diulangi hingga berhasil. Selanjutnya pesan yang sudah dideskripsi akan ditampilkan dan proses deskripsi selesai. 4.1.2 Rancangan Flowchart Form About Pada form about terdapat informasi mengenai aplikasi dan sebagainya. Flowchart tentang Form about dapat dilihat pada gambar. 4.3. Pada Form About, hanya menampilkan informasi sederhana tentang apa itu ElGamal dan End Of File. 36
Gambar 4.3 Flowchart form about 4.1.3 Rancangan Flowchart Proses Enkripsi Deskripsi Pesan Dengan Algoritma ElGamal Pada proses enkripsi dan deskripsi pesan, flowchart dibagi menjadi 3 bagian yaitu flowchart pembentukan kunci, flowchart enkripsi dan flowchart deskripsi. Gambar 4.4 Proses pembentukan kunci Pada proses pembentukan kunci hal yang dilakukan pertama kali adalah menentukan kunci G dan P sebagai kunci publik, dan kunci X sebagai kunci private. Selanjutnya menentukan apakah kunci P adalah bilangan prima atau bukan. Jika kondisi iya berarti proses dilanjutkan sementara jika kondisi tidak maka proses 37
akan diulangi pada proses menentukan kunci. Proses selanjutnya adalah menentukan apakah kunci P dan X lebih kecil daripada kunci P. Jika terdapat kondisi tidak maka proses akan dikembalikan ke proses penentuan kunci. Jika terdapat kondisi iya maka proses dilanjutkan dimana menentukan kunci Y, dengan cara G pangkat X mod P. Jika proses tersebut selesai maka akan mendapatkan kunci P, G, X dan Y dan proses pembentukan kunci selesai. Gambar. 4.5 Proses Enkripsi ElGamal Potong plaintext jadi blok-blok m1, m2,.... Nilai setiap blok di dlm selang [0, p 1]. 1. Ubah nilai blok pesan ke dlm nilai ASCII. 2. Pilih bilangan acak k, dng syarat 1 k p 2. 3. Setiap blok m dienkripsi dng rumus sbg berikut. 4. gamma (γ) = gk mod p. (1) 5. delta (δ) = ykm mod p. (2) 6. Susun ciphertext dng urutan γ1, δ1, γ2, δ2,, γn, δn. 7. Pasangan γ & δ adl cipherteks unt blok pesan m. Hasil yg didapat dari proses enkripsi adl pesan rahasia (ciphertext). 38
Gambar 4.6 Proses Deskripsi ElGamal Pada proses deskripsi ini dipakai kunci pribadi (x, p). Langkah-langkah dalam mendekripsi pesan adalah sebagai berikut. 1. Penentuan nilai gamma & delta. Nilai gamma (γ) diperoleh dari ciphertext dengan urutan ganjil sedangkan delta (δ) dng urutan genap. 2. Hitung plaintext m dng persamaan rumus berikut. 3. m = δ. γ(p-1-x) mod p (3) 4. Ubah nilai m yg didapat kedalam nilai ASCII. 5. Susun plaintext dng urutan m1, m2,, mn. 4.1.4 Rancangan Flowchart Embedding Image dengan Metode End Of File Pada proses Embedding dengan metode End Of File, terdapat proses embedded dan proses retrieve.berikut adalah flowchart proses Embedded dan retrieve file. Gambar 4.7. Flowchart proses Embedding dengan metode EOF Pada Proses Embed atau penyisipan pesan, proses pertama kali adalah memilih 39
gambar sebagai Cover Object.Jika sudah maka proses selanjutnya adalah mengambil pixel atau bit paling akhir pada Cover Object. Apabila didapatkan, maka pada paling akhir ditambahkan penanda yang kemudian pesan akan disisipkan setelah penanda tersebut.selanjutnya gambar akan ditampilkan atau disimpan pada folder yang sudah dipilih dan proses penyisipan pesan berakhir. Pada proses retrieve atau mendapatkan pesan yaitu pada proses pertama kali mendapatkan gambar yang akan didapatkan pesannya. Apabila gambar sudah dipilih maka akan pixel atau bit setelah penanda. Bit atau pixel yang didapatkan akan dipisahkan dari gambar dan akan dideskripsi. Selanjutnya proses dilanjutkan dengan menampilkan pesan yang sudah dienkripsi. Start Masukkan Gambar yang sudah disisipkan pesan Baca akhir pixel setelah penanda Ekstrasi akhir pixel setelah penanda End Tampilkan pesan Deskripsi pesan Gambar 4.8 Flowchart proses retrieve pesan 4.2 Rancangan Layar Rancangan layar atau antarmuka aplikasi dibuat sesederhana mungkin agar user atau pengguna mudah dalam melakukan proses pengamanan data. Rancangan antarmuka aplikasi dibagi menjadi 2 (dua) bagian yaitu tampilan form enkripsi dan form dekripsi Adapun tampilan rancangan layar masing-masing bagian sebagai berikut: 4.2.1 Rancangan Layar Form EnkripsiDeskripsi Pada bagian desain sebelah kiri terdapat panel atau form untuk enkripsi. Berikut adalah komponennya: 1. TextField Terdapat 6 Textfield untuk menampilkan lokasi file gambar yang akan dienkripsi, 40
pesan yang akan dienkripsi, kunci p, g, dan x untuk menampilkan kunci untuk ElGamal, dan untuk menyimpan file setelah gambar disisispkan dan dienkripsi. 2. Button Terdapat 6 button dengan fungsi sebagai berikut: a. ImageSelect, sebagai tombol untuk memilih gambar yang akan disispkan b. MessageSelect, sebagai tombol untuk memilih pesan yang akan disisipkan c. GenerateKey, Sebagai tombol untuk mengacak nilai kunci untuk ElGamal d. ImageOutput, Sebagai tombol untuk menyimpan hasil encode dan enkripsi. e. Proses. Sebagai tombol untuk menjalankan proses enkripsi dan menyisipkan pesan ke gambar f. Reset, Sebagai tombol untuk mengosongkan semua kolom seperti pertama kali dibuka Pada bagian desain sebelah kanan terdapat panel atau form untuk deskripsi. Berikut adalah rancangannya: 1. TextField Terdapat 6 Textfield untuk menampilkan lokasi file gambar yang akan dienkripsi, pesan yang akan dienkripsi, kunci p, g, dan x untuk menampilkan kunci untuk ElGamal, dan untuk menyimpan file dideskripsi. 2. Button Terdapat 5 button dengan fungsi sebagai berikut: a. ImageSelect, sebagai tombol untuk memilih gambar yang akan disispkan b. GenerateKey, Sebagai tombol untuk mengacak nilai kunci untuk ElGamal c. FileOutput, Sebagai tombol untuk menyimpan hasil encode dan enkripsi. d. Proses. Sebagai tombol untuk menjalankan proses enkripsi dan menyisipkan pesan ke gambar e. Reset, Sebagai tombol untuk mengosongkan semua kolom seperti pertama kali dibuka Rancangan form enkripsi. pada panel sebelah kiri. Dan untuk form deskripsi dapat 41
dilihat pada form sebelah kanan dapat dilihat pada gambar 4.2 Gambar 4.9. Rancangan Form EnkripsiDeskripsi 4.2.2 Rancangan Layar Form About Pada form ini terdapat komponen yang menampilkan tujuan aplikasi dibuat dan sebagainya Gambar 4.10. Rancangan Form About 42