BAB III ANALISIS DAN PERANCANGAN SISTEM. permasalahan-permasalahan dan kebutuhan-kebutuhan yang diharapkan sehingga dapat

dokumen-dokumen yang mirip

ANALISA PROSES ENKRIPSI DAN DESKRIPSI DENGAN METODE DES

BAB III ANALISA DAN DESAIN SISTEM

Data Encryption Standard (DES)

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB IV HASIL DAN PEMBAHASAN

BAB III ANALISA MASALAH DAN PERANCANGAN

STUDI, IMPLEMENTASI DAN PERBANDINGAN ALGORITMA KUNCI SIMETRI TRIPLE DATA ENCRYPTION STANDARD DAN TWOFISH

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN

Modul Praktikum Keamanan Sistem

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM

DATA ENCRYPTION STANDARD (DES) STANDAR ENKRIPSI DATA. Algoritma Kriptografi Modern

BAB 2 LANDASAN TEORI

Penerapan Enkripsi Dan Dekripsi File Menggunakan Algoritma Data Encryption Standard (DES) ABSTRAK

BAB III ANALISA MASALAH DAN SISTEM

Data Encryption Standard (DES)

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN

BAB IV HASIL DAN UJI COBA

BAB III ANALISA MASALAH DAN PERANCANGAN PROGRAM

STUDI PERBANDINGAN ALGORITMA SIMETRI BLOWFISH DAN ADVANCED ENCRYPTION STANDARD

BAB III ANALISA MASALAH DAN RANCANGAN PROGRAM. Analisa yang dilakukan bertujuan untuk menentukan solusi dari

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB II TINJAUAN PUSTAKA

Implementasi Algoritma DES Menggunakan MATLAB

PERANCANGAN APLIKASI ENKRIPSI DATA MENGGUNAKAN METODE ADVANCED ENCRYPTION STANDARD

BAB II LANDASAN TEORI. menjalankan intruksi-intruksi dari user atau pengguna. Aplikasi banyak

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISA DAN PERANCANGAN

BAB IV HASIL DAN UJI COBA

