• Tidak ada hasil yang ditemukan

T1 672008017 Full text

N/A
N/A
Protected

Academic year: 2017

Membagikan "T1 672008017 Full text"

Copied!
23
0
0

Teks penuh

(1)

1. Pendahuluan

Perkembangan teknologi informasi saat ini khususnya pada bidang transaksi

online sebuah e-commerce sangat pesat. Hal ini terbukti dengan adanya riset yang telah dilakukan oleh DailySocial yaitu bahwa nilai transaksi perdagangan online

atau e-commerce di Indonesia tahun 2012 mencapai 0,9 miliar Dollar Amerika Serikat (AS) atau sekitar 8,5 triliun Rupiah. Diprediksi pada tahun 2015, nilai e-commerce akan melonjak ke angka 10 miliar Dolar AS atau 95 triliun Rupiah. Pengguna internet di Indonesia sudah menyentuh angka sekitar 61 juta, sementara dari pengguna seluler mencapai 230 juta, dengan 20% menggunakan

smartphone[1]. Hal tersebut diperkuat dengan pernyataan Kementrian Komunikasi dan Informatika bahwa pada tahun 2013 pasar e-commerce di Indonesia diprediksi mencapai Rp 130 triliun (kurang lebih 1 persen pendapatan dunia), setelah

sebelumnya pada 2012 mencapai Rp 69 triliun. Pertumbuhan belanja e-commerce

di Indonesia juga diperkirakan naik mencapai 71 persen, terbesar di dunia dengan nilai US$ 1,8 milar atau setara Rp 18 triliun pada tahun ini[2]. Berdasarkan

fakta-fakta tersebut, maka dapat dikatakan bahwa pasar e-commerce sudah menjadi trend

digunakan oleh penduduk Indonesia selain pasar konvensional.

Salah satu e-commerce di Indonesia yang telah dibangun adalah Sistem Jejaring Klaster dengan domain iklaster.com. Sistem Jejaring Klaster merupakan sistem jejaring usaha bagi UMKM dan Koperasi berbasis Klaster, dimana aplikasi tersebut dipergunakan sebagai pusat promosi, informasi dan transaksi bisnis bagi UMKM dan Klaster di Indonesia. Sistem Jejaring Klaster tersebut dikembangkan menggunakan teknologi web yaitu framework CodeIgniter dan database MySql[3]. Pada saat ini, Sistem Jejaring Klaster juga telah dikembangkan menjadi mobile commerce (m-commerce) menggunakan teknologi mobile Android. Hal ini menuntut adanya fasilitas keamanan data untuk mengamankan data-data transaksi, antara lain transaksi pemesanan dan konfirmasi pembayaran oleh Pembeli pada aplikasi m-commerce tersebut, supaya dapat meningkatkan nilai kepercayaan para Pembeli sebagai pengguna Sistem Jejaring Klaster. Selain hal tersebut, fasilitas keamanan data pada transaksi online wajib perlu disediakan, sebagai contoh: transaksi penjualan online, transaksi keuangan, e-mail, file transfer, tanda tangan suatu kontrak dalam bentuk digital, informasi dari perusahaan untuk publik (sehingga tidak bisa diubah-ubah orang lain), dan transaksi bisnis lainnya. Teknologi dasar yang dipergunakan dalam pengamanan data untuk e-commerce, yakni cryptography[4].

Berdasarkan latar belakang tersebut, maka rumusan masalah penelitian ini antara lain pertama, bagaimana merancang sistem keamanan guna transmisi data transaksi bisnis pada aplikasi m-commerce berbasis client-server?. Kedua, bagaimana menerapkan algoritma AES pada sistem keamanan guna transmisi data pada aplikasi m-commerce berbasis client-server?. Ketiga, bagaimana mengimplementasikan sistem keamanan guna transmisi data dengan algoritma AES menggunakan bahasa pemrograman JAVA Android?

(2)

Android, sedangkan aplikasi server diimplementasikan menggunakan bahasa pemrograman PHP. Basis Data yang digunakan adalah database MySQL Server. Algortima AES yang dipergunakan adalah AES 128 bit data masukkan dan 128 bit

chipper key, supaya tidak banyak membutuhkan waktu proses enkripsi dan dekripsi yang dipergunakan untuk mengamankan data-data transaksi bisnis pada m-commerce Sistem Jejaring Klaster.

Mengingat luasnya masalah yang akan dibahas, maka penelitian ini memiliki ruang lingkup, yaitu pertama, tidak membahas secara detil aplikasi m-commerce, tetapi penelitian berfokus pada pengamanan data menggunakan algoritma AES pada aplikasi m-commerce tersebut. Kedua, keamanan data pada aplikasi m-commerce hanya untuk transaksi pembelian atau pemesanan produk dan transaksi konfirmasi pembayaran yang dilakukan oleh pengguna yaitu Pembeli. Ketiga, proses bisnis pada aplikasi m-commerce berdasarkan aturan pada Sistem Jejaring Bisnis UMKM dan Koperasi Berbasis Klaster, dengan domain

iklaster.com. Keempat, penelitian ini menggunakan aplikasi m-commerce berbasis

client-server menggunakan teknologi mobile Android. Kelima, tidak membahas secara detail bahasa pemrograman JAVA Android dan database MySQL.

Sedangkan manfaat yang diperoleh dari hasil penelitian ini antara lain pertama, bagi Pembeli, yaitu mendapatkan jaminan bahwa data-data transaksi bisnis tidak dapat diketahui oleh pihak-pihak lain yang tidak memiliki kepentingan. Kedua, bagi Pengelola, yaitu dapat mengamankan data-data transaksi bisnis pada aplikasi jual beli berbasis client server mengunakan Android. Ketiga, bagi Akademik, sebagai sarana pembelajaran yang dapat digunakan untuk penelitian lebih lanjut.

2. Tinjauan Pustaka

Penelitian sebelumnya yang pernah dilakukan dengan judul Rancang Bangun Sistem Jejaring Klaster Berbasis Web Dengan Pendekatan Model E-Commerce: Marketplace Concentrator[3]. Penelitian tersebut bertujuan merancang dan membangun sebuah e-commerce berbasis web bagi Klaster. Manfaat penelitian tersebut adalah bahwa telah tersedia basis data menggunakan MySQL Server yang menyimpan semua informasi pengguna, transaksi bisnis dan data-data produk milik Klaster, sehingga pada penelitian ini tidak perlu melakukan desain basis data. Sedangkan perbedaan dengan penelitian ini adalah pada sistem pengamanan data menggunakan AES 128 bit pada aplikasi m-commerce Sistem Jejaring Klaster yang telah dibangun menggunakan teknologi Java Android.

Penelitian lain yang pernah dilakukan sebelumnya adalah Perancangan dan Implementasi Sistem Notifikasi Bisnis Pada Sistem Jejaring Klaster Berbasis Android[5]. Penelitian tersebut bertujuan untuk membangun sebuah aplikasi mobile

berbasis Android untuk notifikasi bisnis yang mampu menampilkan informasi pemesanan produk dan pembayaran secara cepat kepada Pengguna yaitu Admin dan Anggota Klaster serta Pembeli. Dalam membangun sistem tersebut digunakan metode prototype sebagai metode pengembangan sistem notifikasi bisnis dengan teknologi push message notification. Pengembangan aplikasi ini menggunakan

