• Tidak ada hasil yang ditemukan

Institutional Repository | Satya Wacana Christian University: Implementasi Teknik Kriptografi AES dan One Time Password pada Aplikasi Pelaporan Berbasis Social Media

N/A
N/A
Protected

Academic year: 2019

Membagikan "Institutional Repository | Satya Wacana Christian University: Implementasi Teknik Kriptografi AES dan One Time Password pada Aplikasi Pelaporan Berbasis Social Media"

Copied!
20
0
0

Teks penuh

(1)

Implementasi Teknik Kriptografi AES dan

One Time

Password

pada Aplikasi Pelaporan Berbasis

Social Media

Artikel Ilmiah

Diajukan kepada Fakultas Teknologi Informasi

Untuk Memperoleh Gelar Sarjana Komputer

Peneliti :

Willy Wijaya Soegiarto (672014031)

Hindriyanto Dwi Purnomo, ST., MIT., Ph.D

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

(2)
(3)
(4)
(5)
(6)

1 1. Latar Belakang Masalah

Manusia pada dasarnya merupakan makhluk sosial yang selalu membutuhkan interaksi dan komunikasi dengan manusia lainnya. Sifat dasar manusia inilah yang pada akhirnya mendorong pengembangan IPTEK pada bidang informasi dan komunikasi. Semakin hari, interaksi dan komunikasi antar individu semakin dipermudah dengan adanya temuan-temuan di bidang teknologi informasi dan komunikasi. Salah satu contoh produk teknologi yang telah banyak digemari masyarakat dan banyak dimanfaatkan untuk sarana bertukar informasi saat ini adalah Social Media. Terlepas dari berbagai perdebatan mengenai dampak positif dan dampak negatif yang ditimbulkan oleh Social Media, pada kenyataannya Social Media saat ini telah mengakar dalam diri masyarakat dan susah untuk dipisahkan dari kehidupan sehari-hari masyarakat zaman sekarang.

Social Media sendiri sangat erat hubungannya dengan aktivitas pertukaran data, terutama proses pengunggahan data (upload). Banyaknya aktivitas upload

data yang dilibatkan dalam Social Media ini tentunya memperbesar peluang untuk terjadinya upaya pencurian data, seperti di antaranya serangan Sniffing dan

Phishing jika tidak ada penanganan yang tepat pada jaringan keamanan data. Serangan Sniffing bekerja secara pasif dengan cara memonitor dan mengambil data yang lewat melalui jaringan, sehingga seringkali kehadirannya sulit dideteksi [1]. Sebagai salah satu upaya untuk menghindari serangan Sniffing, dapat diterapkan metode Kriptografi AES untuk menjaga kerahasiaan data yang akan dikirim dengan cara menyandikannya. Metode Kriptografi AES dinilai tepat untuk penyandian data karena tingkat keamanan, efisiensi, serta kesederhanaannya [2]. Algoritma AES dikembangkan dengan mode operasi

Cipher Block Chaining (CBC). Mode Operasi CBC memanfaatkan initialization vector (IV) yaitu suatu vector awal yang tidak bermakna, sehingga hasil cipherteks menjadi lebih unik [3]. Selain itu mode Operasi CBC juga telah didukung oleh platform Visual Basic .NET [4] yang digunakan pada aplikasi pelaporan data yang telah dibangun.

Sementara serangan Phishing juga menjadi ancaman serius karena selalu berkembang dengan metode baru dan memiliki karakteristik yang terus berubah sehingga menjadi semakin sulit dideteksi. Serangan Phishing dijalankan dengan cara menyamar menjadi pihak yang seakan-akan dapat dipercaya, kemudian mengakses serta mencuri informasi dan data pribadi korban yang ditiru. Phishing

umumnya memiliki beberapa jenis penyerangan, di antaranya man-in-the-middle,

malware phishing, key loggers, session hijackers, web Trojans, IP address manipulation, dan system reconfiguration attacks [5]. Bahaya Phishing dapat dihindari dengan melakukan implementasi metode autentikasi. Autentikasi adalah metode untuk mengkonfirmasi identitas, melacak asal-usul, memastikan apakah sebuah produk sesuai dengan yang seharusnya, serta memastikan apakah sebuah program dapat dipercaya atau tidak [6].

