Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
RANCANG BANGUN APLIKASI ENKRIPSI CITRA
BERDASARKAN OPERASI ROTASI
SKRIPSI
Diajukan Untuk Memenuhi
Persyaratan Guna Meraih Gelar Sarjana Strata 1
Teknik Informatika Universitas Muhammadiyah Malang
BAGUS PRASETYO W
201210370311248
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH MALANG
2017
2
LEMBAR PERSETUJUAN
3
LEMBAR PENGESAHAN
4
LEMBAR PERNYATAAN
5
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, pada
penelitian ini menggunakan metode rotasi, metode rotasi sendiri adalah teknik
untuk memutar citra pada porosnya yang terjadi pada sebagian dari citra. Yang
bertujuan agar informasi yang disimpan dan dikirim ke penerima tidak dapat
dibaca atau tidak mudah di pahami oleh pihak ketiga atau orang-orang yang tidak
berhak, keungulan dari penelitian ini adalah kecepatan proses aplikasi yang cepat
serta terjadinya perubahan ukuran file dan tidak mudah dekripsi manual dengan
tools lain, Hasil dari pengujian aplikasi enkripsi terjadinya pemampatan atau
penambahan ukuran file yang berpengaruh pada ektensi awal serta ektensi akhir
pada file dan ukuran pixel file pada citra yang berektensi awal TIF yang dirubah
menjadi ektensi JPG, yaitu terjadi penurunan ukuran file sebesar 0,91663x dari
ukuran awal., serta kecepatan waktu proses enkripsi terhadap file dan ukuran pixel
pada citra file berektensi BMP dan PNG pada ukuran pixel 2000x2000 memiliki
peningkatan kecepatan terbaik yaitu sebesar 0.12x lebih cepat, Penelitian ini di
bangun menggunakan bahasa pemprograman Python 3.4, dan di tambah dengan
Library PIL-pillow, Library Sys, Library OS, Library Time.
Kata kunci: Kriptografi, Rotasi, Python, Rotasi Citra, Kriptografi Citra
6
ABSTRACT
Cryptography is a field of knowledge which uses a mathematical equation to
perform the encryption and decryption process. This technique is used to convert
the data into object code form, in this study using the method of rotation, rotation
method itself is a technique to rotate the image on its axis, which occurs in a
portion of the image. That aims to make the information stored and sent to the
recipient can not read or are not easily understood by third parties or persons are
not entitled, superiority of this study is the speed of the application process fast
and changes the size of the file and not easily decrypted manually other tools, The
results of the testing of the compression or encryption applications increase file
size affects the initial extension and final extension on the file and a pixel size of
image files at the beginning extension TIF converted into JPG extension, which
decreased file size of 0,91663x of its original size, as well as the speed of the
encryption process to file and pixel in the image file size extension BMP and PNG
on the size of 2000x2000 pixels has the best speed increase that is equal to 0.12x
faster, in this study built using 3.4 Python programming language, and add in the
Library PIL-pillow, Library Sys, OS Library, Library Time.
Keywords: cryptography, Rotate, Python, Rotate Images, Kriptografi Images
7
LEMBAR PERSEMBAHAN
Alhamdulillah skripsi ini dapat diselesaikan berkat bantuan dari berbagai
pihak yang turut serta berbagi doa dan dukungan. Untuk itu semua, saya
persembahkan skripsi ini dan berterima kasih kepada:
1. Segala puji dan semua puji-pujian hanya untuk dan milik Allah Subhanahu
Wa Ta’ala semata yang maha memberi petunjuk dan kemudahan.
2. Untuk Ibu dan Ayah serta adik kandung saya, jika Allah berkenan
menjadikan tiap huruf dalam skripsi ini sebagai kebaikan, maka kebaikan
itu pertama-tama akan menjadi hak mereka.
3. Dosen pembimbing Ibu Diah Risqiwati, ST.MT dan Bapak Denar Regata,
A., S.Kom.M.kom yang selalu sabar dalam memberikan arahan dan
menyempatkan waktu untuk membimbing saya.
4. Untuk Andi dan Tyo yang telah banyak membantu teknis dari pengerjaan
skripsi ini, terima kasih atas semua arahannya semoga Allah memberikan
banyak kebaikan kepada kalian.
5. Untuk para rekan lainnya di Steam yang telah peduli dan mensupport saya.
Semoga Allah membalas kebaikan kalian.
6. Terima kasih untuk semua pihak yang tidak dapat saya sebutkan satu per
satu, yang telah banyak membantu dan mendukung saya.
8
KATA PENGANTAR
Dengan memanjatkan puji syukur kehadirat Allah Subhanahu Wa Ta’ala
atas limpahan rahmat dan hidayah-Nya sehingga penulis dapat menyelesaikan
skripsi yang berjudul :
“RANCANG BANGUN APLIKASI ENKRIPSI CITRA BERDASARKAN
OPERASI ROTASI “
Di dalam tulisan ini disajikan pokok-pokok pembahasan yang meliputi
pendahuluan, landasan teori, perancangan sistem, implementasi dan pengujian
sistem. Peneliti menyadari sepenuhnya bahwa dalam penulisan tugas akhir ini
masih banyak kekurangan dan keterbatasan. Oleh karena itu peneliti
mengharapkan saran yang membangun agar tulisan ini bermanfaat bagi
perkembangan ilmu pengetahuan ke depan.
Malang, 01 Agustus 2017
Bagus Prasetyo Wahyudianto
9
DAFTAR ISI
LEMBAR PERSETUJUAN ................................................................................................ i
LEMBAR PENGESAHAN ................................................................................................ ii
LEMBAR PERNYATAAN ............................................................................................... iii
ABSTRAK .......................................................................................................................... 5
ABSTRACT ........................................................................................................................ 6
LEMBAR PERSEMBAHAN ............................................................................................. 7
KATA PENGANTAR ........................................................................................................ 8
DAFTAR ISI .................................................................................................................... viii
DAFTAR GAMBAR ......................................................................................................... xi
DAFTAR RUMUS .......................................................................................................... xiii
DAFTAR GRAFIK ........................................................................................................... xv
DAFTAR TABEL ............................................................................................................ xvi
BAB I PENDAHULUAN ................................................................................................... 1
1.1. Latar Belakang ....................................................................................................... 1
1.2. Rumusan Masalah .................................................................................................. 3
1.3. Tujuan .................................................................................................................... 3
1.4. Batasan Masalah .................................................................................................... 3
1.5. Metodologi ............................................................................................................. 3
1.5.1. Studi Kepustakaan .................................................................................................. 3
1.5.2. Analisa Kebutuhan Aplikasi .................................................................................. 4
1.5.3. Perancangan Aplikasi ............................................................................................. 4
1.5.4. Implementasi .......................................................................................................... 4
1.5.5. Pengujian ................................................................................................................ 4
1.5.6. Pembuatan Laporan ................................................................................................ 4
1.6. Sistematika Penulisan............................................................................................. 4
BAB II LANDASAN TEORI ............................................................................................. 6
2.1. Kriptografi .............................................................................................................. 6
2.1.1. Definisi Kriptografi ................................................................................................ 6
2.1.2. Tujuan Kriptografi ................................................................................................. 6
2.1.2.1. Otentikasi (Authentication) .................................................................................... 6
2.1.2.2. Kerahasiaan (Confidentiality) ................................................................................ 6
10
2.1.2.3. Keutuhan Data (Data Integrity) ............................................................................. 7
2.1.2.4. Penyangkalan (Non-Repudiation) .......................................................................... 7
2.1.3. Sistem Kriptografi .................................................................................................. 7
2.1.3.1. Sistem Kriptografi Klasik (Simetris) ..................................................................... 7
2.1.3.1.1. Plaint text ............................................................................................................ 7
2.1.3.1.2. Kunci Rahasia ..................................................................................................... 7
2.1.3.1.3. Ciphertext ............................................................................................................ 7
2.1.3.1.4. Algoritma Enkripsi .............................................................................................. 7
2.1.3.1.5. Algoritma Dekripsi ............................................................................................. 8
2.1.4. Operasi Rotasi ........................................................................................................ 8
2.2. Citra ...................................................................................................................... 10
2.2.1. Definisi Citra ........................................................................................................ 10
2.2.1.1. Citra Anlog ........................................................................................................... 10
2.2.1.2. Citra Digital ......................................................................................................... 10
2.2.2. Normalisasi Citra ................................................................................................. 11
2.3. Python .................................................................................................................. 11
2.3.1. Python Imaging Library ...................................................................................... .11
2.3.2. Python TIme Library ........................................................................................... .12
2.3.3. python Py2Exe .................................................................................................... .12
BAB III ANALISA DAN PERANCANGAN SISTEM ................................................... 13
3.1. Analisis ................................................................................................................. 13
3.1.1. Analisis Masalah .................................................................................................. 13
3.1.2. Analisis Pemecahan Masalah ............................................................................... 13
3.2. Alur Sistem .......................................................................................................... 14
3.3. Perancangan Algoritma Rotasi ............................................................................. 16
3.3.1. Key ....................................................................................................................... 16
3.3.2. Enkripsi ................................................................................................................ 16
3.3.3. Dekripsi ................................................................................................................ 25
3.4. Perancangan Perangkat Lunak ............................................................................. 33
3.4.1. Operating System ................................................................................................ .33
3.4.2. Python ................................................................................................................. .33
3.4.3. Python Imaging Library ...................................................................................... .33
11
3.4.4. Python Time Library ........................................................................................... .34
3.4.5. Python Py2Exe .................................................................................................... .34
3.5. Kebutuhan Perangkat Keras ................................................................................. 34
3.4.1. Laptop ................................................................................................................. .34
BAB IV IMPLEMENTASI DAN PENGUJIAN .............................................................. 35
4.1. Implementasi Enkripsi ......................................................................................... 35
4.2. Implementasi Dekripsi ......................................................................................... 38
4.3. Pengujian ............................................................................................................. .41
4.3.1. Perubahan Ukuran File Saat Proses Enkripsi ...................................................... .42
4.3.1.1. Hasil Pengujian .................................................................................................... 42
4.3.2. Perubahan Ukuran File Saat Proses Dekripsi ...................................................... .44
4.3.2.1. Hasil Pengujian ................................................................................................... .44
4.3.3. Kecepatan Proses Enkripsi .................................................................................. .46
4.3.3.1. Hasil Pengujian .................................................................................................... 46
4.3.4. Analisis Ruang Kunci ......................................................................................... .49
4.3.5. Analisis Histogram .............................................................................................. .50
BAB V PENUTUP ........................................................................................................... 54
5.1. Kesimpulan .......................................................................................................... 54
5.2. Saran..................................................................................................................... 55
DAFTAR PUSTAKA ....................................................................................................... 56
LAMPIRAN ...................................................................................................................... 58
12
DAFTAR GAMBAR
Gambar 2.1 Proses Enkripsi dan Dekripsi Simetris ................................................ 8
Gambar 3.1 Alur Sistem Enkripsi ......................................................................... 14
Gambar 3.2 Alur Sistem Dekripsi ......................................................................... 15
Gambar 3.3 Ilustrasi Enkripsi Tahap pertama....................................................... 18
Gambar 3.4 (a) - (f) Enkripsi tahap 1 .................................................................... 19
Gambar 3.5 Ilustrasi Enkripsi Tahap kedua .......................................................... 20
Gambar 3.6 (a) - (p) Enkripsi Tahap 2 .................................................................. 23
Gambar 3.7 Ilustrasi Enkripsi Tahap ketiga .......................................................... 23
Gambar 3.8 (a) - (f) Enkripsi Tahap 3................................................................... 24
Gambar 3.9 Ilustrasi Dekripsi Tahap pertama ...................................................... 26
Gambar 3.10 (a) - (f) Dekripsi tahap 1 .................................................................. 27
Gambar 3.11 Ilustrasi Dekripsi Tahap kedua ........................................................ 28
Gambar 3.12 (a) - (p) Dekripsi Tahap 2 ................................................................ 31
Gambar 3.13 Ilustrasi Dekripsi Tahap ketiga ....................................................... 32
Gambar 3.14 (a) - (f) Dekripsi Tahap 3 ................................................................ 33
Gambar 4.1 Source Code Library Enkripsi ............................................................ 35
Gambar 4.2 Source Code Input Enkripsi ............................................................... 35
Gambar 4.3 Source Code Mencari Ukuran Pixel Enkripsi .................................... 36
Gambar 4.4 Source Code Input Keyword Enkripsi ............................................... 36
Gambar 4.5 Source Code Table Enkripsi ............................................................... 37
Gambar 4.6 Source Code Mencari Ukuran Pixel ................................................... 37
Gambar 4.7 Source Code Proses Enkripsi ............................................................. 38
Gambar 4.8 Source Code Input Nama Simpan Enkripsi ....................................... 38
Gambar 4.9 Source Code Library Dekripsi............................................................ 39
Gambar 4.10 Source Code Input Dekripsi ............................................................. 39
Gambar 4.11 Source Code Input Keyword Dekripsi ............................................. 39
Gambar 4.12 Source Code Table Dekripsi ............................................................ 40
Gambar 4.13 Source Code Mencari Ukuran Dekripsi ........................................... 40
Gambar 4.14 Source Code Proses Dekripsi ........................................................... 41
Gambar 4.15 Source Code Input Nama Simpan Dekripsi ..................................... 41
Gambar 4.16.Citra Sebelum di Enkripsi ............................................................... 43
Gambar 4.17 Citra Setelah di Enkripsi ................................................................. 43
Gambar 4.18 Citra yang sudah di Enkripsi ........................................................... 46
Gambar 4.19 Citra setelah di Dekripsi .................................................................. 46
Gambar 4.20 Source Code Histrogram RGB ........................................................ 51
Gambar 4.21 Source Code Histogram Red Green Blue ........................................ 51
Gambar 4.22 Histogram Citra Awal ..................................................................... 51
Gambar 4.23 Histogram enkripsi JPG .................................................................. 51
Gambar 4.24 Histogram Citra Awal(Gray) ........................................................... 51
Gambar 4.25 Histogram Citra Awal(Red) ............................................................ 51
Gambar 4.26 Histogram Citra Awal(Green) ......................................................... 51
Gambar 4.27 Histogram Citra Awal(Blue) ........................................................... 51
13
Gambar 4.28 Histogram enkripsi JPG(Gray) ........................................................ 51
Gambar 4.29 Histogram enkripsi JPG(Red) ......................................................... 51
Gambar 4.30 Histogram enkripsi JPG(Green) ...................................................... 51
Gambar 4.31 Histogram enkripsi JPG(Blue) ........................................................ 51
14
DAFTAR RUMUS
Rumus 2.1 Menentukan Jarak X dan Y .................................................................. 8
Rumus 2.2 Menentukan Derajat pada Rotasi .......................................................... 9
Rumus 2.3 Menentukan Radius pada Rotasi........................................................... 9
Rumus 2.4 Rumus Enkripsi .................................................................................... 9
Rumus 2.5 Rumus Dekripsi .................................................................................... 9
Rumus 3.1 Rotasi Untuk Enkripsi ......................................................................... 16
Rumus 3.2 Enkripsi Tahap Pertama bagian 1 ....................................................... 17
Rumus 3.3 Enkripsi Tahap Pertama bagian 2 ....................................................... 17
Rumus 3.4 Enkripsi Tahap Pertama bagian 3 ....................................................... 17
Rumus 3.5 Enkripsi Tahap Pertama bagian 4 ....................................................... 17
Rumus 3.6 Enkripsi Tahap Kedua bagian 1 .......................................................... 19
Rumus 3.7 Enkripsi Tahap Kedua bagian 2 .......................................................... 19
Rumus 3.8 Enkripsi Tahap Kedua bagian 3 .......................................................... 19
Rumus 3.9 Enkripsi Tahap Kedua bagian 4 .......................................................... 19
Rumus 3.10 Enkripsi Tahap Kedua bagian 5 ........................................................ 19
Rumus 3.11 Enkripsi Tahap Kedua bagian 6 ........................................................ 19
Rumus 3.12 Enkripsi Tahap Kedua bagian 7 ........................................................ 19
Rumus 3.13 Enkripsi Tahap Kedua bagian 8 ........................................................ 19
Rumus 3.14 Enkripsi Tahap Kedua bagian 9 ........................................................ 19
Rumus 3.15 Enkripsi Tahap Kedua bagian 10 ...................................................... 19
Rumus 3.16 Enkripsi Tahap Kedua bagian 11 ...................................................... 19
Rumus 3.17 Enkripsi Tahap Kedua bagian 12 ...................................................... 19
Rumus 3.18 Enkripsi Tahap Kedua bagian 13 ...................................................... 19
Rumus 3.19 Enkripsi Tahap Kedua bagian 14 ...................................................... 19
Rumus 3.20 Enkripsi Tahap Ketiga bagian 1 ....................................................... 23
Rumus 3.21 Enkripsi Tahap Ketiga bagian 2 ....................................................... 23
Rumus 3.22 Enkripsi Tahap Ketiga bagian 3 ....................................................... 23
Rumus 3.23 Enkripsi Tahap Ketiga bagian 4 ....................................................... 23
Rumus 3.24 Rotasi Untuk Dekripsi ...................................................................... 25
Rumus 3.25 Dekripsi Tahap Pertama bagian 1 ..................................................... 25
Rumus 3.26 Dekripsi Tahap Pertama bagian 2 ..................................................... 25
Rumus 3.27 Dekripsi Tahap Pertama bagian 3 ..................................................... 25
Rumus 3.28 Dekripsi Tahap Pertama bagian 4 ..................................................... 25
Rumus 3.29 Dekripsi Tahap Kedua bagian 1........................................................ 27
Rumus 3.30 Dekripsi Tahap Kedua bagian 2........................................................ 27
Rumus 3.31 Dekripsi Tahap Kedua bagian 3........................................................ 27
Rumus 3.32 Dekripsi Tahap Kedua bagian 4........................................................ 27
Rumus 3.33 Dekripsi Tahap Kedua bagian 5........................................................ 27
Rumus 3.34 Dekripsi Tahap Kedua bagian 6........................................................ 27
Rumus 3.35 Dekripsi Tahap Kedua bagian 7........................................................ 27
Rumus 3.36 Dekripsi Tahap Kedua bagian 8........................................................ 27
Rumus 3.37 Dekripsi Tahap Kedua bagian 9........................................................ 27
15
Rumus 3.38 Dekripsi Tahap Kedua bagian 10...................................................... 27
Rumus 3.39 Dekripsi Tahap Kedua bagian 11...................................................... 27
Rumus 3.40 Dekripsi Tahap Kedua bagian 12...................................................... 27
Rumus 3.41 Dekripsi Tahap Kedua bagian 13...................................................... 27
Rumus 3.42 Dekripsi Tahap Kedua bagian 14...................................................... 27
Rumus 3.43 Dekripsi Tahap Ketiga bagian 1 ....................................................... 31
Rumus 3.44 Dekripsi Tahap Ketiga bagian 2 ....................................................... 31
Rumus 3.45 Dekripsi Tahap Ketiga bagian 3 ....................................................... 31
Rumus 3.46 Dekripsi Tahap Ketiga bagian 4 ....................................................... 31
Rumus 4.1 Ruang Kunci ....................................................................................... 49
16
DAFTAR GRAFIK
Grafik 4.1 Grafik hasil pengujian kecepatan enkripsi file BMP ........................... 46
Grafik 4.2 Grafik hasil pengujian kecepatan enkripsi file GIF ............................. 47
Grafik 4.3 Grafik hasil pengujian kecepatan enkripsi file JPG ............................. 48
Grafik 4.4 Grafik hasil pengujian kecepatan enkripsi file PNG ........................... 48
Grafik 4.5 Grafik hasil pengujian kecepatan enkripsi file TIF ............................. 49
17
DAFTAR TABEL
Tabel 4.1 Tabel Hasil Pengujian Perubahan Ukuran File ..................................... 42
Tabel 4.2 Tabel Hasil Pengujian Ukuran Data...................................................... 44
Tabel 4.3 Tabel Hasil Pengujian Kecepatan Enkripsi File BMP .......................... 46
Tabel 4.4 Tabel Hasil Pengujian Kecepatan Enkripsi File GIF ............................ 47
Tabel 4.5 Tabel Hasil Pengujian Kecepatan Enkripsi File JPG ............................ 47
Tabel 4.6 Tabel Hasil Pengujian Kecepatan Enkripsi File PNG .......................... 48
Tabel 4.7 Tabel Hasil Pengujian Kecepatan Enkripsi File TIF ............................ 48