Aplikasi Steganografi Untuk Menyembunyik

download Aplikasi Steganografi Untuk Menyembunyik

of 8

Transcript of Aplikasi Steganografi Untuk Menyembunyik

  • 7/25/2019 Aplikasi Steganografi Untuk Menyembunyik

    1/8

    APLIKASI STEGANOGRAFI UNTUK MENYEMBUNYIKAN TEKS DALAM

    MEDIA IMAGE DENGAN MENGGUNAKAN METODE LSB

    Nazori Az1, Asep Saefua!", #i$a%a&'

    1Dosen Pasca Sarjana Ilmu Komputer, Universitas Budi luhur

    Jl. Ciledug a!a, Petu"angan Utara, Ja"arta Selatan, 1##$%. DKI Ja"arta, &elp' %#1()*)+)+

    na-ori/udiluhur.ac.id

    #0ahasisa Pasca Sarjana, Universitas Budi 2uhur

    Jl. Ciledug a!a, Petu"angan Utara, Ja"arta Selatan, 1##$%. DKI Ja"arta, &elp' %#1()*)+)+

    asae3ullahgmail.com

    +0ahasisa Pasca Sarjana, Universitas Budi 2uhur

    Jl. Ciledug a!a, Petu"angan Utara, Ja"arta Selatan, 1##$%. DKI Ja"arta, &elp' %#1()*)+)+

    himaanaan1%gmail.com

    ABSTRAK

    Data rahasia !ang a"an di"irim memerlu"an perlidungan e"stra agar han!a dapat di/aca oleh target penerima saja. Untu"

    itu dirancang se/uah apli"asi steganogra3i !ang /ertujuan untu" men!amar"an e"sistensi 4"e/eradaan5 data rahasia sehingga

    sulit didete"si, dan melindungi ha" cipta suatu produ". 0etode !ang diperguna"an pada tipe /er"as citra adalah least

    signi3icant /it 42SB5, metode ini men!em/un!i"an data dengan mengganti /it(/it data !ang paling tida" /erarti di dalam

    cover dengan /it(/it data rahasia. 6pli"asi steganogra3i !ang di/uat terdiri dari + proses !aitu' meload image !ang ingin

    ditam/ah"an pesan rahasia, menam/ah"an pesan "e dalam image 4encode image5 dan proses !ang diguna"an untu"

    menampil"an 4e7tract5 pesan rahasia !ang ada dalam image. U"uran semula pada image original dengan 3ormat .jpg a"an

    mengalami "enai"an nilai setelah ditam/ah"an data rahasia dengan mengguna"an 3ormat .png. 6pli"asi steganogra3i ini

    /erhasil menampil"an pesan rahasia !ang ada dalam image, dengan tida" meru/ah cover citra image.

    Ka(a )u&*i : Steganografi, LSB, Citra Image

    PENDA#ULUAN

    Pengiriman data melalui media internet sudah menjadi kebutuhan karena sifatnya yang cepat, tepat dan mudah, namundemikian perlu menjadi perhatian aspek keamanan data pada saat pengiriman terutama data rahasia. Berkembangnya teknologiinternet dan aplikasi menggunakan internet maka berkembang pula kejahatan sistem informasi. engan berbagai teknik banyak

    yang mencoba untuk mengakses informasi yang bukan haknya. !ntuk melindungi data yang dikirim, dikembangkan berbagaiteknik untuk melindungi informasi yang dirahasiakan dari orang yang tidak berhak, salah satunya adalah teknik steganografi.Steganografi sebagai suatu seni penyembunyian pesan ke dalam pesan lainnya yang telah ada sejak sebelum masehi dan kiniseiring dengan kemajuan teknologi jaringan serta perkembangan dari teknologi digital, steganografi banyak dimanfaatkanuntuk mengirim pesan melalui jaringan Internet tanpa diketahui orang lain dengan menggunakan media digital berupa filecitra.

    "ujuan dari steganografi adalah untuk mengirimkan suatu pesan melalui beberapa media baik berupa teks, gambar,audio dan #ideo melalui kanal komunikasi di mana keberadaan dari pesan itu dirahasiakan. Berdasarkan pada $ambar %,steganografi adalah salah satu dari teknik&teknik penyembunyian informasi dan yang dapat yang digolongkan ke dalamlinguistic steganograph!dan technical steganograph! '().

    mailto:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]
  • 7/25/2019 Aplikasi Steganografi Untuk Menyembunyik

    2/8

    $ambar %. *lasifikasi dari teknik penyembunyian informasi '()

    2inguistic steganograph! didefinisikan oleh Chapman et al. '+) merupakan seni menggunakan bahasa alami yang ditulisuntuk merahasiakan pesan&pesan rahasia-. amun pada saat ini teknik steganografi yang digunakan sudah amat beragam,beragam mulai dari algoritma yang digunakan sampai pada media yang digunakan. Beberapa contoh media penyisipan pesanrahasia yang digunakan dalam teknik Steganography antara lain adalah '%):%. "eks

    alam algoritma Steganography yang menggunakan teks sebagai media penyisipannya biasanya digunakan teknik LPsehingga teks yang telah disisipi pesan rahasia tidak akan mencurigakan untuk orang yang melihatnya.

    +. /udio0ormat ini pun sering dipilih karena biasanya berkas dengan format ini berukuran relatif besar. Sehingga dapat menampungpesan rahasia dalam jumlah yang besar pula.

    1. Citra0ormat pun paling sering digunakan, karena format ini merupakan salah satu format file yang sering dipertukarkan dalam

    dunia internet. /lasan lainnya adalah banyaknya tersedia algoritma Steganography untuk media penampung yang berupacitra.

    (. 2ideo0ormat ini memang merupakan format dengan ukuran file yang relatif sangat besar namun jarang digunakan karena

    ukurannya yang terlalu besar sehingga mengurangi kepraktisannya dan juga kurangnya algoritma yang mendukung formatini.

    Steganografi berfungsi untuk menyembunyikan keberadaan pesan dan dapat dianggap sebagai pelengkap darikriptografi yang bertujuan untuk menyembunyikan isi pesan. Berbeda dengan kriptografi dalam steganografi pesandisembunyikan sedemikian rupa sehingga pihak lain tidak dapat mengetahui adanya pesan rahasia. Pesan rahasia tidak diubah

    menjadi karakter 3aneh4 seperti halnya kriptografi. Pesan tersebut hanya disembunyikan ke dalam suatu media berupa gambar,teks, musik, atau media digital lainnya dan terlihat seperti pesan biasa.

    !ntuk memudahkan dalam proses penyembunyian pesan teks ke dalam image, maka dirancang suatu aplikasi

    steganografi dengan metode 2east Signi3icant Bit 5LSB6. /plikasi dirancang dengan tiga proses yaitu mengambil image,menambahkan pesan ke dalam image 4encode image5dan menampilkan pesan rahasia 4e7tract5dalam image.

    PERMASALA#AN

    Steganografi mempunyai kelebihan dalam aspek penyembunyian pesan di mana pesan yang disembunyikan tidak

    terlihat kasat mata berupa kode tertentu seperti kriptografi, dikarenakan dalam steganografi pesan dititipkan pada suatu co#er

    image. Permasalahannya bagaimana agar pesan tersebut dapat dititipkan pada cover imagetanpa terlihat berkurangnya kualitas

    dari cover image tersebut, dan metode apa yang tepat agar pesan yang dititipkan tidak mengurangi kualitas cover image.

    Permasalahan berikutnya yaitu bagaimana merancang suatu 8raphical User Inter3ace5$!I6 yang mudah digunakan oleh

    seorang yang a7am sekalipun dengan steganografi, $!I harus dapat menampilkan image, teks yang dikirim, teks yang di

    e7tractdan menampilkan tiga menu dan satu tombol eksekusi yaitu open image, create encode image, save imagedanget

    massage.

  • 7/25/2019 Aplikasi Steganografi Untuk Menyembunyik

    3/8

    PEMBA#ASAN

    Steganografi yang dibahas di sini adalah penyembunyian data di dalam citra digital. 8eskipun demikian,

    penyembunyian data dapat juga dilakukan pada 7adah berupa suara digital, teks, ataupun #ideo. Penyembunyian data rahasiake dalam citra digital akan mengubah kualitas citra tersebut. *riteria yang harus diperhatikan dalam penyembunyian dataadalah:

    %. 8utu citra penampung tidak jauh berubah. Setelah penambahan data rahasia, citra hasil steganografi masih terlihatdengan baik. Pengamat tidak mengetahui kalau di dalam citra tersebut terdapat data rahasia.

    +. ata yang disembunyikan harus mampu bertahan terhadap manipulasi yang dilakukan pada citra penampung. Bilapada citra dilakukan operasi pengolahan citra, maka data yang disembunyikan tidak rusak.

    1. ata yang disembunyikan harus dapat diungkapkan kembali 5recover!6.

    ata yang dijadikan coverharus lebih besar dari data rahasia agar data rahasia tidak terlihat. ata yang digunakan sebagaicoversebaiknya digunakan satu kali. /pabila digunakan lebih dari satu kali, maka akan menimbulkan kecurigaan pihak lain

    '9).

    Te)&i) Pe&+e$u&+ia& Da(a

    Penyembunyian data dilakukan dengan mengganti bit&bit data di dalam segmen citra dengan bit&bit data rahasia. Salahsatu metode penyembunyian data yang sederhana adalah2SB 0odi3ication.Perhatikan contoh sebuah susunan bit pada sebuah /!te:

    %%%%2SB 9 2east Signi3icant Bit

    0SB 9 0ost Sigini3icant Bit

    0SB 2SB

    Bit yang cocok untuk diganti adalah bit2SB, sebab perubahan tersebut hanya mengubah nilai /!tesatu lebih tinggi atau satulebih rendah dari nilai sebelumnya. 8isalkan /!tetersebut menyatakan 7arna keabuan tertentu, maka perubahan satu bit LSBtidak mengubah 7arna keabuan tersebut secara berarti. Lagi pula, mata manusia tidak dapat membedakan perubahan yang

    kecil.

    8isalkan segmen data citra sebelum perubahan '1):

    % % % % % % % % % % % % % % % % %

    Segmen data citra setelah 3 % % % 3 disembunyikan:

    % % % % % % % % % % % % % % % % % %

    !ntuk memperkuat teknik penyembunyian data, bit&bit data rahasia tidak digunakan mengganti /!te(/!te yangberurutan, namun dipilih susunan /!tesecara acak. 8isalnya jika terdapat 9 /!tedan ; bit data yang akan disembunyikan,

    maka maka /!te yang diganti bit 2SB&nya dipilih secara acak, misalkan /!tenomor 1;, 9, +%, %, %

  • 7/25/2019 Aplikasi Steganografi Untuk Menyembunyik

    4/8

    0ormat citra header?

    >palet8B?

    8 B

    % + (9 +(+ %( %1 %;1 %+ %@ %9A+9; (; @< +9

    >data /itmap?+ + % % % 1 9 A

    .

    Pada citra +(&bit, tidak terdapat palet 8B, karena nilai 8B langsung diuraikan dalam data /itmap. Setiap elemen data/itmappanjangnya 1 /!te, masing&masing /!temenyatakan komponen, 8, danB.

    0ormat citra +(&bit 5%; juta 7arna6

    >header?

    >data /itmap?+ + % % % 1 9 A

    Pada contoh format citra +(&bit di atas,pi7elpertama mempunyai +, 8 +,B %.

    Teknik penggantian bit pada citra bukan 24-bit.

    Sebelum melakukan penggantian bit2SB, semua data citra yang bukan tipe +(&bit diubah menjadi format +(&bit. adi, setiapdatapi7elsudah mengandung komponen8B. Setiap /!tedi dalam data /itmapdiganti satu bit2SB&nya dengan bit data yang

    akan disembunyikan. ika /!tetersebut merupakan komponen hijau 5$6, maka penggantian % bit LSB&nya hanya mengubahsedikit kadar 7arna hijau, dan perubahan ini tidak terdeteksi oleh mata manusia.

    Teknik penggantian bit pada citra 24-bit.

    *arena data bitmap pada citra +(&bit sudah tersusun atas komponen8B, maka tidak perlu dilakukan perubahan format.

    Setiap /!tedi dalam data bitmap diganti satu bit2SB&nya dengan bit data yang akan disembunyikan.

    Te)&i) Pe&-u&-)apa& Da(a

    ata yang disembunyikan di dalam citra dapat dibaca kembali dengan cara pengungkapan 5 reveal atau e7traction6. Posisi /!te

    yang menyimpan bit data dapat diketahui dari bilangan acak yang dibangkitkan oleh P:8. *arena algoritma kriptografi yangdigunakan menggunakan kunci pada proses enkripsi, maka kunci yang sama digunakan untuk membangkitkan bilangan acak.

    Bilangan acak yang dihasilkan sama dengan bilangan acak yang dipakai pada 7aktu penyembunyian data. engan demikian,bit&bit data rahasia yang bertaburan di dalam citra dapat dikumpulkan kembali.

    Pe&+isipa& Pesa& )e .aa$Image

    engan menggunakan bahasa pemrograman ja#a SD, fungsi yang akan digunakan untuk encodingatau menyisipkan pesan ke

    dalam image:

  • 7/25/2019 Aplikasi Steganografi Untuk Menyembunyik

    5/8

    $ambar +.;ncodingPesan

    E/(ra*( Pesa&

    0ungsi yang akan di gunakan untuk mendecode image yang telah di tambahkan pesan rahasia ke dalamnya :

    $ambar 1.;7tractPesan

    private static int[][][] encodeMessage(int[][][] origData, int cols, int rows,String msg){ int[][][] imgData = new int[rows][cols][4];1 for (int row = ;row ! rows;row"") { for (int col = ;col ! cols;col"") { imgData[row][col][] = origData[row][col][]; imgData[row][col][1] = origData[row][col][1]; imgData[row][col][#] = origData[row][col][#]; imgData[row][col][$] = origData[row][col][$]; % % &'te[] msg'tes = nll; msg'tes = msg*get'tes(+S-.//0.1+);#

    if ((msg'tes*lengt2 " 1 3 $ = )) {$ int to5dd = ($ . (msg'tes*lengt2 3 $)) . 1; &'te tmp'tes[] = new &'te[msg'tes*lengt2 " to5dd];

    for (int i = ; i ! to5dd; i"") { tmp'tes[msg'tes*lengt2 " i] = (&'te)66; % S'stem*arra'cop'(msg'tes, , tmp'tes, , msg'tes*lengt2);

    msg'tes = tmp'tes; % &'te tmp'tes[] = new &'te[msg'tes*lengt2 " 4];4 tmp'tes[] = 676; tmp'tes[1] = 676; tmp'tes[#] = 676; tmp'tes[msg'tes*lengt2 " $] = (&'te)66; S'stem*arra'cop'(msg'tes, , tmp'tes, $, msg'tes*lengt2);

    msgBytes = tmpBytes;

    private static String getMessage(int[][][] data, int cols, int rows){ int s8ip9ont = ;1 int twoit9ont = ; m:start92ar9ont = ; m:fonderminator = false;# &'te[] twoitData = new &'te[(rows < cols . S>?-@-) < $];$ int &'te9ont = ; Stringffer message = new Stringffer(); for (int row=; row ! rows; row"") { for (int col=; col ! cols; col"") { if ((row < col A S>?-@-) BB (s8ip9ont.. == )) { twoitData[twoit9ont""] = (&'te) (data[row][col][1] B CS:M5S:?>5D);4 twoitData[twoit9ont""] = (&'te) (data[row][col][#] B CS:M5S:?>5D); twoitData[twoit9ont""] = (&'te) (data[row][col][$] B CS:M5S:?>5D); &'te9ont "= $;

    s8ip9ont = twoitData[twoit9ont . 1];0

    if ((&'te9ont 3 EFF>?:C>GH) == ) {I message*append(decodeString(twoitData, twoit9ont . EFF>?:C>GH, twoit9ont)); if (m:fonderminator) {J retrn message*toString(); %

    % %

    % retrn nll;

    }

    http://www.zackgrossbart.com/hackito/secret-secret/#stegnote1http://www.zackgrossbart.com/hackito/secret-secret/#stegnote2http://www.zackgrossbart.com/hackito/secret-secret/#stegnote3http://www.zackgrossbart.com/hackito/secret-secret/#stegnote4http://www.zackgrossbart.com/hackito/secret-secret/#stegnote10http://www.zackgrossbart.com/hackito/secret-secret/#stegnote11http://www.zackgrossbart.com/hackito/secret-secret/#stegnote12http://www.zackgrossbart.com/hackito/secret-secret/#stegnote13http://www.zackgrossbart.com/hackito/secret-secret/#stegnote14http://www.zackgrossbart.com/hackito/secret-secret/#stegnote15http://www.zackgrossbart.com/hackito/secret-secret/#stegnote16http://www.zackgrossbart.com/hackito/secret-secret/#stegnote1http://www.zackgrossbart.com/hackito/secret-secret/#stegnote2http://www.zackgrossbart.com/hackito/secret-secret/#stegnote3http://www.zackgrossbart.com/hackito/secret-secret/#stegnote4http://www.zackgrossbart.com/hackito/secret-secret/#stegnote10http://www.zackgrossbart.com/hackito/secret-secret/#stegnote11http://www.zackgrossbart.com/hackito/secret-secret/#stegnote12http://www.zackgrossbart.com/hackito/secret-secret/#stegnote13http://www.zackgrossbart.com/hackito/secret-secret/#stegnote14http://www.zackgrossbart.com/hackito/secret-secret/#stegnote15http://www.zackgrossbart.com/hackito/secret-secret/#stegnote16
  • 7/25/2019 Aplikasi Steganografi Untuk Menyembunyik

    6/8

    "ampilan a7al dari program utama E aplikasi steganografi untuk menyisipkan pesan ke dalam image :

    $ambar (. "ampilan /7al /plikasi Steganografi

    La&-)a!0a&-)a! proses pe&+isipa& pesa& )e .aa$ fie i$a-e

    Pertama user harus memilih image yang akan disisipkan pesan rahasia ke dalamnya dengan memilih menu open

    image, setelah user meload image yang ingin di tambahkan pesan ke dalamnya maka user bisa menuliskan pesan rahasia pada

    teFtarea yang telah di sediakan pada sisi kanan frame aplikasi steganografi dan menekan button create encoded image-.

    Berikut adalah contoh bagaimana imageyang telah di load dan ingin di tambahkan pesan ke dalamnya :

    Pada contoh di ba7ah ini, resolusi 5ukuran6 dari image yang di gunakan sebesar +19 F 1%( piFel dan format imageyang di

    gunakan adalah .jpg.

    $ambar 9. Cover imagedan teks yang akan disembunyikan

  • 7/25/2019 Aplikasi Steganografi Untuk Menyembunyik

    7/8

    Gasil tampilan output image yang telah disisipkan pesan rahasia tidak akan mengalami perubahan kualitas image yang

    signifikan seperti kualitas 7arna 4/rightness atau contrast5, berikut adalah tampilan output program dari hasil image yang telah

    di tambahkan pesan rahasia di dalamnya :

    $ambar ;.;7tract encoding

    Gasil e7tract, dapat dilihat pada decode message, untuk ukuran 5siHe6 dari file image yang telah di sisipkan pesan rahasia

    menjadi bertambah besar. !kuran semula pada image original dengan format .jpg 1(.@ kb, ukuran image setelah di

    tambahkan pesan rahasia dengan menggunakan format .png %pen Image?yang ada dalam aplikasi

    untuk mencari image yang ingin disisipkan pesan. Setelah image berhasil di loaddan ditampilkan dalam aplikasi, maka user

    bisa menambahkan pesan rahasia ke dalam image kedalam teFt area yang telah di sediakan. Setelah pesan yang di tambahkan

    selesai di ketik, maka user menekan button =Create ;ncoded Image?untuk menambahkan pesan ke dalam image. !ntukproses menampilkan pesan rahasia yang ada dalam image, maka user bisa langsung memilih menu =8et 0essage? untuk

    mendapatkan pesan tersembunyi dalam image.

    KESIMPULAN

    /plikasi steganografi ini sangat bermanfaat terutama dalam perlindungan hak cipta 4cop!right5 sebuah image dan

    juga keamanan pada saat melakukan transferpengiriman data melalui jaringan internet. !kuran semula pada image original

    dengan format .jpg akan mengalami kenaikan nilai ditambahkan pesan rahasia dengan menggunakan format .png. /plikasi

    steganografi sudah berpenampilan $!I mempunyai tiga menu yaitu open image, save image, get messagedan satu tombol

    eksekusi yaitu create encode image. Gasil ekstrak image baik berupa teks, image, #ideo dan audio akan terbuka begitu saja,

    sehingga untuk keamanan yang lebih baik maka disarankan dienkripsi kembali hasil e7tracttersebut.

  • 7/25/2019 Aplikasi Steganografi Untuk Menyembunyik

    8/8

    DAFTAR PUSTAKA

    '%) /latas Putri, 8. Subali,-Implementation "echniJue Kith Steganography LSB 8ethod in igital Images-,!ndergraduate Program, 0aculty of Computer Science, $unadarma !ni#ersity, +=

    '+) Chapman 8, $. a#ida, and 8. ennhard, / Practical and Dffecti#e /pproach to Large&Scale /utomated LinguisticSteganography-,Proceedings o3 the In3ormation Securit!Con3erence, Mctober +%, pp. %9;&%;9.

    '1) $usmayuda iHki /,-Steganografi pada 8edia 2ideo igital dengan 8enggunakan 8etode 00"50ast 0ourier "ransform6dan LSB 5Least Significant Bit6, "eknik Informatika, 0akultas "eknik dan Ilmu *omputer, !ni#ersitas *omputer Indonesia

    '() L. N. PM, B. elina,-Information Giding: / e7 /pproach in "eFt Steganography-, on /pplied Computer O /ppliedComputational Science 5/C/CMS