• Tidak ada hasil yang ditemukan

Implementasi Sistem Pengamanan E-Commerce menggunakan Schnorr Digital Signature

N/A
N/A
Protected

Academic year: 2021

Membagikan "Implementasi Sistem Pengamanan E-Commerce menggunakan Schnorr Digital Signature"

Copied!
9
0
0

Teks penuh

(1)

Implementasi Sistem Pengamanan

E-Commerce

menggunakan

Schnorr Digital Signature

Samsul Huda, Amang Sudarsono, Mike Yuliana

Politeknik Elektronika Negeri Surabaya

Kampus PENS, Jalan Raya ITS Sukolilo, Surabaya 60111 Tel: (031) 594 7280; Fax: (031) 594 6114

Email:samsul.eepis@gmail.com,amang@pens.ac.id, mieke@pens.ac.id

Abstrak

Keamanan infrastruktur e-commerce menjadi masalah penting dalam keberlangsungan e-commerce, khususnya di indonesia. Cryptography menyediakan aspek keamanan kerahasian, integritas, otentikasi dan nirpenyangkalan dalam proses transaksi. Pada penelitian ini didesain sebuah aplikasi e-commerce dengan sistem keamanan pada layer trnsport dan layer aplikasi. Keamanan pada layer transport diimplementasikan protokol SSL(Secure Socket Layer) sedangkan di sisi layer aplikasi untuk keabsahan pengguna diimplementasikan proses digital signature yang merupakan salah satu metode public key cryptography dimana kunci yang digunakan untuk proses enkripsi dan dekripsi berbeda nilai, salah satunya adalah metode hash dan cryptography dengan algoritma Schnorr. Hasil yang didapatkan pada penelitian ini adalah sebuah sistem transaksi online yang aman dengan penerapan digital signature Schnorr pada layer aplikasi untuk validasi keabsahan pengguna dan keamanan data transaksi. Dengan level security 2048 bit dan SHA-256, rata-rata waktu eksekusi yang dibutuhkan dalam pembangkitan kunci 89,24 menit, tanda tangan 36,7 mili detik dan verifikasi 72,3 mili detik. Total waktu yang dibutuhkan untuk satu kali transaksi penjualan adalah 224 mili detik.

Kata kunci:e-commerce, cryptography, digital signature, schnorr.

1.Pendahuluan

E-commerce mulai diminati masyarakat. Masyarakat dapat dengan mudah memilih serta membeli barang secara online melalui layanan e-commerce, bahkan pembayarannya pun dapat dilakukan secara elektronik. Keamanan infrastruktur e-commerce menjadi masalah penting dalam keberlangsungan e-commerce, khususnya di indonesia. Kriptografi menjadi solusi sistem keamanan kerahasian, integritas, otentikasi dan nirpenyangkalan dalam proses transaksi[1]. Kriptografi kunci simetri adalah salah satu teknik kriptografi yang yang menggunakan kunci rahasia yang sama untuk mengenkripsi dan mendekripsi pesan, dua pihak yang saling berkomunikasi harus saling mempercayai dan merahasiakan kunci. Hal ini mengakibatkan timbulnya permasalahan bagaimana cara mendistribusikan kunci. Untuk mengatasi permasalahan distribusi kunci tersebut, berkembanglah teknik kriptografi kunci publik yang memungkinkan pengguna berkomunikasi secara aman tanpa perlu berbagi kunci rahasia. Pada teknik ini setiap user atau setiap perangkat dalam berkomunikasi memiliki sepasang kunci, yakni kunci publik dan kunci privat, dan satu set operasi. Kunci publik tidak bersifat rahasia dan digunakan untuk mengenkripsi pesan, sedangkan kunci privat bersifat rahasia dan digunakan untuk mendekripsi pesan. Aplikasi lain dari kriptografi kunci publik, yang dapat memberikan aspek keamanan adalah tanda tangan digital(digital signature)[2]. Penandatanganan pesan dapat dilakukan dengan dua cara, yaitu dengan mengenkripsi pesan atau dengan cara menggunakan fungsi hash dan kriptografi kunci publik. Penandatanganan pesan dengan cara mengenkripsi menggunakan kriptografi kunci publik dapat memberikan fungsi kerahasian pesan, otentikasi, dan nirpenyangkalan. Kerahasian pesan terjamin, karena sebelum dilakukan penandatanganan, pesan telah dienkripsi.