(7)

2 2. Tinjauan Pustaka

Terkait dengan topik bahasan, sebelumnya metode One Time Password

(OTP) telah terlebih dahulu dimanfaatkan dalam penelitian berjudul “Software Tokens Based Two Factor Authentication Scheme”. Pada penelitian tersebut

dilakukan implementasi Two Factor Authentication pada aplikasi berbasis mobile

J2ME. Kedua faktor yang digunakan dalam autentikasi adalah PIN serta password Init secret yang berupa One Time Password. Autentikasi berbasis pada Time Synchronous Authentication dengan menggunakan RFC1321 MD5 Message Digest Algorithm of Epoch Time. Ide dari penelitian ini adalah untuk membatasi aktivitas login selama 60 detik [7].

Kemudian implementasi algoritma AES pada aplikasi Android sebelumnya telah dilakukan pada penelitian berjudul “Implementasi Kriptografi AES Untuk Aplikasi Chatting Sistem Jejaring Klaster Berbasis Android”. Pada jurnal

penelitian tersebut, peneliti memanfaatkan algoritma kriptografi AES dengan panjang kunci 128 bit untuk menyandikan data yang ditransmisikan pada setiap kegiatan chatting pada sistem jejaring klaster berbasis Android. Peneliti beranggapan bahwa sebelumnya masih banyak aplikasi chatting yang tidak dilengkapi dengan fungsi penyandian data, sehingga rawan terhadap pencurian informasi [8].

Berdasarkan beberapa penelitian yang telah membahas mengenai OTP dan AES tersebut, disusunlah penelitian terkait dengan mengimplementasikan teknik kriptografi algoritma kriptografi AES dan autentikasi One time password untuk mengamankan data pada aplikasi pelaporan berbasis social media yang difokuskan pada proses upload data.

Autentikasi merupakan metode yang umumnya digunakan untuk menentukan keabsahan dari suatu identitas [9]. Pada aplikasi yang dibangun memanfaatkan konsep Two-factor Authentication dengan menggunakan token

OTP dan data log in (userId dan password) sebagai media autentikasi. One time password dipilih karena memiliki batasan waktu dan tidak dapat digunakan ulang [10]. Dalam penyusunan token OTP, terdapat dua faktor yang harus diperhitungkan, yakni [7]:

1. Elemen yang digunakan harus unik dan hanya dimiliki pribadi tersebut, namun tidak boleh mudah ditebak.

2. Elemen yang digunakan harus diketahui oleh client dan server, sehingga dapat dicocokkan.

Karena token tidak perlu didekripsi, maka pembuatan token menggunakan algoritma MD5 yang dirancang dengan konsep penyandian hash satu arah, sehingga pesan asli sulit untuk dikembalikan seperti semula. Langkah yang dilakukan dalam algoritma kriptografi MD5 adalah sebagai berikut [12]:

1. Penambahan bit-bit pengganjal (padding bits). 2. Penambahan nilai panjang pesan semula. 3. Inisialisasi penyangga (buffer) MD.

4. Pengolahan pesan dalam blok berukuran 512 bit.

(8)

3

penyandian data [11]. Dalam suatu sistem kriptografi (Cryptosystem) terdiri dari dua tahap yaitu enkripsi dan dekripsi, dimana prosesnya diatur oleh satu atau beberapa kunci [13]. Proses yang terjadi di dalam suatu sistem kriptografi dapat dilihat pada Gambar 1.

Gambar 1 Proses dalam Sistem Kriptografi [13]

Algoritma kriptografi yang digunakan adalah AES dengan panjang kunci

128-bit. AES merupakan algoritma block cipher dengan ukuran blok 128-bit yang banyak putarannya ditentukan oleh panjang kuncinya.

Tabel 1 Relasi Panjang Kunci dengan Jumlah Ronde pada AES [14].

Parameter AES-128 AES-192 AES-256

Panjang Kunci (Bit) 128 192 256

Jumlah Putaran 10 12 14

Ukuran Blok Plainteks 128 128 128

Karena kunci yang digunakan berukuran 128-bit, maka algoritma AES yang digunakan akan terdiri dari 10 putaran untuk setiap proses dekripsi dan enkripsi. Proses enkripsi dan dekripsi yang terjadi pada algoritma AES dengan panjang kunci 128-bit secara umum dapat dilihat pada Gambar 2.

