• Tidak ada hasil yang ditemukan

Institutional Repository | Satya Wacana Christian University: Perancangan dan Implementasi Aplikasi Keamanan Pengiriman Data File pada Client – Server Berbasis Algoritma Block Cipher menggunakan Teknik Transposisi dengan Prinsip One Time Pad (OTP)

N/A
N/A
Protected

Academic year: 2018

Membagikan "Institutional Repository | Satya Wacana Christian University: Perancangan dan Implementasi Aplikasi Keamanan Pengiriman Data File pada Client – Server Berbasis Algoritma Block Cipher menggunakan Teknik Transposisi dengan Prinsip One Time Pad (OTP)"

Copied!
28
0
0

Teks penuh

(1)

Perancangan dan Implementasi Aplikasi Keamanan

Pengiriman Data

File

pada

Client

server

Berbasis

Algoritma

Block

Cipher

menggunakan Teknik

Transposisi dengan Prinsip

One Time Pad

(OTP)

Artikel Ilmiah

Dwi Agung Saktiyono (672010176) Dian W. Chandra, S.Kom., M.Cs.

Alz Danny Wowor, S.Si., M.Cs.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

(2)

Perancangan dan Implementasi Aplikasi Keamanan

Pengiriman Data

File

pada

Client-server

Berbasis

Algoritma

Chiper Block

dengan Prinsip

One Time Pad

(OTP)

Artikel Ilmiah

Diajukan kepada Fakultas Teknologi Informasi

untuk memperoleh Gelar Sarjana Komputer

Peneliti :

Dwi Agung Saktiyono (672010176) Dian W. Chandra, S.Kom., M.Cs.

Alz Danny Wowor, S.Si., M.Cs.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

(3)
(4)
(5)
(6)
(7)
(8)
(9)

Perancangan dan Implementasi Aplikasi Keamanan Pengiriman Data File

pada Client server Berbasis Algoritma chiper block dengan Prinsip One Time Pad (OTP)

Email: 1) 672010176@student.uksw.edu, 2) dian.chandra@staff.uksw.edu, 3) alzdanny.wowor@staff.uksw.edu

Abstract

Cryptography is one of the security of data or information that can be implemented on a computer network. Computer networks are quite spacious allowing the vulnerability of crime in cyberspace, and cryptography is one of solution that can be used. This study designed a cryptographic cipher block using the technique of transposition and prisnsip One Time Pad algorithm for data security that is applied in data transmission applications on the client - server, and also designed padding key to be better facilitate the process of equating long with the plaintext characters. Result of the study, which is designed to run cryptography and applied to the network client - server accordance with a five-tuple (five-tuple).

Keywords: Block Cipher, Cryptography, Transposition, Client – Server, Padding.

Abstrak

Kriptografi merupakan salah satu keamanan data atau informasi yang dapat diimplementasi pada sebuah jaringan komputer. Jaringan komputer yang cukup luas memungkinkan rentannya kejahatan di dunia maya, dan kriptografi merupakan salah satu solusi yang bisa digunakan. Penelitian ini merancang kriptografi cipher blok dengan menggunakan teknik transposisi acak serta prisnsip algoritma One Time Pad untuk keamanan data yang diterapkan di aplikasi pengiriman data pada klien – server, dan juga merancang padding kunci untuk lebih memudahkan proses menyamakan panjang dengan karakter plainteks. Hasil dari penelitian ini, yaitu kriptografi yang dirancang dapat berjalan dan diterapkan pada jaringan klien – server sesuai dengan lima-tuple (five-tuple).

Kata Kunci: Cipher Blok, Kriptografi, Transposisi, Klien – Server, Padding.

1) Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana.

(10)

1

1. Pendahuluan

One time pad (OTP) adalah salah satu algoritma kriptografi yang memiliki

tingkat keamanan paling baik [1]. Algoritma OTP memiliki keunggulan dalam melakukan proses enkripsi dan dekripsi yaitu setiap karakter plainteks mempunyai kunci masing-masing yang digunakan untuk mengenkripsi dan mendekripsi [4]. Sehingga membuat kriptanalis kesulitan dalam menemukan plainteks asli jika kunci yang digunakan adalah kunci yang acak. Sisi yang lain, OTP memiliki kelemahan dalam penggunaannya untuk melakukan enkripsi dan dekripsi yaitu OTP hanya cocok digunakan untuk melakukan enkripsi dan dekripsi pesan yang berukuran kecil atau pesan singkat saja [1]. Hal ini dikarenakan panjang kunci yang digunakan harus sama dengan panjang pesan, sehingga semakin besar panjang pesan akan berakibat semakin besar pula panjang kunci, jadi file yang berukuran besar akan lebih sulit untuk dilakukan proses enkripsi dekripsi.

