• Tidak ada hasil yang ditemukan

Implementasi Algoritma Kriptografi Hill Cipher dan Kompresi Data Menggunakan Algoritma Levenstein Dalam Pengamanan File Teks Chapter III V

N/A
N/A
Protected

Academic year: 2017

Membagikan "Implementasi Algoritma Kriptografi Hill Cipher dan Kompresi Data Menggunakan Algoritma Levenstein Dalam Pengamanan File Teks Chapter III V"

Copied!
61
0
0

Teks penuh

(1)

BAB III

PERANCANGAN SISTEM

3.1. Analisis Sistem

Analisis sistem adalah salah satu tahap perancangan sebuah sistem yang bertujuan

agar sistem yang dirancang menjadi tepat guna dan ketahanan sistem tersebut akan

lebih terjaga. Selain itu, dilakukannya anallisis dapat mempermudah kerja apabila

suatu saat ada perbaikan atau penambahan dalam sistem tersebut. Secara umum

analisis sistem terbagi atas analisis masalah, analisis kebutuhan, dan analisis proses.

3.1.1. Analisis Masalah

Masalah dari penelitian ini adalah adanya perubahan ukuran file setelah dilakukan

penyandian menggunakan algoritma Hill Cipher yang menyebabkan ukuran file menjadi lebih besar. Masalah utama dalam penelitian ini adalah bagaimana

menerapkan algoritma kompresi Levenstein dan algoritma kriptografi Hill Cipher untuk mengamankan file teks.

Masalah penelitian ini diidentifikasikan menggunakan diagram Ishikawa seperti pada gambar 3.1. Bagian kepala atau segiempat yang berada di sebelah kanan

(2)

26

Gambar 3.1 Diagram Ishikawa Masalah Penelitian

3.1.2. Analisis Kebutuhan

Analisis kebutuhan terdapat dua kebutuhan yaitu kebutuhan fungsional dan kebutuhan

non fungsional.

3.1.2.1. Kebutuhan Fungsional

Kebutuhan fungsional menjelaskan proses-proses aktivitas yang dapat dilakukan oleh

sistem dalam melakukan pelayanan yang dilakukan sistem dan kebutuhan yang harus

dipenuhi oleh sistem, yaitu :

a. Sistem harus mampu membaca nilai string byte pada file teks txt, doc, rtf.

b. Sistem harus mampu melakukan kompresi dengan menggunakan Levenstein

untuk nilai string byte yang telah dibaca sehingga menghasilkan file yang telah

dikompresi, serta mampu melakukan dekompresi sehingga menjadi string yang sama sebelum dikodekan.

c. Sistem harus mampu melakukan enkripsi manggunakan Hill Cipher setiap karakter yang telah dikompresi sehingga menghasikan ciphertext, serta sistem

(3)

3.1.2.2. Kebutuhan Non Fungsional

Kebutuhan non-fungsional mendekripsikan fitur, karakteristik dan batasan lainnya seperti performa, penggunaan , model penyimpanan data, dokumentasi, kontrol, dan

ekonomi.

1. Performa

Perangkat lunak yang akan dibangun dapat menunjukkan hasil dari fungsi

kriptografi yang dilakukan sistem.

2. Efisiensi

Sistem atau perangkat lunak yang akan dibangun harus sesederhana mungkin agar

mudah digunakan oleh pengguna.

3. Dokumentasi

Sistem atau perangkat lunak yang akan dibangun dapat menyimpan data hasil

proses enkripsi.

4. Manajemen kualitas

Perangkat lunak yang dibangun harus memiliki kualitas yang baik yaitu proses

yang cepat dan akurat.

5. Kontrol

Perangkat lunak yang dibangun akan menampilkan pesan setiap input yang tidak

sesuai.

3.1.3. Analisis Proses

Pada penelitian ini sistem yang dibangun menggunakan algoritma Levenstein untuk

kompresi dan dekompresi file dan algoritma Hill Cipher untuk enkripsi dan dekripsi sebuah file.

Penggabungan algoritma kriptografi untuk penyandian data dan algoritma

kompresi dilakukan dengan cara yaitu pada awalnya plaintext dikompresi dengan algoritma Levenstein dan menghasilkan ukuran file yang lebih kecil. Lalu file yang telah dikompresi dienkripsi dengan kunci matriks yang invertible.

(4)

28

3.2. Pemodelan Sistem

Pemodelan aplikasi bertujuan untuk menggambarkan semua kondisi dan

bagian-bagian dalam sistem yang dirancang. Pemodelan aplikasi dilakukan dengan membuat

use-case diagram dan activity diagram.

3.2.1. Use-Case Diagram

Diagram usecase digunakan untuk menggambarkan hubungan antara aktor dengan

fungsi atau layanan yang disediakan oleh sistem (Ambler, 2005).

Untuk menganalisa komponen 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.2.

Gambar 3.2 Use-Case Diagram

(5)

Tabel 3.1 Narrative Use-Case Kompresi Enkripsi

Use-case Name Kompresi Design Scope Sistem Goal Level User Goal Stakeholder and