Gambar 2 Proses Enkripsi dan Dekripsi AES 128-bit [14]

Untuk proses enkripsi dan dekripsi selalu diawali dengan Add Round Key

baru kemudian dilanjutkan dengan 10 putaran. Setiap putaran enkripsi, dengan pengecualian putaran ke 10 memiliki empat tahap, yaitu : Substitutes bytes

(9)

4

Untuk proses dekripsi, putaran pertama sampai putaran kesembilan memiliki tahapan sebagai berikut : Inverse Shift rows, Inverse Substitute bytes, Add Round Key, dan Inverse Mix Columns. Putaran kesepuluh terdiri dari tiga tahapan yakni Inverse shift Rows, Inverse Substitute bytes, dan Add Round Key

[14].

AES memiliki mode operasi Cipher Block Chaining (CBC) yang

menerapkan fungsi umpan balik (feedback), yakni setiap block current yang sedang diproses akan di-XOR-kan dengan hasil dari block sebelumnya. Oleh karena itu, block pertama berisi initialization vector (IV) yang merupakan block

acak tidak bermakna untuk membuat cipherteks menjadi unik [3].

Proses enkripsi pada mode operasi CBC ditunjukkan pada Gambar 3.

Gambar 3 Proses Enkripsi Mode Operasi CBC [15]

Fungsi enkripsi untuk setiap block ditunjukkan pada Persamaan (1) [15]:

𝐶𝑖 = 𝐸𝑘(𝑃𝑖⨁𝐶(𝑖−1)) (1)

Dengan :

𝐶0 = 𝐶𝑖𝑝ℎ𝑒𝑟𝑡𝑒𝑘𝑠 𝑝𝑒𝑟𝑡𝑎𝑚𝑎 (IV)

𝐶𝑖 = 𝐶𝑖𝑝ℎ𝑒𝑟𝑡𝑒𝑘𝑠 𝑘𝑒 − 𝑖

𝐸𝑘 = 𝐾𝑢𝑛𝑐𝑖 𝐸𝑛𝑘𝑟𝑖𝑝𝑠𝑖

𝑃𝑖 = 𝑃𝑙𝑎𝑖𝑛𝑡𝑒𝑘𝑠 𝑘𝑒 − 𝑖

Proses dekripsi pada mode operasi CBC ditunjukkan pada Gambar 4.

Gambar 4 Proses Dekripsi Mode Operasi CBC [15]

Fungsi dekripsi untuk tiap block ditunjukkan pada Persamaan (2) [15]:

𝑃𝑖 = 𝐷𝑘(𝐶𝑖)⨁𝐶(𝑖−1) (2)

Dengan :

𝐶0 = 𝐶𝑖𝑝ℎ𝑒𝑟𝑡𝑒𝑘𝑠 𝑝𝑒𝑟𝑡𝑎𝑚𝑎 (IV)

𝐶𝑖 = 𝐶𝑖𝑝ℎ𝑒𝑟𝑡𝑒𝑘𝑠 𝑘𝑒 − 𝑖

𝐷𝑘 = 𝐾𝑢𝑛𝑐𝑖 𝐷𝑒𝑘𝑟𝑖𝑝𝑠𝑖

(10)

5

Social media merupakan teknologi yang memanfaatkan media komputer untuk dapat berbagi informasi, ide, serta ekspresi lainnya melalui komunitas virtual dan jaringan [16]. Social media pada umumnya dapat diakses melalui teknologi berbasis web dengan menggunakan perangkat komputer, atau mengunduh aplikasi penyedia layanan yang terdapat pada perangkat genggam seperti handphone [17].

Melalui social media setiap individu, kelompok atau organisasi dapat saling berbagi, berdiskusi, atau merevisi konten yang telah dibagikan sebelumnya [18]. Hal ini berarti social media banyak melibatkan proses transmisi data, termasuk di dalamnya proses upload. Upload adalah proses pengiriman data dari satu sistem komputer ke sistem komputer lainnya, yang pada umumnya berjalan dari sistem komputer yang lebih kecil ke sistem komputer yang lebih besar [19].