Adapun algoritma kriptografi lainnya yang memiliki keunikan dengan karakter dan spesifikasi yang berbeda-beda. Salah satunya adalah block cipher, algoritma ini melakukan enkripsi dan dekripsi berdasarkan ukuran blok, yang biasanya ditentukan berdasarkan banyak karakter atau banyak bit dari blok tersebut. Block cipher merupakan kriptografi yang banyak digunakan sebagai teknik pengamanan di internet, transaksi keuangan, dan juga dalam berkomunikasi. Selain itu juga teknik ini digunakan karena secara matematis tidak memerlukan operasi yang kompleks. Dimana algoritma block chiper pada prosesnya memerlukan waktu dan memori yang sedikit dibandingkan dengan kriptografi jenis yang lainnya [2].

Sistem jaringan client server menjadi salah satu media untuk mengirimkan informasi, tidak hanya informasi umum tetapi untuk informasi yang bersifat rahasia. Agar informasi tersebut tidak jatuh ke pihak yang salah, kriptografi berperan dalam memgamankan informasi-informasi tersebut pada saat pesan ditransmisikan ke dalam jaringan.

Berdasarkan pemahaman yang sudah dijelaskan penelitian ini merancang algoritma baru yang mengacu pada algoritma cipher block dengan menggunakan teknik transposisi dan prinsip OTP, untuk mengatasi prinsip OTP yaitu panjang karakter plainteks harus sama kunci maka diperlukan proses padding pada kunci agar panjangnya memenuhi panjang plainteks yang ada. Algoritma cipher block

yang juga memiliki fungsi kerja yang sama dengan OTP yaitu menjumlah (xor) setiap karakter plainteks dengan kunci sehingga prinsip OTP dapat digunakan dalam penelitian ini, sehingga nantinya penelitian diharapkan dapat menjadi alternatif pengamanan data file yang kemudian diterapkan pada sebuah aplikasi pengiriman client – server melalui jaringan untuk memenuhi keamanan sistem.

2. Kajian Pustaka

Pada penelitian sebelumnya yang berjudul “Sistem Pengamanan Data

Menggunakan Metode MD5 dan Private Key pada Aplikasi berbasis Client

Server”, penelitian ini membuat aplikasi pengamanan data menggunakan metode

(11)

2

data nasabah dan form login nasabah (client) dengan menggunakan portal enkripsi yang diaktifkan atau di non-aktifkan [3], dengan begitu data nasabah yang tersimpan pada database akan aman karena data yang tersimpan dalam keadaan cipherteks. Pada penelitian tersebut hanya melakukan enkripsi ketika file sampai

di server, dan memakai algoritma standar MD5. Penenlitian ini dijadikan acuan

membuat kripotgrafi simetris yang baru, yang nantinya dapat digunakan pada pengamanan Client – server.

Penelitian lain yang pernah dilakukan mengenai algoritma one time pad

yaitu berjudul “Modifikasi Kriptografi One Time Pad (OTP) Menggunakan

Padding Dinamis dalam Pengamanan Data File” yang dimana penelitian ini

membuat aplikasi pengamanan data file dengan menerapkan teknik kriptografi

One Time Pad (OTP) modifikasi, sehingga algoritma One Time Pad (OTP) yang

diterapkan lebih praktis dan dapat diimplementasi ke semua aplikasi-aplikasi yang digunakan dalam mengamankan data file. Algoritma One Time Pad (OTP) yang dimodifikasi dengan melakukan tiga kali proses dan menggunakan bit shifting pada kunci dan plainteks. Kunci pada proses kedua dan ketiga digenerate agar bertambah sebanyak karakter dalam plainteks, untuk proses padding f+(ASCII-f) semisal proses dilakukan pada karakter “f” maka karakter berikutnya yang dihasilkan “fghijklm” berurut hingga memutari ASCII dan berhenti di “e”. Hasil dari penelitian ini adalah teknik kriptografi yang dapat diaplikasikan pada pengamanan file berbasis teks [4]. Proses padding yang dilakukan secara dinamis menggunakan ASCII 256 membuat padding pada kunci tidak bervariasi, sehingga mudah bagi kriptanalis untuk memecahkannya. Penenlitian ini dijadikan dasar untuk membuat padding baru berdasarkan total ASCII, walaupun berbeda proses dalam meregenerasi kunci.

Berdasarkan penelitian yang pernah dilakukan tentang aplikasi keamanan dengan teknik kriptografi, maka dalam penelitian ini, akan dilakukan penelitian perancangan dan implementasi aplikasi keamanan pengiriman data file pada client

server dengan menerapkan algoritma block cipher dalam blok 64 bit yang

