BAB III ANALISIS DAN PERANCANGAN SISTEM III.1. Analisis Sistem Dalam merancang sebuah aplikasi perlu adanya analisis terhadap sistem sebelum diimpelentasikan pada rancangan interface. Hal ini dilakukan untuk dapat mengukur dan mengetahui kelebihan dan kekurangan hasil perancangan. Pembahasan perancangan ini berfokus pada aplikasi kemanan yang menerapkan algoritma RC4. Kemanan pada perancangan ini menggunakan konsep enksripsi dan deskripsi, sehingga file yang diinputkan akan menghasilkan teks dalam bentuk yang tidak beraturan. Sebelumnya untuk menerapkan algoritma RC4 ini terhadap perancangan terlebih dahulu memahami konsep dan rumus yang diterapkan pada algoritma tersebut. Algoritma kriptografi RC4 adalah enkripsi, Proses enkripsi deskripsi mempunyai proses yang sama sehingga hanya ada satu fungsi yang dijalankan untuk menjalankan kedua proses tersebut. RC4 mempunyai sebuah S-Box dan key dalam bentuk array 256 byte yaitu : S0, S1,..., S255 yang berisi permutasi dari bilangan 0 sampai 255, K0, K1,, K255 dengan kategori stream simetrik. Sedangkan untuk inisialisasi S-Box yaitu dengan mengisikan nilai 1 sampai dengan 255 dimulai dari S0 sampai dengan S255, isi S-Box secara berurutan, yaitu S0=0, S1=1,..., S255=255 (Scheiner, 2001). Untuk inisialisasi key yaitu dengan mengisikan array K255 byte dengan kunci yang diulangi sampai seluruh 32
33 array K0,K1,... K255 terisi seluruhnya. Pseudocode yang terbentuk untuk menciptakan initialisasi key adalah sebagai berikut. For I = 0 to 255 Ki = I mod length (key) Pseudorandom adalah nilai yang dibangkitkan dari nilai S-Box dan Key yang telah diinisialisasi. Caranya set indeks j dengan nol, dan melakukan penukaran nilai S-Box yang sudah diinisialisasi sebelumnya dengan nilai perulangan ditambah dengan S-Box awal ditambah dengan nilai dari array K yang dapat digambarkan dan dijelaskan dalam Pseudocode sebagai berikut. j = 0 for i = 0 to 255 j = (j + Si + Ki) mod 256 swap Si dan Sj Fungsi swap merupakan fungsi yang menukarkan nilai S ke-i dengan nilai S ke-j. Kemudian membangkitkan nilai pseudorandom key berdasarkan indeks dan nilai S-Box. Terdapat 2 indeks yaitu i dan j, yang diinisialisasi dengan bilangan nol. Untuk menghasilkan random byte langkahnya adalah sebagai berikut. i = 0 j = 0 for idx = 0 to len-1 i = (i + 1) mod 256 j = (j + Si) mod 256
34 swap Si dan Sj t = (Si + Sj) mod 256 k = St buffidx = k XOR buffidx Rumus diatas merupakan penerapan algoritma yang dibahas, Adapun keterangan dari rumus diatas sebagai berikut : 1. buff merupakan pesan yang akan dienkripsi atau dekripsi 2. len merupakan panjang dari buff Nilai pseudorandom key inilah yang akan di XOR dengan plainteks untuk menghasilkan cipherteks atau XOR dengan cihperteks untuk menghasilkan plainteks. Untuk menghasilkancipherteks yaitu dengan rumus Cipherteks = Plainteks XOR K sedangkan untuk menghasilkan plainteks yaitu dengan rumus Plainteks = Cipherteks XOR K. Contoh lain dari implementasi algoritma RC4 adalah saat proses key scheduling algorithm didapatkan S-Box terakhir 54, 157, 62, 162, 25, 135, 195, 103, 208, 8, 188, 42, 165, 13, 141, 253, 35, 231, 108, 134, 93, 82, 49, 9, 83, 139, 147, 38, 87, 193, 22, 219, 113, 248, 155, 117, 64, 123, 154, 67, 53, 94, 46, 102, 133, 170, 106, 194, 24, 246, dan 45 maka penyelesaiannya terdapat di dalam tabel berikut :
35 Tabel 3.1 Pengimplementasian Algoritma RC4 Desain dan implementasi rancangan meliputi desain interface, gambaran proses sistem, implementasi desain, dan semua yang diperlukan dalam aplikasi yang akan dibangun. III.1.1. Kegunaan Hasil Aplikasi Kegunaan hasil dari aplikasi yang menggunakan website ini dapat dijelaskan sebagai berikut. 1. Meningkatkan keamanan terhadap pengamanan data terutama file yang terdapat di komputer. 2. Menyediakan tools yang dapat diakses dengan mudah oleh pengguna dengan berbasis web. 3. Memahami bagaimana proses algoritma RC4 (Rivest Chiper) dalam melakukan enkripsi dan dekripsi terhadap sebuah file.
36 III.2. Strategi Pemecahan Masalah Adapaunstrategi pemecahan masalah dalam perancangan ini penulis simpulkan sebagai berikut : 1 Perancangan aplikasi ini tidak menggunakan database tetapi dapat melakukan penyimpanan terhadap file yang diinputkan bersifat sementara. 2 Dalam menggunakan aplikasi ini pengguna hanya dapat melakukan 2 aktivitas yaitu upload dan download terhadap file dengan ekstensi *txt agar tidak memerlukan software tambahan dalam menggunakan aplikasi secara optimal. 3 Website yang dihasilkan menyediakan algoritma RC4 digunakan sebagai penyandian data teks (string), maupun berbagai tipe file, seperti gambar, file office word maupun file pdf. III.2.1. Perangkat Perancangan Pada perancangan aplikasi memiliki pendukung agar menghasilkan output yang optimal yaitu dalam bentuk software dan hardware, adapun rincian dari software dan hardware yang digunakan adalah sebagai berikut : 1. Perangkat lunak yang menggunakan Sistem Operasi Windows 7, Appserv 2.5.10 sebagai web server, Dreamweaver 8 sebagai editor pemrograman PHP. 2. Untuk perangkat keras ataupun hardware menggunakan 1 (satu) unit komputer dengan Processor AMD Brazos Dual Core, RAM 2046 Megabyte, VGA 512 Megabyte.
37 III.3. Desain Sistem Pada perancangan aplikasi menjelaskan mengenai rancangan yang akan dikerjakan serta fitur-fitur yang akan dipakai pada aplikasi tersebut seperti algoritma rancangan, rancangan layar, dan lainnya. Dimana aplikasi ini menggunakan website, untuk menggambarkan proses sistem penulis mendeskripsikan dengan menggunakan beberapa diagram, yaitu sebagai berikut: III.3.1. Use Case Diagram Diagram use case ini menggambarkan user (aktor) yang menggunakan sistem dan perilaku user terhadap sistem, dapat pada Gambar III.1 berikut. APLIKASI PENGAMANAN DATA MENGGUNAKAN ALGORITMA RC4 Menjalankan Aplikasi Upload File Server <<Extend>> Pengguna Download File Enkripsi RC4 Algoritma Server Dekripsi Gambar III.1. Use Case Diagram Pada gambar diatas dijelaskan aktivitas dari pengguna dalam menjalankan aplikasi. Pengguna dapat menggukan 2 menu yang akan di enksripsi ataupun deskripsi, yaitu dalam melakukan proses kemanan pengguna terlebih dahulu
38 mengupload file yang ingin di enkripsi. Setelah hasil output dari enkrispsi dapat disimpan pada penyimpanan di komputer. File enkripsi ini tidak dapat dibuka, disebabkan data tersebut telah di enkripsi dengan algoritma RC4, dan untuk dapat membukanya file tersebut di dekripsikan agar dapat dibuka atau di akses. III.3.2. Sequence Diagram Sequence diagram digunakan untuk menggambarkan perilaku pada sebuah skenario. Diagram ini menunjukkan sejumlah contoh aktifitas yang diletakkan diantara objek-objek ini di dalam use case diagram. Yang dapat dilihat pada Gambar III.2 berikut. Pengguna Input Proses Enkripsi dan Dekripsi Hasil Save System Form Input File Input File Proses Data Pemilihan enkripsi atau deskripsi Data Proses Respon Data Respon Data Proses Penyandian Penyandian Respon Data Proses Penyimpanan Gambar III.2. Sequance Diagram Aplikasi Pada Diagram menjelaskan tentang alur sistem pada setiap proses dari pengimputan data hingga penyimapanan data. Pengguna dapat mengakses beberapa menu, untuk lebih jelasnya dapat dilihat pada activity diagram berikut :
39 III.3.3. Activity Diagram Activity diagram adalah teknik untuk mendiskusikan logika prosedural, proses bisnis dan aliran kerja dalam banyak kasus. Activity diagram banyak mempunyai peran seperti halnya flowchart. Activity diagram bisa mendukung perilaku pararel. Berikut ini adalah activity diagram aplikasi yang dirancang dapat dilihat pada Gambar III.3 : Pengguna System Mulai Aplikasi Menu Input File Enkripsi Proses Dekripsi Hasil Gambar III.3. Activity Diagram Proses
40 Adapun gambaran dari interface pengguna dalam perancangan aplikasi dapat dilihat pada gambar berikut : 1. Halaman Menu Utama Pada halaman ini merupakan halaman utaman saat pengguna memulai aplikasi website pengamanan data, dapat dilihat pada berikut. Layanan Kriptografi RC4 Berbasis Server Home Encrypt Decrypt About Gambar Informasi Tentang Algoritma RC4 Footer Gambar III.4. Halaman Menu Utama 2. Halaman File Enkripsi Pada halaman ini merupakan halaman file untuk melakukan proses enkripsi, pengguna dapat mengupload file yang ingin dienkripsi dan setelah itu merespon proses enkripsi pada file tersebut. Dapat dilihat pada berikut.
41 Layanan Kriptografi RC4 Berbasis Server Home Encrypt Decript About File Name : Browser Key : Enkripsi Footer Gambar III.5. Halaman File Enkripsi 3. Halaman File Dekripsi Pada halaman ini merupakan halaman data untuk melakukan proses dekripsi, pengguna dapat mengupload file yang ingin dienkripsi dan setelah itu merespon proses dekripsi pada file tersebut. Dapat dilihat pada berikut. Layanan Kriptografi RC4 Berbasis Server Home Encrypt Decript About File Name : Browser Key : Dekripsi Footer Gambar III.6. Halaman File Dekripsi
42 4. Halaman About Pada halaman ini merupakan penyajian informasi besera tampilan foto dari perancang, dapat dilihat pada gambar berikut : Layanan Kriptografi RC4 Berbasis Server Home File Pesan About Foto Informasi Tentang Perancang Footer Gambar III.7. Halaman About