• Tidak ada hasil yang ditemukan

BAB IV IMPLEMENTASI DAN PENGUJIAN

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB IV IMPLEMENTASI DAN PENGUJIAN"

Copied!
16
0
0

Teks penuh

(1)

BAB IV

IMPLEMENTASI DAN PENGUJIAN

4.1 Implementasi

Setelah melakukan analisis dan perancangan terhadap aplikasi yang akan dibangun, tahapan selanjutnya adalah implementasi dan pengujian. Untuk mengimplementasikan aplikasi kriptografi menggunakan metode Mars dan kompresi menggunakan algoritma Huffman sesuai dengan analisis dan perancangan, berikut spesifikasi komputer dimana sistem di implementasikan dan diujikan.

Pada tahapan implementasi terdapat dua cakupan yaitu spesifikasi kebutuhan sistem yang meliputi perangkat keras (hardware), perangkat lunak

(software), implementasi yang meliputi proses pengkodean, desain antarmuka dan

hal-hal yang berhubungan dengan pengujian aplikasi.

4.1.1 Implementasi Aplikasi

Pada bab ini diterangkan secara rinci mengenai tahapan-tahapan implementasi aplikasi kriptografi menggunakan metode Mars dan kompresi menggunakan algoritma Huffman yang meliputi proses pengkodean, dan bentuk tampilan layar.

4.1.1.1 Pengkodean

Pada proses pengkodean aplikasi ini, perlu terlebih dahulu dibuat pemodulan. Modularisasi merupakan pembuatan program berdasarkan

(2)

modul-modul. Modul dapat berupa fungsi atau prosedur. Statement yang digunakan penulis untuk modularisasi adalah function.

Dalam pemrograman aplikasi kriptografi menggunakan metode Mars dan kompresi menggunakan algoritma Huffman, implementasi dari modularisasi tersebut adalah sebuah function yang dibuat untuk dimasukkan ke dalam perintah enkripsi, dekripsi, kompresi dan dekompresi. Bahasa pemrogramannya adalah sebagai berikut :

Public Function enkripsi(Text As String, X As Integer, Y As Integer, Z As Integer) As String

Dim strTemp As String Dim i As Integer For i = 1 To Len(Text) 'MsgBox Asc(Mid$(Text, i, 1)) If Asc(Mid$(Text, i, 1)) < 128 Then strTemp = Asc(Mid$(Text, i, 1)) + 128 - X + Y - Z Mid$(Text, i, 1) = Chr(strTemp) End If Next i enkripsi = Text End Function

Perintah di atas menggunakan function dengan nama enkripsi(), didalamnya terdapat proses perhitungan matematika dan pengulangan variabel untuk merubah teks ke bentuk ASCII yang kemudian dikembalikan ke bentuk karakter yang tidak dapat terbaca. Perintah dibawah ini merupakan kebalikan dari enkripsi yaitu function dekripsi() yang digunakan untuk mengembalikan pada teks aslinya.

Public Function dekripsi(Text As String, X As Integer, Y As Integer, Z As Integer) As String

Dim strTemp As String Dim i As Integer For i = 1 To Len(Text) If Asc(Mid$(Text, i, 1)) > 128 Then strTemp = Asc(Mid$(Text, i, 1)) - 128 + X - Y + Z Mid$(Text, i, 1) = Chr(strTemp) End If Next i dekripsi = Text End Function

(3)

Tujuan dilakukannya pemodulan program adalah untuk menghindari penulisan berulang-ulang untuk perintah yang sama dan jika ada perubahan pada perintah - perintahnya, maka hal yang perlu dilakukan adalah hanya dengan merubah isi dari function saja.

Penggunaan function enkripsi dan dekripsi tersebut digunakan pada saat pengguna melakukan proses enkripsi atau dekripsi, selain itu terdapat juga sub

function dengan nama EncodeFile() yang digunakan untuk pemadatan

file/kompresi seperti perintah script sebagai berikut :

Public Sub EncodeFile(SourceFile As String, DestFile As String) Dim ByteArray() As Byte

Dim Filenr As Integer

'Apabila file tidak ada

If (Not FileExist(SourceFile)) Then

Err.Raise vbObjectError, "clscompress.EncodeFile()", "sumber data tidak ada"

End If

Filenr = FreeFile

Open SourceFile For Binary As #Filenr ReDim ByteArray(0 To LOF(Filenr) - 1) Get #Filenr, , ByteArray()

Close #Filenr

'pemadatan file

Call EncodeByte(ByteArray(), UBound(ByteArray) + 1)

If (FileExist(DestFile)) Then Kill DestFile