Interest

Pengguna dapat melakukan kompresi dan enkripsi file untuk

menjaga keamanan file

Precondition Pengguna menginputkan pesan dan kunci (generate) Minimal Guarantee Sistem akan memberikan pesan error ketika kompresi dan

enkripsi file gagal

Success Guarantee Sistem akan memberikan pesan kompresi dan enkripsi telah sukses

Trigger Pengguna menekan tombol kompresi kemudian enkripsi Main Success

Scenario

1. Pengguna menginputkan file yang akan dikompresi

2. Pengguna menekan tombol kompresi

3. Sistem melakukan proses kompresi

4. Sistem akan menyimpan hasil kompresi

5. Sistem menampilkan pesan bahwa kompresi pesan

telah sukses

6. Pengguna memasukkan kunci

7. Pengguna menekan tombol enkripsi

8. Sistem melakukan enkripsi pesan

9. Sistem menampilkan pesan bahwa enkripsi pesan

sukses

Berikut ini merupakan tabel narrative usecase yang dapat dilihat pada tabel 3.2 yang menjelaskan usecase dekripsi dan dekompresi file.

Tabel 3.2 Narrative Use-Case Dekripsi Dekompresi

Use-case Name Dekripsi Design Scope Sistem Goal Level User Goal

(6)

30

Interest mengembalikan file sesuai dengan ekstensi awal Precondition Pengguna menginputkan file asli dan kunci

Minimal Guarantee Sistem akan memberikan pesan error ketika dekripsi dan dekompresi file gagal

Success Guarantee Sistem akan memberikan pesan dekripsi dan dekompresi telah sukses

Trigger Pengguna menekan tombol dekripsi kemudian dekompresi Main Success

Scenario

1. Pengguna menginputkan file yang akan didekripsi dan

kunci

2. Pengguna menekan tombol dekripsi

3. Sistem menghitung invers kunci

4. Sistem melakukan proses dekripsi

5. Sistem akan menyimpan hasil dekripsi

6. Sistem menampilkan pesan bahwa dekripsi telah

sukses

7. Pengguna menekan tombol dekompresi

8. Sistem melakukan dekompresi pesan

9. Sistem menampilkan pesan bahwa dekompresi pesan

sukses

3.2.2. Activity Diagram

Diagram aktivitas menggambarkan proses atau urutan aktivitas dalam sebuah sistem.

Activity diagram juga bertujuan untuk membantu memahami proses dan menggambarkan setiap interaksi yang ada antara beberapa usecase yang digunakan

(Ambler, 2005).

3.2.2.1. Activity Diagram Proses Kompresi Levenstein

(7)

Gambar 3.3 Activity Diagram Proses Kompresi Levenstein

3.2.2.2. Activity Diagram Proses Enkripsi Hill Cipher

Pada proses enkripsi, aktivitas yang berlangsung dapat digambarkan pada Activity Diagram seperti pada Gambar 3.4 berikut :

(8)

32

3.2.2.3. Activity Diagram Proses Dekripsi Hill Cipher

Pada proses dekripsi, aktivitas yang berlangsung dapat digambarkan pada Activity Diagram seperti pada Gambar 3.5 berikut :

Gambar 3.5 Activity Diagram Proses Dekripsi Hill Cipher

3.2.2.4. Activity Diagram Proses Dekompresi Levenstein

Pada proses dekompresi, aktivitas yang berlangsung dapat digambarkan pada Activity

Diagram seperti pada Gambar 3.6 berikut :

(9)

3.2.3. Sequence Diagram

Sequence Diagram adalah bentuk pemodelan sistem yang menggambarkan hubungan antar objek atau objek yang saling berinteraksi melalui pesan dalam eksekusi.

Diagram ini mengilustrasikan bagaimana pesan dikirim dan diterima diantara objek.

Sequence Diagram untuk sistem yang dirancang pada sistem ini dapat dilihat pada Gambar 3.7 berikut :

Gambar 3.7 Sequence Diagram Sistem

3.3. Arsitektur Umum Sistem

Arsitektur Umum Sistem adalah gambaran sistem secara menyeluruh yang

menunjukkan langkah-langkah proses interaksi terhadap sebuah sistem, yang meliputi

proses kriptografi, yaitu proses enkripsi-dekripsi file dan proses kompresi yaitu proses

(10)

34

Gambar 3.8 Arsitektur Umum Sistem

Dilihat dari Arsitektur Umum Sistem pada Gambar 3.8. menjelaskan bahwa

Alice merupakan pengguna yang berperan sebagai pengirim yang melakukan proses

kompresi dan enkripsi, dan Bob merupakan pengguna yang berperan sebagai

penerima yang melakukan proses dekripsi dan dekompresi. Langkah pertama yaitu

Alice mengkompresi file menggunakan Algoritma Levenstein kemudian mengekripsi file yang telah terkompresi menggunakan algoritma Hill Cipher dan menghasilkan file terkompresi-enkripsi. Proses selanjutnya adalah proses dekripsi yang dilakukan oleh