3. Metode Perancangan

Penelitian yang dilakukan, diselesaikan melalui tahapan penelitian yang terdiri atas empat tahapan yang ditunjukkan pada Gambar 5.

Gambar 5 Metode Penelitian [20]

Tahapan tersebut dapat dijelaskan sebagai berikut : pada tahap pertama, dilakukan identifikasi masalah (1) untuk mengetahui inti permasalahan serta mempelajari kebutuhan user serta kebutuhan sistem dari permasalahan. Selain itu dilakukan penyusunan teori pendukung dan mencari metode yang cocok untuk permasalahan yang dihadapi. Kemudian berdasarkan teori serta metode yang telah dipelajari sebelumnya, pada tahap kedua dilakukan perancangan sistem keamanan data (2) meliputi : menyusun rencana implementasi teknik kriptografi AES dan metode autentikasi one time password pada aplikasi pelaporan; perancangan

Unified Modelling Language (UML) yang terdiri dari use case diagram, dan

activity diagram; Perancangan User Interface; serta perancangan database. Pada

tahap ketiga dilakukan implementasi sistem keamanan data (3) berdasarkan rancangan yang telah dibangun. Setelah itu pada tahap keempat dilakukan Pengujian Sistem (4) berupa pengujian Performance dan Stress test pada server

(11)

6

Aplikasi pelaporan PT. XYZ merupakan aplikasi pelaporan yang ditujukan untuk memfasilitasi aktivitas pelaporan serta pertukaran aspirasi pegawai dalam hubungannya dengan aktivitas bisnis PT. XYZ. Aplikasi pelaporan PT. XYZ memiliki basis Mobile dan dapat terhubung dengan Server melalui koneksi vpn

Internet. Admin yang bertugas untuk melakukan kontrol terhadap laporan dihubungkan kepada server menggunakan koneksi vpn internet. Arsitektur sistem dari aplikasi pelaporan PT. XYZ terlihat pada Gambar 6.

Gambar 6 Arsitektur Sistem Aplikasi Pelaporan PT. XYZ

Untuk dapat mengakses aplikasi pelaporan PT. XYZ, pegawai harus melakukan proses Log In terlebih dahulu pada aplikasi dengan mengisikan NIK sebagai ID pengenal dan password yang sesuai. Nomor Induk Kepabeanan (NIK) digunakan sebagai UserID karena NIK hanya dimiliki oleh pegawai PT. XYZ. Fungsi yang dapat diakses user pada aplikasi pelaporan PT. XYZ dijabarkan sebagai berikut :

1. Log In dengan menggunakan userID dan password,

2. Melakukan upload laporan, dengan elemen yang dilaporkan meliputi : judul, kategori, lokasi, serta deskripsi laporan.

3. Mengelola Timeline, meliputi :

a. Melihat laporan yang telah di-upload, b. Mencari laporan yang telah di-upload,

4. Fungsi Komentar , meliputi :

a. Melihat Komentar yang terdapat pada laporan,

b. Melakukan penambahan komentar terhadap laporan yang dilihat, 5. Mengelola Profil, meliputi :

a. Melihat profil

(12)

7

Data laporan yang telah di-upload oleh pegawai kemudian harus disortir terlebih dahulu oleh Admin. Jika laporan yang masuk dianggap telah sesuai dan bukan merupakan spam, maka laporan akan diterbitkan sehingga dapat dilihat dan diakses oleh seluruh pengguna aplikasi pelaporan PT. XYZ.

Berdasarkan fungsi serta role masing-masing actor yang dijabarkan, kemudian disusun use case diagram yang ditunjukkan pada Gambar 7.

Gambar 7 Use Case Diagram Aplikasi Pelaporan

Kemudian untuk lebih memahami aliran aktivitas yang terjadi, arah aliran dari aktivitas, keputusan yang dihasilkan pada setiap aktivitas, serta akhir dari setiap aliran aktivitas, dibagunlah rancangan activity diagram [17]. Activity diagram dari aplikasi pelaporan yang telah dibangun ditunjukkan pada Gambar 8.

(13)

8

Aktivitas pada aplikasi pelaporan PT. XYZ diawali dengan Log In dimana

client akan diminta untuk melakukan proses Log In. Apabila UserID dan