dirancang untuk proses enkripsi dan deskripsi file. Enkripsi (E) diakukan terhadap blok bit menggunakan bit-bit kunci (K) yang ukurannya sama dengan ukuran blok plainteks (P). Algoritma enkripsi menghasilkan blok cipherteks (C) yang berukuran sama dengan blok plainteks. Dekripsi (D) dilakukan dengan cara serupa seperti pada enkripsi [1]. Enkripsi pada plainteks dapat dinyatakan dengan persamaan (1).

(1) Sedangkan dekripsi dinyatakan dengan Persamaan (2).

(2) Pada proses enkripsi plainteks dimasukkan terlebih dahulu, kemudian di tahapan enkripsi plainteks diproses dengan kunci sesuai ketentuan setiap putaran yang dibuat, proses plainteks dilakukan hingga menghasilkan cipherteks di putaran proses akhir. Proses dekripsi dapat dilakukan dengan mengembalikan

(12)

3

nilai dari enkripsi, dimana cipherteks diproses dengan kunci hingga menghasilkan plainteks.

Dalam perancangan sebuah kriptografi harus juga memenuhi sebuah sistem kriptografi. Oleh karena itu, berikut ini merupakan aturan yang harus dipenuhi oleh sebuah kriptosistem dengan definisi lima tuple [1].

1. P adalah himpunan plainteks, 2. C adalah himpunan cipherteks, 3. K adalah ruang kunci (keyspace),

4. E adalah himpunan fungsi enkripsi ,

5. D adalah himpunan fungsi dekripsi .

Teknik transposisi pada dasarnya membuat cipherteks dengan menggantikan posisi objek-objek plainteks tanpa menggantikan objek plainteks tersebut, jadi pada proses transposisi tidak diperlukan karakter lain. Pada metode transposisi ini pembacaan matrik dilakukan dengan cara pembacaan kolom perkolom sesuai dengan kunci yang digunakan [7]. Sehingga dapat dijelaskan transposisi itu sendiri merubah urutan plainteks sesuai dengan ketentuan yang dibuat tanpa merubah atau menambah karakter yang ada [9]. Contoh teknik transposisi :

1. Plainteks : AYAH PERGI KE KANTOR 2. Cipherteks : HAYA IGREP EK ROTNAK

Proses transposisi sederhana dimana plainteks disusun ke arah kanan yang kemudian dilakukan perubahan urutan setiap karakternya, hasil transposisi terlihat pada susunan cipherteks. Nama lain teknik ini adalah permutasi, karena transpose setiap huruf didalam teks sama dengan mempermutasikan karakter-karakter tersebut [10]

Padding dapat diartikan sebagai bantalan atau lapisan, berfungsi sebagai

sisipan atau mengisi ruang kosong. Dalam penyimpanan, pengiriman atau pemrosesan file disisipkan beberapa blok data untuk memenuhi ukuran minimum, untuk memaksa bidang-bidang tertentu dari data kontrol atau data pengguna ke posisi ukuran tertentu, atau untuk mencegah dari penduplikasian pola bit yang memiliki arti kontrol tertentu [6].

Topologi merupakan konsep untuk menghubungkan beberapa atau banyak komputer sekaligus menjadi suatu jaringan yang saling terhubung [3]. Topologi jaringan pada perancangan yang akan dibangun dapat dilihat pada Gambar 2.

Gambar 1 Topologi jaringan[3]

(13)

4

Arsitektur jaringan Client – server merupakan model konektivitas pada jaringan yang membedakan fungsi komputer sebagai client dan server. Arsitektur ini menempatkan sebuah komputer sebagai server. Pada dasarnya, client adalah konsumen layanan dan server penyedia layanan.

3. Metode Penelitian

Metode yang digunakan dalam pembuatan aplikasi terdapat lima tahap yang akan dilakukan yaitu, (1) Pengumpulan Data, (2) Analisa Kebutuhan, (3) Perancangan Modifikasi dan Pembuatan Program, (4) Evaluasi, (5) Penulisan Laporan Hasil Penelitian.

Gambar 2 Tahap Penelitian

Tahapan penelitian pada Gambar 2 dapat dijelaskan sebagai berikut : Tahap pertama : Pada tahap ini dilakukan pengumpulan data berupa literatur terkait dengan proses enkripsi dan dekripsidata file menggunakan algoritma block

cipher yang dirancang dalam blok 64 bit dengan teknik transposisi. Tahap kedua :

tahap analisa kebutuhan yaitu, melakukan analisa mengenai kebutuhan apa saja yang dibutuhkan dalam perancangan algoritma block cipher, dan analisis bagaimana algoritma cipher blok diterapkan pada jaringan client – server. Tahap ketiga : Pada tahap ini melakukan perancangan algoritma yang akan diimplementasi dan membuat program berdasarkan kebutuhan sistem yang dibangun agar sistem dapat terpenuhi sesuai kriteria. Tahap keempat : Evaluasi; Tahap selanjutnya evaluasi yaitu menjalankan program serta analisis hasil pengujian, apakah aplikasi dapat bekerja sesuai kriteria sistem yang dibangun terkait proses enkripsi dan dekripsi data file. Tahap kelima : Penulisan Laporan; Tahap akhir ini memaparkan seluruh proses program yang telah dijalankan, dan akan ditulis pada laporan penelitian.