(3)

database server serta isi pesan dari notifikasi yaitu berupa kode order. Sedangkan perbedaannya adalah penelitian tersebut belum memiliki sistem keamanan data.

Konsep dasar pengamanan data pada penelitian ini adalah algoritma kriptografi, disebut juga cipher yaitu aturan untuk enciphering dan deciphering,

atau fungsi matematika yang digunakan untuk enkripsi dan dekripsi. Beberapa

cipher memerlukan algoritma yang berbeda untuk enciphering dan deciphering.

Keamanan algoritma kriptografi sering diukur dari banyaknya kerja yang dibutuhkan untuk memecahkan ciphertext menjadi plaintext tanpa mengetahui kunci yang digunakan. Apabila semakin banyak proses yang diperlukan berarti juga semakin lama waktu yang dibutuhkan, maka semakin kuat algoritma tersebut dan semakin aman digunakan untuk menyandikan pesan. Algoritma kriptografi terdiri dari fungsi dasar, yaitu pertama adalah Enkripsi, merupakan hal yang sangat penting dalam kriptografi yang merupakan pengamanan data yang dikirimkan terjaga rahasianya, pesan asli disebut plaintext yang dirubah menjadi kode-kode yang tidak dimengerti. Kedua, Dekripsi, merupakan kebalikan dari enkripsi, pesan yang telah dienkripsi dikembalikan ke bentuk asalnya (plaintext) disebut dengan dekripsi pesan. Ketiga, Kunci, yang dimaksud di sini adalah kunci yang dipakai untuk melakukan enkripsi dan dekripsi, kunci terbagi jadi 2 (dua) bagian yaitu kunci pribadi (private key) dan kunci umum (public key). Secara umum, proses enkripsi dan dekripsi dapat ditunjukkan pada Gambar 1.

Gambar 1 Proses Enkripsi dan Dekripsi[6]

Pada dasarnya terdapat dua jenis algoritma kriptografi berdasarkan kunci yang digunakan. Yang pertama adalah kriptografi dengan menggunakan secret key

dan yang kedua adalah kriptografi yang menggunakan public key. Kriptografi

public key menggunakan dua kunci yang berbeda dimana satu kunci digunakan untuk melakukan enkripsi dan kunci yang lain digunakan untuk melakukan dekripsi. Ada empat tujuan mendasar dari ilmu kriptografi yang merupakan aspek keamanan informasi atau data, yaitu pertama, Kerahasiaan (Confidentiality) yang berarti pesan (plaintext) hanya dapat dibaca oleh pihak yang memliki kewenangan. Kedua, Autentikasi (Authentication), artinya yaitu pengirim pesan harus dapat diidentifikasi dengan pasti, penyusup harus dipastikan tidak bisa berpura-pura menjadi orang lain. Ketiga, Integritas (Integrity), yaitu penerima pesan harus dapat memastikan bahwa pesan yang dia terima tidak dimodifikasi ketika sedang dalam proses transmisi data. Keempat, Nir-penyangkalan (Non-Repudiation) berarti pengirim pesan harus tidak bisa menyangkal pesan yang dia kirimkan[6].

(4)

menggunakan substitusi, permutasi dan sejumlah putaran yang dikenakan pada tiap blok yang akan dienkripsi dan dekripsi.

Penelitian ini menggunakan AES 128 bit yang beroperasi pada blok masukan data dengan ukuran 128 bit. Panjang kuncinya berukuran 4 word dan untuk tiap word-nya berukuran 32 bit, sehingga total kuncinya 128 bit. Untuk proses transformasinya sebanyak 10 putaran. AlgoritmaAES mempunyai 3 fungsi utama, yaitu pertama, Plaintext adalah array yang berukuran 16-byte, yang berisi data masukan. Kedua, Ciphertext adalah array state yang berisi hasil enkripsi. Ketiga, Kunci adalah array yang berukuran 16-byte, yang berisi kunci cipher

(disebut juga cipher key)[7]. Garis besar algoritmaAES ditunjukkan pada Gambar 2.

Gambar 2 Diagram Proses Enkripsi dan Dekripsi[7]

Gambar 2 menjelaskan bahwa garis besar algoritma AES yang beroperasi pada blok 128 bit dengan kunci 128 bit adalah sebagai berikut:

 Transformasi AddRoundKey, melakukan XOR antara state awal (plaintext) dengan cipherkey. Tahap ini disebut juga initial round.

 Putaran sebanyak Nr–1 kali. Proses yang dilakukan pada setiap putaran adalah: a. Transformasi SubBytes adalah substitusi byte dengan menggunakan Tabel

substitusi (S-Box).

b. Transformasi ShiftRows adalah pergeseran baris-baris array state secara

wrapping.

c. Transformasi MixColumns adalah mengalikan setiap kolom array state

dengan polinomial.

d. Transformasi AddRoundKey adalah melakukan XOR antara state sekarang dengan round key.

Final round, proses untuk putaran terakhir:

Transformasi SubBytes, Transformasi ShiftRows dan Transformasi

AddRoundKey

Aplikasi yang dibangun pada penelitian menggunakan arsitektur client-server. Arsitektur client-server dibangun untuk memenuhi lingkungan komputing dimana sejumlah PC, workstation, file server, printer, database server, web server,

serta peralatan lainnya dapat saling terhubung via network[8].

Komponen dasar client-server dibentuk oleh tiga komponen dasar, yaitu

(5)

Gambar 3 Komponen Dasar Client Server[9]

Aplikasi client-server memiliki ciri-ciri mendasar yang membedakannya dengan perangkat lunak terdistribusi lain[10], yaitu pertama berbasis layanan, yang berarti adalah server memberikan sejumlah layanan yang dibutuhkan dan diminta oleh client, antara lain: berbagi pakai berkas, data, peralatan pendukung dan lain-lain. Kedua, sumber daya yang digunakan bersama, artinya server mengelola sejumlah sumber daya yang dimilikinya agar dapat diakses dan digunakan secara bersama-sama oleh terminal-terminal client yang terhubung pada server. Ketiga, hubungan dan interaksi antara client-server, artinya bahwa hubungan yang terjadi antara server dan client adalah one-to-many, yang berarti bahwa satu server

melayani banyak client. Client selalu memulai interaksi dengan meminta layanan, sedangkan server menanti permintaan layanan secara pasif. Keempat, client tidak perlu mengetahui lokasi fisik server, sehingga server dapat terletak di berbagai tempat yang belum tentu diketahui oleh client. Walaupun demikian, client tetap dapat mengakses server untuk mendapatkan layanan sesuai kebutuhannya. Kelima, interoperabilitas perangkat lunak dan perangkat keras, berarti perangkat keras dan perangkat lunak yang digunakan oleh masing-masinhg client tidak harus sama dengan yang digunakan server, namun masih dapat saling terkoneksi antara satu dan yang lain. Keenam, pertukaran berbasis pesan, yang artinya adalah mekanisme dari client-server berdasar pada pertukaran pesan. Pesan yang dipertukarkan ialah permintaan layanan dan umpan balik dari permintaan layanan. Ketujuh, enkapsulasi layanan. Hal ini client tidak perlu mengetahui proses pengolahan permintaan yang terjadi dalam server sehingga client tidak dapat mengontrol proses pengolahan permintaan. Kedepalan, Skalabilitas, yaitu ukuran sistem client-server dapat diubah secara horisontal maupun vertikal. Pengubahan vertikal berarti berpindah ke

