BAB III ANALISA SISTEM 3.1 Analisa Masalah Pada sebuah aplikasi tentu kita akan lebih mudah mengoperasikan atau menggunakan aplikasi tersebut jika ada media antar muka yang memudahkan dalam melakukan proses. Tentu kita masih ingat bahwa sistem algoritma Caesar Cipher berdasarkan pergeseran huruf alfabet. Apakah itu tiga pergeseran, lima pergeseran atau tujuh pergeseran. Namun pada perkembangan algoritma Caesar Cipher memberikan suatu gagasan baru untuk menggunakan kunci lain atau bisa disebut dengan polyalfabetic, kunci bisa jadi nama, alamat atau apa saja yang diingini oleh sipengirim. Pada aplikasi ini kunci berdasarkan alfabet. Tentu kita akan kesulitan dalam melakukan pengenkripsian jika kita harus melakukan pergeseran itu secara manual dan harus input satu persatu. Selain itu ketika kita akan melakukan proses enkripsi atau dekripsi tentu kita harus menentukan pilihan metoda yang dipakai, apakah itu metoda enkripsi atau dekripsi. Tentu akan mudah bukan jika dalam suatu aplikasi kita tinggal menentukan pilihan dengan memilih opsi yang ada. Semua masalah itu tentu harus diatasi dalam sebuah aplikasi, maka dari itu dibuatkan aplikasi pesan dengan menggunakan algoritma caesar cipher ini dengan menggunakan Graphic User Interface (GUI) sebagai antar muka aplikasi dengan user. Hal ini ditujukan agar user semakin nyaman dan mudah dalam menggunakan aplikasi karena telah tersedia panel panel opsi untuk melakukan proses enkripsi ataupun dekripsi. Seperti kita akan melakukan input pesan asli maka kita tinggal memasukkan pesan ke kolom plainteks. Dan ketika kita ingin melakukan substitusi kita tinggal memilih opsi kunci yang diinginkan berdasarkan alfabet. Kemudian pilih tombol enkripsi untuk melakukan proses enkripsi pesan dan pesan enkripsi pun akan diproses dalam waktu yang singkat dan hasil akurat, dan outputnya akan berbentuk QR Code. Begitu pula sebaliknya, ketika kita akan melakukan proses dekripsi, terlebih dahulu kita akan membaca QR Code dengan camera pembaca QR Code Scanner. Maka pesan tersebut akan tampil dalam 51
kolom cipherteks, lalu pilih kunci dan pilih tombol dekripsi dan pesan yang terenkripsi tadipun akan berubah menjadi teks terang. Apakah aplikasi ini bisa mengenkripsi dokumen sejenis: doc, txt, pdf, xlxs, image, dan ppt? Aplikasi ini hanya digunakan untuk mengenkripsi kata saja. Jadi aplikasi ini tidak dapat mengenkripsi file dokumen seperti jenis di atas dan yang lainnya secara langsung. Kita hanya bisa menginputkan ke dalam aplikasi berupa inputan langsung dari keyboard dan bukan sebuah dokumen untuk di enkripsi. Apakah aplikasi ini bisa mengenkripsi angka, tanda baca, special karakter dll? Aplikasi hanya diperuntukan untuk mengenkripsi huruf alphabet (a,b,c,..,z) saja dan tidak mengenkripsi tanda baca atau angka. Berapa banyak huruf atau kata yang bisa di enkripsi dalam sekali inputan atau sekali enkripsi? Pada kolom Plaintext dapat menerima inputan sepanjang pesan yang kita inginkan sesuai penyimpanan data pada QR Code. Karena QR Code ini sangat terbatas dalam penyimpanannya hanya beberapa karakter saja. Berarti aplikasi ini di batasi berapa jumlah huruf atau kata yang akan di enkripsi atau dekripsi. 3.2 Analisa Kebutuhan Pada penjabaran dalam Bab Landasan Teori sebelumnya kita telah mengenal metode enkripsi Caesar cipher. Caesar cipher sendiri melakukan proses enkripsi dengan menggeser tiga huruf kebelakang. Namun proses enkripsi disini melakukan substitusi (pengacakan) huruf pada kunci lain selain angka atau bisa disebut dengan polyalfabetic, kunci bisa jadi nama, alamat atau apa saja yang diingini oleh sipengirim. Kita bisa bayangkan berapa lama waktu yang dibutuhkan untuk mengenkripsi sebuah surat atau dokumen. Belum kertas dan pena yang dikeluarkan untuk membuat pesan terenkripsi dan berapa lama waktu yang dibutuhkan untuk mendekripsikannya kembali menjadi teks terang. Tentu akan memakan waktu, tenaga, pikiran dan material juga. Selain itu bagaimana proses 52
pengiriman pesan tersebut beserta kuncinya? Apakah aman jika hanya dibawa oleh seorang kurir atau utusan?. Tentu ini akan menjadi celah bagi kriptanalis untuk melakukan tindak kriptanalis. Disini kita akan menjawab semua pertanyaan tersebut. Jika metoda awal sistem sandi Caesar Cipher hanya memakai pergeseran tiga huruf kebelakang, dalam aplikasi ini kita bisa memilih kunci yang akan kita inputkan berdasarkan alfabet. kunci bisa jadi nama, alamat atau apa saja yang diingini oleh sipengirim. Hal ini tentu akan sulit dilakukan oleh sistem yang lama karena sistem lama masih menggunakan metode manual menggunakan kertas dan pena untuk melakukan proses enkripsi atau dekripsi. Dengan aplikasi ini kita bisa melakukannya hanya dengan memilih kunci yang kita inginkan dari (a,b,c,.z) pergeseran. Kemudian hasil enkripsi yang dihasilkanpun menjadi lebih akurat karena telah di rancang sedemikian rupa agar huruf pergeseran tidak mungkin salah, beda dengan metode lama dimana kita bisa saja salah memasukkan huruf pergeseran dan itu akan sangat membingungkan ketika seseorang ingin mendekripsikannya kembali. Untuk pengirimannyapun kita tinggal kirim lewat media internet berupa WhatsApp, Bbm, Gmail, dll kealamat tujuan dan media elektronik lainnya. Tentang pengiriman kunci sendiri kita harus lebih berhati - hati karena jika kunci dekripsi jatuh ke orang yang tidak berwenang tentu akan sangat berbahaya. Oleh karena itu kita bisa mengirimkan kunci lewat media tersendiri atau lewat Virtual Private Network atau VPN yang lebih aman di banding menggunakan jaringan umum. Pembuatan aplikasi ini dibuat dengan menggunakan aplikasi Android Studio Versi 2.1 2010. menggunakan bahasa pemrograman java android. Hasil aplikasi sendiri berupa file berekstensi. Apk. Jadi untuk file hasil pembuatan sistem hanya bisa di tanam ke OS yang menggunakan perangkat mobile berbasis android, selain itu aplikasi juga bisa di sebarkan untuk digunakan di banyak perangkat mobile berbasis android. 53
a. Analisa kebutuhan perangkat lunak Jadi pada tahap ini dimana pembuat perangkat lunak harus tau apa yang dibutuhkan oleh klain, sistem seperti apa yang diminta oleh client. Setelah itu pembuat perangkat lunak harus mempelajari bahan materi yang berkaitan dengan kebutuhan sistem tersebut. Seperti, buku, jurnal, internet, android studio versi 2.1, pustaka QR Code, dan pustaka QR Code Scanner. Lalu pembuat sistem harus mendokumentasikan kembali kepada client. b. Desain setelah tahap kebutuhan sudah terpehuni maka dilanjutkan dengan tahap desain. Pada tahap desain lebih ke perancangan pembuatan perangkat lunak agar dapat di implementasikan, pada tahap desain disini menggunakan teori UML yaitu Use Case Diagram, Activity Diagram, Sequence Diagram dan flowcahrat. Pada tahap ini juga perlu didokumentasikan kembali pada client. c. Pembuatan kode program pada tahap pembuatan kode program perangkat lunak harus sesuai dengan desain yang telah dibuat pada tahap desain, apakah program berjalan dengan lancar sesuai kebutuhan yang akan digunakan. Disini menggunakan software android studio dengan bahasa java andoid. d. Pengujian Pada tahap pengujian, setelah perangkat lunak sudah dibuat dengan bahasa pemrogaman java android, lalu perangkat lunak akan diujikan, yaitu untuk mengetahui error dan memastikan keluaran sesuai yang di inginkan. Pengujian disini menggunakan black box, karena proses black box yaitu untuk mengetahui input-proses-output. Jika proses pengujian berjalan dengan baik dan sesuai harapan maka perangkat lunak ini akan diserahkan kepada client untuk digunakan. e. Pemeliharaan Pada tahap pemeliharaan tidak menutup kemungkinan sebuah perangkat lunak mengalami perubahan ketika sudah dikirimkan ke client. Perubahan bisa terjadi karena adanya kesalahan yang muncul dan tidak terdeteksi saat pengujian atau perangkat lunak harus beradaptasi dengan lingkungan baru. 54
Tahap pemeliharaan dapat mengulangi proses pengembangan mulai dari analisis spesifikasi untuk perubahan perangkat lunak yang sudah ada, tapi tidak untuk membuat perangkat lunak baru. 3.3 Analisa Pembuatan Sistem Pada analisa pembuatan sistem akan membahas mengenai tampilan apa saja yang akan digunakan pada aplikasi kriptografi tersebut dengan algoritma yang akan digunakan pada sistem yang dibuat yaitu dengan menggunakan algoritma caesar cipher. Akan tetapi sistem yang akan dibangun dengan menerapkan algoritma caesar cipher. KEY KEY PLAINTEXT ENCRYPTION CIPHERTEXT QR CODE QR CODE SCANNER CIPHERTEXT DECRYPTION PLAINTEXT Gambar 3.1 Proses Enkripsi dan Dekripsi Tabel 3.1 Teknik Tidak Menggunakan Kunci Perulangan NO ENKRIPSI DESKRIPSI 1 Plainteks KENAIKAN HARGA BBM MEMBUAT RAKYAT KECIL MENDERITA 2 Kunci DONY ARIYUS 3 Tombol Enkripsi Proses Enkripsi 4 Cipherteks CAGDSCDG UDLID OOF FAFOQDP LDCXDP CANSE FAGYALSPD 5 QR Code Tempat Menyimpan Data NO DEKRIPSI DESKRIPSI 55
1 Cipherteks CAGDSCDG UDLID OOF FAFOQDP LDCXDP CANSE FAGYALSPD 2 QR Code Scanner Camera pembaca QR Code 3 Kunci DONY ARIYUS 4 Tombol Dekripsi Proses Dekripsi 5 Plainteks KENAIKAN HARGA BBM MEMBUAT RAKYAT KECIL MENDERITA Pada tabel 3.1 memberikan gambaran teknik dan analisa sistem pada aplikasi. Pada perkembangan algoritma caesar cipher memberikan suatu gagasan baru untuk menggunakan kunci lain atau bisa disebut dengan Polyalfabetic, maka kunci bisa jadi nama, alamat atau apa saja yang diingini oleh pengirim pesan. Caesar cipher dengan menggunakan satu kunci atau bisa disebut dengan substitusi deret campur kata kunci, yang perlu di ingat bahwa tidak ada perulangan huruf dalam hal ini. DONY ARIYUS menjadi DONYARIUS, huruf Y terjadi perulangan jadi tidak dipakai lagi. Tabel 3.2 Teknik Yang Menggunakan Kunci Perulangan NO ENKRIPSI DESKRIPSI 1 Plainteks KENAIKAN HARGA BBM MEMBUAT RAKYAT KECIL MENDERITA 2 Kunci DONY ARIYUS 3 Tombol Enkripsi Proses Enkripsi 4 Cipherteks CAGDSCDG UDLID OOF FAFOQDP LDCXDP CANSE FAGYALSPD 5 QR Code Tempat Menyimpan Data 56
NO DEKRIPSI DESKRIPSI 1 Cipherteks BAFDUBDF YDKID OOE EAEOPDM KDBWDM BANUC EAFYAKUMD 2 QR Code Scanner Camera pembaca QR Code 3 Kunci DONY ARIYUS 4 Tombol Dekripsi Proses Dekripsi 5 Plainteks Jika proses dekripsi huruf Y bisa menjadi D/H maka huruf Y adalah D dan huruf Y bisa jadi H artinya ciphertext tidak bisa dikembalikan ke plaintext semula karena terjadi perulangan kata kunci. Jika sebaliknya terjadi perulangan pada kunci dalam hal ini. DONY ARIYUS menjadi DONYARIYUS maka proses enkripsi akan menampilkan huruf yang sama pada cipherteks. Jadi pada tabel alfabet akan melakukan subtitusi dengan huruf yang sama lebih dari satu, Jika dalam kata kunci ada huruf yang berulang, maka ciphertext tidak bisa dikembalikan ke plaintext, karena sebuah huruf pada ciphertext bisa memiliki lebih dari satu arti (ambigu). 57