Adapun kriteria dalam penelitian yang dilakukan, meliputi : (1) Implementasi aplikasi pengiriman data file berbasis client server, (2) Proses enkripsi dekripsi data menggunakan rancangan algoritma block cipher, (3) Inputan data file berupa, *.doc, *.docx, *.pdf, (4) Enkripsi dan dekripsi hanya dilakukan pada karakter (teks), (5) Server hanya sebagai media penyimapan file

(14)

5

Perancangan client – server yang dibangun juga memiliki desain dimana melibatkan setiap proses yang dilakukan server terhadap client ataupun sebaliknya. Desain perancangan sistem dapat dilihat pada Gambar 3.

Gambar 3 Desain Perancangan Sistem

Gambar 3 menunjukkan desain perancangan sistem, dimana client

(pengirim) memilih file lalu input melalui aplikasi client, kemudian file dikirim ke

server. Saat diserverfile akan disimpan sementara, server akan mengirimkan atau

meneruskan pesan file ke client (penerima) yang sedang online. Apabila client

offline maka file akan disimpan diserver untuk sementara waktu hingga client

tujuan online dan merequest file.

Pada perancangan algoritma ini dilakukan dalam dua proses, yaitu proses enkripsi dan dekripsi. Enkripsi merupakan proses dimana isi file asli diubah ke bentuk karakter yang tidak beraturan atau simbol tetapi masih menggunakan ASCII sebagai dasar karakter. Proses enkripsi dekripsi algoritma block cipher.

. Berdasarkan dari teknik transposisi umum diatas, perancangan yang akan dilakukan menggunakan transposisi acak pada tiap bit perkarakternya, hal ini bertujuan agar dapat memaksimalkan keacakkan bit.

Gambar 4 Proses Enkripsi algoritma block cipher Secara umum

Gambar 4 merupakan bagan umum proses enkripsi yang terdapat pada aplikasi pengiriman data file. Tahapan proses enkripsi perancangan algoritma

block cipher secara umum dijelaskan, (1) Menyiapkan plainteks yang akan

(15)

6

pengacakkan dengan transposisi, menghasilkan plainteks baru, XOR dengan key), (3) Setiap putaran enkripsi pada key terdapat urutan proses masing-masing.

Proses plainteks dengan key dilakukan sebanyak 3 putaran untuk dapat menghasilkan cipherteks. Sedangkan untuk dekripsi dapat dilakukan dengan mengembalikan proses dari enkripsi.

Use case adalah rangkaian sekelompok yang saling terkait dan membentuk

sistem secara teratur yang dilakukan atau diawasi oleh sebuah actor. Lebih jelasnya dapat dilihat di Gambar 4 [5].

Gambar 4Use Case Diagram sistem Pengiriman File dan Enkripsi – Dekripsi pada client-server

Gambar 4 merupakan use case diagram sistem pengiriman file dan proses enkripsi dekripsi. Dari sisi client jika mengirim file, langkah awal client login

terlebih dahulu, dengan begitu client telah menyatakan ke server bahwa sedang

online. Client menginput file setelah itu input key yang akan digunakan untuk

mengenkripsi file tersebut, kemudian menentukan client tujuan. Proses enkripsi terjadi ketika client mengirim file.

Dari sisi client penerima. Client login, setelah login kemudian masuk pemberitahuan pada pesan kotak masuk, client dapat memilih file yang kemudian didekripsi menggunakan key yang sesuai dengan key dari pengirim.

Registrasi, pendaftaran client dilakukan pada form registrasi dengan mengisikan nama pada User ID dan password. setelah selesai registrasi data akan di kirim dan diproses ke server untuk di autentikasi perihal menejemen user. Jika nama User ID yang dibuat sama dengan pendaftar lain yang sudah terdaftar maka

server akan melakukan penolakan secara otomatis, dengan begitu pendaftar baru

harus mengganti dengan nama yang berbeda.

(16)

7

Gambar 5Sequance Diagram sistem Client Pengirim

Gambar 5 menunjukkan diagram sequence sistem. Proses dimulai dari

client yang melakukan pengiriman. Client login, setelah masuk client melakukan

proses pengiriman dengan memilih file terlebih dahulu, kemudian masukkan kunci dan tentukan client tujuan. Setelah itu file dienkripsi dan dikirim, hasil enkripsi berupa cipherteks yang kemudian disimpan sementara di server.

Sedangkan dari sisi diagram sequence penerima. Client penerima login