Bob dengan menggunakan algoritma Hill Cipher, proses dekripsi tersebut masih menghasilkan file terkompresi. Untuk mengembalikan file asli makan Bob mengkompresi file terkompresi menggunakan Algoritma Levenstein dan menghasilkan file asli yang dikirim oleh pengirim pesan.

3.4. Flowchart Sistem

Flowchart atau diagram alir merupakan gambar atau bagan yang memperlihatkan urutan dan hubungan antar proses dengan pernyataannya (Zarlis & Handrizal, 2008).

(11)

Gambar 3.9 Flowchart Sistem Mulai

Masukkan File teks

Kompresi

Hasil Kompresi

Enkripsi

Hasil Enkripsi

Selesai Dekripsi

Hasil Dekripsi

Dekompresi

(12)

36

3.4.1. Flowchart Algoritma Levenstein

Berikut adalah flowchart kompresi file dari sistem yang akan dibangun seperti pada

Gambar 3.10.

Gambar 3.10 Flowchart Kompresi Levenstein

3.4.2. Flowchart Algoritma Hill Cipher

Berikut adalah flowchart enkripsi pesan dari sistem yang dibangun seperti pada Gambar 3.11.

Gambar 3.11 Flowchart Enkripsi Hill Cipher Mulai

Baca nilai byte file, lalu urutkan tiap karakter berdasakan frekuensi Input file teks (*.doc,*.rtf,*.txt) yang akan dikompresi

Hasil

Tiap karakter dikodekan dengan kode levenstein

Selesai

Mulai

Input plainteks dan generate kunci

Cipherteks

Enkripsi : � � � ����

(13)

Berikut adalah flowchart dekripsi pesan dari sistem yang dibangun dapat dilihat pada Gambar 3.12.

Gambar 3.12 Flowchart Dekripsi Hill Cipher

3.5. Perancangan Antarmuka

Perancangan antarmuka adalah desain awal dari tampilan sistem yang akan dibangun.

Antarmuka harus dirancang dengan memperhatikan faktor pengguna sehingga sistem

yang dibangun dapat memberikan kenyamanan dan kemudahan untuk digunakan oleh

pengguna. Sistem yang dibangun terdiri dari form utama atau home, pengirim, penerima, bantuan , dan tentang.

3.5.1. Rancangan Halaman Utama

Halaman menu utama adalah halaman yang muncul pertama kali saat sistem

dijalankan. Rancangan halaman tersebut dapat dilihat pada Gambar 3.13. Mulai

Input cipherteks dan kunci

Plainteks Hitung �

Dekripsi : � � � ����

(14)

38

Gambar 3.13 Rancangan Halaman Utama / Beranda

Keterangan gambar dapat dilihat pada tabel 3.3 berikut :

Tabel 3.3 Keterangan Rancangan Halaman Utama

No Nama Keterangan

1 Menu strip beranda Berguna untuk menampilkan halaman utama/ beranda

2 Menu strip menu Berguna untuk menampilkan halaman men7 yang

terdiri dari halaman pengirim dan halaman penerima

3 Menu strip bantuan Berguna untuk melihat tata cara penggunaan aplikasi

4 Label 1 Menampilkan judul skripsi

5 Label 2 Menampilkan nama penulis

(15)

3.5.2. Rancangan Halaman Pengirim

Pada halaman pengirim ini, pengguna dapat melakukan proses kompresi dan enkripsi

pesan yang akan dikirim ke penerima. Gambar 3.14 menunjukkan tampilan sementara

dari halaman pengirim.

Gambar 3.14 Rancangan Halaman Pengirim

Keterangan gambar dapat dilihat pada tabel 3.4 berikut :

Tabel 3.4 Keterangan Rancangan Pengirim

No Nama Keterangan

1 Menu Strip Berguna untuk menampilkan halaman utama/ beranda,

pengirim, penerima dan bantuan

(16)

40

3 Textbox Pilih File Menampilkan sumber dari file yang dipilih 4 Button Cari Tombol untuk membuka dan mengambil file 5 Label ukuran Menampilkan tulisan ukuran

6 Textbox ukuran Menampilkan nilai dari ukuran file 7 Label Ekstensi Menampilkan tulisan ekstensi

8 Textbox Ekstensi Menampilkan ekstensi dari file yang dipilih (*.txt,*.doc,*.rtf)

9 Button Kompresi Tombol untuk memulai proses kompresi 10 Label Size Menampilkan tulisan Size

11 Textbox Size Menampilkan ukuran file setelah dikompresi 12 Label Space Saving Menampilkan tulisan Space Saving

13 Textbox Space Saving

Menampilkan besar ukuran yang dihemat

14 Label Compression

Ratio

Menampilkan tulisan Compression Ratio

15 Textbox

Compression Ratio

Menampilkan hasil Compression Ratio

16 Label Time Menampilkan tulisan Time

17 Textbox Time Menampilkan waktu lamanya proses kompresi 18 Label Ratio of

Compression

Menampilkan tulisan Ratio of Compression

19 Textbox Ratio of Compression

Menampilkan hasil Ratio of Compression