server yang lebih besar atau lebih cepat mendistribusikan tugas melayani client ke beberapa server. Pengubahan horisontal berarti menambah atau mengurangi jumlah

client. Kesembilan, konsistensi data, yaitu data hanya dikelola pada server pusat sehingga konsistensi dan data lebih terjamin dan biaya pemeliharaan menjadi lebih murah.

Arsitektur client-server memiliki 2 (dua) jenis model, yaitu model two-tier

dan model Three Tier. Model two-tier merupakan lingkungan client /server secara tradisional. Pada model ini suatu aplikasi dibagi menjadi dua entitas, yaitu aplikasi

client dan aplikasi server. Dalam konfigurasi yang tipikal, pembagian ini juga meliputi pembagian perangkat lunak dan perangkat keras. Aplikasi client umumnya diletakkan pada workstation yang digunakan oleh user, sedangkan server

(6)

aplikasi. Kedua, Layanan Data (Data Source Tier). Layanan data merupakan sebuah database server atau DBMS (Database Management Systems) yang menyediakan data bagi lapisan layanan client atau presentasi. Skema model two tier

dapat dilihat pada Gambar 4.

Gambar 4Model Two Tier Client Server[11]

Model kedua yaitu model three-tier atau disebut juga multi-tier, dimana model ini merupakan langkah pengembangan dari two-tier client/server. Hal ini berarti, setiap aplikasi three-tier adalah client/server, namun tidak semua aplikasi

client/server adalah three-tier. Model three-tier menambahkan komponen ketiga diantara aplikasi client dengan aplikasi server yang disebut middle tier atau layanan bisnis. Oleh karena itu, dalam model ini pemrosesan disebarkan di antara tiga lapisan atau lebih[11]. Layanan Presentasi (Client Tier), yaitu sebagaimana dalam

two-tier, layanan ini berfungsi untuk menangani semua interaksi user dengan aplikasi. Namun demikian, layanan ini tidak langsung mengakses database server.

Layanan Bisnis (Business Tier), merupakan layanan bisnis atau disebut dengan

middle tier merupakan sebuah aplikasi yang memberlakukan aturan-aturan bisnis, memproses data, dan mengelola transaksi. Logika yang semula ditempatkan pada

client dipindahkan ke dalam komponen lapisan bisnis ini. Layanan Data (Data Source Tier). Layanan data merupakan sebuah DBMS yang mewakili satu atau lebih penyimpanan data. Lapisan ini menyediakan permintaan data bagi aplikasi client

dengan melalui lapisan layanan bisnis. Skema model three tier dapat dilihat pada Gambar 5..

Gambar 5 Model Three Tier Client Server[11]

Untuk menunjang fasilitas notifikasi pesan, maka pada penelitian ini menggunakan layanan Google Cloud Messaging (GCM). Google Cloud Messaging

(7)

3. Metode Perancangan Sistem

Didalam melaksanakan penelitian, diperlukan beberapa tahapan seperti terlihat pada Gambar 6.

Analisis Situasi

Perumusan Masalah

Pengumpulan Data

Analisis Kebutuhan

Pengembangan Sistem

Uji Sistem

Penulisan Laporan Akhir

Gambar 6 Tahapan Penelitian

Berdasarkan Gambar 6, tahapan pertama adalah analisis situasi, yaitu tahap yang menghasilkan sebuah latar belakang masalah yang dianggap layak untuk dilakukan penelitian, yaitu para pengurus dan anggota Klaster, pemilik Sistem Jejaring Klaster, serta Pengelola Aplikasi Sistem Jejaring KLaster membutuhkan sistem pengamanan untuk data-data transaksi yaitu pemesanan barang, konfirmasi pembayaran dan proses notifikasi pada aplikasi m-commerce Sistem Jejaring Klaster berbasis Android. Tahap kedua, perumusan masalah menghasilkan pemetaan masalah berdasarkan analisis situasi, antara lain bagaimana menerapkan algoritma AES sebagai sistem keamanan transmisi data pada proses transaksi pemesanan barang, proses konfirmasi pembayaran dan proses notifikasi transaksi. Tahap ketiga, pengumpulan data menghasilkan data-data yang terkait dengan transaksi pemesanan barang, konfirmasi pembayaran dan pesan notifikasi menggunakan layanan push message Google Cloud Messaging (GCM). Tahap keempat analisis kebutuhan, menghasilkan kebutuhan fungsionalitas dari sistem keamanan transmisi data menggunakan algoritma AES 128 bit pada aplikasi client-serverm-commerce Sistem Jejaring Klaster. Tahap kelima, pengembangan sistem, yaitu sistem keamanan data pada aplikasi client-serverm-commerce Sistem Jejaring Klaster menggunakan metode Prototype Model. Tahap keenam, uji sistem. Setelah dilakukan pengembangan sistem, berikutnya adalah melakukan pengujian sistem. Pengujian sistem dilakukan untuk mengetahui performa dari penerapan algoritma AES pada aplikasi client-server m-commerce Sistem Jejaring Klaster. Tahap ketujuh, penulisan laporan akhir. Setelah dilakukan pengembangan dan pengujian sistem, tahap berikutnya adalah menarik kesimpulan yang dituangkan dalam bentuk laporan skripsi. Pada bagian ini juga diberikan saran-saran pengembangan untuk penelitian selanjutnya.

(8)

pengelola Sistem Jejaring Klaster dapat saling berinteraksi selama proses pembuatan sistem. Secara lengkap, alur model prototype akan digambarkan seperti pada Gambar 7.

Gambar 7 Prototype Model[13]

Gambar 7, merupakan gambaran tahapan umum dari prototype model. Berikut adalah penjelasan dari tahap-tahap prototypemodel. Pada tahapan pertama, yaitu listen to customer atau information gathering tentang kebutuhan aplikasi yang akan dibangun. Pada tahap ini dilakukan wawancara dengan seorang pemilik dan 6 (enam) pengelola Sistem Jejaring Klaster. Pada tahap wawancara diperoleh informasi aplikasi m-commerce Sistem Jejaring Klaster membutuhkan sistem keamanan data pada proses-proses transaksi, antara lain transaksi pemesanan, konfirmasi pembayaran dan proses notifikasi transaksi bagi member Pembeli. Sistem keamanan pada transmisi data khususnya di dalam proses transaksi bisnis m-commerce dibutuhkan untuk meningkatkan kepercayaan publik atau masyarakat khususnya kepada member Pembeli Sistem Jejaring Klaster yang sudah mencapai 36 (tigapuluh enam) orang.

Tahapan selanjutnya dalam metode prototype yaitu build/revise mock-up