Pada penelitian sebelumya Ashvini a/p subramaniam,[3] “A Study on Elliptic Curve Digital Signature Algorithm(ECDSA) for Reliable E-Commerce Applications.” Pada penelitian ini dilakukan studi mengenai penerapan algoritma ECDSA untuk aplikasi e-commerce sebagai salah satu sistem keamanan yang dapat diandalkan. Pada penelitian ini dihasilkan bahwa digital signature menggunakan algoritma ECDSA merupakan solusi keamanan e-commerce yang dapat diandalkan karena performa yang tinggi dengan ukuran kunci yang sangat kecil, tingkat komputasi rendah dan proses pembangkitan kunci yang cukup cepat. Rizal rahardian,[4]

(2)

“Implementasi Public Key Cryptography untuk Aplikasi Transaksi Online” Pada penelitian ini dilakukan pengamanan data pembelian dan pembayaran yang dikirimkan ke server e-commerce, kemudian penjual meneruskan data pembayaran ke server bank. Pengamanan data dalam transaksi dilakukan menggunakan metode kriptografi RSA untuk enkripsi data dan algoritma kriptografi DSA untuk proses digital signature. Hasil dari penelitian ini masih belum sempurna, yaitu sistem enkripsi ini hanya bekerja apabila panjang kunci yang digunakan tidak lebih dari 8 byte atau 64 bit, dimana konsep sistem masih memiliki kekurangan dalam penanganannya dan belum memenuhi standar. Standar yang digunakan NIST (National Institute of Standards and Technology) untuk panjang kunci RSA yang dianggap cukup aman menggunakan kunci dengan panjang 2048 bit. Penelitian ini dilakukan untuk memastikan keabsahan pengguna serta data atau informasi dalam transaksi online dengan enkripsi data dan digital signature menggunakan algoritma schnorr sehingga tercipta aplikasi e-commerce dengan sistem pengamanan data transaksi yang handal.

2.Algoritma Schnorr

Algoritma tanda tangan digital Schnorr memanfaatkan kesulitan beberapa permasalahan logaritma diskrit untuk dipecahkan sebagai dasar dari kemanananya. Algoritma schnorr merupakan algoritma kriptografi yang cukup sederhana namun memberikan keamanan yang efisien dan cocok untuk diimplementasikan dalam aplikasi transaksi pembayaran, seperti electronic commerce, electronic payment, electronic toll collection dan lainnnya[5][6]. Berdasarkan Tabel 1 menunjukkan data tentang Rekomendasi standarisasi penggunaan algoritma kriptografi NIST tahun 2012 [7], maka dalam sistem ini dirancang dengan mengimplementasikan algoritma schnorr dengan properti sistem keamanan yang masuk kategori aman antara tahun 2011- 2030 adalah dengan level security 2048 bit dan fungsi hash SHA-256.

Tabel 1. Rekomendasi NIST tahun 2012 [7]

Date Asymetric Ellipic Curve Hash

2010 (Legacy) 1024 160 SHA-1 SHA-224 SHA-256 SHA-384 SHA-512 2011-2030 2048 224 SHA-224 SHA-256 SHA-384 SHA-512 > 2030 3072 256 SHA-256 SHA-384 SHA-512 >> 2030 7680 384 SHA-384 SHA-512 >>> 2030 15360 512 SHA-512

Proses penandatanganan dengan algoritma schnorr terbagi menjadi tiga bagian: pembangkitan kunci, penandatanganan, dan verifikasi[5][6].

a. Pembangkitan kunci (Key Generation)

Langkah – langkah yang dilakukan untuk membangkitkan kunci adalah sebagai berikut: 1) Memilih bilangan prima p, dengan syarat p ≥ 22048

2) Memilih bilangan prima q, dengan syarat q|p-1 dan q ≥ 2160 3) Memilih g dari Zp

*

dan g ≠ 1. Zp *

adalah sekumpulan bilangan yang kongruen dan relatif prima dengan p (atau multiplicative group of integers modulo p) untuk beberapa bilangan prima p.

4) Memilih x dari Zq

5) Menghitung y ≡ gx(mod p) ………(2.1)

(3)

b. Penandatanganan (Signing)

Langkah – langkah untuk penandatanganan suatu pesan atau dokumen adalah sebagai berikut: 1) Menentukan fungsi hash yang akan digunakan (misalnya h)

2) Memilih k secara acak dari Zq

3) Menghitung r = gk(mod p) ………(2.2)