Password ternyata sesuai, alur akan berlanjut ke proses autentikasi. Jika proses autentikasi user telah valid, maka semua data yang berhubungan dengan jalannya fungsi menu aplikasi akan diambil dari database kemudian dikirimkan ke sisi

client. Dalam proses pengirimannya data akan diamankan dengan menggunakan sistem kriptografi (enkripsi dan dekripsi). Saat user menjalankan menu yang berhubungan dengan upload dan manipulasi data, seperti penambahan laporan, tambah komentar, mencari laporan, dan update laporan, data akan dienkripsi dan dikirimkan ke sisi server, untuk kemudian didekripsi dan disimpan ke database.

Secara umum, rancangan dari implementasi teknik kriptografi AES dan one time password pada aplikasi pelaporan berbasis social media digambarkan dalam bentuk flowchart yang terdapat pada Gambar 9 dan Gambar 10.

(14)

9

Gambar 10 Rancangan Implementasi Kriptografi pada Proses Upload Data

4. Hasil dan Pembahasan

Proses Autentikasi berjalan setelah user melakukan proses log in. Pembuatan token menggunakan metode kriptografi MD5, dengan elemen UserID

dan waktu Server.

Kode Program 1 Pembuatan TokenClient 1.

String time1 = new SimpleDateFormat("yyyyMMdd").format(new Date()); String time2 = new SimpleDateFormat("HH").format(new Date()); String userid = userid;

ToHash = userid.substring(2,3)+time1+"|"+userid.substring(0,1)+"|"

+time2+userid.substring(1,2); sResult = getMD5(ToHash);

Pembuatan token pada Kode Program 1 dapat dijelaskan sebagai berikut : pada saat user melakukan postuserId dan password, sistem akan mengambil data waktu jam milik client. Kemudian data jam client yang telah didapatkan akan dikombinasikan bersama userId dan data waktu lainnya (berisi tahun, bulan, hari). Hasilnya kemudian dienkripsi dengan menggunakan algoritma MD5.

Kode Program 2 Enkripsi MD5 1.

MessageDigest md = MessageDigest.getInstance("MD5"); byte[] messageDigest = md.digest(input.getBytes()); BigInteger number = new BigInteger(1, messageDigest); String hashtext = number.toString(16);

while (hashtext.length() < 32) { hashtext = "0" + hashtext;)} return hashtext;

Pertama dilakukan deklarasi MD5 sebagai mode enkripsi yang digunakan.

(15)

10

Karena proses autentikasi menggunakan token yang hanya dapat digunakan pada jam tersebut, maka untuk menghindari permasalahan dimana user

melakukan Log In di akhir jam, maka diberikan kelonggaran dalam bentuk penggunaan token pada jam sebelumnya untuk melakukan autentikasi ulang apabila autentikasi pertama gagal. Kode program penentuan token autentikasi ditunjukkan pada Kode Program 3.

Kode Program 3Kelonggaran Waktu untuk Proses Autentikasi 1.

If status = 0 Then 'untuk Autentikasi pertama

strToHash = userid.Substring(2,1) + dt.ToString("yyyyMMdd") + "|" + userid.Substring(0,1) + "|" + dt.ToString("HH") + userid.Substring(1, 1) ElseIf status = 1 Then 'untuk Autentikasi kedua

strToHash = userid.Substring(2,1) + dt.ToString("yyyyMMdd") + "|" + userid.Substring(0,1)+"|"+dt.AddHours(-1).ToString("HH")+

userid.Substring(1,1) Else

strToHash = "Gagal"

End If

Pada fungsi upload, setiap data yang akan dikirim harus dienkripsi satu-persatu dengan menggunakan fungsi Encrypt. Fungsi Encrypt menggunakan basis algoritma kriptografi AES dengan mode operasi Cipher Block Chaining. Kunci enkripsi yang digunakan untuk fungsi Encrypt tersusun atas kombinasi waktu, kunci milik user (userkey) dan string random sebagai salt. Karena menggunakan mode operasi cipher block chaining, maka digunakan variable ivParameterSpec

untuk mengisi block pertama. Kode program untuk fungsi Encrypt dijabarkan

String key = time +sharedpreferences.getString("userKey", "")+