Open DestFile For Binary As #Filenr Put #Filenr, , ByteArray()

Close #Filenr End Sub

Pada proses pemadatan/kompresi file, juga terdapat sub function dengan nama DecodeFile() untuk fungsi dekompresi / pengembalian pada ukuran file aslinya, seperti pada perintah script dibawah ini :

Public Sub DecodeFile(SourceFile As String, DestFile As String) Dim ByteArray() As Byte

(4)

Dim Filenr As Integer

'meyakinkan sumber file ada

If (Not FileExist(SourceFile)) Then

Err.Raise vbObjectError, "clscompress.DecodeFile()", "sumber file tidak ada"

End If

'membaca data dari file Filenr = FreeFile

Open SourceFile For Binary As #Filenr ReDim ByteArray(0 To LOF(Filenr) - 1) Get #Filenr, , ByteArray()

Close #Filenr

'Uncompress data

Call DecodeByte(ByteArray(), UBound(ByteArray) + 1) If (FileExist(DestFile)) Then Kill DestFile

Open DestFile For Binary As #Filenr Put #Filenr, , ByteArray()

Close #Filenr End Sub

Sebelum menggunakan tombol enkripsi, dekripsi, kompresi dan dekompresi, pengguna harus membuka file dengan tombol browse file/ mencari file yang akan di proses. Perintah/scriptnya adalah sebagai berikut :

Dim filelocation As String txtinputenkrip.Text = "" txtenkrip.Text = "" CommonDialog1.ShowOpen filelocation = CommonDialog1.filename txtnmfile.Text = filelocation TestFile$ = CommonDialog1.filename If TestFile$ <> "" Then If Dir(TestFile$) <> "" Then End If End If If Len(Trim(filelocation)) = 0 Then Exit Sub Else

Open filelocation For Input As #1 End If

Do Until EOF(1) Input #1, Data

txtinputenkrip.Text = txtinputenkrip.Text + Data + vbNewLine EOF (1) Loop Close #1 Exit Sub salah:

(5)

Setelah file terpilih maka yang dilakukan secara umum adalah mengaktifkan fungsi-fungsi enkripsi, dekripsi, kompresi dan dekompresi sebagai berikut :

1. Tombol Proses Enkripsi

Di bawah ini merupakan Perintah/script yang digunakan untuk mengaktifkan tombol enkripsi.

Private Sub cmd_enkrip_Click() Dim TextLine$, filename$ Dim FileHandle As Integer

Dim FileHandle2 As Integer dekriptxt = ""

filename$ = txtnmfile.Text

If Dir(filename$) = "" Then Exit Sub FileHandle = FreeFile

Open filename$ For Input As #FileHandle Do While Not EOF(FileHandle)

Line Input #FileHandle, TextLine$

enkriptxt = enkriptxt + enkripsi(TextLine$, 1, 2, 3) + vbNewLine

Loop

Close #FileHandle

Open filename$ For Output As #FileHandle Print #FileHandle, enkriptxt

Close #FileHandle

txtenkrip.Text = enkriptxt

MsgBox "Enkrip Berhasil", vbOKOnly, "Sukses" Exit Sub

salah:

MsgBox Err.Number End Sub

Dari perintah di atas dapat digambarkan bahwa file teks yang dibuka oleh tombol browse file lalu dilakukan enkripsi, mengaktifkan function enkripsi() dengan nilai function enkripsi(text,1,2,3). dimana text merupakan karakter yang akan dienkripsi dan nilai 1,2,3 merupakan nilai key statis untuk dilakukannya enkripsi.

(6)

2. Tombol Proses Dekripsi

Di bawah ini merupakan Perintah/script yang digunakan untuk mengaktifkan tombol dekripsi.

Private Sub cmd_dekrip_Click() Dim TextLine$, filename$ Dim FileHandle As Integer

Dim FileHandle2 As Integer dekriptxt = ""

filename$ = txtnmfile2.Text

If Dir(filename$) = "" Then Exit Sub

FileHandle = FreeFile

Open filename$ For Input As #FileHandle

Do While Not EOF(FileHandle)

Line Input #FileHandle, TextLine$

dekriptxt = dekriptxt + dekripsi(TextLine$, 1, 2, 3) + vbNewLine

Loop

Close #FileHandle

Open filename$ For Output As #FileHandle Print #FileHandle, dekriptxt

Close #FileHandle

txtoutputdekrip.Text = dekriptxt

MsgBox "Dekrip Berhasil", vbOKOnly, "Sukses" Exit Sub

salah:

MsgBox Err.Number End Sub

