Implementasi Halaman Awal Implementasi Halaman Enkripsi

29 “cipherArea”, text area “dekripKey”, text area “hasilDekripsi”, dan text area “LamaDekripsi”. Jika user ingin mendekripsi dokumen maka user menekan tombol “Browse” untuk mencari dokumen yang akan didekripsi seperti di bawah ini. Gambar 4.7 Kotak Dialog saat memilih Dokumen Setelah memilih file kemudian pengguna menekan tombol “Open”. Setelah menekan tombol “Open” maka dokumen tersebut akan ditampilkan, kemudian user menekan tombol “Browse” untuk mencari kunci yang disimpan setelah itu menekan tombol “Open”, maka tampilan akan seperti di bawah ini. 30 Gambar 4.8 Tampilan Isi Ciphertext dan Kunci Acak yang Tersimpan Kemudian user melakukan proses dekripsi dengan menekan tombol “Proses” maka hasil dari proses akan muncul serta lamanya proses tersebut dilakukan. Gambar 4.9 Tampilan Hasil Dekripsi dan Lama Proses 31 Selanjutnya user dapat menyimpan hasil dekripsi dengan menekan tombol “Simpan”. Hasil enkripsi dapat disimpan dengan format .txt dan .doc. Gambar 4.10 Tampilan Save Dialog Setelah selesai menyimpan, jika dokumen berhasil disimpan akan muncul pesan Penyimpanan Hasil Dekripsi Telah Berhasil Disimpan di .......... Titik-titik tersebut berisi direktori tempat dokumen disimpan. Gambar 4.11 Pesan Ketika Proses Penyimpanan Hasil Dekripsi Berhasil Dilakukan 32 Berikut listing program beberapa proses yang terdapat pada tombol - tombol di Form Tampilan : 1. Tombol Generate Key Berikut baris – baris perintah untuk menampilkan kunci secara acak, dimana kelas Mersenne Twister sudah ada : 2. Proses Enkripsi Berikut baris – baris perintah untuk proses enkripsi : 3. Proses Enkripsi Berikut baris – baris perintah untuk proses dekripsi : public static String genKeyint length { MersenneTwisterFast rand = new MersenneTwisterFast; char[] key = new char[length]; for int i = 0; i length; i++ { key[i] = char rand.nextInt132; if int key[i] 97 { key[i] = char key[i] + 72; } if int key[i] 122 { key[i] = char key[i] - 72; } } return new Stringkey; } public static String encryptString message, String key { if message.length = key.length { errorLengths must be equal; } int[] im = charArrayToIntmessage.toCharArray; int[] ik = charArrayToIntkey.toCharArray; int[] data = new int[message.length]; for int i = 0; i message.length; i++ { data[i] = im[i] + ik[i]256; } return new StringintArrayToChardata; }