atau membangun aplikasi secara cepat. Pada tahap ini dilakukan pembuatan aplikasi secara cepat, lebih memfokuskan pada input output aplikasi sesuai dengan kebutuhan umum yang diketahui pada tahap pertama. Tahap ini menghasilkan 3 (tiga) prototipe. Hasil uji fungsionalitas prototipe I adalah bahwa data-data yang diamankan hanya pada proses transaksi pemesanan barang dan konfirmasi pembayaran oleh aktor Pembeli, sedangkan proses notifikasi pesan transaksi bagi Pembeli belum dilakukan. Pada Prototipe II, sistem keamanan data sudah dapat melakukan enkripsi dan dekripsi untuk isi pesan proses notifikasi transaksi bisnis bagi Pembeli. Tetapi pada prototype II penggunaan private key untuk fungsi algoritma AES 128 bit menggunakan data tetap berupa kata statis bertipe string. Hal ini tidak disetujui oleh pemilik Sistem Jejaring Klaster dimana mengusulkan

private key diambil dari Id Registration GCM. Hasil penelitian berakhir pada prototype III dimana private key sudah menggunakan Id Registration GCM. Untuk dapat memastikan bahwa private key berukuran 128 bit, maka private key tersebut berupa hasil proses Hash MD5 Id Registration GCM.

Tahap Customer Test-Drives Mock-Up. Pada tahap ini dilakukan uji dan evaluasi prototype oleh pengelola seperti tahap wawancara. Uji dan evaluasi

(9)

proses enkripsi dan dekripsi. Untuk mengetahui apakah sistem keamanan data pada level transmisi data melalui protocol http berhasil, maka dibutuhkan sebuah aplikasi

spyware berupa wireshark. Evaluasi dilakukan dengan cara wawancara. Jika evaluasi prototype belum sesuai dengan kebutuhan user, maka dilakukan proses perbaikan dimulai kembali ke tahap awal dan dilanjutkan ke tahap berikutnya.

Arsitektur aplikasi sistem keamanan pada transmisi data apliksai client-server Sistem Jejaring Klaster menggunakan arsitektur three-tier. Dengan demikian dalam arsitektur ini terdapat tiga layer yaitu layer client, layer middle, dan layer server. Pada layer client disini terdapat aplikasi mobile berupa m-commerce yang digunakan oleh pembeli atau public (guest), Layer middle berupa layanan push message yang disediakan oleh GCM (google cloud messaging), sedangkan di dalam

layer server berupa aplikasi yang dibangun menggunakan bahasa pemrograman php dengan framework CodeIgniter.

DBMS iKlaster Web Server

Application Client

Chiper(Data Order)

Chiper(Data Transaksi)

Chiper(Data Order) Request / Respon

SQL

Application Server

Chiper(Data Transaksi)

Gambar 8 Arsitektur Client-Server Sistem Keamanan Transmisi Data Pada Aplikasi Client Server Sistem Jejaring Klaster

Untuk mewujudkan keamanan pada transmisi data aplikasi client-server m-commerce Sistem Jejaring Klaster seperti pada Gambar 8, maka pada aplikasi client

dan aplikasi server dibangun fungsi enkripsi dan fungsi dekripsi menggunakan algoritma AES 128 bit untuk proses transaksi pemesanan barang, proses konfirmasi pembayaran dan notifikasi transaksi. Pada proses notifikasi transaksi bisnis antara lain notifikasi Terima konfirmasi pembayaran Pembeli oleh Admin Klaster dan notifikasi Status Pengiriman dari Anggota Klaster kepada Pembeli, isi pesan notifikasi berupa chipertext hasil encode dari aplikasi server yang dikirim ke GCM dan diteruskan ke mobile device pembeli. Oleh aplikasi client isi pesan tersebut diproses decode menggunakan fungsi dekripsi untuk menjadi plaintext, sehingga aplikasi client dapat membaca data yang diterima dari GCM, yang kemudian melakukan request ke aplikasi server. Data request berupa chipertext dari aplikasi

client tersebut kemudian dilakukan proses decode untuk dapat dibaca oleh aplikasi

server sehingga aplikasi server dapat memberikan respon kepada aplikasi client. Pada prinsipnya, semua data dilakukan proses encode dan decode pada aplikasi

server maupun client supaya data yang dikirimkan melalui media protocol http berupa data chipertext.

(10)

pembayaran, maka data-data transaksi tersebut oleh aplikasi client dilakukan proses enkripsi sebelum di-posting ke server. Dengan demikian, data-data transaksi pada

layer transmisi yaitu protocol http sudah berupa chipertext. Kemudian, chipertext

tersebut didalam layer server oleh aplikasi server dilakukan proses dekripsi, sehingga aplikasi server dapat membaca data transaksi tersebut untuk dapat dilakukan proses selanjutnya.

Mulai Data Transaksi Enkripsi(Data Transaksi) Chipertext Client Application

Selesai Data Transaksi Dekripsi(Chipertext)

Server Application Transmission Layer

Gambar 9 Diagram Alir Enkripsi Dekripsi Data Transaksi Proses Request

Hal serupa juga dilakukan pada saat proses response yang dilakukan oleh aplikasi server seperti terlihat pada Gambar 10. Sebelum diambil oleh client, maka data-data transaksi diproses oleh fungsi enkripsi sehingga menjadi chipertext. Berdasarkan kedua diagram alir tersebut, maka algoritma AES diimplementasikan kedalam aplikasi server maupun aplikasi client pada fungsi enkripsi dan dekripsi.

Mulai Data Transaksi Enkripsi(Data

Transaksi) Chipertext

Client Layer

Selesai Data Transaksi Dekripsi(Chipertext) Server Layer

Transmission Layer

Gambar 10 Diagram Alir Enkripsi Dekripsi Data Transaksi Proses Response

Sistem keamanan pada transmisi data berbasis client-server dirancang menggunakan Unified Modelling Language (UML) sebagai pemodelan sistem. UML menyediakan beberapa diagram dalam proses perancangan sistem. Dalam sistem yang dibuat digunakan beberapa diagram, yaitu: use case diagram, activity diagram,sequence diagram dan class diagram.

Use Case Diagram menggambarkan pola dari interkasi dan hubungan antara actor dengan use case. Terdapat tiga komponen di dalam use case diagram yaitu

(11)

Gambar 11 Use Case Diagram Aplikasi M-Commerce

Pada Gambar 11 menggambarkan aplikasi m-commerce memiliki dua actor

yaitu Guest dan Pembeli. Guest memiliki kemampuan untuk register, masuk beranda portal, lihat daftar klater, lihat daftar produk, dan lihat detail produk. Sedangkan Pembeli memiliki kemampuan meliputi masuk beranda portal, lihat daftar klater, lihat daftar produk, lihat detail produk, beli produk, lihat keranjang, lihat daftar tagihan, lihat daftar konfirmasi, dan lihat daftar riwayat. Pada lihat keranjang, Pembeli secara langsung dapat melihat daftar order item, serta dapat memperbaharui jumlah pesanan pada order item dan menghapus order item. Disamping itu, pada keranjang terdapat fungsi checkout yang dapat digunakan pembeli untuk mengakhiri proses pemesanan dan membuat tagihan ke Pembeli. Pada daftar tagihan, Pembeli dapat melihat detail order, serta melakukan konfirmasi pembayaran dan pada daftar konfirmasi pembelian, dapat melihat daftar transaksi yang telah ditolak Admin Klaster, serta detail order. Sedangkan, jika transaksi diterima oleh Admin Klaster, maka order akan masuk pada daftar riwayat yang berisi status packaging/kirim yang dilengkapi menu lihat detailorder dan set status order telah Diterima atau Belum Diterima.