terlebih dahulu yang kemudian server memberikan akses untuk online lalu client

mendapatkan pemberitahuan pesan dari server, pesan yang diterima dalam bentuk cipherteks, untuk membukanya client harus memasukkan kunci yang sesuai dari pengirim agar file dapat didekripsi, jika kunci dinyatakan valid file dapat didekripsi dan kembali menjadi plainteks. Alur sequence diagram client penerima dapat dilihat pada Gambar 6.

(17)

8

Activity diagram menggambarkan berbagai alir aktivitas dalam sistem

yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi [5]. Alur activity diagram dapat dilihat pada Gambar 7.

Gambar 7Activity Diagram sistem

Gambar 7 menunjukkan activity diagram Sistem. Cara kerja sistem dimulai dari client yang melakukan pengiriman file yang telah terenkripsi dan menjadi cipherteks. Kemudian server menampung file yang dikirim dan mengecek client tujuan. Saat client tujuan online dapat langsung menyimpan file

yang mana file tersebut direquest dari server. Ketika file telah dikirimkan oleh

server, selanjutnya proses dekripsi dilakukan untuk merubah cipherteks menjadi

file semula oleh client penerima. Tetapi apabila client penerima offline maka file

akan tetap tersimpan di server dalam bentuk cipherteks.

4. Hasil dan Pembahasan

(18)

9

Gambar 8 Bagan Alur Enkripsi

Berdasarkan Gambar 11 plainteks diubah ke bentuk bit dan digeser kekiri 3 kali, lalu masukkan kedalam kolom atau blok 1 dilakukan teknik transposisi, yang kemudian menghasilkan P1. Pada key juga dilakukan proses rubah ke bit,

lalu masukkan kedalam matriks 8x8 dan diacak dengan pergeseran rotasi, hasil dari acak tersebut menghasilkan K1. Setelah mendapatkan P1 dengan K1 kemudian

di XOR, hasil XOR menghasilkan P2. P2 kemudian digeser kekiri 6 kali, lalu

masukkan ke kolom atau blok 2 dan dilakukan proses trasnposisi. Begitu juga K1

dimasukkan ke dalam matriks 8x8 lalu diacak dengan pergeseran rotasi dan menghasilkan K2. Kemudian XOR P2dengan K2, dari XOR tersebut menghasilkan

P3, selanjutnya P3 digeser kekiri 2 kali, dan masukkan ke kolom 3 lalu diacak. K2

dimasukkan ke bentuk matriks lagi, lalu acak menghasilkan K3. Setelah itu XOR

P3 dan K3, hasil XOR inilah yang menjadi cipherteks, untuk setiap putaran

memiliki aturan transposisi yang berbeda-beda. Proses alur dekripsi merupakan kebalikan dari alur enkripsi yaitu dari cipherteks diproses hingga menghasilkan plainteks.

Proses pertama dilakukan pergeseran dan transposisi terhadap plainteks.

Karakter plainteks berupa “JARINGAN”, lalu ubah setiap karakter ke bentuk bit.

Semisal P adalah plainteks sedangkan d adalah bit tiap karakter kunci, sehingga dapat dituliskan :

P P P Pn

P 1, 2, 3... (3)

1 2 3 8

1 b,b ,b ...b P

9 10 11 16

(19)

10

Plainteks “JARINGAN” dikonversi ke dalam bentuk biner :

J = 01001010, P1

b1,b2,b3,b4,b5,b6,b7,b8

proses pergeseran bit ke kiri 3 kali.

J = 01010010, P1

b4,b5,b6,b7,b8,b1,b2,b3,

Gambar 9 Ketentuan Transposisi Blok 3

(20)

11

Gambar 10 memperlihatkan tetapan transposisi plainteks untuk pola acak dari kolom 3 ke acak 3 yang diproses dalam blok 64 bit. Untuk setiap putaran pola pengacakkan transposisi dan pergeseran dilakukan secara berbeda.

Sedangkan proses kunci yang pertama dilakukan sama halnya dengan plainteks, merubah karakter kunci ke dalam bentuk bit. Kemudian dilakukan proses pemasukkan dan pengambilan bitkey ke kolom matriks dari kiri ke kanan, dari baris pertama sampai baris terakhir yang ditunjukkan pada arah panah. Alur masuk dan ambil bitkey pada matriks dapat dilihat pada Gambar 10.

Gambar 10 Alur Masuk dan Ambil Bit Key

Penerapan masuk bit kolom dimulai dari d1 sampai pada kolom d8 dan dilanjutkan berikutnya yang dimulai dari baris kedua d9 sampai d16, hal yang sama dilakukan sampai kolom d64. Penerapan masuk dapat dilihat pada gambar 11.

Gambar 11 Penerapan Masuk dan Ambil Bit Key

(21)

12

