Sabtu, 11 Februari 2017

PERANCANGAN APLIKASI PEMBELAJARAN KRIPTOGRAFI METODE SANDI VIGENÈRE SKRIPSI Oleh: JIMY JUANDA NIM.1144054 PROGRAM STUDI TEKNIK INFORMATIKA SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER STMIK TIME MEDAN 2015
 i ABSTRAK
Kriptografi merupakan bidang pengetahuan yang menggunakan persamaan matematis untuk melakukan proses enkripsi maupun dekripsi. Teknik ini digunakan untuk mengkonversi data ke dalam bentuk kode-kode tertentu, dengan tujuan agar informasi yang tersimpan tidak dapat dibaca oleh siapapun kecuali orang-orang yang memiliki hak. Dalam penelitian ini, dirancang aplikasi pembelajaran kriptografi yang mengimplementasikan cara enkripsi dan dekripsi dengan menggunakan metode sandi Vigenère. Hasil penelitian adalah aplikasi pembelajaran kriptografi metode sandi Vigenère yang dapat menyandikan pesan rahasia dan juga membantu menambah pemahaman pengguna yang ingin mempelajari tentang kriptografi terutama metode sandi Vigenère.
Kata Kunci: Enkripsi, Dekripsi, Vigenère, Kriptografi ii ABSTRACT Cryptography is a study based on mathematical equations to perform the encryption and decryption process. This technique is used to convert data into specific codes, so that the secret information can not be read anyone, except people who have privileges. In this research, a learning application of cryptography that implemented encryption and decription was designed using Vigenère cipher method. The result is a learning application of cryptography using Vigenère cipher method that can encrypt a confidential messages and also increase the understanding of the users who want to learn about cryptography especially Vigenère cipher method. Keywords: Encryption, Decryption, Vigenère, Cryptography
 iii KATA PENGANTAR
 Pertama sekali penulis ingin mengucapkan puji dan syukur kepada Tuhan Yang Maha Esa dan orang tua penulis yang telah memberikan dukungan dan semangat secara mental sehingga penulis dapat menyelesaikan skripsi ini dengan baik. Atas rahmat-Nya maka penulis dapat mengatasi hambatan yang ada. Skripsi ini merupakan salah satu persyaratan dalam penyelesaian studi program Teknik Informatika pada STMIK TIME Medan. Pada penulisan skripsi ini penulis mengambil judul “PERANCANGAN APLIKASI PEMBELAJARAN KRIPTOGRAFI METODE SANDI VIGENÈRE”. Penulis berharap agar skripsi yang telah dikerjakan ini dapat membawa manfaat bagi berbagai pihak. Dalam menyelesaikan skripsi ini, penulis mendapat banyak bantuan dari berbagai pihak. Oleh karena itu, melalui kesempatan yang baik ini, penulis ingin berterimakasih kepada :
 1. Orang tua penulis yang senantiasa memberikan motivasi dan dukungan kepada penulis dalam menyelesaikan skripsi ini.
 2. Ibu Feriani Astuti, M.Kom, selaku Dosen Pembimbing I yang telah membantu dan membimbing penulis dalam menyelesaikan skripsi ini.
3. Bapak Huliman, M.Kom, selaku Dosen Pembimbing II yang juga telah membantu dan membimbing penulis dalam menyelesaikan skripsi ini.
 4. Bapak Octara Pribadi, S.Kom, yang juga turut membantu dan membimbing penulis dalam menyelesaikan skripsi ini.
5. Bapak Simon Kanggali, selaku Ketua Yayasan STMIK TIME Medan. iv
 6. Bapak Prof. Chainur Arrasyid, S.H, selaku Ketua BPH STMIK TIME Medan.