Dari perintah di atas dapat digambarkan bahwa file teks yang dibuka oleh tombol browse file lalu dilakukan dekripsi, mengaktifkan function dekripsi() dengan nilai function dekripsi(text,1,2,3). dimana text merupakan karakter yang akan didekripsi dan nilai 1,2,3 merupakan nilai key statis untuk dilakukannya dekripsi.

3. Tombol Proses Kompresi

Di bawah ini merupakan Perintah/script yang digunakan untuk mengaktifkan tombol kompresi.

(7)

Private Sub cmdcompress_Click() Dim OldTimer As Single

On Error GoTo ErrorHandler OldTimer = Timer

Call

compress.EncodeFile(txtnmcompress.Text,txtnmdecompress.Text) Label2(3).Caption = Timer - OldTimer & " s"

Label2(0).Caption = FileLen(txtnmcompress.Text) & " bytes" Label2(1).Caption = FileLen(txtnmdecompress.Text)& " bytes" Label2(2).Caption = Format(Int(Val(Label2(1).Caption) / Val(Label2(0).Caption) * 100), "##,#") & "%"

Call MsgBox("Kompresi Berhasil", vbInformation) Exit Sub

ErrorHandler:

Call MsgBox("Kompresi tidak berhasil." & vbCrLf & vbCrLf & Err.Description, vbExclamation)

End Sub

Dari perintah/script di atas merupakan perintah/script ketika tombol kompresi dijalankan dengan memanggil nama function compress.EncodeFile (txtnmcompress.Text, txtnmdecompress.Text). dimana txtnmcompress.Text merupakan file yang akan dikompresi dan txtnmdecompress.Text adalah file hasil kompresi.

4. Tombol Proses Dekompresi

Di bawah ini merupakan Perintah/script yang digunakan untuk mengaktifkan tombol dekompresi.

Private Sub cmddecompress_Click() Dim Filenr As Integer

Dim OldTimer As Single On Error GoTo ErrorHandler OldTimer = Timer

Call

compress.DecodeFile(txtnmcompress2.Text,txtnmdecompress2.Text) Label2(9).Caption = Timer - OldTimer & " s"

Label2(6).Caption = FileLen(txtnmcompress2.Text) & " bytes" Label2(7).Caption = FileLen(txtnmdecompress2.Text) & " bytes"

Label2(8).Caption = Int(Val(Label2(7).Caption) / Val(Label2(6).Caption) * 100) & "%"

Call MsgBox("dekompresi berhasil.", vbInformation) Exit Sub

ErrorHandler:

Call MsgBox("dekompresi tidak berhasil." & vbCrLf & vbCrLf & Err.Description, vbExclamation)

(8)

Dari perintah/script di atas merupakan perintah/script ketika tombol dekompresi aktif dengan memanggil nama function compress.DecodeFile (txtnmcompress2.Text,txtnmdecompress2.Tex). dimana txtnmcompress2.Text merupakan file yang akan didekompresi dan txtnmdecompress2.Text adalah file hasil dekompresi.

4.1.1.2 Tampilan Layar

Tampilan layar merupakan tampilan yang akan digunakan oleh pengguna sehingga dapat dirasakan manfaatnya. Beberapa tampilannya adalah sebagai berikut :

1. Tampilan Form Splash

Berikut ini adalah gambar form splash pada Gambar 4.1

Gambar 4.1 Tampilan Form Splash

2. Tampilan Form Utama Enkripsi

Berikut ini adalah gambar form utama enkripsi pada Gambar 4.2

(9)

3. Tampilan Form Utama Dekripsi

Berikut ini adalah gambar form utama dekripsi pada Gambar 4.3

4. Tampilan Form Utama Kompresi

Berikut ini adalah gambar form utama kompresi pada Gambar 4.4

Gambar 4.3 Tampilan Form Utama Dekripsi

(10)

5. Tampilan Form Utama Dekompresi

Berikut ini adalah gambar form utama dekompresi pada Gambar 4.5

6. Tampilan Form Tentang Penulis

Berikut ini adalah gambar form tentang penulis pada Gambar 4.6

Gambar 4.5 Tampilan Form Utama Dekompresi

(11)

4.2 Pengujian

Dalam perancangan sistem perlu dilakukan pengujian sistem sebagai verifikasi atas sistem yang telah dirancang. Verifikasi dilakukan untuk mengetahui kemungkinan terjadinya kesalahan dan untuk memastikan fungsi-fungsi yang terdapat dalam modul modul sistem berjalan dengan baik. Tahapan pengujian ini meliputi skenario pengujian, hasil pengujian, dan analisis hasil pengujian.