BAB III ANALISA DAN DESAIN SISTEM. perancangan pembuatan kriptografi Impementasi AES ( Advanced Encyrption

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

Bab 3 Metode Perancangan

Outline. Sejarah DES Enkripsi DES Implementasi Hardware dan Software DES Keamanan DES

BAB 1 PENDAHULUAN ABSTRAK MEMBANGUN APLIKASI KEAMANAN TRANSMISI DATA MULTIMEDIA MENGGUNAKAN KRIPTOGRAFI ALGORITMA DATA ENCRYPTION STANDARD (DES)

BAB III ANALISA DAN PERANCANGAN

ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN PERANCANGAN SISTEM

APLIKASI PENGAMANAN DATA MENGGUNAKAN ALGORITMA DATA ENCRYPTION STANDARD (DES) DENGAN NETBEANS IDE BERBASIS DESKTOP

Ada 4 mode operasi cipher blok: 1. Electronic Code Book (ECB) 2. Cipher Block Chaining (CBC) 3. Cipher Feedback (CFB) 4. Output Feedback (OFB)

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISA DAN PERANCANGAN

Implementasi Algoritma DES Menggunakan MATLAB

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISIS KEBUTUHAN DAN PERANCANGAN SISTEM. KriptoSMS akan mengenkripsi pesan yang akan dikirim menjadi ciphertext dan

SIMULASI KERAHASIAAN / KEAMANAN INFORMASI DENGAN MENGGUNAKAN ALGORITMA DES (DATA ENCRYPTION STANDARD) SKRIPSI INDRA SYAHPUTRA

BAB III ANALISA DAN PERANCANGAN

BAB III METODE PENELITIAN

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA DAN DESAIN SISTEM

BAB IV ANALISIS DAN PERANCANGAN. sistem informasi yang utuh kedalam bagian-bagian komponennya dengan

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISA DAN DESAIN SISTEM

Jurnal Coding, Sistem Komputer Untan Volume 04, No.2 (2016), hal ISSN : X

internal atau upa-kunci. Kunci internal dibangkitkan dari kunci eksternal yang panjangnya 64 bit. Berikut ini adalah skema global algoritma DES.

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

IMPLEMENTASI ALGORITMA ADVANCED ENCRYPTION STANDARD (AES) UNTUK ENKRIPSI DAN DEKRIPSI PADA DOKUMEN TEKS ABSTRAK

BAB IV HASIL DAN UJI COBA

Bab 3. Metode dan Perancangan Sistem

ENKRIPSI DAN DEKRIPSI DATA DENGAN ALGORITMA 3 DES (TRIPLE DATA ENCRYPTION STANDARD)

BAB III ANALISIS DAN PERANCANGAN SISTEM

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN PERANCANGAN. Dalam membangun aplikasi pembelajaran aksara sunda berbasis android

BAB IV HASIL DAN UJI COBA

BAB 4 IMPLEMENTASI DAN EVALUASI. dan sistem operasi dengan spesifikasi sebagai berikut: 1. Processor: Intel Pentium, Core Duo, 1.

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

Gambar 3.1 Flowchart proses enkripsi AES

Perancangan Aplikasi Kriptografi File Dengan Metode Algoritma Advanced Encryption Standard (AES)

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS MASALAH

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM. telah dijelaskan pada bab sebelumnya. Analisis yang dilakukan bertujuan untuk

BAB III ANALISA DAN PERANCANGAN. pengamanan file teks dengan menggunakan algoritma triangle chain dan rivest cipher (RC4).

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISA DAN DESAIN SISTEM

BAB IV HASIL DAN UJI COBA

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISA DAN PERANCANGAN

BAB IV ANALISIS DAN PERANCANGAN. kebutuhan-kebutuhan yang diharapkan sehingga dapat diusulkan perbaikannya.

BAB III ANALISIS DAN PERANCANGAN

BAB IV PERANCANGAN SISTEM

BAB IV ANALISA DAN PERANCANGAN SISTEM Analisis Sistem yang Sedang Berjalan. Untuk merancang sebuah aplikasi mobile pelajaran Kimia dasar untuk

IMPLEMENTASI KRIPTOGRAFI MENGGUNAKAN METODE ADVANCED ENCRYPTION STANDAR (AES) UNTUK PENGAMANAN DATA TEKS

BAB III ANALISIS DAN PERANCANGAN SISTEM

BAB III ANALISA DAN DESAIN SISTEM

Transkripsi:

BAB III ANALISIS DAN PERANCANGAN SISTEM 3.1 Analisis Sistem Analisis sistem ini merupakan penguraian dari suatu sistem yang utuh kedalam bagian-bagian komponennya dengan maksud untuk mengidentifikasi dan mengevaluasi permasalahan-permasalahan dan kebutuhan-kebutuhan yang diharapkan sehingga dapat dilakukan perbaikannya. 3.1.1 Analisis Masalah Kekahawatiran mengenai perbankan elektronik menjadi hambatan utama dalam mengembangkan peningkatannya, dengan perbankan elektronik Nasabah mungkin khawatir bahwa para pelaku kejahatan dapat mengakses rekening bank dan mencuri uang dengan memindahkan saldo Nasabah ke rekening orang lain. Bahkan pernah terjadi pada tahun 1995. Solusi untuk mengatasi masalah ini telah berkembang dengan perkembangan teknologi enkripsi yang lebih aman untuk mencegah kejahatan semacam ini. Tetapi karena Nasabah tidak memahami pengetahuan tentang maslah keamanan komputer maka untuk mengatur perbankan elektronik bahwa prosedur enkripsi tersebut memadai. Salah satunya untuk meningkatkan keseriusan masalah kerahasiaan dengan mengenkripsi data mengenai informasi tentang Nasabah. 34

35 3.1.2 Analisis Pemecahan Masalah Sebagaimana gambaran pada analisis masalah, maka solusi atau pemecahan dari masalah yang ada adalah dengan membuat aplikasi atau alat bantu yang mampu memberikan kenyamanan dan rasa aman untuk keamanan data Nasabah dengan menerapkan kriptografi DES (Data Encryption Standard). 3.1.3 Analisis Kriptografi DES (Data Encryption Standard) Dalam penyusunan tugas akhir ini dilakukan analisis terhadap algoritma kriptografi DES (Data Encryption Standard) merupakan keamanan dasar yang dipublikasikan sejak 15 Januari 1977 dan sering digunakan dimana-mana, oleh karena itu ada kemungkinan DES akan tetap dilanjutkan penelitiannya sehingga menjadi suatu sistem enkripsi yang kuat dari segi keamanan data, sistem akses control dan password. Data dienkrip dalam blok-blok 64 bit menggunakan kunci 56 bit. DES mentransformasikan input 64 bit dalam beberapa tahap enkripsi ke dalam output 64 bit. Dengan tahapan dan kunci yang sama. 3.1.3.1 Analisis Algoritma Pembangkit Kunci Internal Karena ada 16 putaran, maka dibutuhkan kunci internal sebanyak 16 buah, yaitu K 1, K 2,, K 16. Kunci-kunci internal ini dapat dibangkitkan sebelum proses enkripsi atau bersamaan dengan proses enkripsi. Kunci internal dibangkitkan dari kunci eksternal yang diberikan oleh pengguna. Kunci eksternal panjangnya 64 bit atau 8 karakter. Kunci eksternal ini menjadi masukan untuk permutasi dengan menggunakan matriks permutasi kompresi PC-1 sebagai berikut:

36 Tabel 3.1 Permutasi Awal (PC-1) (Rinaldi Munir; 2006) 57 49 41 33 25 17 9 1 58 50 42 34 26 18 10 2 59 51 43 35 27 19 11 3 60 52 44 36 63 55 47 39 31 23 15 7 62 54 46 38 30 22 14 6 61 53 45 37 29 21 13 5 28 20 12 4 Dalam permutasi ini, tiap bit kedelapan (parity bit) dari delapan byte kunnci diabaikan. Hasil permutasinya adalah sepanjang 56 bit, sehingga dapat dikatakan panjang kunci DES adalah 56 bit. Selanjutnya, dibagi menjadi dua bagian, kiri dan kanan, yang masing-masing panjangnya 28 bit, yang masing-masing disimpan di dalam C 0 dan D 0 : C 0 : berisi bit-bit dari K pada posisi 57, 49, 41, 33, 35, 17, 9, 1, 58, 50, 42, 34, 26, 18 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 3 D 0 : berisi bit-bit dari K pada posisi 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22 14, 6, 61, 53, 45, 37, 29, 21,13,5, 28, 20, 12, 4 Selanjutnya, kedua bagian digeser kekiri (left shift) sepanjang satu arah atau dua bit bergantung pada tiap putaran. Operasi pergeseran bersifat wrapping atau round-shift. Jumlah pergeseran tiap putaran ditunjukan pada tabel 3.2 sebagai berikut : Tabel 3.2 Jumlah pergeseran bit pada setiap putaran (Rinaldi Munir; 2006) Putaran, i Jumlah pergeseran bit 1 1 2 1 3 2 4 2 5 2

37 Tabel 3.2 Jumlah pergeseran bit pada setiap putaran (lanjutan) 6 2 7 2 8 2 9 1 10 2 11 2 12 2 13 2 14 2 15 2 16 1 C i, D i menyatakan penggabungan (C i dan D i ). C i+1, D i+1 ) diperoleh dengan cara menggeser C i dan D i satu atau dua bit. Setelah pergeseran bit, (C i, D i ) mengalami permutasi kompresi dengan menggunakan matriks PC-2 berikut : Tabel 3.3 Invers Permutasi (IP - 1) (Rinaldi Munir; 2006) 14 17 11 24 1 5 3 28 15 6 21 10 23 19 12 4 26 8 16 7 27 20 13 2 41 52 31 37 47 55 30 40 51 45 33 48 44 49 39 56 34 53 46 42 50 36 29 32 Dengan permutasi ini, kunci internal K i diturunkan dari (C i, D i ) yang dalam hal ini K i merupakan penggabungan dari bit-bit C i pada posisi : 14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2 Dengan bit-bit D i pada posisi : 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 38 44, 49, 39, 56, 34, 56, 34, 53, 36, 42, 50, 36, 29, 32 Jadi, setiap kunci internal K i mempunyai panjang 48 bit. Proses pembangkitan kuncikunci internal ditunjukan pada Gambar 3.1 bila jumlah pergeseran bit-bit pada tabel 3.2 dijumlahkan semuanya, maka jumlah seluruhnya sama dengan 28, yang sama dengan

