• Tidak ada hasil yang ditemukan

PENGAMANAN FILE CITRA DENGAN SKEMA HYBRID CRYPTOSYSTEM MENGGUNAKAN ALGORITMA LUC DAN ALGORITMA MDTM CIPHER SKRIPSI DIAH MUSTIKA SARI

N/A
N/A
Protected

Academic year: 2022

Membagikan "PENGAMANAN FILE CITRA DENGAN SKEMA HYBRID CRYPTOSYSTEM MENGGUNAKAN ALGORITMA LUC DAN ALGORITMA MDTM CIPHER SKRIPSI DIAH MUSTIKA SARI"

Copied!
102
0
0

Teks penuh

(1)

PENGAMANAN FILE CITRA DENGAN SKEMA HYBRID CRYPTOSYSTEM MENGGUNAKAN ALGORITMA

LUC DAN ALGORITMA MDTM CIPHER

SKRIPSI

DIAH MUSTIKA SARI 131401016

PROGRAM STUDI S-1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN 2018

(2)

PENGAMANAN FILE CITRA DENGAN SKEMA HYBRID CRYPTOSYSTEM MENGGUNAKAN ALGORITMA

LUC DAN ALGORITMA MDTM CIPHER

SKRIPSI

Diajukan untuk melengkapi tugas akhir dan memenuhi syarat memperoleh ijazah Sarjana S-1 Ilmu Komputer

DIAH MUSTIKA SARI 131401016

PROGRAM STUDI S-1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN 2018

(3)

PERSETUJUAN

Judul : PENGAMANAN FILE CITRA DENGAN SKEMA

HYBRID CRYPTOSISTEM MENGGUNAKAN ALGORITMA LUC DAN ALGORITMA MDTM CIPHER

Kategori : SKRIPSI

Nama : DIAH MUSTIKA SARI

Nomor Induk Mahasiswa : 131401016

Program Studi : SARJANA (S-1) ILMU KOMPUTER

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

Diluluskan di Medan, Januari 2018

Komisi Pembimbing

Pembimbing 2 Pembimbing 1

Amalia, ST., MT. Prof. Dr. M. Zarlis. M.Sc NIP. 197812212014042001 NIP. 195707011986011003

Diketahui/disetujui oleh

Program Studi S-1 Ilmu Komputer Ketua,

Dr. Poltak Sihombing, M. Kom NIP. 196203171991031001

(4)

PERNYATAAN

PENGAMANAN FILE CITRA DENGAN SKEMA HYBRID CRYPTOSYSTEM MENGGUNAKAN ALGORITMA LUC

DAN ALGORITMA MDTM CIPHER

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.

Medan, Januari 2018

Diah Mustika Sari 131401016

(5)

PENGHARGAAN

Puji dan syukur kehadirat Allah SWT yang telah menuntun dan memampukan penulis untuk menyelesaikan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Komputer dari Program Studi S1 Ilmu Komputer, Fakultas Ilmu Komputer dan Teknologi Informasi, Universitas Sumatera Utara.

Penulis juga bersyukur berada di antara pihak-pihak yang berperan penting dalam penyelesaian skripsi ini. Penulis berterimakasih kepada:

1. BapakProf.Dr.RuntungSitepu,S.H,M.HumselakuRektorUniversitasSumatera Utara

2. Bapak Prof. Dr. Opim Salim Sitompul selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara

3. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu Komputer,FakultasIlmuKomputerdanTeknologiInformasiUniversitasSumatera Utara

4. Bapak Herriyance, S.T., M.Kom selaku Sekretaris Program Studi S1 Ilmu Komputer Fasilkom-TI USU

5. Prof. Dr. Muhammad Zarlis, M.Sc selaku Dosen Pembimbing I yang senantiasa memberikan kritik dan saran kepada penulis dalam menyelesaikan skripsi ini.

6. Ibu Amalia, S.T, M.T selaku Dosen Pembimbing II yang telah memotivasi dan senantiasa membimbing dan memberikan kritik dan saran yang sangat berarti bagi penulis.

7. Seluruh tenaga pengajar dan pegawai di Program Studi S1Ilmu KomputerFasilkom-TIUniversitas SumateraUtara

8. Ayahanda Yadi dan Ibunda Rasmuli Br Ginting, serta adinda tersayang Sri Retno Ardianti dan Mas Agung Ramadhan dan juga para sepupu-sepupu tercinta Cindy Lupita Sari, Putri Mayang sari, Friska Yolanda dan Winda Kumala Sari yang selalu memberikan doa, menjadi sumber motivasi, pendukung, penyemangat, penghibur dan inspirasi terbesar bagi penulis dalam menyelesaikanskripsi.

9. Sahabat-sahabat terbaik IP Shintya Dirda, Chyntia Aulia Nurani Siregar, Rahmi Suliani,Fikri Haisar, Dhiwa Arie Pratama, Ahmad Pratama Ramadhan, Setiadi Prayoga,Yoga

Aditya,AgumGumelar,ExaudiNaiposposSibagariang,M.Farhandikayangselalu

(6)

memberikan semangat dandorongan.

10. Teman-temansemasakuliahyangselalumemotivasi,membimbingdanmembantu penulisdalammengerjakanskripsiRavizaSitepu,abangdaFaridAkbarSiregardan Muhammad MiftahulHuda.

11. Teman-teman mahasiswa S1-Ilmu Komputer Mutiara Rizky, Nisa Nst, Putri chaliska, Winda, Kiki F, Jaysilen, Suci, Mori, Brando, Irma, teman-teman praktikan Lab 1, khususnya KOM A dan teman-teman stambuk 2013 Program Studi S1 Ilmu Komputer USU yang telah memberikan masukan dan semangat dalam penyelesaian tugas akhirini.

12. Sahabat yang selalu menemani penulis Nina Karina, Putri Megawati, Indah Dwi Nanda Pinem.

13. Semua pihak yang terlibat langsung ataupun tidak langsung yang tidak dapat penulis ucapkan satu per satu yang telah membantu penyelesaian tugas akhirini.

Penulis menyadari bahwa penelitian ini tidak sempurna.Dengan segala kelebihan dan kekurangannya, semoga skripsi ini bermanfaat bagi siapa saja yang membacanya.

Medan, Januari 2018

Penulis

(7)

ABSTRAK

Teknologi informasi saat ini berkembang pesat dan mempengaruhi hampir seluruh aspek pada kehidupan manusia.Terutama di dalam pengamanan distribusi dokumen pada suatu jaringan.Salah satunya adalah citra digital. File citra digital sangat mudah dikirimkan melalui berbagai media dengan bantuan internet. Hal ini memungkinkan terjadinya kecurangan atau kejahatan dalam pendistribusian citra tersebut. Salah satu cara yang aman agar citra tersebut hanya dapat dibaca oleh penerimanya adalah dengan memanfaatkan kriptografi. Metode yang digunakan adalah Hybrid Cryptosystem dimana metode ini memanfaatkan keunggulan algoritma simetris dan algoritma asimetris serta saling menutupi kelemahannya.Dalam penelitian ini mengkombinasikan algoritma MDTM Cipher yang merupakan algoritma simetris dengan algoritma LUC yang merupakan algoritma asimetris. Penelitian akan mengenkripsi serta mendekripsi citra dengan algoritma MDTM cipher dan akan mengenkripsi serta mendekripsi kunci MDTM cipher dengan algoritma LUC.

Penelitian ini diimplementasikan ke dalam sebuah sistem aplikasi yang dirancang menggunakan bahasa pemrograman C#.Hasil penelitian menunjukkan bahwa hybrid cryptosystem dapat mengamankan serta mengembalikan citra seperti semula. Waktu rata-rata enkripsi untuk file citra .jpg dengan resolusi maksimal 100 piksel adalah 1151.68 milisekon, maksimal 200 piksel adalah 31174.366 milisekon, maksimal 300 piksel adalah 193525.86 milisekon, maksimal 400 piksel adalah 672499.63 milisekon. Sedangkan waktu rata-rata dekripsi untuk cipher image dengan reolusi maksimal 100 piksel adalah 857.82, maksimal 200 piksel 26272.50 milisekon, maksimal 300 piksel 164645.60 milisekon, maksimal 400 piksel adalah 612099.27 milisekon. Penelitian menunjukkan waktu rata-rata proses dekripsi lebih cepat dari proses enkripsi. Kemudian ukuran citra setelah dekripsi menjadi lebih besar dibandingkan dengan citra asli.

Kata Kunci :Citra,Hybrid Cryptosystem, Kriptografi, LUC, MDTM Cipher

(8)

IMAGE FILE SECURITY WITH HYBRID CRYPTOSYSTEM USING LUC ALGORITHM AND MDTM CIPHER ALGORITHM

ABSTRACT