20 Button Generate Kunci

Tombol untuk membangkitkan kunci matriks

21 Textbox kunci Menampilkan hasil pembangkitan kunci 22 Button Simpan Kunci Tombol untuk menyimpan kunci

23 Button Enkripsi Tombol untuk memulai proses enkripsi 24 Label Size Menampilkan tulisan Size

25 Textbox Size Menampilkan ukuran file setelah dienkripsi 26 Label Time Menampilkan tulisan Time

(17)

28 Button Simpan Tombol untuk menyimpan data setelah dikompresi dan enkripsi.

3.5.3. Rancangan Halaman Penerima

Pada halaman penerima ini, pengguna dapat melakukan proses dekripsi dan

dekompresi file untuk mengembalikan file seperti awal. Gambar 3.15 menunjukkan tampilan sementara dari halaman penerima.

Gambar 3.15 Rancangan Halaman Penerima

Keterangan gambar dapat dilihat pada tabel 3.5 berikut :

Tabel 3.5 Keterangan Rancangan Halaman Penerima

No Nama Keterangan

1 Menu Strip Berguna untuk menampilkan halaman utama/ beranda,

pengirim, penerima, dan bantuan

(18)

42

3 Textbox Pilih File Menampilkan sumber dari file yang dipilih 4 Button Cari Tombol untuk membuka dan mengambil file 5 Label Ekstensi Asli Menampilkan tulisan Ekstensi Asli

6 Textbox Ekstensi Asli

Menampilkan ekstensi asli dari file

7 Button Load Kunci Tombol untuk memilih file kunci 8 Textbox Kunci Menampilkan kunci

9 Button Dekripsi Tombol untuk memulai proses dekripsi 10 Label Size Menampilkan tulisan Size

11 Textbox Size Menampilkan ukuran file setelah didekripsi 12 Label Time Menampilkan tulisan Time

13 Textbox Time Menampilkan waktu lamanya proses dekripsi 14 Button Dekompresi Tombol untuk memulai proses dekompresi 15 Label Size Menampilkan tulisan Size

16 Textbox Size Menampilkan ukuran file setelah didekompresi 17 Label Time Menampilkan tulisan Time

18 Textbox Time Menampilkan waktu lamanya proses dekompresi 19 Button Simpan Tombol untuk menyimpan file yang telah diproses 20 Button Tampilkan Tombol untuk menampilkan pada aplikasi microsoft

word file yang telah disimpan

3.5.4. Rancangan Halaman Bantuan

Pada halaman bantuan ini, pengguna dapat melihat keterangan mengenai cara

menggunakan aplikasi ini. Gambar 3.16 menunjukkan tampilan sementara dari

(19)

Gambar 3.16 Rancangan Halaman Bantuan

Keterangan gambar dapat dilihat pada tabel 3.6 berikut :

Tabel 3.6 Keterangan Rancangan Halaman Bantuan

No Nama Keterangan

1 Menu Strip Berguna untuk menampilkan halaman utama/

beranda, pengirim, penerima dan bantuan

2 Label Pengirim Menampilkan tulisan pengirim

3 Picturebox pengirim Menampilkan gambar proses halaman pengirim 4 Label Penerima Menampilkan tulisan penerima

(20)

BAB IV

IMPLEMENTASI DAN PENGUJIAN SISTEM

Pada bab ini penulis memaparkan bagaimana implementasi dan juga hasil pengujian

aplikasi yang dilakukan pada Algoritma Kriptografi Hill Cipher dan Algoritma Kompresi Levenstein yang sudah dibangun menggunakan Sharp Development.

4.1. Implementasi Sistem

Tahap implementasi dilakukan setelah tahap perancangan pada sistem dibuat.

Implementasi merupakan proses penerapan dari hasil analisis dan perancangan sistem

ke dalam sebuah bahasa pemrograman. Implementasi sistem pada penelitian ini

dibangun menggunakan bahasa pemrogaman C#. Proses implementasi yang dirancang

pada sistem ini dibagi menjadi 3 halaman, yaitu : halaman Beranda, halaman Menu,

dan halaman Bantuan.

4.1.1. Halaman Beranda

Beranda merupakan halaman yang pertama kali muncul ketika sistem dijalankan.

Halaman Beranda menampilkan menu strip yang membantu menuju ke halaman lainnya dan judul sistem, nama pembuat sistem, logo dan informasi universitas.

(21)

Gambar 4.1 Menu Home

4.1.2. Halaman Menu

Halaman Menu memilki 2 submenu didalamnya, yaitu menu Pengirim dan Penerima.

4.1.2.1. Submenu Pengirim

Submenu Pengirim merupakan halaman proses yang akan digunakan oleh pengirim

(22)

46

Gambar 4.2 Submenu Pengirim

4.1.2.2. Submenu Penerima

Submenu Penerima merupakan halaman proses yang akan digunakan oleh penerima

pesan untuk melakukan dekompresi dan dekripsi agar dapat melihat file teks asli yang

telah dimampatkan dan diamankan sebelumnya. Tampilan dari submenu Penerima