4.2.1 Lingkup Pengujian

Berikut ini merupakan spesifikasi kebutuhan sistem, dimana sistem dibuat dan dijalankan.

1. Perangkat keras (hardware):

a. Prosesor Intel Pentium IV 1.80 GHz b. RAM 512 MB

c. Harddisk

2. Perangkat lunak (software):

a. Visual Basic 6.0 merupakan bahasa pemrograman yang digunakan untuk pengembangan dan implementasi sistem aplikasi kriptografi metode MARS dan kompresi data Huffman.

(12)

4.2.2 Skenario Pengujian

Sebelum pengujian sistem aplikasi kriptografi menggunakan metode Mars dan kompresi menggunakan algoritma Huffman akan dijelaskan pada Tabel 4.1 tentang skenario normal dan tidak normal yang terjadi. Skenario yang dijelaskan antara lain skenario Browse File, Proses Enkripsi, Dekripsi, Kompresi dan Dekompresi.

Tabel 4.1 Skenario Normal dan Tidak Normal.

Skenario Sifat Kondisi Awal Hasil yang diinginkan

Browse File

Normal Temukan File teks yang dicari

Direktori file akan terekam kedalam kolom text Tidak

Normal

Tidak ada file teks yang dicari

Tetap pada tombol browse file

* Proses Enkripsi

Normal File teks terenkripsi File teks terenkripsi dan teks didalamnya tidak dapat terbaca Tidak

Normal

Tidak ada file teks yang dicari

Ulangi pencarian file teks dengan browse file

Proses Dekripsi

Normal File teks kembali pada teks aslinya/terdekripsi

File teks kembali dapat terbaca Tidak

Normal

Tidak ada file teks yang dicari

Ulangi pencarian file teks dengan browse file

** Proses Kompresi

Normal File teks terkompresi Ukuran file menjadi lebih padat/kecil

Tidak Normal

Tidak ada file teks yang dicari

Ulangi pencarian file teks dengan browse file

Proses Dekompresi

Normal File teks di dekompresi File teks kembali pada ukuran aslinya

Tidak Normal

Tidak ada file teks yang dicari

Ulangi pencarian file teks dengan browse file

4.2.3 Hasil Pengujian

Pada Tabel 4.2 akan dijelaskan hasil pengujian dari skenario Browse File, Proses Enkripsi, Dekripsi, Kompresi dan Dekompresi.

* Enkripsi file text selain *.txt, misalnya *.cpp, *.c, *.pas, *.bas ** Kompresi file text selain *.txt, misalnya *.cpp, *.c, *.pas, *.bas

(13)

Tabel 4.2 Hasil Pengujian.

Skenario Sifat Kondisi Awal Hasil yang

diinginkan Hasil Pengujian Status Akhir Browse File Normal Temukan File teks yang dicari

Direktori file akan terekam kedalam kolom text Direktori terekam sukses Tidak Normal

Tidak ada file teks yang dicari

Tetap pada tombol browse file Tetap pada tombol browse file Proses Enkripsi Normal File teks terenkripsi

File teks terenkripsi dan tidak dapat terbaca teks didalamnya File tek terenkripsi sukses Tidak Normal

Tidak ada file teks yang dicari

Ulangi pencarian file teks dengan browse file Dapat diulang browse file Proses Dekripsi Normal File teks kembali pada teks aslinya/terdekri psi

File teks kembali dapat terbaca File teks kembali pada teks aslinya sukses Tidak Normal

Tidak ada file teks yang dicari

Ulangi pencarian file teks dengan browse file

Dapat diulang browse file

Proses Kompresi

Normal File teks terkompresi

Ukuran file menjadi lebih padat/kecil Ukuran file menjadi padat sukses Tidak Normal

Tidak ada file teks yang dicari

Ulangi pencarian file teks dengan browse file Dapat diulang browse file Proses Dekompresi Normal File teks di dekompresi

Ukuran file kembali pada ukuran aslinya

Ukuran file kembali pada ukuran aslinya sukses Tidak Normal

Tidak ada file teks yang dicari

Ulangi pencarian file teks dengan browse file

Dapat diulang browse file

Tabel 4.3 Pengukuran Rasio dan Lama Waktu Proses.

No Nama File Text Ukuran File (kb) Setelah Enkripsi (kb) Setelah Kompresi (kb) Rasio Waktu 1 Tes.txt 3,05 kb 3,05 kb 1,73 kb 57 % 0,031 dtk 2 Tes.cpp 2,53 kb 2,53 kb 1,45 kb 57 % 0,015 dtk 3 Tes.c 3,79 kb 3,79 kb 2,11 kb 55 % 0,015 dtk 4 Tes.bas 4,15 kb 4,15 kb 2,30 kb 55 % 0,015 dtk 5 Tes.pas 5,79 kb 5,79 kb 3,16 kb 54 % 0,046 dtk Rata - Rata 56 % 0,024 dtk