Information technology is currently growing rapidly and affect almost all aspects of human life. Especially in securing the distribution of documents on a network. One of them is digital image. Digital image files are very easy to send through various media with the help of internet. This allows the occurrence of fraud or crime in the distribution of the image. One of the safest ways that the image can only be read by the recipient is by utilizing cryptography. The method used is Hybrid Cryptosystem where this method utilizes the advantages of symmetric algorithms and asymmetric algorithms and overlap each other's weaknesses. In this research combines the MDTM Cipher algorithm which is a symmetric algorithm with LUC algorithm which is an asymmetric algorithm. The research will encrypt and decrypt the image with the MDTM cipher algorithm and will encrypt and decrypt the key of MDTM cipher using LUC algorithm. This research is implemented into an application system designed using C # programming language. The results show that hybrid cryptosystem can secure and restore the image as before. The average encryption time for a .jpg image file with a maximum resolution of 100 pixels is 1151.68 milliseconds, a maximum of 200 pixels is 31174.366 miliseconds, a maximum of 300 pixels is 193525.86 milliseconds, a maximum of 400 pixels is 672499.63 miliseconds. While the average decryption time for cipher image with a maximum resolution of 100 pixels is 857.82 miliseconds, maximum 200 pixels 26272.50 miliseconds, maximum 300 pixels 164645.60 miliseconds, maximum 400 pixels is 612099.27 miliseconds. Research shows that the average time of the decryption process faster than the encryption process. Then the image size after decryption becomes larger than the original image.

Keywords :Cryptography, Hybrid Cryptosystem, Image, LUC, MDTM Cipher

(9)

DAFTAR ISI

Halaman

Persetujuan i

Pernyataan ii

Penghargaan iii

Abstrak v

Abstract vi

Daftar Isi vii

Daftar Tabel ix

Daftar Gambar x

Daftar Lampiran xi

Bab 1 Pendahuluan

1.1.Latar Belakang 1

1.2.Rumusan Masalah 2

1.3.Batasan Masalah 2

1.4.Tujuan Penelitian 3

1.5.Manfaat Penelitian 3

1.6.Metodologi Penelitian 3

1.7.Sistematika Penulisan 4

Bab 2 Landasan Teori

2.1.Kriptografi 6

2.1.1. Definisi Kriptografi 6

2.1.2. Tujuan Kriptografi 7

2.1.3. Komponen Kriptografi 7

2.1.4. Jenis-Jenis Kriptografi 8

2.1.5. Hybrid Cryptosystem 10

2.2.Algoritma 10

2.2.1. Algoritma Simetris MDTM Cipher 10

2.2.2. Algoritma Asimetris LUC

2.3.Citra Digital 15

2.3.1. Citra Biner (Monokrom) 15

2.3.2. Citra Grayscale (Keabuan) 15

2.3.3. Citra Warna (True Color) 16

2.4.Penelitian Relevan 16

Bab 3 Analisis dan Perancangan

3.1.Analisis Sistem 17

3.1.1. Analisis Masalah 17

3.1.2. Analisis Kebutuhan 18

3.1.3. Arsitektur Umum 19

3.2.Pemodelan Sistem 20

3.2.1. Use Case Diagram 21

3.2.2. Activity Diagram 21

(10)

3.2.3. Sequence Diagram 23

3.2.4. Flowchart 24

3.3.Perancangan Sistem 28

3.3.1. Halaman Beranda 28

3.3.2. Halaman Enkripsi 29

3.3.3. Halaman Dekripsi 31

3.3.4. Halaman Profil 32

Bab 4 Implementasi dan Pengujian Sistem

4.1.Implementasi Sistem 34

4.1.1. Halaman Beranda 34

4.1.2. Halaman Enkripsi 34

4.1.3. Halaman Dekripsi 35

4.1.4. Halaman Profil 36

4.2.Pengujian Sistem

4.2.1. Pengujian Pembangkit Kunci 37

4.2.2. Pengujian Proses Enkripsi 39

4.2.3. Pengujian Proses Dekripsi 43

4.2.4. Analisis Proses Enkripsi Citra Digital Berwarna 48 4.2.5. Analisis Proses Dekripsi Cipher Image 51 4.2.6. Analisis Citra Awal dengan Citra Hasil Dekripsi 54 Bab 5 Kesimpulan dan Saran

5.1.Kesimpulan 56

5.2.Saran 56

Daftar Pustaka 58

(11)

DAFTAR TABEL

Halaman

Tabel 2.1 MDTM Cipher 16 x 16 11

Tabel 3.1 Keterangan Gambar Rancangan Interface Halaman Beranda 29 Tabel 3.2 Keterangan Gambar Rancangan Interface Halaman Enkripsi 30 Tabel 3.3 Keterangan Gambar Rancangan Interface Halaman Dekripsi 32 Tabel 3.4 Keterangan Gambar Rancangan Interface Halaman Profil 33 Tabel 4.1 Pengujian Enkripsi pada Citra Digital Berwarna 49 Tabel 4.2 Running Time Enkripsi File Citra dengan Resolusi Berbeda 50

Tabel 4.3 Pengujian Dekripsi pada Cipher Image 52

Tabel 4.4 Running TimeDekripsi Cipher Image dengan Resolusi Berbeda 53 Tabel 4.5 Analisis Citra Awal dengan Citra Hasil Dekripsi 54

(12)

DAFTAR GAMBAR

Halaman

Gambar 2.1 Skema proses enkripsi dan dekripsi 6

Gambar 2.2 Skema algoritma simetris 7

Gambar 2.3 Skema algoritma asimetris 15

Gambar 3.1 Diagram Ishikawa Masalah Penelitian 18

Gambar 3.2 Arsitektur Umum Sistem 19

Gambar 3.3 Use Case Diagram Sistem 21

Gambar 3.4 Activity Diagram Enkripsi 22

Gambar 3.5 Activity Diagram Dekripsi 22

Gambar 3.6 Sequence Diagram Enkripsi 23

Gambar 3.7 Sequence Diagram Dekripsi 23

Gambar 3.8 Flowchart Enkripsi Sistem 24

Gambar 3.9 Flowchart Dekripsi Sistem 25

Gambar 3.10 Flowchart Enkripsi Algoritma MDTM Cipher 26 Gambar 3.11 Flowchart Dekripsi Algoritma MDTM Cipher 27

Gambar 3.12 Rancangan Interface Halaman Beranda 28

Gambar 3.13 Rancangan Interface Halaman Enkripsi 30 Gambar 3.14 Rancangan Interface Halaman Dekripsi 31

Gambar 3.12 Rancangan Interface Halaman Profil 33

Gambar 4.1 Halaman Beranda 34

Gambar 4.2 Halaman Enkripsi 35

Gambar 4.3 Halaman Dekripsi 36

Gambar 4.4 Halaman Profil 36

Gambar 4.5 Tampilan input kunci MDTM Cipher 38

Gambar 4.6 Tampilan membangkitkan kunci 38

Gambar 4.7 Tampilan pop up input citra 40

Gambar 4.8 Tampilan enkripsi citra 40

Gambar 4.9 Tampilan pop up save cipher image 41

Gambar 4.10 Tampilan proses enkripsi kunci MDTM 42

Gambar 4.11 Tampilan pop up save cipher key 42

Gambar 4.12 Tampilan pop up save private key 43

Gambar 4.13 Tampilan proses dekripsi 44

Gambar 4.14 Tampilan pop up memilih cipher key 45

Gambar 4.15 Tampilan pop up memilih private key 45

Gambar 4.16 Tampilan dekripsi cipher key 46

Gambar 4.17 Tampilan pop up inputcipher image 47

Gambar 4.18 Tampilan dekripsi cipher image 47

Gambar 4.19 Tampilan pop up menyimpan citra asli 48 Gambar 4.20 Grafik Hubungan Resolusi Gambar dengan Running Time Enkripsi 50 Gambar 4.21 Grafik Hubungan Ukuran Citra Asli dengan Cipher Image 51 Gambar 4.22 Grafik Hubungan Resolusi Gambar dengan Running Time Dekripsi 53

(13)

DAFTAR LAMPIRAN

Halaman

Lampiran 1 Listing Program A-1

Lampiran 2 Curriculum Vitae B-1

(14)

BAB 1 PENDAHULUAN

1.1. Latar Belakang

Teknologi informasi saat ini berkembang pesat dan mempengaruhi hampir seluruh aspek pada kehidupan manusia. Terutama di dalam pengamanan distribusi dokumen pada suatu jaringan. Salah satunya adalah citra digital. Citra digital telah digunakan secara luas dalam berbagai macam hal sehingga perlindungan pada citra digital dari pihak yang tidak memiliki hak akses pun menjadi sangat penting. Hampir semua informasi ini dikumpulkan dan disimpan dalam komputer lalu kemudian dikirimkan melalui jaringan, contohnya internet. Bila informasi penting ini jatuh ke tangan orang yang salah, maka akan dapat menyebabkan hal-hal yang tidak diinginkan, seperti memanipulasi gambar yang bersifat negatif yang dapat menyebabkan dan merugikan si pemilik gambar. Hal inilah yang menyebabkan perlindungan pada citra digital itu menjadi sangat penting. Salah satu metode yang digunakan untuk menjaga keamanan data tersebut adalah kriptografi.