Untuk memperjelas case-case yang dimiliki oleh Admin Klaster pada proses konfirmasi pembayaran oleh Pembeli, dapat dilihat use case diagram pada Gambar 12.

Gambar 12Use Case Diagram pada E-Commerce Proses Konfirmasi Pembayaran

Gambar 12 memperlihatkan bahwa konfirmasi pembayaran yang dilakukan Pembeli akan masuk kedalam Daftar Konfirmasi Pembayaran pada Admin Klaster. Oleh Admin Klaster, konfirmasi pembayaran Pembeli tersebut dapat diterima atau ditolak. Jika diterima, maka akan mengirim notifikasi berita ke Anggota Klaster. Berita tersebut berisi perintah packaging atau kirim tergantung dari jenis delivery

produk yang ditentukan oleh Pembeli saat proses checkout. Isi berita berupa

Tolak Terima

Konfirmasi Pembayaran

Admin Klaster Daftar KOnfirmasi Pembayaran <<extend>> <<extend>> <<include>>

Konfirmasi Packaging/Kirim

Anggota Klaster Daftar Order

Set Status Dapat Diambil

Set Status Packing

Set Status Kirim <<include>>

<<extend>> <<extend>>

(12)

perintah packaging, maka set status Dapat Diambil dilakukan oleh Anggota Klaster jika jenis delivery adalah COD (Cash On Delivery). Isi berita berupa perintah Kirim, maka set status Packaging dan Kirim dilakukan oleh Anggota Klaster jika jenis delivery adalah Kirim.

Activity diagram menggambarkan aliran aktivitas dalam sistem yang sedang dirancang, aliran masing-masing case, decision yang mungkin terjadi, dan bagaimana aliran tersebut berakhir. Activity diagram yang digunakan pada penelitian ini meliputi proses konfirmasi pembayaran oleh Admin Klaster pada e-commerce dan konfirmasi pembayaran oleh Pembeli pada m-commerce. Activity diagram konfirmasi pembayaran oleh Pembeli pada m-commerce dapat dilihat pada Gambar 13.

Gambar 13 Activity Diagram Proses Konfirmasi Pembayaran pada M-Commerce

Pada Gambar 13 memperlihatkan bahwa proses konfirmasi pembayaran oleh Pembeli, diawali dengan adanya proses login. Jika login benar, maka actor

Pembeli dapat memilih menu tagihan untuk dapat menampilkan daftar tagihan yang belum akan dikonfirmasi. Setelah memilih salah satu tagihan, maka proses konfirmasi pembayaran diawali dengan memasukkan data pembayaran. Setelah dianggap data pembayaran benar oleh Pembeli, maka dapat dilanjutkan ke proses

posting data pembayaran ke server. Sebelum di-posting ke server, terlebih dahulu data pembayaran tersebut diproses enkripsi sehingga menjadi data chipertext. Data pembayaran berbentuk chipertext tersebut, lalu dikirim ke server. Oleh aplikasi

server, data pembayaran berbentuk chipertext diproses dekripsi untuk mengembalikan menjadi plaintext data pembayaran, setelah itu disimpan kedalam basis data. Setelah tersimpan, aplikasi server akan merubah status konfirmasi pembayaran tagihan tersebut menjadi 1 untuk dapat melakukan proses pengiriman notifikasi konfirmasi pembayaran Pembeli kepada Admin Klaster.

(13)

melakukan proses dekripsi chipertext pesan, sehingga aplikasi client dapat mengetahui id_order yang akan dipergunakan untuk melakukan request detil data id_order kepada aplikasi server. Untuk menjamin kerahasiaan data, id_order juga di-encode oleh aplikasi client dalam proses request detil data order. Begitu juga data detil order, oleh aplikasi server di-encode sebelum dikirim ke client.

Gambar 14 Activity Diagram Konfirmasi Pembayaran pada E-Commerce

Sequence diagram menggambarkan interaksi antar obyek di dalam dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri antar dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait). Sequence diagram yang digunakan pada penelitian ini meliputi konfirmasi pembayaran oleh Admin Klaster pada e-commerce dan Pembeli pada m-commerce.

Gambar 15Sequence Diagram Konfirmasi Pembayaran oleh Pembeli pada Aplikasi M-Commerce

Sequence Diagram konfirmasi pembayaran oleh Pembeli pada m-commerce

(14)

1. Pada langkah pertama yang dilakukan saat proses konfirmasi pembayaran, pembeli memasukkan data pembayaran pada halaman konfirmasi yang ditampilkan oleh class ConfirmationActivity.

2. Kemudian class ConfirmationActivity menjalankan fungsi encrypt() yang berada di class MCrypt untuk mendapatkan hasil encode dari data pembayaran. 3. Setelah data pembayaran berhasil di-encode, maka aplikasi client akan mengirimkan data ke aplikasi server dengan mengirimkan request HTTP POST. 4. Request tersebut akan menjalankan fungsi yang ada di class controller, yaitu

kelas Order() pada aplikasi server.

5. Data yang diterima aplikasi server berupa data yang telah di-encrypt, maka supaya data dapat dibaca, maka class Order memanggil fungsi decrypt() yang ada di class Mod_Order.

6. Fungsi decrypt() akan mengembalikan hasil kembalian berupa data yang telah di-decode dalam bentuk String.

7. Setelah data berhasil didapatkan maka class Order akan memanggil fungsi updateKonfirmasiPembayaran() di class Mod_Order untuk memasukkan data pembayaran ke database.

8. Setelah data berhasil dimasukkan ke database, maka Pembeli akan mendapatkan pesan pemberitahuan atau notifikasi bahwa proses tersebut berhasil.

Class diagram menggambarkan interaksi antar class serta atribut-atribut yang melekat pada class tersebut. Pada penelitian ini, memiliki 2 (dua) class diagram, yaitu class diagram aplikasi server dan class diagram aplikasi client.

Aplikasi server berfungsi untuk melakukan layanan kepada aplikasi client

guna proses transaksi pengambilan maupun pengiriman data dengan DBMS Server, dimana DBMS Server yang digunakan adalah MySql. Class yang bertugas melakukan kelola data ke DBMS Server tersebut adalah class Order dan class Mod_Order. Selain hal itu, juga memiliki fungsi untuk proses enkripsi dan dekripsi data, yaitu pada class Mod_Mcrypt berdasarkan perintah dari class Order. Untuk dapat memperjelas relasi antar class pada aplikasi server, maka dapat dilihat pada Gambar 16.

Gambar 16Class Diagram Aplikasi Server

(15)

Gambar 17 terlihat bahwa untuk dapat mengamankan data berupa pesan notifikasi melalui GCM, maka disediakan class MCrypt yang bertugas melakukan proses enkripsi dan dekripsi isi pesan notifikasi. Dengan demikian, client dapat melakukan proses dekripsi pesan notifikasi sebelum pesan ditampilkan kepada actor. Untuk semua transaksi pada m-commerce, khususnya proses checkout dan konfirmasi pembayaran, dirancang beberapa class untuk melakukan transaksi tersebut, yaitu class ConfirmationActivity, class PostSecureTask dan class NetworkUtility.