4) Menghitung e = h(r, M) dengan M adalah pesan ………(2.3)

5) Menghitung s = k – xe (mod q) ………(2.4)

6) Tanda tangannya adalah S = (e, s) c. Verifikasi (Verifying)

Untuk melakukan verifikasi, maka perlu menghitung

r = gSye(mod p) ………(2.5)

Tanda tangan valid jika e = h(r’, M) ………(2.6)

3.SHA-256

Fungsi hash dalam kriptografi adalah fungsi hash yang berupa sebuah algoritma yang mengambil sejumlah blok data dan mengembalikan bit string berukuran tetap[1]. String yang dihasilkan tersebut merupakan hash value. Perubahan yang dilakukan pada data walaupun sangat kecil, sengaja ataupun tidak, akan menyebabkan perubahan yang sangat banyak pada hasil hash value. Bahkan hash value dapat menjadi berbeda sama sekali. Data yang di hash sering disebut pesan, hash value disebut digest. Hash umumnya disajikan dalam bentuk bilangan hexadecimal, yaitu kombinasi antara angka 0-9 dengan huruf a hingga f.

Menurut jenisnya SHA dapat dispesifikasikan menjadi 4 bagian yaitu: SHA-1, SHA-256, SHA-384, dan SHA-512 dengan properti seperti pada Tabel 2.

Tabel 2. Properti Fungsi Hash SHA[1]

Algorithm Message Size (bits) Block Size (bits) Word Size (bits) Message Digest Size (bits) Security2 (bits) SHA-1 <264 512 32 160 80 SHA-256 <264 512 32 256 128 SHA-384 <2128 1024 64 184 192 SHA-512 <2128 1024 64 512 256

4.Alat dan Bahan

Tabel 3. Spesifikasi Hardware/Software

Spesifikasi Keterangan Bank Server Software Java 1.7.045 Apache tomcat 7.0.47 MySQL V.5.5.32

O/S Window 7 32-bit

CPU Intel core i3 -370M 2.4 GHz

RAM 2GB DDR3 E-commerce Server Software Java 1.7.045 Apache tomcat 7.0.47 MySQL V.5.5.32

O/S Window 7 64-bit

CPU Intel core i3 -370M 2.4 GHz

RAM 2GB DDR3

Client

Software Java 1.7.045

O/S Window 7 32-bit

CPU Intel core i3 -370M 2.4 GHz

(4)

Pada penelitian ini digunakan tiga buah PC (Personal Computer). PC 1 ini bertindak sebagai Server Bank, PC 2 sebagai Server E-Commerce, dan PC lain sebagai client. Spesifikasi dari peralatan yang digunakan dalam penelitian ini ditunjukkan pada Tabel 3.

5.Desain Sistem

Gambar 1. Desain Sistem Sistem e-commerce yang dirancang melibatkan tiga komponen, yaitu: 1. Buyer(Pembeli)

2. Seller(Penjual) 3. Bank

Aplikasi sistem e-commerce yang dirancang meliputi : 1. Protokol Registrasi

2. Protokol Transaksi 3. Protokol Pembayaran

A. Protokol registrasi

Gambar 2. Protokol registrasi

seller buyer

(a)

(c)

(b)

(5)

a. Seller dan buyer melakukan registrasi sebagai nasabah member ke bank(a) secara online dengan memberikan personal data berupa username, password, email, alamat dan nomer telepon. Bank sebagai pihak yang dipercaya kredibilitasnya dan memiliki otoritas untuk membangkitkan kunci dan mendistribusikannya ke nasabah.

b. Bank memberikan balasan konfirmasi atas registrasi nasabah (seller dan buyer) berupa kunci privat dan kunci publik untuk masing-masing nasabah (b)(c) yaitu (Pks, Sks) untuk seller dan (Pkb, Skb) untuk buyer.

B. Protokol transaksi

Seller dan buyer melakukan proses transaksi. Barang belanjaan serta alamat pengirim dan mengirmkannya ke server e-commerce sebagai data informasi pembelian. Kemudian, dilakukan signing terhadap data pembelian dengan asumsi sudah terjadi pertukaran public key antara seller dengan buyer. Signature beserta data pembelian dikirim ke server e-commerce.

Gambar 3.. Protokol transaksi

