Flowchart Proses Enkripsi dengan ElGamal Flowchart Proses Dekripsi dengan ElGamal

36 Keterangan : Pc : input-an citra Pt : input-an teks Penanda : tanda yang digunakan untuk mengenali posisi karakter dalam sebuah string R1 : penampung sementara L : lebar citra T : tinggi citra

3.1.4.3 Flowchart Proses Enkripsi dengan ElGamal

Pada proses enkripsi citra digital plain-image, algoritma yang digunakan adalah algoritma ElGamal. Algoritma ini merupakan jenis algoritma asimetri yaitu kunci yang digunakan untuk proses enkripsi berbeda dengan kunci yang digunakan untuk proses dekripsi. Untuk proses enkripsi gambar 3.11, pertama sekali harus ada objek citra yang akan dienkripsi, kemudian dimasukkan kunci bilangan p, g, x, dan k, kemudian dihitung nila y. Selanjutnya dilakukan proses perhitungan nilai cipher a, dan setelah itu dilakukan proses enkripsi objek citra, mulai dari titik awal sampai titik terakhir citra tersebut, dan dilakukan enkripsi terhadap semua layer red, green. Dan blue. Setelah selesai dilakukan proses enkripsi didapatkan cipher-image yang akan disimpan dengan nilai cipher a dan kunci dekripsi. Proses enkripsi digambarkan sebagai berikut pada gambar 3.11 : Universitas Sumatera Utara 37 Start End Input Kunci p,g,x,k y = g x mod p a = g k mod p ; I = 0 ; Cipher Hasilcitra dan a While i tinggiPc HasilcitraJ,I = y k PcJ,I mod p Tidak i++ While J LebarPc J = 0 ; Tidak Ya Ya Pc = Input citra Gambar 3.11 Flowchart Proses Enkripsi Plain-image dengan ElGamal Keterangan : p : bilangan prima g : bilangan acak gp x : bilangan acak xp y : kunci publik m : plain-object a,b : cipher-object k : bilangan acak 1 ≤ k ≤ p-2 i,j : bilangan bulat untuk perulangan Universitas Sumatera Utara 38 hasil_citra : citra yag sudah dienkripsi Pc : citra asli

3.1.4.4 Flowchart Proses Dekripsi dengan ElGamal

Proses dekripsi menunjukkan hal yang dilakukan pertama memasukkan cipher-citra dan memasukkan nilai x dan p, dan cipher a, dimana x adalah kunci yang harus dirahasiakan, setelah itu dilakukan proses perhitungan dekripsi dan mendapatkan plain-image m. Berikut digambarkan pada gambar 3.12 flowchart proses enkripsi plainkey dengan menggunakan algoritma ElGamal : Start End Pc = Input Citra Input a,x,p GambarJ,I = PcJ,I a_inv mod p ; J++; T = Tinggi Pc; L = Lebar Pc; a_inv= a p-1-x mod p ; I = 0 ; Gambar While I T i++ Ya Tidak While J L Tidak Ya J = 0 ; Gambar 3.12 Flowchart Proses Dekripsi dengan ElGamal Universitas Sumatera Utara 39

3.1.4.5 Flowchart Proses Ekstraksi dengan End Of File