PENELITIAN PEMULA INTERNAL
LAPORAN AKHIR PENELITIAN PENELITIAN PEMULA
KRIPTOGRAFI DENGAN ALGORITMA VERNAM CHIPER DAN STEGANOGRAFI DENGAN METODE END OF FILE (EOF) UNTUK KEAMANAN DATA EMAIL
Oleh :
Eko Hari Rachmawanto
0686.11.2012.458
Christy Atika Sari
0686.11.2011.407
Dibiayai oleh Universitas Dian Nuswantoro Melalui LP2M dengan Nomor Kontrak : 006/A.35-02/UDN.09/II/2013
UNIVERSITAS DIAN NUSWANTORO SEMARANG MEI 2013
HALAMAN PENGESAHAN
ii
RINGKASAN Seiring dengan perkembangan zaman, kebutuhan manusia meningkat, terutama kebutuhan akan informasi. Oleh sebab itu, pengiriman dan penyimpanan data memerlukan suatu proses yang mampu menjamin keamanan dan keutuhan dari data tersebut. Untuk menjamin keamanan dan keutuhan dari suatu data, dibutuhkan suatu proses penyandian. Enkripsi dilakukan ketika data akan dikirim. Proses ini akan mengubah suatu data asal menjadi data rahasia yang tidak dapat dibaca. Sementara itu, proses dekripsi dilakukan oleh penerima data yang dikirim tersebut. Data rahasia yang diterima akan diubah kembali menjadi data asal. Dengan cara penyandian tadi, data asli tidak akan terbaca oleh pihak yang tidak berkepentingan, melainkan hanya oleh penerima yang memiliki kunci dekripsi. Didorong oleh kegunaan yang penting tadi, teknik (algoritma) penyandian telah berkembang sejak zaman dahulu kala. Mulai dari era sebelum masehi, hingga sekarang algoritma penyandian ini selalu berkembang. File merupakan salah satu media yang digunakan sebagai penympanan data pada era komputer sekarang ini. Banyak orang mengirim atau menerima file sebagai komunikasi jarak jauh. Salah satu usaha untuk mengamankan file yaitu dengan mengimplementasikan kriptografi untuk penyandian data, contohnya adalah algoritma Vernam Cipher. Sebagai contoh sistem kriptografi simetri, algoritma ini cukup mampu untuk mengamankan informasi termasuk file. Sehingga algoritma ini dapat digunakan untuk mengamankan file. Dalam hal ketajaman dalam keamanan, diperlukan teknik penyembunyian file ke dalam file lain yang sering kita sebut dengan steganografi. Hal ini untuk mengurangi kecurigaan pihak yang tidak berkepentingan untuk mengolah file. Pada hal ini digunakan teknik penyembunyian file dengan metode End of File supaya tidak terlihat secara jelas. Dengan berdasar pada algoritma Vernam Cipher dan End of File, maka dibuatlah program aplikasi kriptosistem yang digunakan untuk melakukan pengamanan file sehingga hanya orang-orang tertentu saja yang dapat mengolah file. Kata kunci: file, penyandian, kriptosistem, steganografi, algoritma, Vernam Cipher, End of File.
iii
PRAKATA Dengan memanjatkan puji syukur kehadirat Allah, Tuhan yang Maha Pengasih dan Maha Penyayang yang telah melimpahkan segala rahmat-Nya kepada penulis sehingga Laporan Akhir Penelitian dengan judul “Kriptografi dengan algoritma vernam chiper dan steganografi dengan metode end of file (EOF) untuk keamanan data email” dapat penulis selesaikan sesuai dengan rencana karena dukungan dari berbagai pihak yang tidak ternilai besarnya.
Semoga Tuhan Yang Maha Esa memberikan balasan yang lebih besar kepada semua pihak yang membantu penyelesaian laporan akhir penelitian dan pada akhirnya penulis berharap bahwa penulisan laporan akhir ini dapat bermanfaat dan berguna sebagaimana fungsinya.
Semarang,
Mei 2013
Penulis
iv
DAFTAR ISI
LAPORAN AKHIR PENELITIAN ......................................................................... i HALAMAN PENGESAHAN ................................................................................. ii RINGKASAN ........................................................................................................ iii PRAKATA ............................................................................................................. iv DAFTAR ISI ........................................................................................................... v DAFTAR TABEL ................................................................................................. vii DAFTAR GAMBAR ........................................................................................... viii DAFTAR LAMPIRAN .......................................................................................... ix BAB I PENDAHULUAN ....................................................................................... 1 1.1
Latar Belakang ......................................................................................... 1
1.2
Perumusan Masalah .................................................................................. 2
BAB II TINJAUAN PUSTAKA............................................................................. 3 2.1
Data dan Informasi ................................................................................... 3
2.2
File ............................................................................................................ 3
2.3
Algoritma Kriptografi ............................................................................... 4
2.4
Vernam Cipher ......................................................................................... 5
2.4.1
Gambaran Umum .............................................................................. 5
2.4.2
Proses Enkripsi dan Dekripsi ............................................................ 6
2.5
Steganografi .............................................................................................. 8
2.6
Metode End of File ................................................................................. 10
BAB III TUJUAN DAN MANFAAT PENELITIAN .......................................... 11 3.1
Tujuan Penelitian .................................................................................... 11
3.2
Manfaat Penelitian .................................................................................. 11
BAB IV METODE PENELITIAN ....................................................................... 12 4.1
Jenis Penelitian ....................................................................................... 12
4.2
Objek Penelitian ..................................................................................... 12
4.3
Sampel Penelitian ................................................................................... 12
4.4
Metode Pengumpulan Data .................................................................... 12
4.5
Metode Pengembangan Sistem .............................................................. 12
v
4.5.1
Alasan Memilih RAD ..................................................................... 13
4.5.2
Kelebihan RAD ............................................................................... 13
4.5.3
Kondisi Pengembangan Sistem pada RAD ..................................... 14
4.6
Implementasi Perangkat Lunak .............................................................. 15
4.7
Kerangka Pemikiran ............................................................................... 15
BAB V HASIL DAN PEMBAHASAN................................................................ 16 5.1
Analisa dan Kebutuhan Aplikasi Kriptogafi dan Steganografi .............. 16
5.2
Prosedur Persiapan Pembuatan Aplikasi ................................................ 17
5.3
Unit Bahasa Pemodelan .......................................................................... 17
5.3.1
Use Case Diagram ........................................................................... 17
5.3.2
Class Diagram ................................................................................. 20
5.3.3
Activity Diagram ............................................................................. 20
5.3.4
Sequence Diagram .......................................................................... 23
5.4
Desain Input Output (I/O) ...................................................................... 24
5.4.1
Desain I/O Submenu Stego ............................................................. 26
5.4.2
Desain I/O Submenu Unstego ......................................................... 26
5.4.3
Desain I/O Submenu About Us ....................................................... 27
5.5
Implementasi .......................................................................................... 27
5.6
Analisa Percobaan .................................................................................. 29
5.7
Pengujian Program (Testing) .................................................................. 31
5.7.1
Black Box Testing pengujian Graphic User Interface (GUI) ......... 31
5.7.2
White Box Testing dengan Uji Kode Program ............................... 32
BAB VI KESIMPULAN DAN SARAN .............................................................. 36 6.1
Kesimpulan ............................................................................................. 36
6.2
Saran ....................................................................................................... 36
DAFTAR PUSTAKA ........................................................................................... 37 LAMPIRAN .......................................................................................................... 38 I.
Identitas Peneliti ......................................................................................... 38
II. Laporan Kemajuan Penelitian .................................................................... 39
vi
DAFTAR TABEL Tabel 1 : Skenario use case Proses Kripto dan Stego ........................................... 17 Tabel 2 : Skenario use case Proses Unkripto dan Unstego ................................... 18 Tabel 3 : Daftar Aspek Pengujian ......................................................................... 32 Tabel 4 Ringkasan Hasil Pengujian ...................................................................... 32
vii
DAFTAR GAMBAR Gambar 1 : Struktur File ......................................................................................... 4 Gambar 2 : Ilutrasi Kinerja Proses Enkripsi Konvensional .................................... 4 Gambar 3 : Use Case............................................................................................. 19 Gambar 4 : Class Diagram ................................................................................... 20 Gambar 5 : Activity Diagram Kripto dan Stego .................................................... 20 Gambar 6 : Activity Diagram Unkripto dan Unstego ........................................... 21 Gambar 7 : Activity Diagram Enkripsi dan Dekripsi ............................................ 22 Gambar 8 : Activity Diagram Stego pada File ...................................................... 22 Gambar 9 : Activity Diagram Unstego pada File .................................................. 23 Gambar 10 : Sequence Diagram Kripto dan Stego ............................................... 24 Gambar 11 : Sequence Diagram Unkripto dan Unstego ...................................... 24 Gambar 12 : Storyboard Menu Utama .................................................................. 25 Gambar 13 : Storyboard Submenu Stego .............................................................. 26 Gambar 14 : Storyboard Submenu Unstego ......................................................... 26 Gambar 15 : Storyboard Submenu About Us........................................................ 27 Gambar 16 : Tampilan Awal Program .................................................................. 27 Gambar 17 : Tampilan Menu Stego ...................................................................... 28 Gambar 18 : Tampilan Menu Unstego .................................................................. 28 Gambar 19 : Tampilan Message Box Menu About Us ......................................... 28 Gambar 20 : Menu Stego File ............................................................................... 29 Gambar 21 : Tampilan MessageBox Setelah Selesai Stego.................................. 30 Gambar 22 : Menu Unstego File ........................................................................... 30 Gambar 23 : Tampilan MessageBox Setelah Selesai Unstego ............................. 31 Gambar 24 : Graph Kripto Stego .......................................................................... 34
viii
DAFTAR LAMPIRAN
Lampiran 1 Identitas Peneliti dan Laporan Kemajuan Penelitian ......................... 38 Lampiran 2 Uraian Penggunaan Dana .................................................................. 41
ix
BAB I PENDAHULUAN 1.1
Latar Belakang Seiring dengan perkembangan teknologi sekarang ini yang semakin pesat maka proses pengiriman data dapat dilakukan dengan mudah dan melalui berbagai macam media yang telah ada antara lain, melalui media internet dengan menggunakan fasilitas e-mail. Perkembangan yang pesat dalam proses pengiriman data membawa dampak yang besar, yaitu masalah keamanan data yang di kirim. Untuk itu, tidak mungkin mengirim data melalui media-media tersebut secara polos (plain), melainkan harus dilakukan proses pengamanan untuk data yang akan di kirim, salah satunya dilakukan dengan cara melakukan enkripsi pada sebuah file. Kriptografi dapat menjadi jawaban dari masalah tersebut. Sebagai ilmu yang telah diaplikasikan untuk pengamanan data, kriptografi dapat digunakan untuk mengamankan data-data penting pada sebuah file. Data yang terkandung dalam file disandikan atau dienkripsi untuk diubah menjadi simbol tertentu sehingga hanya orang tertentu saja yang dapat mengetahui isi dari data tersebut. Namun pada era sekarang ini masih di rasa kurang dalam pengamanan data menggunakan kriptografi. Setelah file tersebut di enkripsi, kita perlu melakukan penyembunyian file ke dalam file lain supaya pihak yang bukan berkepentingan tidak begitu curiga dalam melihat file tersebut. Langkah seperti ini sering disebut dengan Steganografi. Steganografi merupakan salah satu cara yang sangat efektif untuk mengurangi rasa curiga dari pihak-pihak lain (selain pengirim dan penerima yang sah). Kebanyakan algoritma steganografi menggunakan sebuah kombinasi dari bidang jenis teknik untuk melakukan sebuah tugas dalam penyelubungan pesan rahasia dalam sebuah selubung file. Ada beberapa perbedaan antara steganografi dengan kriptografi. Pada steganografi, penyembunyian atau penyamaran pesan ini dibuat
1
sedemikian rupa sehingga pihak lain tidak mengetahui bahwa ada pesan lain di dalam pesan yang dikirim. Pesan inti tersebut tetap dipertahankan, hanya dalam penyampaiannya dikaburkan atau disembunyikan dengan berbagai cara. Hanya pihak penerima yang sah saja yang dapat mengetahui pesan lain tersebut. Sedang pada kriptografi, karakter pesan diubah atau diacak menjadi bentuk lain yang tidak bermakna. Pesan yang disampaikan dalam kriptografi menjadi mencurigakan karena ketidakbermaknaannya tersebut. Sedang pesan dalam steganografi, terlihat seperti pesan biasa sehingga kecil kemungkinan untuk dicurigai. Namun demikian, bukan berarti tidak ada kekurangan pada steganografi ini. Kelemahan pada steganografi ini terjadi apabila kita mengubah format pesan yang dikirimkan, maka pesan rahasianya pun menjadi hilang. Ada persamaan diantara steganografi dan kriptografi ini yaitu keduanya digunakan secara bersamaan untuk menjamin keamanan pesan rahasianya. Berdasar pada analisa dari masalah tersebut, maka penulis mengusulkan judul penelitian “Kriptografi dengan algoritma vernam chiper dan steganografi dengan metode end of file (EOF) untuk keamanan data email” sebagai bahan pertimbangan dalam proses pengamanan data sehingga diharapkan tidak terjadi pencurian atau penyadapan data. 1.2
Perumusan Masalah Rumusan masalah yang muncul dari latar belakang yang telah di sajikan di atas adalah sebagai berikut : 1. Bagaimana efek perubahan file antara sebelum dan sesudah proses ? 2. Bagaimana pengaruh ukuran data terhadap ukuran media file ?
2
BAB II TINJAUAN PUSTAKA 2.1
Data dan Informasi Data merupakan besaran yang menyampaikan suatu arti. Data komputer disimpan sebagai barisan muatan (listrik) yang diatur dalam satu pola sehingga merepresentasikan sebuah informasi. Dengan kata lain data menunjuk pada bentuk informasi (pola elektris). Data bukan merupakan informasi itu sendiri. Sedang informasi merupakan hasil pengolahan dari sebuah model, formasi, organisasi ataupun suatu perubahan bentuk dari data yang memiliki nilai tertentu dan bisa digunakan untuk menambah pengetahuan bagi yang menerimanya. Informasi juga bisa disebut sebagai hasil pengolahan atau pemrosesan data.
2.2
File File atau Berkas adalah sekumpulan data (informasi) yang berhubungan yang diberi nama dan tersimpan di dalam media penyimpanan sekunder (secondary storage). File memiliki ekstensi. Ekstensi berkas merupakan penandaan jenis berkas lewat nama berkas. Ekstensi biasanya ditulis setelah nama berkas dipisahkan dengan sebuah tanda titik. Pada sistem yang lama (MS-DOS) ekstensi hanya diperbolehkan maksimal 3 huruf, contohnya : exe, bat, com, txt. Batasan itu dihilangkan pada sistem yang lebih baru (Windows), contohnya : mpeg, java. Pada UNIX bahkan dikenal ada file yang memiliki lebih dari satu ekstensi, contohnya : tar.Z, tar.gz. (Sukrisno & Utami, 2007) Struktur pada file terdiri dari 2 bagian yaitu header file dan isi file. Pada header file terdapat kode biner maupun kode ASCII yang berisikan tentang fungsi utama pada file. Pada isi file terdapat isi dari file yang telah terbentuk baik berupa text, lagu, video, dll. Di bawah ini merupakan gambar struktur file yang ada pada semua file.
3
Gambar 1 : Struktur File 2.3
Algoritma Kriptografi Cryptographic system atau cryptosystem adalah suatu fasilitas untuk mengkonversikan plaintext ke ciphertext dan sebaliknya. Dalam sistem ini, seperangkat parameter yang menentukan transformasi pencipheran tertentu disebut suatu set kunci. Proses enkripsi dan dekripsi diatur oleh satu atau beberapa kunci kriptografi (Kromodimoeljo, 2009). Secara umum, kuncikunci yang digunakan untuk proses pengenkripsian dan pendekripsian tidak perlu identik, tergantung pada sistem yang digunakan. Gambar di bawah ini mengilustrasikan kinerja dari proses enkripsi konvensional.
Gambar 2 : Ilutrasi Kinerja Proses Enkripsi Konvensional
Proses enkripsi terdiri dari sebuah algoritma dan sebuah kunci. Kunci adalah sebuah nilai yang terlepas dari pesan asli (plaintext) dan mengontrol
algoritma
yang
dipakai.
Penerapan
algoritma
akan
menghasilkan output yang berbeda sesuai dengan kunci yang digunakan. Mengubah kunci berarti mengubah output dari algoritma yang dipakai. Setelah chipertext dihasilkan, chipertext tersebut dapat diubah kembali menjad pesan asli dengan algoritma dekripsi dan dengan kunci yang sama seperti yang digunakan pada saat enkripsi.
4
2.4 2.4.1
Vernam Cipher Gambaran Umum Vernam cipher merupakan algoritma kriptografi yang ditemukan oleh Mayor J. Maugborne dan G. Vernam. Algoritma ini merupakan algoritma berjenis symmetric key yang artinya bahwa kunci yang digunakan untuk melakukan enkripsi dan dekripsi merupakan kunci yang sama. Dalam proses enkripsi, algoritma ini menggunakan cara stream cipher dimana cipher berasal dari hasil XOR antara bit plaintext dan bit key. Algoritma Vernam cipher diadopsi dari one-time pad cipher, dimana dalam hal ini karakter diganti dengan bit (0 atau 1). Dengan kata lain, Vernam Cipher merupakan versi lain dari one-time pad cipher (Kromodimoeljo, 2009). Dalam proses enkripsi, cipherteks diperoleh dengan melakukan penjumlahan modulo 2 satu bit plainteks dengan satu bit kunci, seperti terlihat pada rumus di bawah ini : ……
c1 = (p1 + k1) mod 2
Persamaan 1
Dimana : c1 = cipher teks p1 = plainteks k1 = kunci Sedangkan dalam proses dekripsi, untuk mendapatkan kembali plainteks, diperoleh dengan melakukan penjumlahan modulo 2 satu bit cipherteks dengan satu bit kunci : …… Persamaan 2
p1 =( c1 - k1 ) mod 2
Pada cipher aliran, bit hanya mempunya dua buah nilai, sehingga proses enkripsi hanya menyebabkan dua keadaan pada bit tersebut, yaitu berubah atau tidak berubah. Dua keadaan tersebut ditentukan oleh kunci enkripsi yang disebut dengan aliran-bit-kunci (keystream). Oleh karena operasi penjumlahan modulo 2 identik dengan operasi bit dengan operator XOR, maka persamaan 1 dapat ditulis secara sederhana sebagai berikut: …… Persamaan 3
c1 = p1 XOR k1
5
Sedangkan pada proses pendekripsian dituliskan: …… Persamaan 4
p1 = c1 XOR k1
Dalam operator logika XOR, hasil akan T (benar) apabila salah satu dari kedua operand (tetapi tidak keduanya) bernilai T atau 1. Atau dengan kata lain, apabila diaplikasikan dalam bit maka operator XOR akan menghasilkan 1 jika dan hanya jika salah satu operand bernilai 1. Contoh : X:
00111010 10101011
Y:
10100100 01010101
Hasil : 10011110 11111110
Sedangkan suatu bilangan dalam biner apabila di- XOR-kan dengan dirinya sendiri akan menghasilkan 0. Contoh : X:
01010101 10101010
Y:
01010101 10101010
Hasil :00000000 00000000 2.4.2
Proses Enkripsi dan Dekripsi Perhitungan di atas merupakan salah satu dasar dalam penerapan algoritma Vernam dalam kriptografi, yaitu suatu string yang diterjemahkan ke dalam biner dapat dienkripsikan dengan suatu kunci tertentu dan dapat pula diperoleh kembali dari pesan sandi dengan menggunakan operator XOR pada kunci yang sama. Dalam algoritma ini, terdapat beberapa langkah untuk proses enkripsi dan dekripsi. Misalnya kita akan mengenkripsi plainteks “Vernam” dengan kunci “Cipher”. Maka langkah-langkahnya adalah :
6
1.
Karakter-karakter yang terdapat pada plainteks dan kunci merupakan karakter ASCII. Maka, ubah plainteks dan kunci menjadi bilangan biner :
2.
ASCII
Biner
Vernam
01010110 01100101 01110010 01101110 01100001 01101101
Cipher
01000011 01101000 01101001 01110000 01100101 01110010
Lalu, kedua bilangan biner itu kita XOR-kan menurut persamaan a : Plainteks
: 01010110 01100101 01110010 01101110 01100001 01101101
Kunci
: 01000011 01101001 01110000 01101000 01100101 01110010
Cipherteks : 00010101 00001100 00000010 00000110 00000100 00011111
Hasil dari XOR tersebut adalah : “00010101 00001100 00000010 00000110 00000100 00011111”. Rangkaian bilangan bit ini merupakan bit cipherteks dalam bentuk biner. Untuk mengetahui nilai ASCII dari cipherteks tersebut, maka kita perlu konversikan rangkaian biner tersebut ke bilangan ASCII. Dengan berdasar pada tabel tersebut, maka dapat kita lihat bahwa rangkaian bit dari cipherteks tersebut mempunyai nilai ASCII :
§ ♀☻♠ ♦ ▼ Proses dekripsi dalam algoritma Vernam Cipher merupakan kebalikan dari proses enkripsi. Cipherteks dari hasil enkripsi di-XOR-kan dengan kunci yang sama. Misalnya dengan mengambil contoh sebelumnya, dimana
cipherteks : “§ ♀ ☻ ♠ ♦ ▼” dan kunci :
“Cipher”. Maka langkah pendekripsiannya adalah sebagai berikut :
7
1.
Ubah karakter ASCII dari cipherteks dan kunci ke dalam rangkaian biner:
2.
ASCII
Biner
§ ♀☻♠ ♦ ▼
00010101 00001100 00000010 00000110 00000100 00011111
Cipher
01000011 01101000 01101001 01110000 01100101 01110010
Lalu, kedua rangkaian biner itu kita XOR-kan dengan berdasar pada persamaan 2 :
3.
Cipherteks
: 00010101 00001100 00000010 00000110 00000100 00011111
Kunci
: 01000011 01101001 01110000 01101000 01100101 01110010
Plainteks
: 01010110 01100101 01110010 01101110 01100001 01101101
Maka didapat rangkaian bit plainteks “01010110 01100101 01110010 01101110 01100001 01101101”. Dengan berdasar pada tabel di atas, maka kita dapat mengubah rangkaian bit menjadi bilangan ASCII, yaitu menjadi : “Vernam”. Terbukti plain teks pada hasil dekripsi adalah sama dengan plainteks pada proses enkripsi.
2.5
Steganografi Steganografi berasal dari bahasa Yunani yaitu Steganós yang berarti menyembunyikan dan Graptos yang artinya tulisan sehingga secara keseluruhan artinya adalah tulisan yang disebunyikan. Secara umum steganografi
merupakan
seni
atau
ilmu
yang
digunakan
untuk
menyembunyikan pesan rahasia dengan segala cara sehingga selain orang yang dituju, orang lain tidak akan menyadari keberadaan dari pesan rahasia tersebut (Setyawan, Muchallil, & Arnia, 2009). Kini, istilah steganografi termasuk penyembunyian data digital dalam file-file komputer. Contohnya, si pengirim mulai dengan file gambar biasa, lalu mengatur warna setiap pixel ke-100 untuk menyesuaikan suatu huruf dalam alphabet (perubahannya begitu halus sehingga tidak ada
8
seorangpun
yang
menyadarinya
jika
ia
tidak
benar-benar
memperhatikannya). Teknik steganografi meliputi banyak sekali metode komunikasi untuk menyembunyikan pesan rahasia (teks atau gambar) di dalam file-file lain yang mengandung teks, image, bahkan audio tanpa menunjukkan ciriciri perubahan yang nyata atau terlihat dalam kualitas dan struktur dari file semula. Metode ini termasuk tinta yang tidak tampak, microdots, pengaturan kata, tanda tangan digital, jalur tersembunyi dan komunikasi spektrum lebar. Tujuan
dari
steganografi
adalah
merahasiakan
atau
menyembunyikan keberadaan dari sebuah pesan tersembunyi atau sebuah informasi. Dalam prakteknya kebanyakan diselesaikan dengan membuat perubahan tipis terhadap data digital lain yang isinya tidak akan menarik perhatian dari penyerang potensial, sebagai contoh sebuah gambar yang terlihat tidak berbahaya. Perubahan ini bergantung pada kunci (sama pada kriptografi) dan pesan untuk disembunyikan. Orang yang menerima gambar kemudian dapat menyimpulkan informasi terselubung dengan cara mengganti kunci yang benar ke dalam algoritma yang digunakan. Pada metode steganografi cara ini sangat berguna jika digunakan pada cara steganografi komputer karena banyak format file digital yang dapat dijadikan media untuk menyembunyikan pesan. Format yang biasa digunakan diantaranya: Format image : bitmap (bmp), gif, pcx, jpeg, dll. Format audio : wav, voc, mp3, dll. Format lain : teks file, html, pdf, dll. Kelebihan steganografi daripada kriptografi adalah pesan-pesannya tidak menarik perhatian orang lain. Pesan-pesan berkode dalam kriptografi yang tidak disembunyikan, walaupun tidak dapat dipecahkan, akan menimbulkan
kecurigaan.
Seringkali,
steganografi
dan
kriptografi
digunakan secara bersamaan untuk menjamin keamanan pesan rahasianya.
9
2.6
Metode End of File Teknik yang digunakan pada digital watermarking beragam tetapi secara umum teknik ini menggunakan redundant bits sebagai tempat menyembunyikan pesan pada saat dilakukan kompresi data, dan kemudian menggunakan kelemahan indera manusia yang tidak sensitive sehingga pesan tersebut tidak ada perbedaan yang terlihat atau yang terdengar. Teknik EOF atau End Of File merupakan salah satu teknik yang digunakan dalam steganografi. Teknik ini menggunakan cara dengan menyisipkan data pada akhir file. Teknik ini dapat digunakan untuk menyisipkan data yang ukurannya sesuai dengan kebutuhan. Ukuran file yang telah disisipkan data sama dengan ukuran file sebelum disisipkan data ditambah dengan ukuran data yang disisipkan ke dalam file tersebut. Teknik inilah yang akan digunakan penulis dalam penelitian ini. Dalam teknik ini, data disisipkan pada akhir file dengan diberi tanda khusus sebagai pengenal start dari data tersebut dan pengenal akhir dari data tersebut (Sukrisno & Utami, 2007).
10
BAB III TUJUAN DAN MANFAAT PENELITIAN 3.1
Tujuan Penelitian Tujuan dari penelitian ini adalah untuk mengamati perubahan file yang terbentuk dari sebelum dan sesudah diproses serta mengetahui pengaruh ukuran file terhadap ukuran media file yang terbentuk sehingga akan
menghasilkan
mengimplementasikan
sebuah
perangkat
algoritma
Vernam
lunak Chiper
yang pada
dapat
Kriptografi
ditambahkan metode End of File pada Steganografi untuk penyandian berupa enkripsi dan dekripsi data dalam pengamanan file. 3.2
Manfaat Penelitian Manfaat yang diperoleh dalam penelitian ini adalah : 1. Manfaat bagi Universitas Sebagai usaha untuk mengamankan sebuah file yang merupakan data penting dimana hanya orang tertentu saja yang berhak mengetahui.
2. Manfaat bagi Akademik Sebagai bahan acuan bagi akademik untuk dijadikan tolak ukur pemahaman dan penguasaan tentang teori yang telah diberikan di bangku kuliah.
3. Manfaat bagi Penulis a. Penulis dapat menerapkan ilmu yang telah diperoleh selama kuliah. b. Memberi bekal pengetahuan yang dapat dipergunakan untuk persiapan dalam menghadapi kerja di masa yang akan datang.
11
BAB IV METODE PENELITIAN 4.1
Jenis Penelitian Penelitian ini merupakan penelitian rekayasa. Dimana penelitian rekayasa merupakan penelitian yang menerapkan ilmu pengetahuan menjadi suatu rancangan, guna mendapatkan suatu kinerja sesuai dengan persyaratan yang ditentukan. Penelitian diarahkan untuk membuktikan bahwa rancangan tersebut memenuhi spesifikasi yang ditentukan.
4.2
Objek Penelitian Objek penelitian adalah pengirim dan penerima pesan berupa email dalam berbagai macam format yang ada di Indonesia.
4.3
Sampel Penelitian Sampel penelitian berupa file dari berbagai jenis yaitu jenis file dokumen (.txt, .doc, .docx, .pdf), jenis file gambar (.jpg, .jpeg, .png), jenis file audio (.mp3, .wav), jenis file video (.mpeg, .dat) dan jenis file executable (.exe) yang nantinya sebagai media penyisipan untuk sebuah pesan yang disembunyikan.
4.4
Metode Pengumpulan Data Data yang dikumpulkan dalam penelitian ini merupakan data sekunder. Data diperoleh dari telaah pustaka dan dokumen yang didapat penulis dari pustaka yang mendukung, informasi dari internet, buku-buku dan artikel dari jurnal.
4.5
Metode Pengembangan Sistem Agar mempermudah dalam pengembangan sistem, maka penulis membangun sebuah sistem yang akan membantu dalam menggambarkan proses penyelesaian masalah. Metode yang sesuai dalam pengembangan sistem ini adalah metode Rapid Aplication Development (RAD). RAD adalah sebuah model proses perkembangan software sekuensial linier yang menekankan siklus perkembangan yang sangat pendek. Model ini merupakan sebuah adaptasi “kecepatan tinggi” dari
12
model sekuensial linier di mana perkembangan cepat dicapai dengan menggunakan pendekatan kontruksi berbasis komponen. 4.5.1
Alasan Memilih RAD Ada beberapa alasan di dalam memilih metode RAD ini antara lain adalah sebagai berikut : -
Apabila menggunakan RAD untuk mendapatkan suatu desain yang dapat diterima oleh konsumen dan dapat dikembangkan dengan mudah.
-
Apabila menggunakan RAD untuk memberikan batasan-batasan pada suatu sistem supaya tidak mengalami perubahan.
-
Apabila menggunakan RAD untuk menghemat waktu dan jika mungkin dapat menghemat biaya serta menghasilkan produk berkualitas.
Dengan menggunakan RAD maka ada beberapa tujuan yang tidak mungkin akan tercapai secara bersama yaitu : -
Kemungkinan terjadi kesalahan sangat kecil karena pihak pengembang tidak mempunyai hak untuk mengubah komponenkomponen yang digunakan dalam mengembangkan suatu sistem.
-
Tingkat kepuasan konsumen yang tinggi karena kebutuhankebutuhan sekunder dari konsumuen harus dikorbankan supaya suatu sistem dapat diselesaikan sesuai jadwal.
-
Biaya pengembangan yang termurah karena dengan menggunakan komponen yang sudah ada dapat menyebabkan biaya yang lebih besar apabila dibandingkan dengan mengembangkan komponen sendiri.
4.5.2
Kelebihan RAD RAD mempunyai banyak pengembangan system yang lain yaitu :
kelebihan
diantara
metode
a.
Hasil Pengembangan bisa lebih cepat dibandingkan SDLC lainnya.
b.
Memerlukan biaya yang lebih sedikit.
c.
Mementingkan dari segi bisnis dan teknik.
d.
Berkonsentrasi pada sudut pandang user.
13
e.
Menyediakan kemungkinan perubahan secara cepat sesuai permintaan user.
f.
Menghasilkan jarak kesesuaian yang kecil antara kebutuhan user dan spesifikasi sistem.
g. 4.5.3
Waktu, biaya dan effort (usaha) minimal.
Kondisi Pengembangan Sistem pada RAD a. Kondisi yang Sesuai dengan RAD 1. Proyek dengan skala kecil sampai medium dengan waktu pendek. 2. Fokus pada lingkup tertentu, misalnya pada objek bisnis yang telah didefinisikan dengan baik. 3. User tahu pasti area yang harus dimiliki aplikasi. 4. Manajemen memiliki komitmen terhadap keterlibatan user. 5. Spesifikasi kebutuhan sudah benar-benar diketahui. 6. Pendefinisian spesifikasi yang tidak memerlukan waktu lama. 7. Anggota tim memiliki keahlian yang baik. 8. Komposisi tim stabil. 9. Ada kontrol proyek yang efektif. b. Kondisi yang Tidak Sesuai dengan RAD 1. Proyek yang terlalu besar dan kompleks. 2. Proyek yang bersifat aplikasi real-time atau menangani hal-hal yang kritis. 3. Sistem dengan komputasi tinggi. 4. Lingkup dan objek bisnis proyek belum jelas. 5. Pengumpulan spesifikasi kebutuhan membutuhkan waktu lama. 6. Banyak orang yang terlibat dalam sebuah proyek tersebut. 7. Membutuhkan lingkup daerah yang cukup luas. 8. Tim proyek besar dengan koordinasi tinggi. 9. Komitmen pihak managemen dengan user rendah. 10. Banyak teknologi baru digunakan untuk membangun aplikasi.
14
4.6
Implementasi Perangkat Lunak Perangkat lunak kriptografi dan steganografi ini diimplementasikan untuk para pengirim paket data berupa file melalui media email pada jaringan internet. Hal ini bertujuan untuk memberikan tingkat keamanan pada saat pengiriman data supaya tidak dapat diketahui oleh pihak-pihak yang tidak berkepentingan. Dalam penelitian ini, alat bantu pemrograman yang akan digunakan adalah Software Visual Basic 6.0 untuk membantu dalam pembuatan aplikasi kriptografi yang nantinya dikombinasikan dengan steganografi.
4.7
Kerangka Pemikiran Kerangka pemikiran pada penelitian ini dapat digambarkan sebagai berikut : Adanya serangan dari luar untuk mengetahui isi pesan email tersebut.
Pengirim data mengirimkan pesan melalui email Menganalisa penyebab pesan dapat terbaca oleh pihak lain.
Kriptografi dengan algoritma vernam chiper dan steganografi dengan metode end of file (EOF) untuk keamanan data email
15
Outcome : - Software yang mampu mendekripkan pesan sekaligus menyembunyikan pesan pada file lain.
BAB V HASIL DAN PEMBAHASAN 5.1
Analisa dan Kebutuhan Aplikasi Kriptogafi dan Steganografi Tujuan dari proses analisa kebutuhan aplikasi adalah untuk mengetahui sifat dari kebutuhan sistem sehingga mempermudah dalam perancangan.
Tujuan
lain
dari
analisa
ini
adalah
untuk
mendokumentasikan sifat program tersebut. Proses analisis meliputi analisis kebutuhan perangkat lunak dan perangkat keras, termasuk analisis terhadap kebutuhan sistem. Kebutuhan-kebutuhan tersebut adalah : a. Spesifikasi kebutuhan perangkat lunak : Sistem operasi Microsoft Windows XP Sistem operasi yang digunakan adalah Microsoft Windows XP, karena sistem operasi ini terbukti sebagai salah satu sistem operasi terbaik yang ada sekarang. Software Microsoft Visual Basic 6.0 Bahasa pemprograman yang digunakan untuk perancangan sistem aplikasi adalah Microsoft Visual Basic 6.0, dikarenakan bahasa ini merupakan bahasa mudah dipelajari dan mendukung dalam perhitungan aritmatika dan logika yang dibutuhkan dalam pembuatan aplikasi. Software Microsoft Word 2007 Software ini digunakan dalam penelitian untuk mendukung aplikasi sebagai salah satu fasilitas dalam penyimpanan hasil enkripsi dan dekripsi data. Software Rational Rose 03 Kebutuhan akan pembuatan UML untuk mendukung proram aplikasi pada tahap pembuatan model. b. Spesifikasi kebutuhan perangkat keras : Prosesor minimal pentium IV. Harddisk minimal 20 GB. Memori DDR minimal 128 MB.
16
Layar display minmal 14’. Satu buah keyboard dan mouse standard. 5.2
Prosedur Persiapan Pembuatan Aplikasi Langkah – langkah pembuatan aplikasi Kriptosistem dalam penelitian ini adalah sebagai berikut : a. Mengumpulkan materi –materi yang dibutuhkan. b. Melakukan pembatasan terhadap materi tersebut. c. Mempersiapkan dan melakukan instalasi perangkat keras. d. Mempersiapkan dan melakukan instalasi perangkat lunak sesuai dengan spesifikasi kebutuhan.
5.3 5.3.1
Unit Bahasa Pemodelan Use Case Diagram Dalam bahasa pemodelan ini, penulis menggunakan 2 (dua) buah aktor yaitu pengirim dan penerima. Aktor tersebut mempunyai karakteristik yang berbeda dalam hal menggunakan aplikasi dan menggunakan file yang telah di proses. Pengirim adalah seseorang yang nantinya akan mengirimkan sebuah file yang telah dienkripsi dan disembunyikan pada file induk atau file lain supaya
tidak
terlihat
kasat
mata
oleh
pihak-pihak
yang tidak
berkepentingan. Penerima adalah seseorang yang akan menerima file yang dikirimkan oleh pengirim. Penerima bertugas untuk membuka file yang telah dikirimkan tersebut kemudian didekripsi dan dipisahkan dengan file induk atau file yang dikirim sebelumnya. Tabel 1 : Skenario use case Proses Kripto dan Stego Use-case :
Proses Kripto dan Stego
Primary actor :
Pengirim
Goal :
File berhasil disembunyikan
17
Precondition :
Memasukkan nama file asli yang akan disembunyikan
Memasukkan nama file induk tempat file tersembunyi
Memasukkan kata sandi/kata kunci
Trigger :
Pengirim ingin menyembunyikan file
Scenario: 1
Pengirim membuka aplikasi Steganographer.
2
Pengirim memasukkan nama file yang akan disembunyikan.
3
Pengirim memasukkan nama file untuk tempat file disembunyikan.
4
Pengirim memberikan kata kunci sebagai pelengkap sandi.
5
Pengirim menekan tombol Stego untuk memprosesnya.
Alternate Flow :
Pengirim keluar dari aplikasi
Priority :
Moderate priority
Frequency of use :
Frequent
Tabel 2 : Skenario use case Proses Unkripto dan Unstego Use-case :
Proses Unkripto dan Unstego
Primary actor :
Penerima
Goal :
Mengembalikan File yang tersembunyi
Precondition :
Memasukkan nama file hasil Stego untuk dikembalikan seperti semula
Memasukkan kata sandi/kata kunci
18
Trigger :
Penerima ingin mengembalikan file yang disembunyikan
Scenario: 1
Penerima membuka aplikasi Steganographer.
2
Penerima memasukkan nama file yang disembunyikan.
3
Penerima memberikan kata kunci sebagai pelengkap sandi.
4
Penerima menekan tombol Unstego untuk memprosesnya.
Alternate Flow :
Penerima keluar dari aplikasi
Priority :
Moderate priority
Frequency of use :
Frequent
Di bawah ini merupakan gambar use case yang penulis pakai untuk mengimplementasikan ke dalam sebuah model.
Memasukkan File yang akan di Kripto dan Stego
Pengirim
Memasukkan File yang di Unkripto dan Unstego
Memasukkan File Inang/Induk
Input Password Kunci Unkripto dan Unstego
Proses Kripto dan Stego
<
>
Proses UnKripto dan Unstego
Input Password Kunci Kripto dan Stego
<>
Kriptografi
Steganografi
<>
<>
Enkripsi
Stego
Penerima
Gambar 3 : Use Case
19
<>
<>
Kriptografi
Steganografi
<>
<>
Dekripsi
Unstego
5.3.2
Class Diagram Pada class diagram, penulis menggunakan 4 macam kelas yaitu kelas plain text, chiper text, operation dan hasil. Kelas-kelas tersebut saling berhubungan dan mempunyai keterkaitan. Di bawah ini merupakan gambar class diagram yang penulis maksud :
Gambar 4 : Class Diagram 5.3.3
Activity Diagram Activity Diagram yang penulis buwat saat ini menggunakan 2 macam model diagram yaitu diagram saat kripto dan stego serta diagram pada saat unkripto dan unstego. Baca Ukuran File
Baca Media File
Membuka File Hasil dg penambahan "_Stego" pada akhir penamaan file (dalam modus tulis)
> 10000 byte < 10000 byte Membuka File Hasil dg penambahan "_Stego" pada akhir penamaan file (dalam modus tulis)
Penghitungan Looping Pembacaan File
Baca Sebanyak 10000 byte Enkripsi Keseluruhan File
Enkripsi Data yang Dibaca
Memasukkan ke File Hasil
Memasukkan ke File Hasil Alokasikan Memory sebanyak Sisanya
sisa
sisa > 10000 byte
tidak sisa
Gambar 5 : Activity Diagram Kripto dan Stego
20
Gambar 5 menujukkan alur yang berjalan pada saat file yang akan di proses dengan file induknya. Pada gambar selanjutnya penulis membuatkan alur yang berjalan pada saat file hasil gabungan di pecah kembali menjadi file asli.
Baca Hexa Decimal File dari Belakang sampai ketemu tanda "|"
Baca Media File
Kurangi ukuran File dengan File Induk
Baca Ukuran File dari Depan sampai tanda "|"
Membuat File Hasil dg penambahan "_Unstego" pada akhir penamaan file
> 10000 byte < 10000 byte Membuat File Hasil dg penambahan "_Unstego" pada akhir penamaan file
Perhitungan Looping Pembacaan File
Baca Sebanyak 10000 byte
Dekripsi Keseluruhan File
Dekripsi Data yang Di Baca Memasukkan ke dalam File Hasil
Memasukkan ke dalam File Hasil sisa > 10000 byte
sisa
tidak sisa
Gambar 6 : Activity Diagram Unkripto dan Unstego
21
Alokasikan Memory Sebanyak Sisanya
Gambar 7 : Activity Diagram Enkripsi dan Dekripsi
Gambar 8 : Activity Diagram Stego pada File
22
Gambar 9 : Activity Diagram Unstego pada File 5.3.4
Sequence Diagram Penulis juga membuatkan model sequence untuk memperjelas dari model-model sebelumnya. Dalam sequence diagram juga terdapat 2 bentuk model yang penulis buat yaitu diagram pada saat Kripto Stego dan Unkripto Unstego. Di bawah ini merupakan model-model yang telah penulis buat supaya memudahkan pengguna dalam menggunakan program yang nantinya akan dibuat.
23
File Asli
Pengirim : Pengirim
File Induk
Kunci
Stego
1: Masukkan File Asli 2: Masukkan File Induk 3: Berikan Kunci 4: Klik Tombol Stego
Gambar 10 : Sequence Diagram Kripto dan Stego
File Stego
Penerima : Penerima
Kunci
Unstego
1: Masukkan File Stego 2: Masukkan Kunci 3: Klik Tombol Unstego 4: Jika Kunci Salah File tetap terbentuk tetapi tidak dapat di Buka
Gambar 11 : Sequence Diagram Unkripto dan Unstego 5.4
Desain Input Output (I/O) Dalam pembuatan pada aplikasi yang penulis buat menggunakan perangkat lunak berupa Visual Basic 6.0. Di bawah ini merupakan desain input output yang telah di buat adalah sebagai berikut :
24
Gambar 12 : Storyboard Menu Utama
Pada gambar Storyboard di atas, terdapat garis silang yang mewakili gambar background. Submenu – submenu dalam menu utama di atas antara lain : a.
Submenu Stego Submenu Stego merupakan submenu yang digunakan untuk menyembunyikan file.
b.
Submenu Unstego Submenu Unstego merupakan submenu yang digunakan untuk mengembalikan file yang telah disembunyikan sebelumnya.
c.
Submenu About Us Submenu About Us merupakan submenu yang berisi tentang data diri pembuat program.
d.
Submenu Keluar Submenu Keluar merupakan submenu yang digunakan untuk keluar dari aplikasi.
25
5.4.1
Desain I/O Submenu Stego
Gambar 13 : Storyboard Submenu Stego Pada submenu stego terdapat 3 (tiga) text box yaitu 2 text box untuk memasukkan file dan 1 (satu) text box untuk kunci, 3 (tiga) command yaitu 2 (dua) command untuk mengambil file dan 1 (satu) command untuk proses stego serta 1 (satu) label untuk kunci.
5.4.2
Desain I/O Submenu Unstego
Gambar 14 : Storyboard Submenu Unstego Pada submenu unstego terdapat 3 (tiga)
text box yaitu untuk
memasukkan file, memasukkan kata kunci dan untuk memberikan ekstensi
26
file yang nantinya akan terbentuk. Selain itu terdapat 2 (dua) command yaitu untuk mengambil file dan proses unstego. Kemudian terdapat 1 (satu) label untuk kunci. 5.4.3
Desain I/O Submenu About Us
Gambar 15 : Storyboard Submenu About Us Pada submenu about us tanda “X” yang terletak pada bagian kanan atas adalah tombol untuk keluar dari submenu, garis silang besar yang ada di tengah merupakan isi dari biodata pembuat program dan tombol “OK” pada kanan bawah merupakan tombol untuk mengakhiri submenu. 5.5
Implementasi Program Kripto dan Stego ini dimulai dengan menekan tombol “menu” yang ada pada sisi kiri atas aplikasi dilanjutkan memilih “Stego” terlebih dahulu.
Gambar 16 : Tampilan Awal Program
27
Gambar 17 : Tampilan Menu Stego
Gambar 18 : Tampilan Menu Unstego
Gambar 19 : Tampilan Message Box Menu About Us
28
5.6
Analisa Percobaan Penulis melakukan beberapa percobaan untuk membuktikan kinerja program yang telah dibuat. Salah satu diantaranya adalah seperti gambar di bawah ini :
Gambar 20 : Menu Stego File
Pada gambar di atas, penulis akan mencoba membuat file yang akan di kripto dan stego. Pertama-tama langkah yang dilakukan adalah klik tombol menu dan pilih stego. Gambar 20 menunjukkan bahwa penulis menghendaki
file
asli
yang
akan
disembunyikan
adalah
“02
Maafkan.mp3” pada partisi “C” dalam directory “coba”. File Spoof merupakan file induk di mana file ini sebagai tempat persembunyian dari file asli. Tahap kedua adalah memilih file induk di mana file asli nantinya akan disembunyikan. Dalam hal ini, penulis menghendaki file “8. Memori.pdf” sebagai tempat persembunyian file aslinya. Selanjutnya yang dilakukan adalah memberikan kata kunci sebagai penyempurna keamanan data. Pada gambar terdapat 3 tanda seru (!) yang pada sebenarnya adalah 3 (tiga) huruf sandi. Kemudian tekan tombol Stego untuk memproses pada langkah-langkah selanjutnya.
29
Gambar 21 : Tampilan MessageBox Setelah Selesai Stego
Setelah semua berjalan dengan lancar maka akan muncul tampilan Message Box seperti pada gambar 21 yang menunjukkan bahwa file telah selesai di proses. Pada gambar terlihat bahwa file hasil stego tersimpan pada partisi “C” pada direktori “coba” dengan nama file “8. Memori.pdf_STEGO.pdf” kemudian klik tombol OK untuk mengakhiri prosesnya.
Gambar 22 : Menu Unstego File
Pada gambar di atas menunjukkan tampilan menu Unstego. Menu ini dapat diakses dengan menekan menu kemudian klik tombol Unstego. Di sini penulis mencoba mengembalikan file yang telah di proses Stego sebelumnya dengan cara memasukkan file yang telah ter-Stego. Pilihlah file dengan menekan tombol “File Stego” kemudian cari file yang terstego.
30
Pada gambar 22 dapat kita lihat lokasi filenya yaitu pada partisi “C” direktori “coba” dengan nama file “8. Memori.pdf_STEGO.pdf”. Langkah selanjutnya terdapat kolom untuk menentukan ekstensi file, pada gambar menunjukkan ekstensi file yaitu “mp3”. Kemudian memasukkan kata kunci yang telah dijanjikan sebelumnya pada sebuah perjanjian sehingga hanya pihak tertentu saja yang dapat mengetahui kata kunci demi keamanan file tersebut. Setelah itu, tekan tombol “UNSTEGO” untuk memulai proses pemisahan file menjadi file asli kembali.
Gambar 23 : Tampilan MessageBox Setelah Selesai Unstego Apabila proses telah selesai maka akan muncul tampilan Message Box seperti pada gambar 23 yang menunjukkan bahwa file telah terunstego dengan baik dan benar. Setelah itu tekan tombol “OK” untuk mengakhiri perintah. Dengan ditekannya tombol OK pada program maka berakhirlah proses penyembunyian file dan file asli tersebut dapat dibaca kembali oleh penerima. 5.7
Pengujian Program (Testing) Hasil perancangan akhir dari Aplikasi Kriptografi dan Steganografi ini telah diujikan. Metode pengujian yang penulis gunakan adalah Graphical User Interface dan tanggapan atau respon dari user.
5.7.1
Black Box Testing dengan pengujian Graphic User Interface (GUI) Pengujian Graphical User Interface ( GUI ) untuk aplikasi ini dilakukan dengan menguji melalui beberapa aspek dibawah ini :
31
Tabel 3 : Daftar Aspek Pengujian No.
Aspek Pengujian
1.
Apakah semua menu dapat dituju / diklik/ disorot secara tepat oleh pointer mouse ?
2.
Apakah setiap operasi mouse dikenali dengan baik oleh aplikasi yang akan meresponnya?
Berdasarkan hasil pengujian, dapat diperoleh kesimpulan bahwa performansi program cukup baik. Semua rancangan program telah tersusun dalam menu dengan tepat dan setiap kontrol yang terdapat dalam tiap – tiap menu juga dapat diakses secara tepat. Mouse dengan mudah dapat mengakses tiap menu dalam program secara tepat pula memberikan respon sesuai dengan konteks interaktifnya.
Tabel 4 Ringkasan Hasil Pengujian Faktor Pengujian
5.7.2
Status Output
Tombol Submenu Stego
Tombol Submenu Unstego
Tombol Submenu About Us
Penekanan Tombol
White Box Testing dengan Uji Kode Program Private Sub Command3_Click() 'fungsi stego!! Dim data As String ………………………………………………(1) Dim x As Long Dim y As Long Dim z As Long Dim pjg As Long Dim ext As String Dim encpjg As String encpjg = FileLen(Text2.Text) ………………………………….(2) ext = Mid(StrReverse(Text2.Text), 1, 4)
32
ext = StrReverse(ext) pjg = FileLen(Text1.Text) FileCopy Text2.Text, Text2.Text & "_STEGO" & ext ……….(3) x = FileLen(Text1.Text) Mod 10000 ………………………….(4) y = FileLen(Text1.Text) - x Open Text1.Text For Binary Access Read As #1 Open Text2.Text & "_STEGO" & ext For Binary Access Write As #2 ………………………………………………………………….(5) Put #2, FileLen(Text2.Text) + 1, "" If pjg >= 10000 Then ………………………………………...(6) For z = 1 To y Step 10000……………………………………..(7) data = Space$(10000) ………………………………………...(8) Get #1, z, data Put #2, , encrypt(data, Text5.Text) Next y=x data = Space$(y) ……………………………………………(9) Get #1, , data Put #2, , encrypt(data, Text5.Text) Put #2, , "|" & encrypt(encpjg, Text5.Text) Else
…………………………………………………........(10)
data = Space$(pjg) …………………………………………(11) Get #1, 1, data Put #2, , encrypt(data, Text5.Text) Put #2, , "|" & encrypt(encpjg, Text5.Text) End If Close #2 Close #1 MsgBox "selesai!!" & vbCrLf & "file ter-stego di " & Text2.Text & "_STEGO" & ext, vbOKOnly, "stego" …………………...(12) End Sub
33
Dari penggalan code program Kripto Stego di atas didapatkan graph tertutup seperti gambar 24 seperti dibawah ini.
Gambar 24 : Graph Kripto Stego Dari graph tersebut di atas kemudian dapat dihitung Cyclometic Complecity-nya untuk menentukan berapa banyak jumlah independent path yang harus kita uji dari modul tersebut. Cyclometic Complexity dapat dihitung dengan rumus sebagai berikut:
V(G) = jumlah edge – jumlah node +2
V(G) = jumlah kondisi +1, atau
V(G) = Ri
Sehingga dengan menggunakan dua rumus di atas dapat dihitung V(G) dari modul tersebut sebagai berikut : V(G)a = jumlah edge – jumlah node +2 = 13 – 12 + 2 =3
34
V(G)b = jumlah kondisi + 1 =2+1 =3
Dari perbandingan di atas terbukti bahwa V(G)a = V(G)b yang membuktikan bahwa program kripto stego berjalan dengan baik pada aplikasi yang telah diuji cobakan.
35
BAB VI KESIMPULAN DAN SARAN 6.1
Kesimpulan Dari hasil kriptografi
perancangan dan pembuatan program
dengan
menggunakan
algoritma
Vernam
aplikasi
Cipher
dan
Steganografi dengan metode End of File (EoF) ini, dapat diambil kesimpulan sebagai berikut : 1. Dari hasil percobaan yang telah dilakukan membuktikan bahwa aplikasi dapat mengacak dan menyembunyikan file dengan aman dan tidak menimbulkan kecurigaan pada pihak lain. Pada file hasil, tidak menimbulkan efek yang dapat merusak ataupun mengganggu kinerja file sebelumnya. 2. Hasil akhir yang diperoleh dari penggabungan 2 buah file yang berbeda ekstensi menghasilkan ukuran yang lebih besar yaitu merupakan gabungan dari ukuran kedua buah file tersebut yang dikarenakan file yang disembunyikan juga mempunyai kapasitas ukuran file sendiri. 6.2
Saran Saran-saran yang berguna untuk pengembangan system dan aplikasi ini adalah sebagai berikut : 1. Dalam penggunaan aplikasi ini disarankan untuk menggunakan file sesuai kebutuhan dan disesuaikan dengan hardware pada komputer pengguna karena makin besar ukuran file, makin tinggi kinerja pada komputer anda. 2. Pada aplikasi ini diperlukan adanya menu help untuk membantu penggunaan aplikasi dalam hal mengoperasikan langkah-langkah yang akan dilakukan.
36
DAFTAR PUSTAKA Kromodimoeljo, S. (2009). Teori dan Aplikasi Kriptografi. (S. Kromodimoeljo, Ed.) (p. 458). SPK IT Consulting. Setyawan, H., Muchallil, S., & Arnia, F. (2009). Implementasi Steganografi dengan Metode LSB. Jurnal Rekayasa Elektrika, 8(1), 6. Banda Aceh. Sukrisno, & Utami, E. (2007). IMPLEMENTASI STEGANOGRAFI TEKNIK EOF DENGAN GABUNGAN ENKRIPSI RIJNDAEL , SHIFT CIPHER DAN FUNGSI HASH MD5. Seminar Nasional Teknologi 2007 (SNT 2007), (November), 1-16.
37
LAMPIRAN Lampiran 1 Identitas Peneliti dan Laporan Kemajuan Penelitian I.
Identitas Peneliti 1. Judul
: Kriptografi dengan algoritma vernam chiper dan steganografi dengan metode end of file (EOF) untuk keamanan data email
2. Ketua Peneliti a. Nama Lengkap
: Eko Hari Rachmawanto, M.Kom., M.CS.
b. Bidang Keahlian
: Teknik Informatika
c. Jabatan Struktural
: -
d. Jabatan Fungsional
: Tenaga Pengajar
e. Unit Kerja
:
f. Alamat Surat
: Jl. Karonsih Utara V/2 Ngaliyan, Semarang
g. Telepon/Fax
: 085641016956/-
h. E-mail
: rachmawanto@research.dinus.ac.id
3. Tim Penelitian No
1
2
Nama/NPP
Bidang Ilmu
Instansi
Eko Hari Rachmawanto, M.Kom., M.CS 0686.11.2012.458 Christy Atika Sari, M.Kom., M.CS 0686.11.2011.407
Teknik Informatika
Udinus
Alokasi Waktu (jam/mggu) 5
Teknik Informatika
Udinus
5
4. Objek Penelitian
: Keamanan data pada email
5. Luaran Penelitian
:
1.
Model
2.
Prototype/Rancang Bangun
3.
Aplikasi
4.
Jurnal Internal
38
Uraian Tugas Ketua, Riset Anggota, Penyusunan Laporan
6. Masa Pelaksanaan Penelitian -
Mulai
:
4 Februari 2013
-
Berakhir
:
29 Juni 2013
7. Anggaran Penelitian -
Dibiayai Tahap I
:
Rp. 1.050.000,00
-
Dibiayai Tahap II
:
Rp. 450.000,00
8. Lokasi Penelitian
:
Laboratorium D.2.F Udinus
9. Pencapaian Target
:
Dapat menyembunyikan pesan agar orang lain tidak mengetahui maksud yang terkandung di dalam pesan tersebut.
II. Laporan Kemajuan Penelitian
1. Indikator Pencapaian Dalam penelitian yang kami kerjakan sampai sekarang, mampu menyelesaikan beberapa aspek penting sebagai tujuan utama dalam penelitian yaitu dapat menyelesaikan program menggunakan visual basic 6.0 tentang keamanan data email menggunakan gabungan kriptografi dan steganografi.
2. Laporan Kemajuan a. Kegiatan penelitian berjalan sesuai dengan jadwal penelitian yang telah ditetapkan. b. Kemajuan yang sudah diperoleh hingga laporan kemajuan disusun adalah sebagai berikut : No
Kegiatan
Penyelesaian Mulai Selesai 4 Februari 15 Februari
1
Survey Ruang Lingkup
2
Analisis Sistem dan Definisi 18 Februari
39
1 Maret
Ket 100 % 100 %
40
Lampiran 2 Uraian Penggunaan Dana Dibiayai oleh Universitas Dian Nuswantoro Semarang melalui LPPM dengan nomor kontrak : 006/A.35-02/UDN.09/II/2013
A. Tabel Rincian Penerimaan Dana Penelitian No 1 2 3 4
Keterangan Dana yang disetujui Dana yang diterima Penggunaan saat ini Saldo
Tahap 1 (70%) Rp 1.050.000,00 Rp 1.050.000,00 Rp 1.050.000,00 Rp 0,00
Tahap 2 (30%) Rp 450.000,00 -
Total Rp 1.500.000,00 Rp 1.050.000,00 Rp 1.050.000,00 Rp 0,00
B. Uraian Penggunaan Dana Penelitian 1. Anggaran Untuk Pelaksana No
Nama
1 2
Eko Hari Rachmawanto, M.Kom, M.CS. Christy Atika Sari, M.Kom., M.CS. TOTAL
Alokasi Waktu 100 jam 100 jam
Harga Satuan
Jumlah
Rp. 2.500,00 Rp. 2.000,00
Rp 250.000,00 Rp 200.000,00 Rp. 450.000,00
2. Anggaran Untuk Komponen Peralatan No
Nama Alat
Kegunaan
Harga Satuan
TOTAL
Harga Seluruhnya Rp.
3. Anggaran Untuk Bahan (Material Penelitian) No
Nama Bahan Materi
Kegunaan
TOTAL
Unit
Harga Satuan
Harga Seluruhnya
Rp.
41
42
Lampiran 3 Bukti Pembayaran
43
44