(23)

Gambar 4.3 Submenu Penerima

4.1.3. Halaman Bantuan

Pada menu Bantuan menampilkan informasi mengenai langkah-langkah penggunaan aplikasi ini sehingga memudahkan pengguna. Tampilan dari halaman bantuan dapat

(24)

48

Gambar 4.4 Menu Bantuan

4.2. Pengujian Sistem

Pada tahap ini akan dilakukan pengujian pada beberapa file dengan kapasitas yang berbeda-beda yaitu file TXT 1 (46854 byte), TXT 2 (239245 byte), DOC 1 (32768 byte), DOC 2 (41472 byte), RTF 1 (152998 byte), dan RTF 2 (452795 byte). Namun

pada pengujian ini file yang akan ditampilkan hanya beberapa file. Sebagai perwakilannya adalah file dengan format *.txt, *.doc, dan *.rtf. Kunci pada pengujian

(25)

telah dikompresi dan enkripsi disimpan dalam format yang telah ditentukan program.

4.2.1. Pengujian proses Kompresi dan Enkripsi

Setelah memilih submenu pengirim maka akan dilakukan proses kompresi dan enkripsi file. Hal yang dilakukan pertama sekali adalah memilih file yang akan diproses. Berikut langkah – langkah untuk memilih file yang akan diproses.

1. Tekan tombol Cari, untuk membuka Open File Dialog dan file teks (*.txt,*.doc,*.rtf) yang akan dikompresi. Form Open File Dialog dapat dilihat

pada Gambar 4.5.

Gambar 4.5 Open File Dialog input file teks

2. Kemudian sistem akan menampilkan lokasi, ukuran dan ekstensi (format) file

yang telah dipilih tersebut. Tampilan akan terlihat pada aplikasi seperti pada

(26)

50

Gambar 4.6 Tampilan file terpilih

Untuk lebih rinci akan diuji proses enkripsi pada beberapa file yaitu TXT, DOC dan

RTF akan ditampilkan sebagai berikut :

a) Proses Kompresi dan Enkripsi File dengan Format TXT (.txt)

Berikut file format TXT dengan nama File TXT 1 yang akan dilakukan kompresi dan

enkripsi yang dapat dilihat pada gambar 4.7.

Gambar 4.7 File TXT 1

Setelah file dipilih maka dapat dilakukan proses kompresi dengan menekan tombol Kompresi dan apabila berhasil, maka akan muncul hasil seperti pada gambar

(27)

Gambar 4.8 Proses Kompresi File TXT 1

Setelah dilakukan kompresi, maka tahap selanjutnya yaitu melakukan enkripsi

dengan terlebih dahulu men-generate kunci matriks seperti gambar 4.9 berikut :

Gambar 4.9 Proses Generate Kunci

Setelah itu kunci disimpan dengan format KEY (.key) seperti pada gambar

(28)

52

Gambar 4.10 Proses Penyimpanan Kunci

Selanjutnya dilakukan proses enkripsi dengan menekan tombol Enkripsi.

Apabila berhasil maka akan muncul messagebox berhasil dienkripsi seperti pada gambar 4.11 berikut :

Gambar 4.11 Messagebox berhasil dienkripsi

Kemudian akan tampil hasil ukuran file dan lama proses enkripsi seperti

(29)

Gambar 4.12 Proses Enkripsi File TXT 1

Selanjutnya simpan hasil dengan format .hlvt untuk file TXT seperti gambar 4.13 berikut :

(30)

54

Hasil file akan menjadi seperti gambar 4.14 berikut :

Gambar 4.14 Hasil Enkripsi File TXT 1

Selanjutnya file format TXT dengan nama File TXT 2 yang akan dilakukan kompresi dan enkripsi yang dapat dilihat pada gambar 4.15.

(31)

Setelah dikompresi dan dienkripsi maka akan menghasilkan tampilan seperti

gambar 4.16 berikut :

Gambar 4.16 Proses kompresi dan enkripsi File TXT 2

Lalu tekan tombol simpan, maka file akan disimpan dengan format .hlvt dan

(32)

56

Gambar 4.17 Hasil Enkripsi File TXT 2

b) Proses Kompresi dan Enkripsi File dengan Format DOC (.doc)

Berikut file format DOC dengan nama File DOC 1 yang akan dilakukan kompresi dan enkripsi yang dapat dilihat pada gambar 4.18.

(33)

Setelah dikompresi dan dienkripsi maka akan menghasilkan tampilan seperti

gambar 4.19 berikut :

Gambar 4.19 Proses kompresi dan enkripsi File DOC 1

Lalu tekan tombol simpan, maka file akan disimpan dengan format .hlvd dan

(34)

58

Gambar 4.20 Hasil Enkripsi File DOC 1

Selanjutnya file format DOC dengan nama File DOC 2 yang akan dilakukan kompresi dan enkripsi yang dapat dilihat pada gambar 4.21.

(35)

Setelah dikompresi dan dienkripsi maka akan menghasilkan tampilan seperti

gambar 4.22 berikut :

