8
Gambar 10 Flowchart Proses Dekripsi dengan Algoritma GOST
4. Implementasi dan Pembahasan
Antarmuka untuk Proses Enkripsi
File yang akan dienkripsi dalam kriptosistem yang dibangun adalah file
hasil kompresi.
Gambar 11 Antarmuka Proses Enkripsi
Gambar 11 menunjukkan antarmuka dari proses enkripsi. Untuk menjalankan proses enkripsi, user membuka file yang akan dienkripsi, berupa teks
dan gambar plaintextplain image, dengan memilih tombol Select File. File yang akan dienkripsi merupakan file hasil kompresi. Selanjutnya user melakukan
beberapa proses berikut, memilih tombol Save Compressed File As, untuk menentukan tempat penyimpanan file hasil kompresi; memasukkan kunci untuk
enkripsi pada textbox Encryption 32 Bytes Key; memilih tombol Save Encrypted File As, untuk menentukan tempat penyimpanan file hasil enkripsi
ciphertextcipher image. Untuk menjalankan proses enkripsi, user memilih tombol Compress Encrypt. File yang akan dienkripsi, terlebih dahulu akan
dikompresi, dimana proses kompresi dilakukan secara bersamaan dengan proses enkripsi, juga ditampilkan waktu yang dibutuhkan untuk proses kompresi dan
proses enkripsi. Proses enkripsi yang dilakukan menghasilkan file hasil kompresi dan file hasil enkripsi. Proses dan perintah yang digunakan dalam proses Enkripsi
akan dijelaskan sebagai berikut. Proses enkripsi yang dilakukan, diawali dengan proses kompresi menggunakan metode Huffman. Plaintext bisa berupa .doc, .txt,
atau .jpg dikompresi menjadi plaintext ekstensi file .huff. Selanjutnya proses enkripsi dengan metode GOST, dilakukan dengan cara berikut, plaintext berupa
file hasil kompresi diubah dalam bentuk biner ciphertext, lalu plaintext di-XOR dengan nilai pembentukan kunci, dan didapat hasil akhir berupa ciphertext dalam
bentuk biner, yaitu file GOST .gst. Jad
i setelah memilih tombol ’Compress Encrypt’, maka kompresi dengan enkripsi berjalan secara bersamaan, memberikan
hasil 2 dua file, yaitu file hasil kompresi dan file hasil enkripsi.
9
Implementasi Proses Enkripsi
Kode Program 1 merupakan perintah untuk melakukan proses kompresi data, yang dipanggil dan dijalankan pada saat tombol Compress Encrypt
dipilih.
Kode Program 1 Perintah untuk Proses Kompresi
Kode Program 2 merupakan perintah untuk melakukan proses enkripsi, yang dipanggil dan dijalankan pada saat tombol Compress Encrypt dipilih.
Kode Program 2 Perintah untuk Proses Enkripsi
Kode Program 3 Perintah Tombol Compress dan Enkripsi
Pada Kode Program 3, perintah pada baris ke-1 digunakan untuk memulai proses encrypt yang diawali dengan pemberitahuan kepada user yang menandakan
private void encryptButton_Clickobject sender, EventArgs e { AddLogProcess Started.;
Mulai = DateTime.Now; Thread tr = new Threadnew ThreadStartProcessEncrypt;
tr.Start;} [1]
private void ProcessEncrypt { byte[] data = File.ReadAllBytesthis.plainFileTextBox.Text;
[2] AddLogCompress File + this.plainFileTextBox.Text;
[3] AddLogResult + this.compressResultTextBox.Text;
byte[] compressed = Compression.Compressdata; [4]
File.WriteAllBytesthis.compressResultTextBox.Text, [5]
compressed; GostKey key = new GostKeythis.encryptKeyTextBox.Text;
[6] AddLogEncrypt File + this.compressResultTextBox.Text;
gost.Encryptkey, compressed; } [7]
class Compression { public static byte[] Compressbyte[] data {
HuffmanTree huff = new HuffmanTree; String base64String = Convert.ToBase64Stringdata;
huff.Buildbase64String; String s = Encoding.Default.GetStringdata;
huff.Buildbase64String; BitArray encoded = huff.Encodebase64String;
int tambahan = 8 - encoded.Count 8; byte[] bytesData = ConvertToByteencoded, tambahan;
byte[] tree = Encoding.Default.GetByteshuff.PrintFrequencies;
byte[] panjangTree = BitConverter.GetBytesshorttree.Length; byte panjangPad = bytetambahan;
byte[] hasilAkhir = new byte[panjangTree.Length + 1 + tree.Length + bytesData.Length];
Listbyte list = new Listbyte; list.AddRangepanjangTree;
list.AddpanjangPad; list.AddRangetree;
list.AddRangebytesData; return list.ToArray; }
public void EncryptGostKey key, byte[] data { DateTime startTime = DateTime.Now;
byte[] sourceData = Utility.PadFilesdata; byte[] info = CreateInfosourceData.Length - data.Length;
Listbyte list = new Listbyte; list.AddRangeinfo;
list.AddRangesourceData; Startedthis, new GostArgs { Total = list.Count };
byte[] result = Cipherkey, list.ToArray, Mode.Encryption; Finishedthis, new GostArgs {
Mode = Mode.Encryption, Carrier = result,
ElapsedTime = DateTime.Now - startTime }; }
10
proses akan dilakukan. Setelah itu ditandai dengan urutan waktu terhadap proses yang akan dijalankan berikutnya. Perintah pada baris ke-2 digunakan untuk
membaca ukuran file plaintext yang dimasukkan. Selanjutnya perintah pada baris ke-3, digunakan untuk menampilkan data plaintext yang telah terkompresi.
Perintah pada baris ke-4 digunakan untuk melakukan proses pemanggilan fungsi kompresi, sehingga data yang dimasukkan akan melakukan proses kompresi
terlihat pada Kode Program 1. Perintah pada baris ke-5 digunakan untuk melakukan proses kompresi dan membaca ukuran file yang dimasukkan.
Selanjutnya perintah pada baris ke-6, digunakan untuk menginisialisasi ukuran kunci berdasarkan karakter yang dimasukkan. Selanjutnya perintah pada baris ke-
7 digunakan untuk melakukan proses pemanggilan fungsi encrypt GOST terlihat pada Kode Program 2. Gambar 12 merupakan hasil kompresi dari plaintext .txt
menjadi plaintext .huff, selanjutnya hasil enkrispi dari plaintext .huff dienkripsi menjadi ciphertext .gst, terlihat pada Gambar 13.
Gambar 12 Form Hasil Kompresi Gambar 13 Form Hasil Enkripsi
Metode Huffman Metode GOST
Antarmuka untuk Proses Dekripsi
File yang akan didekripsi dalam kriptosistem yang dibangun adalah file
hasil enkripsi .gst.
Gambar 14 Antarmuka Proses Dekripsi
Gambar 14 menunjukkan antarmuka dari proses dekripsi. Untuk menjalankan proses dekripsi, user membuka file yang akan didekripsi, berupa file
hasil enkripsi ciphertextcipher image, dengan memilih tombol Select File. Selanjutnya user melakukan beberapa proses berikut, memilih tombol Save
Decrypted File As, untuk menentukan tempat penyimpanan file hasil dekripsi; memasukkan kunci untuk dekripsi pada textbox Decryption 32 Bytes Key;
memilih tombol Save Decompressed File, untuk menentukan tempat penyimpanan file hasil dekompresi plaintextplain image. Untuk menjalankan
proses dekripsi, user memilih tombol Decrypt Decompressed. File yang akan didekripsi, terlebih dahulu akan didekompresi, dimana proses dekompresi
dilakukan secara bersamaan dengan proses dekripsi, juga ditampilkan waktu yang dibutuhkan untuk proses dekompresi dan proses dekripsi. Proses dekripsi yang
11
dilakukan menghasilkan file hasil dekompresi dan file hasil dekripsi. Proses dan perintah yang digunakan dalam proses dekripsi dengan algoritma GOST akan
dijelaskan sebagai berikut. Proses dekripsi yang dilakukan, diawali dengan proses mengembalikan ciphertext .gst ke data asli dalam bentuk plaintext ekstensi file
.huff, lalu ciphertext di-XOR dengan nilai pembentukan kunci, akan diperoleh hasil akhir berupa plaintext dalam bentuk file .huff. Selanjutnya proses
dekompresi, mengembalikan data file plaintext ekstensi file .huff menjadi data plaintext asli bisa berupa .doc, .txt, atau .jpg, dengan ukuran file yang sama
sebelum terjadi proses kompresi. Jadi setelah memilih tombol ’Decrypt Decompress’, maka proses dekripsi dan proses dekompresi akan dijalankan secara
bersamaan, dimana proses ini akan memberikan output, berupa file hasil dekripsi dan file hasil dekompresi.
Implementasi Proses Dekripsi
Kode Program 4 merupakan perintah untuk melakukan proses dekripsi, yang dipanggil dan dijalankan pada saat tombol Decrypt Deompress dipilih.
Kode Program 4 Perintah Proses Dekripsi
Kode Program 5 merupakan perintah untuk melakukan proses dekompresi, yang dipanggil dan dijalankan pada saat tombol Decrypt Deompress dipilih.
Kode Program 5 Perintah Proses Dekompresi
public void DecryptGostKey key, byte[] data { DateTime startTime = DateTime.Now;
Startedthis, new GostArgs { Total = data.Length }; byte[] result = Cipherkey, data, Mode.Decryption;
byte[] info = GetInforesult; byte[] original = new byte[result.Length - info.Length - intinfo[0]];
Array.Copyresult, info.Length, original, 0, original.Length; Finishedthis, new GostArgs {
Mode = Mode.Decryption, Carrier = original,
ElapsedTime = DateTime.Now - startTime }; }
public static byte[] Extractbyte[] data { byte[] panjangTree = new byte[] {data[0], data[1] };
byte panjangPad = data[2]; byte[] tree = new byte[BitConverter.ToInt16panjangTree, 0];
Array.Copydata, 3, tree, 0, tree.Length; byte[] bytesData = new byte[data.Length - tree.Length - 1 -
panjangTree.Length]; int panjangHeader = panjangTree.Length+1+tree.Length;
Array.Copydata, panjangHeader, bytesData, 0, bytesData.Length; BitArray bits = ConvertToBitArraybytesData, panjangPad;
string treeString = Encoding.Default.GetStringtree; HuffmanTree huff = new HuffmanTree;
huff.LoadTreetreeString; string base64 = huff.Decodebits;
string s = huff.Decodebits; byte[] hasil = Encoding.Default.GetBytess;
byte[] hasil = Convert.FromBase64Stringbase64; return hasil; }
12
Kode Program 6 Perintah Proses Dekripsi dan Dekompresi
Pada Kode Program 6, perintah pada baris ke-1 digunakan untuk memulai
proses decrypt yang diawali dengan pemberitahuan kepada user yang menandakan proses akan dilakukan. Setelah itu ditandai dengan urutan waktu terhadap proses
yang akan dijalankan berikutnya. Perintah pada baris ke-2 digunakan untuk membaca ukuran file yang dimasukkan. Selanjutnya perintah pada baris ke-3
digunakan untuk menginisialisasi ukuran kunci berdasarkan karakter yang dimasukkan. Perintah pada baris ke-4 digunakan untuk melakukan proses
pemanggilan fungsi decrypt untuk melakukan proses dekripsi terlihat pada Kode Program 4. Selanjutnya perintah pada baris ke-5, digunakan untuk membaca
ukuran file hasil dekripsi. Selanjutnya perintah pada baris ke-6 digunakan untuk melakukan proses dekompresi. Perintah pada baris ke-7 digunakan untuk
melakukan proses pemanggilan fungsi decompress yang akan melakukan proses extract file dekompresi menjadi data asli kompresi terlihat pada Kode Program
5. Perintah pada baris ke-8 digunakan untuk menampilkan hasil decrypt yang telah dilakukan.
Gambar 15 merupakan hasil dekripsi dari ciphertext .gst menjadi Plaintext .huff, selanjutnya data plaintext .huff dikompresi menjadi plaintext
data asli, terlihat seperti pada Gambar 16
Gambar 15 Hasil Dekripsi dengan Gambar 16 Hasil Dekompresi dengan
Metode GOST Algoritma Huffman
Evaluasi Prototype Sistem
Evaluasi prototype sistem merupakan tahap terakhir pada metode pengembangan sistem yang digunakan, yaitu mengevaluasi apakah prototype
sistem yang telah dibangun sesuai dengan kebutuhan. Pada prototype pertama, dirancang aplikasi hanya menggunakan algoritma GOST dalam kriptosistem yang
dibangun. Kemudian prototype tersebut dievaluasi oleh customer, dalam hal ini adalah pembimbing. Customer memberikan masukan atau saran untuk
private void encryptButton_Clickobject sender, EventArgs e { AddLogProcess Started.;
Mulai = DateTime.Now; Thread tr = new Threadnew ThreadStartProcessEncrypt;
tr.Start;} [1]
private void ProcessDecrypt { byte[] data = File.ReadAllBytesthis.cipherFileTextBox.Text;
[2] GostKey key = new GostKeythis.decryptKeyTextBox.Text;
[3] AddLogDecrypt File + this.cipherFileTextBox.Text;
gost.Decryptkey, data; } [4]
else decrypt { File.WriteAllBytesthis.decryptResultFileTextBox.Text, data;
[5] AddLogDecompress File + this.decryptResultFileTextBox.Text;
[6] AddLogResult + this.decompressResultFileTextBox.Text;
byte[] original = Compression.Extractdata; [7]
File.WriteAllBytesthis.decompressResultFileTextBox.Text, original; AddLogResult + this.decryptResultFileTextBox.Text; } [8]
13
menambahkan algoritma kompresi pada aplikasi tersebut. Berdasarkan hasil evaluasi pada prototype pertama, maka dirancang prototype kedua. Pada prototype
kedua, rancangan aplikasi kriptosistem yang dibangun ditambahkan penerapan metode kompresi yaitu metode huffman. Proses kompresi dikerjakan terlebih
dahulu, dengan memilih tombol kompresi; selanjutnya hasil kompresi tersebut diterapkan proses enkripsi, dengan memilih tombol enkripsi. Kemudian prototype
kedua dievaluasi kembali oleh customer. Customer memberikan masukan atau saran untuk menyatukan proses kompresi dan enkripsi dalam satu proses enkripsi.
Berdasarkan hasil evaluasi pada prototype kedua, maka dirancang prototype ketiga. Pada prototype ketiga, rancangan aplikasi kriptosistem yang dibangun
diubah bahwa dalam proses enkripsi terdapat proses kompresi, dan proses kompresi dijalankan terlebih dahulu, hasil kompresi yang akan dienkripsi, dalam
satu tombol proses enkripsi. Kemudian prototype ketiga dievaluasi kembali oleh customer, dan dinyatakan bahwa prototype ketiga telah sesuai dengan kebutuhan
customer. Kemudian dilanjutkan dengan melengkapi dan membenahi aplikasi yang dibuat.
Pengujian Aplikasi
Setelah aplikasi selesai dibuat, dilakukan pengujian terhadap 3 tiga jenis file berbeda; yaitu file data text, data document, dan data gambar image.
1. Pengujian pada file text .txt.
Hasil Pengujian pada file text .txt, terlihat pada Tabel 3.
Tabel 3 Hasil Pengujian Kriptosistem Pada Data Text
Berdasarkan hasil pengujian Kriptosistem pada data text pada Tabel 3, dapat disimpulkan bahwa kriptosistem dengan menggunakan algoritma kompresi
Huffman dan algoritma Gost, dapat memperkecil dan mengembalikan ukuran file data text, serta dapat mengenkripsi dan mendekripsi data text dengan baik.
Plaintext .txt dikompresi menjadi plaintext terkompresi .huff, dengan ukuran file yang lebih kecil; serta plaintext terkompresi.huff, dienkripsi menjadi
ciphertext .gst, dimana secara visual terlihat bahwa ciphertext yang dihasilkan tidak sama dengan plaintext, dan tidak merepresentasikan suatu tulisan yang bisa
dibaca. Demikian juga sebaliknya, kriptosistem dapat mendekripsikan file ciphertext .gst menjadi file plaintext terkompresi .huff, dilanjutkan dengan
dekompresi file plaintext terkompresi .huff, menjadi file plaintext asli .txt, dimana hasil akhir sama dengan plaintext asli baik isi maupun ukuran file.
No. Nama File
.txt Ukuran
File Kunci
Ukuran File Hasil
Kompresi .huff
Ukuran File Hasil
Enkripsi .gst
Ukuran File Hasil
Dekripsi .huff
Ukuran File Hasil
Dekompresi .txt
1. Laporan_tes
4.96 KB 1
4.78 KB 4.79 KB
4.78 KB 4.96 KB
2. metode
7.86 KB 12
6.95 KB 7.04 KB
6.95 KB 7.86 KB
3. Permodelan
2.37 KB 123
1.82 KB 1.84 KB
1.82 KB 2.37 KB
4. Kriptografi
5.37 KB 1234
3.84 KB 3.85 KB
3.84 KB 5.37 KB
5. GOST
3.98 KB 12345
2.94 KB 2.95 KB
2.94 KB 3.98 KB
6. Kompresi
3.49 KB 123456
2.59 KB 2.60 KB
2.59 KB 3.49 KB
7. Huffman
7.71 KB 1234567
5.46 KB 5.48 KB
5.46 KB 7.71 KB
8. Pendahuluan
6.96 KB 12345678
4.96 KB 4.98 KB
4.96 KB 6.96 KB
14
Hasil Pengujian pada Tabel 3, digambarkan dalam bentuk grafik, seperti terlihat pada Gambar 17.
Gambar 17 Grafik Hasil Kriptosistem Berdasarkan Ukuran File
Tabel 4 Hasil Pengujian Kriptosistem Pada Data Text dengan Ukuran File Berbeda dan Panjang Kunci Sama
Berdasarkan hasil Pengujian Kriptosistem Pada Data Text dengan Ukuran File Berbeda dan Panjang Kunci Sama pada Tabel 4, menunjukkan bahwa ukuran
file .txt, tidak begitu mempengaruhi waktu proses kriptosistem. Hasil pengujian ini juga menunjukkan bahwa waktu proses dekripsi lebih cepat dari waktu proses
enkripsi untuk data text .txt.
Gambar 18 Grafik Perbandingan Ukuran File dan Waktu Proses Kriptosistem
0.5 1
1.5
2.37 3.49 3.98 4.96 5.37 6.96 7.71 7.86
Waktu Pr
o ses
Ukuran File
Grafik Perbandingan Ukuran File dan Waktu Proses Kriptosistem
Waktu Proses Dekripsi
Waktu Proses Enkripsi
No. Nama File
.txt Ukuran File
Kunci Waktu Proses
Enkripsi second
Waktu Proses Dekripsi
second 1.
Permodelan 2.37KB
12345678 0.749
0.500 2.
Kompresi 3.49 KB
12345678 0.175
0.093 3.
GOST 3.98 KB
12345678 0.367
0.154 4.
Laporan_tes 4.96 KB
12345678 0.692
0.301 5.
Kriptografi 5.37 KB
12345678 0.608
0.223 6.
Pendahuluan
6.96 KB 12345678
0.496 0.221
7. Huffman
7.71 KB 12345678
0.948 0.47
8.
metode 7.86
KB 12345678
0.904 0.407
2 4
6 8
10
Uku ran
Fi le
K B
Nama File .txt
Grafik Hasil Kriptosistem Berdasarkan Ukuran File
File Asli Kompresi
enkripsi dekripsi
dekompresi
15
Tabel 5 Hasil Pengujian Kriptosistem Pada Data Text dengan Ukuran File Sama dan Panjang Kunci Berbeda
Berdasarkan hasil Pengujian Kriptosistem Pada Data Text dengan Ukuran File sama dan Panjang Kunci berbeda pada Tabel 5, menunjukkan bahwa panjang
kunci, tidak begitu mempengaruhi waktu proses kriptosistem.
Gambar 19 Grafik Perbandingan Panjang Kunci dan Waktu Proses Kriptosistem
2. Pengujian pada file document .doc.
Hasil Pengujian file document, terlihat pada Tabel 6.
Tabel 6 Hasil Pengujian Kriptosistem Pada Data Document
Berdasarkan hasil pengujian Kriptosistem pada data document .doc, pada Tabel 6, dapat disimpulkan bahwa kriptosistem dengan menggunakan algoritma
kompresi Huffman dan algoritma Gost, dapat memperkecil dan mengembalikan ukuran file data document, serta dapat mengenkripsi dan mendekripsi data
document dengan baik. Plaintext .doc dikompresi menjadi plaintext terkompresi .huff, dengan ukuran file yang lebih kecil; serta plaintext terkompresi .huff
dienkripsi menjadi ciphertext .gst, dimana secara visual terlihat bahwa ciphertext
0.5 1
1.5 1
12 12
3 12
34 12
345 12
3456 …
…
Waktu Pr
o ses
Panjang Kunci
Grafik Perbandingan Panjang Kunci dan Waktu Proses Kriptosistem
Waktu Proses Dekripsi
Waktu Proses Enkripsi
No. Nama File
.txt Ukuran File
Kunci Waktu Proses Enkripsi
second Waktu Proses Dekripsi
second 1.
Laporan_tes 4.96 KB
1 0.723
0.374 2.
Laporan_tes 4.96 KB
12 0.708
0.406 3.
Laporan_tes 4.96 KB
123 0.722
0.343 4.
Laporan_tes 4.96 KB
1234 0.726
0.353 5.
Laporan_tes 4.96 KB
12345 0.717
0.355 6.
Laporan_tes 4.96 KB
123456 0.725
0.354 7.
Laporan_tes 4.96 KB
1234567 0.735
0.369
8.
Laporan_tes 4.96 KB
12345678 0.719
0.371
No. Nama
File .doc
Ukuran File
Kunci Ukuran File
Hasil Kompresi
.huff Ukuran File
Hasil Enkripsi
.gst Ukuran File
Hasil Dekripsi
.huff Ukuran File
Hasil Dekompresi
.doc 1.
Chaleb C 38.8 KB
1 38.6 KB
38.6 KB 38.6 KB
38.8 KB 2.
Chaleb H 967 KB
12 800 KB
800 KB 800 KB
967 KB 3.
Chaleb F 346 KB
123 299 KB
299 KB 299 KB
346 KB 4.
Chaleb G 428 KB
1234 422 KB
422 KB 422 KB
428 KB 5.
Chaleb E 129 KB
12345 126 KB
126 KB 126 KB
129 KB 6.
Chaleb D 186 KB
123456 119 KB
119 KB 119 KB
186 KB 7.
Chaleb A 14.2 KB
1234567 13.7 KB
13.7 KB 13.7 KB
14.2 KB 8.
Chaleb B 38.3 KB
12345678 38.1 KB
38.1 KB 38.1 KB
38.3 KB
16
yang dihasilkan tidak sama dengan plaintext, dan tidak merepresentasikan suatu tulisan yang bisa dibaca. Demikian juga sebaliknya, kriptosistem dapat
mendekripsikan file ciphertext .gst menjadi file plaintext terkompresi .huff, dilanjutkan dengan dekompresi file plaintext terkompresi .huff, menjadi file
plaintext asli .doc, dimana hasil akhir sama dengan plaintext asli baik isi maupun ukuran file. Hasil Pengujian pada Tabel 6, digambarkan dalam bentuk
grafik, seperti terlihat pada Gambar 20.
Gambar 20 Grafik Hasil Kriptosistem Berdasarkan Ukuran File
Tabel 7 Hasil Pengujian Kriptosistem Pada Data Document dengan Ukuran File Berbeda dan Panjang Kunci Sama
Berdasarkan hasil Pengujian Kriptosistem Pada Data Document dengan Ukuran File Berbeda dan Panjang Kunci Sama pada Tabel 7, menunjukkan bahwa
panjang kunci, tidak begitu mempengaruhi waktu proses kriptosistem.
Gambar 21 Grafik Perbandingan Ukuran File dan Waktu Proses Kriptosistem
200 400
600 800
14.2 38.3 38.8 186 129 346 428 967
Waktu Pr
o ses
Ukuran File
Grafik Perbandingan Ukuran File dan Waktu Proses Kriptosistem
Waktu Proses Dekripsi Waktu Proses Enkripsi
No. Nama File
.doc Ukuran File
Kunci Waktu Proses Enkripsi
second Waktu Proses Dekripsi
second 1.
Chaleb C 38.8 KB
12345 6.35
5.124 2.
Chaleb H 967 KB
12345 130.5
122.7 3.
Chaleb F 346 KB
12345 51.75
372.80 4.
Chaleb G 428 KB
12345 65.35
555.07 5.
Chaleb E 129 KB
12345 21.36
44.87 6.
Chaleb D 186 KB
12345 22.23
87.47 7.
Chaleb A 14.2 KB
12345 2.008
1.21 8.
Chaleb B 38.3 KB
12345 5.21
5.91
500 1000
1500
A B
C D
E F
G H
Uku ran
Fi le
K B
Nama File .doc
Grafik Hasil Kriptosistem Berdasarkan Ukuran File
File Asli kompresi
enkripsi dekripsi
dekompresi
17
Tabel 8
Hasil Pengujian Kriptosistem Pada Data Document dengan Ukuran File Sama dan Panjang Kunci Berbeda
Berdasarkan hasil Pengujian Kriptosistem Pada Data Document dengan Ukuran File Sama dan Panjang Kunci Berbeda pada Tabel 8, menunjukkan bahwa
panjang kunci, tidak begitu mempengaruhi waktu proses kriptosistem.
Gambar 22 Grafik Perbandingan Panjang Kunci dan Waktu Proses Kriptosistem
3. Pengujian pada file Image .jpg.
Hasil pengujian file image, terlihat pada Tabel 9.
Tabel 9 Hasil Pengujian Kriptosistem Pada Data Image
Berdasarkan hasil pengujian Kriptosistem pada data image .jpg pada Tabel 9, dapat disimpulkan bahwa kriptosistem dengan menggunakan algoritma
kompresi Huffman dan algoritma Gost, dapat memperkecil dan mengembalikan ukuran file data image, serta dapat mengenkripsi dan mendekripsi data image
dengan baik. Plain image .jpg dikompresi menjadi plain image terkompresi .huff, dengan ukuran file yang lebih kecil; serta plain image terkompresi .huff
dienkripsi menjadi cipher image .gst, dimana secara visual terlihat bahwa cipher image .gst, yang dihasilkan tidak sama dengan plain image .jpg, dan tidak
2
Waktu Pr
o ses
Panjang Kunci
Grafik Perbandingan Panjang Kunci dan Waktu Proses Kriptosistem
Waktu Proses Dekripsi
Waktu Proses Enkripsi
No. Nama File
.doc Ukuran File
Kunci Waktu Proses Enkripsi
second Waktu Proses Dekripsi
second 1.
Chaleb C 38.8 KB
1 0.717
0.534 2.
Chaleb C 38.8 KB
12 0.708
0.539 3.
Chaleb C 38.8 KB
123 0.708
0.487 4.
Chaleb C 38.8 KB
1234 0.725
0.596 5.
Chaleb C 38.8 KB
12345 0.739
0.543 6.
Chaleb C 38.8 KB
123456 0.721
0.527 7.
Chaleb C 38.8 KB
1234567 0.723
0.523
8.
Chaleb C 38.8 KB
12345678 0.731
0.508
No. Nama File
.jpg Ukuran
File Kunci
Ukuran File Hasil
Kompresi .huff
Ukuran File Hasil
Enkripsi .gst
Ukuran File Hasil
Dekripsi .huff
Ukuran File Hasil
Dekompresi .jpg
1. IMG_6096
341 KB 6096
339 KB 339 KB
339 KB 341 KB
2. IMG_6097
321 KB 6097
320 KB 320 KB
320 KB 321 KB
3. IMG_6099
331 KB 6099
329 KB 329 KB
329 KB 331 KB
4. IMG_6100
358 KB 6100
357 KB 357 KB
357 KB 358 KB
5. IMG_6101
368 KB 6101
367 KB 367 KB
367 KB 368 KB
6. IMG_6102
372 KB 6102
371 KB 371 KB
371 KB 372 KB
7. IMG_6103
342 KB 6103
341 KB 341 KB
341 KB 342 KB
8. IMG_6104
346 KB 6104
345 KB 345 KB
345 KB 346 KB
18
merepresentasikan suatu image yang bisa dikenali. Demikian juga sebaliknya, kriptosistem dapat mendekripsikan file cipher image .gst, menjadi file plain
image terkompresi .huff, dilanjutkan dengan dekompresi file plain image terkompresi .huff,, menjadi file plain image .jpg, dimana hasil akhir sama
dengan plain image asli baik isi maupun ukuran file.
Hasil Pengujian pada Tabel 9, digambarkan dalam bentuk grafik, seperti terlihat pada Gambar 25.
Gambar 23 Grafik Hasil Kriptosistem BerdasarkanUkuran File
Tabel 10 Hasil Pengujian Kriptosistem Pada Data Image dengan Ukuran File Berbeda dan Panjang Kunci Sama
Berdasarkan hasil Pengujian Kriptosistem Pada Data Image dengan Ukuran File Berbeda dan Panjang Kunci Sama pada Tabel 10, menunjukkan
bahwa ukuran file, tidak begitu mempengaruhi waktu proses kriptosistem.
200 400
600
321 331 341 342 346 358 368 372 Waktu
Pr o
ses
Ukuran File
Grafik Perbandingan Ukuran File dan Waktu Proses Kriptosistem
Waktu Proses Enkripsi Waktu Proses Dekripsi
No. Nama File
.jpg Ukuran File
Kunci Waktu Proses Enkripsi
second Waktu Proses Dekripsi
second 1.
IMG_6097 321 KB
123 45.93
301.22 2.
IMG_6099 331 KB
123 44.44
320.32 3.
IMG_6096 341 KB
123 41.47
443.50 4.
IMG_6103 342 KB
123 41.53
460.34 5.
IMG_6104 346 KB
123 48.50
489.56 6.
IMG_6100 358 KB
123 52.34
400.00 7.
IMG_6101 368 KB
123 50.58
447.43 8.
IMG_6102 372 KB
123 54.80
564.10
280 300
320 340
360 380
Uku ran
Fi le
Nama File .jpg
Grafik Hasil Kriptosistem Berdasarkan Ukuran File
File Asli kompresi
enkripsi dekripsi
dekompresi
19
Gambar 24 Grafik Perbandingan Ukuran File dan Waktu Proses Kriptosistem
Tabel 11 Hasil Pengujian Kriptosistem Pada Data Image dengan Ukuran File Sama dan Panjang Kunci Berbeda
Berdasarkan hasil Pengujian Kriptosistem Pada Data Image dengan Ukuran File Sama dan Panjang Kunci berbeda pada Tabel 11, menunjukkan
bahwa panjang kunci, tidak begitu mempengaruhi waktu proses kriptosistem.
Gambar 25 Grafik Perbandingan Panjang Kunci dan Waktu Proses Kriptosistem
5. Simpulan