Kriptografi adalah ilmu dan seni untuk menjaga kerahasiaan data yang berhubungan dengan aspek keamanan informasi. Hal ini bertujuan agar sebuah data yang disampaikan hanya dimengerti oleh orang yang berhak untuk mengetahuinya (Sukarno, 2013). Untuk memberikan keamanan pada data terkhusus file citra, maka kali ini algoritma LUC akan dikombinasikan dengan algoritma MDTM Cipher.

Sehingga akan lebih aman mengamankan file dari proses kejahatan, seperti pencurian file dan lainnya.

Algoritma LUCmerupakan algoritma kriptografi kunci publik yang dikembangkan oleh Peter J. Smith dari New Zealand pada tahun 1993. Algoritma LUC ini dirancang oleh Peter J. Smith setelah ia berhasil meneliti dan melihat kelemahan dari metode RSA(Anggraini, 2017). Algoritma ini merupakan algoritma yang berbasis dari Lucas Function. Algoritma LUC sendiri hampir sama dengan

(15)

metode RSA hanya saja fungsi pangkat pada metode RSA diganti dengan fungsi Lucas pada metode LUC (Christian, 2017). Metode LUC adalah sebuah public-key

(16)

cryptosystemyang menggunakan grup yang berdasar pada barisan Lucas (operasi aritmatik spesifik turunan dari barisan Lucas).

Algoritma MDTM Cipher adalah singkatan dari (Monograph-Digraph- Transposition-Monograph) merupakan algoritma simetris dimana hubungan antara huruf individu dari teks polos dan Cipher cukup kompleks karena setiap huruf asli diganti dengan masing-masing kemudian secara terpisah menggabungkan dengan huruf dari pasangan lain untuk membentuk digraph, yang kemudian kembali diubah menjadi monograph. Dalam keadaan tertentu menghasilkan teks sandi yang terlihat aneh jika dibandingkan dengan plaintext asli (Churchhouse, 2004).

Dengan melihat dua jenis algoritma di atas, penelitian ini menggunakan metode Hybrid Cryptosystem untuk pengamanan dan penyandian pada pesan.Metode Hybrid Cryptosystem adalah sebuah metode yang merupakan kombinasi dari algoritma kriptografi simetris dan algoritma kriptografi asimetris untuk memperoleh sebuah keunggulan kecepatan data dari masing-masing algoritma tersebut.

Berdasarkan pemaparan latar belakang di atas yang telah diuraikan, maka dilakukanlah penelitian dengan judul “Pengamanan File Citra Dengan Skema Hybrid Cryptosystem Menggunakan Algoritma LUC dan Algoritma MDTM Cipher”.

1.2. Rumusan Masalah

Citra atau gambar merupakan informasi yang penting dan sering disebarkan melalui berbagai media yang terkadang tak ingin diketahui oleh pihak ketiga.Untuk itu keamanan dalam pengiriman citra sangat diperlukan dengan mengkombinasikan algoritma kriptografi MDTM Cipher dan LUC dengan menggunakan metode Hybrid Cryptosystem.

1.3. Batasan Masalah

Dari uraian perumusan masalah diatas, agar tulisan ini tidak menyimpang dari tujuan yang diharapkan maka diperlukan batasan masalah sebagai berikut:

1. Aplikasi bersifat offline dan berbasis desktop.

2. Teknik pengamanan hanya dilakukan pada file citra berformat (.JPG).

3. Pengaplikasian menggunakan bahasa c#.

(17)

4. File citra yang akan digunakan berwarna dan memiliki ukuran maksimal 500x500 piksel.

5. Menghitung Real Running Time proses enkripsi dan dekripsi file citra.

6. Penelitian ini hanya membahas tentang pengamanan file citra menggunakan algoritma LUC yang dikombinasikan dengan MDTM Cipher.

1.4. Tujuan Penelitian

1. Mengimplementasikan Kriptografi Hybrid dengan algoritma LUC dan algoritma MDTM Cipher dalam pengamanan file (.JPEG).

2. Mengetahui waktu yang digunakan untuk enkripsi dan dekripsi pada pengamanan file (.JPEG).

1.5. Manfaat Penelitian

1. Mmperoleh sebuah sistem yang dapat digunakan untuk mengamankan pesan pada citra digital.

2. Membantu pemahaman alur kerja pada algoritma LUC dan algoritma MDTM Cipher.

1.6. Metodologi Penelitian

Penelitian ini menerapkan beberapa metode penelitian sebagai berikut:

1. Studi Literatur

Pada tahap ini dilakukan pengumpulan referensi yang diperlukan dalam penelitian.Hal ini dilakukan agar dapat memperoleh informasi dan data yang diperlukan terkait dengan metode LUC dan metode MDTM Cipher.Referensi yang digunakan berupa buku, jurnal, tesis, skripsi, artikel, ataupun situs internet yang berkaitan dengan penelitian ini.

2. Analisis Data dan Perancangan

Tahap ini digunakan untuk mengolah data dari hasil literatur yang kemudian dianalisis dan dirancang dengan menggunakan algoritma LUC dan algoritma MDTM Cipher. Proses perancangan ini meliputi pembuatan algoritma program, pembuatan flowchart, rancangan aplikasi, dan pembuatan interface aplikasi.

3. Implementasi

(18)

Pada tahap ini algoritma LUC dan MDTM Cipher diimplementasikan dengan menggunakan bahasa pemrograman C#.

4. Pengujian

Pada tahap ini prototipe sistem yang telah diimplementasikan dilakukan pengujian apakah aplikasi yang sudah dirancang berjalan baik atau tidak sesuai dengan tujuan penelitian.

5. Dokumentasi

Setelah semua tahap selesai dilakukan maka, penulis akan membuat laporan dan kesimpulan yang akan didokumentasikan dalam bentuk laporan akhir (skripsi).

1.7. Sistematika Penulisan

Sistematika penulisan skripsi ini terdiri dari beberapa bagian utama yang dijelaskan seperti berikut:

BAB 1 PENDAHULUAN

Menjelaskan latar belakang dari penelitian yang dilakukan, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metodologi penelitian dan sistematika penulisan dari skripsi ini.

BAB 2 LANDASAN TEORI

Berisi penjelasan singkat mengenai kriptografi, citra digital,algoritma LUC, algoritma MDTM Cipher, dan beberapa penelitian terdahulu yang relevan.

BAB 3 ANALISIS DAN PERANCANGAN

Membahas analisis terhadap masalah penelitian, analisis kebutuhan dalam membangun sistem dan perancangan terhadap sistem yang akan dibangun.

BAB 4 IMPLEMENTASI DAN PENGUJIAN

Merupakan hasil penelitian yang dilakukan. Berisi tentang penjelasan implementasi sistem berdasarkan analisis dan perancangan sistem, skenario pengujian terhadap sistem yang telah dibangun serta pembahasan hasil pengujian.

BAB 5 KESIMPULAN DAN SARAN

(19)

Berisi kesimpulan dari keseluruhan penelitian dan saran berdasarkan hasil pengujian yang diharapkan dapat bermanfaat untuk pengembangan selanjutnya.

(20)

BAB 2

LANDASAN TEORI

2.1. Kriptografi

2.1.1. Definisi Kriptografi

Secara etimologi kata kriptografi (Cryptography) berasal dari bahasa Yunani, yaitu kryptos yang artinya tersembunyi atau rahasia dan graphein yang artinya tulisan (Prayudi, 2005). Awal mula kriptografi dipahami sebagai ilmu tentang menyembunyikan pesan (Sadikin, 2012), tetapi seiring perkembangan zaman hingga saat ini pengertian kriptografi berkembang menjadi ilmu tentang teknik matematis yang digunakan untuk menyelesaikan persoalan keamanan berupa privasi dan otentikasi (Diffie, 1976).

Dalam kriptografi, terdapat dua proses yang sangat penting yaitu proses enkripsi dan proses dekripsi. Pada proses enkripsi pesan asli (plaintext) diubah menjadi pesan yang disandikan (ciphertext). Agar pesan tidak dapat dipahami oleh pihak lain maka pesan perlu disandikan ke bentuk lain yang tidak dapat dipahami.

Sedangkan pada proses dekripsi pesan yang sudah disandikan sebelumnya (ciphertext) diubah kembali menjadi pesan asli (plaintext). Ciphertext harus dapat ditransformasikan kembali menjadi plaintext agar pesan yang dikirim bisa dibaca oleh si penerima pesan. Skema proses enkripsi dan dekripsi secara sederhana dapat dilihat pada Gambar 2.1.

Plaintext Ciphertext Plaintext

Gambar 2.1 Skema proses enkripsi dan dekripsi

Enkripsi Dekripsi

(21)

2.1.2. Tujuan Kriptografi

Ada empat tujuan mendasar dari kriptografi yang juga merupakan aspek keamanan informasi (Munir, 2016) yaitu:

1. Kerahasiaan, adalah aspek yang berhubungan dengan penjagaan isi informasi dari siapapun kecuali yang memiliki otoritas atau kunci rahasia untuk membuka informasi yang telah dieknripsi.