Gambar 4.22 Proses kompresi dan enkripsi File DOC 2

Lalu tekan tombol simpan, maka file akan disimpan dengan format .hlvd dan

(36)

60

Gambar 4.23 Hasil Enkripsi File DOC 2

c) Proses Kompresi dan Enkripsi File dengan Format RTF(.rtf)

Berikut file format RTF dengan nama File RTF 1 yang akan dilakukan kompresi dan

enkripsi yang dapat dilihat pada gambar 4.24.

(37)

Setelah dikompresi dan dienkripsi maka akan menghasilkan tampilan seperti

gambar 4.25 berikut :

Gambar 4.25 Proses kompresi dan enkripsi File RTF 1

Lalu tekan tombol simpan, maka file akan disimpan dengan format .hlvr dan

(38)

62

Gambar 4.26 Hasil Enkripsi File RTF 1

Selanjutnya file format RTF dengan nama File RTF 2 yang akan dilakukan kompresi dan enkripsi yang dapat dilihat pada gambar 4.27.

(39)

Setelah dikompresi dan dienkripsi maka akan menghasilkan tampilan seperti

gambar 4.28 berikut :

Gambar 4.28 Proses kompresi dan enkripsi File RTF 2

Lalu tekan tombol simpan, maka file akan disimpan dengan format .hlvr dan

(40)

64

Gambar 4.29 Hasil Enkripsi File RTF 2

4.2.2. Pengujian proses Dekripsi dan Dekompresi

Setelah proses kompresi dan enkripsi file telah berhasil, maka akan diperoleh file yang

berbeda dengan file aslinya. Untuk mengembalikan file tersebut menjadi seperti semula maka dilakukan proses dekripsi dan dekompresi dengan memilih menu strip penerima. Untuk lebih rinci, berikut akan diuji beberapa file yang telah dikompresi dan enkripsi sebelumnya.

a) Proses Dekripsi dan Dekompresi File dengan Format TXT (.txt)

Berikut merupakan tampilan proses pengujian dekripsi file TXT 1 yang disimpan dengan nama “Enkrip TXT 1.hlvt”. Pertama sekali cari file tersebut dan juga load kunci yang memiliki format .key , lalu lakukan dekripsi dan dekompresi seperti pada

(41)

Gambar 4.30 Proses Dekripsi Dekompresi File “Enkrip TXT 1”

Lalu simpan pada direktori yang diinginkan maka akan muncul messagebox seperti gambar 4.31 berikut :

(42)

66

Hasil dari proses tersebut akan kembali seperti aslinya. Berikut tampilan

hasilnya pada gambar 4.32.

Gambar 4.32 Hasil Proses Dekripsi Dekompresi File “Enkrip TXT 1”

(43)

Gambar 4.33 Proses Dekripsi Dekompresi File “Enkrip TXT 2”

Lalu simpan pada direktori yang diinginkan maka akan muncul messagebox seperti gambar 4.34 berikut :

(44)

68

Hasil dari proses tersebut akan kembali seperti aslinya. Berikut tampilan

hasilnya pada gambar 4.35.

Gambar 4.35 Hasil Proses Dekripsi Dekompresi File “Enkrip TXT 2”

b) Proses Dekripsi dan Dekompresi File dengan Format DOC (.doc)

(45)

Gambar 4.36 Proses Dekripsi Dekompresi File “Enkrip DOC 1”

Lalu simpan pada direktori yang diinginkan maka akan muncul messagebox seperti gambar 4.37 berikut :

(46)

70

Hasil dari proses tersebut akan kembali seperti aslinya. Berikut tampilan

hasilnya pada gambar 4.38.

Gambar 4.38 Hasil Proses Dekripsi Dekompresi File “Enkrip DOC 1”

(47)

Gambar 4.39 Proses Dekripsi Dekompresi File “Enkrip DOC 2”

Lalu simpan pada direktori yang diinginkan maka akan muncul messagebox seperti gambar 4.40 berikut :

(48)

72

Hasil dari proses tersebut akan kembali seperti aslinya. Berikut tampilan

hasilnya pada gambar 4.41.

Gambar 4.41 Hasil Proses Dekripsi Dekompresi File “Enkrip DOC 2”

c) Proses Dekripsi dan Dekompresi File dengan Format RTF (.trtf)

(49)

Gambar 4.42 Proses Dekripsi Dekompresi File “Enkrip RTF 1”

Lalu simpan pada direktori yang diinginkan maka akan muncul messagebox seperti gambar 4.43 berikut :

(50)

74

Hasil dari proses tersebut akan kembali seperti aslinya. Berikut tampilan

hasilnya pada gambar 4.44.

Gambar 4.44 Hasil Proses Dekripsi Dekompresi File “Enkrip RTF 1”

(51)

Gambar 4.45 Proses Dekripsi Dekompresi File “Enkrip RTF 2”

Lalu simpan pada direktori yang diinginkan maka akan muncul messagebox seperti gambar 4.46 berikut :

(52)

76

Hasil dari proses tersebut akan kembali seperti aslinya. Berikut tampilan