Gambar 12 Pergeseran Rotasi Kanan Kiri Gambar 13 Pergeseran Rotasi Atas Bawah

Banyaknya pergeseran rotasi Gambar 12 dan Gambar 13 disesuaikan pada tiap putarannya sehingga menghasilkan key baru, yang nantinya akan di XOR dengan plainteks dan menghasilkan cipherteks. Maka hasil pergeseran rotasi tersebut dapat dilihat pada Gambar 14.

Gambar 14 Hasil Pergeseran Rotasi key

Pada perancangan algoritma cipher block juga dibutuhkan padding key, untuk padding sendiri memerlukan beberapa tahap yang harus dilakukan agar dapat dilaksanakan. Tahapan dan penjelasan dapat dilihat pada Gambar 15.

Gambar 15 Skema Proses padding pada Key

Pada Gambar 15 menunjukkan proses penambahan karakter pada key

(padding). Proses padding dapat dilakukan apabila panjang karakter key yang

(22)

13

bertujuan agar key bisa sama panjang dengan plainteks. Berikut penjelasan alur kerja padding :

1. Plainteks (P) yang telah disiapkan kemudian dibaca panjang karakternya.

P P P Pn

P  1, 2, 3...

(4) 2. Karakter key (K)yang diinput kemudian dilihat nilai decimal dalam ASCII dan

disesuaikan dengan masing-masing inputan karakternya.

3. Proses penambahan karakter ASCII pada key dilakukan bertahap, memenuhi

setengah dari total ASCII terlebih dahulu, kemudian memenuhi setengah berikutnya secara bergilir pada karakter berikutnya sesuai urutan inputan. Untuk tahap penambahan dibuat berurutan dengan melewati 2 lompatan. Banyak karakter kunci yang diinput, tiap karakter dilihat nilai desimalnya dalam ASCII, kemudian masing2 karakter ditambah dengan panjang kunci yang diinput. Tahap berikut merupakan desain tampilan login, dimana login merupakan proses pintu masuk bagi pengguna atau client untuk dapat mengakses suatu layanan ke server. Desain login dapat dilihat pada Gambar 16.

Gambar 16 Tampilan Login Client

Pada login Gambar 16, terdapat textboxusername dan textboxpassword

untuk memasukkan nama pengguna dan kata sandi yang telah didaftarkan. Kemudian terdapat buttonmasuk untuk masuk ke aplikasi client dan buttonbatal jika ingin keluar dari form login, dan textlinkdaftarbaru untuk membuat akun baru. Tampilan daftar pengguna baru dapat dilihat pada Gambar 17.

(23)

14

Gambar 17 merupakan tampilan daftar penguna baru dimana terdapat

textboxUserId untuk memasukan nama yang ingin didaftar, textboxPassword

untuk mengisi kata sandi, textboxRe-Password untuk mengisikan kembali kata sandi sebelumnya, buttonDaftar untuk mendaftarkan Id baru ke server dan

buttonBatal a tidak jadi medaftar.

Berikutnya tampilan aplikasi client, setelah pengguna berhasil login maka akan masuk ke aplikasi client. Lebih jelasnya dapat dilihat pada Gambar 18.

Gambar 18 Tampilan Aplikasi Client Kotak Masuk

Tampilan aplikasi client pada Gambar 19 terdapat textboxServer sebagai alamat ip server dan textboxUser sebagai penanda Id pengguna, juga terdapat tab

kotak masuk untuk menampung pesan yang masuk ke client, dimana tabel memiliki atribut (pengirim, nama file, tipe, ukuran, waktu dikirim), di list kotak masuk terdapat buttonhapus dan buttondownload dan juga dilengkapi

buttonPerbaharui untuk menampilkan pesan yang akan masuk.

Sedangkan tampilan untuk tab kirim file lebih jelasnya dapat dilihat pada Gambar 19.

Gambar 19 Tampilan Aplikasi Client Kirim File

Gambar 19 memperlihatkan tampilan aplikasi client kirim, terdapat lokasi

file untuk mengambil atau memilih file dari drive penyimpanan. Kemudian

(24)

15

textboxKunci untuk mengisi kunci yang akan digunakan untuk enkripsi file,

buttonPenerima untuk memilih client atau pengguna tujuan, dalam kotak

penerima terdapat listtabel penerima dan status client, button simbol “+” untuk menambahkan penerima ke textboxPenerima dan buttonKirim untuk mengirimkan sekaligus mengenkripsi file.

Database yang ada pada server berfungsi sebagai tempat penyimpanan file

dari client pengirim untuk diteruskan ke client penerima, data file yang tersimpan dalam database dapat dilihat pada Gambar 20.

Gambar 20 Tampilan Database Server

File yang diujikan berupa file abstrak bertipe .*txt dengan ukuran sebelum

