ISBN: 979-458-808-3
Seminar Nasional Inovasi dan Teknologi Informasi 2015 (SNITI) Tuktuk Siadong,, 5 - 6 September 2015
PENGAMANAN DATA TEKS DENGAN KOMBINASI CIPHER BLOCK CHANING DAN LSB-1 Taronisokhi Zebua STMIK Budi Darma, Medan Email :
[email protected] 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
Seminar Nasional Inovasi dan Teknologi Informasi 2015 (SNITI) 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”.
hasil enkripsi blok sebelumnya diumpanbalikkan ke dalam proses enkripsi blok current. Caranya adalah blok plaintext yang current diXOR-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).
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 Pi-2
PN-2
P1
Ci-1
C1
CN
Geser Ke kanan sejumlah n bit
Geser Ke kanan sejumlah n bit
Blok Enkripsi
Blok Enkripsi
Ci-2 Geser Ke kanan sejumlah n bit
CN-1
Key
Key
. . .
Blok Enkripsi
Key Key
. . .
Blok Enkripsi
Blok Enkripsi
Geser Ke kiri sejumlah n bit
Geser Ke kiri sejumlah n bit
Geser Ke kiri sejumlah n bit
Ci-1
C1
CN
Key
Key
Blok Enkripsi
Ci-2
CN-1
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 : Ci = Ek (P i Ci -1) dan Dekripsi = P i = Dk (Ci – Ci-1)
Sedangkan nilai C0 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 : 86
11110101 00010110 10101010 11000100 11111001 00000001 00000001 11110001 00011101 karakter T dalam biner = 01010100, maka akan dihasilkan citra hasil dengan urutan bit akhir sebagai berikut : 11110101 00010110 10101000 11000110 11111001 00000001 00000001 11110011 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 / Hasil
Gambar 2 : Kerangka Kerja Penelitian
ISBN: 979-458-808-3
Seminar Nasional Inovasi dan Teknologi Informasi 2015 (SNITI) Tuktuk Siadong,, 5 - 6 September 2015
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 :
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 (LSB1). 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 Plaintext : T A R O N I 01010 01000 01010 01001 01001 01001 100 001 010 111 110 001
Z 01011 010
Kunci : E B 01000 01000 101 010 -
T 010101 00
Initial Vector(IV) 0 1 00110 00110 000 001
5 00110 101
Lakukan proses enkripsi dengan CBC Pembagian blok biner plainteks dengan jumlah bit per kelompok = 24 A 010000 01 Blok I
R 010100 10
O 010011 11
N 010011 10 Blok II
I 010010 01
Biner Blok I plaintext di XOR dengan biner IV (C0), kemudian hasilnya di XOR dengan Kunci :
Biner Blok I Biner IV (C0) Biner Blok I XOR Biner C0 Biner Kunci (Blok I XOR C0) XOR (Kunci) Shift 2 bit to Right Hasil Enkripsi Blok I
01010100 00110000
01000001 00110001
01010010 00110101
01100100
01110000
01100111
01011010
01000101
01000010
00111110
00110101
00100101
111110 00110101 11111000
11010100
0010010100 10010100
Hasil enkripsi di blok I di atas digunakan untuk melakukan enkripsi blok II (current block) Biner Blok II 01001111 01001110 01001001 Hasil Enkripsi Blok 11111000 11010100 10010100 I Blok I XOR 10110111 10011010 11011101 C0 Biner Kunci 01011010 01000101 01000010 (Blok I XOR C0) XOR 11101101 11011111 10011111 (Kunci) Shift 2 bit to 101101 11011111 1001111111 Right Hasil Enkripsi Blok 10110111 01111110 01111111 II Hasil enkripsi (ciphertext) berdasarkan CBC (dalam bilangan biner) adalah 11111 11010 10010 10110 01111 01111 000 100 100 111 110 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 berapa jumlah pixel citra yang harus tersedia. Berdasarkan jumlah biner data teks yang akan disembunyikan (48 bit), maka jumlah pixel citra penampung minimal 16 pixel (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
Seminar Nasional Inovasi dan Teknologi Informasi 2015 (SNITI) Tuktuk Siadong, 5 - 6 September 2015
pixel R 1 120 ... 6 55 -
1 G 200 ... 200
B 150 ... 100
..... 3 ..... ..... ..... ..... ..... .....
ISBN: 979-458-808-3
pixel Konversi ke Bner
..... .....
1 6
1 R G B 01111000 11001000 10010110 ... ... ... 00110111 11001000 01100100
..... 3 ..... ..... ..... ..... ..... ..... ..... .....
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
2.
- 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. 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 : 111110001101010010010100 24 bit blok I
101101110111111001111111 24 bit blok II
Untuk blok yang pertama dan kedua dilakukan proses shift 2 bit to left : Bit awal 111110001101010010010100 101101110111111001111111 setelah digeser 001111100011010100100101 111011011101111110011111
88
Proses dekripsi Blok I: Blok I Biner IV (C0) Hasil (Blok I XOR C0) Hasil XOR Biner Kunci Biner Plainteks Blok I
001111100011010100100101 001100000011000100110101 000011100000010000010000 010110100100010101000010 010101000100000101010010
Proses dekripsi Blok II: Blok II
111011011101111110011111
Biner Blok I (sebelum digeser)
111110001101010010010100
Hasil (Blok I XOR C0)
000101010000101100001011
ISBN: 979-458-808-3
Seminar Nasional Inovasi dan Teknologi Informasi 2015 (SNITI) Tuktuk Siadong,, 5 - 6 September 2015
Hasil XOR Biner Kunci
010110100100010101000010
Biner Plainteks Blok I
010011110100111001001001
Satukan Blok I dan Blok II, kemudian kelompokkan menjadi 8 bit setiap kelompok Blok I & Blok II 010101000100000101010010010011110100111001001001 Pengelompokkan
01010100 01000001
Nilai desimal
84
Karakter
T
01010010
01001111
01001110
01001001
65
82
79
78
73
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