hasilnya pada gambar 4.47.

Gambar 4.47 Hasil Proses Dekripsi Dekompresi File “Enkrip RTF 2”

4.2.3. Pengujian dengan Perhitungan Manual

Berikut adalah file format TXT dengan nama “Halo” yang akan diproses seperti pada

gambar 4.48 berikut :

Gambar 4.48 File Halo

a) Kompresi Manual dengan Algoritma Levenstein

(53)

Gambar 4.49 Proses Kompresi File Halo

Proses pertama perhitungan manual dari file teks yang berisikan string “SAYA WINDI” yaitu karakter tersebut diurutkan terlebih dahulu berdasarkan dari karakter

yang memiliki frekuensi terbesar ke terkecil. Untuk ukuran String dapat dilihat pada

Tabel 4.1.

Tabel 4.1 String yang Belum Dikompresi

(54)

78

Berdasarkan kode ASCII, satu karakter bernilai delapan bit bilangan biner.

Sehingga 10 karakter pada string mempunyai nilai biner sebanyak 80 bit. Proses kompresi untuk Levenstein Code dapat dilihat pada Tabel 4.2.

Tabel 4.2 String yang Sudah Dikompresi dengan Levenstein Code

n Char Levenstein Code Bit Frek Bit x Frek WINDI” menjadi string bit “110001101011100001110001101110010111001110” Sebelum ditulis ke sebuah file hasil kompresi dilakukan penambahan padding dan flag

bits diakhir string bit. Bit-bit itu dihasilkan dari panjang string bit itu sendiri apakah habis dibagi delapan dan berapa sisanya jika dibagi delapan.

Karena jumlah string bit 42 tidak habis dibagi delapan dan sisanya 2. Maka

dapat dibuat padding “000000” dan flagbits nya adalah “110001101011100001110 00110111001011100111000000000000110”. Sehingga total bit seluruhnya setelah

penambahan padding dan flag bits adalah 56 bit.

(55)

b) Enkripsi Manual dengan Algoritma Hill Cipher

Kunci yang digunakan pada proses enkripsi adalah seperti pada gambar 4.50 berikut.

Gambar 4.50 Kunci Hill Cipher

Untuk melakukan enkripsi dari string yang telah dikompresi, maka string bit

tersebut diubah kembali menjadi char seperti pada tabel 4.3 berikut :

Tabel 4.3 Kode dari String Bit

Kode

ASCII

(binary)

11000110 10111000 01110001 10111001 01110011 10000000 00000110

Kode

ASCII

198 184 113 185 115 128 6

Proses enkripsi dapat silihat pada tabel 4.4 berikut:

Tabel 4.4 Enkripsi Hill Cipher Contoh

Kunci Matriks

Plaintext Hasil perkalian kunci

dengan plaintext Ciphertext Ciphertext

(56)

80

c) Dekripsi Manual dengan Algoritma Hill Cipher

Proses dekripsi dapat silihat pada tabel 4.5 berikut:

Tabel 4.5 Dekripsi Hill Cipher Contoh

Ciphertext Hasil perkalian kunci

dengan ciphertext Hasil Akhir Plaintext

(

d) Dekompresi Manual dengan Algoritma Levenstein

Untuk melakukan dekompresi dari plainteks yang telah didekripsi, maka string bit

tersebut diubah kembali menjadi kode biner seperti pada tabel 4.6 berikut :

Tabel 4.6 Kode dari String Bit

Kode

ASCII

(binary)

11000110 10111000 01110001 10111001 01110011 10000000 00000110

Kode

ASCII

198 184 113 185 115 128 6

Maka akan didapatkan string bit “11000110101110000111000110111001011 100111000000000000110”. Kemudian baca flagbits dari string tersebut yaitu ubah delapan bit terakhir dari string menjadi nilai desimalnya yaitu :

11000110101110000111000110111001011 100111000000000000110

Dari hasil terdapat 6 buah padding bits. Selanjutnya hapus flag bits dan padding bits dari string sehingga menjadi “110001101011100001110001101110010111001110”.

Selanjutnya cek dari bit pertama, apabila terdapat pada tabel kode levenstein

pada tabel 4.2 maka ubah ke string yang sesuai. Sehingga didapatkan hasil seperti

tabel 4.7 berikut :

(57)

Tabel 4.7 Hasil Dekompresi

Levenstein Code Char

1100 S

Dari hasil didapatkan string dari file tersebut adalah “SAYA WINDI” sesuai dengan file asli sebelum diproses.

4.3. Hasil Pengujian

Dari uji coba yang telah dilakukan di atas diperoleh hasil seperti pada Tabel 4.8

berikut:

Tabel 4.8 Hasil Uji Coba

No Nama Asli Kompresi Enkripsi Dekripsi Dekompresi

(58)

82

Dari Tabel 4.8 dapat dibuat grafik perbandingan hasil pengujian antara ukuran

file plainteks, file kompresi, dan cipherteks seperti Gambar 4.51.

