Gambar 3.2 Skema Extracting-Decryption
Proses Extracting yang digambarkan pada skema di atas, menjelaskan bahwa
proses Extracting dengan metode Modified LSB akan mengekstrak cipherteks dari stego image, kemudian Decryption dapat dilakukan dengan menggunakan kunci privat
yang tepat untuk menghasilkan plainteks.
3.2 Tahapan Algoritma RSA
3.2.1 Tahapan Proses Enkripsi Algoritma RSA
Dua besaran utama yang diperlukan dalam melakukan proses enkripsi dengan algoritma RSA adalah nilai p dan q. Dimana p dan q adalah merupakan dua buah
bilangan prima sembarang sebaiknya . Dalam sebuah sistem nilai p dan q,
dapat dimasukkan oleh user atau dibangkitkan oleh sistem. Untuk memudahkan user dalam menentukan nilai p dan q, sistem ini menyediakan fasilitas membangkitkan
pasangan nilai p dan q tersebut.
Setelah nilai p dan q ditentukan, akan dilakukan penghitungan oleh sistem untuk mendapatkan nilai-nilai berikut: n,
, e, dan d. Nilai untuk tiap besaran tersebut didapat dari perhitungan sebagai berikut:
1. .
2. 3.
merupakan bilangan acak, yang relatif prima terhadap atau gcd e,
= 1. Stego
Image
Plainteks Kunci
Privat Decryption
Cipherteks Extracting
Modified LSB
Universitas Sumatera Utara
4. . ≡
yang ekivalen dengan .
Dari perhitungan tersebut akan didapatkan pasangan kunci publik , dan
pasangan kunci privat , . Pasangan kunci publik merupakan nilai-nilai yang
nantinya akan digunakan dalam mengenkripsi plainteks menjadi cipherteks. Selanjutnya, agar cipherteks dapat dikembalikan menjadi plainteks harus dilakukan
proses dekripsi yang membutuhkan pasangan kunci privat.
Agar penerima pesan dapat melakukan dekripsi, pengirim pesan harus mendistribusikan kunci privat yang telah terbentuk kepada penerima pesan yang
dituju. Untuk mencegah adanya pihak lain yang mampu membaca pesan yang dikirimkan tersebut kunci privat haruslah bersifat rahasia, karena salah satu kunci
keamanan suatu algoritma tergantung dari kerahasiaan kunci privatnya. Dalam pendistribusian kunci privat harus dipastikan bahwa kerahasiaan kunci privat dapat
terjaga. Pengirim dan penerima pesan harus memastikan bahwa media komunikasi yang digunakan cukuplah aman. Salah satu alternatif yang dapat digunakan dalam
pendistribusian cipherteks atau stego image dan kunci privat adalah dengan mengirimkan kunci privat melalui media yang berbeda dengan yang digunakan untuk
mengirimkan cipherteks atau stego image.
Selanjutnya, penggunaan kunci publik , dalam proses enkripsi digunakan
dalam persamaan: ,
dimana m adalah plainteks dan c adalah cipherteks hasil enkripsi. Misalkan saja, dari hasil pembangkitan nilai p dan q didapat nilai p=787 dan q=853. Dari dua
besaran utama tersebut akan didapat nilai-nilai berikut:
n = 671311, e = 337, d = 176857
Universitas Sumatera Utara
Nilai n dan d merupakan kunci privat yang dikirimkan kepada penerima pesan yang akan melakukan dekripsi.
Untuk pesan : “test”. Selanjutnya akan diterjemahkan dalam bentuk desimal dalam pengkodean ASCII. Sehingga plainteks dalam bentuk desimalnya menjadi:
“116 101 115 116” “116101115116”
Untuk melakukan perhitungan mendapatkan cipherteks, sistem akan membagi plainteks menjadi blok-blok yang lebih kecil, sistem yang akan dirancang pada
penelitian ini membagi plainteks yang telah dikonversi dalam pengkodean ASCII untuk tiap enam digit ke dalam satu blok atau dengan kata lain sistem melakukan
perhitungan untuk tiap dua karakter plainteks. Sehingga blok-blok plainteks untuk contoh di atas menjadi:
Selanjutnya akan diperoleh nilai cipherteks dari perhitungan masing-masing blok plainteks:
Cipherteks yang diperoleh: 545709 176892
Dikarenakan sistem akan menghitung dua karakter plainteks menjadi 1 blok cipherteks. Proses tersebut hanya akan berlaku untuk plainteks dengan panjang
karakter pesan genap. Sedangkan untuk panjang karakter pesan ganjil maka agar proses tersebut tetap dapat dilakukan, sistem akan menambahkan satu karakter khusus
“.” di akhir plainteks dengan panjang karakter ganjil. Dengan demikian sistem akan membaca plainteks sebagai penggabungan antara plainteks awal dengan karakter yang
Universitas Sumatera Utara
ditambahkan sehingga proses enkripsi tetap dapat dilakukan untuk perhitungan tiap dua karakter plainteks. Cipherteks akan berupa blok-blok integer yang selanjutnya
akan disembunyikan dalam cover image dengan metode Modified LSB untuk dikirimkan kepada pihak yang dituju.
3.2.2 Tahapan Proses Dekripsi Algoritma RSA
Dekripsi dilakukan setelah cipherteks berhasil diekstraksi dari stego image, dengan mengubah nilai blok-blok cipherteks menjadi pesan yang dapat dibaca dan dimengerti
oleh penerima pesan. Untuk mendekripsikan cipherteks penerima pesan harus memiliki kunci privat yang sebelumnya telah diberikan oleh pengirim pesan. Kunci
privat itu berupa nilai dari besaran d dan n, yang bersifat rahasia dan hanya diketahui oleh pengirim dan penerima pesan.
Untuk contoh sebelumnya, akan diterima cipherteks “545709 176892” dengan kuci privat n = 671311 dan d = 176857. Dapat dilakukan dekripsi dengan persamaan:
untuk masing-masing blok cipherteks sebagai berikut:
Setelah didapat hasil perhitungan berupa nilai desimal “116101 115116” selanjutnya akan dapat diketahui pesan yang dikirimkan oleh pengirim dengan
menerjemahkannya menggunakan pengkodean ASCII. Untuk setiap 3 digit akan dikonversikan ke dalam pengkodean ASCII kembali, sehingga nilai dari tiap 3 digit
plainteks yang didapat menjadi:
116 101 115 116 t e s t
Dari hasil dekripsi penerima pesan dapat mengetahui makna pesan yang terenkripsi yang dikirimkan oleh pengirim pesan, yaitu: “test”. Plainteks akan berhasil
Universitas Sumatera Utara
didekripsikan dengan tepat apabila kunci privat yang digunakan sesuai dengan kunci privat yang diberikan oleh pengirim pesan. Meskipun terdapat pihak-pihak yang dapat
menyadap cipherteks, plainteks tidak akan dapat didekripsikan dengan tepat bila kunci privatnya tetap terjaga.
3.3 Tahapan Proses Penyisipan dan Pengekstrakan