Gambar 17Class Diagram Aplikasi Client

4. Hasil dan Pembahasan

Aplikasi yang dibangun pada penelitian ini diimplementasikan pada aplikasi

Android sebagai aplikasi client, dan aplikasi Web sebagai aplikasi server. Kedua aplikasi tersebut memiliki peranan penting yang saling terkait, yang digunakan oleh

user yang berbeda. Pada aplikasi Android akan digunakan oleh Pembeli untuk melakukan proses pemesanan dan konfirmasi pembayaran, sedangkan pada aplikasi

Web digunakan Admin Klaster untuk menyetujui konfirmasi pembayaran dari Pembeli.

Aplikasi client yaitu aplikasi berbasis Android yang dibangun pada penelitian ini, dikembangkan menggunakan bahasa pemrograman Java, serta memanfaatkan framework Android SDK yang didapat melalui situs resmi pengembang Android. Aplikasi Android dibangun menggunakan Eclipse Juno

sebagai alat untuk menulis kode hingga men-deploy kode menjadi sebuah file

berekstensi apk, yang nantinya dapat digunakan untuk memasang aplikasi pada perangkat Android. Pada project Android Application yang dibangun dengan

Eclipse Juno menggunakan tiga pustaka yaitu Android Support v7, Google Play Service, dan Jackson untuk mendukung pengembangan aplikasi ini. Pustaka

AndroidSupportv7 digunakan supaya aplikasi dapat menampilkan actionBar pada sistem operasi Android 2.3.3, pustaka Google Play Service digunakan supaya aplikasi dapat memanfaatkan layanan GoogleCloudMessaging, sedangkan pustaka

Jackson digunakan supaya aplikasi dapat mengkonversi data yang diterima server

dalam bentuk JSON.

(16)

(ADT) untuk menghubungkan dengan Android SDK. Pada Android SDK tersebut, algoritma AES 128 bit dapat diimpelementasikan, dengan cara mengimport class

yang berada pada package javax.crypto.

Aplikasi client pada penelitian ini pada prinsipnya merupakan aplikasi m-commerce Sistem Jejaring Klaster. Penerapan algoritma AES 128 bit, hanya dipergunakan untuk mengamankan data-data transaksi antara lain checkout, konfirmasi pembayaran oleh Pembeli, dan pengiriman pesan notifikasi Diterima atau Ditolak konfirmasi pembayaran Pembeli dari Admin Klaster. Tampilan keranjang belanja actor Pembeli dapat dilihat pada Gambar 18, dan transaksi

checkout pada Gambar 19.

Gambar 18 Tampilan Keranjang Belanja Gambar 19 Tampilan Transaksi Checkout

Sedangkan, tampilan transaksi konfirmasi pembayaran oleh actor Pembeli dapat dilihat pada Gambar 20, dan Gambar 21 merupakan tampilan notifikasi pesan konfirmasi pembayaran pada actor Pembeli dari Admin Klaster.

Gambar 20 Tampilan Transaksi Konfirmasi Gambar 21 Tampilan Pesan Notifikasi Pembayaran oleh Pembeli Konfirmasi Pembayaran Pembeli

Aplikasi server yang dibangun pada penelitian ini berbasis Web, dikembangkan menggunakan Bahasa pemrograman PHP, dan menggunakan

(17)

bagian ini, pembahasan hanya berfokus pada proses enkripsi dan dekripsi menggunakan algoritma AES, guna keamanan pada transmisi data melalui protokol http atau pada port 80.

Pembahasan implementasi enkripsi dan dekripsi pada Konfirmasi Pembayaran oleh Pembeli pada Aplikasi Client. Data yang berada di jaringan selama proses transmisi dari aplikasi client menuju aplikasi server, saat melakukan melakukan konfirmasi pembayaran diubah menjadi sebuah pesan chiper yang dienkripsi menggunakan algoritma AES, dengan kunci public yang bersifat statis yang disimpan dalam aplikasi server maupun client, dan kunci private yang diambil dari id GCM pengguna yang telah di hash dalam format MD5. Id GCM dari setiap pembeli dapat diperoleh melalui proses request ke layanan Google Cloud Messaging yang dilakukan oleh aplikasi Android, yang nantinya akan disimpan pada perangkat Android dan server. Perintah yang digunakan untuk mendapatkan id GCM dapat dilihat pada kode program 1.

Kode Program 1Request ID GCM

Pada kode program 1 pada baris kode ke-1 menunjukkan aplikasi pertama-tama memeriksa kondisi objek bernama gcm yang merupakan objek dari kelas

GoogleCloudMessaging. Jika objek tersebut bernilai null maka aplikasi akan menginisialisasi objek tersebut sebagai sebuah objek baru yang dapat dilihat pada baris kode ke-2. Kemudian objek tersebut memanggil fungsi bernama register

dengan memasukkan parameter bernama SENDER_ID berupa id project yang didapat dari GoogleAPIConsole yang nantinya akan mengembalikan nilai berupa id gcm yang akan disimpan pada variabel bernama regid bertipe String yang dapat dilihat pada baris kode ke-4. Proses tersebut berjalan ketika aplikasi tidak menemukan id gcm pada sharedpreference maupun pada basis data di server serta ditempatkan pada proses login maupun register sebagai pembeli pada aplikasi

Android.

Setelah id gcm berhasil didapatkan dan disimpan pada perangkat Android

maupun basis data di server, maka proses enkripsi dan dekripsi dapat dilakukan karena kunci private telah dimiliki. Proses enkripsi pada aplikasi client digunakan saat mengirimkan parameter pada request HTTP POST ke aplikasi server ketika melakukan konfirmasi pembayaran. Perintah yang digunakan untuk melakukan enkripsi pada aplikasi client dapat dilihat pada kode program 2.

Kode Program 2 Fungsi Enkripsi Pada Aplikasi Client

Pada kode program 2, pada baris kode ke-1 menunjukkan objek bernama

cipher yang merupakan objek dari kelas Cipher memanggil fungsi yaitu init() dengan parameter berupa mode enkripsi, kunci private, dan kunci public untuk menginisialisasi spesifikasi kunci yang dibutuhkan untuk memulai proses enkripsi.

1. if (gcm == null) {

2. gcm = GoogleCloudMessaging.getInstance(context);

3. }

4. regid = gcm.register(SENDER_ID);

1. cipher.init(Cipher.ENCRYPT_MODE, keyspec, ivspec);

(18)

Kemudian pada baris kode ke-2 objek chipper memanggil fungsi doFinal() dengan parameter teks yang akan dienkripsi untuk mendapatkan hasil enkripsi yang akan menghasilkan data yang bertipe byte. Data dalam bentuk byte tersebut akan dikembalikan berupa String dengan memanggil fungsi bytesToHex() .Setelah hasil enkripsi diperoleh maka aplikasi akan mengirimkan pesan chipper tersebut ke aplikasi server melalui request HTTPPOST.

Setelah aplikasi menerima pesan chiper dari aplikasi client, maka aplikasi

server harus mendekripsi pesan tersebut supaya dapat membaca parameter yang didapat dari request HTTP POST dari aplikasi client. Perintah yang digunakan untuk melakukan dekripsi pada aplikasi server dapat dilihat pada kode program 3.