Gambar 4.51 Grafik perbandingan hasil pengujian antara ukuran file asli, hasil kompresi/dekripsi, hasil enkripsi, dan hasil dekompresi

Dari uji coba dapat pula diperoleh hasil perbandingan berdasarkan waktu pada

tiap-tiap proses yang dilakukan, seperti pada Tabel 4.9.

Tabel 4.9 Hasil Uji Coba Berdasarkan Waktu

No Nama File

Waktu (s)

Kompresi Enkripsi Dekripsi Dekompresi

(59)

Dari Tabel 4.9 dapat dibuat grafik perbandingan hasil pengujian terhadap

waktu pada proses kompresi, enkripsi, dekripsi, dan dekompresi seperti Gambar 4.52.

Gambar 4.52 Grafik perbandingan hasil pengujian waktu pada proses kompresi, enkripsi, dekripsi, dan dekompresi

(60)

BAB V

KESIMPULAN DAN SARAN

Pada ini akan disimpulkan, aplikasi telah dapat melakukan proses pemampatan data

dan proses penyandian data. Pada bab ini juga disajikan saran-saran yang bermanfaat

sebagai masukan bagi pengembangan Aplikasi Kompresi data menggunakan

Algoritma Levenstein dan penyandian data menggunakan Algoritma Hill Cipher yang

lebih baik.

5.1. Kesimpulan

1. Aplikasi yang dirancang dalam penelitian telah mampu melakukan proses

kompresi file teks dengan Algoritma Levenstein dan penyandian file hasil kompresi dengan Algoritma Hill Cipher .

2. Hasil pengujian kompresi dari file berdasarkan variabel Ratio of Compression

(RC), Compression Ratio (CR), dan Space Saving (SS) masing-masing dengan

nilai rata-rata sebesar 1.44, 60.83% , dan 27.51%.

3. File yang sudah di enkripsi menjadi cipherteks beberapa memiliki karakter yang lebih banyak atau panjang dibandingkan dengan file sebelum dilakukan proses enkripsi.

4. File hasil dekripsi sama persis seperti file awal sebelum dilakukan proses enkripsi.

5. Berdasarkan grafik hubungan antara ukuran data pada proses kompresi,

enkripsi, dekripsi, dan dekompresi tersebut menunjukkan bahwa file enkripsi menghasilkan ukuran terbesar, dan file kompresi menghasilkan ukuran terkecil.

6. Berdasarkan grafik hubungan antara waktu proses kompresi, dekripsi, dan

(61)

5.2 Saran

Adapun saran-saran yang dapat penulis berikan untuk pengembangan dan perbaikan

sistem ini adalah sebagai berikut:

1. Sistem ini hanya mampu melakukan proses kompresi dan pengamanan pada

file teks (*.txt,*doc,*rtf), sehingga untuk pengembangan selanjutnya dapat dilakukan pada file teks format lainnya seperti *.pdf, *docx, dan format file lainnya.

2. Untuk penelitian berikutnya diharapkan nilai kunci yang terdapat pada matriks

dapat lebih dari kombinasi nilai (1-10).

3. Dalam mencari nilai invers dari kunci matriks untuk selanjutnya dapat

menggunakan algoritma Extended Euclidean GCD.

4. Sistem dapat dikembangkan dengan menambahkan jenis data yang dapat

Gambar

Gambar 4.14  Hasil Enkripsi File TXT 1
gambar 4.16 berikut :
Gambar 4.17 Hasil Enkripsi File TXT 2
Gambar 4.19 Proses kompresi dan enkripsi File DOC 1
+7

Referensi

Dokumen terkait

Implementasi kombinasi algoritma kriptografi modifikasi playfair cipher dan teknik steganografi begin of file pada pengamanan tesan Teks.. Universitas

Algoritma asimetris atau biasa disebut algoritma kunci publik dirancang sedemikian sehingga kunci yang digunakan untuk mengenkripsi dan mendekripsi berbeda.Kunci dekripsi tidak

Pengujian Massey-Omura menunjukkan bahwa jumlah ukuran file dan kunci enkripsi atau dekripsi berbanding lurus dengan waktu proses dan digit bilangan prima berbanding lurus

Sistem dapat melakukan dekripsi terhadap file database yang telah dienkripsi sebelumnya dengan kunci enkripsi dan metode yang sama pada proses enkripsi.. 3.1.2.2

Data yang akan digunakan adalah file gambar dan sampel pesan teks untuk dijadikan sebagai sampel uji coba meningkatkan keamanan data menggunakan algoritma kriptografi

Penelitian ini menerapkan metode kriptografi hibrida sebagai pengamanan file teks dengan menggunakan algoritma Affine Cipher untuk enkripsi dan dekripsi isi file teks dan

Untuk mengenkripsi kunci, yang pertama harus dilakukan user adalah menginputkan kunci publik dengan menekan button Buka Kunci Publik maka kunci publik akan tampil pada textfield

Pengujian dekripsi terhadap sebuah pesan teks ( plaintext ) dimana pesan teks ( plaintext ) yang terdekripsi dengan kunci yang cocok tersebut dapat kembali ke pesan teks