Dalam protokol ini, informasi berupa pesan pembelian(M) dienkipsi(e) oleh buyer dengan enkripsi AES-128 bit menghaslkan chiper(c). Kemudian dilakukan signing terhadap chiper dengan algoritma schnorr dan menghasilkan signature, signature dan chiper dikirim ke seller. Seller melakukan pemisahan terhadap chiper dan signature. Chiper didekripsi dengan shared key menggunakan AES-128 bit dan diperoleh pesan asli. Seller melakukan verifikasi terhadap pesan asli dan signature menggunakan publickey buyer.

C. Protokol pembayaran

Setelah verifikasi terhadap informasi pemesanan dinyatakan valid, buyer melakukan pembayaran terhadap barang pembelian pada bank yang telah ditunjuk oleh seller. Seller melakukan pengecekan atas pembayaran yang dilakukan oleh buyer. Apabila dinyatakan valid, maka seller mengirim pesan pemberiyahuan bahwa transaksi atas pembelian barang yang dimaksud berhasil dan barang akan dikirim ke alamat buyer berupa bill pembelian.

seller buyer

C || signature

C = e(M, PkS)

Signature = Sign Schnorr(M, Skb) *Data pesanan (M)

M = d(C, SkS)

Verifification = Verify Schnorr(M, Pkb) [True]

(6)

(a)

(b)

Gambar 4. (a) Protokol pembayaran seller dengan bank (b) Protokol pembayaran seller dengan buyer

6. Hasil

Pada penelitian ini dilakukan pengujian terhadap implementasi algoritma enkripsi AES pada sistem login. Pesan masuk berupa password user. Dari grafik gambar 5, diketahui bahwa dengan pesan berukuran 0-16 byte dihasilkan chiper dengan ukuran 24 byte. Selanjutnya terjadi penambahan bit chiper setiap masukan pesan kelipatan 16 byte. Hal ini menyatakan bahwa kriptografi AES menghasilkan ciphertext dengan ukuran blok chiper 4 word, dimana 1 word = 32 bit, sehinggan ukuran blok chiper setara dengan 16 byte.

(7)

Gambar 5. Grafik pengaruh ukuran pesan terhadap ukuran chiper

Dari hasil implementasi schnorr digital signature dalam sistem e-commerce dengan penggunaan key size 2048 bit menghasilkan performa seperti gambar 6.

Gambar 6. Performa keysize 2048 bit

Selain implementasi sistem keamanan pada layer aplikasi, pada layer transport di implementasikan SSL(Secure Socket Layer) untuk mengamankan segala aktifitas yang terjadi pada jaringan seperti gambar 7. Dengan SSL segala aktifitas terenkripsi dan tidak dapat terdeteksi.

0 10 20 30 40 50 60 70 1 6 11 16 21 26 31 36 41 46 U ku ra n c h ip e r (B yt e )

Ukuran Pesan (Byte)

Perbandingan Ukuran chiper dengan ukuran plaintext

13252,2 3,9 5,7 242925,7 12,4 20,7 5354460,2 36,7 72,3 1 10 100 1000 10000 100000 1000000 10000000

Key Generation Signing Verifying

W ak tu ( m s)

Perbandingan Rata-rata Waktu Proses Digital Signature

512 1024 2048

(8)

Gambar 7. Implementasi Sistem Keamanan pada TCP/IP Layer

Dalam pengujian terhadap waktu eksekuasi dalam proses signing, transmisi data ke server dan waktu verifying dalam satu kali transaksi digunakan perhitungan sebagai berikut:

Total waktu eksekusi = TS+TT+TF ………(7.1)

Keterangan, TS : Total waktu signing TT : Total waktu transmisi TF : Total waktu verifying

Tabel 4. Hasil pengujian total waktu eksekusi sistem

Perhitungan Properti Waktu (ms)

Total Waktu signing Waktu Signing buyer 38 Waktu Signing seller 36

Total waktu transmisi

Waktu transmisi pesan pembelian + signature ke seller

3

Waktu transmisi pesan bill +signature ke buyer

2

Total waktu verifying Waktu Verifying seller 73 Waktu Verifying buyer 72

Total waktu eksekusi (ms) 224

TS (Total waktu signing)

Terdiri dari waktu signing yang dilakukan oleh buyer serta seller.

Waktu signing buyer terhitung setelah pemilihan barang selesai hingga sebelum check out. Waktu signing seller terhitung setelah bill pembelian selesai dibuat sampai proses signing berhasil.

TT : Total waktu transmisi

