ISSN 2301-942 (Media Cetak) PERANCANGAN APLIASI STEGANOGRAFI PADA CITRA DIGITAL DENGAN METODE BIT PLANE COMPLEXITY SEGMENTATION (BPCS) Dwi Ratna Sari Mahasiswa Teknik Informatika STMI Budi Darma Jl. Sisingamangaraja No. 33 Sp. Limun Medan ABSTRA Telekomunikasi dan informasi berkembang dengan pesat dan memberikan pengaruh besar bagi kehidupan manusia. Contoh dari perkembangan ini adalah jaringan Internet, yang pada saat ini telah memungkinkan banyak orang untuk saling bertukar data secara bebas melalui jaringan tersebut. arena kemudahan yang dimilikinya, Internet sudah berkembang menjadi salah satu media yang paling populer di dunia. Namun, kemudahan ini juga dimanfaatkan oleh sebagian pihak yang mencoba untuk melakukan kejahatan. Dengan berbagai teknik, banyak yang mencoba untuk mengakses informasi yang bukan haknya. Oleh karena itu, sejalan dengan berkembangnya media Internet ini harus juga dibarengi dengan perkembangan sisi keamanan. ata unci : Bit Plane Complexity Segmentation (BPCS), Steganografi. I. PENDAHULUAN Saat ini, teknologi komunikasi dan informasi berkembang dengan pesat dan memberikan pengaruh besar bagi kehidupan manusia. Contoh dari perkembangan ini adalah jaringan Internet, yang pada saat ini telah memungkinkan banyak orang untuk saling bertukar data secara bebas melalui jaringan tersebut. arena kemudahan yang dimilikinya, Internet sudah berkembang menjadi salah satu media yang paling populer di dunia. Namun, kemudahan ini juga dimanfaatkan oleh sebagian pihak yang mencoba untuk melakukan kejahatan. Dengan berbagai teknik, banyak yang mencoba untuk mengakses informasi yang bukan haknya. Oleh karena itu, sejalan dengan berkembangnya media Internet ini harus juga dibarengi dengan perkembangan sisi keamanan. Teknik kriptografi dapat menimbulkan kecurigaan pada pihak ketiga yang tidak berhak menerima informasi karena pesan disamarkan dengan cara mengubah pesan yang asli menjadi seolah-olah tidak terbaca. Sedangkan, steganografi lebih mengurangi kecurigaan karena pesan yang disamarkan disembunyikan ke dalam pesan lainnya. Steganografi dapat menyamarkan pesan ke dalam suatu media tanpa orang lain menyadari bahwa media tersebut telah disisipi suatu pesan. Menurut penelitian sebelumya dalam jurnal yang berjudul lasifikasi Bit Plane Noise untuk Menyisipkan Pesan Pada Teknik Steganografi BPCS Menggunakan Fuzzy Inference Sistem Mamdani (Rahmat Hidayat, 201, ISSN:1412-4) menyatakan bahwa BPCS merupakan teknik steganografi baru, dimana teknik ini mengganti bit planes yang terlihat sebagai noise dalam kontainer sehingga data yang dapat disisipkan dapat meningkat sampai 0% dari ukuran asli kontainernya. Ada banyak metode yang digunakan untuk steganografi pada dokumen citra seperti metode Least Significant Bit (LSB), Spread Spectrum Steganography, dan Bit-Plane Complexity Segmentation (BPCS). Metode steganografi yang digunakan pada penelitian ini adalah Bit-Plane Complexity Segmentation (BPCS), yang akan membahas bagaimana penyisipan pesan berupa file teks ke dalam file gambar dengan Metode Bit-Plane Complexity Segmentation (BPCS), bagaimana melakukan ekstraksi pesan tersembunyi pada file gambar yang telah disisipkan pesan dan bagaimana merancang aplikasi steganografi pada citra digital menggunakan Metode Bit-Plane Complexity Segmentation (BPCS). II. TEORITIS A. Steganografi Steganografi berasal dari bahasa Yunani yaitu stegos yang berarti penyamaran dan graphia yang berarti tulisan. Steganografi digunakan untuk menyembunyikan informasi rahasia ke dalam suatu media sehingga keberadaan pesan tersebut tidak diketahui oleh orang lain.steganografi bertujuan untuk menghilangkan kecurigaan dengan cara menyamarkan pesan tersebut. Menurut (Rinaldi, 200), ada beberapa hal yang diperlukan untuk menyembunyikan pesan yaitu: 1. Algoritma Penyisipan (Embeding Algorithm). 2. Fungsi Detektor (Detector Function). 3. Carrier Document. 4. ey. Secret Message/ Plaintext Menurut (Rinaldi, 200), ada beberapa hal yang harus dimiliki oleh pesan yang disembunyikan yaitu : 1. Robustness 2. Undetectability 3. Invisibility 4. Security. Secure Black-Box Public Detector. Secure Public Detector B. Data text Text merupakan sekumpulan karakter terdiri dari huruf-huruf,angka-angka(a-z,a-z,0-9) dan 322
ISSN 2301-942 (Media Cetak) simbol-simbol lainya seperti %,&,^,=,@,$,!,* dan lain-lain,dengan menggunakan kode ASCII setiap karakter dari text berjumlah -bit atau 1 byte. C. Citra (image) Citra adalah suatu representasi (gambaran), kemiripan atau imitasi dari suatu objek (Muliyanto, 2009). Secara harafiah, citra (image) adalah gambar pada bidang dwimatra (2 dimensi). Ditinjau dari sudut pandang sistematis, citra merupakan fungsi continue dari intensitas cahaya pada bidang dwimatra (2D). D. onsep Citra Digital Citra digital adalah citra yang dapat diolah oleh komputer. Berikut ini jenis - jenis warna pada citra digital, yaitu: 1. Hitam dan Putih (Monochrom) 2. Hitam Putih dan Abu-abu (GrayScale) 3. Citra Digital Berwarna E. Citra Digital TIFF Format TIFF merupakan format gambar terbaik dengan pengertian bahwa semua data dan informasi (data RGB, data CMY, dan lainnya) yang berkaitan dengan koreksi atau manipulasi terhadap gambar tersebut tidak hilang. Format TIFF biasa digunakan untuk kebutuhan pencetakan dengan kualitas gambar yang sangat tinggi. Ukuran berkas untuk format ini biasanya sangat besar. Format ini mampu menyimpan gambar dengan kualitas hingga 32 bit. F. Metode Bit Plane Complexity Segmentation (BPCS) Metode BPCS merupakan teknik steganografi yang diperkenalkan oleh Eiji awaguchi dan Richard O. Eason pada tahun 199. Teknik ini merupakan teknik steganografi yang memiliki kapasitas besar, karena dapat menampung data rahasia dengan kapasitas yang relative besar jika dibandingkan dengan metode steganografi lain seperti LSB. Proses penyisipan pesan dilakukan pada segmen yang memiliki kompleksitas yang tinggi. Segmen yang memiliki kompleksitas tinggi ini disebut noise-like regions. Pada segmensegmen ini penyisipan dilakukan tidak hanya pada least significant bit, tapi pada seluruh bitplane yang termasuk noise-like regions. Oleh sebab itu, pada teknik BPCS, kapasitas data yang disisipkan dapat mencapai 0% dari ukuran coverobjectnya. Langkah-langkah yang dilakukan pada algoritma BPCS pada saat menyisipkan data adalah sebagai berikut: 1. Cover-object dengan sistem PBC diubah menjadi sistem CGC, kemudian citra tersebut di-slice menjadi bit-plane dalam bentuk citra biner. Setiap bit-plane mewakili bit dari setiap piksel pada citra. Rumus yang digunakan untuk merubah sistem PBC menjadi CGC atau dari CGC ke PBC adalah sebagai berikut : PBC ke CGC : G1 = B1 Gi = Bi-1 XOR Bi CGC ke PBC : B1 = G1 Bi = Gi-1 XOR Gi dimana, G 1 = olom pertama hasil konversi ke CGC G i = olom ke-i hasil konversi ke CGC B 1 = olom pertama hasil konversi ke PBC B i = olom ke-i hasil konversi ke PBC 2. Segmentasi setiap bit-plane pada cover-object menjadi informative dan noise-like region dengan menggunakan nilai batas/threshold (α0). Nilai umum dari threshold = 0,3. Untuk menententukan bit plane tergolong informative atau noise like region, maka harus dicari nilai kompleksitas setiap bit plane dengan rumus : Dimana : α = Nilai kompleksitas bit plane k = Jumlah perubahan warna hitam-putih n = ukuran citra biner persegi Jika nilai α < α0 maka tergolong informative region Jika nilai α > α0 maka tergolong noise like region 3. elompokkan byte-byte pesan rahasia menjadi rangkaian blok pesan rahasia. 4. Jika blok (S) kurang kompleks dibandingkan dengan nilai batas, maka lakukan konjugasi terhadap S untuk mendapatkan S* yang lebih kompleks. Blok konjugasi (S*) pasti lebih kompleks dibandingkan dengan nilai batas. onjugasi dari suatu gambar biner S adalah sebuah gambar biner lainnya yang memiliki nilai kompleksitas sebesar satu dikurangi nilai kompleksitas S. onjugasi dari gambar S dilambangkan dengan S*. Untuk membangun sebuah konjugasi S* dari sebuah gambar S, dapat dilakukan dengan rumus berikut : S* = S XOR Wc Jika α (S) adalah kompleksitas dari S, maka : α (S*) = 1- α (S) Dimana : XOR = menandakan operasi exlusive Wc = pola papan catur. Sisipkan setiap blok pesan rahasia ke bit-plane yang merupakan noise-like region (atau gantikan semua bit pada noise-like region). Jika blok S dikonjugasi, maka simpan data pada conjugation map.. Sisipkan juga conjugation map seperti yang dilakukan pada blok pesan rahasia.. Ubah stego-object dari sistem CGC menjadi sistem PBC. Proses ekstraksi pesan rahasia dapat dilakukan dengan menerapkan langkah-langkah penyisipan secara terbalik. 323
ISSN 2301-942 (Media Cetak) G. UML (Unified Modeling Language) UML ( Unified Modeling Language) adalah sebuah bahasa untuk menentukan, visualisasi, kontruksi, dan mendokumentasikan artifact (bagian dari informasi yang digunakan atau yang dihasilkan dalam suatu proses pembuatan prangkat lunak, artifact dapat berupa model, diskripsi tau perangkat lunak) dari sistem perangkat lunak, seperti pada pemodelan bisnis dan sistem non prangkat lunak lainnya. Unified Modeling Language (UML) adalah sebuah bahasa yang telah menjadi standard dalam industri untuk visualisasi, merancang dan memndokumentasikan sistem informasi atau piranti lunak. Adapun jenis diagram adalah Use Case Diagram dan Activity Diagram. I. ANALISA DAN PEMBAHASAN A. Penyisipan dengan Metode Bit-Plane Complexity Segmentation (BPCS) Metode Bit-PlaneComplexity Segmentation (BPCS)adalah teknik steganografi yang memiliki kapasitas besar, karena dapat menampung data rahasia dengan kapasitas yang relative besar. Pada penyisipan data ada beberapa langkah-langkah yang dilakukan pada algoritma BPCS yaitu : 1. Cover-object dengan sistem PBC diubah menjadi sistem CGC, kemudian citra tersebut di-slice menjadi bit-plane dalam bentuk citra biner. Setiap bit-plane mewakili bit dari setiap piksel pada citra. Citra yang akan disisipkan : Representasi nilai biner ke dalam gambar biner (PBC) Bit-Plane 0 Bit-Plane 1 Bit-Plane 2 Bit-Plane 3 Bit-Plane 4 Bit-Plane Bit-Plane Bit-Plane Nilai biner berdasakan nilai desimal pada pixel gambar Nilai biner dari Bit-Plane 0 dan 1 Nilai biner dari Bit-Plane 2 dan 3 Nilai biner dari Bit-Plane 4 dan Nilai biner dari Bit-Plane dan Proses perubahan system PBC menjadi CGC adalah sebagai berikut : Bit-plane 0 G1 = B1 => G1 = 0 G2 = B1 + B2 = 0 + 0 = 0 G3 = B2 +B3 = 0 + 0 = 0 G4 = B3 + B4 = 0 + 0 = 0 G = B4 + B = 0 + 0 = 0 G = B + B = 0 + 0 = 0 G = B + B= 0 + 0 = 0 G = B + B= 0 + 0 = 0 G9 = B +B 9 = 0 + 0 = 0 G10 = B9 + B10 = 0 + 0 = 0 G11 = B10 + B11= 0 + 0= 0 G12 = B11 + B12= 0 + 1= 1 G13 = B12 + B13= 1 + 0= 0 G14 = B13 + B14= 0 + 1= 1 G1 = B14 + B1 =1 + 0= 1 G1 = B1 + B1= 0 + 0= 0 G1 = B1 + B1= 0 + 0= 0 G1 = B1 + B1= 0 + 0= 0 G19 = B1 + B19= 0 + 1= 1 G20 = B19 + B19= 1 + 1= 0 G21 = B20 + B21= 1 + 1= 0 G22 = B21 + B22= 1 + 0= 1 G23 = B22 + B23= 0 + 0= 0 G24 = B23 + B24= 0 + 1= 1 G2 = B24 + B2= 1 + 1= 0 324
ISSN 2301-942 (Media Cetak) G2 = B2 + B2= 1 + 1= 0 G2 = B2 + B2= 1 + 0= 1 G2 = B2 + B2= 0 + 0= 0 G29 = B2 + B29= 0 + 0= 0 G30 = B29 + B30= 0 + 1= 1 G31 = B30 + B31= 1 + 1= 0 G32 = B31 + B32= 1 + 1= 0 G33 = B32 + B33= 1 + 1= 0 G34 = B33 + B34= 1 + 1= 0 G3 = B34 + B3= 1 + 0= 1 G3 = B3 + B3= 0 + 1= 1 G3 = B3 + B3= 1 + 1= 0 G3 = B3 + B3= 1 + 0= 1 G39 = B3 + B39= 0 + 1= 1 G40 = B39 + B40= 1 + 0= 1 G41 = B40 + B41= 0 + 0= 0 G42 = B41 + B42= 0 + 1= 1 G43 = B42 + B42= 1 + 0= 1 G44 = B43 + B44= 0 + 0= 0 G4 = B44 + B4= 0 + 1= 1 G4 = B4 + B4=1 + 0= 1 G4 = B4 + B4= 0 + 0= 0 G4 = B4 + B4= 0 + 0= 0 G49 = B4 + B49= 0 + 1= 1 G0 = B49 + B0= 1 + 0= 1 G1 = B0 + B1= 0 + 1= 1 G2 = B1 + B2= 1 + 0= 1 G3 = B2 + B3= 0 + 0= 0 G4 = B3 + B4= 0 + 0= 0 G = B4 + B= 0 + 1= 1 G = B + B= 1 + 1= 0 G = B + B= 1 + 1= 0 G = B + B= 1 + 0= 1 G9 = B + B9= 0 + 1= 1 G0 = B9 + B0= 1 + 0= 1 G1 = B0 + B1= 0 + 1= 1 G2 = B1 + B2= 1 + 0= 1 G3 = B2 + B3= 0 + 0= 0 G4 = B3 + B4= 0 + 0= 0 Dengan cara yang sama kerjakan plane 1 Sampai dengan plane. Berikut merupakan sistem CGC yang didapat berdasarkan perhitungan rumus diatas: Plane 0 Plane 1 Plane 2 Plane 3 Plane 4 Plane Plane Plane 2. Segmentasi setiap bit-plane pada cover-object menjadi informative dan noise-like region dengan menggunakan nilai batas/threshold (α0). Nilai umum dari threshold =0,3. Plane 0 = α = 2x2 n x(2 n 1) 41 = 2x2 3 x(2 3 1) = 41 112 = 0.3 Dengan cara dan rumus yang sama kerjakan plane 1 sampai plane dan hasilnya adalah: Plane 0 memiliki nilai α = 0.3 0.3 Plane 1 memiliki nilai α = 0.34 0.3 Plane 2 memiliki nilai α = 0.42 0.3 Plane 3 memiliki nilai α = 0.3 0.3 Plane 4 memiliki nilai α = 0.4 0.3 Plane memiliki nilaiα = 0.42 0.3 Plane memiliki nilai α = 0.3 0.3 Plane memiliki nilai α = 0.3 0.3 3. elompokkan byte-byte pesan rahasia menjadi rangkaian blok pesan rahasia. Pesan yang akan disisipkan: DWI_RATNA_SARI13 D W I _ R A T N A _ S A R I 1 3 3 9 2 4 Blok pesan pertama (MS0) = DWI_RATN Blok pesan kedua (MS1) = A_SARI13 Nilai Biner Blok pesan pertama (MS0) : 0 1 0 0 0 1 0 0 0 1 0 1 0 1 1 1 0 1 0 0 1 0 0 1 0 1 0 1 1 1 1 1 0 1 0 1 0 0 1 0 0 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 0 1 0 0 1 1 1 0 biner blok pesan kedua (MS1) : 0 1 0 0 0 0 0 1 0 1 0 1 1 1 1 1 0 1 0 1 0 0 1 1 9 3 2 3 4 9 1 32
ISSN 2301-942 (Media Cetak) 0 1 0 0 0 0 0 1 0 1 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 0 1 0 0 1 1 0 0 1 1 Blok pesan rahasia dalam gambar biner: maka blok bit plane yang termasuk noise like region pada citra diganti oleh blok pesan ini.. Sisipkan setiap blok pesan rahasia ke bit-plane yang merupakan noise-like region(atau gantikan semua bit pada noise-like region). Jika blok S dikonjugasi, makasimpan data pada conjugation map. Penyisipan dilakukan dengan mengganti seluruh nilai bit citra dengan bit pesan Plane 0 Blok pesan pertama (MSO) Plane 1 Blok pesan kedua (MS1) Untuk plane 2 sampai dengan plane tidak dilakukan penggantian bit, karena pesan yang disisipkan hanya 2 blok saja. Sehingga nilai bit citra dari plane 2 sampai plane adalah tetap.. Sisipkan juga conjugation map seperti yang dilakukan pada blok pesan rahasia. Tidak terdapat conjugation map, karena tidak ada blok yang dilakukan konjugasi.. Ubah stego-object dari sistem CGC menjadi sistem PBC. Pengubahan sistem CGC menjadi PBC menggunakan rumus : B 1 = G 1 B i = G i-1 XOR B i-1 Hasil citra setelah dilakukan penyisipan pesan rahasia adalah sebagai berikut: Nilai ompleksitas dari kedua pesan Blok pertama (MS0) = α= 2x2 n x(2 n 1) 2x2 3 x(2 3 1) = 0.41 112 Blok kedua (MS1) = α= 2x2 n x(2 n 1) 2x2 3 x(2 3 1) 112 = 0.41 4. Jika blok (S) kurang kompleks dibandingkan dengan nilai batas, maka lakukan konjugasi terhadap S untuk mendapatkan S* yang lebih kompleks. Blok konjugasi (S*) pasti lebih kompleks dibandingkan dengan nilai batas. Blok pesan pertama (MS0) memiliki nilai: α= 0.41 0.3 Noise-like region Blok pesan kedua (MS1) memiliki nilai: α= 0.41 0.3 Noise-like region Pada kedua blok pesan tidak perlu dilakukan konjugasi, karena nilai kompleksitas dari pesan pertama (MS0) dan pesan kedua (MS1) di atas 0,3 Gambar 1 Hasil Stego B. Ekstraksi Pesandengan Metode Bit- PlaneComplexity Segmentation (BPCS) Saat proses ekstrasi pesan, yang perlu dilakukan hanyalah mengambil segmen bit yang memiliki kompleksitas diatas threshold. Jika nilai kompleksitas segmen tersebut lebih besar dari threshold, maka segmen tersebut merupakan bagian daripesan rahasia. Tabel konjugasi yang disisipkan juga dibaca untuk melihat proses konjugasi yang perlu dilakukan pada tiap blok pesan. 1. Ubah citra dari system PBC menjadi system CGC dengan menggunakan rumus : gi = bi-1 XOR bi, sehingga didapat CGC. 2. Tentukan segmen informative dan noise like region dengan nilai batas threshold yang sama dengan batas threshold ketika proses penyisipan yaitu 0.3 plane 0 α = = 2 2x2 n x(2 n 1) 2x2 3 x(2 3 1) = 2 = 0.4 (noise like) 112 32
ISSN 2301-942 (Media Cetak) Dengan cara yang sama lakukanlah pencaria plane 1 sampai plane. 3. Ambil segmen data dari segmen bit-plane yang dianggap noise like. Segmen yang diambil adalah segmen pada plane 0 dan palane 1 yang merupakan blok data pesan yang disisipkan. 4. Terjemahkan setiap segmen-segmen tersebut menjadi blok data dan ubah blok data biner menjadi nilai desimal dan ubah menjadi karakter. Blok data pada plane 0 : 01000100 D 01010111 W 01001001 3 I 01011111 9 _ 01010010 2 R 01100001 A 01010100 4 T 01001110 N Blok data pada plane 1 : 01000001 A 01011111 9 _ 01010011 3 S 01000001 A 01010010 2 R 01001001 3 I 00110001 49 1 00110011 1 3 Sehingga pesan rahasia yang didapat setelah proses ekstraksi adalah DWI_RATNA_SARI13 IV. IMPLEMENTASI A. Form Menu Utama Form ini merupakan form yang berfungsi untuk melakukan pemilihan terhadap menu yang ada bagi user yang akan menggunakan aplikasi Gambar 2. Menu Utama B. Form Proses Penyisipan Berikut merupakan tampilan dari form proses penyisipan yang berfungsi untuk melakukan proses penyisipan file teks ke dalam sebuah citra. Gambar 3. Tampilan Form Penyisipan C. Form Proses Ekstraksi Berikut merupakan tampilan dari form proses ekstraksi yang berfungsi untuk melakukan ekstraksi terhadap citra yang telah disisipkan file teks agar penerima pesan mengetahui isi pesan yang terdapat didalam citra tersebut. Gambar 4 Tampilan Form Ektraksi D. Form Profil Berikut ini merupakan tampilan dari form Profil yang berfungsi untuk menampilkan informasi mengenai penulis. Gambar. Tampilan Form Profil V. ESIMPULAN Berdasarkan hasil perancangan dari perangkat lunak steganografi dengan metode Bit-Plane Complexity Segmentation (BPCS) ini, penulis dapat menarik kesimpulan sebagai berikut: 1. Proses perbaikan citra yang disisipi dengan gambar awal sebelum disisipi pesan teks tidak mengalami perubahan bentuk, sehingga secara kasat mata tidak dapat diketahui apakah ada pesan didalam gambar tersebut. 2. Proses perancangan sebuah aplikasi yang dapat menyisipkan sebuah pesan terhadap citra dengan cara menggunakan teknik steganografi yaitu, dengan metode Bit-Plane Complexity Segmentation (BPCS). 3. Bentuk antara gambar yang asli dengan gambar yang telah disisipkan tidak ada bedanya jika dilihat dengan menggunakan indera manusia. DAFTAR PUSTAA 1. AryaWidyanarko,Implementasi Steganography dengan Metode Bit Plane Complexity Segmentation (BPCS) untuk dokumen Citra Terkompresi. 2. Rahmat C, Antonius, 2010, Flowchart, Penerbit Andi, Yogyakarta. 3. Shrikant S.haire,2010,Review: Steganography Bit Plane Complexity Segmentation (BPCS). 4. Sinta Dewi,2012, Analisa perbandingan Steganography pada citra Digital Gif Dan TIFF dengan Metode Bit Plane Complexity Segmentation(BPCS). 32