38 jumlah bit pada C i dan D i. Karena itu, setelah putaran ke 16 akan di dapatkan kembali C 16 = C o dan D 16 = D o. Kunci eksternal Permutasi PC-1 C 0 D 0 Left Shift Left Shift C 1 D 1 Left Shift Left Shift Permutasi PC-2 K 1 j j Permutasi PC-2 Left Shift Left Shift K j C 16 D 16 Permutasi PC-2 K 16 Gambar 3.1 Proses Pembakit Kunci Internal DES 3.1.3.2 Analisis Algoritma Enkripsi DES (Data Encryption Standard) Proses enkripsi terhadap blok plainteks dilakukan setelah permutasi awal (lihat Gambar 2.8). Setiap blok plainteks mengalami 16 kali putaran encryphing. Setiap putaran encryphing merupakan jaringan Feistel yang secara matematis dinyatakan sebagai : Li = R i-1 R i = L i f (R i-1, K i )

39 Digram komputasi fungi f diperlihatkan pada Gambar 3.2. 32 bit R i-1 Ekspansi menjadi 48 bit E(R i-1 ) 48 bit 48 bit 48 bit K i E Ri ) K ( 1 i A S 1... S 8 Matriks substitusi 32 bit 32 bit B P(B) Gambar 3.2 Rincian komputasi fungsi f E adalah fungsi ekspansi yang memperluas blok R i-1 yang panjangnya 32 bit menjadi blok 48 bit. Fungsi ekpansi direalisasikan dengan matriks permutasi ekspansi sebagai berikut : Tabel 3.4 Matriks Permutasi Ekspansi 32 1 2 3 4 5 4 5 6 7 8 9 8 9 10 11 12 13 12 13 14 15 16 17 16 17 18 19 20 21 20 21 22 23 24 25 24 25 26 27 28 29 28 29 30 31 32 1 Selanjutnya, hasil ekpansi, yaitu E(R i 1 ), yang panjangnya 48 bit di-xor-kan dengan K i yang panjangnya 48 bit menghasilkan vektor A yang panjangnya 48-bit:

40 E(R i 1 ) K i = A Vektor A dikelompokkan menjadi 8 kelompok, masing-masing 6 bit, dan menjadi masukan bagi proses substitusi. Proses substitusi dilakukan dengan menggunakan delapan buah kotak-s (S-box), S 1 sampai S 8. Setiap kotak-s menerima masukan 6 bit dan menghasilkan keluaran 4 bit. Kelompok 6-bit pertama menggunakan S 1, kelompok 6-bit kedua menggunakan S 2, dan seterusnya. Kedelapan kotak-s tersebut adalah: S1 : 14 4 13 1 2 15 11 8 3 10 6 12 5 9 0 7 0 15 7 4 14 2 13 1 10 6 12 11 9 5 3 8 4 1 14 8 13 6 2 11 15 12 9 7 3 10 5 0 15 12 8 2 4 9 1 7 5 11 3 14 10 0 6 13 S2 : 15 1 8 14 6 11 3 4 9 7 2 13 12 0 5 10 3 13 4 7 15 2 8 14 12 0 1 10 6 9 11 5 0 14 7 11 10 4 13 1 5 8 12 6 9 3 2 15 13 8 10 1 3 15 4 2 11 6 7 12 0 5 14 9 S3 : 10 0 9 14 6 3 15 5 1 13 12 7 11 4 2 8 13 7 0 9 3 4 6 10 2 8 5 14 12 11 15 1 13 6 4 9 8 15 3 0 11 1 2 12 5 10 14 7 1 10 13 0 6 9 8 7 4 15 14 3 11 5 2 12 S4 : 7 13 14 3 0 6 9 10 1 2 8 5 11 12 4 15 13 8 11 5 6 15 0 3 4 7 2 12 1 10 14 9 10 6 9 0 12 11 7 13 15 1 3 14 5 2 8 4 3 15 0 6 10 1 13 8 9 4 5 11 12 7 2 14

41 S5 : 2 12 4 1 7 10 11 6 8 5 3 15 13 0 14 9 14 11 2 12 4 7 13 1 5 0 15 10 3 9 8 16 4 2 1 11 10 13 7 8 15 9 12 5 6 3 0 14 11 8 12 7 1 14 2 13 6 15 0 9 10 4 5 3 S6 : 12 1 10 15 9 2 6 8 0 13 3 4 14 7 5 11 10 15 4 2 7 12 9 5 6 1 13 14 0 11 3 8 9 14 15 5 2 8 12 3 7 0 4 10 1 13 11 6 4 3 2 12 9 5 15 10 11 14 1 7 6 0 8 13 S7 : 4 11 2 14 15 0 8 13 3 12 9 7 5 10 6 1 13 0 11 7 4 9 1 10 14 3 5 12 2 15 8 6 1 4 11 13 12 3 7 14 10 15 6 8 0 5 9 2 6 11 13 8 1 4 10 7 9 5 0 15 14 2 3 12 S8 : 13 2 8 4 6 15 11 1 10 9 3 14 5 0 12 7 1 15 13 8 10 3 7 4 12 5 6 11 0 14 9 2 7 11 4 1 9 12 14 2 0 6 10 13 15 3 5 8 2 1 14 7 4 10 8 13 15 12 9 0 3 5 6 11 Keluaran proses substitusi adalah vektor B yang panjangnya 48 bit. Vektor B menjadi masukan untuk proses permutasi. Tujuan permutasi adalah untuk mengacak hasil proses substitusi kotak-s. Permutasi dilakukan dengan menggunakan matriks permutasi P (P-box) sebagai berikut : 16 7 20 21 29 12 28 17 1 15 23 26 5 8 31 10 2 8 24 14 32 27 3 9 19 13 30 6 22 11 4 25 Bit-bit P(B) merupakan keluaran dari fungsi f. Akhirnya, bit-bit P(B) di-xor-kan dengan L i 1 untuk mendapatkan R i :

42 R i = L i 1 P(B) Jadi, keluaran dari putaran ke-i adalah (L i, R i ) = (R i 1, L i 1 P(B)) 32 bit L i-1 f 32 bit R i Gambar 3.3 Skema Perolehan R i 3.1.3.3 Permutasi Terakhir (Inverse Initial Permutation) Permutasi terakhir dilakukan setelah 16 kali putaran terhadap gabungan blok kiri dan blok kanan. Proses permutasi menggunakan matriks permutasi awal balikan (inverse initial permutation atau IP -1 ) sebagai berikut: 40 8 48 16 56 24 64 32 39 7 47 15 55 23 63 31 38 6 46 14 54 22 62 30 37 5 45 13 53 21 61 29 36 4 44 12 52 20 60 28 35 3 43 11 51 19 59 27 34 2 42 10 50 18 58 26 33 1 41 9 49 17 57 25 3.1.3.4 Analisis Algoritma Dekripsi DES (Data Encryption Standard) Proses dekripsi terhadap cipherteks merupakan kebalikan dari proses enkripsi. DES menggunakan algoritma yang sama untuk proses enkripsi dan dekripsi. Jika pada proses enkripsi urutan kunci internal yang digunakan adalah K 1, K 2,, K 16, maka pada proses

43 dekripsi urutan kunci yang digunakan adalah K 16, K 15,, K 1. Untuk tiap putaran 16, 15,, 1, keluaran pada setiap putaran deciphering adalah : L i = R i 1 R i = L i 1 f(r i 1, K i ) yang dalam hal ini, (R 16, L 16 ) adalah blok masukan awal untuk deciphering. Blok (R 16, L 16 ) diperoleh dengan mempermutasikan cipherteks dengan matriks permutasi IP -1. Prakeluaran dari deciphering adalah adalah (L 0, R 0 ). Dengan permutasi awal IP akan didapatkan kembali blok plainteks semula. Tinjau kembali proses pembangkitan kunci internal pada Gambar 3.1. Selama deciphering, K 16 dihasilkan dari (C 16, D 16 ) dengan permutasi PC-2. Tentu saja (C 16, D 16 ) tidak dapat diperoleh langsung pada permulaan deciphering. Tetapi karena (C 16, D 16 ) = (C 0, D 0 ), maka K 16 dapat dihasilkan dari (C 0, D 0 ) tanpa perlu lagi melakukan pergeseran bit. Catatlah bahwa (C 0, D 0 ) yang merupakan bit-bit dari kunci eksternal K yang diberikan pengguna pada waktu dekripsi. Selanjutnya, K 15 dihasilkan dari (C 15, D 15 ) yang mana (C 15, D 15 ) diperoleh dengan menggeser C 16 (yang sama dengan C 0 ) dan D 16 (yang sama dengan C 0 ) satu bit ke kanan. Sisanya, K 14 sampai K 1 dihasilkan dari (C 14, D 14 ) sampai (C 1, D 1 ). Catatlah bahwa (C i 1, D i 1 ) diperoleh dengan menggeser C i dan D i, tetapi pergeseran kiri (left shift) diganti menjadi pergeseran kanan (right shift). 3.1.4 Analisis Kebutuhan Fungsional Analisis kebutuhan fungsional merupakan gambaran mengenai fitur-fitur yang akan dimasukkan ke dalam aplikasi yang akan dibuat berdasarkan tujuan fungsional dari solusi masalah yang didapat. Fitur-fitur tersebut antara lain sebagai berikut: 1. Mampu mengenkripsi dan dekripsi plainteks yang di input oleh pengguna.

44 2. Terdapat pilihan enkripsi dan dekripsi disertai kunci yang dapat ditentukan sendiri. 3. Terdapat informasi mengenai aplikasi dan cara penggunaannya. 3.1.5 Analisis Kebutuhan Non-Fungsional Analisis kebutuhan non-fungsional merupakan kebutuhan yang menunjang dalam pembuatan dan pelaksanaan kerja sistem. Kebutuhan non-fungsional ini meliputi kebutuhan non-fungsional aplikasi, kebutuhan perangkat lunak, kebutuhan perangkat keras, serta kebutuhan user. 1. Kebutuhan Non-Fungsional Aplikasi Berikut ini kebutuhan non-fungsional dari sistem yang akan dibangun: a. Efficiency, merancang aplikasi dengan pemanfaatkan sumber daya seefisien mungkin dengan tidak terlalu banyak menggunakan komponen visual dan audio namun tidak mengurangi fungsi aplikasi, sehingga tidak menggunakan ruang memori yang banyak dan tidak mengurangi performa aplikasi. b. User friendly, merancang aplikasi dengan antar muka yang sederhana namun tetap menarik dan mudah digunakan. c. Portability, merancang aplikasi dengan kemampuan agar dapat digunakan sesuai kebutuhan. 2. Kebutuhan Perangkat Lunak Berikut ini adalah beberapa komponen perangkat lunak yang akan digunakan dalam pengembangan sistem: a. Sistem Operasi Windows (Windows 7). b. JDK (Java Development Kit)

45 c. Notepad atau Notepad ++ 3. Kebutuhan Perangkat Keras Berikut ini adalah spesifikasi minimum untuk perangkat keras yang akan digunakan dalam pengembangan sistem: a. Laptop Intel Core i3-2330m CPU @ 2.20 GHz. b. Memori 2 GB, VGA 813 MB dan Harddisk 500 GB. c. Monitor, Mouse dan Keyboard. 4. Kebutuhan User Selain dibutuhkannya perangkat lunak dan perangkat keras, user juga sangat dibutuhkan dalam penggunaan aplikasi yang akan dibangun ini. 3.2 Perancangan Sistem Perancangan Sistem dapat didefenisikan sebagai penggambaran, perencanaan, dan pembuatan sketsa atau pengaturan dari beberapa elemen yang terpisah kedalam satu kesatuan yang utuh dan berfungsi. (Jogiyanto H.M; 2001). Tahap ini merupakan hasil transformasi dari hasil analisis sistem kedalam perancangan yang nantinya akan memudahkan dalam mengimplementasikan proses pembuatan aplikasi. Dengan kata lain perancangan sistem didefinisikan sebagai penggambaran atau pembuatan sketsa dari beberapa elemen yang terpisah kedalam satu kesatuan yang utuh dan berfungsi sesuai tujuan yang ingin dicapai pada hasil analisis. 3.2.1 Pemodelan Sistem Pemodelan (modelling) adalah proses merancang perangkat lunak yang akan dibangun sebelum melakukan pengkodean (coding). Dengan menggunakan pemodelan,

46 diharapkan pengembangan perangkat lunak dapat memenuhi semua kebutuhan perangkat lunak yang akan dibangun dengan lengkap dan tepat. Pada tugas akhir ini akan digunakan metode pemodelan UML (Unified Modelling Language). 1. Use Case Diagram Menu System Enkripsi <<include>> <<extend>> Pengguna Input Plainteks <<include>> Output Cipherteks Input Kunci Dekripsi Output Plainteks <<extend>> Gambar 3.4 Use Case Diagram Deskripsi Use case diagram 1. Nama Use case : Menu Aktor Deskripsi : Pengguna : Memilih menu yang terdapat pada aplikasi. Skenario Utama Kondisi Awal Aplikasi belum aktif. Reaksi Aktor Reaksi Sistem 1. Jalankan Aplikasi 2. Menampilkan Splash screen 3. Memilih menu 4. Menampilkan Menu Aplikasi 5. Melihat dan Memilih Menu 6. Menghubungkan ke form sesuai menu yang dipilih. Kondisi Akhir Menu yang dipilih Aktif

47 2. Nama Use Case : Enkripsi Aktor Deskripsi : Pengguna : Suatu proses pengaman suatu data yang disembunyikan atau proses konversi data. Skenario Utama Kondisi Awal Aplikasi belum aktif. Reaksi Aktor Reaksi Sistem 1. Memilih Menu Enkripsi 2. Menampilkan List Menu Enkripsi 3. Menilih List Menu 4. Menampilkan Menu Enkripsi dan Dekrip 5. Menginput Plainteks dan Kunci 6. Menerima dan memeriksa inputan. 7. Mengenkripsi data 8. Menampilkan Chiperteks Kondisi Akhir Menu yang dipilih Aktif 3. Nama Use Case : Dekripsi Aktor Deskripsi : Pengguna : Merupakan proses untuk mengubah cipherteks menjadi plainteks atau pesan asli. Skenario Utama Kondisi Awal Aplikasi belum aktif. Reaksi Aktor Reaksi Sistem 1. Memilih Tombol Dekripsi 2. Melakukan Proses Pengembalian 3. Menunggu Hasil Dekripsi 4. Menampilkan Menu Plainteks Kondisi Akhir Menu yang dipilih Aktif 2. Class Diagram Class diagram menggambarkan interaksi atau hubungan antar kelas atau atributatribut yang terdapat pada sistem yang akan dibangun. Di bawah ini merupakan gambaran dari class diagram aplikasi enkripsi yang akan dibangun pada tugas akhir ini. Berikut ini class diagram untuk aplikasi yang akan dibuat:

48 Menu_Utama Bantuan +Tentang +cara +View() +select() 1 * +Enkripsi +Kunci +Dekripsi +select() * 1 * 1 Dekripsi +Chiperteks +Kunci +Plainteks +Input() Enkripsi +Plainteks +Kunci +Chiperteks +input() Gambar 3.5 Class Diagram Aplikasi 3. Statechart Diagram Statechart diagram menggambarkan transisi dan perubahan keadaan (dari satu state ke state lainnya) suatu objek pada sistem sebagai akibat dari stimulation yang diterima. a. Statechart Diagram Memilih Menu Masuk Menu Utama Pilihan Menu entry/ Pilih Menu Tampil Menu Gambar 3.6 Statechart Diagram Memilih Menu

49 b. Statechart Diagram Enkripsi Input Plainteks Input Kunci Output Cipherteks Gambar 3.7 Statechart Diagram Enkripsi c. Statechart Diagram Dekripsi Input Cipherteks Input Kunci Output Plainteks Gambar 3.8 Statechart Diagram Dekripsi

50 d. Statechart Diagram Melihat Bantuan Pilih Menu Bantuan Tentang Langkah Aplikasi Lihat Bantuan Gambar 3.9 Statechart Diagram Melihat Bantuan e. Statechart Diagram Keluar Pilih menu keluar Gambar 3.10 Statechart Diagram Keluar Aplikasi 4. Activity Diagram Activity diagram menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir.

51 a. Activity Diagram Enkripsi dan Dekripsi Pengguna Aplikasi Menjalankan Aplikasi Menampilkan Menu Aplikasi Melihat Menu Menampilkan Class Menu Memilih Menu Menampilkan Class Enkripsi Menginput Plainteks dan Kunci Menampilkan Class Inputan Enkripsi Memilih Menu Enkripsi dan Dekripsi Melakukan Proses Enkripsi Menampilkan Chiperteks Melakukan Proses Dekripsi Menampilkan Plainteks Gambar 3.11 Activity Diagram Enkripsi dan Dekripsi

52 b. Activity Diagram Melihat Bantuan Pengguna Aplikasi Memilih menu Bantuan Menampilkan Class Bantuan Memilih Bantuan Menampilkan pilihan Bantuan Menentukan pilihan Menampilkan Bantuan Gambar 3.12 Activity Diagram Melihat Bantuan 5. Sequence Diagram Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu. Pada sequence diagram menggambarkan skenario atau rangkaian langkahlangkah yang dilakukan pada sistem sebagai respon dari sebuah event untuk menghasilkan output tertentu.

53 Pengguna Aplikasi Enkripsi & Dekripsi DES 1 : Open Aplpications() 2 : Tampil Menu Utama() 3 : Memilih Menu() 4 : Menampilkan Menu Pilihan() 5 : Masukan Plainteks dan Kunci() 6 : Pemrosesan Enkripsi() 8 : Dekripsi Cipherteks() 7 : Menampilkan Cipherteks() 9 : Pemrosesan Dekripsi() 10 : Menampilkan Plainteks() Gambar 3.13 Sequence Diagram Enkripsi dan Dekripsi 3.2.2 Perancangan Struktur Aplikasi Perancangan struktur aplikasi merupakan gambaran dari susunan fitur-fitur yang terdapat dalam aplikasi. Dimana menu utama sebagai pusat atau struktur hirarki paling atas yang merupakan penghubung ke semua fitur pada aplikasi. Berdasarkan fitur-fitur dari hasil analisis kebutuhan fungsional, selanjutnya dapat ditentukan beberapa layar tampilan (screen) fitur dari aplikasi yang akan dibangun, diantaranya: 1. Tampilan layar Menu Utama. 2. Tampilan layar Enkripsi dan Dekripsi. 3. Tampilan layar Setting Interface. 4. Tampilan layar fitur Bantuan tentang Aplikasi.

54 5. Tampilan layar fitur Bantuan procedure Aplikasi. 6. Menu Exit. Menu Utama Enkripsi dan Dekripsi Bantuan Exit Input Plainteks Tentang Input Kunci Langkah Aplikasi Cipherteks Gambar 3.14 Struktur Fitur Aplikasi 3.2.3 Perancangan Antarmuka (Interface) Perancangan antarmuka dibutuhkan untuk mewakili keadaan sebenarnya dari aplikasi yang akan dibangun. Merancang antarmuka merupakan bagian yang penting dari merancang sistem. Biasanya hal tersebut juga merupakan bagian yang paling sulit, karena dalam merancang antarmuka harus memenuhi tiga persyaratan; sebuah antarmuka harus sederhana, sebuah antarmuka harus lengkap, dan sebuah antarmuka harus memilki kinerja yang cepat. Tujuan dari desain antarmuka ini adalah untuk membuat interaksi aplikasi dengan pengguna dengan sesederhana dan seefisien mungkin dalam hal mencapai tujuan sehingga tidak mengurangi kinerja dari aplikasi namun tetap menarik bagi pengguna. Berikut merupakan perancangan antarmuka dari aplikasi yang akan dibangun:

55 1. Rancangan Tampilan Menu Utama Aplikasi Enkripsi dan Dekripsi dengan DES _ X Enkripsi Bantuan 09:08:09 Copyright Aris Susanto 06 Dec 2012 Gambar 3.15 Rancangan Tampilan Menu Utama 2. Rancangan Tampilan Enkripsi dan Dekripsi Aplikasi Enkripsi dan Dekripsi dengan DES _ X Enkripsi Bantuan DES 09:24:30 Exit Plainteks Kunci Cipherteks Pulih Enkripsi Dekripsi Copyright Aris Susanto 06 Dec 2012 Gambar 3.16 Rancangan Tampilan Enkripsi dan Dekripsi

56 3. Rancangan Tampilan Bantuan Aplikasi Enkripsi dan Dekripsi Dengan DES _ X Enkripsi Bantuan Petunjuk 09: 58:48 Copyright Aris Susanto 06 Dec 2012 4. Rancangan Tampilan Tentang Aplikasi Gambar 3.17 Rancangan Tampilan Bantuan Aplikasi Enkripsi dan Dekripsi Dengan DES _ X Enkripsi Bantuan Petunjuk 10:08:09 About Copyright Aris Susanto 06 Dec 2012 Gambar 3.18 Rancangan Tentang Aplikasi