"1nI4DaLL4ahHP4Dd11N9994ANnNKKkkKKuUuUNnnnnCcCCI1I!I!"; Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding"); byte[] keyBytes = new byte[16];

byte[] b = key.getBytes("UTF-8"); int len = b.length;

if (len > keyBytes.length) len = keyBytes.length; System.arraycopy(b, 0, keyBytes, 0, len);

SecretKeySpec keySpec = new SecretKeySpec(keyBytes, "AES"); IvParameterSpec ivSpec = new IvParameterSpec(keyBytes); cipher.init(Cipher.ENCRYPT_MODE, keySpec, ivSpec); byte[] results = cipher.doFinal(text.getBytes("UTF-8")); result = Base64.encodeToString(results, Base64.DEFAULT);

(16)

11

Dim rijndaelCipher As New RijndaelManaged() rijndaelCipher.Mode = CipherMode.CBC

rijndaelCipher.Padding = PaddingMode.PKCS7 rijndaelCipher.KeySize = &H80 '128bit

rijndaelCipher.BlockSize = &H80

Dim encryptedData As Byte() = Convert.FromBase64String(textToDecrypt) Dim pwdBytes As Byte() = Encoding.UTF8.GetBytes(key)

Dim keyBytes As Byte() = New Byte(15) {} Dim len As Integer = pwdBytes.Length If len > keyBytes.Length Then

len = keyBytes.Length

Dim dt As DateTime = DateTime.Now

Dim waktu As String = dt.ToString("dd-MM-yyyy HH:mm") result = "DECRYPTION FAILED... " + waktu

End If

Dengan cara kerjanya yang cukup kompleks, maka perlu dilakukan pengujian dan analisa untuk melihat dampak yang ditimbulkan dari implementasi sistem keamanan data terhadap server. Pengujian yang dilakukan berupa uji

performance test dan stress test untuk melihat performa dan tingkat tekanan

server setelah adanya implementasi sistem keamanan data.

Karena proses yang dilakukan oleh server setelah menerima data dari client

sebelumnya hanya penyimpanan data pada database, maka pengujian

performance test dan stress test dilakukan terhadap alur saat server menangani

request dari client. Hal ini supaya perbedaan yang terjadi pada server sebelum dan setelah adanya implementasi sistem keamanan data pada sistem dapat terlihat dengan lebih jelas.

(17)

12

Tabel 2 Perbandingan Kinerja Server Sebelum dan Sesudah Implementasi Sistem Keamanan Data

Variabel Nilai Waktu Sebelum Implementasi

Nilai Waktu Sesudah Implementasi

Min Duration 12 ms 15 ms

Max Duration 163 ms 236 ms

Average Duration 28 ms 35 ms

Total Duration 28118 ms 35125 ms

Berdasarkan hasil pengamatan terlihat bahwa server memerlukan waktu yang lebih untuk dapat memproses request dari client namun masih pada batas yang tergolong wajar. Setelah adanya implementasi sistem keamanan data server

dapat menyelesaikan permintaan 1000 client dalam waktu 35,125 detik, yang mana mengalami peningkatan waktu 7,007 detik atau sebesar 25% dari waktu pemrosesan awal.

Selanjutnya dilakukan uji stress test dengan skenario jumlah client yang melakukan request terhadap server naik menjadi 10.000 dengan delay waktu antar

request 1 ms dan waktu time out 300 ms. Berdasarkan hasil Stress Test

ditunjukkan bahwa dengan tekanan 10.000 request, waktu terlama yang dibutuhkan server untuk melayani request adalah 629 ms, sementara waktu tercepat yang dibutuhkan server untuk menangani request adalah 12 ms. Secara keseluruhan server membutuhkan waktu 186030 ms (186 detik) untuk menyelesaikan 10.000 request dengan average duration (waktu rata-rata penyelesaian) sebesar 19 ms dengan asumsi client juga berada pada kondisi normal. Grafik hasil pengujian stress test diperlihatkan pada Gambar 11.

Gambar 11 Grafik Stress Test

Penilaian kinerja server secara umum juga dipengaruhi oleh kondisi client

yang ditangani. Sebagai contoh, jika client berada pada kondisi terbaik, maka

