BAB 4. 4.1
PERANCANGAN
Perancangan Algoritma
Perancangan merupakan bagian dari metodologi pengembangan suatu perangkat lunak yang dilakukan setelah melalui tahapan analisis. Perancangan bertujuan untuk memberikan gambaran secara terperinci. Perancangan merupakan tahap lanjutan dari analisis, dimana pada perancangan digambarkan rancangan yang akan dibangun sebelum dilakukan pengkodean ke dalam suatu bahasa pemrograman. Pada perancangan program ini yang pertama harus dilakukan adalah membuat Use Case Diagram, Activity Diagram dan diagram alir atau flowchart. Use case adalah rangkaian/uraian sekelompok yang saling terkait dan membentuk sistem secara teratur yang dilakukan atau diawasi oleh sebuah aktor. Activity Diagram adalah diagram yang menggambarkan workflow (aliran kerja) atau aktivitas dari sebuah sistem atau proses bisnis. Flowchart adalah bagan yang memperlihatkan urutan prosedur dan proses dari beberapa file di dalam media tertentu. Melalui flowchart dapat terlihat jenis media penyimpanan yang dipakai dalam pengelolahan data. Proses perancangan program ini merupakan kebutuhan yang direpresentasikan kedalam perangkat lunak sebelum memulai pembuatan code/coding. Meliputi diagram alir (flowchart) dari proses enkripsi dan diagram alir proses dekripsi.
47
http://digilib.mercubuana.ac.id/
4.1.1 Use Case Diagram
4.1.1.1 Use Case Diagram Proses Enkripsi
Gambar 4.1 Use Case Diagram Proses Enkripsi Nama Use
Encryption
Case Aktor Deskripsi
Pengirim (Sender)
Singkat Pra Kondisi Tindakan
Sender melakukan proses enkripsi dengan memasukkan
Utama Pasca Kondisi
Proses enkripsi data
plaintext dan key Menghasilkan Ciphertext Tabel 4.1 Use Case Diagram Proses Enkripsi
Proses Enkripsi merupakan proses kriptografi atau penyandian dengan kunci tertentu ke dalam pesan asli. Adapun algoritma pada proses enkripsi adalah dengan teknik enkripsi subtitusi dan dikonversi kedalam bentuk bit (13 bit) yang menjadi sebuah kalimat yang aneh dan yang tidak dimengerti.
48
http://digilib.mercubuana.ac.id/
4.1.1.2 Use Case Diagram Proses Deskripsi
Gambar 4.2 Use Case Diagram Proses Deskripsi Nama Use Case Aktor Deskripsi
Decryption Penerima (Receiver) Proses dekripsi data
Singkat Pra Kondisi Tindakan Utama Pasca Kondisi
Receiver memasukkan hasil enkripsi (berupa ciphertext+key) dan key Menghasilkan Plaintext Tabel 4.2 Use Case Diagram Proses Deskripsi
49
http://digilib.mercubuana.ac.id/
4.1.2 Activity Diagram
4.1.2.1 Activity Diagram Proses Enkripsi
Gambar 4.3 Activity Diagram Proses Enkripsi Nama Proses Aktor Deskripsi
Encryption Pengirim (Sender) Proses enkripsi data
Singkat Tindakan
Sender melakukan proses enkripsi dengan memasukkan
Utama
plaintext dan key Tabel 4.3 Activity Diagram Proses Enkripsi
50
http://digilib.mercubuana.ac.id/
4.1.2.2 Activity Diagram Proses Deskripsi
Gambar 4.4 Activity Diagram Proses Deskripsi Nama Proses Aktor Deskripsi Singkat Tindakan Utama
Decryption Receiver Proses dekripsi data Receiver memasukkan hasil enkripsi (berupa ciphertext+key) dan key Tabel 4.4 Activity Diagram Proses Deskripsi
51
http://digilib.mercubuana.ac.id/
Start
Pesan Rahasia
C(n+x)mod 43
N Key
Ciphertext
Ciphertext Konversi
Ciphertext
End
Gambar 4.5 Flowchart Proses Enkripsi Berikut keterangan dari gambar 4.5 : 1.
Memulai proses enkripsi dengan menginput pesan.
2.
Masukan kunci yang diinginkan, karena kunci tersebut untuk melakukan proses enkripsi metode subtitusi.
3.
Setelah diproses maka menghasilkan ciphertext, lalu ciphertext tersebut dikonversikan kedalam bentuk bit (13 bit) yang menjadi sebuah kalimat.
4.
selesai 52
http://digilib.mercubuana.ac.id/
4.1.2.4 Perancangan Proses Deskripsi
Proses Dekripsi adalah pengembalian pesan asli yang terenkripsi dengan kunci yang sama waktu proses enkripsi. Start
Ciphertext Konversi
Ciphertext
C(n+x)mod 43
N Key
Pesan Rahasia
End
Gambar 4.6 Flowchart Proses Dekripsi Berikut keterangan gambar 4.6 : 1.
Memulai proses dekripsi dengan menginput ciphertext konversi biner yang diterima.
2.
Masukan kunci yang sama pada saat proses enkripsi pesan.
3.
Pada proses dekripsi ini, dari ciphertext langsung dikembalikan pada plaintext tersebut.
4.
Setelah diproses maka akan menghasilkan plaintext dari pesan tersebut.
5.
Selesai. 53
http://digilib.mercubuana.ac.id/
4.2
Perancangan Interface Kriptografi
Rancangan ini digunakan untuk mendukung proses pembuatan program aplikasi kriptografi dengan menggunakan algoritma Caesar Cipher.
Gambar 4.7 Rancangan dari Tampilan Interface
4.3
Rancangan Enkripsi
Pada rancangan ini terdapat kotak pesan (frame plaintext) yang akan dirubah dalam proses enkripsi.
Gambar 4.8 Rancangan Proses Enkripsi pada plaintext
Private Sub Text0_AfterUpdate() Dim X, w1, a, b, c, d, e, f, g, h, i, j, k As Variant w1 = InputBox("Masukkan Kata Kunci : ") a = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789*%^+-/ ." b = (43 + w1) Mod 43 f = "" For c = 1 To Len(Me.Text0) d = Mid(Me.Text0, c, 1) g = InStr(a, d)
54
http://digilib.mercubuana.ac.id/
If (g + b) > 43 Then h = Mid(a, 1, g - 1) a = Mid(a, g) & h e = Mid(a, b, 1) GoTo balik End If e = Mid(a, b + g, 1) balik: f=f&e a = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789*%^+-/ ." Next MsgBox "hasilnya " & f, vbInformation, "Ok" Me.Text0 = "Source = " & Me.Text0 & ", Hasil substitusi dengan Caesar Cipher(" & b & ") menjadi : " & f 'Me.Text2 = haris(Me.Text0) Me.Text7 = f Me.Text2 = haris(f) MsgBox "nilainya =>" & Me.Text2, vbInformation, "test"
End Sub
Gambar 4.9 Rancangan Proses Enkripsi pada Konversi Bit (13 bit) Private Sub Text2_AfterUpdate() Dim x, a, b, c, d, e, f, g, h, i, j, k, l, w1 As Variant x = rifqi(Me.Text2) MsgBox "HASILNYA : " & x Me.Text7 = x Me.Refresh End Sub Private Sub Text2_Click() 55
http://digilib.mercubuana.ac.id/
Dim a As Variant x = rifqi(Me.Text2) 'MsgBox "HASILNYA : " & x Me.Text7 = x End Sub Private Sub Text2_DblClick(Cancel As Integer) Dim x As Variant x = rifqi(Me.Text2) MsgBox "HASILNYA : " & x Me.Text7 = x End Sub
Dibawah ini merupakan keterangan dari gambar rancangan proses enkripsi, yaitu : 1.
Masukan file yang akan dienkripsi, file yang diinput berupa text A-Z, 0-9, dan spesial karakter.
2.
Masukan kunci yangdiinginkan untuk proses enkripsi
3.
Hasil dari file yang telah dienkripsi berupa text, lalu dikonversikan kedalam bentuk bit (13 bit) yang menjadi sebuah kalimat berupa huruf abjad, angka, dan special karakter yang tidak dimengerti.
4.4
Rancangan Deskripsi Pada rancangan ini terdapat kotak pesan (frame ciphertext) yang akan
dirubah dalam proses dekripsi.
Gambar 4.10 Rancangan Proses Dekripsi
Private Sub Text4_DblClick(Cancel As Integer) Dim X, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, w1 As Variant
56
http://digilib.mercubuana.ac.id/
w1 = InputBox("Masukkan Kata Kunci : ") a = "abcdefghijklmnopqrstuvwxyz0123456789*%^+-/ ." f = "" m = "" n = ""
For c = 1 To Len(Me.Text7) d = Mid(Me.Text7, c, 1) i = InStr(a, d) If d = " " Then 'Or d = "0" Or d = "1" Or d = "2" Or d = "3" Or d = "4" Or d = "5" Or d = "5" Or d = "6" Or d = "7" Or d = "8" Or d = "9" Then e="" GoTo langsung End If g = i - w1 If g > 0 Then e = Mid(a, g, 1) Else j = InStr(a, d) k = Mid(a, j + 1) l = Mid(a, 1, j) m=k&l a=m n = Right(a, w1) e = Left(n, 1) a = "abcdefghijklmnopqrstuvwxyz0123456789*%^+-/ ." End If langsung: f=f&e Next MsgBox "hasilnya " & f, vbInformation, "Ok" Me.Text4 = f
57
http://digilib.mercubuana.ac.id/
End Sub
Dibawah ini merupakan keterangan dari gambar rancangan proses dekripsi, yaitu : 1.
Masukan file yang telah dienkripsi yang telah dikonversi dalam bentuk bit (13 bit) yang menjadi sebuah kalimat berupa huruf abjad, angka, dan special karakter yang tidak dimengerti.
2.
Masukan kunci yang sama pada saat menginput file enkripsi.
File ciphertext menjadi plaintext kembali.
58
http://digilib.mercubuana.ac.id/