PENGAMANAN DATA TEKS DENGAN KOMBINASI CIPHER BLOCK CHANING DAN LSB-1 Taronisokhi Zebua STMIK Budi Darma, Medan Email : taronizeb@gmail.com Abstrak Pengamanan data teks merupakan salah satu kegiatan yang dilakukan agar teks dari sebuah informasi yang dirahasiakan tidak dapat diketahui oleh orang lain kecuali orang-orang yang diberi hak untuk itu. Terdapat beberapa teknik yang dijadikan sebagai pendekatan penyelesaian masalah keamanan data teks dimulai dari pengamana fisik data teks yang dilindungi hingga pemanfaatan teknik-teknik pengamanan data yang bekerja berdasarkan algoritma. Terdapat beberapa pendekatan teknik pengamana data yang hingga saat ini masih digunakan oleh sejumlah kalangan diantara dengan menerapkan teknik kriptografi, teknik steganografi, watermark dan teknik lainnya. Salah satu teknik yang dapat dilakukan untuk mengoptimalkan pengamanan data teks adalah mengkombinasikan teknik kriptografi dengan teknik steganografi. Teknik kriptografi berfungsi untuk menyandikan data teks yang dirahasiakan melalui proses enkripsi, sedangkan teknik steganografi berfungsi untuk menyembunyikan (embeded) data teks tersandi tersebut ke dalam sebuah media misalnya citra, video atau audio. Algritma teknik kriptografi yang digunakan dalam kasus ini adalah algoritma Cipher Block Chaining (CBC) yang diciptakan oleh IBM pada tahun1976 yang menerapkan mekanisme umpan balik (feedback) pada sebuah blok dimana blok sebelumnya akan diumpanbalikkan dengan blok current. Metode yang digunakan untuk menyembunyikan pesan tersandi pada sebuah media adalah salah satu dari modifikasi metode Least Significant Bit, yaitu Leas Significant Bit-1 (LSB-1). Algoitma LSB-1 bekerja dengan melakukan penggantian terhadap setiap bit ke-7 media penampung dengan bit-bit teks tersandi. Media penampung (citra cover) yang digunakan pada kasus ini adalah citra digital berjenis true color. Kata kunci: Kriptografi, Steganografi, Data Teks, Citra, Cipher Block Chaining, Least Significant Bit-1. PENDAHULUAN Peningkatan pengamanan terhadap data ataupun informasi yang sifatnya rahasia sangat diperlukan oleh pemilik data dengan tujuan data yang dimaksud tidak dapat diketahui ataupun disalahgunakan oleh orang lain selain penerima yang sah. Namun fenomena yang terjadi hingga saat ini, masih banyak pemilik informasi yang sifatnya rahasia mengabaikan masalah tersebut, sehingga dengan mudah para penyadap merusak dan atau menyalahgunakannya. Teknik yang umum digunakan untuk mengamankan data rahasia adalah teknik kriptografi. Teknik ini merupakan proses pengubahan setiap karakter dari teks asli (plaintext) menjadi karakter lain (ciphertext) sehingga makna dari data rahasia tersebut tidak dapat dipahami lagi oleh orang lain (confusion and difusion). Namun penerapan teknik kriptografi memunculkan kecurigaan yang cepat dari orang lain bahwa informasi tersebut bersifat rahasia, sehingga menimbulkan niat untuk mengetahuinya. Teknik lain adalah teknik steganografi, yaitu sebuah teknik yang digunakan untuk menyembunyikan pesan rahasia pada objek lain misalnya citra digital, audio dan video. Teknik steganografi dilakukan dengan menukarkan bit tertentu dari citra digital penampung pesan dengan bit pesan rahasia yang akan disembunyikan. Proses penukaran bit citra digital penampung dengan bit-bit pesan rahasia dapat dilakukan dengan melakukan modifikasi metode Least Significant Bit (LSB). Metode ini disebut dengan metode Least Significant Bit-1 (LSB-1) yang memiliki cara yang sama dengan LSB hanya saja posisi bit yang ditukarkan berbeda, jika LSB adalah bit ke-7 dari setiap byte elemen warna pixel citra digital, maka LSB-1 adalah bit ke 8 1 = 7 (bit ke-6) dari setiap byte elemen warna pixel citra digital (Rahul Joshi et al, 2013). Pengkombinasian antara teknik LSB-1 dengan salah satu algoritma kriptografi mampu meningkatkan pengamanan terhadap pesan rahasia dari tindakantindakan yang tidak diinginkan, karena pesan yang disembunyikan merupakan hasil enkripsi (ciphertext) dari pesan asli. Algoritma yang digunakan untuk melakukan enkripsi data teks asli (plaintext) yakni algoritma Cipher Block Chaining (CBC) yang menerapkan mekanisme umpan balik pada sebuah blok bit dimana hasil enkripsi blok sebelumnya diumpan balikkan ke dalam proses enkripsi blok current. Operasi ini diterapkan pada algoritma yang sudah beroperasi pada level bit (0) atau (1) maupun sekelompok/blok bit dan bukan karakter, sehingga menghasilkan ciphertext yang jauh berbeda dengan pesan aslinya. Permasalahan yang akan diuraikan dalam penelitian adalah Bagaimana proses yang dilakukan untuk mengkombinasikan algoritma Cipher Block Chaining (CBC) dengan metode LSB-1 untuk mengamankan data teks dengan harapan penelitian ini dapat bermanfaat untuk membantu pengguna dalam memahami prosedur pengkombinasian teknik kriptografi dan teknik steganografi dalam meningkatkan pengamanan data teks. Mengetahui bagaimana cara enkripsi dan dekripsi data teks dengan algoritma cipher block chaining serta cara 85
Tuktuk Siadong, 5-6 September 2015 ISBN: 979-458-808-3 menyembunyikan data teks tersandi tersebut ke dalam citra cover berdasarkan metode LSB-1. Berdasarkan pada uraian latar belakang masalah di atas, maka diuraikan pembahasan dan solusi penyelesaiannya dalam penelitian ini dengan topik PENGAMANAN DATA TEKS DENGAN KOMBINASI CIPHER BLOCK CHAINING DAN LSB-1. METODE PENELITIAN Masalah pengamanan data teks merupakan hal yang sangat penting untuk dilakukan dalam upaya penjagaan kerahasiaan data dari orang lain. Algoritma Cipher Block Chaining (CBC) merupakan penerapan mekanisme umpan balik pada sebuah blok bit dimana hasil enkripsi blok sebelumnya diumpanbalikkan ke dalam proses enkripsi blok current. Caranya adalah blok plaintext yang current di- XOR-kan terlebih dahulu dengan blok ciphertext hasil enkripsi sebelumnya, selanjutnya hasil peng-xor-an ini masuk ke dalam fungsi enkripsi. Dengan algoritma CBC, setiap blok ciphertext tidak hanya bergantung pada blok plaintext-nya tetapi juga pada seluruh blok plaintext sebelumnya. Dekripsi dilakukan dengan memasukkan blok ciphertext yang current ke fungsi dekripsi, kemudian meng-xor-kan hasilnya dengan blok ciphertext sebelumnya. Dalam hal ini, blok ciphertext sebelumnya berfungsi sebagai umpan maju (feedforward) pada akhir proses dekripsi (Dewi rosmala dan Riki Aprian, 2012). Pi-2 P 1 PN-2 Ci-1 C1 CN Ci-2 Geser Ke kanan sejumlah n bit Geser Ke kanan sejumlah n bit Geser Ke kanan sejumlah n bit CN-1 Blok Enkripsi Blok Enkripsi... Blok Enkripsi Blok Enkripsi Blok Enkripsi... Blok Enkripsi Geser Ke kiri sejumlah n bit Geser Ke kiri sejumlah n bit Geser Ke kiri sejumlah n bit Ci-2 CN-1 Ci-1 C1 CN Pi-1 P1 PN-1 Gambar 1 : (a) Proses Enkripsi (b) Proes Dekripsi Secara metematis, proses enkripsi dan dekripsi berdasarkan algoritma CBC dapat diformulasikan menjadi : Enkripsi : C i = E k (P i C i -1 ) dan Dekripsi = P i = D k (C i C i-1 ) Sedangkan nilai C 0 atau initial vector (nilai inisial awal) maka ditetapkan sendiri oleh pengguna dengan catatan jumlah bitnya harus sama dengan jumlah bit kunci yang digunakan. Metode Least Significant Bit (LSB) merupakan salah satu metode penyembunyian pesan pada citra yang umum digunakan serta mudah untuk diimplementasikan, namun metode ini memiliki kerentangan dan kemudahan dalam penghancuran pesan yang telah disembunyikan. Salah satu kelemahan utama dari penerapan metode LSB ini adalah penyusup dapat langsung mengubah bit akhir dari setiap byte pixel medium penampung pesan, dengan cara ini maka pesan yang telah disembunyikan akan mudah diungkap dan dapat mengubah kualitas medium penampung pesan (Rahul Joshi et al, 2013). Kelemahan penerapan metode Least Significant Bit (LSB) di atas, dapat diatasi dengan melakukan pemodifikasian terhadap. Modifikasi LSB dilakukan dengan merubah posisi bit-bit medium pesan yang akan ditukarkan dengan bit pesan yang akan disembunyikan. Beberapa metode hasil modifikasi Least Significant Bit (LSB) meliputi LSB-1, LSB-2, LSB-3 (Yudhi Andrian, 2013). Least Significant Bit-1 (LSB-1), bekerja dengan teknik menukarkan bit citra penampung dimana posisi bit yang ditukar adalah bit ke 8-1 (bit ke-7). Contoh, asumsikan repressentasi biner pixel citra sebagai berikut : 11110101 00010110 10101010 10 11111 00000001 00000001 11101 00011101 karakter T dalam biner = 01010, maka akan dihasilkan citra hasil dengan urutan bit akhir sebagai berikut : 11110101 00010110 10100 10110 11111 00000001 00000001 11111 00011101 Metode penelitian adalah Kerangka kerja penelitian atau langkah-langkah yang digunakan dalam penyelesaian penelitian ini. Kerangka kerja ini merupakan tahapan-tahapan yang akan dilakukan dalam rangka menyelesaikan masalah yang akan dibahas. Tahapan penelitian ini terdiri dari beberapa langkah seperti pada gambar 2 dibawah ini : Studi Literatur Analisa Masalah Implementasi Laporan / Gambar 2 : Kerangka Kerja Penelitian 86
HASIL DAN PEMBAHASAN Pada tahap pembahasan ini akan menjelaskan bagaimana proses pengkombinasian algoritma ECB dengan metode LSB-1 pada pengamanan data teks. Proses tersebut dapat dilihat pada gambar 3 di bawah ini : Plaintext : T A R O N I 00 01010 01 01 001 010 111 110 01010 01011 010 Gambar 3 : Diagram Proses Kombinasi CBC dengan LSB-1 Penerapan Kombinasi Algoritma CBC dan LSB-1 Contoh kasus yang diselesaikan pada penelitian ini akan menguraikan tahapan-tahapan proses pengamanan data teks dengan mengkombinasikan algoritma Cipher Block Chaining (CBC) dengan metode Least Significant Bit-1 (LSB- 1). Seperti yang telah dijelaskan pada bagian latar belakang di atas bahwa algoritma CBC digunakan untuk melakukan enkripsi dan dekripsi data teks yang akan disembunyikan, sedangkan metode LSB-1 digunakan sebagai teknik penyembunyian data teks tersandi tersebut pada citra. 1. Proses Penyandian dan Penyembunyian Data Teks a. Proses Enkripsi Data Teks Diasumsikan data teks (plaintext) adalah : TARONI Kunci CBC yang digunakan = ZEB Nilai Initial Vector (IV) = 015 dan jumlah bit per blok adalah 24 bit Proses enkripsi : - Konversi plainteks, kunci, IV ke biner 01 001 Biner Blok I 01010 00001 01010 Biner IV (C 0 ) 00100 00101 00110101 Biner Blok I XOR Biner 01 01100 01111 C 0 Biner Kunci 01011010 00101 00010 (Blok I XOR C 0 ) XOR 00111110 00110101 00101 (Kunci) Shift 2 bit to Right 111110 00110101 0010 Enkripsi Blok I 11110 11010 10 enkripsi di blok I di atas digunakan untuk melakukan enkripsi blok II (current block) Biner Blok II 01111 01110 01 Enkripsi Blok 11110 11010 10 I Blok I XOR C 0 10110111 11010 11011101 Biner Kunci 01011010 00101 00010 (Blok I XOR C 0 ) XOR (Kunci) Shift 2 bit to Right Enkripsi Blok II bilangan biner) adalah 11111 000 11010 10 11101101 11011111 11111 101101 11011111 1111111 10110111 01111110 01111111 enkripsi (ciphertext) berdasarkan CBC (dalam 10110 111 01111 110 01111 111 b. Proses Penyembunyian Data Teks Tersandi Diasumsikan ciphertext di atas akan disembunyikan pada sebuah citra penampung (citra cover) berjenis citra berwarna (true color), maka yang perlu diperhatikan adalah Kunci : Initial Vector(IV) berapa jumlah pixel citra yang harus tersedia. Z E B 0 1 5 Berdasarkan jumlah biner data teks yang 00 00 00110 00110 00110 akan disembunyikan (48 bit), maka jumlah 101 010 000 001 101 pixel citra penampung minimal 16 pixel - Lakukan proses enkripsi dengan CBC Pembagian blok biner plainteks dengan jumlah bit per kelompok = 24 T A R O N I 010101 00 000 01 Blok I 010 10 011 11 011 10 Blok II 010 01 Biner Blok I plaintext di XOR dengan biner IV (C 0 ), kemudian hasilnya di XOR dengan Kunci : (karena konsep LSB-1 hanya menukarkan 1 bit pada setiap elemen warna pixel). Setiap pixel memiliki 3 elemen warna, yaitu Red (R), Green (G ) dan Blue (B). Langkah yang dilakukan pada proses penyembunyian data teks yang telah tersandi adalah : - Asumsikan biner pixel citra biner seperti berikut : 87
Tuktuk Siadong, 5-6 September 2015 ISBN: 979-458-808-3 pixel 1... 3 pixel 1... 3 R G B...... R G B...... 1 120 200 150...... Konversi 1 01110 10 10110..................... ke Bner............... 6 55 200...... 6 00110111 10 01...... - Tukarkan setiap bit ke-7 elemen warna pixel citra dengan bit-bit data teks yang akan disembunyikan. Misalkan proses penukaran LSB-1 pada elemen warna pada pixel ke-1 hingga pixel ke-3 citra cover, dimana pada proses ini dilakukan penukaran 8 bit (satu karakter) data teks yang telah disandikan. Prosesnya dapat dilihat pada gambar berikut ini : Gambar 4 : Proses Penukaran Bit ke-7 (LSB-1) Citra Cover - Proses yang dilakukan selanjutnya adalah menyimpan citra stegano (citra hasil penukaran bit) Apabila diperhatikan nilai-nilai bit hasil penukaran di atas, maka nilai elemen warna R, G dan B pada pixel pertama terjadi perubahan, demikian juga untuk pixel yang kedua dan ketiga. Namun perubahan tersebut tidak begitu significan pengaruhnya dalam pengubahan nilai warna sehingga apabila dilihat secara visual mata manusia, perubahan tersebut sangat tidak terlihat jelas. 2. Proses Ekstraksi Data Tersembunyi dari Citra Langkah-langkah yang dilakukan untuk meng-ekstraksi data teks dari citra stegano adalah sebagai berikut : a. Konversi citra stegano menjadi nilai-nilai biner dan ambil nilai LSB-1 setiap elemen warna pixel sebanyak jumlah bit data teks yang telah disembunyikan sebelumnya. b. Kelompokkan biner-biner tersebut menjadi 24 bit (sesuai dengan jumlah bit per blok pada saat proses enkripsi) c. Lakukan proses dekripsi berdasarkan algoritma CBC d. Kelompokkan biner-biner hasil dekripsi CBC menjadi 8 bit tiap kelompok e. Konversikan biner-biner tersebut menjadi karakter Misalnya dari proses pengambilan nilai LSB-1 citra stegano, didapatkan biner sebagai berikut : 111101101010 101101110111111111111 24 bit blok I 24 bit blok II Untuk blok yang pertama dan kedua dilakukan proses shift 2 bit to left : Bit awal 111101101010 101101110111111111111 setelah digeser 001111011010101 111011011101111111111 Proses dekripsi Blok I: Blok I 001111011010101 Biner IV (C 0 ) 001000010110101 (Blok I XOR C 0 ) 000011000000000 XOR Biner Kunci 010110010100010 Biner Plainteks Blok I 010100000101010 Proses dekripsi Blok II: Blok II 111011011101111111111 Biner Blok I (sebelum digeser) 111101101010 (Blok I XOR C 0 ) 000101000101001011 88
XOR Biner Kunci 010110010100010 Biner Plainteks Blok I 011110111 Satukan Blok I dan Blok II, kemudian kelompokkan menjadi 8 bit setiap kelompok Blok I & Blok II 010100000101011110111 Pengelompokkan 01010 00001 01010 01111 01110 01 Nilai desimal 84 65 82 79 78 73 Karakter T A R O N I Berdasarkan proses di atas, maka data teks yang telah disandikan berhasil dikembalikan ke bentuk asli (plainteks/teks data asli) KESIMPULAN Kesimpulan yang dapat diambil setelah melakukan penelitian ini adalah sebagai berikut : 1. Proses yang dilakukan untuk mengkombinasikan algoritma CBC dengan metode LSB terdiri dari dua bagian adalah proses penyandian data teks berdasarkan algoritma CBC, kemudian proses penyembunyian data teks yang telah disandikan tersebut pada citra cover yang dilakukan berdasarkan metode LSB-1. Untuk mengembalikan data teks menjadi teks asli, maka diakukan pemisahan biner data teks yang telah disembunyikan (ekstraksi) berdasarkan metode LSB-1, kemudian biner-biner tersebut akan didekripsi berdasarkan algoritma CBC hingga data teks asli didapatkan kembali. 2. Perubahan nilai elemen warna setiap pixel akibat penukaran bit-bit data teks yang disembunyikan berdasarkan metode LSB-1 menyebabkan bertambahnya nilai elemen warna menjadi 2 bit apabila bit citra yang ditukar dari 0 menjadi 1 dan akan berkurang 2 bit apabila bit citra yang ditukar dari 1 menjadi 0. Perubahan nilai citra asli apabila dilihat secara visual oleh mata manusia, maka tidak terlihat secara significan sehingga citra stegano kelihatan masih seperti citra cover. DAFTAR PUSTAKA [1] Darma Putra (2010). Pengolahan Citra Digital, Andi : Yogyakarta [2] Dewi Rosmala et all. (2012). Jurnal Informatika, No.2 (3) : 55-65 [3] Rahul Joshi. (2013). IJARCET International Journal of Advanced Research Engineering & Technology 2(1): 228-229 [4] Rinaldi Munir (2004). Pengolahan Citra Digital, Informatika : Bandung [5] Joy shree Nath, et all. (2011). JGRCS Jurnal of Global Research in Computer Science, ISSN 2229-371X, 2 (4): 180-184. [6] Yudhi Andrian.(2013). SNIKOM Seminar Nasional Ilmu Komputer : 274-2 89