dienkripsi sebesar 2.05 KB. Isi file abstrak dapat dilihat pada Gambar 21.

Gambar 21 Pengujian File.txt

Pada Gambar 22 dapat dilihat hasil enkripsinya tidak dapat terbaca seperti pada pesan semula namun tetap terlihat karakter ASCII. Kemudian dekripsi terhadap file *.txt adalah kebalikan dari proses enkripsi yaitu merubah dari cipherteks ke bentuk plainteks.

Gambar 22 Hasil Enkripsi.File .txt

Kriptografi dapat dibuktikan sebagai sebuah sistem dengan memenuhi 5

tuple P, C, K, E, D. Ditunjukkan bahwa perancangan ini memenuhi kelima

(25)

16

berhingga dari kunci yang menggunakan total 256 karakter pada ASCII. Enkripsi E dan D Dekripsi dimana setiap ek : PC dan dk : C → P adalah fungsi sedemikian hingga dk(ek(x)) = x, untuk setiap plainteks xP. Pembahasan sebelumnya telah membahas proses enkripsi dan dekripsi, sehingga telah memenuhi tuple E dan D. Karena telah memenuhi kelima kondisi maka algoritma

block cipher mengunakan teknik transposisi merupakan sebuah sistem kriptografi.

Pada tahap berikutnya akan membahas grafik pengujian terhadap memory dan waktu untuk proses enkripsi pengujian dilakukan pada aplikasi client – server. pengujian dilakukan dengan isi konten file yang sama tetapi format berbeda yaitu, *.doc, *.docx, *.txt, *.pdf, dan untuk setiap file dienkripsi dengan kunci yang

sama “FAKULTAS”

Pada Grafik 1 dapat dilihat bahwa untuk sumbu Y merupakan satuan waktu dalam millisecond (ms) dan sumbu X ukuran tiap file dalam satuan KB. Abstrak.txt dengan ukuran 2.05 KB memiliki waktu proses sebesar 35388.2920 (ms), Abstrak.docx dengan ukuran 13.5 KB memiliki waktu proses sebesar 202885.7270 (ms), Abstrak.doc dengan ukuran 31.0 KB memiliki waktu proses sebesar 328529.8380 (ms) dan Abstrak.pdf dengan ukuran 86.4 KB memiliki waktu proses sebesar 857058.0480 (ms),dari hasil tersebut dapat disimpulkan yakni proses operasi untuk setiap file selalu berbeda tergantung besaran ukuran dari file yang diujikan, semakin besar ukuran yang dimiliki maka semakin lama proses yang dibutuhkan terhadap waktu, tetapi untuk proses operasi dalam byte

semakin besar ukuran file maka semakin kecil waktu yang dihasilkan.

Grafik 1 Pengujian Terhadap Waktu

Pada Grafik 2 dapat dijelaskan bahwa warna biru menunjukkan besaran memori untuk file asli, sedangkan untuk warna merah merupakan besaran memori untuk file hasil enkripsi, sumbu Y merupakan besaran memori dalam bit dan sumbu X merupakan ukuran file yang diujikan dengan format yang berbeda, sehingga Grafik 2 dapat diambil kesimpulan yaitu rata – rata dari selisih file

sebelum dan sesudah diujikan karena proses padding berdasarkan file yang diujikan yaitu sebesar 0.037325%, maka selisih antara file sebelum dan sesudah tidak signifikan terhadap ukuran file yang semakin besar.

(26)

17

Grafik 2 Pengujian Terhadap Memori

Beta testing dilakukan dengan membagi daftar pertanyaan kepada 30

responden dan daftar pertanyaan yang ada kemudian diisi bersamaan dengan pengujian aplikasi secara langsung. Hasil pengujian dapat dilihat pada Tabel 1.

Tabel 1 Hasil Data Daftar Pertanyaan

No. Pertanyaan

5 Aplikasi dapat melakukan proses enkripsi dan

dekripsi - 16 14

6 Aplikasi dapat menambah pengguna atau

client baru - 16 14

7 Aplikasi mudah digunakan dan memiliki

tampilan yang menarik 5 18 7

8 Aplikasi membantu dalam mengamankan isi

file 1 11 18

Berdasarkan hasil dari daftar pertanyaan untuk pengujian kepada pelanggan pada Tabel 1, dapat disimpulkan bahwa: aplikasi sudah berjalan pada sistem operasi windows karena 56% responden setuju dan 43% lainnya sangat setuju, aplikasi terkoneksi dengan baik karena 56% responden setuju dan 43% lainnya sangat setuju, aplikasi dapat mengirim pesan ke client tujuan karena 56%

(27)

18

