Proses Generate Kunci Dekripsi dilakukan dengan mencari invers modulo dari kunci enkripsi eA jika di modulokan dengan p
– 1.
3.1.4.6 Pseudocode Proses Enkripsi
Berikut merupakan pseudocode proses enkripsi
Proses enkripsi dilakukan setelah tedapat plain text, bilangan prima p, kunci enkripsi ea. Proses enkripsi dilakukan melalui perhitungan C = m
eA
mod p dimana m adalah nilai ascii dari karakter di plain text. Hasil perhitungan akan dimasukkan kembali kedalam array untuk
dapat dip roses lebih lanjut.
3.1.4.7 Pseudocode Proses Dekripsi
Berikut merupakan pseudocode proses dekripsi
Proses dekripsi dilakukan dengan melakukan perhitungan C = m
dA
mod p dimana m merupakan nilai ascii pada karakter di plain text yang telah di enkripsi. Hasil perhitungan
akan dimasukkan kembali kedalam array untuk dapat dip roses lebih lanjut.
ea = kunci enkripsi prime = bilangan prima
arrayint[] = ascii tiap karakter dari plain text for i = 0; i = arrayint.lenght -1; i++
e = ModPowarrayint[i], key, prime arrayint[i] = e
return arrayint
da = kunci dekripsi prime = bilangan prima
enkripted[] = cipher text dalam bentuk array for i = 0; i = enkripted.lenght -1; i++
e = ModPowenkripted[i], key, prime arrayint[i] = e
return arrayint
Universitas Sumatera Utara
3.1.4.8 Pseudocode Proses Embedding
Berikut merupakan pseudocode proses Embedding
Pada proses embedding perlu diketahui nilai biner dari cipher text dan nilai biner dari nilai RGB pixel tempat penyisipan. Proses akan mengambil 1 digit biner dari cipher text
kemudian menyisipkannya dinilai biner RGB. Digit penyisipan tergantung warna dari nilai RGB yang menjadi tempat penyisipan, apabila nilai R maka akan berada pada digit ke-8, bila
nilai G, maka akan berada pada digit ke-7, bila nilai B maka akan berada pada digit ke 6. Proses akan terus berulang sampai semua pixel diproses. Apabila digit yang mau disisipkan
telah habis maka proses akan mengembalikan nilai awal dari nilai RGB.
Binertexta[] = array dari cipher text dalam bentuk biner q = 0
r = 0 rgb = warna yang akan disisipkan
binaryawal = nilai binary dari nilai rgb dari pixel ulang:
For i = q; binertexta[r].lenght; i++
d = binertexta[r].substringi,1 d = nilai dari digit biner pada yang akan disisipkan
jika rgb == r jika binerawal dari nilai Red g = replacebitbinaryawal, 8, d
replacebit digunakan untuk menggantikan digit ke 8 pada biner awal dengan d
q = q +1 else jika rgb == g jika binerawal dari nilai blue
g = replacebitbinaryawal, 7, d replacebit digunakan untuk menggantikan digit ke 7 pada biner awal
dengan d q = q +1
else g = replacebitbinaryawal, 6, d
replacebit digunakan untuk menggantikan digit ke 6 pada biner awal dengan d
q = q +1 return g
if r == binertexta.length -1 return binaryawal
q = 0 r++
goto ulang
Universitas Sumatera Utara
3.1.4.8 Pseudocode Proses Extracting