Kode Program 3 Fungsi Dekripsi Pada Aplikasi Server

Pada kode program 3, pada baris kode ke-1 menunjukkan fungsi dekripsi berada pada fungsi decrypt dengan parameter kunci public, kunci private, dan teks yang akan didekripsi. Parameter teks terebut kemudian diubah menjadi sebuah data binary dengan memanfaatkan fungsi hex2bin() yang nantinya hasilnya akan disimpan pada suatu variable bernama $code yang ditunjukkan pada baris kode ke-2. Setelah data tersebut diperoleh maka module dari suatu alogaritma yaitu

“rijndael-128” dengan menggunakan mode “cbc” akan dibuka dengan fungsi

mcrypt_module_open yang nantinya akan menghasilkan kembalian berupa

encryption descriptor untuk objek td. Kemudian pada baris kode ke-3, aplikasi menginisialisasi setiap buffer yang akan digunakan untuk proses dekripsi dengan fungsi mcrypt_generic_init sebelum melakukan proses dekripsi dengan fungsi

mdecrypt_generic yang ditunjukkan pada baris kode ke-4. Pada fungsi

mcrypt_generic, hasil dekripsi dapat dihasilkan dalam bentuk String, dengan memasukkan parameter berupa encryption descriptor, dan data yang akan didekripsi seperti yang dapat dilihat dari baris kode ke-5. Setelah proses dekripsi selesai dilakukan, maka hasil dekripsi akan ditampung pada variabel bernama

decrypted bertipe String dan aplikasi akan menutup setiap buffer dan module yang digunakan untuk proses dekripsi yang ditunjukkan pada baris kode ke-6 sampai baris kode ke-7. Setelah buffer dan module berhasil ditutup maka hasil dekripsi yang didapat dikembalikan.

Implementasi enkripsi dan dekripsi pada Konfirmasi Pembayaran oleh Admin Klaster, yaitu data yang berada di jaringan selama proses mengirim pesan notifikasi dari aplikasi server ke Google Cloud Messaging, maupun dari Google Cloud Messaging ke aplikasi client berupa pesan chiper. Pesan notifikasi akan dikirim ketika admin klaster telah menyetujui atau menolak konfirmasi pembayaran dari pembeli. Perintah yang digunakan untuk melakukan dekripsi pada aplikasi

server dapat dilihat pada kode program 4.

Kode Program 4 Fungsi Enkripsi Pada Aplikasi Server

