Implementasi Steganografi Pada Citra Digital Dan Kriptografi Algoritma Polyalphabet Untuk
Pengamanan Informasi Berupa Text
Implementation of Steganography on Digital Images and Polyalphabetic Cryptography Algorithm for Securing Textual
Information
Rizal Pringgandani1, Anindia Sasikirana2, Mufida Nuriyana3
1,2,3Teknik Infomatika, Fakultas Teknik, Universitas Pelita Bangsa
2[email protected], 3[email protected] Abstract
The internet makes the exchange of information very easy because it can connect the person who sends the information to the person who receives it. It is becoming easier for unauthorized people to obtain information sent from sender to recipient over the internet. Therefore, security features are required for such data. Encryption is a security technique used to convert information, such as text, digital images, sound, and video, into irrelevant or scrambled information.
If the person in possession of the encrypted data does not have the key necessary to break the encryption, the data cannot be read because it has no meaning. A security feature known as embedding allows information to be inserted or hidden within the containment medium. The purpose of this paper is to create a system that can encode, decrypt passwords, insert information into the storage media, and extract information from the storage media, which can be digital images in jpeg, bitmap, and png formats. The encoding algorithm uses a key that has been determined by the sender and recipient to change ordinary information (plaintext) into scrambled information (ciphertext). The encoding algorithm used is the polyalphabet algorithm. Which will be combined with the least significant bit method as a method for the information insertion process.
LSB will change every last bit value of every pixel in the cover image according to the binary value of the message sequentially, so that the final result of the embedding (stego image) will not change significantly when seen by the human eye.
Keywords: Security, Encryption, Insertion, Polyalphabetic, Least Significant Bit
Abstrak
Internet membuat pertukaran informasi menjadi sangat mudah karena dapat menghubungkan orang yang mengirim informasi ke orang yang menerimanya.
Semakin mudah bagi orang yang tidak berwenang untuk mendapatkan informasi yang dikirimkan dari pengirim ke penerima melalui internet. Oleh karena itu, fitur keamanan diperlukan untuk data tersebut. Penyandian adalah teknik keamanan yang digunakan untuk mengubah informasi, seperti teks, citra digital, suara, dan video, menjadi informasi yang tidak relevan atau teracak. Jika orang yang memiliki data yang telah dienkripsi tidak memiliki kunci yang diperlukan
untuk membuka enkripsi, data tersebut tidak dapat dibaca karena tidak memiliki makna apa pun. Sebuah fitur keamanan yang dikenal sebagai penyisipan memungkinkan informasi untuk dimasukkan atau disembunyikan di dalam media penampung. Tujuan tulisan ini adalah untuk membuat sistem yang dapat menyandikan, mendekripsi sandi, menyisipkan informasi ke dalam media penampung, dan mengekstrak informasi dari media penampung, yang dapat berupa gambar digital dalam format jpeg,bitmap, dan png.Algoritma penyandian menggunakan kunci yang telah ditentukan oleh pengirim dan penerima untuk mengubah informasi biasa (plaintext) menjadi informasi yang telah teracak (ciphertext). Algoritma penyandian yang digunakan adalah algoritma Polyalphabetic. Yang akan dikombinasikan dengan metode Least Significant Bit sebagai metode pada proses penyisipan informasi. LSBakan mengubah setiap nilai bit terakhir dari setiap piksel pada citra tampung (cover) sesuai dengan nilai biner pesan secara berurutan, sehingga menyebaban hasil akhir dari penyisipan (stego image)tidak akan mengalami perubahan secara signifikan jika dilihat oleh mata manusia.
Kata kunci: Keamanan, Penyandian, Penyisipan, Polyalfabetik, Least Significant Bit
I. Pendahuluan
Kriptografi adalah alat untuk menjalankan kerahasiaan pesan. Dalam bahasa Yunani, kata "menyusun misteri" memiliki arti khusus. Siklus kerja yang berubah melalui pesan yang sebenarnya disebut dalam plaintext sebagai teks sandi.
Perulangan percakapan, yang disebut pengacakan, mengembalikan plaintext dari teks cipher [1]. Penelitian ini fokus pada integrasi steganografi pada citra digital dan kriptografi algoritma polyalphabet untuk memperkuat keamanan informasi teks di era digital. Dengan menggabungkan kedua teknik tersebut, penelitian ini bertujuan menciptakan solusi yang efektif untuk melindungi informasi sensitif dari ancaman siber[2]. Penelitian ini mengidentifikasi celah pengetahuan dalam integrasi steganografi dan kriptografi, dan berusaha mengisi kebutuhan untuk pengembangan metode yang lebih baik. Keberhasilan implementasi diharapkan memberikan dampak positif pada keamanan informasi dalam pertukaran data digital yang semakin kompleks. Penelitian ini bertujuan menjembatani kekurangan dalam keamanan informasi, terutama dalam konteks penggunaan citra digital[3]. Analisis literatur menunjukkan bahwa sebagian besar penelitian cenderung memusatkan perhatian pada satu aspek saja, baik steganografi atau kriptografi, tanpa menggabungkan keduanya secara efektif.
Oleh karena itu, penelitian ini mengisi celah tersebut dengan mengimplementasikan steganografi pada citra digital dan mengintegrasikannya dengan kriptografi algoritma polyalphabet. Tujuannya adalah memberikan kontribusi signifikan terhadap pengembangan teknik keamanan informasi yang lebih terintegrasi dan efektif. Penelitian ini mengusung pendekatan holistik terhadap pengamanan informasi, di mana steganografi dan kriptografi digabungkan secara sinergis. Implementasi metode steganografi pada citra digital memberikan kedok tambahan untuk informasi, sementara penggunaan kriptografi algoritma polyalphabet memperkuat tingkat keamanannya. Dengan demikian, penelitian ini diharapkan dapat memberikan kontribusi signifikan
terhadap pengembangan teknik keamanan informasi yang lebih terintegrasi dan efektif.
II. Metode Penelitian
III. Analisa dan Perancangan 1. Perancangan Sistem
Karena model pengembangan waterfall melakukan proses pembangunan sistem secara bertahap, tidak ada proses yang dilakukan secara bersamaan. Oleh karena itu, model ini akan digunakan saat membangun sistem.Perancangan sistem dengan model waterfall melibatkan beberapa langkah berikut:
1) Analisis Kebutuhani.Analisis a. Kebutuhan Fungsionala.
1. Dapat melakukan proses enkripsi plain text . 2. Dapat melakukan proses dekripsi cipher text.
3. Dapat menyisipkancipher text kedalam cover image.
4. Dapat mengekstraksi ciphertext dari stego image 2) Analisis Kebutuhan
a. Non Fungsional
Kebutuhan perangkat keras (Hardware) yang diperlukan untuk mengimplementasikan sistem minimal memiliki spesifikasi sebagai berikut:
1. Prosesor: intel dual core 2. Operating System : windows 3. Ram : 1gb
4. Penyimpaan : 150 gb 3) Desain Sistem (System Design)
Setelah analisis kebutuhan selesai, langkah selanjutnya adalah membuat desain sistem yang memenuhi persyaratan yang dibuat dalam analisis kebutuhan. Ini memudahkan proses perancangan sistem pada tahap berikutnya.
4) Penulisan Kode Program
Bahasa pemrograman yang digunakan dalam membangun sistem mini adalah bahasa pemrograman Python dengan menggunakan framwork flask, sedangkan aplikasi yang di gunakan untuk menulis kode pemrograman adalah visual studio code.
5) Pengujian (System Testing)
Pengujian dilakukan dengan metode black box untuk menguji fungsional dari sistem yang dibuat.
6) Pengoperasian dan Pemeliharaan (Operation and Maintenance)
Setelah sistem telah selesai dibangun secara keseluruhan, jika terdapat masalah atau ada kekurangan, maka akan dilakukan penelitan terhadap permasalahan serta pengembangan untuk menanggulangi masalah yang ada pada sistem tersebut.
Flowchartdiagram pada gambar 2.a menjelaskan alur kerja proses enkripsi dan penyisipan dari sistem secara keseluruhan. Berikut merupakan penjelasan detailnya:
a.Pengguna memulai applikasi. Kegiatan ini ditandai dengan tanda “Mulai”.
b.Pengguna memasukan plain teks, kunci, dan stego image.
c.Pengguna menjalankan proses yang akan menghasilkan gambar yang telah di sisipkan hasil enkripsi menggunakan polyalphabet.
d.gambar akan otomatis terunduh dan proses telah selesai.
Flowchart diagram pada gambar 2.b menjelaskan alur kerja proses dekripsi dan ekstraksi dari sistem secara keseluruhan. Berikut merupakan penjelasan detailnya:
a.Pengguna memulai aplikasi. Kegiatan ini ditandai dengan tanda “Mulai”.
b.Pengguna memasukan kunci, dan stego image.
c.Pengguna menjalankan proses yang akan menampilkan teks yang telah terdekripsi polyalphabet dan proses telah selesai
Gambar 1 Tampilan antarmuka sistem
Gambar 1 merupakan tampilan antarmuka sistem, pengguna memasukan plain teks selanjutnya pengguna di haruskan memasukan kunci lalu memilih proses yang ingin di jalankan, Hide Text in Image untuk melakukan proses enkripsi polyalphabet dan penyisipan gambar, Reveal Text from Image di gunakan untuk ektraksi teks enkripsi dan mendekripsikan teks.
2. Proses Enkripsi 3. Proses Dekripsi 4. Proses Penyisipan
Misalkan huruf “J”merupakan kata yang sudah melalui proses enkripsi mengunakan algoritma Polyalphabet.
Misalkan telah diketahui nilai dari masing-masing pixel adalah:
P1 : 250 = 11111010 P2: 156 = 10011100 P3: 124 = 01111100 P4: 122 = 01111010 P5: 131 = 10000011 P6: 222 = 11011110 P7: 142 = 10001110 P8: 108 = 01101100
Berikut merupakan langkah penyisipannya.
Ubah karakter menjadi sebuah nilai integer menggunakan kode ASCII : J = 74 . Langkah selanjutnya adalah mengkonversi nilai integer tersebut kebentuk biner : J = 01001010. Lalu lakukan proses penyisipan dengan cara mengganti bit terakhir pada biner pixel cover image dengan biner pesan
P1 :11111010 diganti 0 = 11111010=250 P2 :10011100 diganti 1 = 10011101=157 P3 :01111100 diganti 0 = 01111100=124 P4 :01111010 diganti 0 = 01111010=122 P5 :10000011 diganti 1 = 10000011=131 P6 :11011110 diganti 0 = 11011110=222 P7 :10001110 diganti 1 = 10001111=143 P8 :01101100 diganti 0 = 01101100=108
5. Proses Ekstraksi
Merupakan sebuah proses yang mengambil bit-bit terakhir pixel dari stego image. Kemudian kumpulan bit terakhir tersebut disusun dan dikonversikan menjadi nilai kode ASCII. Berikut merupakan langkahnya:
Mengambil bit terakhir pixel stego image P1 : 250 = 11111010= 0
P2 : 157 = 10011101= 1 P3 : 124 = 01111100= 0 P4 : 122 = 01111010= 0 P5 : 131 = 10000011= 1 P6 : 222 = 11011110= 0
P7 : 143 = 10001111= 1 P8 : 108 = 01101100= 0
Dari hasil ekstraksi diatas diperoleh dikumpulkan menjadi urutan
“01001010”kemudian dikonversikan kedalam nilai kode ASCII dan dikonversikan kebentuk karakter huruf atauangka atau tanda baca.
0100101 = 74 = J
Setelah itu cipher text akan di dekripsi mengunakan algoritma Polyalphabet.
6. Tampilan Antarmuka
Pengguna harus memasukan plain text , cipher text, kunci ,cover image seperti pada gambar 6.
Gambar 2 Tampilan antarmuka sistem
Pengguna dapat memilih citra digital yang akan dimasukan, seperti pada gambar 1.
Gambar 3 Cari cover image
IV. HASIL PENELITIAN
Tabel 1 Penulisan Table
N Plain teks Kunci Nama Enkripsi Dekripsi
o File 1 Nanami adalah
karakter anime lambor
gini nanami.p
ng Yazbaz iqiwat
yrxixbpr bbzsm
Nanami adalah karakter anime 2 Lamborgini adalah
mobil tercepat jujutsu mobil.pn
g Uuvvhjarhr tvuuuq fgvrf nxjwnjjn
Lamborgini adalah mobil tercepat 3 Kucing berlari merdek
a kucing1.
png Wytlrq niioebi Kucing Berlari 4 Kucing diam cikaran
g kucing2.
png Mcmieg jkiw Kucing diam 5 Universitas pelita
bangsa bekasi upb.png Vrsvwztmdak qivili fknyab
Universitas pelita bangsa
Tabel 2 Penulisan Table N
o Plain teks Kunci Nama
File Enkripsi Dekripsi
1 Nanami adalah
karakter anime lambor
gini nanami.p
ng Yazbaz iqiwat
yrxixbpr bbzsm
Nanami adalah karakter anime 2 Lamborgini adalah
mobil tercepat jujutsu mobil.pn
g Uuvvhjarhr tvuuuq fgvrf nxjwnjjn
Lamborgini adalah mobil tercepat 3 Kucing berlari merdek
a kucing1.
png Wytlrq niioebi Kucing Berlari 4 Kucing diam cikaran
g kucing2.
png Mcmieg jkiw Kucing diam 5 Universitas pelita
bangsa bekasi upb.png Vrsvwztmdak qivili fknyab
Universitas pelita bangsa