7. Bapak Prof. Harlem Marpaung, Ph.D, selaku Ketua STMIK TIME Medan. 8. Bapak Jackri Hendrik, S.T, M.Kom, selaku Puket I STMIK TIME Medan. 9. Bapak Hendri, S.Kom, M. Kom, selaku Ketua Program Studi Teknik Informatika STMIK TIME Medan. Namun sebagai seorang mahasiswa yang masih dan harus terus belajar, penulis menyadari keterbatasan yang ada. Jika terdapat kekurangan dan ketidaksempurnaan pada skripsi ini, penulis mengharapkan saran, kritikan dan masukan untuk perkembangan selanjutnya. Medan, April 2015 Jimy Juanda v DAFTAR ISI ABSTRAK .........................................................................................................i ABSTRACT.......................................................................................................ii KATA PENGANTAR.......................................................................................iii DAFTAR ISI......................................................................................................v DAFTAR GAMBAR.........................................................................................viii DAFTAR TABEL .............................................................................................xiii BAB I PENDAHULUAN...............................................................................1 1.1 Latar Belakang Masalah..............................................................1 1.2 Identifikasi Maslaah ....................................................................2 1.3 Batasan Masalah..........................................................................2 1.4 Tujuan dan Manfaat Penelitian ...................................................3 1.5 Sistematika Penulisan .................................................................3 BAB II LANDASAN TEORI..........................................................................5 2.1 Aplikasi .......................................................................................5 2.2 Kriptografi...................................................................................6 2.2.1 Definisi Kriptografi............................................................7 2.2.2 Tujuan Kriptografi .............................................................8 2.2.3 Sejarah Kriptografi.............................................................9 2.2.4 Algoritma Kriptografi ........................................................11 2.3 Vigenère Cipher..........................................................................13 BAB III METODE PENELITIAN ..................................................................20 vi 3.1 Tempat dan Jadwal Penelitian.....................................................20 3.2 Kerangka Kerja ...........................................................................20 3.2.1 Identifikasi Masalah...........................................................21 3.2.2 Metode Pengumpulan Data ................................................22 3.2.3 Analisa Sistem....................................................................22 3.2.4 Perancangan Sistem ...........................................................22 3.2.5 Pembangunan Sistem .........................................................22 3.2.6 Uji Coba Sistem .................................................................23 BAB IV ANALISA DAN PERANCANGAN ..................................................24 4.1 Analisa.........................................................................................24 4.2 Perancangan ................................................................................24 4.2.1 Flowchart...........................................................................25 4.2.2 Perancangan User Interface ...............................................26 1. Menu Vigenère Cipher..................................................27 a. Submenu Tutorial Enkripsi Angka ..........................27 b. Submenu Tutorial Enkripsi Huruf...........................32 c. Submenu Tutorial Dekripsi Angka..........................38 d. Submenu Tutorial Dekripsi Huruf...........................44 e. Submenu Enkripsi....................................................50 f. Submenu Dekripsi....................................................56 2. Menu Tentang.................................................................60 a. Submenu Teori ........................................................60 b. Submenu Pembuat Aplikasi ....................................63 c. Submenu Aplikasi....................................................64 vii 3. Menu Bantuan ................................................................64 4. Menu Keluar...................................................................65 BAB V HASIL DAN PEMBAHASAN............................................................66 5.1 Hasil ............................................................................................66 5.2 Pembahasan.................................................................................89 BAB VI KESIMPULAN DAN SARAN...........................................................91 6.1 Kesimpulan .................................................................................91 6.2 Saran............................................................................................92 DAFTAR PUSTAKA........................................................................................93 viii DAFTAR GAMBAR Gambar 2.1 Proses Enkripsi dan Deskripsi Algoritma Simetris.........................11 Gambar 2.2 Proses Enkripsi dan Deskripsi Algoritma Asimetris.......................12 Gambar 3.1 Kerangka Kerja ...............................................................................21 Gambar 4.1 Flowchart Proses Enkripsi ..............................................................25 Gambar 4.2 Flowchart Proses Dekripsi..............................................................26 Gambar 4.3 Rancangan form Tutorial Enkripsi Vigenère Cipher Metode Angka (1/4) .........................................................................................................27 Gambar 4.4 Rancangan form Tutorial Enkripsi Vigenère Cipher Metode Angka (2/4) .........................................................................................................28 Gambar 4.5 Rancangan form Tutorial Enkripsi Vigenère Cipher Metode Angka (3/4) .........................................................................................................30 Gambar 4.6 Rancangan form Tutorial Enkripsi Vigenère Cipher Metode Angka (4/4) .........................................................................................................31 Gambar 4.7 Rancangan form Tutorial Enkripsi Vigenère Cipher Metode Huruf (1/4) ..........................................................................................................33 Gambar 4.8 Rancangan form Tutorial Enkripsi Vigenère Cipher Metode Huruf (2/4) ..........................................................................................................34 Gambar 4.9 Rancangan form Tutorial Enkripsi Vigenère Cipher Metode Huruf (3/4) ..........................................................................................................35 Gambar 4.10 Rancangan form Tutorial Enkripsi Vigenère Cipher Metode Huruf (4/4) ..........................................................................................................37 ix Gambar 4.11 Rancangan form Tutorial Dekripsi Vigenère Cipher Metode Angka (1/4) .........................................................................................................39 Gambar 4.12 Rancangan form Tutorial Dekripsi Vigenère Cipher Metode Angka (2/4) .........................................................................................................40 Gambar 4.13 Rancangan form Tutorial Dekripsi Vigenère Cipher Metode Angka (3/4) .........................................................................................................41 Gambar 4.14 Rancangan form Tutorial Dekripsi Vigenère Cipher Metode Angka (4/4) .........................................................................................................43 Gambar 4.15 Rancangan form Tutorial Dekripsi Vigenère Cipher Metode Huruf (1/4) ..........................................................................................................45 Gambar 4.16 Rancangan form Tutorial Dekripsi Vigenère Cipher Metode Huruf (2/4) ..........................................................................................................46 Gambar 4.17 Rancangan form Tutorial Dekripsi Vigenère Cipher Metode Huruf (3/4) ..........................................................................................................47 Gambar 4.18 Rancangan form Tutorial Dekripsi Vigenère Cipher Metode Huruf (4/4) ..........................................................................................................49 Gambar 4.19 Rancangan form Enkripsi (Input)..................................................50 Gambar 4.20 Rancangan MessageBox tampilkan langkah .................................53 Gambar 4.21 Rancangan form Enkripsi (Output) ...............................................53 Gambar 4.22 Rancangan form Enkripsi (Output + Langkah).............................55 Gambar 4.23 Rancangan form Dekripsi (Input)..................................................56 Gambar 4.24 Rancangan form Dekripsi (Output)...............................................58 Gambar 4.25 Rancangan form Dekripsi (Output + Langkah).............................59 Gambar 4.26 Rancangan tab pertama dari form Teori........................................61 x Gambar 4.27 Rancangan tab kedua dari form Teori...........................................62 Gambar 4.28 Rancangan tab ketiga dari form Teori...........................................63 Gambar 4.29 Rancangan MessageBox informasi pembuat aplikasi ...................64 Gambar 4.30 Rancangan MessageBox informasi aplikasi ..................................64 Gambar 4.31 Rancangan ListBox lbtampil..........................................................65 Gambar 5.1 Tampilan Utama..............................................................................66 Gambar 5.2 Tampilan Submenu Vigenère Cipher ..............................................67 Gambar 5.3 Tampilan Submenu Tentang............................................................67 Gambar 5.4 Tampilan Submenu Bantuan............................................................67 Gambar 5.5 Tampilan Tutorial Enkripsi Vigenère Cipher Metode Angka (1/4) ........................................................................................................68 Gambar 5.6 Tampilan Tutorial Enkripsi Vigenère Cipher Metode Angka (2/4) ........................................................................................................69 Gambar 5.7 Tampilan Tutorial Enkripsi Vigenère Cipher Metode Angka (3/4) ........................................................................................................69 Gambar 5.8 Tampilan Tutorial Enkripsi Vigenère Cipher Metode Angka (4/4) ........................................................................................................70 Gambar 5.9 Tampilan Tutorial Enkripsi Vigenère Cipher Metode Huruf (1/4) .........................................................................................................71 Gambar 5.10 Tampilan Tutorial Enkripsi Vigenère Cipher Metode Huruf (2/4) .........................................................................................................71 Gambar 5.11 Tampilan Tutorial Enkripsi Vigenère Cipher Metode Huruf (3/4) .........................................................................................................72 Gambar 5.12 Tampilan Tutorial Enkripsi Vigenère Cipher Metode xi Huruf (4/4) .........................................................................................................73 Gambar 5.13 Tampilan Tutorial Dekripsi Vigenère Cipher Metode Angka (1/4) ........................................................................................................74 Gambar 5.14 Tampilan Tutorial Dekripsi Vigenère Cipher Metode Angka (2/4) ........................................................................................................74 Gambar 5.15 Tampilan Tutorial Dekripsi Vigenère Cipher Metode Angka (3/4) ........................................................................................................75 Gambar 5.16 Tampilan Tutorial Dekripsi Vigenère Cipher Metode Angka (4/4) ........................................................................................................76 Gambar 5.17 Tampilan Tutorial Dekripsi Vigenère Cipher Metode Huruf (1/4) .........................................................................................................77 Gambar 5.18 Tampilan Tutorial Dekripsi Vigenère Cipher Metode Huruf (2/4) .........................................................................................................77 Gambar 5.19 Tampilan Tutorial Dekripsi Vigenère Cipher Metode Huruf (3/4) .........................................................................................................78 Gambar 5.20 Tampilan Tutorial Dekripsi Vigenère Cipher Metode Huruf (4/4) .........................................................................................................79 Gambar 5.21 Tampilan Enkripsi (Input).............................................................80 Gambar 5.22 Tampilan Cari pada Enkripsi (Input) ............................................81 Gambar 5.23 Tampilan Enkripsi (Input) setelah meng-import file.....................81 Gambar 5.24 Tampilan MessageBox tampilkan langkah....................................82 Gambar 5.25 Tampilan Enkripsi (Output) ..........................................................83 Gambar 5.26 Tampilan Simpan pada Enkripsi (Output) ....................................84 Gambar 5.27 Tampilan Enkripsi (Output + Langkah)........................................85 xii Gambar 5.28 Tampilan Dekripsi (Input).............................................................85 Gambar 5.28 Tampilan Cari pada Dekripsi (Input) ............................................86 Gambar 5.30 Tampilan Dekripsi (Input) setelah meng-import file ....................87 Gambar 5.31 Tampilan Dekripsi (Output)..........................................................88 xiii DAFTAR TABEL Tabel 2.1 Tabel Subsitusi Angka Kriptografi Sandi Vigenère............................15 Tabel 2.2 Bujur Sangkar Vigenère Cipher..........................................................17 Tabel 2.3 Potongan Tabula Recta Baris ke-C.....................................................18 Tabel 3.1 Jadwal Penelitian.................................................................................20 1 BAB I PENDAHULUAN 1.1. Latar Belakang Masalah Masalah keamanan dan kerahasiaan data merupakan salah satu aspek penting pada sebuah sistem pengiriman informasi. Dalam hal ini, sangat terkait dengan betapa pentingnya informasi tersebut dikirim dan diterima oleh orang yang berkepentingan. Informasi akan tidak berguna lagi apabila di tengah proses pengiriman, informasi itu disadap atau dibajak oleh orang yang tidak berhak. Kriptografi adalah ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan, integritas data, serta otentikasi. Ilmu sandi (kriptografi) sendiri telah ada sejak lama. Tercatat dalam sejarah bahwa Julius Caesar, seorang kaisar Romawi menggunakan penyandian untuk menyampaikan pesan rahasia saat perang. Enkripsi ialah proses mengamankan suatu informasi dengan membuat informasi tersebut tidak dapat dibaca tanpa bantuan pengetahuan atau alat khusus. Sedangkan dekripsi merupakan algoritma atau cara yang dapat digunakan untuk membaca informasi yang telah dienkripsi untuk kembali dapat dibaca. Sandi Vigenère sebenarnya merupakan pengembangan dari sandi Caesar. Pada sandi Caesar, setiap huruf pada teks digantikan dengan huruf lain yang memiliki perbedaan tertentu pada urutan alfabet. Misalnya pada sandi Caesar dengan geseran 3, A menjadi D, B menjadi E dan seterusnya. Sandi Vigenère terdiri dari beberapa sandi Caesar dengan nilai geseran yang berbeda. 2 Berdasarkan uraian di atas, maka penulis bermaksud untuk mempelajari sandi Vigenère dengan merancang suatu perangkat lunak pembelajaran sekaligus mengimplementasikan sandi Vigenère dalam sebuah aplikasi. Oleh karena itu, penulis mengambil skripsi dengan judul “Perancangan Aplikasi Pembelajaran Kriptografi Metode Sandi Vigenère”. 1.2. Identifikasi Masalah Adapun identifikasi masalah dalam penulisan skripsi ini adalah bagaimana merancang aplikasi pembelajaran kriptografi metode sandi Vigenère untuk menghasilkan pesan yang bersifat rahasia, dimana informasi atau isi dari pesan tersebut tidak akan mudah diketahui oleh pihak yang tidak memiliki hak akses. 1.3. Batasan Masalah Adapun batasan masalah penulisan skripsi ini adalah sebagai berikut. 1. Input pesan dibatasi hanya file berekstensi .txt dan hanya mengandung huruf tanpa karakter enter dan simbol. Sedangkan output hasil penyandian dapat disimpan dalam bentuk file berekstensi .txt yang dapat dibuka dengan aplikasi Notepad. 2. Perancangan menggunakan aplikasi Visual Studio 2010 menggunakan bahasa VB.net. 3 1.4. Tujuan dan Manfaat Penelitian Tujuan dari penelitian tugas akhir ini adalah menghasilkan suatu aplikasi pembelajaran yang memiliki fasilitas untuk mengamankan atau menyembunyikan informasi dan pesan yang akan dikirimkan. Adapun manfaat yang dapat diperoleh dan penulisan skripsi adalah sebagai berikut. 1. Bagi penulis, yaitu dapat menambah pemahaman mengenai kriptografi terutama tentang metode sandi Vigenère. 2. Bagi pengguna, yaitu dapat menambah pemahaman pengguna mengenai sandi Vigenère dan juga pengguna dapat menyandikan pesan rahasia yang hendak dikirimkan tanpa takut dibaca oleh orang yang tidak memiliki hak dengan menggunakan aplikasi ini. 3. Bagi STMIK TIME, yaitu sebagai bahan referensi mengenai kriptografi metode sandi Vigenère. 1.5. Sistematika Penulisan Adapun sistematika penulisan skripsi ini adalah sebagai berikut. BAB I PENDAHULUAN Dalam bab ini, penulis menguraikan latar belakang masalah, identifikasi masalah, batasan masalah, tujuan dan manfaat penelitian, dan sistematika penulisan. BAB II LANDASAN TEORI Dalam bab ini, penulis menguraikan tentang aplikasi, kriptografi, dan kriptografi metode sandi Vigenère. 4 BAB III METODE PENELITIAN Pada bab ini, penulis membahas kerangka kerja penelitian, metode pengumpulan data, pembangunan sistem, dan uji coba sistem. BAB IV ANALISA DAN PERANCANGAN Dalam bab ini, penulis menyajikan analisa sistem yang akan dibangun, perancangan sistem secara umum, perancangan flowchart, perancangan form serta penjabaran dari rancangan sistem yang telah dibuat. BAB V HASIL DAN PEMBAHASAN Dalam bab ini, penulis menguraikan cara menjalankan aplikasi yang dirancang mulai dari awal sampai akhir serta pembahasan tentang hasil perancangan aplikasi. BAB VI KESIMPULAN DAN SARAN Dalam bab ini, penulis menyampaikan kesimpulan dan saran yang berguna untuk penelitian lanjutan dan pengembangan aplikasi. 5 BAB II LANDASAN TEORI 2.1. Aplikasi Aplikasi berasal dari kata application yang artinya penerapan, lamaran, penggunaan. Aplikasi adalah program siap pakai yang dibuat untuk melaksanakan suatu fungsi bagi pengguna atau aplikasi yang lain dan dapat digunakan oleh sasaran yang dituju. Adapun beberapa pengertian aplikasi diantaranya. a. Menurut Hendrayudi Aplikasi adalah kumpulan perintah program yang dibuat untuk melakukan pekerjaan-pekerjaan tertentu. b. Menurut Hengky W.Pramana Aplikasi adalah suatu unit perangkat lunak yang dibuat untuk melayani kebutuhan akan beberapa aktivitas seperti sistem perniagaan, game, pelayanan masyarakat, periklanan, atau semua proses yang dilakukan manusia. c. Menurut Harip Santoso Aplikasi adalah suatu kelompok file (Form, Class, Report) yang bertujuan untuk melakukan aktivitas tertentu yang saling terkait. d. Menurut Ibisa Aplikasi adalah alat bantu untuk mempermudah dan mempercepat proses pekerjaan dan bukan merupakan beban bagi penggunanya (http://berbagiilmu-mifa309.blogspot.com/2012/05/pengertian-aplikasi.html). 6 Aplikasi adalah suatu subkelas perangkat lunak komputer yang memanfaatkan kemampuan komputer langsung untuk melakukan suatu tugas yang diinginkan pengguna. Biasanya dibandingkan dengan perangkat lunak sistem yang mengintegrasikan berbagai kemampuan komputer, tapi tidak secara langsung menerapkan kemampuan tersebut untuk mengerjakan suatu tugas yang menguntungkan pengguna. Contoh utama perangkat lunak aplikasi adalah pengolah kata, lembar kerja, dan pemutar media. Beberapa aplikasi yang digabung bersama menjadi suatu paket kadang disebut sebagai suatu paket atau suite aplikasi (application suite). Contohnya adalah Microsoft Office dan OpenOffice.org, yang menggabungkan suatu aplikasi pengolah kata, lembar kerja, serta beberapa aplikasi lainnya. Aplikasi-aplikasi dalam suatu paket biasanya memiliki antarmuka pengguna yang memiliki kesamaan sehingga memudahkan pengguna untuk mempelajari dan menggunakan tiap aplikasi. Sering kali, aplikasi memiliki kemampuan untuk saling berinteraksi satu sama lain sehingga menguntungkan pengguna. Contohnya, suatu lembar kerja dapat dibenamkan dalam suatu dokumen pengolah kata walaupun dibuat pada aplikasi lembar kerja yang terpisah (http://id.wikipedia.org/wiki/Aplikasi). 2.2. Kriptografi Kehidupan di masa ini dilingkupi oleh kriptografi. Mulai transaksi di mesin ATM, transaksi di bank, transaksi dengan kartu kredit, percakapan melalui telepon genggam, mengakses internet, sampai mengaktifkan peluru kendali pun menggunakan kriptografi. Begitu pentingnya kriptografi untuk keamanan informasi (information security), sehingga jika berbicara mengenai masalah 7 keamanan yang berkaitan dengan penggunaan komputer, maka orang tidak bisa memisahkannya dengan kriptografi (Munir, 2006:1). 2.2.1 Definisi Kriptografi Kriptografi berasal dari bahasa Yunani, menurut bahasa dibagi menjadi dua, yaitu kripto dan graphia. Kripto berarti secret (rahasia) dan graphia berarti writing (tulisan). Menurut terminologinya, kriptografi adalah ilmu dan seni untuk menjaga keamanan pesan ketika pesan dikirim dari suatu tempat ke tempat yang lain (Ariyus, 2006: 9). Kriptografi, secara umum adalah ilmu dan seni untuk menjaga kerahasiaan berita. Selain pengertian tersebut terdapat pula pengertian ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan data, keabsahan data, integritas data, serta autentikasi data. Tidak semua aspek keamanan informasi ditangani oleh kriptografi. Berikut adalah istilah-istilah yang digunakan dalam bidang kriptografi. 1. Plain text adalah pesan yang hendak dikirimkan (berisi data asli). 2. Cipher text adalah pesan yang tersandi yang merupakan hasil enkripsi. 3. Enkripsi adalah proses pengubahan plain text menjadi cipher text. 4. Dekripsi adalah kebalikan dari enkripsi yakni mengubah cipher text menjadi plain text, sehingga berupa data awal/asli. 5. Kunci adalah suatu bilangan yang dirahasiakan yang digunakan dalam proses enkripsi dan dekripsi (http://bwahyudi.staff.gunadarma.ac.id/Downloads/files/13543/kriptografi- 01.doc). 8 2.2.2 Tujuan Kriptografi Ada empat tujuan mendasar dari ilmu kriptografi ini yang juga merupakan aspek keamanan informasi, yaitu. 1. Kerahasiaan (confidentiality), adalah layanan yang digunakan untuk menjaga agar pesan tidak dapat dibaca oleh pihak-pihak yang tidak berhak. Di dalam kriptografi, layanan ini direalisasikan dengan menyandikan pesan menjadi cipher text. Misalnya pesan “Harap datang pukul 8” disandikan menjadi “TrxC#45motyptre!%”. Istilah lain yang senada dengan confidentiality adalah secrery dan privacy yang artinya kerahasiaan juga. 2. Integritas data (data integrity), adalah layanan yang menjamin bahwa pesan masih asli, utuh atau belum pernah dimanipulasi selama pengiriman. Dengan kata lain, aspek keamanan ini dapat diungkapkan sebagai pertanyaan: “Apakah pesan yang diterima masih asli atau tidak mengalami perubahan?”. Untuk menjaga integritas data, sistem harus memiliki kemampuan untuk mendeteksi manipulasi pesan oleh pihak-pihak yang tidak berhak, antara lain penyisipan, penghapusan, dan layanan ini direalisasikan dengan menggunakan tanda-tangan digital (digital signature). Pesan yang telah ditandatangani menyiratkan bahwa pesan yang dikirim adalah asli. 3. Otentikasi (authentication), adalah layanan yang berhubungan dengan identifikasi, baik mengidentifikasi kebenaran pihak-pihak yang berkomunikasi (user authentication atau entity authentication) maupun mengidentifikasi kebenaran sumber pesan (data origin authentication). 9 Dua pihak yang saling berkomunikasi harus dapat mengotentikasi satu sama lain sehingga ia dapat memastikan sumber pesan. Pesan lain, aspek keamanan ini dapat diungkapkan sebagai pertanyaan: “Apakah pesan yang diterima benar-benar berasal dari pengirim yang benar?”, Otentikasi sumber pesan secara implisit juga memberikan kepastian integritas data, sebab jika pesan telah dimodifikasi berarti sumber pesan sudah tidak benar. Oleh karena itu, layanan integritas data selalu dikombinasikan dengan layanan otentikasi sumber pesan. Di dalam kriptografi, layanan ini direalisasikan dengan menggunakan tanda-tangan digital (digital signature). Tanda-tangan digital menyatakan sumber pesan. 4. Nirpenyangkalan (non-repudiation), adalah layanan untuk mencegah entitas yang berkomunikasi melakukan penyangkalan, yaitu pengirim pesan menyangkal melakukan pengiriman atau penerima pesan menyangkal telah menerima pesan. Sebagai contoh misalkan pengirim pesan memberi otoritas kepada penerima pesan untuk melakukan pembelian, namun kemudian pengirim menyangkal telah memberikan otoritas tersebut (Munir, 2006:9). 2.2.3 Sejarah Kriptografi Kriptografi mempunyai sejarah yang sangat menarik dan panjang. Kriptografi sudah digunakan 4000 tahun yang lalu yang diperkenalkan oleh orang-orang Mesir untuk mengirim pesan ke pasukan militer yang berada di lapangan dan agar pesan tersebut tidak terbaca oleh pihak musuh walaupun kurir pembawa pesan tersebut tertangkap oleh musuh. 10 Pada zaman Romawi kuno, dikisahkan pada suatu saat ketika Julius Caesar ingin mengirimkan satu pesan rahasia kepada seorang Jendral di medan perang. Pesan tersebut harus dikirimkan melalui seorang kurir, tetapi karena pesan tersebut mengandung rahasia, Julius Caesar tidak ingin pesan tersebut terbuka di tengah jalan. Di sini Julius Caesar memikirkan bagaimana mengatasinya, yaitu dengan cara mengacak pesan tersebut menjadi suatu pesan yang tidak dapat dipahami oleh siapapun kecuali hanya dapat dipahami oleh Jendralnya saja. Tentu sang Jendral telah diberi tahu sebelumnya bagaimana cara membaca pesan yang teracak tersebut, karena telah mengetahui kuncinya. Yang dilakukan Julius Caesar adalah mengganti semua susunan alfabet dari a, b, c, & yaitu a menjadi d, b menjadi e, c menjadi f dan seterusnya. Selama bertahun-tahun kriptografi menjadi bidang khusus yang hanya dipelajari oleh pihak militer seperti agen keamanan Nasional Amerika (Nasional Security Agency), Uni Soviet, Inggris, Prancis, Israel, dan negara-negara lainnya telah membelanjakan miliaran dolar untuk mengamankan komunikasinya dari pihak luar, tetapi pihak militer tersebut juga selalu mempelajari kode-kode rahasia negara lain, dengan adanya persaingan ini, maka kriptografi terus berkembang sesuai dengan perkembangan zaman. Namun pada 30 tahun terakhir ini, kriptografi tidak hanya dimonopoli oleh pihak militer saja. Hal yang sama juga dilakukan oleh individu-individu yang menginginkan pesan dan komunikasi yang dikirimkan tidak diketahui oleh pihak lain, dan setiap individu berhak mengamankan informasi keluarganya, pekerjaan, bisnis, dan lainnya. Apalagi pada zaman sekarang ini persaingan yang begitu 11 tinggi, sehingga banyak individu yang rela mengeluarkan sekian dolar hanya untuk menjaga kerahasiaannya (Ariyus, 2006: 11). 2.2.4 Algoritma Kriptografi Algoritma dalam kriptografi dibagi menjadi dua, yaitu. 1. Algoritma simetris atau sering disebut algoritma kriptografi konvensional adalah algoritma yang menggunakan kunci yang sama untuk proses enkripsi dan proses deskripsi. Algoritma kriptografi simetris dibagi menjadi dua kategori yaitu algoritma aliran (Stream Ciphers) dan algoritma blok (Block Ciphers). Dimana pada algoritma aliran, proses penyandiannya akan beriorientasi pada satu bit/byte data. Sedangkan pada algoritma blok, proses penyandiannya berorientasi pada sekumpulan bit/byte data (per blok). Adapun contoh algoritma kunci simetris adalah Data Encryption Standard (DES), Blowfish, Twofish, MARS, International Data Encryption Algoritm (IDEA), 3DES (DES diaplikasikan 3 kali), Advanced Encryption Standard (AES). Gambar 2.1 Proses Enkripsi dan Deskripsi Algoritma Simetris (Sumber: http://www.erdisusanto.com/2012/10/konsep-dasar-kriptografi-simetrisdan.html) Enkripsi Dekripsi Cipher text Kunci Plain text Plain text 12 2. Algoritma asimetris adalah algoritma yang menggunakan kunci yang berbeda untuk proses enkripsi dan deskripsi. Dimana kunci enkripsi dapat disebarkan kepada umum dan dinamakan sebagai kunci publik (public key), sedangkan kunci deskripsi disimpan untuk digunakan sendiri dan dinamakan sebagai kunci pribadi (private key). Oleh karena itu, kriptografi ini dikenal pula dengan nama kriptografi kunci publik (public key cryptography). Adapun contoh algoritma yang menggunakan kunci asimetris adalah Riverst Shamir Adleman (RSA) dan Elliptic Curve Cryptography (ECC). Adapun pada kriptografi asimetris, dimana setiap pelaku sistem informasi akan memiliki sepasang kunci, yaitu kunci publik dan kunci pribadi, dimana kunci publik di distribusikan kepada umum, sedangkan kunci pribadi disimpan untuk diri sendiri. Artinya bila A ingin mengirimkan pesan kepada B, A dapat menyandikan pesannya dengan menggunakan kunci publik B, dan bila B ingin membaca surat tersebut, ia perlu mendeskripsikan surat itu dengan kunci privatnya. Dengan demikian kedua belah pihak dapat menjamin asal surat serta keaslian surat tersebut (http://www.erdisusanto.com/2012/10/konsep-dasar-kriptografi-simetrisdan.html). Gambar 2.2 Proses Enkripsi dan Deskripsi Algoritma Asimetris (Sumber: http://www.erdisusanto.com/2012/10/konsep-dasar-kriptografisimetris-dan.html) Enkripsi Dekripsi Cipher text Kunci Umum Plain text Plain text Kunci Pribadi 13 2.3. Vigenère Cipher Vigenère Cipher atau Sandi Vigenère adalah metode menyandikan teks alfabet dengan menggunakan deretan sandi Caesar berdasarkan huruf-huruf pada kata kunci. Sandi Vigenère merupakan bentuk sederhana dari sandi substitusi polialfabetik. Kelebihan sandi ini dibandingkan sandi Caesar dan sandi monoalfabetik lainnya adalah sandi ini tidak begitu rentan terhadap metode pemecahan sandi yang disebut analisis frekuensi. Giovan Batista Belaso menjelaskan metode ini dalam buku La cifra del. Sig. Giovan Batista Belaso (1553); dan disempurnakan oleh diplomat Perancis Blaise de Vigenère, pada 1586. Pada abat ke-19, banyak orang yang mengira Vigenère adalah penemu sandi ini, sehingga, sandi ini dikenal luas sebagai "Sandi Vigenère". Sandi ini dikenal luas karena cara kerjanya mudah dimengerti dan dijalankan, dan bagi para pemula sulit dipecahkan. Pada saat kejayaannya, sandi ini dijuluki le chiffre indéchiffrable (bahasa Prancis: 'sandi yang tak terpecahkan'). Metode pemecahan sandi ini baru ditemukan pada abad ke-19. Pada tahun 1854, Charles Babbage menemukan cara untuk memecahkan sandi Vigenère. Metode ini dinamakan tes Kasiski karena Friedrich Kasiski lah yang pertama mempublikasikannya. Sandi Vigenère sebenarnya merupakan pengembangan dari sandi Caesar. Pada sandi Caesar, setiap huruf plain text digantikan dengan huruf lain yang memiliki perbedaan tertentu pada urutan alfabet. Misalnya pada sandi Caesar dengan geseran 3, A menjadi D, B menjadi E dan seterusnya. Sandi Vigenère terdiri dari beberapa sandi Caesar dengan nilai geseran yang berbeda. 14 Untuk menyandikan suatu pesan, digunakan sebuah tabel alfabet yang disebut tabel Vigenère (Tabel 2.2). Tabel Vigenère berisi alfabet yang dituliskan dalam 26 baris, masing-masing baris digeser satu urutan ke kiri dari baris sebelumnya, membentuk ke-26 kemungkinan sandi Caesar. Setiap huruf disandikan dengan menggunakan baris yang berbeda-beda, sesuai kata kunci yang diulang Misalnya, plain text yang hendak disandikan adalah perintah "Serbu Berlin": serbuberlin, Sedangkan kata kunci antara pengirim dan tujuan adalah "Pizza", "PIZZA" diulang sehingga jumlah hurufnya sama banyak dengan plain text: PIZZAPIZZAP. Huruf pertama pada plain text, S, disandikan dengan menggunakan baris berjudul P, huruf pertama pada kata kunci. Pada baris P dan kolom S di tabel Vigenère, terdapat huruf H. Demikian pula untuk huruf kedua, digunakan huruf yang terletak pada baris I (huruf kedua kata kunci) dan kolom E (huruf kedua plain text), yaitu huruf M. Proses sebalinya (disebut dekripsi), dilakukan dengan mencari huruf teks bersandi pada baris berjudul huruf dari kata kunci. Misalnya, pada contoh di atas, untuk huruf pertama, carilah huruf H (huruf pertama teks tersandi) pada baris P (huruf pertama pada kata kunci), yang terdapat pada kolom S, sehingga huruf pertama adalah S. Lalu M terdapat pada baris I di kolom E, sehingga diketahui huruf kedua plain text adalah E, dan seterusnya hingga didapat perintah "serbuberlin" (http://id.wikipedia.org/wiki/Sandi_Vigenere). Sandi Vigenère digunakan oleh Tentara Konfiderasi pada perang Sipil America (American Civil War). Perang sipil terjadi setelah sandi Vigenère berhasil dipecahkan. Sandi Vigenère adalah algoritma menyandikan teks alfabet 15 dengan menggunakan deretan sandi Caesar berdasarkan huruf-huruf pada kata kunci (http://mzivara.blogspot.com/2011/04/desain-dan-analisis-keamananjaringan.html). Bila pada teknik di setiap cipher text selalu menggantikan nilai dari setiap plain text tertentu (tidak peduli apakah jumlah dari cipher text-nya yang ekivalen dengan plain text tertentu satu atau lebih) pada teknik substitusi Vigenère setiap cipher text bisa saja memiliki banyak kemungkinan plain text-nya (Ariyus, 2006: 33). Teknik dari subtitusi Vigenère bisa dilakukan dengan dua cara, yaitu. 1. Angka Teknik subtitusi Vigenère dengan menggunakan angka dengan menukarkan huruf dengan angka, teknik ini hampir sama dengan teknik Shift Cipher. Tabel 2.1 Tabel Substitusi Angka Kriptografi Sandi Vigenère Alfabet A B C D E F G H I J K L M Nilai Vigenère 0 1 2 3 4 5 6 7 8 9 10 11 12 Alfabet N O P Q R S T U V W X Y Z Nilai Vigenère 13 14 15 16 17 18 19 20 21 22 23 24 25 (Sumber: Ariyus, 2006: 34) Tabel 2.1 merupakan langkah untuk mencari cipher text yaitu dengan substitusi angka, dimana huruf A memiliki nilai 0, B memiliki nilai 1, dan seterusnya. 16 Rumus dalam algoritma Vigenère. Enkripsi: Ci =(Pi+Ki) mod 26 ................................................................................(2.1) Dekripsi: Pi = (Ci-Ki) mod 26 untuk Ci >= Ki .......................................................(2.2) Pi = (Ci+26-Ki) mod 26 untuk Ci <= Ki ................................................(2.3) Keterangan: Ci = Nilai desimal karakter cipher text ke-i Pi = Nilai desimal karakter plain text ke-i Ki = Nilai desimal karakter kunci ke-i Sebagai contoh, jika plain text adalah STMIKTIME dan kunci adalah KAMPUS maka proses enkripsi yang terjadi adalah sebagai berikut. Plain text : STMIKTIME Key : KAMPUSKAM Cipher text : CTYXELSMQ Pada contoh di atas kata kunci KAMPUS diulang sedemikian rupa hingga panjang kunci sama dengan panjang plain text-nya. Jika dihitung dengan rumus enkripsi Vigenère (2.1), plain text huruf pertama S (yang memiliki nilai Pi =18) akan dilakukan pergeseran dengan huruf K (yang memiliki Ki=10) maka prosesnya sebagai berikut. Ci = (Pi+Ki) mod 26 Ci = (18 + 10) mod 26 Ci = 28 mod 26 Ci = 2 Didapatkan hasil Ci = 2 maka huruf cipher text dengan nilai 2 adalah C . Begitu seterusnya dilakukan pergeseran sesuai dengan kunci pada setiap huruf hingga semua plain text telah terenkripsi menjadi cipher text. Setelah 17 semua huruf terenkripsi maka proses dekripsinya dapat dihitung menggunakan rumus dekripsi (2.2) sebagai berikut. Pi = (Ci-Ki) mod 26 Pi = ( 2 – 10 ) + 26 Pi = –8 + 26 Pi = 18 Didapatkan hasil Pi = 18 maka huruf plain text dengan nilai 18 adalah S. Begitu seterusnya dilakukan pergeseran sesuai dengan kunci pada setiap huruf hingga semua cipher text telah terdekripsi menjadi plain text. 2. Huruf Teknik subtitusi Vigenère dengan huruf bisa menggunakan panduan tabel 2.2. di bawah ini. Tabel 2.2 Bujur Sangkar Vigenère Cipher (Sumber: Munir, 2006: 80) 18 Kolom paling kiri dari Tabel 2.2. menyatakan huruf-huruf kunci, sedangkan baris paling atas menyatakan huruf-huruf plain text. Setiap baris di dalam bujursangkar menyatakan huruf-huruf cipher text yang diperoleh dengan sandi Caesar, yang mana jumlah pergeseran huruf plain text ditentukan nilai numerik huruf kunci tersebut (yaitu, a=0, b=1, c=2, …, z=25). Sebagai contoh, huruf kunci c (=2) menyatakan huruf-huruf plain text digeser sejauh 2 huruf ke kanan (dari susunan alfabetnya), sehingga huruf-huruf cipher text pada baris C dapat dilihat pada tabel 2.3 berikut. Tabel 2.3 Potongan Tabula Recta Baris ke-C C D E F G H I J K L M N O P Q R S T U V W X Y Z A B Bujursangkar Vigènere digunakan untuk memperoleh cipher text dengan menggunakan kunci yang sudah ditentukan. Jika panjang kunci lebih pendek daripada panjang plain text, maka kunci diulang penggunaannya (sistem periodik). Bila panjang kunci adalah m, maka periodenya dikatakan m. Sebagai contoh, jika plain text adalah STMIKTIME dan kunci adalah KAMPUS, maka penggunaan kunci secara periodik sebagai berikut. Plain text : STMIKTIME Key : KAMPUSKAM Untuk mendapatkan cipher text dari teks dan kunci di atas, untuk huruf plain text pertama S, ditarik garis vertikal dari huruf S dan ditarik garis mendatar dari huruf K, perpotongannya adalah pada kotak yang berisi huruf C. Dengan cara yang sama, ditarik garis vertikal dari huruf T dan 19 ditarik garis mendatar pada huruf A, perpotongannya adalah pada kotak yang juga berisi berisi huruf T. hasil enkripsi seluruhnya adalah sebagai berikut. Plain text : STMIKTIME Key : KAMPUSKAM Cipher text : CTYXELSMQ Algoritma enkripsi jenis ini sangat dikenal karena mudah dipahami dan diimplementasikan. Teknik untuk menghasilkan cipher text bisa dilakukan menggunakan substitusi angka maupun bujursangkar Vigenère (http://suncoolin.blogspot.com/2012/07/algoritma-kriptografi-klasik-vigenerecipher.html). 20 BAB III METODE PENELITIAN 3.1 Tempat dan Jadwal Penelitian Penelitian dilaksanakan dalam jangka waktu November 2014 sampai dengan Maret 2015. Tabel 3.1 Jadwal Penelitian November Desember Januari Febuari Maret 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 Identifikasi Masalah Pengumpulan Data Analisa Sistem Perancangan Sistem Pembangunan Sistem Uji Coba Sistem Penulisan Laporan Skripsi 3.2 Kerangka Kerja Ada pun langkah-langkah kerangka kerja yang dibuat oleh penulis ditunjukkan oleh gambar 3.1 berikut. 21 Gambar 3.1 Kerangka Kerja 3.2.1 Identifikasi Masalah Pada langkah ini, penulis mencari masalah-masalah yang dialami dalam merahasiakan sebuah pesan. Adapun masalah yang ditemukan adalah bagaimana cara untuk mengirim pesan tanpa diketahui isinya oleh orang yang tidak memiliki hak akses. Sehingga pesan yang disampaikan hanya akan diketahui oleh pengirim dan penerima yang memiliki hak akses saja. Penulis merancang aplikasi pembelajaran kriptografi metode sandi Vigenère untuk menghasilkan pesan yang bersifat rahasia, dimana informasi atau isi dari pesan tersebut tidak akan mudah diketahui oleh pihak yang tidak memiliki hak akses. Pengumpulan Data Analisa Sistem Perancangan Sistem Pembangunan Sistem Uji Coba Sistem Identifikasi Masalah 22 3.2.2 Metode Pengumpulan Data Pada langkah ini, dilakukan pengumpulan data dan informasi dengan melakukan studi pustaka. Melalui teknik ini, dilakukan kegiatan penghimpunan data, keterangan, dan informasi dengan memahami secara cermat atas berbagai buku ilmiah, dan bahan-bahan tertulis maupun dari media internet lainnya yang relevan dengan sistem yang akan dirancang. 3.2.3 Analisa Sistem Pada langkah ini, dilakukan analisa sistem dimana masalah yang dihadapi oleh masyarakat dalam melakukan pengamanan terhadap suatu pesan rahasia sehingga tidak dapat dibaca oleh orang yang tidak memiliki hak akses. 3.2.4 Perancangan Sistem Pada langkah ini, penulis melakukan perancangan sistem yang dapat dijabarkan sebagai berikut. 1. Perancangan input dan output. 2. Perancangan user interface. 3.2.5 Pembangunan Sistem Pembangunan sistem yang penulis lakukan antara lain. 1. Perancangan aplikasi kriptografi menggunakan Visual Basic 2010. 2. Input dan output dalam bentuk file berekstensi .txt yang dapat dibaca dengan aplikasi notepad. 23 3.2.6 Uji Coba Sistem Pada uji coba sistem ini, dilakukan uji coba aplikasi kriptografi ini, apakah sudah sesuai dengan tujuan perancangan sistem. Jika terjadi masalah (bug), maka dilakukan perbaikan (debug). Penulis melakukan uji coba dengan mengenkripsi pesan rahasia menjadi pesan lain, dan mendekripsikan kembali pesan yang telah dienkripsi sebelumnya menjadi pesan asli. 24 BAB IV ANALISA DAN PERANCANGAN 4.1 Analisa Aplikasi ini dibuat sesuai dengan harapan penulis untuk meningkatkan pemahaman pengguna yang ingin belajar kriptografi tentang metode sandi Vigenère. Kriptografi saat ini sangat diperlukan agar informasi yang dikirimkan tidak bisa dibaca ataupun disadap oleh orang yang tidak berhak. Dengan adanya aplikasi ini, pengguna dapat menambah pemahaman tentang sandi Vigenère dan juga dapat menggunakannya untuk mengamankan pesan dari orang yang tidak memiliki hak untuk membacanya. 4.2 Perancangan Proses perancangan yang akan digunakan merupakan proses perancangan yang berorientasi pada prosedural, sehingga diperlukan flowchart serta perancangan tampilan. Untuk aplikasi ini, dirancang sistem yang dapat memproses karakter American Standard Code for Information Interchange (ASCII). 25 4.2.1 Flowchart Flowchart untuk proses enkripsi dapat dilihat pada gambar 4.1 berikut. Start Read (Plaintext, Key) Len (Plaintext) = Len( Key) For I = 1 To Len (Plaintext) Temp = FieldValue (VK_P) Chipertext = Chipertext & Temp Next I J = Int {Len (Plaintext) / Len (Key)} For I = 1 To J Key2 = Key2 & Key1 Next I Key = Key2 Chipertext End Tidak Ya Gambar 4.1 Flowchart Proses Enkripsi Write (Ciphertext) 26 Flowchart untuk proses dekripsi dapat dilihat pada gambar 4.2 berikut. Start Read (Chipertext, Key) Len (Chipertext) = Len( Key) For I = 1 To Len (Chipertext) Temp = FieldValue (SearchTable (CharChiper, KeyColumn)) Plaintext = Plaintext & Temp Next I J = Int {Len (Chipertext) / Len (Key)} For I = 1 To J Key2 = Key2 & Key1 Next I Key = Key2 Plaintext End Tidak Ya Gambar 4.2 Flowchart Proses Dekripsi 4.2.2 Perancangan User Interface Untuk user interface akan dirancang sebuah Multiple Document Interface (MDI) form yang memuat empat halaman tampilan, yang terdiri dari menu Vigenère Cipher yang berisikan submenu Tutorial dimana di dalamnya terdapat tutorial enkripsi metode angka, tutorial enkripsi metode huruf, tutorial dekripsi Write (Plaintext) 27 metode angka, tutorial dekripsi metode huruf. Submenu lainnya yang berisikan tentang Enkripsi dan Dekripsi. Menu Tentang yang berisikan tentang Teori, informasi Aplikasi dan Pembuat Aplikasi, menu Bantuan yang berisikan tentang bantuan untuk menjalankan aplikasi, dan menu Keluar untuk keluar dari aplikasi. 1. Menu Vigenère Cipher Menu ini memuat berberapa submenu diantaranya submenu Tutorial, Enkripsi dan Dekripsi. a. Submenu Tutorial Enkripsi Angka Submenu Tutorial Enkripsi Angka ini adalah submenu yang menampilkan form petunjuk pembelajaran melakukan enkripsi dengan menggunakan metode angka. Pada form ini terdiri dari empat tahapan. Berikut adalah rancangan form Tutorial Enkripsi Angka beserta penjelasannya. Gambar 4.3 Rancangan form Tutorial Enkripsi Vigenère Cipher Metode Angka (1/4) Pada tahapan ini, ditampilkan penjelasan singkat tentang sandi Vigenère. Keterangan gambar 4.3: Vigenère Cipher (Enkripsi dengan Metode Angka) Penjelasan singkat tentang sandi Vigenère 2 4 3 1 Mulai 28 1. GroupBox gbangkaenkrip Adalah tools untuk membantu menampung seluruh Label, TextBox, Button, ListBox dan tools lainnya agar tampilan menjadi teratur dan tidak berantakan. 2. Label lbljudul Adalah tools yang digunakan untuk menerangkan judul dari tutorial ini. 3. Label lblpenjelasan Adalah tools yang digunakan untuk memberikan penjelasan secara singkat tentang sandi Vigenère. 4. Button btnmulai Adalah tools yang digunakan untuk diklik oleh pengguna untuk melanjutkan ke tahapan selanjutnya. Gambar 4.4 Rancangan form Tutorial Enkripsi Vigenère Cipher Metode Angka (2/4) Pada tahapan ini, ditampilkan langkah-langkah dan syarat untuk melakukan pengenkripsian dengan sandi Vigenère menggunakan metode angka. Vigenère Cipher (Enkripsi dengan Metode Angka) 1 2 3 4 5 6 7 Langkah 1 Langkah 2 Langkah 3 Langkah 4 Langkah 5 Catatan tentang syarat untuk melakukan pengenkripsian dengan sandi Vigenère menggunakan metode angka. Lanjut kan 29 Keterangan gambar 4.4: 1. Label lblstep1 Adalah tools yang digunakan untuk menampilkan langkah pertama dalam mengenkripsikan teks. 2. Label lblstep2 Adalah tools yang digunakan untuk menampilkan langkah kedua dalam mengenkripsikan teks. 3. Label lblstep3 Adalah tools yang digunakan untuk menampilkan langkah ketiga dalam mengenkripsikan teks. 4. Label lblstep4 Adalah tools yang digunakan untuk menampilkan langkah keempat dalam mengenkripsikan teks. 5. Label lblstep5 Adalah tools yang digunakan untuk menampilkan langkah kelima dalam mengenkripsikan teks. 6. Button btnnext Adalah tools yang digunakan untuk diklik oleh pengguna untuk melanjutkan ke tahapan selanjutnya. 7. Label lblcat Adalah tools yang digunakan untuk menampilkan catatan tentang syarat dan kondisi dalam sandi Vigenère. 30 Gambar 4.5 Rancangan form Tutorial Enkripsi Vigenère Cipher Metode Angka (3/4) Tahapan ini merupakan proses input plain text dan kunci oleh pengguna untuk diproses dan ditunjukkan langkah dan hasilnya di tahapan selanjutnya. Keterangan gambar 4.5: 1. GroupBox gblangkah Adalah tools untuk membantu menampung seluruh Label, TextBox, Button, ListBox dan tools lainnya agar tampilan menjadi teratur dan tidak berantakan. 2. Label lblplain Adalah tools yang digunakan untuk menampilkan tulisan atau instruksi untuk memasukkan plain text. 3. Label lblkey Adalah tools yang digunakan untuk menampilkan tulisan atau instruksi untuk memasukkan kunci. Vigenère Cipher (Enkripsi dengan Metode Angka) Masukkan Plain Text : Masukkan Kunci: Catatan dalam menginput huruf Proses 1 2 4 3 5 7 6 31 4. TextBox tbplain Adalah tools yang digunakan sebagai tempat untuk pengguna agar dapat meng-input huruf plain text yang diinginkan. 5. TextBox tbkey Adalah tools yang digunakan sebagai tempat untuk pengguna agar dapat meng-input huruf kunci yang diinginkan. 6. Button proses Adalah tools yang digunakan untuk diklik oleh pengguna untuk memproses pengenkripsian dan melanjutkan ke tahapan selanjutnya. 7. Label lblket Adalah tools yang digunakan untuk menampilkan catatan tentang syarat dan kondisi dalam proses pengenkripsian. Gambar 4.6 Rancangan form Tutorial Enkripsi Vigenère Cipher Metode Angka (4/4) Pada tahapan ini, ditampilkan langkah dan hasil pengenkripsian (output) berdasarkan input yang telah diberikan oleh pengguna di tahapan sebelumnya. Vigenère Cipher (Enkripsi dengan Metode Angka) Plain Text : Kunci : Gambar Tabel Subsitusi Angka ListBox penjelasan Tutorial Dekripsi Keluar 1 2 3 4 5 6 32 Keterangan gambar 4.6: 1. Label lblplainteks Adalah tools yang digunakan untuk menampilkan huruf plain text yang telah di-input oleh pengguna di tahapan sebelumnya. 2. Label lblkunci Adalah tools yang digunakan untuk menampilkan huruf kunci yang telah di-input oleh pengguna di tahapan sebelumnya. 3. PictureBox pbtabel Adalah tools yang digunakan sebagai tempat untuk menampilkan gambar tabel subsitusi huruf dengan angka. 4. ListBox lbproses Adalah tools untuk menampilkan hasil dan langkah dari proses pengenkripsian agar bisa dipelajari oleh pengguna. 5. Button btntutor Adalah tools yang digunakan untuk diklik oleh pengguna jika ingin berpindah ke tutorial dekripsi dengan metode angka. 6. Button btnexit Adalah tools yang digunakan untuk keluar dari tutorial ini. b. Submenu Tutorial Enkripsi Huruf Submenu Tutorial Enkripsi Huruf ini adalah submenu yang menampilkan form untuk tutorial atau petunjuk pembelajaran melakukan enkripsi dengan menggunakan metode huruf. Pada form ini terdiri dari empat tahapan. 33 Berikut adalah rancangan pada form Tutorial Enkripsi Huruf beserta penjelasannya. Gambar 4.7 Rancangan form Tutorial Enkripsi Vigenère Cipher Metode Huruf (1/4) Pada tahapan ini, ditampilkan penjelasan singkat tentang sandi Vigenère. Keterangan gambar 4.7: 1. GroupBox gblangkahenkrip Adalah tools untuk membantu menampung seluruh Label, TextBox, Button, ListBox dan tools lainnya agar tampilan menjadi teratur dan tidak berantakan. 2. Label lbljudul Adalah tools yang digunakan untuk menerangkan judul dari tutorial ini. 3. Label lblpenjelasan Adalah tools yang digunakan untuk memberikan penjelasan secara singkat tentang sandi Vigenère. Vigenère Cipher (Enkripsi dengan Metode Huruf) Penjelasan singkat tentang sandi Vigenère 2 4 3 1 Mulai 34 4. Button btnmulai Adalah tools yang digunakan untuk diklik oleh pengguna untuk melanjutkan ke tahapan selanjutnya. Gambar 4.8 Rancangan form Tutorial Enkripsi Vigenère Cipher Metode Huruf (2/4) Pada tahapan ini, ditampilkan langkah-langkah dan syarat untuk melakukan pengenkripsian dengan sandi Vigenère menggunakan metode huruf. Keterangan gambar 4.8: 1. Label lblstep1 Adalah tools yang digunakan untuk menampilkan langkah pertama dalam mengenkripsikan teks. 2. Label lblstep2 Adalah tools yang digunakan untuk menampilkan langkah kedua dalam mengenkripsikan teks. Vigenère Cipher (Enkripsi dengan Metode Huruf) 1 2 3 4 5 Langkah 1 Langkah 2 Langkah 3 Catatan tentang syarat untuk melakukan pengenkripsian dengan sandi Vigenère menggunakan metode huruf. Lanjut kan 35 3. Label lblstep3 Adalah tools yang digunakan untuk menampilkan langkah ketiga dalam mengenkripsikan teks. 4. Button btnnext Adalah tools yang digunakan untuk diklik oleh pengguna untuk melanjutkan ke tahapan selanjutnya. 5. Label lblcat Adalah tools yang digunakan untuk menampilkan catatan tentang syarat dan kondisi dalam sandi Vigenère. Gambar 4.9 Rancangan form Tutorial Enkripsi Vigenère Cipher Metode Huruf (3/4) Tahapan ini merupakan proses input plain text dan kunci oleh pengguna untuk diproses dan ditunjukkan langkah dan hasilnya di tahapan selanjutnya. Vigenère Cipher (Enkripsi dengan Metode Huruf) Masukkan Plain Text : Masukkan Kunci: Catatan dalam menginput huruf Proses 1 2 4 3 5 7 6 36 Keterangan gambar 4.9: 1. GroupBox gblangkah Adalah tools untuk membantu menampung seluruh Label, TextBox, Button, ListBox dan tools lainnya agar tampilan menjadi teratur dan tidak berantakan. 2. Label lblplain Adalah tools yang digunakan untuk menampilkan tulisan atau instruksi untuk memasukkan plain text. 3. Label lblkey Adalah tools yang digunakan untuk menampilkan tulisan atau instruksi untuk memasukkan kunci. 4. TextBox tbplain Adalah tools yang digunakan sebagai tempat untuk pengguna agar dapat meng-input huruf plain text yang diinginkan. 5. TextBox tbkey Adalah tools yang digunakan sebagai tempat untuk pengguna agar dapat meng-input huruf kunci yang diinginkan. 6. Button proses Adalah tools yang digunakan untuk diklik oleh pengguna untuk memproses pengenkripsian dan melanjutkan ke tahapan selanjutnya. 7. Label lblket Adalah tools yang digunakan untuk menampilkan catatan tentang syarat dan kondisi dalam proses pengenkripsian. 37 Gambar 4.10 Rancangan form Tutorial Enkripsi Vigenère Cipher Metode Huruf (4/4) Pada tahapan ini, ditampilkan langkah dan hasil pengenkripsian (output) berdasarkan input yang telah diberikan oleh pengguna di tahapan sebelumnya. Keterangan gambar 4.10: 1. Label lblplainteks Adalah tools yang digunakan untuk menampilkan huruf plain text yang telah di-input oleh pengguna di tahapan sebelumnya. 2. Label lblkunci Adalah tools yang digunakan untuk menampilkan huruf kunci yang telah di-input oleh pengguna di tahapan sebelumnya. Vigenère Cipher (Enkripsi dengan Metode Huruf) Plain Text : Kunci : Gambar Tabel Vigenère Tutorial Dekripsi Keluar 1 2 3 4 5 6 Label penjelasan 38 3. PictureBox pbtabel Adalah tools yang digunakan sebagai tempat untuk menampilkan gambar tabel enkripsi Vigenère cipher metode huruf. 4. Label lblproses Adalah tools untuk menampilkan hasil dan langkah dari proses pengenkripsian agar bisa dipelajari oleh pengguna. 5. Button btntutor Adalah tools yang digunakan untuk diklik oleh pengguna jika ingin berpindah ke tutorial dekripsi dengan metode huruf. 6. Button btnexit Adalah tools yang digunakan untuk keluar dari tutorial ini. c. Submenu Tutorial Dekripsi Angka Submenu Tutorial Dekripsi Angka ini adalah submenu yang menampilkan form untuk tutorial atau petunjuk pembelajaran melakukan dekripsi dengan menggunakan metode angka. Form ini sama dengan form pada tutorial enkripsi angka. Pada form ini terdiri dari empat tahapan. Berikut adalah rancangan pada form Tutorial Dekripsi Angka beserta penjelasannya. 39 Gambar 4.11 Rancangan form Tutorial Dekripsi Vigenère Cipher Metode Angka (1/4) Pada tahapan ini, ditampilkan penjelasan singkat tentang sandi Vigenère. Keterangan gambar 4.11: 1. GroupBox gbangkadekrip Adalah tools untuk membantu menampung seluruh Label, TextBox, Button, ListBox dan tools lainnya agar tampilan menjadi teratur dan tidak berantakan. 2. Label lbljudula Adalah tools yang digunakan untuk menerangkan judul dari tutorial ini. 3. Label lblpenjelasana Adalah tools yang digunakan untuk memberikan penjelasan secara singkat tentang sandi Vigenère. 4. Button btnmulaia Adalah tools yang digunakan untuk diklik oleh pengguna untuk melanjutkan ke tahapan selanjutnya. Vigenère Cipher (Dekripsi dengan Metode Angka) Penjelasan singkat tentang sandi Vigenère 2 4 3 1 Mulai 40 Gambar 4.12 Rancangan form Tutorial Dekripsi Vigenère Cipher Metode Angka (2/4) Pada tahapan ini, ditampilkan langkah-langkah dan syarat untuk melakukan pendekripsian dengan sandi Vigenère menggunakan metode angka. Keterangan gambar 4.12: 1. Label lblstep1a Adalah tools yang digunakan untuk menampilkan langkah pertama dalam mendekripsikan teks. 2. Label lblstep2a Adalah tools yang digunakan untuk menampilkan langkah kedua dalam mendekripsikan teks. 3. Label lblstep3a Adalah tools yang digunakan untuk menampilkan langkah ketiga dalam mendekripsikan teks. Vigenère Cipher (Dekripsi dengan Metode Angka) 1 2 3 4 5 6 7 Langkah 1 Langkah 2 Langkah 3 Langkah 4 Langkah 5 Catatan tentang syarat untuk melakukan pendekripsian dengan sandi Vigenère menggunakan metode angka. Lanjut kan 41 4. Label lblstep4a Adalah tools yang digunakan untuk menampilkan langkah keempat dalam mendekripsikan teks. 5. Label lblstep5a Adalah tools yang digunakan untuk menampilkan langkah kelima dalam mendekripsikan teks. 6. Button btnnexta Adalah tools yang digunakan untuk diklik oleh pengguna untuk melanjutkan ke tahapan selanjutnya. 7. Label lblcata Adalah tools yang digunakan untuk menampilkan catatan tentang syarat dan kondisi dalam sandi Vigenère. Gambar 4.13 Rancangan form Tutorial Dekripsi Vigenère Cipher Metode Angka (3/4) Vigenère Cipher (Dekripsi dengan Metode Angka) Masukkan Cipher Text : Masukkan Kunci: Catatan dalam menginput huruf Proses 1 2 4 3 5 7 6 42 Tahapan ini merupakan proses input cipher text dan kunci oleh pengguna untuk diproses dan ditunjukkan langkah dan hasilnya di tahapan selanjutnya. Keterangan gambar 4.13: 1. GroupBox gblangkaha Adalah tools untuk membantu menampung seluruh Label, TextBox, Button, ListBox dan tools lainnya agar tampilan menjadi teratur dan tidak berantakan. 2. Label lblplaina Adalah tools yang digunakan untuk menampilkan tulisan atau instruksi untuk memasukkan cipher text. 3. Label lblkeya Adalah tools yang digunakan untuk menampilkan tulisan atau instruksi untuk memasukkan kunci. 4. TextBox tbcipher Adalah tools yang digunakan sebagai tempat untuk pengguna agar dapat meng-input huruf cipher text yang diinginkan. 5. TextBox tbkeya Adalah tools yang digunakan sebagai tempat untuk pengguna agar dapat meng-input huruf kunci yang diinginkan. 6. Button prosesa Adalah tools yang digunakan untuk diklik oleh pengguna untuk memproses pendekripsian dan melanjutkan ke tahapan selanjutnya. 43 7. Label lblketa Adalah tools yang digunakan untuk menampilkan catatan tentang syarat dan kondisi dalam proses pendekripsian. Gambar 4.14 Rancangan form Tutorial Dekripsi Vigenère Cipher Metode Angka (4/4) Pada tahapan ini, ditampilkan langkah dan hasil pendekripsian (output) berdasarkan input yang telah diberikan oleh pengguna di tahapan sebelumnya. Keterangan gambar 4.14: 1. Label lblcipherteks Adalah tools yang digunakan untuk menampilkan huruf cipher text yang telah di-input oleh pengguna di tahapan sebelumnya. 2. Label lblkuncia Adalah tools yang digunakan untuk menampilkan huruf kunci yang telah di-input oleh pengguna di tahapan sebelumnya. Vigenère Cipher (Dekripsi dengan Metode Angka) Cipher Text : Kunci : Gambar Tabel Subsitusi Angka ListBox penjelasan Tutorial Enkripsi Keluar 1 2 3 4 5 6 44 3. PictureBox pbtabela Adalah tools yang digunakan sebagai tempat untuk menampilkan gambar tabel subsitusi huruf dengan angka. 4. ListBox lbprosesa Adalah tools untuk menampilkan hasil dan langkah dari proses pendekripsian agar bisa dipelajari oleh pengguna. 5. Button btntutora Adalah tools yang digunakan untuk diklik oleh pengguna jika ingin berpindah ke tutorial enkripsi dengan metode angka. 6. Button btnexita Adalah tools yang digunakan untuk keluar dari tutorial ini. d. Submenu Tutorial Dekripsi Huruf Submenu Tutorial Dekripsi Huruf ini adalah submenu yang menampilkan form untuk tutorial atau petunjuk pembelajaran melakukan dekripsi dengan menggunakan metode huruf. Form ini sama dengan form pada tutorial enkripsi huruf. Pada form ini terdiri dari empat tahapan. Berikut adalah rancangan pada form Tutorial Dekripsi Huruf beserta penjelasannya. 45 Gambar 4.15 Rancangan form Tutorial Dekripsi Vigenère Cipher Metode Huruf (1/4) Pada tahapan ini, ditampilkan penjelasan singkat tentang sandi Vigenère. Keterangan gambar 4.15: 1. GroupBox gblangkahdekrip Adalah tools untuk membantu menampung seluruh Label, TextBox, Button, ListBox dan tools lainnya agar tampilan menjadi teratur dan tidak berantakan. 2. Label lbljudula Adalah tools yang digunakan untuk menerangkan judul dari tutorial ini. 3. Label lblpenjelasana Adalah tools yang digunakan untuk memberikan penjelasan secara singkat tentang sandi Vigenère. 4. Button btnmulaia Adalah tools yang digunakan untuk diklik oleh pengguna untuk melanjutkan ke tahapan selanjutnya. Vigenère Cipher (Dekripsi dengan Metode Huruf) Penjelasan singkat tentang sandi Vigenère 2 4 3 1 Mulai 46 Gambar 4.16 Rancangan form Tutorial Dekripsi Vigenère Cipher Metode Huruf (2/4) Pada tahapan ini, ditampilkan langkah-langkah dan syarat untuk melakukan pendekripsian dengan sandi Vigenère menggunakan metode huruf. Keterangan gambar 4.16: 1. Label lblstep1a Adalah tools yang digunakan untuk menampilkan langkah pertama dalam mendekripsikan teks. 2. Label lblstep2a Adalah tools yang digunakan untuk menampilkan langkah kedua dalam mendekripsikan teks. 3. Label lblstep3a Adalah tools yang digunakan untuk menampilkan langkah ketiga dalam mendekripsikan teks. Vigenère Cipher (Dekripsi dengan Metode Huruf) 1 2 3 4 5 Langkah 1 Langkah 2 Langkah 3 Catatan tentang syarat untuk melakukan pendekripsian dengan Vigenère Cipher menggunakan metode huruf. Lanjut kan 47 4. Button btnnexta Adalah tools yang digunakan untuk diklik oleh pengguna untuk melanjutkan ke tahapan selanjutnya. 5. Label lblcata Adalah tools yang digunakan untuk menampilkan catatan tentang syarat dan kondisi dalam sandi Vigenère. Gambar 4.17 Rancangan form Tutorial Dekripsi Vigenère Cipher Metode Huruf (3/4) Tahapan ini merupakan proses input cipher text dan kunci oleh pengguna untuk diproses dan ditunjukkan langkah dan hasilnya di tahapan selanjutnya. Keterangan: 1. GroupBox gblangkaha Adalah tools untuk membantu menampung seluruh Label, TextBox, Button, ListBox dan tools lainnya agar tampilan menjadi teratur dan tidak berantakan. Vigenère Cipher (Dekripsi dengan Metode Huruf) Masukkan Cipher text : Masukkan Kunci: Catatan dalam menginput huruf Proses 1 2 4 3 5 7 6 48 2. Label lblcipher Adalah tools yang digunakan untuk menampilkan tulisan atau instruksi untuk memasukkan cipher text. 3. Label lblkeya Adalah tools yang digunakan untuk menampilkan tulisan atau instruksi untuk memasukkan kunci. 4. TextBox tbcipher Adalah tools yang digunakan sebagai tempat untuk pengguna agar dapat meng-input huruf cipher text yang diinginkan. 5. TextBox tbkeya Adalah tools yang digunakan sebagai tempat untuk pengguna agar dapat meng-input huruf kunci yang diinginkan. 6. Button prosesa Adalah tools yang digunakan untuk diklik oleh pengguna untuk memproses pendekripsian dan melanjutkan ke tahapan selanjutnya. 7. Label lblketa Adalah tools yang digunakan untuk menampilkan catatan tentang syarat dan kondisi dalam proses pendekripsian. 49 Gambar 4.18 Rancangan form Tutorial Dekripsi Vigenère Cipher Metode Huruf (4/4) Pada tahapan ini, ditampilkan langkah dan hasil pendekripsian (output) berdasarkan input yang telah diberikan oleh pengguna di tahapan sebelumnya. Keterangan gambar 4.18: 1. Label lblcipherteks Adalah tools yang digunakan untuk menampilkan huruf cipher text yang telah di-input oleh pengguna di tahapan sebelumnya. 2. Label lblkuncia Adalah tools yang digunakan untuk menampilkan huruf kunci yang telah di-input oleh pengguna di tahapan sebelumnya. 3. PictureBox pbtabela Adalah tools yang digunakan sebagai tempat untuk menampilkan gambar tabel Vigenère cipher metode huruf. Vigenère Cipher (Dekripsi dengan Metode Huruf) Cipher Text : Kunci : Gambar Tabel Vigenère Tutorial Enkripsi Keluar 1 2 3 4 5 6 Label penjelasan 50 4. Label lblprosesa Adalah tools untuk menampilkan hasil dan langkah dari proses pendekripsian agar bisa dipelajari oleh pengguna. 5. Button btntutora Adalah tools yang digunakan untuk diklik oleh pengguna jika ingin berpindah ke tutorial enkripsi dengan metode huruf. 6. Button btnexita Adalah tools yang digunakan untuk keluar dari tutorial ini. e. Submenu Enkripsi Submenu Enkripsi ini adalah submenu yang menampilkan form yang dapat melakukan proses enkripsi dengan metode angka. Pada form ini terdiri dari dua tahapan yaitu tahapan input dan output (output terbagi dua, output dan output + langkah). Berikut adalah rancangan pada form Enkripsi beserta penjelasannya. Gambar 4.19 Rancangan form Enkripsi (Input) Enkripsi Bersihkan Panjang Teks : Panjang Kunci : Cari 1 2 3 4 5 6 7 8 9 51 Tahapan ini merupakan proses input plain text dan kunci oleh pengguna untuk diproses dan ditunjukkan langkah dan hasilnya di tahapan selanjutnya. Input plain text dapat berasal dari teks yang diketikkan atau dapat juga berasal dari teks yang telah ada di dalam file berekstensi .txt. Keterangan gambar 4.19: 1. GroupBox gbplain Adalah tools untuk membantu menampung Label dan TextBox agar tampilan menjadi teratur dan tidak berantakan. 2. GroupBox gbkey Adalah tools untuk membantu menampung Label dan TextBox agar tampilan menjadi teratur dan tidak berantakan. 3. Label lblplain Adalah tools yang digunakan untuk menampilkan panjang plain text yang telah di-input di TextBox txtplain. 4. TextBox txtplain Adalah tools yang digunakan sebagai tempat untuk pengguna agar dapat meng-input plain text yang akan dienkripsikan atau juga dapat di-input dengan membuka file berekstensi .txt dengan mengklik Button btnopen. 5. Label lblkey Adalah tools yang digunakan untuk menampilkan panjang kunci yang telah di-input di TextBox txtkunci. 52 6. TextBox txtkunci Adalah tools yang digunakan sebagai tempat untuk pengguna agar dapat meng-input kunci yang akan digunakan untuk mengenkripsikan plain text yang telah di-input di TextBox txtplain. 7. Button btnopen Adalah tools yang digunakan untuk diklik oleh pengguna untuk membuka teks yang tersimpan di dalam file berekstensi .txt. 8. Button btnproses Adalah tools yang digunakan untuk diklik oleh pengguna untuk memulai proses pengenkripsian. Button ini terlihat jika TextBox txtplain dan TextBox txtkunci telah terisi. Jika pengguna mengklik Button ini, maka akan muncul MessageBox yang meminta keputusan pengguna untuk menampilkan langkah pengenkripsian atau tidak. 9. Button btnclear Adalah tools yang digunakan untuk diklik oleh pengguna untuk membersihkan semua TextBox dan RichTextBox yang ada serta mengembalikan tampilan ke tampilan awal tahapan input. Button ini terlihat jika salah satu diantara TextBox txtplain atau TextBox txtkunci atau TextBox txtcipher (di tahapan selanjutnya) atau RichTextBox rtblangkah (di tahapan selanjutnya) telah terisi. 53 Gambar 4.20 Rancangan MessageBox tampilkan langkah MessageBox ini merupakan tampilan yang meminta keputusan pengguna untuk menampilkan langkah pengenkripsian atau tidak. Jika pengguna mengklik tombol Yes, maka hasil output akan menampilkan cipher text beserta langkah-langkah pengenkripsiannya. Tetapi jika pengguna mengklik tombol No, maka hasil output hanya akan menampilkan cipher text-nya saja. Jika panjang plain text yang hendak dienkripsikan melebihi 50 karakter, maka pengguna diharapkan untuk mengklik tombol No agar tidak menyebabkan lag. Gambar 4.21 Rancangan form Enkripsi (Output) Tampilkan Langkah? Yes No Enkripsi Bersihkan Panjang Teks : Panjang Kunci : Cari 1 3 2 Simpan 54 Tahapan ini muncul jika pengguna mengklik tombol No pada MessageBox di tahapan sebelumnya. Tahapan ini menampilkan output cipher text yang berasal dari hasil pengenkripsian antara plain text dengan kunci yang telah di-input oleh pengguna di tahapan input sebelumnya. Hasil output dapat juga disimpan ke dalam file berekstensi .txt. Tahapan ini juga menampilkan plain text dan kunci yang telah di-input oleh pengguna di tahapan sebelumnya dimana tools yang digunakan di tahapan sebelumnya masih tetap digunakan di tahapan ini. Keterangan gambar 4.21: 1. GroupBox gbcipher Adalah tools untuk membantu menampung Label dan TextBox agar tampilan menjadi teratur dan tidak berantakan. 2. TextBox txtcipher Adalah tools yang digunakan sebagai tempat untuk menampung cipher text hasil dari proses pengenkripsian plain text dengan kunci yang telah diinput di tahapan input sebelumnya. 3. Button btnsave Adalah tools yang digunakan untuk diklik oleh pengguna untuk menyimpan cipher text hasil enkripsi yang berada di TextBox txtcipher kedalam file berekstensi .txt. 55 Gambar 4.22 Rancangan form Enkripsi (Output + Langkah) Tahapan ini muncul jika pengguna mengklik tombol Yes pada MessageBox di tahapan sebelumnya. Tahapan ini memiliki Rancangan yang hampir sama dengan tahapan output. Hanya saja pada tahapan ini ditambahkan langkahlangkah dalam mengenkripsikan plain text dengan kunci yang telah di-input oleh pengguna dengan menggunakan metode angka. Keterangan gambar 4.22: 1. GroupBox gblangkah Adalah tools untuk membantu menampung RichTextBox agar tampilan menjadi teratur dan tidak berantakan. 2. RichTextBox rtblangkah Adalah tools yang digunakan sebagai tempat untuk menampung langkahlangkah dalam mengenkripsikan plain text dengan kunci yang telah diinput oleh pengguna. Enkripsi Bersihkan Panjang Teks : Panjang Kunci : Cari Simpan 1 2 56 f. Submenu Dekripsi Submenu Dekripsi ini adalah submenu yang menampilkan form yang dapat melakukan proses dekripsi dengan metode angka. Pada form ini terdiri dari dua tahapan yaitu tahapan input dan output (output terbagi dua, output dan output + langkah). Berikut adalah rancangan pada form Dekripsi beserta penjelasannya. Gambar 4.23 Rancangan form Dekripsi (Input) Tahapan ini merupakan proses input cipher text dan kunci oleh pengguna untuk diproses dan ditunjukkan langkah dan hasilnya di tahapan selanjutnya. Input cipher text dapat berasal dari teks yang diketikkan atau dapat juga berasal dari teks yang telah ada di dalam file berekstensi .txt. Keterangan gambar 4.23: 1. GroupBox gbcipher Adalah tools untuk membantu menampung Label dan TextBox agar tampilan menjadi teratur dan tidak berantakan. Dekripsi Bersihkan Panjang Teks : Panjang Kunci : Cari 1 2 3 4 5 6 7 8 9 57 2. GroupBox gbkey Adalah tools untuk membantu menampung Label dan TextBox agar tampilan menjadi teratur dan tidak berantakan. 3. Label lblcipher Adalah tools yang digunakan untuk menampilkan panjang cipher text yang telah di-input di TextBox txtcipher. 4. TextBox txtcipher Adalah tools yang digunakan sebagai tempat untuk pengguna agar dapat meng-input cipher text yang akan didekripsikan atau juga dapat di-input dengan membuka file berekstensi .txt dengan mengklik Button btnopen. 5. Label lblkey Adalah tools yang digunakan untuk menampilkan panjang kunci yang telah di-input di TextBox txtkunci. 6. TextBox txtkunci Adalah tools yang digunakan sebagai tempat untuk pengguna agar dapat meng-input kunci yang akan digunakan untuk mendekripsikan cipher text yang telah di-input di TextBox txtplain. 7. Button btnopen Adalah tools yang digunakan untuk diklik oleh pengguna untuk membuka teks yang tersimpan di dalam file berekstensi .txt. 8. Button btnproses Adalah tools yang digunakan untuk diklik oleh pengguna untuk memulai proses pendekripsian. Button ini terlihat jika TextBox txtcipher dan TextBox txtkunci telah terisi. Jika mengklik Button ini, maka akan muncul 58 MessageBox yang meminta keputusan pengguna untuk menampilkan langkah pendekripsian atau tidak. 9. Button btnclear Adalah tools yang digunakan untuk diklik oleh pengguna untuk membersihkan semua TextBox dan RichTextBox yang ada serta mengembalikan tampilan ke tampilan awal tahapan input. Button ini terlihat jika salah satu diantara TextBox txtcipher atau TextBox txtkunci atau TextBox txtplain (di tahapan selanjutnya) atau RichTextBox rtblangkah (di tahapan selanjutnya) telah terisi. Gambar 4.24 Rancangan form Dekripsi (Output) Tahapan ini muncul jika pengguna mengklik tombol No pada MessageBox seperti pada gambar 4.20. Tahapan ini menampilkan output plain text yang berasal dari hasil pendekripsian antara cipher text dengan kunci yang telah di-input oleh pengguna di tahapan input sebelumnya. Hasil output dapat juga disimpan ke dalam file berekstensi .txt. Tahapan ini juga menampilkan cipher text dan kunci yang telah di-input oleh pengguna di tahapan Enkripsi Bersihkan Panjang Teks : Panjang Kunci : Cari 1 3 2 Simpan 59 sebelumnya dimana tools yang digunakan di tahapan sebelumnya masih tetap digunakan di tahapan ini. Keterangan gambar 4.24: 1. GroupBox gbplain Adalah tools untuk membantu menampung Label dan TextBox agar tampilan menjadi teratur dan tidak berantakan. 2. TextBox txtplain Adalah tools yang digunakan sebagai tempat untuk menampung plain text hasil dari proses pendekripsian cipher text dengan kunci yang telah diinput di tahapan input sebelumnya. 3. Button btnsave Adalah tools yang digunakan untuk diklik oleh pengguna untuk menyimpan plain text hasil dekripsi yang berada di TextBox txtplain kedalam file berekstensi .txt. Gambar 4.25 Rancangan form Dekripsi (Output + Langkah) Dekripsi Bersihkan Panjang Teks : Panjang Kunci : Cari Simpan 1 2 60 Tahapan ini muncul jika pengguna mengklik tombol Yes pada MessageBox seperti pada gambar 4.20. Tahapan ini memiliki rancangan yang hampir sama dengan tahapan output. Hanya saja pada tahapan ini ditambahkan langkah-langkah dalam mendekripsikan cipher text dengan kunci yang telah di-input oleh pengguna dengan menggunakan metode angka. Keterangan gambar 4.25: 1. GroupBox gblangkah Adalah tools untuk membantu menampung RichTextBox agar tampilan menjadi teratur dan tidak berantakan. 2. RichTextBox rtblangkah Adalah tools yang digunakan sebagai tempat untuk menampung langkahlangkah dalam mendekripsikan cipher text dengan kunci yang telah diinput oleh pengguna. 2. Menu Tentang Menu ini memuat berberapa submenu diantaranya submenu Teori, Pembuat aplikasi dan Aplikasi. a. Submenu Teori Submenu Teori ini adalah submenu yang menampilkan teori tentang sandi Vigènere. Berikut adalah rancangan pada form Dekripsi beserta penjelasannya. 61 Gambar 4.26 Rancangan tab pertama dari form Teori Ini merupakan rancangan tab petama form Teori. Keterangan gambar 4.26: 1. TabControl tabteori Adalah tools yang membuat tampilan terbagi menjadi tiga tab. 2. Label lblpertama Adalah tools yang berada di tab pertama yang menjelaskan teori tentang Vigènere Cipher. 3. PictureBox pbgambar Adalah tools untuk menampilkan gambar Blaise de Vigenère di tab pertama. 4. Button btnback Adalah tools untuk berpindah ke tab sebelumnya. 1 | 2 | 3 1 Gambar Blaise de Vigenère 3 Penjelasan tentang Vigenère Cipher Sebelumnya Selanjutnya 5 4 2 62 5. Button btnnext Adalah tools untuk berpindah ke tab selanjutnya. Gambar 4.27 Rancangan tab kedua dari form Teori Ini merupakan rancangan tab kedua form Teori. Keterangan gambar 4.27: 1. Label lblkedua Adalah tools yang berada di tab kedua yang menjelaskan teori tentang sandi Vigènere. 2. PictureBox pbgambar2 Adalah tools untuk menampilkan gambar tabel Vigenère di tab kedua. 1 | 2 | 3 Gambar Tabel Vigenère 2 Penjelasan tentang Vigenère Cipher Sebelumnya Selanjutnya 1 63 Gambar 4.28 Rancangan tab ketiga dari form Teori Ini merupakan rancangan tab ketiga form Teori. Keterangan gambar 4.28: 1. Label lblketiga Adalah tools yang berada di tab ketiga yang menjelaskan teori tentang sandi Vigènere. b. Submenu Pembuat Aplikasi Submenu Pembuat Aplikasi ini adalah submenu yang menampilkan informasi tentang pembuat aplikasi. Tidak ada form untuk submenu ini. Submenu ini hanya menggunakan MessageBox yang diketikkan dari MDI form. Rancangannya dapat dilihat di gambar 4.29 di bawah ini. 1 | 2 | 3 Penjelasan tentang Vigenère Cipher Sebelumnya Selanjutnya 1 64 Gambar 4.29 Rancangan MessageBox informasi pembuat aplikasi c. Submenu Aplikasi Submenu Aplikasi ini adalah submenu yang menampilkan informasi tentang aplikasi. Tidak ada form untuk submenu ini. Submenu ini hanya menggunakan MessageBox yang diketikkan dari MDI form. Rancangannya dapat dilihat di gambar 4.30 di bawah ini. Gambar 4.30 Rancangan MessageBox informasi aplikasi 3. Menu Bantuan Menu Bantuan adalah menu yang memuat submenu yang berisi informasi tentang bagaimana cara memulai tutorial, bagaimana cara menyandikan pesan, Informasi tentang pembuat aplikasi OK Informasi tentang tujuan pembuatan aplikasi OK 65 bagaimana cara mengembalikan pesan yang telah tersandi, bagaimana cara keluar dan cara menghubungi kami. Semua submenu ini memiliki rancangan yang sama, yang berbeda dari submenu ini hanyalah tulisan yang berisi informasinya saja. Tulisan di form ini diketik di dalam ListBox lbtampil. Gambar 4.31 Rancangan ListBox lbtampil 4. Menu Keluar Menu ini memuat perintah untuk keluar dari aplikasi. Jika pengguna menklik menu ini, maka aplikasi akan tertutup. ListBox yang berisi informasi tentang bagaimana cara memulai tutorial atau bagaimana cara menyandikan pesan atau bagaimana cara mengembalikan pesan yang telah tersandi atau bagaimana cara keluar atau cara menghubungi kami. 66 BAB V HASIL DAN PEMBAHASAN 5.1 Hasil Untuk memulai aplikasi ini, pengguna dapat melakukan double click pada file “Vigenere.exe”, setelah itu maka akan muncul tampilan utama yang terlihat seperti gambar 5.1 berikut. Gambar 5.1 Tampilan Utama Pada tampilan utama ini, terdapat empat menu yaitu Vigenère Cipher, Tentang, Bantuan dan Keluar. Menu Vigenère Cipher, Tentang dan Bantuan juga memiliki beberapa submenu lagi yang berfungsi untuk mengakses form lain. Tampilan submenu Vigenère Cipher dapat dilihat pada gambar 5.2 berikut. 67 Gambar 5.2 Tampilan Submenu Vigenère Cipher Pada submenu ini, terdapat tiga submenu yaitu Tutorial, Enkripsi dan Dekripsi. Dimana di dalam submenu Tutorial terdapat submenu lagi yaitu Enkripsi dan Dekripsi. Dan masing-masing dari submenu ini juga memiliki submenu lagi yaitu Angka dan Huruf. Tampilan submenu Tentang dapat dilihat pada gambar 5.3 berikut. Gambar 5.3 Tampilan Submenu Tentang Pada submenu ini, terdapat tiga submenu yaitu Teori, Pembuat Aplikasi dan Aplikasi. Tampilan submenu Bantuan dapat dilihat pada gambar 5.4 berikut. Gambar 5.4 Tampilan Submenu Bantuan 68 Pada submenu ini, terdapat lima submenu yaitu Bagaimana cara memulai tutorial, Bagaimana cara menyandikan pesan, Bagaimana mengembalikan pesan yang tersandi, Bagaimana cara keluar dan Hubungi kami. Untuk memulai pembelajaran yang pertama yaitu Tutorial Enkripsi Angka, maka langkah-langkahnya adalah sebagai berikut. 1. Pengguna dapat mengklik menu Vigenère Cipher lalu submenu Tutorial lalu submenu Enkripsi lalu submenu Angka. Lalu akan muncul tampilan seperti yang terlihat pada gambar 5.5 di bawah ini. Gambar 5.5 Tampilan Tutorial Enkripsi Vigenère Cipher Metode Angka (1/4) 2. Setelah membaca penjelasan singkat tentang sandi Vigenère, untuk melanjutkan ke tahapan selanjutnya, maka pengguna dapat mengklik button Mulai. Lalu akan muncul tampilan selanjutnya yang terlihat pada gambar 5.6 di bawah ini. 69 Gambar 5.6 Tampilan Tutorial Enkripsi Vigenère Cipher Metode Angka (2/4) 3. Setelah melihat langkah dalam pengenkripsian dengan metode angka, untuk melanjutkan ke tahapan selanjutnya, maka pengguna dapat mengklik button Lanjutkan. Lalu akan muncul tampilan input seperti yang terlihat pada gambar 5.7 di bawah ini. Gambar 5.7 Tampilan Tutorial Enkripsi Vigenère Cipher Metode Angka (3/4) 70 4. Pengguna dapat meng-input plain text dan kunci pada TextBox yang telah tersedia. Sebagai contoh, plain text yang dipilih penulis adalah huruf ‘O’ dan kuncinya adalah huruf ‘K’. Setelah selesai meng-input, pengguna dapat mengklik Button proses. Lalu akan muncul tampilan output seperti yang terlihat pada gambar 5.8 di bawah ini. Gambar 5.8 Tampilan Tutorial Enkripsi Vigenère Cipher Metode Angka (4/4) 5. Setelah muncul tampilan output yang menjelaskan langkah-langkah dalam melakukan enkripsi, pengguna dapat mengklik Button Tutorial Dekripsi untuk melanjutkan ke pembelajaran Dekripsi Metode Angka atau pengguna dapat mengklik Button Keluar untuk keluar dari tutorial ini. Untuk memulai pembelajaran yang kedua yaitu Tutorial Enkripsi Huruf, maka langkah-langkahnya adalah sebagai berikut. 71 1. Pengguna dapat mengklik menu Vigenère Cipher lalu submenu Tutorial lalu submenu Enkripsi lalu submenu Huruf. Lalu akan muncul tampilan seperti yang terlihat pada gambar 5.9 di bawah ini. Gambar 5.9 Tampilan Tutorial Enkripsi Vigenère Cipher Metode Huruf (1/4) 2. Setelah membaca penjelasan singkat tentang sandi Vigenère, untuk melanjutkan ke tahapan selanjutnya, maka pengguna dapat mengklik button Mulai. Lalu akan muncul tampilan selanjutnya yang terlihat pada gambar 5.10 di bawah ini. Gambar 5.10 Tampilan Tutorial Enkripsi Vigenère Cipher Metode Huruf (2/4) 72 3. Setelah melihat langkah dalam pengenkripsian dengan metode huruf, untuk melanjutkan ke tahapan selanjutnya, maka pengguna dapat mengklik button Lanjutkan. Lalu akan muncul tampilan input seperti yang terlihat pada gambar 5.11 di bawah ini. Gambar 5.11 Tampilan Tutorial Enkripsi Vigenère Cipher Metode Huruf (3/4) 4. Pengguna dapat meng-input plain text dan kunci pada TextBox yang telah tersedia. Sebagai contoh, plain text yang dipilih penulis adalah huruf ‘O’ dan kuncinya adalah huruf ‘K’. Setelah selesai meng-input, pengguna dapat mengklik Button proses. Lalu akan muncul tampilan output seperti yang terlihat pada gambar 5.12 di bawah ini. 73 Gambar 5.12 Tampilan Tutorial Enkripsi Vigenère Cipher Metode Huruf (4/4) 5. Setelah muncul tampilan output yang menjelaskan langkah-langkah dalam melakukan enkripsi, pengguna dapat mengklik Button Tutorial Dekripsi untuk melanjutkan ke pembelajaran Dekripsi Metode Huruf atau pengguna dapat mengklik Button Keluar untuk keluar dari tutorial ini. Untuk memulai pembelajaran yang ketiga yaitu Tutorial Dekripsi Angka, maka langkah-langkahnya adalah sebagai berikut. 1. Pengguna dapat mengklik menu Vigenère Cipher lalu submenu Tutorial lalu submenu Dekripsi lalu submenu Angka. Lalu akan muncul tampilan seperti yang terlihat pada gambar 5.13 di bawah ini. 74 Gambar 5.13 Tampilan Tutorial Dekripsi Vigenère Cipher Metode Angka (1/4) 2. Setelah membaca penjelasan singkat tentang sandi Vigenère, untuk melanjutkan ke tahapan selanjutnya, maka pengguna dapat mengklik button Mulai. Lalu akan muncul tampilan selanjutnya yang terlihat pada gambar 5.14 di bawah ini. Gambar 5.14 Tampilan Tutorial Dekripsi Vigenère Cipher Metode Angka (2/4) 75 3. Setelah melihat langkah dalam pendekripsian dengan metode angka, untuk melanjutkan ke tahapan selanjutnya, maka pengguna dapat mengklik button Lanjutkan. Lalu akan muncul tampilan input seperti yang terlihat pada gambar 5.15 di bawah ini. Gambar 5.15 Tampilan Tutorial Dekripsi Vigenère Cipher Metode Angka (3/4) 4. Pengguna dapat meng-input cipher text dan kunci pada TextBox yang telah tersedia. Sebagai contoh, cipher text yang dipilih penulis adalah huruf ‘Y’ dan kuncinya adalah huruf ‘K’. Setelah selesai meng-input, pengguna dapat mengklik Button proses. Lalu akan muncul tampilan output seperti yang terlihat pada gambar 5.16 di bawah ini. 76 Gambar 5.16 Tampilan Tutorial Dekripsi Vigenère Cipher Metode Angka (4/4) 5. Setelah muncul tampilan output yang menjelaskan langkah-langkah dalam melakukan dekripsi, pengguna dapat mengklik Button Tutorial Enkripsi untuk melanjutkan ke pembelajaran Enkripsi Metode Angka atau pengguna dapat mengklik Button Keluar untuk keluar dari tutorial ini. Untuk memulai pembelajaran yang kedua yaitu Tutorial Enkripsi Huruf, maka langkah-langkahnya adalah sebagai berikut. 1. Pengguna dapat mengklik menu Vigenère Cipher lalu submenu Tutorial lalu submenu Dekripsi lalu submenu Huruf. Lalu akan muncul tampilan seperti yang terlihat pada gambar 5.17 di bawah ini. 77 Gambar 5.17 Tampilan Tutorial Dekripsi Vigenère Cipher Metode Huruf (1/4) 2. Setelah membaca penjelasan singkat tentang sandi Vigenère, untuk melanjutkan ke tahapan selanjutnya, maka pengguna dapat mengklik button Mulai. Lalu akan muncul tampilan selanjutnya yang terlihat pada gambar 5.18 di bawah ini. Gambar 5.18 Tampilan Tutorial Dekripsi Vigenère Cipher Metode Huruf (2/4) 78 3. Setelah melihat langkah dalam pendekripsian dengan metode huruf, untuk melanjutkan ke tahapan selanjutnya, maka pengguna dapat mengklik button Lanjutkan. Lalu akan muncul tampilan input seperti yang terlihat pada gambar 5.19 di bawah ini. Gambar 5.19 Tampilan Tutorial Dekripsi Vigenère Cipher Metode Huruf (3/4) 4. Pengguna dapat meng-input cipher text dan kunci pada TextBox yang telah tersedia. Sebagai contoh, cipher text yang dipilih penulis adalah huruf ‘Y’ dan kuncinya adalah huruf ‘K’. Setelah selesai meng-input, pengguna dapat mengklik Button proses. Lalu akan muncul tampilan output seperti yang terlihat pada gambar 5.20 di bawah ini. 79 Gambar 5.20 Tampilan Tutorial Dekripsi Vigenère Cipher Metode Huruf (4/4) 5. Setelah muncul tampilan output yang menjelaskan langkah-langkah dalam melakukan dekripsi, pengguna dapat mengklik Button Tutorial Enkripsi untuk melanjutkan ke pembelajaran Enkripsi Metode Huruf atau pengguna dapat mengklik Button Keluar untuk keluar dari tutorial ini. Selain tutorial pembelajaran, aplikasi ini juga dapat mengenkripsikan dan juga mendekripsikan teks baik kata tersebut diketik secara manual atau dengan membuka file berekstensi .txt yang menyimpan teks yang akan dienkripsikan atau dekripsikan. Berikut ini merupakan langkah untuk mengenkripsikan teks yang telah disimpan dalam bentuk file berekstensi .txt. 80 1. Pengguna dapat mengklik menu Vigenère Cipher lalu submenu Enkripsi. Lalu akan muncul tampilan seperti yang terlihat pada gambar 5.21 berikut. Gambar 5.21 Tampilan Enkripsi (Input) 2. Pengguna dapat memasukkan plain text dan kunci kedalam TextBox yang telah tersedia. Pengguna dapat memilih apakah ingin mengetikkan plain text-nya atau meng-import dari file berekstensi .txt. Sebagai contoh, penulis akan meng-import dari file berekstensi .txt dengan menklik button Cari. Maka akan terbuka tampilan seperti yang terlihat pada gambar 5.22 berikut. 81 Gambar 5.22 Tampilan Cari pada Enkripsi (Input) 3. Setelah muncul tampilan seperti gambar 5.22 di atas, maka pengguna dapat mencari file berekstensi .txt yang memuat teks yang hendak disandikan. Sebagai contoh, penulis memilih file ‘bawang.txt’. Setelah memilih, pengguna dapat menklik button Open. Setelah mengklik button Open, maka tampilannya akan menjadi seperti yang di gambar 5.23 berikut. Gambar 5.23 Tampilan Enkripsi (Input) setelah mengimport file 82 4. Setelah tampilan menjadi seperti gambar 5.23 di atas, maka pengguna dapat memasukkan kunci yang diperlukan untuk mengenkripsikan plain text tersebut. Setelah pengguna memasukkan kunci, maka button Enkripsi akan muncul. Pengguna dapat mengklik button Enkripsi untuk memulai proses pengenkripsian. Setelah button Enkripsi terklik, maka akan muncul MessageBox seperti di gambar 5.24 berikut. Pengguna dapat mengklik button Yes jika ingin melihat langkah pengenkripsian dan jumlah teks yang ingin dienkripsikan tidak terlalu panjang, atau pengguna dapat mengklik button No jika tidak ingin melihat langkah pengenkripsian atau jumlah teks yang ingin dienkripsikan terlalu panjang. Penulis akan mengklik button No karena jika mengklik button Yes, akan menyebabkan lag karena teks yang akan dienkripsikan terlalu panjang. Gambar 5.24 Tampilan MessageBox tampilkan langkah 83 Gambar 5.25 Tampilan Enkripsi (Output) 5. Setelah muncul tampilan seperti gambar 5.25 di atas, pengguna dapat memilih untuk menyimpan cipher text hasil enkripsi ke dalam file berekstensi .txt dengan menekan button Simpan, atau mengubah plain text atau kunci lalu dienkripsikan lagi dengan menekan button Enkripsi, atau ingin memulai pengenkripsian yang baru dengan cara menklik button Bersihkan. Sebagai contoh, penulis akan menyimpan cipher text hasil enkripsi dengan menekan button Simpan dan akan muncul tampilan seperti gambar 5.26 berikut. 84 Gambar 5.26 Tampilan Simpan pada Enkripsi (Output) 6. Pengguna dapat mencari folder yang akan digunakan untuk menyimpan file yang berisi cipher text tersebut, lalu memberikan nama file tersebut agar dapat dengan mudah ditemukan. Sebagai contoh, penulis memberikan nama ‘output bawang’ pada file yang akan disimpan, tidak perlu menambahkan ekstensi .txt karena aplikasi akan secara otomatis menambahkan ekstensi .txt tersebut. Setelah memberikan nama, pengguna dapat mengklik button Save untuk menyimpannya. Jika pengguna hendak menampilkan langkah pengenkripsian, maka pengguna dapat mengklik button Yes pada saat muncul MessageBox setelah mengklik tombol Enkripsi. Penulis mencoba pengkenkripsian lagi dengan plain text-nya adalah ‘STMIKTIME’ dan kuncinya adalah ‘KAMPUS’ dan penulis mengklik button Yes pada MessageBox. Maka akan muncul tampilan seperti gambar 5.27 berikut. 85 Gambar 5.27 Tampilan Enkripsi (Output + Langkah) Berikut ini merupakan langkah untuk mendekripsikan teks yang telah disimpan dalam bentuk file berekstensi .txt. 1. Pengguna dapat mengklik menu Vigenère Cipher lalu submenu Dekripsi. Lalu akan muncul tampilan seperti yang terlihat pada gambar 5.28 berikut. Gambar 5.28 Tampilan Dekripsi (Input) 86 2. Pengguna dapat memasukkan cipher text dan kunci kedalam TextBox yang telah tersedia. Pengguna dapat memilih apakah ingin mengetikkan cipher text-nya atau meng-import dari file berekstensi .txt. Sebagai contoh, penulis akan meng-import dari file berekstensi .txt dengan mengklik button Cari. Maka akan terbuka tampilan seperti yang terlihat pada gambar 5.29 berikut. Gambar 5.29 Tampilan Cari pada Dekripsi (Input) 3. Setelah muncul tampilan seperti gambar 5.29 di atas, maka pengguna dapat mencari file berekstensi .txt yang memuat teks yang hendak disandikan. Sebagai contoh, penulis memilih file ‘output bawang.txt’. Setelah memilih, pengguna dapat menklik button Open. Setelah mengklik button Open, maka tampilannya akan menjadi seperti yang di gambar 5.30 berikut. 87 Gambar 5.30 Tampilan Dekripsi (Input) setelah mengimport file 4. Setelah tampilan menjadi seperti gambar 5.30 di atas, maka pengguna dapat memasukkan kunci yang diperlukan untuk mendekripsikan plain text tersebut. Setelah pengguna memasukkan kunci, maka button Dekripsi akan muncul. Pengguna dapat mengklik button Dekripsi untuk memulai proses pendekripsian. Setelah button Dekripsi terklik, maka akan muncul MessageBox seperti di gambar 5.24 di atas. Pengguna dapat mengklik button Yes jika ingin melihat langkah pendekripsian dan jumlah teks yang ingin didekripsikan tidak terlalu panjang, atau pengguna dapat mengklik button No jika tidak ingin melihat langkah pendekripsian atau jumlah teks yang ingin didekripsikan terlalu panjang. Penulis akan mengklik button No karena jika mengklik button Yes, akan menyebabkan lag karena teks yang akan didekripsikan terlalu panjang. 88 Gambar 5.31 Tampilan Dekripsi (Output) 5. Setelah muncul tampilan seperti gambar 5.31 di atas, pengguna dapat memilih untuk menyimpan plain text hasil dekripsi ke dalam file berekstensi .txt dengan menekan button Simpan, atau mengubah cipher text atau kunci lalu didekripsikan lagi dengan menekan button Dekripsi, atau ingin memulai pendekripsian yang baru dengan cara menklik button Bersihkan. 6. Jika pengguna mengklik button Simpan, pengguna dapat mencari folder yang akan digunakan untuk menyimpan file yang berisi plain text tersebut, lalu memberikan nama file tersebut agar dapat dengan mudah ditemukan. Setelah memberikan nama, pengguna dapat mengklik button Save untuk menyimpannya. 89 5.2 Pembahasan Setelah penulis melakukan pengujian terhadap aplikasi yang dibuat, maka penulis menyimpulkan bahwa aplikasi ini memiliki beberapa keunggulan dan kelemahan. Adapun keunggulan dari aplikasi ini adalah sebagai berikut. 1. Aplikasi ini membantu menambah pemahaman pengguna yang ingin mempelajari tentang kriptografi terutama metode sandi Vigenère. 2. Selain sebagai media pembelajaran, aplikasi ini juga dapat mengenkripsikan dan mendekripsikan teks sehingga dapat digunakan untuk menyandikan pesan yang bersifat rahasia yang ingin dikirimkan. 3. Aplikasi ini dapat membaca dan menyimpan teks dalam bentuk file berekstensi .txt. 4. Simbol tanda baca, angka dan spasi langsung dihapus pada saat mengimport teks dalam bentuk file berekstensi .txt untuk menghindari bug pada saat menjalankan aplikasi. Adapun kelemahan dari aplikasi ini adalah sebagai berikut. 1. Karena proses pengenkripsian sandi Vigenère menggunakan kunci yang diulang-ulang, sandi ini dapat dipecahkan menggunakan metode Kasiski. Hal ini disebabkan karena umumnya terdapat frasa yang berulang-ulang pada cipher text yang dihasilkan. 2. Metode pengenkripsian sandi Vigenère hanya terbatas pada huruf saja. Pengguna tidak dapat mengenkripsikan angka, simbol, maupun spasi sehingga akan sangat sulit untuk membaca pesan panjang yang telah didekripsikan karena semua akan menyatu tanpa spasi. 90 3. Meskipun dapat membaca file berekstensi .txt, tetapi jika file itu mengandung karakter pindah baris, maka aplikasi tidak dapat membaca teks pada file tersebut sepenuhnya, maka pengguna diharapkan untuk menghapus atau tidak menggunakan perintah Enter. 4. Meskipun aplikasi mencegah pengguna untuk meng-input simbol baca, tetapi simbol-simbol lainnya di tabel ASCII lainnya masih tetap dapat diinput sehingga dapat mengganggu hasil pengenkripsian jadi penulis mengharapkan pengguna untuk tidak meng-input simbol-simbol tersebut pada aplikasi ini. 91 BAB VI KESIMPULAN DAN SARAN 6.1 Kesimpulan Berdasarkan pembahasan dan evaluasi pada bab-bab terdahulu dan setelah dilakukan penelitian dan pengujian, maka penulis dapat mengambil kesimpulan sebagai berikut. 1. Aplikasi pembelajaran kriptografi metode sandi Vigenère ini dapat menghasilkan pesan yang bersifat rahasia dimana informasi atau isi dari pesan tersebut tidak akan mudah diketahui oleh pihak yang tidak memiliki hak akses dan juga dapat menambah pemahaman pengguna mengenai kriptografi dengan metode sandi Vigenère. 2. Dalam menggunakan kriptografi, kunci harus tetap dijaga kerahasiaannya. Sedangkan algoritmanya dapat diketahui oleh siapapun tanpa mempengaruhi keamanannya. Kunci yang digunakan untuk mengenkripsi plain text sama dengan kunci yang digunakan untuk mendekripsi cipher text. Apabila kunci yang digunakan untuk mendekripsikan tidak sama dengan kunci yang digunakan untuk mengenkripsikan, maka hasil pendekripsian tidak akan sama dengan plain text semula sebelum dienkripsi. 3. Hasil dekripsi dari cipher text dengan menggunakan kunci yang sama dengan saat melakukan enkripsi, akan menghasilkan plain text yang sama dengan plain text sebelum dienkripsi. 92 6.2 Saran Adapun beberapa saran untuk pengembangan perangkat lunak lebih lanjut adalah sebagai berikut. 1. Agar kerahasiaan data tetap terjaga maka sebaiknya kerahasiaan kunci harus tetap dijaga kerahasiaannya, hanya orang yang besangkutan saja yang berhak untuk mengetahuinya. 2. Untuk ke depannya diharapkan agar aplikasi dapat memproses semua bentuk file, baik itu dalam format .doc, .xls, .pdf, .odt, .html dan sebagainya. Tidak hanya terbatas pada ekstensi .txt saja. 3. Untuk ke depannya juga diharapkan aplikasi ini dapat menghapus input simbol-simbol lainnya yang terdapat pada tabel ASCII yang tidak bisa diatasi oleh aplikasi sekarang. 4. Untuk ke depannya juga diharapkan agar metode sandi Vigenère ini dapat dikombinasikan dengan metode kriptografi lainnya untuk meningkatkan keamanan terhadap pesan yang telah disandikan. 93 DAFTAR PUSTAKA Munir, R., 2006, Kriptografi, Cetakan Pertama, Penerbit Informatika, Bandung. Ariyus, D., 2006, Kriptografi, Cetakan Pertama, Penerbit Graha Ilmu, Yogyakarta. Http://berbagi-ilmu-mifa309.blogspot.com/2012/05/pengertian-aplikasi.html, tanggal akses 26 Maret 2015. Http://bwahyudi.staff.gunadarma.ac.id/Downloads/files/13543/kriptografi-01.doc, tanggal akses 21 Maret 2015. Http://id.wikipedia.org/wiki/Aplikasi, tanggal akses 21 Maret 2015. Http://id.wikipedia.org/wiki/Sandi_Vigenere, tanggal akses 21 Maret 2015. Http://mzivara.blogspot.com/2011/04/desain-dan-analisis-keamananjaringan.html, tanggal akses 26 Maret 2015. Http://sun-coolin.blogspot.com/2012/07/algoritma-kriptografi-klasik-vigenerecipher.html, tanggal akses 26 Maret 2015. Http://www.erdisusanto.com/2012/10/konsep-dasar-kriptografi-simetris-dan.html, tanggal akses 26 Maret 2015.

Contoh penggunaan Kriptografi


Komunikasi dengan Telepon Seluler (GSM mobile phone)

· Penggunaan telepon seluler (ponsel) yang bersifat mobile memungkinkan orang berkoumikasi dari tempat mana saja.

· Telepon seluler bersifat nirkabel (wireless), sehingga pesan yang dikirim dari ponsel ditransmisikan melalui gelombang mikro (microwave) atau radio sampai ia mencapai base station (BST) terdekat, selanjutnya ditransfer melalui saluran kabel fixed.

· Karena menyadap sinyal radio jauh lebih mudah daripada menyadap sinyal pada saluran kabel, maka ini berarti GSM tidak lebih aman daripada telepon fixed konvensional.

· Untuk membuat komunikasi lewat ponsel aman, maka pesan dienkripsi selama transmisi dari ponsel ke BST terdekat. Metode enkripsi yang digunakan adalah metode cipher aliran (stream cipher).

· Masalah keamanan lain adalah identitas penelpon. Operator seluler harus dapat mengidentifikasi suatu panggilan (call) dan mengetahui siapa yang melakukan panggilan tersebut. Jadi, pada GSM diperlukan dua kebutuhan keamanan lainnya, yaitu kerahasiaan (confidentiality), yang merupakan kebutuhan bagi pelanggan, dan otentikasi pengguna (user authentication), yang merupakan kebutuhan bagi sistem.

· Dua kebutuhan ini dipenuhi dengan penggunaan smart card yang disebut SIM card. SIM card disediakan oleh operator seluler (service provider). SIM card berisi nilai otentikasi rahasia sepanjang 128-bit yang diketahui hanya oleh operator. Nilai ini digunakan sebagai kunci pada protokol otentikasi dengan menggunakan algoritma yang dipilih oleh operator.

· Ketika pengguna ponsel melakukan panggilan (call), identitasnya dikirim ke komputer host via BST untuk keperluan otentikasi. Komputer host melakukan verifikasi pengguna lalu membangkitkan pesan (challenge) dan mengirimnya ke BST.

· Program otentikasi menerima masukan 128-bit dan mengeluarkan response 128-bit, yang bergantung pada kunci otentikasi di dalam kartu. Dari 128-bit keluaran, hanya 32 bit yang dikirim dari SIM card ke BST sebagai response.Jadi, masih ada 96 bit yang hanya diketahui hanya oleh SIM card, BST, dan komputer host.

· SIM card juga berisi program stream cipher untuk mengenkripsi pesan dari ponsel ke BST. Kunci enkripsi panjangnya 64 bit, yang diambil dari 96 bit sisa dari response SIM card.

4. Transaksi E-commerce di Internet

· Sekarang banyak orang berbelanja melalui web di internet. Pembayaran barang dilakukan dengan menggunakan kartu kredit, yang berarti bahwa pembeli harus mengirimkan kode PIN kartu kredit dan informasi lainnya melalui internet. Karena alasan keamanan yang menyangkut informasi kartu kredit maka transaksi barang lewat internet tidak terlalu populer.

· Browsing web secara aman adalah fitur paling penting pada e-commerce. Secure Socket Layer (SSL) adalah protokol yang digunakan untuk browsing web secara aman. Kedua protokol ini memfasilitasi penggunaan enkripsi untuk data yang rahasia dan membantu menjamin integritas informasi yang dipertukarkan antara website dan web brwoser (misalnya Netscape, Interner Explorer, dsb).

· SSL adalah contoh protokol client-server, yang dalam hal ini web browser adalah client dan website adalah server. Client yang memulai komunikasi, sedangkan server memberi respon terhadap permintaan client. Fungsi paling dasar yang digunakan SSL adalah membentuk saluran untuk mengirimkan data terenkripsi, seperti data kartu kredit, dari browser ke website yang dituju.