server sebenarnya dapat menyelesaikan pekerjaan dengan average duration 17 ms, sehingga banyaknya request yang dapat ditangani pun meningkat dari 52,63

(18)

13

Tabel 3 Hasil Uji Stress Test

Variabel Client

request/sec 66,67 request/sec

Inter-arrival time 5019 ms 5017 ms 5017 ms 5015 ms

Concurrent users 264 295 295 334

Pada saat server berada pada kondisi terbaik, server mengalami peningkatan

average duration menjadi 15 ms sehingga dapat menangani 66,67 request setiap detik, dengan concurrent users atau jumlah user yang dapat ditangani secara bersamaan sebanyak 334. Nilai Inter-Arrival time (Jarak waktu antara penerimaan

request dengan pemberian request) didapatkan dari hasil penjumlahan antara

average duration dengan think time (jeda antar permintaan). Adanya peningkatan

average duration dan think time yang sama untuk seluruh kondisi, menimbulkan

nilai inter-arrival time ikut mengalami peningkatan. Dengan demikian dapat dikatakan bahwa pada kondisi server terbaik, waktu penyelesaian untuk 10.000

request mengalami peningkatan 4 detik dari kondisi awal.

5. Simpulan

Berdasarkan hasil penelitian dan pengujian, dapat disimpulkan bahwa implementasi sistem keamanan data yang memanfaatkan teknik kriptografi AES dan autentikasi OTP dapat mengurangi resiko keamanan data tanpa mengurangi kinerja sistem secara signifikan. Autentikasi one time password dapat mengurangi bahaya serangan phishing karena dibatasi oleh jam dan memerlukan data pribadi milik user. Selain itu, karena data yang dikirim tidak dapat dibaca pihak luar dengan adanya penyandian data, maka bahaya laten dari serangan sniffing juga dapat diatasi dengan adanya implementasi sistem kriptografi pada proses upload

data. Pengujian performance test setelah implementasi teknik kriptografi AES dan autentikasi one time password pada aplikasi pelaporan data dengan skenario penanganan 100 client dengan waktu delay 100 ms dan batasan waktu request 300 ms, menimbulkan kenaikan waktu proses sebesar 25% dari waktu performa awal. Beban yang ditimbulkan cukup ringan, sehingga server masih dapat mengatasi permintaan request dalam jumlah yang besar dan beruntun dalam waktu yang relatif singkat. Sementara uji stress test dengan skenario 10.000 user dengan delay

waktu antar request 1 ms dan waktu time out 300 ms memiliki waktu pemrosesan rata-rata sebesar 15 ms pada saat server berada pada kondisi terbaik.

(19)

14

dan public key. Selain itu dengan teknologi yang lebih memadai, diharapkan teknik AES yang digunakan data dapat dikembangkan dengan mode operasi block cipher yang lebih modern seperti Counter (CTR) atau Galois/Counter Mode

(GCM). Selain itu untuk proses autentikasi dapat dikembangkan saluran SSL untuk menambah keamanan data.

6. Daftar Pustaka

[1] Vimalsevaran, M., 2016. Packet Sniffing: What it’s Used for, its

Vulnerabilities, and How to Uncover Sniffers, Massachusetts : Tufts University.

[2] Aziz, A.R., 2017. Implementasi Enkripsi Text Menggunakan Algoritma

Advanced Encryption Standard dan Elliptic Curve Cryptography, Surabaya : Institut Teknologi Sepuluh Nopember.

[3] Ahmad, F., Basuki, P. N., Rudianto, C., 2016. Perancangan Kriptografi

Block Cipher Berbasis CBC (Cipher Block Chaining) Termodifikasi dalam Pengamanan Data Lokasi pada Database Server Aplikasi MeetApss,

Salatiga : Fakultas Teknologi Informasi Universitas Kristen Satya Wacana. [4] Microsoft, (n.d.). CipherMode Enumeration.

https://msdn.microsoft.com/en-us/library/system.security.cryptography.ciphermode(v=vs.110).aspx. Diakses Pada 17 Juli 2017.

[5] Williamson, G. D., 2006. Enchanced Authentication in Online Banking.

New York : Utica College Economic Crime Institute.

[6] Valente, E., 2009. Two-Factor Authentication: Can You Choose the Right One?. New York : SANS Institute.