2. Integritas data, adalah aspek yang berhubungan dengan penjagaan dari perubahan data secara tidak sah.

3. Autentikasi, adalah aspek yang berhubungan dengan identifikasi atau pengenalan, baik secara kesatuan sistem maupun informasi itu sendiri.

4. Non-repudiation (menolak penyangkalan), adalah usaha untuk mencegah terjadinya penyangkalan terhadap pengiriman suatu informasi oleh yang mengirimkan, atau harus membuktikan bahwa suatu pesan berasal dari seseorang, apabila ia menyangkal mengirim informasi tersebut.

2.1.3. Komponen Kriptografi

Menurut (Ariyus, 2008), dalam kriptografi terdapat beberapa komponen dasar penting antara lain:

1. Enkripsi

Enkripsi merupakan pengamanan data yang dikirimkan sehingga terjaga kerahasiaannya.Pesan asli disebut plaintext (teks biasa), yang diubah menjadi kode-kode yang tidak dimengerti. Enkripsi juga dapat diartikan sebagai cipher atau kode.

2. Dekripsi

Dekripsi merupakan kebalikan dari enkripsi, yaitu pesan yang telah dienkripsi dikembalikan ke bentuk awalnya.Algoritma yang digunakan untuk dekripsi pun berbeda dengan yang digunakan pada enkripsi.

3. Kunci

Kunci merupakan parameter yang digunakan untuk melakukan enkripsi dan dekripsi.Kunci terbagi menjadi dua jenis, yaitu kunci rahasia (private key) dan kunci umum (public key).

(22)

4. Ciphertext

Ciphertext merupakan suatu pesan yang melalui proses dari enkripsi. Pesan yang ada pada teks-kode tidak dapat dibaca karena berupa karakter yang tidak mempunyai arti.

5. Plaintext

Plaintext sering disebut juga sebagai cleartext.Teks-asli atau teks-biasa ini merupakan pesan yang ditulis yang mempunyai makna atau arti.Teks asli ini yang kemudian diproses menggunakan algoritma kriptografi agar menjadi ciphertext (teks-kode).

6. Pesan

Pesan merupakan data atau informasi yang dikirim melalui kurir, saluran komunikasi data, dsb.Atau yang dapat disimpan di dalam media perekaman (kertas, storage, dsb).

7. Cryptanalysis

Cryptanalysis merupakan analisis kode atau suatu ilmu untuk mendapatkan teks- asli tanpa harus mengetahui kunci yang sah secara wajar.Analisis kode juga menemukan kelemahan dari algoritma kriptografi yang pada akhirnya dapat menemukan kunci atau teks-asli dari teks-kode yang dienkripsi dengan algoritma tertentu.

2.1.4. Jenis-jenis Algoritma Kriptografi

Secara umum ada dua jenis kriptografi berdasarkannya kuncinya, yaitu Algoritma Simetris dan Algoritma Asimetris.

2.1.4.1. Algoritma Simetris

Algoritma simetris sering juga dikenal dengan algoritma kunci rahasia atau sandi kunci rahasia. Algoritma simetris adalah algoritma kriptografi yang memakai kunci enkripsi yang sama dengan kunci dekripsinya. Algoritma ini mengharuskan pengirim dan penerima menyetujui suatu kunci tertentu sebelum mereka saling berkomunikasi.Keamanan algoritma ini tergantung pada kuncinya, jika kunci diberitahukan atau dibocorkan maka siapa saja dapat mengenkripsi dan mendekripsi pesan yang dikirim, jadi kunci harus benar-benar rahasia dan aman.

(23)

Adapun sketsa atau gambaran umum mengenai kunci simetris terdapat pada Gambar 2.2 dibawah ini:

Kunci

Plaintext Ciphertext Plaintext

Gambar 2.2.Skema Algoritma Simetris

2.1.4.2. Algoritma Asimetris

Algoritma asimetris sering juga dikenal dengan algoritma kunci publik atau sandi kunci publik.Algoritma asimetris adalah algoritma yang memakai dua jenis kunci, yaitu kunci publik (public key) dan kunci rahasia (secret key).Kunci publik adalah kunci yang digunakan untuk mengenkripsi pesan.Sedangkan kunci rahasia digunakan untuk mendekripsi pesan.

Kunci publik bersifat umum, artinya kunci ini tidak dirahasiakan sehingga bisa dilihat oleh siapa saja.Sedangkan kunci rahasia adalah kunci yang dirahasiakan dan hanya orang-orang tertentu saja yang dapat mengetahuinya. Keuntungan utama dari algoritma ini adalah memberikan jaminan keamanan kepada siapa saja yang melakukan pertukaran informasi meskipun diantara mereka tidak ada kesepakatan mengenai keamanan pesan terlebih dahulu maupun saling tidak mengenal satu sama lainnya.

Adapun proses enkripsi dan dekripsi dengan algoritma asimetris dapat dilihat pada Gambar 2.3 dibawah ini:

Kunci Publik Kunci Privat

Plaintext Ciphertext Plaintext

Gambar 2.3. Skema Algoritma Asimetris

Algoritma asimetris pertama kali dipublikasikan oleh Diffie dan Hellman pada tahun 1976 dalam papernya yang berjudul “New Directions in Cryptography”.

Enkripsi Dekripsi

Enkripsi Dekripsi

(24)

2.1.5. Hybrid Cryptosystem

Hybrid Cryptosystem yaitu kombinasi kriptografi dengan menggabungkan algoritma simetris dan algoritma asimetris atau dengan public key dan private key (Fauziah, 2008).Karena kelebihan dan kekurangan yang ada pada masing-masing algoritma simetris dan algoritma asimetris, maka tidaklah benar bahwa kriptografi kunci asimetris menggantikan kriptografi kunci simetris.Karena kriptografi kunci asimetris mempunyai kelemahan dari segi waktu komputasi dan ukuran ciphertext dibandingkan dengan kriptografi kunci simetris, maka hal ini mempunyai implikasi dalam praktek penggunaan. Sedangkan kelebihan kriptografi kunci simetri adalah pada segi kecepatan untuk proses enkripsi dan dekripsi yang tinggi, namun memiliki kelemahan dalam segi pendistribusian kuncinya. Untuk mengatasi kelemahan masing-masing algoritma kriptografi tersebut, maka dipadukan kedua sistem algoritma tersebut. Perpaduan atau penggabungan sistem ini lah yang disebut dengan Hybrid Cryptosystem.

Kriptografi Hybrid sering dipakai karena memanfaatkan keunggulan kecepatan pemrosesan data oleh algoritma simetris dan kemudahan transfer kunci menggunakan algoritma asimetris. Hal ini mengakibatkan peningkatan kecepatan tanpa mengurangi kenyamanan serta keamanan.

2.2. Algoritma

2.2.1. Algoritma Simetris MDTM Cipher

Algoritma MDTM (Monograph-Digraph-Transposition-Monograph) Cipher merupakan algoritma dimana hubungan antara huruf individu dari teks polos dan cipher cukup kompleks karena setiap huruf asli diganti dengan huruf yang masing- masing kemudian secara terpisah menggabungkan dengan huruf dari pasangan lain untuk membentuk digraph, yang kemudian kembali diubah menjadi monograph.

Dalam keadaan tertentu menghasilkan teks sandi yang terlihat aneh jika dibandingkan dengan plaintext asli (Churchhouse, 2004).

2.2.1.1. Enkripsi MDTM Cipher

Enkripsi algoritma MDTM Cipher pada penelitian ini menggunakan tabel monograph ukuran 16x16. Enam belas baris dan kolom diidentifikasikan oleh huruf A, B, C, D, E, F, G, H, I, J, K, L, M, N, O dan P seperti pada tabel 2.1.berikut :

(25)

Tabel 2.1 MDTM Cipher 16 x 16

A B C D E F G H I J K L M N O P

A SO

H ST

X ET

X EOT ENQ ACK BE

L BS TAB LF VT FF CR S

O SI DL

E

B D

C1 DC

2 DC

3 DC4 NAK SYN ET

B CAN EM SUB ES

C FS RS U

S DE L

spa ce

C ! " # $ % & ' ( ) * + , - . / 0

D 1 2 3 4 5 6 7 8 9 : ; < = > ? @

E A B C D E F G H I J K L M N O P

