IMPLEMENTASI STEGANOGRAFI PESAN TEKS KE DALAM FILE AUDIO (.MP3) DENGAN ALGORITMA ADVANCED ENCRYPTION STANDARD DAN LEAST
SIGNIFICANT BIT
Nursobah1, Siti Lailiyah2, Asri Kurnia3.
1,2,3STMIK Widya Cipta Dharma
1[email protected], 2[email protected], 3[email protected]
ABSTRAK
Tujuan dari penelitian ini adalah untuk menghasilkan Aplikasi desktop Steganografi audio dengan Implementasi Steganografi Pesan Teks Ke Dalam File Sound (.MP3) Dengan Algoritma Advanced Encryption Standard dan Least Significant Bit. Bahasa pemrograman yang digunakan adalah C#. Penelitian ini dilakukan di Samarinda. teknik pengumpulan data yang digunakan adalah studi pustaka, dan pengamatan, alat bantu pengembangan sistem menggunakan metode Waterfall serta pengujian menggunakan black-box. Hasil dari penelitian ini adalah berupa aplikasi desktop steganografi audio yang diamankan dengan enkripsi Advanced Enryption Standard (AES) 128 bit, di embedding dengan Least Significant Bit dimana file pesan di enkripsi dan di injeksikan ke dalam file media mp3 yang output nya akan tersimpan di lokasi yang telah ditentukan dan hanya bisa di ekstrak oleh pemegang kunci dan memiliki aplikasi steganogarafi audio, file didekripsi menggunakan algoritma Advanced Enryption Standard (AES) 128 bit dan di ekstrak dengan Least Significant Bit
Kata kunci: Implementasi, Steganografi, Media.b
1. PENDAHULUAN
Keamanan informasi menjadi bagian yang tidak dapat dipisahkan dalam dunia digital seperti sekarang ini. Seiring dengan berkembangnya teknologi, resiko ancaman terhadap informasi akan semakin besar, terutama pada informasi-informasi yang bersifat rahasia. Berbagai ancaman dari dunia maya seperti hacker dan cracker memperbesar resiko bocornya informasi tersebut ke pihak-pihak yang tidak dikehendaki. Kekhawatiran inilah yang menyebabkan terhambatnya penyampaian informasi, sementara informasi tersebut sangat dibutuhkan oleh pihak-pihak tertentu[1].
Dengan ini maka penulis meng-implementasikan Steganografi Pesan Teks Ke Dalam File Sound (.MP3) Dengan Algoritma Advanced Encryption Standard dan Least Significant Bit. Steganografi adalah salah satu bidang ilmu dalam keamanan informasi antara pengirim pesan dan penerima pesan dengan cara meyembunyikan informasi ke dalam perangkat media audio. Dengan menggabungkan kedua algoritma ini diharapkan akan mempersulit para pelaku kejahatan dalam melakukan aksinya sesuai dengan harapan penulis sebelumnya.
Algoritma AES merupakan algoritma cipher block yang cukup aman untuk melindungi data atau informasi yang bersifat rahasia, hal ini dibuktikan pada tahun 2001[2], AES digunakan sebagai standar algoritma kriptografi terbaru yang dipubliskan oleh NIST (National Institute of Standard and Technology) sebagai penganti DES (Data Encryption Standard) yang sudah berakhir masa pengunaanya.
Algoritma Least Significant Bit yaitu algoritma yang bekerja dengan cara menyimpan data ke dalam file audio, mengganti bit yang paling tidak penting atau Low Significant Bit (LSB) pada setiap titik samping dengan string berkode biner (coded binary string). Metode ini hanya berguna pada lingkungan digital-to-digital yang tertutup atau dengan kata lain pengiriman pesan digital ke digital melalui public berisikan pesan rahasia/pribadi tertutup[3].
Dengan demikian, penelitian ini akan difokuskan pada pengembangan Steganografi audio untuk pengamanan Pesan Teks dengan algoritma Advanced Encyption Standard 128 bit dan Least Significant Bit untuk menjaga kerahasiaan pesan Teks dalam audio, sehingga tidak dapat diketahui oleh pihak yang tidak berhak (anauthorized persons) dan membantu penggunaan dalam hal mengamankan datanya.
2. METODE PENELITIAN 2.1 Steganografi
Steganografi didefinisikan sebagai ilmu dan seni untuk menyembunyikan pesan rahasia sehingga keberadaan pesan tidak terdeteksi oleh indra manusia. Salah satu dari steganografi adalah mengirimkan informasi rahasia melalui jaringan tanpa menimbulkan kecurigaan.
Steganografi sudah digunakan sejak dahulu kala sekitar 250 tahun yang lalu untuk kepentingan politik, militer, diplomatic, serta untuk kepentingan pribadi. Dan sesungguhnya prinsip dasar dalam steganografi lebih dikonsentrasikan pada kerahasiaan komunikasinya bukan pada datanya [4,5]
Steganografi memerlukan setidaknya dua property. Terlihat pada gambar 2.1,Properti pertama adalah wadah penampung (cover) dan yang kedua adalah data atau informasi yang ingin disembunyikan. Untuk meningkatkan tingkat keamanan data yang disimpan, dapat dilakukan dengan menambahkan property kunci (key) rahasia. Properti wadah (cover) yang mungkin digunakan untuk menyimpan pesan dalam steganografi sangat beragam. Medium wadah tersebut antara lain citra,suara, video maupun teks[6].
Skema penyembunyian data dalam steganografi secara umum adalah data atau informasi yang ingin disembunyikan disimpan dalam sebuah wadah (cover) melalui suatu algoritma steganografi tertentu. Untuk menambah tingkat keamanan data, dapat diberikan kunci, agar tidak semua orang mampu mengungkapkan data yang disimpan dalam berkas wadah (cover). Hasil akhir dari proses penyimpanan data ini adalah sebuah berkas stego (stego data/stego file). Pertimbangan pemilhan penggunaan kunci dari segi tipe serta panjang kunci adalah suatu hal yang juga berperan penting dalam pengamanan data yang tersimpan dalam steganografi.[7,8]
Gambar 2.1 Proses Steganografi
2.2 Advanced Encryption Standard
Advanced Encryption Standard (AES) merupakan algoritma kriptografi yang dapat digunakan untuk mengamankan data. Algoritma Advanced Encryption Standard adalah blok cipherTeks simetrik yang dapat mengenkripsi (encipher) dan dekripsi (decipher) informasi [3,9]. Proses enkripsi Advanced Encryption Standard (AES) 128 bit adalah sebagai berikut :
a. Pada awal enkripsi, input plainTeks 128 bit akan disalinkan ke suatu array yang diberi nama state array.
b. Proses enkripsi dimulai dengan suatu proses yang melakukan XOR antara state awal (plainTeks) dengan cipher key. Tahap ini disebut juga initial round .
c. Untuk kunci cipher 128 bit, jumlah ronde adalah 10.
d. Proses selanjutnya 9 ronde yang masing-masing ronde terdiri dari urut-urutan empat macam proses yaitu : SubBytes yaitu substitusi byte dengan menggunakan tabel substitusi (S-box).
ShiftRows yaitu pergeseran baris-baris array state secara wrapping.
MixColumns adalah mengacak data di masing-masing kolom array state.
AddRoundKey adalah melakukan XOR antara state sekarang round key.
e. Diakhiri dengan ronde ke 10 yang hanya terdiri dari 3 proses yaitu SubBytes, ShiftRows dan AddRoundKey.
f. Dengan proses Expand Key atau perpanjangan kunci, kunci yang terdiri dari 4 word (1 word terdiri dari 32 bit) akan diperpanjang menjadi suatu array yang terdiri dari 44 word yang masing-masing word terdiri dari 32 bit atau 4 byte.
g. Kunci asli digunakan pada awal enkripsi, kemudian setiap 4 buah word hasil perpanjangan kunci akan digunakan pada ronde 1 sampe dengan ronde 10.
h. Diagram alir proses enkripsi algoritma Advanced Encryption Standard (AES) 128 bit dapat dilihat pada gambar 2.2
Gambar 2.2 Diagram Enkripsi AES
Proses dekripsi Advanced Encryption Standard (AES) 128 bit adalah sebagai berikut : Urutan proses dekripsi Advanced Encryption Standard (AES) merupakan kebalikan dari proses enkripsinya. Namun ada proses yang dipertukarkan urutannya, namun penggunaan kuncinya sama. Jika urut-urutan proses enkripsi adalah SubBytes, ShiftRows, MixColumns dan AddRoundKey. Keempat proses tersebut adalah masing-masing invers pada proses enkripsi tetapi urutan adalah InvShiftRows dan InvSubBytes dipertukarkan dan InvAddRoundKey dan InvMixColumns juga dipertukarkan. Diagram alir proses dekripsi pada algoritma Advanced Encryption Standard (AES) 128 bit dapat dilihat pada gambar 2.3.
Gambar 2.3 Diagram Proses Dekripsi
2.3 Simple Coluumnar Transposition (SCTR)
Simple Columnar Transposition (SCTR) dibuat sekitar tahun 1940-an. Pada waktu itu digunakan oleh Sekutu untuk menandingi alat kriptografi buatan Jerman enigma untuk menjaga kerahasiaan pesan yang dikirimkan pada Perang Dunia II [2,6].
Metode enkripsi cukup sederhana, yaitu dengan membagi plainteks menjadi blok-blok dengan panjang kunci (k) tertentu yang kemudian blok-blok tersebut disusun dalam bentuk baris dan kolom. Terdapat dua metode yang digunakan apabila panjang plainteks (n) tidak habis dibagi oleh kunci (k). Pertama adalah irregular case, yaitu melakukan enkripsi tanpa merubah plainteks dan yang kedua adalah regular case yaitu melakukan enkripsi setelah menambahkan karakter-karakter dummy (pad) sebanyak d dengan 0<d<n sehingga panjang plainteks habis dibagi kunci. Dan hasil enkripsinya adalah dengan membaca secara vertikal (tiap kolom) sesuai urutan kolom.
Dalam SCTR plainTeks disusun secara horizontal dibagi sesuai dengan kunci yang diberikan kemudian dibaca secara vertical dan disusun kembali menjadi cipherTeks.
Misalkan plainteks = GodOfWarIII Enkripsi dengan kunci = 4:
Gambar 2.4 Ilustrasi Enkripsi SCTR
Cipherteks yang di bacara secara vertical adalah GfIoWIdaIOr. Untuk proses dekripsinya Teks cipher dibaca sesuai dengan kuncinya misalnya dalam iluatrasi Gambar 2.4 ini kuncinya 4, chipherTeks dibaca setiap 4 karakter
Gambar 2.5 Ilustrasi Dekripsi SCTR
Pada ilustrasi gambar 2.5 karakter dibaca setiap 4 karakter dan diberi nomor urut kemudian disusun sesuai nomor urutnya sehingga menghasilkan Teks asli.
2.4 Least Significant Bit
Pada metode ini sebagian bit pada file audio diubah menjadi nilai lain dalam representasi biner.
Perubahaan dapat dilakukan dengan berbagai cara dan algoritma, misalnya mengubah nilai biner 0 menjadi 1 atau sebaliknya, melakukan operasi XOR antara lain biner pada file dengan nilai biner pada kunci, karena dalam representasi biner, maka perubahan yang mungkin terejadi adalah nilai 1 menjadi 0, atau nilai biner 0 menjadi 1.
Suatu file audio dapat memiliki satu channel (mono) atau dua channel (stereo). Secara umum, kapasitas satu channel adalah kbps per kilohertz,, karena ukuran channel dapat mencapai 44000 byte, maka kapasitas maksimal yang dapat ditampung oleh satu channel adalah 44 kbps per kilohertz[10].
Least Significant Bit merupakan salah satu Steganografi yang paling banyak dipakai dalam menyembunyikan pesan. Cara kerjanya adalah dengan memasukkan tiap bit dari pesan yang ingin disembunyikan ke dalam akhir dari 1 byte pada data audio. Contoh pada file audio setelah diubah menjadi file biner maka menjadi seperti gambar 2.6.
Gambar 2.6 LSB MSB : Most Significant Bit
LSB : Least Significant Bit
Pada gambar 2.6, menandakan bahwa bit 1 dari depan menyatakan bit MSB dan bit 0 dari bilangan biner terakhir adalah bit LSB. Dapat dilihat contoh dibawah ini.
Jika pesan = 8 bit, maka jumlah byte yang digunakan = 8 byte 00110011 10100010 10100011 00100110
01011001 01101110 10110101 00010101
Misalkan binary dari embedded message: e = 01100101 Hasil penyisipan pada bit LSB:
00110010 10100011 10100011 00100110 01011000 01101111 10110100 00010101
Pada contoh diatas, hanya sebagian yang berubah dari Least Significant Bit. Berdasarkan teori maka didapatkan bahwa ukuran file asli tidak mengalami perubahan yang begitu besar sehingga sulit terdeteksi oleh indra manusia.
Cara penyembunyian pesan dengan menggunakan Least Significant Bit pada file audio mp3 tergantung dari format file mp3 tersebut apakah file mp3 mempunyai format bit/simple sama dengan bit ke-8 atau 16-bit.
Jadi penyembunyian pesan diterapkan pada bit terakhir yaitu bit ke-8 atau pada bit ke-16.
Decoding untuk menampilkan pesan rahasia ke nilai awal ataupun pesan asli yaitu pada proses ini pesan asli yang telah disisipi file audio diekstraksi. Proses ekstraksi dimulai dengan menginputkan pesan yang sudah disisipi file audio kemudian ekstraks dan simpan nama pesan yang sudah diekstrak. Pada proses ini maka bit-bit yang sudah diganti pada proses encodingkan diubah kembali ke nilai awal. Adapun prosedur ekstraksi pesan rahasia adalah [11]:
a. Input pesan rahasia yang sudah disisipkan ke dalam file audio.
b. Kemudian ekstrak pesan stego tersebut.
c. Pesan rahasia yang sudah disisipkan pada file audio akan dibaca kembali.
d. Pesan akan diekstrak dan dikembalikan ke bentuk semula e. Simpan pesan rahasia
Untuk menampilkan pesan asli setelah proses encoding yaitu melalui proses decoding. Adapun langkah-langkah proses decoding yaitu sebagai berikut. Buka pesan rahasia yang sudah disisipkan ke dalam media audio pada gambar 2.7
Gambar 2.7 Pesan rahasia yangtelah disisipkan ke dalam di biner audio
Ekstrak pesan stego tersebut dengan mengambil setiap bit akhir pada file stego. Contoh membaca pesan baris pertama yang diberi tanda merah.
Berikut langkah-langkahnya :
a. Membuat blok-blok data ke dalam 8 byte per blok. Untuk setiap blok dikerjakan langkah “b” sampai dengan langkah “c” untuk I = 0,1,2,3,.,7
b. Mengambil nilai bit terakhir byte pesan ke-i dengan meng-and-kan dengan 1
c. Menyimpan hasil setelah di-and-kan dengan 1, dan menghasilkan dengan nilai posisi bit, yaitu : (2(7-i)).
d. Menjumlahkan semua hasil perhitungan untuk i=10 sampai dengan i=7. Menentukan karakter ASCII yang bersesuaian dengan hasil perhitungan. Sebagai contoh akan dilakukan decoding untuk membaca informasi yang disisipkan dengan mengambil nilai bit LSB dari media penampung file mp3 seperti berikut ini:
Contohnya hasil dari baris pertama :
01010010=>01010010 and 1=0 nilai =0x2^7 01001001=>01001001 and 1=1 nilai =1x2^6=64 01000110=>01000111 and 1=1 nilai =1x2^5=32 01000110=>01000110 and 1=0 nilai =0x2^4=0 11101000=>11101000 and 1=0 nilai =0x2^3=0 01001111=>01001110 and 1=0 nilai =0x2^2=0 00000100=>00000101 and 1=1 nilai =1x2^1=2 00000000=>00000001 and 1=1 nilai =1x2^0=1 +
=99 kode ASCII yaitu “c”
Hasil dari baris pertama berisikan huruf “c”
2.5 Analisis Flowchart Sistem
Implementasi Steganografi Pesan Teks Ke Dalam File Sound (.MP3) Dengan Algoritma Advanced Encryption Standard dan Least Significant Bit, diawali dengan mulai kemudian terdapat pilihan akses ke halaman lain yaitu halaman embidding dimulai dengan menampilkan halaman embidding kemudian input file pesan memilih file pesan yang hendak diembidding menginput lokasi penympanan dengan cara memilih lokasi penyimpananya, lalu input media file mp3 dengan cara memilih mp3 di local disk atau library, menginput kata kunci untuk Advanced Encryption Standard dan kemudian melakukan proses embedding data yang akan mengeluarkan output Stegano File (.mp3). Pada halaman Extraction dimulai dengan menampilkan halaman Extraction kemudian input file stegano dengan cara memilih lokasi yang terdapat file stegano nya, lalu input lokasi penyimpanan untuk menyimpan hasil extraction, menginput kata kunci untuk Advanced Encryption Standard dan kemudian melakukan proses extraction data yang akan menghasilkan output Pesan rahasia (.txt).
seperti yang terlihat pada gambar 2.8
Gambar 2.8 Analisis Flowchart Sistem
2.6 Analisis Flowchart Enkripsi
Pada Flowchart Embidding gambar 2.9 menjelaskan proses terjadinya enkripsi dimulai dari mulai menginputkan plainTeks kemudian plainTeks diolah dalam proses enkripi AES 128-bit yang terdiri dari proses (AddKey, SubBytes, ShiftRow, MixColumn) dan diulang hingga 10 Round kemudian menghasilkan CipherTeks_1 yang merupakan hasil dari algoritma Advanced Encryption Standar kemudian di proses embedding LSB (Least Significant Bit) ini hasil chiperTeks diubah menjadi cipherTeks_bit kemudian disisipkan ke dalam audio_bit yang akan menghasilkan output Stegano_file.
Gambar 2.9 Analisis Flowchart Enkripsi 2.7 Analisis Flowchart Deskripsi
Pada analisis flowchart extraction diawali dengan mulai stegano_file memasuki proses LSB (Least Significant Bit) kemudian akan di ekstrak cipherTeks_txt dari stegano_audio dan akan menghasilkan output chiperTeks_txt kemudian chipherTeks_txt diolah dalam proses enkripi AES 128-bit yang terdiri dari proses (Inverse AddKey, Inverse SubBytes, Inverse ShiftRow, Inverse MixColumn) dan diulang hingga 10 Round kemudian menghasilkan plainTeks dapat dilihat pada gambar 2.10
Gambar 2.10 Flowchart Extraction 2.8 Desain Alur Sistem
Desain alur sistem merupakan gambaran alur berfungsi sebagai pengarah bagaimana penerima dapat mengirimkan file stegano ke pada penerima.
Penjelasan pada gambar 2.11 :
1. Pada tahap pertama pengirim membuka aplikasi stegano dan menginputkan plainTeks, mp3, dan lokasi penyimpanan kemudian masuk kedalam proses enkripsi, plainTeks memasuki proses AES128 hingga menjadi cipherTeks kemudian cipherTeks dan file .mp3 memasuki proses embedding sehingga menjadi stegano.mp3 dan tersimpan di lokasi penyimpanan.
2. Pengirim mengirim file stegano.mp3 melalui internet atau USB pada penerima
3. Penerima menerima stegano.mp3 yang dikirimkan oleh pengirim dan membuka nya menggunakan aplikasi stegano dimana stegano.mp3 mengalami proses extraction dan menghasilkan cipherTeks kemudian cipherTeks masuk ke lokasi penyimpanan dan cipherTeks melalui proses dekripsi AES 128 sehingga menghasilkan plainTeks dan tersimpan di lokasi penyimpanan.
Gambar 2.11 Desain Alur Sistem 3. HASIL DAN PEMBAHASAN
3.1 Tampilan Form Menu
Form Menu merupakan tampilan Form awal yang dilihat oleh user yang ingin melakukan embedding data dan extraction data pada form menu terdapat pilihan embedding data dan extraction data untuk masuk ke form embedding data dan extraction data.
Gambar 3.1 Tampilan form Menu 3.2 Tampilan Form Embedding Data
Form embedding data merupakan halaman yang dapat digunakan oleh user untuk melakukan proses embedding dalam form tersebut terdapat File untuk melakukan proses embedding dan pengaturan. Pada bagian file terdapat box pesan yang akan menampilkan lokasi file pesan yang telah dipilih melalui box pencaharian, box lokasi penyimpanan yaitu user dapat menentukan lokasi untuk menyimpan hasil output dari proses embedding melalui box pencaharian lokasi, box media MP3 yang akan mennampilkan lokasi file media MP3 yang telah ditentukan melalui box pencaharian. Tombol Play berfungsi sebagai memutar media MP3 yang telah dipilih, tombol pause berfungsi menjeda media MP3 yang diputar, tombol stop berfungsi menghentikan media MP3 yang diputar, box password untuk menginput password Advance Encryption Standard, informasi file yaitu memberikan informasi ukuran file pesan yang akan di embedding, ukuran file media MP3, ruang untuk pesan
dan status, tombol embedding berfungsi untuk memulai proses embedding data, file stegano yaitu hasil output yang telah di embedding berupa media MP3, tombol play berfungsi untuk memutar media MP3 yang telah di embedding, tombol pause berfungsi untuk menjeda media MP3 yang sedang diputar, tombol stop berfungsi untuk menghentikan media MP3 yang sedang diputar, box loading berfungsi menampilkan pemuatan proses, tombol restart berfungsi untuk mengulang kembali data inputan, tombol exit untuk mengeluarkan program Stegano Audio dapat dilihat pada gambar 3.2
Gambar 3.2 Tampilan Form Embedding Data 3.3 Proses Enkripsi AES
Proses yang terjadi dalam proses embedding dimulai pada file pesan yang akan memasuki proses enkripsi dimana akan dimulai dengan proses AES plainTeks dan kunci dapat dilihat pada tabel 3.1
Tabel 3.1 plainTeks dan key
PlainTeks 4 1
5 2
5 4
4 9
2 0
4 4
4 1
4 C
4 1
4 D
2 0
4 8
4 9
4 4
5 5
5 0 Cipherkey 4
B 4 5
4 8
4 9
4 4
5 5
5 0
4 1
4 E
2 D
5 5
4 5
5 3
4 1
4 1
5 4
Kemudian akan dilakukan proses expansi kunci untuk menentukan kunci dari round 0 hingga round 10 untuk pencarin kunci round 1 pertama kita akan menyusun key berdasarkan kolom.
Tabel 3.2 Round 0
0 1 2 3 4B 44 4E 53 45 55 2D 41 48 50 55 41 49 41 45 54
Jika dituliskan maka w(0) = 4B, 45, 48, 49, w(1) = 44, 55, 50, 41, w(2) = 4E, 2D, 55, 45, w(3) = 53, 41, 41, 54 maka untuk mencari Round 1 dibutuhkan rumus seperti pada gambar 3.3.
Gambar 3.3 Rumus untuk mencari Round 1
Maka untuk mencari w(4) kita harus melakukan pertambahan XOR pada w(0) XOR w(3) diawali dengan melakukan proses circular leftshift pada W(3) dari w(3) = 4B, 45, 48, 49 menjadi w(3) = 4B, 54, 55, 41 kemudain masuk ke proses S-box dari w(3) = 4B, 54, 55, 41 menjadi w(3) = B3, 20, FC, 83 kemudian keproses adding round constan yaitu 01 XOR w(3) = B3, 20, FC, 83 menjadi w(3) = B2, 20, FC, 83 kemudian w(3) = B3, 20, FC, 83 XOR w(0) = 4B, 45, 48, 49 menjadi w(4) = E1, 65, B0, C2 setelah dilakukan perhitungan hingga ke w(7) didapatkan hasil akhir untuk kunci round 1 adalah C9, C6, 68, A4, 8D, 93, 38, E5, C3, BE, 6D, AD, 90, FF, 2C, F4 kunci dari round 0 sampai round 10 dapat dilihat pada gambar 3.4.
Gambar 3.4 Kunci round 0 sampai 10
Setelah kunci didapatkan akan masuk keproses AES round 1 yang pertama Addroundkey melakukan proses XOR antara plainTeks dengan kunci round 0 dapat dilihat pada gambar 3.5.
Gambar 3.5 Operasi XOR plainTeks dan kunci round 0
Kemudian hasil akhir dari Addroundkey(0) kemudian dilanjutkan ke proses S-Bytes(1) dimana akan dilakukan proses subtitusi untuk tiap entry dengan menggunakan tabel Rijandel S-Box misalkan entry 1A maka dalam tabel rijandel S-Box menjadi A2 hasil dapat dilihat pada gambar 3.6.
Gambar 3.6 Subtitusi Rijandel S-Box
Kemudian hasil akhir dari S-Bytes 1 akan melalui proses ShiftRow 1 dimana urutan baris dari matrix akan bergeser dari kiri ke kanan baris kesatu tidak bergeser, baris kedua bergeser satu kali, baris ketiga bergeser dua kali, dan baris keempat bergeser tiga kali hasil dapat dilihat pada gambar 3.7.
Gambar 3.7 Proses ShiftRow 1
Kemudian masuk keproses selenajutnya yaitu proses MixColumn 1 dimana tiap entry pada matrix akan dikalikan seperti pada gambar 3.8.
Gambar 3.8 Proses MixColumn 1
Dapat dilihat pada gambar 3.9 akan diambil contoh menkalikan baris satu B1 kolom ke satu K1 maka B1K1 = (02 H.67 H) (03 H.82 H) (01 H.9D H) (01 H.F2 H) perhitungan.
Gambar 3.9 Perhitungan MixColumn untuk B1K1
Maka diperoleh hasil untuk B1K1 adalah 7A hasil akhir dari perkalian matrix dapat dilihat pada gambar 3.10
Gambar 3.10 Hasil perkalian matrix
Kemudian hasil akhir dari MixColumn 1 akan menjalani proses AddRoundkey 2 dan prosespun akan berulang hingga sepuluh round hasil dapat dilihat pada gambar 3.11
.
Gambar 3.11 Hasil Akhir AES-128
Maka berdasarkan gambar 3.11 didapatkan hasil akhir cipherTeks_1 yaitu 4B, CC, 47, 4A, 20, 97, 88, 89, D4, D9, 80, 74, A7, A1, 96, dan 52
3.4 Proses Embedding Least Significant Bit
Hasil akhir sebelumnya dari gambar 4.11 ini kemudian akan melewati proses embedding least significant bit. Hasil akhir ciphertex yaitu 98, 7F, D3, F4, D7, C2, 26, 61, 79, 68, 2A, 78, D8, A1, 6C, dan A3 berupa bilangan hexa. Sebelum memasuki proses embedding least significant bit bilangan hexa diubah menjadi bilangan binary dapat dilihat pada gambar 3.12
Gambar 3.12 bentuk binary
Kemudian bilangan binary ini di sisipkan kedalam audio bit MP3 dapat dilihat pada gambar 3.13
Gambar 3.13 Audio bit MP3
Cara kerjanya tiap bit pada cipherTeks disisipkan kedalam akhir dari 1 byte pada data audio dapat dilihat pada gambar 3.14
Gambar 3.14 Setelah menyisipkan cipherTeks bit ke dalam audio bit mp3
Setelah menyisipkan chiperTeks ke dalam audio bit akan menghasilkan output SteganoFile yang berupa format mp3 dapat diliha pada gambar 3.15.
Gambar 3.15 Hasil output SteganoFile 3.5 Tampilan Form Extraction Data
Halaman form Extraction adalah merupakan halaman yang dapat digunakan oleh user untuk melakukan proses Extraction dalam form tersebut terdapat box file stegano yang akan menampilkan lokasi file stegano yang telah dipilih melalui box pencaharian, Tombol Play berfungsi sebagai memutar media file stegano yang telah dipilih, tombol pause berfungsi menjeda media file stegano yang diputar, tombol stop berfungsi menghentikan media file stegano yang diputar, box lokasi penyimpanan yaitu user dapat menentukan lokasi untuk menyimpan hasil output dari proses extraction melalui box pencaharian lokasi, box password untuk menginput password Advance Encryption Standard, tombol extraction berfungsi untuk memulai proses extraction data, box pesan yaitu hasil output yang telah di extraction berupa file pesan, box loading berfungsi menampilkan pemuatan proses, tombol restart berfungsi untuk mengulang kembali data inputan, tombol exit untuk mengeluarkan program Stegano Audio dapat dilihat pada gambar 3.16
Gambar 3.16 Tampilan Halaman form Extraction
Proses yang terjadi dalam proses extraction diawali dengan tahap sebelumnya. Memilih file stegano yang tersimpan dan ada penginputan password yang akan dicocokan hasil akhir dari kunci proses embedding sebelumnya dengan hasil kunci yang dinputkan jika sama maka akan langsung masuk ke proses extraction 3.6 Proses Extraction Least Significant Bit
Dimulai dari proses least significant bit dimana hasil akhir cipherTeks_bit yang telah di sisipkan ke dalam audio bit di ambil kembali dari penyisipan audio bit. Dapat dilihat pada gambar 3.17
Gambar 3.17 proses extracton least significant bit
CipherTeks_bit ini akan diubah menjadi hexa maka diperoleh cipherTeks yaitu 7C, 4F, FE, 55, BD, B2, 14, 6E, DD, A7, 4D, DE, F5, 3F, 9E, dan EB dari hasil ini maka akan dilanjutkan keproses dekripsi AES- 128
3.7 Proses Dekripsi AES
Diawali dengan Inverse AddrundKey(10) dimana cipherTeks akan di XOR dengan key round 10 dapat dilihat pada gambar 3.18.
Gambar 3.18 Proses Inverse Addroundkey(10)
Kemudian akan masuk keproses inverse ShiftRow 10 dimana baris matrix akan digeser dari kanan ke kiri baris kesatu tidak bergeser bergeser, baris kedua bergese satu kali, baris ketiga bergeser dua kali, dan baris ketiga bergese tiga kali hasil dapat dilihat pada gambar 3.19
Gambar 3.19 Proses Inverse ShiftRow 10
Kemudian akan masuk keproses selanjutnya yaitu inverse S-Bytes dimana tiap entry akan dicocokan denga tabel rijandel Inverse S-Box dan akan didapatkan hasil akhir seperti pada gmbar 3.20.
Gambar 3.20 Proses Inverse S_Bytes 10
Kemudian akan masuk keproses Inverse Addroundkey 9 dimana hasil dari Inverse S-Bytes akan di XOR dengan Key Round 9 hasil dapat dilihat pada gambar 3.21.
Gambar 3.21 Proses Inverse Addroundkey 9
Kemudian akan masuk keproses Inverse MixColumn 9 dimana hasil akhir dari Addroundkey 9 akan dikalikan dengan matrix decrypt MixCoulmn dapat dilihat pada gambar 3.22.
Gambar 3.22 Inverse MixColumn 9
Maka akan diambil contoh baris kesatu kolom kesatu B1K1 maka akan diperoleh B1K1 = (C3.0E) (9D.0B) (D5.0D) (93.09) maka hasil dapat dilihat pada gambar 3.23
Gambar 3.23 Proses perhitungan pada B1K1
E dan L merupakan E table dan L table dari Galois Filed Multiplication pada gambar 4.23 didapatkan hasil akhir untuk B1K1 = FF hasil keseluruhan dapat dilihat pada gambar 3.24.
Gambar 3.24 Hasil akhir MixColumn 9
Gambar 3.25 Hasil akhir Dekripsi
Dari hasil akhir gambar 3.25 maka diperoleh hasil akhir plainTeks 41, 52, 54, 49, 20, 44, 41, 4C, 41, 4D, 20, 48, 49, 44, 55, dan 50 file pesan akan tersimpan ke dalam lokasi penyimpanan yang telah ditentukan.
4. KESIMPULAN DAN SARAN 4.1 Kesimpulan
Dengan adanya hasil penelitian yang dilaksanakan, maka menarik kesimpulan berdasarkan uraian yang telah dikemukakan pada bab – bab sebelumnya mengenai Implementasi Steganografi Pesan Teks Ke Dalam File Sound (.MP3) Dengan Algoritma Advanced Encryption Standard dan Least Significant Bit ini maka penulis dapat menarik beberapa kesimpulan sebagai berikut :
a. Algoritma Advanced Encryption Standard dan Least Significant Bit dapat diimplementasikan dengan baik dalam hal mengamankan pesan rahasia.
b. Algoritma diterapkan dari proses perancangan flowchart sampai pencodingan dengan menggunakan bahasa pemograman C# sehingga dapat terkombinasi dengan baik.
c. Dengan menggunakan metode pengembangan waterfall lebih terutut dan setiap proses memiliki spesifikasi masing – masing sehingga memudahkan dalam pencarian kesalahan dan pengembangan.
d. Hasil dari black box testing menunjukan 100% berhasil menandakan bahwa aplikasi sudah siap dan berfungsi dengan baik.
4.2 Saran
Berdasarkan kesimpulan diatas yang telah di kemukakan pada bab – bab sebelumnya, maka penulis memberikan saran – saran sebagai berikut :
a. Diharapkan dapat mengembangkan sistem ini dengan algoritma kriptografi yang lain seperti RC6, Asimetri Egamal, Kompresi LZW dan lain sebagainya dengan harapan tercipta nya kombinasi – kombinasi algoritma yang lebih baik, baik dari sisi keamanan ataupun sisi kebutuhan.
b. Diharapakan dapat diadakan penambahan fitur berupa multiplatform yang bisa dijjalankan di operating system apa saja.
c. Diharapkan dapat menambah format yang akan di embedding tidak hanya dalam batas file media mp3 tapi juga file berupa gambar (jpg, png, jpng, etc), video (mkv, mp4, flv, gif, etc) dan music (wav, ogg, etc) d. Diharapkan menambah form untuk aplikasi stegano audio contohnya seperti setting atau login.
e. Diharapkan untuk mengembangkan suatu metode untuk mengirim kunci enkripsi kepada user lain dengan metode steganografi dengan cara substitution, transformasi domain. Spread spectrum, statistical method, distortion, dan cover generation.
DAFTAR PUSTAKA
[1] Jogiyanto, H.M., Analisis dan Desain (Sistem Informasi Pendekatan Terstruktur Teori dan Praktek Aplikasi Bisnis). Penerbit Andi, 2017.
[2] Pressman, Roger.S, Rekayasa Perangkat Lunak : Pendekatan Praktisi, Yogyakarta : CV ANDI OFFSET, 2012.
[3] Budhi, G.S et al, Kombinasi Metode Steganografi Parity Coding Dan Metode Enkripsi Aes Rijndael Untuk Pengamanan Dokumen Elektronik, Prosiding Seminar Nasional Sistem & Teknologi Informasi, Surabaya 2009.
[4] Purba J.V., Situmorang M. and Arisandi, D., “Implementasi Steganografi pesan Teks ke dalam file sound (.WAV) dengan modifikasi jarak byte pada algoritma least significant bit (LSB)” Universitas Sumatra Utara, Jurnal Dunia Teknologi Informasi Vol.1, No.1, 50-55, 2012.
[5] Community, E., Indeks Lengkap Syntax/eWolf Community, MediaKom, Yogyakarta, 2012.
[6] Haryanto, H., Wiryadinata, R. and Afif, M., Implementasi Kombinasi Algoritma Enkripsi Aes 128 Dan Algoritma Kompresi Shannon-Fano. Setrum: Sistem Kendali-Tenaga-Elektronika-Telekomunikasi- Komputer, 3(1), pp.16-25 Fakultas UNTIRTA, 2016.
[7] Lovebbi, L., Rancang Bangun Aplikasi Steganografi dengan metode Least Significant Bit di Audio Pada Sistem Operasi Android. ULTIMATICS, 2012.
[8] Sianipar, R.H., Panduan Praktis Pemograman C# Bagi Pemula. Jakarta: Andi, 2014.
[9] Suprianto, D., Membuat Aplikasi desktop Menggunakan MySQL dan VB.Net Jakarta: Mediakita, 2010.
[10] Wahana Komputer, The Best Encryption Tools. Elex Media Komputindo, 2013.