1. function decrypt($iv,$key,$code) { 2. $code = $this->hex2bin($code);

3. $td = mcrypt_module_open('rijndael-128', '', 'cbc', $iv); 4. mcrypt_generic_init($td, $key, $iv);

5. $decrypted = mdecrypt_generic($td, $code); 6. mcrypt_generic_deinit($td);

7. mcrypt_module_close($td);

(19)

Pada kode program 4, pada baris kode ke-1 menunjukkan fungsi dekripsi berada pada fungsi encrypt dengan parameter kunci public, kunci private, dan teks yang akan dienkripsi. Kemudian moduledari suatu alogaritma yaitu “rijndael-128”

dengan menggunakan mode “cbc” akan dibuka dengan fungsi

mcrypt_module_open yang nantinya akan menghasilkan kembalian berupa

encryptiondescriptor untuk objek td seperti yang dapat dilihat pada baris kode ke-2. Kemudian aplikasi menginisialisasi setiap buffer yang akan digunakan untuk proses dekripsi dengan fungsi mcrypt_generic_init sebelum melakukan proses dekripsi dengan fungsi mdecrypt_generic yang ditunjukkan pada baris kode ke-3. Pada fungsi mcrypt_generic, hasil enkripsi dapat dihasilkan dalam bentuk String,

dengan memasukkan parameter berupa encryptiondescriptor, dan data yang akan dienkripsi. Setelah proses enkripsi selesai dilakukan, maka hasil dekripsi akan ditampung pada variabel bernama encrypted bertipe String pada baris kode ke-4 dan aplikasi akan menutup setiap buffer dan module yang digunakan untuk proses dekripsi yang ditunjukkan pada baris kode ke-5 sampai baris kode ke-6. Setelah buffer dan module berhasil ditutup maka hasil dekripsi yang didapat dikembalikan. Setelah pesan untuk notifikasi sudah terenkripsi, maka aplikasi server

akan mengirimkan request PUSH ke layanan GoogleCloudMessaging. Pesan yang dikirimkan ke layanan Google Cloud Messaging berupa pesan chipper, hingga nantinya akan diterima aplikasi client. Maka, pesan tersebut harus didekripsi supaya aplikasi client dapat membaca pesan notifikasi dari layanan Google Cloud Messaging. Perintah yang digunakan untuk melakukan dekripsi pada aplikasi client

dapat dilihat pada kode program 5.

Kode Program 5 Fungsi Dekripsi Pada Aplikasi Client

Pada kode program 5, pada baris kode ke-1, menunjukkan objek bernama

cipher yang merupakan objek dari kelas Cipher memanggil fungsi yaitu init() dengan parameter berupa mode enkripsi, kunci private, dan kunci public, untuk menginisialisasi spesifikasi kunci yang dibutuhkan untuk memulai proses dekripsi. Kemudian pada baris kode ke-2, objek chipper memanggil fungsi doFinal(), dengan parameter teks yang akan didekripsi untuk mendapatkan hasil enkripsi yang akan disimpan pada variabel dc yang bertipe byte. Kemudian pada baris kode ke-3

1. function encrypt($iv,$key,$str) {

2. $td = mcrypt_module_open('rijndael-128', '', 'cbc', $iv); 3. mcrypt_generic_init($td, $key, $iv);

4. $encrypted = mcrypt_generic($td, $str); 5. mcrypt_generic_deinit($td);

6. mcrypt_module_close($td); 7. return bin2hex($encrypted);}

1 cipher.init(Cipher.DECRYPT_MODE, keyspec, ivspec); 2 byte[] decrypted = cipher.doFinal(hexToBytes(code)); 3 if (decrypted.length > 0) {

4 int trim = 0;

5 for (int i = decrypted.length - 1; i >= 0; i--) 6 if (decrypted[i] == 0) {

7 trim++;} 8 if (trim > 0) {

9 byte[] newArray = new byte[decrypted.length - trim];

10 System.arraycopy(decrypted, 0, newArray, 0, decrypted.length-trim); 11 decrypted = newArray;}

12 }

(20)

sampai baris kode ke-12, aplikasi menghapus spasi yang ditemukan pada hasil dekripsi tersebut.

5. Uji Sistem

Pengujian yang pertama dengan menggunakan metode black-box, dengan hasil yang dapat dilihat pada Tabel 1.

Tabel 1 Hasil Pengujian Black-box

No. Proses Hasil yang

diharapkan Hasil yang Muncul Simpulan

1. Enkripsi data checkout Data terenkripsi Data terenkripsi Valid

2. Dekripsi data checkout Data terdekripsi Data terdekripsi Valid

3. Enkripsi data konfirmasi

pembayaran

Data terenkripsi Data terenkripsi Valid

4. Dekripsi data konfirmasi

pembayaran

Data terdekripsi Data terdekripsi Valid

5. Enkripsi pesan notifikasi

konfirmasi pembayaran diterima

Data terenkripsi Data terenkripsi Valid

6. Dekripsi pesan notifikasi

konfirmasi pembayaran diterima

Data terdekripsi Data terdekripsi Valid

7. Enkripsi pesan notifikasi

konfirmasi status packaging / kirim

Data terenkripsi Data terenkripsi Valid

8. Dekripsi pesan notifikasi

konfirmasi status packaging / kirim

Data terdekripsi Data terdekripsi Valid

Pengujian yang kedua digunakan untuk membuktikan bahwa data yang melalui media transmisi yaitu protocol http pada aplikasi client-server, merupakan data hasil proses enkripsi menggunakan algoritma AES. Pengujian ini menggunakan aplikasi spyware bernama tPacketCapture karena diinstall pada aplikasi mobile Android. Hasil capture proses checkout, dapat dilihat pada Gambar 22. Sedangkan, capture hasil posting data transaksi konfirmasi pembayaran Pembeli dapat dilihat pada Gambar 23.

(21)

Gambar 22 Hasil Capture Proses Checkout Gambar 23 Hasil Capture Proses Konfirmasi

Pada Aplikasi Client Pembayaran Pada Aplikasi Client

Kedua gambar tersebut membuktikan bahwa penerapan algoritma AES 128 bit sudah dapat diimpelemntasikan. Algoritma AES tersebut, sudah dapat mengamankan data-data yang melalui media transmisi pada transaksi-transaksi bisnis aplikasi client-server m-commerce Sistem Jejaring Klaster.

6. Simpulan

Berdasarkan hasil dari perancangan dan implementasi penerapan algoritma AES 128 bit guna keamanan transmisi data pada aplikasi client-server, maka diperoleh kesimpulan yaitu pertama, didalam menjaga kerahasiaan data dilakukan dengan membangun fungsi-fungsi enkripsi dan dekripsi di sisi server maupun di sisi client, sehingga tercapai konsep kerahasiaan data (confidenciallity). Kedua, dengan menggunakan id GCM sebagai privat key pada algoritma AES, digunakan untuk otentikasi transaksi bisnis pada aplikasi client. Ketiga, Untuk menjamin panjang kunci hingga 128 bit, maka id GCM terlebih dahulu dikenai proses hash

md5.

Saran pengembangan pada sistem keamanan data, privat key dapat diperpanjang hingga 256 bit agar lebih aman. Untuk pengamanan pada transmisi data, algoritma dapat diganti dengan menggunakana algoritma yang terbaru, dengan cara hanya mengubah fungsi enkripsi dan dekripsi di sisi client maupun di sisi

server.

7. Pustaka

[1] Perdana, J. 2013. Transaksi Online Indonesia 2015 Diprediksi Rp 95 triliun Waktunya Brand Besar Geluti E-Commerce. http://the- marketeers.com/archives/transaksi-online-indonesia-2015-diprediksi-rp95-triliun-waktunya-brand-besar-geluti-e-commerce.html. Diakses tanggal 24 Maret 2014.

[2] Tobing, D. 2014. Pertumbuhan Internet Banking dan e-Commerce di Indonesia : ATM dan CoD Mendominasi.

http://startupbisnis.com/pertumbuhan-internet-banking-dan-e-commerce-di-indonesia-atm-dan-cod-mendominasi/. Diakses tanggal 24 Maret 2014 [3] Suprihadi, Hudiono, R., Sinatra, L. 2013. Rancang Bangun Sistem Jejaring

Klaster Berbasis Web Dengan Pendekatan Model E-Commerce:

Marketplace Concentrator. Jurnal Aiti: Vol. 10 No. 1 Februari 2013. FTI-UKSW. Salatiga.

[4] Widayanti, R. 2012, Konsep Keamanan E-Commerce. http://www.esaunggul.ac.id/article/konsep-keamanan-e-commerce-2/. Diakses tanggal 24 Maret 2014

(22)

[6] Kurniawan, Yusuf. 2004. Kriptografi Keamanan Internet dan Jaringan Telekomunikasi. Bandung : Informatika.

[7] Munir, Rinaldi. 2004. Advanced Encryption Standard (AES).

www.informatika.org/~rinaldi/.../MakalahIF505430708089.pdf. Diakses tanggal 7 Maret 2014.

[8] Basofi, A. 2013. Database Client / Server. http://lecturer.eepis-

its.edu/~ariv/Database%202/Pertemuan-10%20(Database%20Client-Server).pdf. Diakses tanggal 25 Maret 2014.

[9] Budi, S. 2006. Client Server dan Sistem Terdistribusi. Yogyakarta: Penerbit Andi.

[10] Siagian, FA. 2007. Perancangan Komunikasi Client Server dan Sistem Database. http://repository.usu.ac.id/ bitstream/123456789/ 11859/1/09E00061.pdf. Diakses tanggal 21 Maret 2014.

[11] Pujiyono, dkk, 2004, Perbandingan Model Two-Tier dengan Three-Tier dalam Asritektur Client/Server untuk Mengolah Perintah Query pada

Aplikasi Database.

http://journal.uii.ac.id/index.php/Snati/article/viewFile/1810/1589. Diakses tanggal 26 Maret 2014.

[12] Anonim. 2012. Bab 2 Landasan Teori.

http://library.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00346-IF%20Bab2001.pdf. Diakses tanggal 25 Maret 2014.

(23)

Gambar

Gambar 2  Diagram Proses Enkripsi dan Dekripsi[7]
Gambar 3   Komponen Dasar Client Server[9]
Gambar 4  Model Two Tier Client Server[11]
Gambar 8  Arsitektur Client-Server Sistem Keamanan Transmisi Data Pada Aplikasi Client Server
+7

Referensi

Dokumen terkait

Dibandingkan dengan perlakuan donor PGC- sirkulasi segar, donor PGC-sirkulasi beku mendapatkan hasil yang kurang memuaskan karena Sampai dengan pengamatan

Peneliti juga melakukan survei penyebaran angket kepada siswa yang dilakukan pada tanggal 28 Mei 2019 di Sekolah Dasar Negeri 2 Pemaron dengan menggunakan

Dengan adanya penelitian ini, penulis menyarankan agar generasi muda sekarang dapat lebih mempertahankan budaya bahasa daerah yang dalam hal ini bahasa Sanger

Jenis penelitian ini menggunakan jenis penelitian kualitatif. Metode kualitatif adalah metode penelitian yang bersifat karakteristik, data yang dinyatakan dalam

Gambar Alat Prototype Kontrol Temperatur Pada Sebuah Inkubator

Edema biasa terjadi pada kehamilan normal, sehingga edema bukanlah tanda pre-eklampsia yang dapat dipercaya kecuali jika edema juga mulai terjadi pada tangan dan wajah, serta

“pada dasarnya tugas KUA itu hakekatnya hukum, maka adanya pembatalan perkawinan itu pengertiannya agar tidak terjadi batal itu, walaupun KUA-nya

Berdasarkan hasil penelitian ini didapatkan kesimpulan bahwa terdapat hubungan antara pemakaian tabir surya dengan derajat keparahan melasma (Skor MASI) pada wanita di