[7] Singhal, M., Tapaswi, S., 2012. Software Tokens Based Two Factor Authentication Scheme. International Journal of Information and Electronics Engineering, Vol. 2, No. 3, hlm.383-386.

[8] Latumahina, E. J., Suprihadi, 2016. Implementasi Kriptografi AES Untuk Aplikasi Chatting Sistem Jejaring Klaster Berbasis Android. Salatiga : Fakultas Teknologi Informasi Universitas Kristern Satya Wacana.

[9] Turner, D., 2016. Digital Authentication : The Basics. https://www.cryptomathic.com/news-events/blog/digital-authentication-the-basics. Diakses Pada 31 Agustus 2017.

[10] Handare, S., Nagpurkar, V., Mittal, J., 2014. Securing SMS Based One Time Password Technique from Man in the Middle Attack.International Journal of Engineering Trends and Technology, Vol. 11, No. 3, hlm. 154-158. [11] Siregar, H. M. S., 2014. Pengamanan File menggunakan Algoritma

Kriptografi Rijndael. Bandung : Fakultas Teknik Universitas Widyatama. [12] Munir, R., 2004. Fungsi Hash Satu-Arah dan Algoritma MD5. Bandung :

Institut Teknologi Bandung.

[13] Kurniawan, Y., 2004. Kriptografi : Keamanan Internet dan Jaringan Telekomunikasi.Bandung : Informatika.

(20)

15

Science and Technology: E Network, Web & Security, Vol. 15, No. 4, hlm. 10-20.

[15] William F. Ehrsam, Carl H. W. Meyer, John L. Smith, Walter L. Tuchman, "Message Verification and Transmission Error Detection by Block Chaining", US Patent 4074066, 1976.

[16] Obar, J. A., Wildman, S., 2015. Social Media Definition and the Governance Challenge: An Introduction to the Special Issue. Telecommunications policy. Vol.39, No.9, hlm. 745–750.

[17] Kietzmann, J. H., Hermkens, K.,2011. Social media? Get serious! Understanding the functional building blocks of social media. Business Horizons, Vol 54, No. 3, hlm. 241-251.

[18] Pavlik, J. V., McIntosh, S., 2015. Converging Media : A New Introduction to Mass Communication 4th Edition.New York : Oxford University Press.

[19] Segebarth, M., 2005, Uploading.

http://whatis.techtarget.com/definition/uploading. Diakses 5 Oktober 2017. [20] Hasibuan, Z. A., 2007, Metodologi Penelitian Pada Bidang Ilmu Komputer

Gambar

Tabel 1 Relasi Panjang Kunci dengan Jumlah Ronde pada AES [14].
Gambar 3 Proses Enkripsi Mode Operasi CBC [15]
Gambar 5 Metode Penelitian [20]
Gambar 6 Arsitektur Sistem Aplikasi Pelaporan PT. XYZ
+6

Referensi

Dokumen terkait

Pelaksanaan MUSRENBAN G yang terintegrasi Terlaksana nya Forum Musrenba ng yang terintegra si Persentase Perencanaan yang disusun tepat waktu Dokumen Perencanaan yang disusun

The development of vocational senior secondary education in I ndonesia has been through several changes for the sake of improvement. This is obviously seen from

keseluruhan proses pendidikan di Indonesia adalah seperti yang tercantum dalam. BAB I Ketentuan Umum UU Sistem Pendidikan

Kinerja keuangan KSU Buah Ketakasi diukur dengan standar kriteria koperasi perkotaan mandiri yang telah ditetapkan oleh Departemen Koperasi dan Pembinaan Usaha

FET dapat digunakan sebagai penguat sinyal kecil dengan impedansi input yang..

Rangkaian penguat daya kelas A seperti pada gambar 4.17 diberi sinyal input sehingga. mengalir arus basis (ac) dengan harga puncak

Tujuan yang hendak dicapai oleh penulis adalah untuk mengetahui pertimbangan hakim mengabulkan permohonan pra peradilan telah sesuai dengan alasan yuridis dalam KUHAP

Apabila ada sanggahan atas hasil Evaluasi tersebut maka sanggahan disampaikan melalui Aplikasi SPSE disertai bukti-bukti terjadinya penyimpangan dengan