responden setuju kemudian 43% lainnya sangat setuju, aplikasi dapat menerima pesan dari client pengirim karena 56% responden setuju dan 43% lainnya sangat setuju, aplikasi dapat melakukan proses enkripsi dan dekripsi karena 53% responden setuju dan 46% lainnya sangat setuju, aplikasi dapat menambah pengguna atau client baru karena 53% responden setuju dan 46% lainnya sangat setuju, aplikasi mudah digunakan dan memiliki tampilan yang menarik karena 60% responden setuju, aplikasi membantu dalam mengamankan isi file karena 60% responden sangat setuju.

5. Kesimpulan

Rancangan algoritma dengan menggunakan teknik transposisi dapat diimplementasikan pada jaringan client – server dengan memenuhi 5 tuple. Modifikasi padding yang diterapkan pada algoritma block cipher dengan menggunakan total ASCII sebagai sisipan pada kunci untuk menyamakan panjang kunci dengan cipherteks telah mampu menghasilkan varian kunci yang maksimal digunakan dalam proses enkripsi-dekripsi file berukuran besar.

Saran pengembangan yang dapat diberikan untuk penelitian lebih lanjut sebagai berikut. Aplikasi dapat dikembangkan tidak hanya mengenkripsi-dekripsi

file bertipe *.txt, *.doc, *.docx, *.pdf tetapi juga tipe file dokumen yang lainnya. Rancangan algoritma yang menerapkan prinsip OTP menjadi kekurangan tersendiri, sehingga untuk penelitian selanjutnya dapat diharapkan prisnsip yang digunakan berbeda agar efisiensi waktu dapat lebih baik.

6. Daftar Pustaka

[1] Munir, R. 2006. Kriptografi,Bandung: Informatika.

[2] Sabriyanto, & Virgono, A, 2008. Analisis Perbandingan Performansi Algoritma Camellia dan AES (Advanced Encryption Standard) pada Block

Cipher. Bandung : Institut Teknologi Bandung.

[3] Andreanus, Dody. 2011. Sistem Pengamanan Data Menggunakan Metode

MD5 dan Private Key pada Aplikasi berbasis Client-server (studi kasus :

KSP Buah Hati Bawen). Salatiga : Universitas Kristen Satya Wacana. [4] Arie Eko T. 2014. Modifikasi Kriptografi One Time Pad (OTP)

Menggunakan Padding Dinamis dalam Pengamanan Data File. Salatiga :

Universitas Kristen Satya Wacana.

[5] Nugroho Adi. 2005. Rational Rose untuk Pemodelan Berorientasi Objek, Bandung : Informatika.

[6] Bernadette S. 2006. Webster's New World Hacker Dictionary. Santa Barbara, California:ABC-CLIO.

[7] Danang Indra S. 2009. Implementasi Teknik Kriptografi simetrik dengan

Metode Permutasi Transposisi pada Data Citra Digital. Salatiga :

(28)

19

[8] N. Nagaraj, “One Time Pad as a nonlinear dynamical system,”

Communications in Nonlinear Science and Numerical Simulation, vol. 17, no. 11, pp. 4029-4036, Nov. 2012.

[9] Ir.Yusuf Kurniawan, MT. 2004, Kriptografi Keamanan Internet dan

Jaringan Komunikasi,Bandung: Informatika.

[10] Maureen L:inda. 2010. Metode Enkripsi baru Triple Transposition

Gambar

Gambar 1 Topologi jaringan[3]
Gambar 2 Tahap Penelitian
Gambar 3 Desain Perancangan Sistem
Gambar 4 Use Case Diagram sistem Pengiriman File dan Enkripsi – Dekripsi pada client-server
+7

Referensi

Dokumen terkait

diawasi, Ooh kalau itu tidak pernah mas, soalnya saya kalau berobat di RSPAW Salatiga cuman minum obat aja P1 (87-135) Pengontrolan yang dilakukan oleh petugas atapun

imunisasi pada penelitian ini didukung oleh penelitian Prusty et al yang menemukan alasan ketidaklengkapan imunisasi anak yang paling banyak diutarakan responden secara

4.10 Distribusi Frekuensi Hubungan Status Gizi Dengan Kelalahan Kerja Pada Buruh Angkut di Gudang Distribusi Bulog Mangli Jember 78. 4.11 Distribusi Frekuensi Hubungan Beban

[r]

dihadapi pada instalasi intensif benar-benar membutuhkan kerja sama yang baik serta perhatian penuh dari seluruh tenaga kesehatan yang berada di rumah sakit serta

[r]

Kegiatan yang dilakukan pada tahap ini yaitu menerapkan tindakan yang telah dirancang dalam Rencana Pelaksanaan Pembelajaran (RPP) yang telah disusun di dalam

Pokia Pekerjaan Konstruksi Unit Layanan Pengadaan (ULP) Kabupaten Lebong dengan inimengumumkan hasil. Pelelangan Umum dengan Pmcakualifikasi pada Dinas Pekeriaan Umum