F Q R S T U V W X Y Z [ \ ] ^ _ `

G a B c d e f G H i j k l m n o p

H q R s t u v W X y z { | } ~ PA

D

I , ƒ ˆ Š Œ RI SS

2 SS3 DC

5

J ˜ š œ OS

C P

M Ÿ spa

ce

K ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ® ¯ °

L ± ² ³ ´ µ · ¸ ¹ º » ¼ ½ ¾ ¿ À

M Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð

N Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß à

O á Â ã ä å æ Ç È é ê ë ì í î Ï ð

P ñ Ò ó ô õ ö ÷ Ø ù ú û ü ý þ Ÿ Ā

Setiap huruf dalam plaintext disubstitusi menjadi dua huruf yang ditentukan oleh baris dan kolom. Sebagai contoh karakter Gdienkripsi menjadi EG, serta karakter d dienkripsi menjadi GD. Ciphertext yang dihasilkan akan menjadi dua kali lebih panjang dari aslinya.

Setelah didapatkan ciphertext-nya kemudian susunlah ciphertext pertama tersebut kedalam baris berbentuk kotak dan mengisi sisa kotak dengan huruf yang tidak terpakai.Jika kata kunci yang sudah termasuk didalamnya diulang, maka diabaikan (Churchhouse, 2004).

Untuk algoritma MDTM Cipher sendiri memiliki kunci dan transposisi.Hal pertama yang harusdilakukanadalahmenentukankunci (key).

Kunciakandigabungkankedalamtabelmonograph.

Karakterkunciakandiletakkanpadaawaltabelmonograph. Jikaadakarakter yang berulangdanapabilakaraktertersebutsamadengankarakterpadatabel,

makacukupsatukarakter yang munculpertama yang dituliskan.

(26)

Kunciakantetapberisisemuakaraktertetapitidakberurutandikarenakanadanyapeletakank uncidiawal.

2.2.1.2. Dekripsi MDTM Cipher

Proses dekripsi pada MDTM cipher merupakan kebalikan dari proses enkripsinya secara sistematis yang akhirnya akan menghasilkan plaintext sebelumnya sebelum dilakukan proses enkripsi.

2.2.2. Algoritma Asimetris LUC

Pada tahun 1993, Smith dan Lennon memperkenalkan algoritma kriptografi asimetris yang berbasis pada fungsi Lucas (Lucas Function).Algoritma ini memiliki tiga tahap dalam cryptosystem, yaitu pembangkitan kunci, enkripsi dan dekripsi.

2.2.2.1. Landasan Matematika Algoritma LUC

Dalam memahami dan mempelajari kriptografi, sebaiknya memahami dan mempelajari konsep-konsep dasar dalam perhitungan matematis yang digunakan dalam algoritma kriptogafi yang akan digunakan. Dalam algoritma LUCakan melibatkan konsep perhitungan matematis seperti Least Common Multiple (LCM), Greatest Common Divisor (GCD), invrelatif prima, aritmatika modulo.

a. Least Common Multiple (LCM)

Least Common Multiple (LCM) atau Kelipatan Persekutuan Terkecil dari suatu himpunan bilangan adalah bilangan terkecil yang merupakan kelipatan dari setiap anggota himpunan itu. Contoh: LCM dari 6 dan 8 dengan perhitungan manual dapat ditulis sebagai berikut:

6 = 6, 12, 18, 24, 30, 36, 42, 48, 54, 60, 66, 72, ...

8 = 8, 16, 24, 32, 40, 48, 56, 64, 72, ...

Kelipatan persekutuannya adalah bilangan-bilangan yang muncul secara bersamaan pada kedua baris geometri tersebut, yaitu 24, 48, dan 72.Jadi, LCM dari 6 dan 8 adalah 24.

b. Greatest Common Divisor (GCD)

Greatest Common Divisor (GCD) atau Faktor Persekutuan Terbesar dari suatu himpunan bilangan adalah bilangan terbesar yang merupakan kelipatan dari setiap

(27)

anggota himpunan tersebut. Contoh: LCM dari 32 dan 27 dengan perhitungan manual dapat ditulis sebagai berikut:

32 = 1, 2, 4, 8, 16, 32 27 = 1, 3, 9, 27

Faktor persekutuannya adalah bilangan-bilangan yang muncul pada kedua baris geometri tersebut. Jadi, GCD dari 32 dan 27 adalah 1.

c. Relatif Prima

Dua buah bilangan relatif prima jika dan hanya jika GCD dari dua buah bilangan tersebut adalah 1.GCD(a, b)=1 maka diartikan a relatif prima dengan b.

d. Aritmatika Modulo

Aritmatika modulo digunakan agar operasi aritmatika selalu menghasilkan integer. Operasi modulo memerlukan 2 buah masukan yaitu sebuah bilangan bulat a dan sebuah bilangan positif yang disebut modulus b. Operasi modulo mengembalikan nilai r yang merupakan sisa bagi atas operasi a dibagi b. Notasi operasi modulus dituliskan sebagai a mod b = r (Sadikin, 2012). Contoh: 24 mod 13 = 11.

2.2.2.2. Proses pembangkitan kunci dengan algoritma LUC a. Pilih dua buah bilangan prima, misal p dan q dimana p ≠ q.

b. Hitunglah nilai n = p x q.

c. Hitung nilai t = (p-1).(q-1).(p+1).(q+1).

d. Ambil sebuah bilangan acak dimana bilangan tersebut lebih besar dari 1 dan lebih kecil dari t kemudian bilangan acak tersebut merupakan bilangan bulat. Bilangan acak disimbolkan dengan e. (1<e<t).

e. Kemudian hitung nilai gcd (e,t) = 1 atau e relative prima terhadap t.

f. Hitung nilai R(n) dengan rumus: R(n) = LCM (p-1, q-1, p+1, q+1).

g. Hitung d untuk mendapatkan hasil e.d mod R(N) = 1.

Setelah dapat nilai d yang merupakan kunci privat pada algoritma LUC, maka dilakukan proses enkripsi dan dekripsi.

Contoh: Pilih dua buah bilangan prima sembarang yaitu p=47 dan q=17, dimana p ≠ q.

a. Hitung nilai n = p x q. N = 47 x 17 = 799.

(28)

b. b. Hitung t = (p-1).(q-1).(p+1)(q+1) = (47-1).(17-1).(47+1).(17+1) = 635904.

c. Menetukan nilai e (bilangan relatif prima). Pilih e secara acak, dimana z < e < n-1 dan GCD (e,t) =1.

RP (p-1) = RP 46 = {3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43}

RP (q-1) = RP 16 = {3, 5, 7, 11, 13}

RP (p+1) = RP 47 = {3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47}

RP (q+1) = RP 18 = {3, 5, 7, 11, 13, 17}

Hasil perhitungan bilangan relatif prima di atas terdapat beberapa bilangan yang sama, yaitu {3, 5, 7, 11, 13}. Maka pilih e = 13, GCD (13, 635904) = 1.

d. Hitung R(N) = LCM(p-1, q-1, p+1, q+1) = LCM(46, 16, 48, 18) = 3312.

e. Hitung d sehingga hasil dari e.d mod R(N) = 1. Setelah dihitung maka nilai d=2293.

Maka public key-nya adalah e yaitu 13 dan private key-nya adalah d yaitu 2293.

2.2.2.3. Proses Enkripsi Algoritma LUC

a. Ambil satu nilai karakter yang akan diamankan.

b. Enkripsi nilai karakter tersebut dengan menggunakan rumus:

V[0] = 2 V[1] = m

Jika i ≥ 2 maka V[i] = ( m.V[i-1] – V[i-2] ) mod n. Proses enkripsi menghasilkan ciphertext.

Contoh: Pilih sebuah karakter, misal A dengan kode ASCII = 65.

V [2...e] = (m.V[i-1] – V[i-2]) mod n V [0] = 2

V [1] = 65

V [2...e] = (65.V[i-1] – V[i-2]) mod 799 C = V[e] = V[13] = 608

2.2.2.4. Proses Dekripsi Algoritma LUC

a. Ambil nilai ciphertext dari proses enkripsi, C = Ciphertext.

b. Kemudian dekripsi dengan menggunakan rumus:

V [0] = 2

(29)

V [1] = C

Jika i ≥ 2 maka V[i] = ( C.V[i-1] – V[i-1] ) mod n. Proses dekripsi menghasilkan plaintext (Anggraini, 2017).

Contoh: Pilih ciphertext sebelumnya yang telh dienkripsi, yaitu 608.

V [0] = 2 V [1] = C = 608

V [2...d] = (C.V[i-1] – V[i-2] mod 799 m = V[d]

m = V[2293] = 65 = “A”

2.3. Citra Digital

Suatu citra dapat didefinisikan sebagai fungsi f(x, y), berukuran M baris dan N kolom, dimana x dan y adalah koordinat spasial dari citra, sedangkan f (x, y) merupakan intensitas atau tingkat keabuan dari citra pada titik tersebut. Apabila nilai x, y, dan f secara keseluruhan memiliki nilai yang berhingga (finite) dan bernilai diskrit, maka citra tersebut disebut dengan citra digital (Putra, 2010).

Ada banyak cara untuk menyimpan citra digital di dalam memori. Cara penyimpanan menentukan jenis citra digital yang terbentuk. Beberapa jenis citra digital yang sering digunakan adalah citra biner, citra grayscale dan citra berwarna (Sutoyo, 2009).

2.3.1. Citra Biner(Monokrom)

Banyaknya dua warna, yaitu hitam dan putih. Dibutuhkan 1 bit di memori untuk menyimpan kedua warna ini.

2.3.2. Citra Grayscale (Skala Keabuan)

Banyaknya warna tergantung pada jumlah bit yang disediakan di memori untuk menampung kebutuhan warna ini. Citra 2 bit mewakili 4 warna, citra 3 bit mewakili 8 warna, dan seterusnya. Semakin besar jumlah bit warna yang disediakan di memori, semakin halus gradasi warna yang terbentuk.

(30)

2.3.3. Citra Warna (True Color)

Setiap piksel pada citra warna mewakili warna yang merupakan kombinasi dari tiga warna dasar (RGB = Red Green Blue). Setiap warna dasar menggunakan penyimpanan 8 bit = 1 byte, yang berarti setiap warna mempunyai gradasi sebanyak 255 warna.Berarti setiap piksel mempunyai kombinasi warna sebanyak 28 x 28 x 28 = 224 = 16 juta warna lebih.Itulah sebabnya format ini dinamakan true color karena mempunyai jumlah warna yang cukup besar sehingga bisa dikatakan hampir mencakup semua warna di alam.

2.4. Penelitian yang Relevan

Berikut ini adalah beberapa penelitian yang terkait dengan Hybrid Cryptosystem, Algoritma MDTM Cipher, dan Algoritma LUC:

1. Penelitian dalam jurnal internasional oleh Gutub & Khan (2012) dengan judul

“Hybrid Crypto Hardware Utilizing Symmetric Key & Public Key Cryptosystem”.

Penelitian ini menyimpulkan bahwa Hybrid Cryptosystem memberikan kerangka baru dalam mengimplementasikan kriptografi yang rentan dari penyadapan atau sangat aman dengan mengkombinasikan algoritma simetris dan algoritma asimetris.

2. Penelitian dalam jurnal internasional oleh Mutiara Rizky Parlindungan Nasution (2017) dengan judul “An Implementation of Super-Encryption using RC4A and MDTM Cipher Algorithms for Securing PDF Files on Anroid”. Penelitian ini menyimpulkan bahwa Aplikasi yang dirancang dalam penelitian mampu mengenkripsi dan mendekripsi menggunakan algoritma RC4A dan MDTM Cipher sertamenunjukkan bahwa perbesaran waktu proses enkripsi dan dekripsi berbanding lurus dengan penambahan jumlah karakter.

3. Penelitian dalam jurnal internasional oleh Zulkarnain dan Arniyati (2016) dengan judul “Implementation of Parallel Algorithm for LUC Cryptosystems Based on Addition Chain by A Message Passing Interface”. Penelitian ini menyimpulkan bahwa perhitungsan Algoritma LUC dengan kriptosistem menunjukkan Algoritma Paralel akan menghitung semua komputasi dan mengirimkannya ke inti utama.

(31)

BAB 3

ANALISIS DAN PERANCANGAN

3.1. Analisis Sistem

Analisis sistem (systems analysis) adalah sebuah teknik pemecahan masalah dimana sistem diuraikan menjadi komponen-kompenen dengan tujuan untuk mempelajari kinerja masing-masing komponen tersebut dalam mencapai tujuan sistem (Whitten &

Bentley, 2007). Analisis sistem bertujuan untuk memecah sistem ke dalam komponen- komponen subsistem yang lebih kecil untuk mengetahui hubungan setiap komponen tersebut dalam mencapai tujuan.

3.1.1. Analisis Masalah

Perkembangan dalam bidang teknologi seperti saat ini telah memungkinkan setiap orang untuk saling melakukan pertukaran informasi tanpa ada batasan jarak dan waktu. Tidak tertutup kemungkinan adanya kebocoran data pada saat proses pertukaran informasi yang dilakukan sehingga pengirim informasi merasa takut dan memerlukan adanya keamanan dalam pertukaran informasi tersebut. Untuk dapat mengurangi ancaman yang dapat terjadi dalam pertukaran informasi yang bersifat rahasia dalam sebuah proses komunikasi data dapat dilakukan dengan cara melakukan pengkodean terhadap informasi yang akan disimpan atau dikirim secara cepat dan akurat. Masalah dalam sistem ini adalah bagaimana agar pertukaran informasi khususnya dalam bentuk citra dapat diamankan. Untuk mengidentifikasi masalah tersebut maka digunakanlah diagram Ishikawa (fishbone diagram). Diagram Ishikawa merupakan suatu alat visual untuk mengidentifikasi, mengeksplorasi, dan secara diagram menggambarkan semua penyebab yang berhubungan dengan suatu permasalahan. Diagram ini menunjukkan sebuah akibat dari permasalahan dengan berbagai penyebabnya (Whitten etal, 2004). Diagram ishikawa sistem ini dapat dilihat pada gambar 3.1.

(32)

Gambar 3.1. Diagram Ishikawa Masalah Penelitian 3.1.2. Analisis Kebutuhan

Analisis kebutuhan dibagi menjadi dua bagian, yaitu kebutuhan fungsional dan kebutuhan nonfungsional. Kebutuhan fungsional mendeskripsikan aktivitas yang disediakan suatu sistem. Sedangkan kebutuhan nonfungsional mendeskripsikan fitur, karakteristik dan batasan lainnya.

3.1.2.1. Kebutuhan Fungsional

Kebutuhan fungsional adalah fungsi-fungsi yang harus dipenuhi pada aplikasi yang dirancang. Kebutuhan fungsionalyang harus dipenuhi aplikasi yang dirancang adalah sebagai berikut:

a. Sistem harus mampu membaca informasi yang berada dalam file citra JPEG.

b. Kunci LUC yang dibangkitkan adalah bilangan bulat positif dari 0 sampai 255.

c. Sistem harus mampu melakukan enkripsi dengan menggunakan MDTM Cipher sehingga menghasilkan cipherimage, serta harus mampu melakukan dekripsi cipherimage menjadi String yang sama dengan String sebelum dikodekan.

3.1.2.2. Kebutuhan Non Fungsional

Kebutuhan fungsional mencakup beberapa karakteristik berikut:

1. Performa

(33)

Sistem yang akan dibangun dapat menunjukkan hasil dari pengambilan citra ke dalam bentuk semula.

2. Efisiensi

Perangkat lunak yang dibangun harus sesederhana mungkin agar tidak menyulitkan pengguna dan bersifat ramah pengguna (user friendly).

3. Ekonomis

Perangkat lunak yang dibangun harus dapat bekerja dengan baik tanpa harus mengeluarkan biaya.

4. Manajemen Kualitas

Perangkat lunak yang dibangun harus memiliki kualitas yang baik yaitu proses pembangkitan kunci yang cepat dan proses enkripsi, dekripsi yang akurat.

5. Kontrol

Perangkat lunak yang dibangun dapat menampilkan pesan error untuk setiap input yang tidak sesuai.

3.1.3. Arsitektur Umum Sistem

Arsitektur umum sistem dapat dilihat pada gambar 3.2 (a) dan (b) dibawah ini.

Gambar 3.2 (a). Arsitektur Umum Sistem Enkripsi ENKRIPSI

Input

Citra JPG

Pembangkitan Kunci Kunci MDTM

dan Kunci LUC

Proses Enkripsi

Enkripsi Citra dengan Algoritma LUC Enkripsi Kunci LUC dengan Algoritma MDTM Output

Cipher Image

(34)

Gambar 3.2 (b). Arsitektur Umum Sistem Dekripsi

 Pertama kali si pengirim pesan yaitu Raisa menginputkan plain image kedalam sistem.

 Setelah itu plain image dienkripsi oleh Raisa menggunakan algoritma MDTM Cipher dan menghasilkan cipher image.

 Selanjutnya kunciMDTM CIpher yang digunakan pada saat mengenkripsi plain image kemudian dienkripsi lagi oleh Raisa menggunakan algoritma LUC dan menghasilkan cipher key.

 Agar si penerima pesan yaitu Hamish mengetahui pesan yang dikirim oleh Raisa, maka Hamish pertama kali mendekripsikan cipher key dengan menggunakan algoritma LUC dan menghasilkan kunci MDTM Cipher.

 Kemudian setelah kunci MDTM CIpher digunakan untuk membuka cipher image sehingga dihasilkan plain image yang dapat dilihat oleh Hamish.

3.2. Pemodelan Sistem

Pemodelan aplikasi yang dirancang bertujuan untuk menggambarkan semua kondisi dan bagian-bagian yang berperan dalam sistem yang dirancang. Pemodelan aplikasi dilakukan dengan membuat use-case diagram dan activity diagram.

DEKRIPSI

Input

Cipher Image

Proses Dekripsi

Dekripsi Cipher Key LUC dengan Algoritma MDTM Dekripsi Cipher Image dengan Algoritma LUC

Output

Gambar yang Sama Seperti Sebelum Proses Enkripsi

(35)

3.2.1. Use Case Diagram

Untuk menganalisa komponen-komponen yang berperan dalam sistem yang dirancang, penulis menggunakan use-case diagram agar proses penganalisaan komponen dapat dilakukan dengan mudah. Use-case diagram sistem pada aplikasi yang dirancang dapat dilihat pada Gambar 3.3.

Gambar 3.3.Use Case Diagram Sistem

Gambar 3.3.menjelaskan tentang use case diagram sistem yang diakses oleh dua orang user yaitu si pengirim dan si penerima yang memiliki hak akses terhadap use case utama yang tersedia di sistem. Si penerima memiliki hak akses use case enkripsi dan si pengirim memiliki hak akses terhadap use case pada pembangkit kunci dan dekripsi. Si pengirim melakukan proses enkripsi pesan dengan menggunakan Algoritma MDTM Cipher dan melakukan enkripsi kunci dengan menggunakan Algoritma LUC. Kemudian si penerima akan melakukan dekripsi kunci dengan menggunakan Algoritma LUC dan melakukan dekripsi pesan dengan menggunakan Algoritma MDTM Cipher.

3.2.2. Activity Diagram

Activity diagram adalah diagram aktivitas yang mendekripsikan proses kerja dalam sebuah sistem yang sedang berjalan. Dalam diagram aktivitas ini dijelaskan proses

(36)

kerja dari sistem yaitu enkripsi dan dekripsi yang dilakukan oleh pengguna yang diilustrasikan pada gambar 3.4 dan gambar 3.5.

Gambar 3.4.Activity Diagram Enkripsi

Gambar 3.5.Activity Diagram Dekripsi

(37)

3.2.3. Sequence Diagram

Sequence diagrammerupakan diagram yang berfungsi untuk menjelaskan interaksi pesan dalam waktu tertentu yang terjadi dalam suatu sistem. Sequence diagram menunjukkan peran dan pesan yang dikirim maupun diterima oleh instansi/objek yang menjalankan peran tersebut (Booch et al, 2005).Sequence diagram dari sistem ini akan diilustrasikan pada gambar 3.6 dan gambar 3.7.

Gambar 3.6.Sequence Diagram Enkripsi

Gambar 3.7.Sequence Diagram Dekripsi

Class Class

(38)

3.2.4 Flowchart

Flowchart atau diagram alir merupakan diagram yang menunjukkan langkah-langkah yang akan dikerjakan secara sistematis. Flowchart dari proses enkripsi dan dekripsi ditujunkkan pada gambar 3.8 dan gambar 3.9 berikut.

Gambar 3.8.Flowchart Enkripsi Sistem

Pada gambar 3.8 dapat dilihat proses enkripsi yang dilakukan sistem. Pertama sekali yang dilakukan adalah meng-import gambar ke sistem dan meng-input kunci MDTM Cipher. Selanjutnya sistem akan melakukan proses enkripsi gambar dengan

(39)

algoritma MDTM Cipher. Hasil dari proses enkripsi berupa cipher image. Selanjutnya akan dilakukan proses pembangkitan kunci oleh algoritma LUC yang akan menghasilkan public key dan private key yang masing-masing akan digunakan pada proses enkripsi dan dekripsi. Selanjutnya akan dilakukan proses enkripsi pada kunci MDTM Cipher yang akan menghasilkan cipherkey.

Gambar 3.9.Flowchart Dekripsi Sistem

Pada gambar 3.9 dapat dilihat proses dekripsi yang dilakukan sistem. Pertama sekali yang dilakukan adalah meng-import cipher image dan cipher key ke dalam sistem. Selanjutnya akan dilakukan proses dekripsi terhadap cipherkey dengan algoritma LUC sehingga akan menghasilkan kunci MDTM. Selanjutnya cipher image juga akan didekripsi menggunakan algoritma MDTM Cipher dengan memakai kunci MDTM yang telah didekripsi sebelumnya sehingga menghasilkan plain image atau gambar awal.

Pada setiap flowchart terdapat predefined process yang merupakan sub proses dari masing-masing proses enkripsi dan dekripsi sistem. Predefined process tersebut

(40)

adalah Enkripsi MDTM Algoritma Cipher, Dekripsi Algoritma MDTM Cipher, Pembangkitan Kunci Algoritma LUC, Enkripsi Algoritma LUC dan Dekripsi Algoritma LUC. Masing-masing dari predefined process tersebut juga memiliki flowchart yang akan ditunjukkan pada penjelasan dan gambar-gambar dibawah ini.

3.2.4.1. Flowchart Enkripsi Algoritma MDTM Cipher

Flowchart ini menunjukkan langkah-langkah sistematis yang dikerjakan oleh algoritma MDTM Cipher untuk mengenkripsi pesan.Flowchart enkripsiMDTM Cipher ditunjukkan pada gambar 3.10.

Gambar 3.10.Flowchart Enkripsi Algoritma MDTM Cipher

Pada gambar 3.10 di atas dapat dilihat flowchart dari proses enkripsi algoritma MDTM Cipher. Pada algoritma yang menjadi inputan adalah plaintext, kunci MDTM, dan kunci transposisi.Plaintext adalah pesan yang ingin dienkripsi, sementara kunci MDTM dan kunci transposisi adalah kunci yang digunakan untuk proses enkripsi.

(41)

Selanjutnya kunci MDTM dimasukkan kedalam tabel MDTM dan disusun sesuai dengan aturan yang berlaku.Plaintext yang ingin dienkripsi diubah menjadi bentuk digraph dengan mengacu pada tabel MDTM yang telah disusun kunci MDTM.Kemudian digraph tersebut disusun berurutan berdasarkan kunci transposisi.Digraph tersebut harus tersusun sesuai urutan dari yang terkecil hingga yang terbesar.Setelah digraph selesai disusun, maka digraph tersebut diurutkan secara berpasangan untuk selanjutnya diubah kembali menjadi monograph berdasarkan tabel MDTM.Setelah semua digraph selesai diubah menjadi monograph, maka monograph yang telah tersusun tersebut menjadi hasil akhir atau output sebagai cipher key.

3.2.4.2. Flowchart Dekripsi Algoritma MDTM Cipher

Flowchart ini menunjukkan langkah-langkah sistematis yang dikerjakan oleh algoritma MDTM Cipher untuk mendekripsi pesan.Flowchart dekripsiMDTM Cipher ditunjukkan pada gambar 3.11.

Gambar 3.11.Flowchart Dekripsi Algoritma MDTM Cipher

(42)

Pada gambar 3.11 di atas dapat dilihat flowchart dari proses dekripsi algoritma MDTM Cipher. Pada algoritma yang menjadi inputan adalah ciphertext, kunci MDTM, dan kunci transposisi.Ciphertext yang akan dienkripsi diubah bentuknya ke dalam digraph. Selanjutnya digraph disusun berdasarkan kunci transposisi.Setelah digraph disusun berurutan berdasarkan kunci transposisi, selanjutnya digraph tersebut diubah kembali menjadi monograph berdasarkan tabel MDTM. Hasil dari monograph tersebut merupakan plaintext atau pesan asli yang ingin dikirimkan kepada penerima.

3.3. Perancangan Sistem

Perancangan sistem dilakukan dengan merancang antarmuka (interface) dengan menggunakan bahasa pemrograman C#. Merancang interface merupakan langkah yang penting dalam merancang sebuah sistem. Interface mempermudah user dalam memahami dan menggunakan sistem. Sistem yang dirancang akan memiliki 5 buah interface, yaitu halaman beranda, halaman enkripsi, halaman dekripsi, halaman profil, dan halaman bantuan.

3.3.1. Halaman Beranda

Halaman Beranda merupakan halaman yang pertama kali ditampilkan saat sistem dijalankan. Pada halaman beranda terdapat beberapa menu untuk mengakses halaman lain. Rancangan halaman beranda dapat dilihat pada gambar 3.12.

Gambar 3.12. Rancangan Interface Halaman Beranda

(43)

Pada Gambar 3.12 ditunjukkan tampilan rancangan dari halaman beranda.

Pada halaman ini terdapat menu yang terdiri dari Beranda, Enkripsi, Dekripsi, Profil dan Bantuan. Pada halaman Menu juga terdapat informasi judul, logo fakultas, nama, NIM dan program studi pembuat sistem. Keterangan dari Gambar 3.12 dapat dilihat pada Tabel 3.1.

Tabel 3.1. Keterangan Gambar Rancangan Interface Halaman Beranda

No. Keterangan

1. MenuStrip “Beranda” untuk menampilkan halaman utama dari sistem 2. MenuStrip “Enkripsi” untuk proses enkripsi terhadap file citra

3. MenuStrip “Dekripsi” untuk proses dekripsi terhadap file citra 4. MenuStrip “Profil” untuk menampilkan data diri si pembuat sistem

5. MenuStrip “Bantuan” untuk menampilkan halaman petunjuk dari penggunaan sistem

6. Label untuk menampilkan judul sistem

7. Label untuk menampilkan nama dan nim si pembuat sistem 8. Picturebox untuk menampilkan logo USU

9. Label untuk menampilkan program studi dan fakultas si pembuat sistem

3.3.2. Halaman Enkripsi

Halaman Enkripsi merupakan halaman yang tampil saat pengguna memilih menu Enkripsi. Pada halaman ini pengguna dapat melakukan proses enkripsi berkas.

Rancangan halaman Enkripsi dapat dilihat pada Gambar 3.13.

(44)

Gambar 3.13. Rancangan Interface Halaman Enkripsi

Keterangan dari gambar 3.13 di atas dapat dilihat pada tabel 3.2 dibawah ini.

Tabel 3.2. Keterangan Gambar Rancangan Interface Halaman Enkripsi

No. Keterangan

1. MenuStrip “Enkripsi” untuk menampilkan halaman proses mengenkripsi citra 2. Groupbox yang berisi field-field untuk informasi citra asli

3. Groupbox yang berisi field-field untuk bagian proses kunci enkripsi 4. PictureBox untuk menampilkan citra asli

5. PictureBox untuk menampilkan citra yang sudah dienkripsi 6. Button untuk memasukkan citra dari dalam direktori file 7. Button untuk melakukan proses enkripsi pada citra 8. Button untuk menyimpan hasil enkripsi pada citra

9. TextBox untuk menampilkan waktu proses enkripsi pada citra 10. TextBox untuk proses input kunci MDTM Cipher

11. TextBox untuk pengambilan kunci privat 12. TextBox untuk pengambilan kunci publik 13. TextBox untuk mencari nilai totieen

14. Button untuk menampilkan nilai dari kunci LUC

(45)

15. TextBox untuk menampilkan kunci dari MDTM Cipher

16. Button untuk menampilkan hasil nilai dari Chiper Key MDTM 17. Button untuk menyimpan Cipher Key

3.3.3. Halaman Dekripsi

Halaman Dekripsi merupakan halaman yang tampil saat pengguna memilih menu Dekripsi. Pada halaman ini pengguna dapat melakukan proses dekripsi sehingga akan menampilkan citra asli. Rancangan halaman dekripsi dapat dilihat pada Gambar 3.14.

Gambar 3.14. Rancangan Interface Halaman Dekripsi

(46)

Keterangan dari gambar 3.14 di atas dapat dilihat pada tabel 3.3 dibawah ini.

Tabel 3.3. Keterangan Gambar Rancangan Interface Halaman Dekripsi

No. Keterangan

1. MenuStrip “Dekripsi” untuk menampilkan halaman proses mendekripsi citra 2. Groupbox yang berisi field-field untuk informasi citra asli

3. Groupbox yang berisi field-field untuk bagian proses pada kunci dekripsi 4. PictureBox untuk menampilkan citra yang sudah di enkripsi sebelumnya 5. PictureBox untuk menampilkan citra yang sudah didekripsi

6. Button untuk memasukkan citra dari dalam direktori file 7. Button untuk melakukan proses dekripsi pada citra 8. Button untuk menyimpan hasil dekripsi pada citra

9. TextBox untuk menampilkan waktu proses dekripsi pada citra

10. TextBox untuk menampilkan kunci dari MDTM Cipher yang sudah dienkripsi 11. Button untuk memasukkan kunci MDTM Cipher yang sudah disimpan terlebih

dahulu

12. TextBox untuk menampilkan kunci privat algoritma LUC

13. TextBox untuk menampikan hasil dekripsi dari kunci MDTM Cipher 14. Button untuk melakukan proses dekripsi

3.3.4. Halaman Profil

Halaman Profil merupakan halaman yang menampilkan foto dan data diri mahasiswa.

Adapun rancangan antarmuka dari halaman Profil dapat dilihat pada Gambar 3.15.

(47)

Gambar 3.15. Rancangan Interface Halaman Profil

Keterangan dari gambar 3.15 di atas dapat dilihat pada tabel 3.4 dibawah ini.

Tabel 3.4. Keterangan Gambar Rancangan Interface Halaman Profil

No. Keterangan

1. PictureBox untuk menampilkan foto si pembuat sistem

2. Label yang berisi keterangan dari data diri Mahasiswa si pembuat sistem

(48)

BAB 4

IMPLEMENTASI DAN PENGUJIAN SISTEM

4.1. Implementasi Sistem

Implementasi pada sistem ini menggunakan bahasa pemrograman C#.Software (perangkat lunak) yang digunakan sebagai Integrated Development Environment (IDE) adalah SharpDevelop 4.3.

4.1.1. Halaman Beranda

Pada halaman ini akan menampilkan tampilan awal saat program dijalankan. Halaman ini berisi menu-menu yang dapat diakses, judul penelitian, dan data penulis.Halaman beranda ditunjukkan pada gambar 4.1 berikut.

Gambar 4.1.Halaman Beranda

4.1.2. Halaman Enkripsi

Pada halaman ini akan dilakukan proses enkripsi untuk mengenkripsi citra dan juga mengenkripsi kunci MDTM Cipher. Pada halaman ini juga dapat

(49)

membangkitkanpublic key dan private key untuk mengenkripsi dan mendekripsi kunci MDTM Cipher.Hasil yang didapatkan dari halaman ini adalah cipherkey, cipher image, dan running time proses enkripsi dari citra tersebut. Halaman enkripsi ditunjukkan pada gambar 4.2 berikut.

Gambar 4.2.Halaman Enkripsi

4.1.3. Halaman Dekripsi

Pada halaman ini akan dilakukan proses dekripsi untuk mendekripsi cipher image dan juga mendekripsi cipherkey. Hasil yang didapatkan dari halaman ini adalah kunci MDTM cipher, citra asli, dan running time proses dekripsi dari cipher image tersebut.

Halaman enkripsi ditunjukkan pada gambar 4.3 berikut

(50)

Gambar 4.3.Halaman Dekripsi

4.1.4. Halaman Profil

Pada halaman ini menampilkan profil biodata penulis. Menu ini berisi nama penulis, nim penulis, alamat email penulis. No hp penulis dan asal kampus penulis, Halaman profil ditunjukkan pada gambar 4.4 berikut.

Gambar 4.4.Halaman Profil

(51)

4.2. Pengujian Sistem

Pada tahap ini, sistem yang telah diimplementasikan akan diuji sesuai dengan batasan- batasan yang telah dibuat sebelumnya. Sistem akan menguji proses enkripsi dan dekripsi pada file citra dengan resolusi yang berbeda-beda untuk mengetahui waktu proses enkripsi dan dekripsi serta perbesaran data cipherimage hasil enkripsi dan juga data asli setelah didekripsi kembali. Kriteria dalam melakukan pengujian sistem adalah sebagai berikut:

1. File citra yang akan dilakukan proses enkripsi maupun dekripsi berekstensi .jpg.

2. File citra yang akan dilakukan proses enkripsi maupun dekripsi memiliki batas resolusi 500x500.

3. Sistem akan menyimpan public key dan private key hasil pembangkitan kunci dengan format .cipherkey, .prkey

4. Sistem akan menghitung Real Running Time masing-masing proses dalam satuan miliseken (ms).

5. Sistem ini diuji dengan Personal Computer dengan spesifikasi processor Intel Core i3-2348M CPU @ 2.30 GHZ, Memory 2 GB RAM, 64-bit.

4.2.1. Pengujian Pembangkit Kunci

Dalam proses ini user akan membangkitkan public key dan private key dari algoritma LUC untuk mengenkripsi dan mendekripsi kunci MDTM cipher. Namun, sebelumnya user diminta untuk memasukkan kunci MDTM cipher yang akan digunakan. Kunci yang dimasukkan tampak dalam gambar 4.5 dibawah ini yaitu “diahmustika” dan “2 3 1 4”.

(52)

Gambar 4.5.Tampilan input kunci MDTM Cipher

Selanjutnya, user akan membangkitkan public key dan private key secara acak dengan menekan tombol generate.Public key yang dihasilkan berada pada textbox e dan private key yang dihasilkan berada pada textboxt d. Hasil pembangkitan kunci ditunjukkan pad gambar 4.6 di bawah ini.

Gambar 4.6.Tampilan membangkitkan kunci

Referensi

Dokumen terkait

Penelitian Nurnawati dan Muryanto (2014) telah mengembangkan Aplikasi Mobile Berbasis Lokasi untuk Penyedia Layanan kesehatan di Yogyakarta.Tujuan pembuatan aplikasi ini

Berdasarkan hal tersebut diperlukan pengelolaan yang baik dan berkesinambungan sesuai informasi mengenai ikan tersebut agar memudahkan upaya pengelolaan dan

Halaman hasil transliterasi adalah halaman ini bahasa indonesia, bahasa sunda halus dan bahasa sunda kasar semua data yang sudah diinputkan dalam form input kata

Dari hasil penelitian yang peneliti lakukan pada PI,. PIII, IV, peneliti menemukan bahwa

• Bila subclass yang diturunkan dari abstract y g class tidak mengimplementasikan isi semua method abstrak parent class, maka subclass tersebut harus tetap dideklarasikan abstract..

Dalam penelitian ini digunakan teknik triangulasi sumber untuk mendapatkan data dari sumber yang berbeda dengan teknik yang sama (Sugiyono, 2014). Peneliti juga

[r]

• Dalam suatu loop bisa terkandung loop yang lain, sehingga jika loop tersebut diulangi n kali dan loop yang didalamnya dijuga dilakukan m kali maka pernyataan yang berada