Terdiri dari waktu transmisi pesan pembelian + signature dari buyer ke seller serta waktu transmisi pesan bill+signature dari seller ke buyer. waktu transmisi pesan pembelian + signature dari buyer ke seller terhitung setelah proses signing hingga berhasil disimpan dalam database. waktu transmisi pesan bill +signature dari seller ke buyer terhitung setelah signature berhasil dibuat hingga berhasil tersimpan dalam database.

TF : Total waktu verifying

Terdiri dari waktu verifying yang dilakukan oleh buyer serta seller.Waktu verifying buyer terhitung setelah pesan bill beserta signature berhasil diambil hingga proses verifikasi berhasil. Waktu verifying seller terhitung setelah pesan pembelian beserta signature berhasil diambil hingga proses verifikasi berhasil.

(9)

7. Kesimpulan

Dari hasil penelitian ini, dapat diambil kesimpulan sebagai berikut :

1. Total waktu eksekusi schnorrdigital signature denganlevel security 2048 bit, yang terdiri dari key generation, signing dan verifying adalah 5354,6 detik atau 89,24 menit.

2. Tercipta aplikasi e-commerce dengan sistem pengamanan data transaksi yang handal dengan satu kali transaksi penjualan membutuhkan waktu 224 ms dengan spesifikasi perangkat yang digunakan.

Referensi

[1] W. Stalling. Network Security Essentials: Applications and Standards, Fourth edition, Prentice-Hall, Inc., 2011.

[2] Hongjie Zhu, Daxing Li. Research on Digital Signature in Electronic Commerce. Proceedings of the International MultiConference of Engineers and Computer Scientists 2008 Vol I IMECS 2008. 2008.

[3] Ashvivi a/p Subrahim, “A Study on Elliptic Curve Digital Signature Algorithm(ECDSA) for Reliable E-Commerce Applications”, Proceedings of Smart Computing Review, Vol.2, no.1, February 2012.

[4] Rizal Rahardian, “ Implementasi Public Key Cryptography untuk Aplikasi Transaksi Online ”, PENS-ITS Srabaya 2012. [5] Konstantinos Mastakes, “Implementation of Schnorr Signature Scheme,” University of Athens, Athens, Greece January 2013..

[6] Laura Savu, Combining Public Key Encryption with Schnorr Digital Signature, Journal of Software Engineering and Applications, 2012, 5, 102-108.

Gambar

Tabel 1. Rekomendasi NIST tahun 2012 [7]
Tabel 3. Spesifikasi Hardware/Software  Spesifikasi  Keterangan  Bank Server  Software  Java 1.7.045  Apache tomcat 7.0.47 MySQL V.5.5.32
Gambar 1. Desain Sistem
Gambar 3.. Protokol transaksi
+4

Referensi

Dokumen terkait

Penentuan bobot molekul dilakukan pada ekstrak kasar, enzim hasil pengendapan ammonium sulfat, hasil dialisis dan fraksi aktif hasil kromatografi kolom filtrasi

Peluang yang cukup lebar terbuka bagi lembaga ini meliputi: (i) jumlah lulusan sekolah menengah atas (SMA/SMK) yang merupakan calon mahasiswa terus mengalami

Hasil penelitian menunjukkan bahwa nilai sukses pemangsaan pada larva ikan kakap merah, umur D- 5 cenderung berfluktuasi, di mana pada pukul 08 00 baru 5O% dari sampel

Berdasarkan klasifikasi anak luar biasa yang digunakan dalam pendidikan luar biasa anak tunaganda adalah anak yang memiliki ketunaan lebih dari satu, misalnya tunanetra dengan

Nama Isa (Esau) itu merupakan “julukan” yang diberikan oleh kaum Yahudi (yg menghubungkan Yesus dengan musuh kuno mereka Esau. Muhammad tdk tahu bahwa nama atau julukan Esau

Sebelum Daya dari blower/ fan dapat dihitung, sejumlah parameter operasi harus diukur, termasuk kecepatan udara, head tekanan, suhu aliran udara pada fan.. Dalam rangka

Dengan penerapan permainan outdoor education sebagai perlakuan yang diberikan dalam pembelajaran penjas maka permainan outdoor education dapat berpengaruh

Mengacu pada tujuan dan sasaran dalam RPJMD Kabupaten Klungkung Tahun 2013-2018, telah ditetapkan Indikator Kinerja Utama Pemerintah Kabupaten Klungkung, berdasarkan