(14)

Berikut ini merupakan tampilan hasil analisis tabel 4.3 dengan contoh nama file dengan nama tes.txt

Klik kanan pada file tes.txt kemudian pilih menu properties, maka akan didapati ukuran file sebesar 3,05 kb. Begitu juga sama ketika file dilakukan proses enkripsi dengan ukuran yang sama. Namun berbeda hasilnya ketika file tersebut dilakukan kompresi, maka hasil ukuran filenya akan mengecil dengan ukuran 1,73 kb seperti tampilan berikut ini.

Gambar 4.7 Tampilan File Properties Txt

(15)

Setelah mendapatkan nilai dari ukuran file teks sebelum di kompresi dan setelah dikompresi dalam bentuk file *.zip, maka untuk mendapatkan nilai rasio dapat dilakukan perhitungan dengan software microsoft excell seperti pada Gambar 4.9

(16)

4.2.4 Analisis Hasil Pengujian

Setelah tahap pengujian maka dapat dianalisa bahwa:

1. Browse file berjalan dengan baik, karena file teks yang dicari dapat direkam kedalam kolom text, dan apabila tidak diketemukan file teks maka dapat diulangi proses pencarian dengan tombol browse file.

2. Proses enkripsi dan dekripsi berjalan dengan baik, ketika dilakukan pengujian proses enkripsi maka file teks akan terenkripsi dan tidak dapat terbaca. Begitu juga sebaliknya ketika di dekripsi, maka file kembali ke file teks aslinya. 3. Proses Kompresi dan Dekompresi juga berjalan dengan baik, ketika proses

dilakukan ukuran file menjadi lebih padat dan sebaliknya kembali kepada ukuran semula ketika dilakukan dekompresi.

4. File text selain *.txt yang diuji (*.cpp, *.c, *.pas, *.bas) berhasil di enkripsi karena file tersebut masih tergolong file text

5. File text selain *.txt yang diuji (*.cpp, *.c, *.pas, *.bas) berhasil di kompresi karena file tersebut dapat di konversi kedalam angka-angka biner untuk dilakukan pemadatan file.

6. Rata - rata hasil rasio hasil kompresi dari file text yang telah diuji adalah 56%. 7. Rata - rata lama waktu proses kompresi dari file text yang telah diuji adalah

Gambar

Gambar 4.1 Tampilan Form Splash  2.  Tampilan Form Utama Enkripsi
Gambar 4.4 Tampilan Form Utama Kompresi
Gambar 4.6 Tampilan Form Tentang Penulis
Tabel 4.1 Skenario Normal dan Tidak Normal.
+4

Referensi

Dokumen terkait

Berdasarkan penjelasan di atas, dapat diketahui bahwasanya praktek perceraian masyarakat Desa Parit Kecamatan Sungai Gelam Kabupaten Muaro Jambi tidak sesuai dengan ketentuan

Hasil uji sifat fisis tanah asli dan tanah campuran semakin bertambahnya persentase gipsum nilai kadar air, batas cair, batas susut, indeks plastisitas dan lolos saringan

ditandai dengan redaksi-redaksi hadis mereka yang mengindikasikan ketidakpercayaan kaum Syi’ah Imamiyah dengan keotentikan al-Qur’an, Rukun Iman yang berbeda, adanya

Alhamdulillahhirabbil’alamin Puji dan syukur penulis panjatkan kehadirat Allah SWT, atas segala karunia dan rahmat-Nya sehingga penulis dapat menyelesaikan penyusunan

Perkem- bangan tari topeng gaya Indramayu tidak terlepas dari perilaku individu dalang topéng , baik dalam hal kreativitas untuk menciptakan kreasi-kreasi baru maupun

Pada kenyataan taraf ini – unitarisme dan isu HAM – para pendiri negara telah mencapai kesepakatan model tindakan komunikatif, karena perjuangan mereka terhadap

Skripsi ini juga mencakup beberapa fitur baru untuk Services Binusmaya yang terletak pada bagian Home dari Binusmaya versi 3 yaitu fitur Most Visited Services , yaitu

Ciri terjadinya perubahan autolisis ini adalah dihasilkannya amoniak sebagai hasil akhir yang disebabkan oleh penguraian adenosine triphosphate (ATP) oleh enzim- enzim dalam