Perancangan Dan Implementasi Aplikasi Bluetooth

2y ago
19 Views
2 Downloads
304.55 KB
5 Pages
Last View : 1m ago
Last Download : 3m ago
Upload by : Anton Mixon
Transcription

Perancangan dan Implementasi Aplikasi Bluetooth Payment untukTelepon Seluler Menggunakan Protokol Station-to-StationEmir M. HusniSekolah Teknik Elektro & Informatika, Institut Teknologi BandungJl. Ganesha 10, Bandung 40132Tel.: 022-2500960, Faks.: 022-2534217ehusni@lskk.ee.itb.ac.idAbstrakPada penelitian ini dilakukan perancangan danimplementasi aplikasi bluetooth payment untuktelepon seluler dengan menggunakan protokolStation-to-Station yang merupakan pengembangandari algoritma Diffie-Hellman. Aplikasi inidiimplementasikan menggunakan bahasa JavaMicro Edition, khususnya J2ME, dan bahasa C.Sedangkanprogramserverdanclientdiimplementasikan menggunakan NetBeans IDEversi 6 dan Java Wireless Toolkit pada sistemoperasi Windows XP Professional. Pengujianmenunjukkan bahwa implementasi aplikasi inibekerja dengan baik sesuai dengan rancanganyang dibuat.Kata Kunci: Diffie-Hellman, protokol Station-toStation, Bluetooth payment1.PendahuluanKriptografi, atau ilmu penyandian data, adalahsuatu kombinasi bidang ilmu yang bertujuan untukmenjaga kerahasiaan suatu pesan dari akses olehorang-orang yang tidak berhak. Bidang ilmu inisemula hanya populer dalam bidang militer, untukmenyandikan pesan-pesan panglima perang kepadagaris depan pasukannya. Namun seiring dengansemakin berkembangnya teknologi dan semakinpadatnya lalu lintas informasi yang terjadi, yangtentu saja semakin menuntut adanya suatukomunikasi data yang aman, bidang ilmu inimenjadi semakin penting. Kini bidang ini menjadisalah satu topik riset yang tidak habis-habisnyadengan melibatkan semakin banyak peneliti. Ibukeilmuan dari kriptografi sebenarnya adalahmatematika, khususnya teori aljabar.Pada tahun 1976, Diffie-Hellman [1]memperkenalkan algoritma pertukaran kuncirahasia yang kemudian menjadi inspirasi revolusialgoritma kunci publik dalam ilmu kriptografi.Algoritma Diffie-Hellman ini memungkinkan duaorang atau lebih menentukan satu kunci bersamasecara rahasia. Tingkat kerahasiaan tersebut bisadicapai karena kunci rahasia tidak dipertukarkanmelalui kanal komunikasi tetapi dihitung dari kuncipublik dan kunci pribadi. Penemuan ini telahmengubah perjalanan kriptografi. Riset tentangsistem keamanan tidak lagi terfokus pada desainprotokol dan verifikasi tetapi secara intensif jugamerambah ke bidang teori bilangan dan aljabar.Penelitian yang dilakukan adalah perancangandan implementasi aplikasi Bluetooth Paymentuntuk telepon seluler yang menggunakan protokolStation-to-Station. Dimana protokol Station-toStation adalah pertukaran kunci dengan metodeDiffie-Hellman yang harus menyediakan prosesautentifikasi sehingga kedua pihak yang akanberkomunikasi yakin bahwa mereka bertukar kuncidengan pihak yang diinginkan. Algoritma yangdigunakan dalam protokol Station-to-Stationmerupakan algoritma yang telah disetujui olehNIST (National Institute of Standards andTechnologies).Implementasi perancangan algoritma dalampenelitian ini menggunakan bahasa Java MicroEdition. Selanjutnya dilakukan simulasi dengansimulator NetBeans IDE versi 6.2. Dasar teori2.1 Skema Enkripsi2.1.1 Skema Enkripsi Kunci SimetrikDalam sistem kriptografi skema enkripsi kuncisimetrik, kunci yang digunakan untuk prosesenkripsi dan dekripsi adalah sama atau simetrik.Karena kuncinya sama, kedua pengguna yangberkeinginan untuk berkomunikasi dengan rahasiaharus setuju terhadap kunci yang digunakan dankeduanya bersama-sama menjaga kunci rahasiayang digunakan. Setiap pengguna yang terlibatharus saling menaruh kepercayaan untuk tidakmembocorkan kunci yang telah disepakati.2.1.2 Skema Enkripsi Kunci PublikSistem kriptografi kunci publik mempunyai duapenggunaan utama, yaitu untuk enkripsi dan digitalsignature. Dalam sistem ini, digunakan sepasangkunci, satu kunci sebagai kunci publik (public key)dan yang lainnya sebagai kunci pribadi (privatekey). Kunci publik dipublikasikan untuk umumsedangkan kunci pribadi dijaga kerahasiaannyaoleh penerima pesan.

2.1.3 Skema Enkripsi GabunganKedua skema enkripsi diatas, masing-masingmempunyai kelebihan dan kelemahan. Skemaenkripsi kunci publik mungkin lebih ungguldibandingkan dengan skema kunci simetrik karenatingkat keamanannya yang cukup tinggi danpengaturan kunci yang lebih baik. Meskipundemikian, sistem kriptografi kunci simetrik masihsecara luas digunakan karena kecepatannya dalammemproses data lebih unggul dibandingkan dengansistem kriptografi kunci publik. Dengan g untuk membentuk sistem kriptografi yanglebih aman dan lebih cepat.2.2 Digital SignatureDigital signature berfungsi sebagai tandatangan pada komunikasi digital [1]. Untukmenandatangani sebuah pesan, A melakukansebuah perhitungan meliputi kunci pribadi danpesannya sendiri. Output dari perhitungan inilahyang disebut digital signature yang dilampirkandengan pesan. Untuk memeriksa signature, Bmelakukan perhitungan yang meliputi pesan,signature yang dimaksudkan, dan kunci publik A.Protokol yang digunakan untuk membuktikankebenaran bahwa pesan dan signature yangditerima B benar-benar dikirim oleh A :1. A mengambil pesan dan menghitung ataumembuat signature (S) dengan pesan M dankunci pribadinya (d), sehingga didapat Dd (M) S.2. B mendapatkan M dan S, dan kunci publik A(e).3. B menghitung Ee (S) M’. Jika M’ M,maka signature valid atau benar-benar milik A.Jika M atau S dimodifikasi maka signaturetidak akan valid.2.3 Protokol penentuan kunci Diffie-HellmanPertukaran kunci dengan metode DiffieHellman(Diffie-HellmanKeyExchange)merupakan suatu aplikasi dari skema enkripsigabungan yang mengijinkan dua penggunamelakukan pertukaran kunci secara rahasia melaluisaluran komunikasi yang tidak aman [2]. Duapengguna yang akan berkomunikasi melakukanpertukaran kunci menggunakan sistem kriptografikunci publik. Setelah keduanya sepakat danmemperoleh kunci yang sama, kemudiandigunakan sistem kriptografi kunci simetrik untuktahap komunikasi selanjutnya.Tingkat keamanan pertukaran kunci initergantung pada tingkat kesulitan masalahlogaritma diskret yang didefinisikan sebagaiberikut : Untuk bilangan acak b dan sebuah akar primitif adari bilangan prima p, kita dapat menemukaneksponen unik i sedemikian sehinggab ai mod p dimana 0 i (p - 1) Pangkat i disebut sebagai logaritma diskret, dantingkat kesulitan menemukan i dari bilangan (a, b,p) disebut persoalan Logaritma Diskret.Akar primitif (primitive root) dari sebuahbilangan prima p adalah bilangan a, 1 a p-1,yang pangkatnya membangkitkan semua integerdari 1 sampai p-1. Jika a akar primitif dari sebuahbilangan prima p, maka bilangan-bilangan (a modp), (a2 mod p), , (ap-1 mod p) adalah berbeda danterdiri dari bilangan mulai dari 1 sampai p-1.Bentuk dasar pertukaran kunci dengan metodeDiffie-Hellman sebagai berikut : Pihak A dan B akan berkomunikasi. A memilih suatu bilangan prima p dan a sebagaiakar primitif dari p, kemudian mengirimkan nilai adan p ke B. Nilai a dan p boleh diketahui oleh umum. Secara rahasia, A memilih bilangan acak x dan Bmemilih bilangan acak y, 1 x, y (p-2) A mengirim (ax mod p) ke B, dan B mengirim(ay mod p) ke A A menghitung KA (ay mod p)x (axy mod p)dan B menghitung KB (ax mod p)y (axy mod p).Hasil pertukaran kunci diatas adalah pihak Adan B memperoleh kunci KA dan KB yang sama,yang dapat digunakan untuk berkomunikasi dengansistem kriptografi kunci simetrik.Gambar 1. Pertukaran Kunci Diffie-Helman.2.4 Protokol Station-to-StationUntuk menghindari serangan aktif man-in-themiddle attack, pertukaran kunci dengan ikasi sehingga kedua pihak yang akanberkomunikasi yakin bahwa mereka bertukar kuncidengan pihak yang diinginkan. Salah satu carapertukaran kunci yang menyediakan prosesautentifikasi adalah protokol Station-to-Stationberdasarkan penelitian yang dilakukan oleh Diffie,van Oorschot dan Wiener [2].Proses autentifikasi pada protokol Station-toStation dilakukan dengan melibatkan tanda tangandigital (digital signature) kedua pihak yang akanmelakukan komunikasi.

Bentuk dasar protokol Station-to-Stationsebagai berikut : Pihak A dan B akan melakukan komunikasi. A dan B memilih suatu bilangan prima p dan asebagai akar primitif dari p, kemudianmengirimkan nilai a dan p ke B. Nilai a dan p boleh diketahui oleh umum. Secara rahasia, A memilih bilangan acak x danB memilih bilangan acak y, 1 x,y (p-2) A mengirim (ax mod p) ke B. B menghitung KB (ax mod p)y. B menyusun (ay mod p, ax mod p, a, p) secaraberurutan, melakukan tanda tangan digital sigB,dan mengenkripsi dengan skema enkripsi kuncisimetrik dengan kunci KB, kemudian mengirimke A bersama (ay mod p). A menghitung KA (ay mod p)x. (K KA KB) A mendekripsi pesan dari B, dan memverifikasitanda tangan digital dari B. A menyusun (ax mod p, ay mod p, a, p) secaraberurutan, melakukan tanda tangan digital sigA ,dan mengenkripsi dengan skema enkripsi kuncisimetrik dengan kunci K, kemudian mengirimke B. B mendekripsi pesan dari A, dan memverifikasitanda tangan digital dari A.Hasil pertukaran kunci diatas adalah pihak Adan B memperoleh kunci KA dan KB yang sama,yang dapat digunakan untuk berkomunikasi dengansistem kriptografi kunci simetrik. Di samping itu,pihak A dan B dapat melakukan prosesautentifikasi sehingga yakin mereka bertukar kuncidab berkomunikasi dengan pihak yang diinginkan.Gambar 2. Protokol Station-to-Station.3. Perancangan dan Implementasi3.1 Penentuan SpesifikasiDasar penentuan spesifikasi yang akandigunakan adalah pemilihan algoritma yang akandiimplementasikan telah dikenal dengan baik danbanyak digunakan sehingga telah diketahuikelebihan maupun kekurangannya. Pada penelitianini, penulis menggunakan standar yang dikeluarkanoleh NIST. Standar tersebut adalah FIPS (FederalInformation Processing Standards) dengan nomerpublikasi SP 800-57 [8] pada Tabel I berikut ini:Tabel 1. Standar NIST [8].Dari Tabel I, penulis menyusun algoritma yangdigunakan untuk menyusun protokol Station-toStation sebagai berikut : Besar bilangan prima yang digunakan 2048-bit. Algoritma tanda tangan digital : DSA (DigitalSignature Algorithm) dengan fungsi hash SHA256. Algoritma kriptografi simetrik : AES (AdvancedEncryption Standard) 128-bit.Algoritma yang dipilih diharapkan belumdipecahkan dan masih bisa dipakai hingga tahun2030 dengan tingkat keamanan minimum sebesar112-bit. Tingkat keamanan sebesar X-bit berartijika T adalah waktu untuk melakukan satu operasidari suatu algoritma diatas, maka penyerang akanmembutuhkan waktu 2X-1 T untuk memecahkanalgoritma tersebut.3.2 Perancangan SistemPerancangan sistem bluetooth payment denganprotokol Station-to-Station adalah sebagai berikut : PihakA(server/komputer)danB(client/handphone) akan melakukan komunikasi. Secara rahasia, A memilih bilangan acak x dan Bmemilih bilangan acak y, 1 x,y (p-2) A dan B memilih suatu bilangan prima p, asebagai akar primitif dari p Amemilih(axmodp),kemudianmengirimkannya ke B lewat bluetooth. B menghitung KB (ax mod p)y. B menyusun (ay mod p, ax mod p, a, p) secaraberurutan, melakukan tanda tangan digital sigB, danmengenkripsi dengan skema enkripsi kuncisimetrik dengan kunci KB, kemudian mengirim keA bersama (ay mod p) lewat bluetooth. A menghitung KA (ay mod p)x. (K KA KB)

A mendekripsi pesan dari B, dan memverifikasitanda tangan digital dari B. Jika tanda tangan digital dari B valid, Amenyusun (ax mod p, ay mod p, a, p) secaraberurutan, melakukan tanda tangan digital sigA ,dan mengenkripsi dengan skema enkripsi kuncisimetrik dengan kunci K, kemudian mengirim ke Blewat bluetooth. B mendekripsi pesan dari A, dan memverifikasitanda tangan digital dari A.Hasil pertukaran kunci diatas adalah pihak Adan B memperoleh kunci KA dan KB yang sama,yang dapat digunakan untuk berkomunikasi dengansistem kriptografi kunci simetrik. Di samping itu,pihak A dan B dapat melakukan prosesautentifikasi sehingga yakin mereka bertukar kuncidan berkomunikasi dengan pihak yang diinginkan.Untuk lebih jelasnya dapat dilihat pada gambarberikut:(Service Discovery Database). Kemudian servermenunggu koneksi dan melayani client. nya dari SDDB.Dimana koneksi antara client dan serverdilakukan melalui RFCOMM (komunikasi serialport pada bluetooth).RFCOMM adalah bagian yang menanganikomunikasi data mulai dari pembentukan koneksi,penerimaan data dan pengiriman data pada aplikasibluetooth payment ini. RFCOMM menyediakankoneksi stream-based yang sesuai dengankomunikasi serial port.Gambar 3. Bluetooth payment.Gambar 4. Arsitektur dan komponen utamaclient/server.3.3 Desain Program3.3.1 Perancangan Bluetooth PaymentBluetooth Payment adalah aplikasi pembayaransecara elektronik yang menggunakan bluetoothsebagai media transmisinya. Aplikasi ini bisaberjalan pada mobile phone yang memiliki fiturbluetooth dan Java API untuk bluetooth. Aplikasiini memungkinkan dua perangkat bluetooth untukterhubung dan kemudian bertukar paket data antarperangkat tersebut. Salah satu perangkat menjadiserver dan perangkat lainnya yang terkoneksidengan server menjadi client.Untuk implementasi ini, didesain model client /server. Arsitektur dan komponen utama client /server diperlihatkan oleh Gambar 4 denganpenjelasan sebagai berikut: Inisialisasi : semua perangkat yang akanberkomunikasi mulai mengaktifkan bluetooth. Client : suatu client menggunakan service yangditawarkan, sebelumnya client mencari semuaperangkat disekitarnya kemudian mencari serviceyang diinginkan. Server : suatu server menyediakan service untukclient, server mendaftarkan service pada SDDB3.4 ImplementasiTahap implementasi dimulai dengan membuatalgoritma pembangkitan bilangan prima danpembangkitan parameter tanda tangan digital dalambahasa C. Untuk melakukan perhitungan denganbilangan yang relatif besar, penulis menggunakanlibrary untuk bilangan besar.Sedangkan bagian-bagian algoritma kriptografi(tanda tangan digital, fungsi hash, dan kriptografisimetrik) dibuat secara tersendiri sesuai algoritmadiatas dengan bahasa Java, khususnya J2ME.Setelah algoritma-algoritma tersebut memberikanhasil yang sesuai, maka algoritma kriptografitersebut digabungkan untuk menyusun protokolStation-to-Station dan dibagi dalam dua bagianyaitu bagian A (server) dan B (client).Pada server dan client ditambahkan programuntuk berkomunikasi melalui bluetooth. Kemudianbaik program server dan client diimplementasikanmenggunakan NetBeans IDE versi 6 dan JavaWireless Toolkit pada sistem operasi Windows XPProfessional.Perangkat bluetooth yang digunakan adalahbluetooth USB dongle yang didukung software

BlueSoleil versi 3.2.2.8. Sedangkan perangkathandphone yang digunakan adalah SonyEricssonG502.payment ini masih memerlukan perbaikan untukmengurangi waktu transaksi.5.4.Pengujian dan AnalisisBagian pertama dari aplikasi BluetoothPayment menggunakan protokol Station-to-Stationadalah server mengirimkan kunci publik berupa axmod p, a, dan p ke client.Untuk bagian kedua, pihak client kemudianmembuat kunci pribadi (axy mod p) dari kuncipublik yang diterima dari server, dan membuatkunci enkripsi sebesar 128-bit yang digunakanuntuk mengenkripsi tanda tangan digital denganalgoritma AES 128-bit. Kemudian mengirim kuncipublik milik client (ay mod p) bersama dengantanda tangan digital yang telah dienkripsi ke server.Pada bagian ketiga, pihak server menerimakunci publik dari client (ay mod p) kemudianmembuat kunci pribadi (axy mod p) dan kuncienkripsi dari kunci publik. Kunci enkripsi inidigunakan untuk mendekripsi tanda tangan digitalpihak client yang diterima oleh server. Tandatangan pihak client kemudian diverifikasi untukmemeriksa apakah tanda tangan tersebut milikclient yang bersangkuan atau bukan. Prosesverifikasi tanda tangan oleh server menunjukkantanda tangan milik client adalah valid.Bagian selanjutnya adalah server membuattanda tangan digital, mengenkripsi dengan kuncienkripsi dan mengirimkannya ke client.Jika proses verifikasi oleh client menunjukkantanda tangan server adalah valid, maka client akanmelanjutkan ke tahap selanjutnya yaitu mengirimpesan ke server, seperti pada Gambar 5.Gambar 5. Pesan yang dikirim oleh client.Dari hasil yang telah diperoleh diatas, dapatdilihat bahwa aplikasi tersebut dapat berjalandengan baik.Lamanya waktu yang diperlukan untuk seluruhproses, mulai dari bagian pertama, server mengirimkunci publik, hingga proses verifikasi oleh clientadalah 2 sampai dengan 3 menit. Panjang waktu 23 menit untuk melakukan pembayaran masihmerupakan waktu yang lama untuk penggunamenunggu sehingga sistem aplikasi bluetoothKesimpulanDari hasil analisis dan pengujian yang telahdilakukan, dapat diambil beberapa kesimpulansebagai berikut :1. Algoritma Diffie-Hellman memungkinkan setiaporang mendapatkan kunci rahasia bersama tanpaharus saling bertukar informasi pribadi.2. Untuk dapat diterapkan dan memenuhi syaratkeamanan informasi, algoritma Diffie-Hellmanperlu diimplementasikan dalam bentuk protokolStation-to-Station.3. Aplikasi Bluetooth Payment dengan protokolStation-to-Station telah berjalan dengan baiktetapi waktu yang digunakan untuk proses masihmemerlukan2-3 menit. Sehingga masihdiperlukan perbaikan pemrograman untukmenyingkat waktu transaksi.Pustaka[1] W. Stallings, Cryptography and NetworkSecurity Principles and Practices, FourthEdition, Prentice Hall, 2005.[2] W. Diffie, P. Van Oorschot, dan Michael J.Wiener, Authentication and Authenticated KeyExchanges, Designs, Codes and Cryptography,2, 107-125, 1992.[3] Wade Trappe and Lawrence Washington,Introduction To Cryptography and CodingTheory, Second Edition, Pearson Prentice Hall,2006.[4] A. Menezes, P. van Oorschot, dan S. Vanstone,Handbook of Applied Cryptography, CRCPress, 1997.[5] FIPS 180-3, Secure Hash Algorithm (SHA),Federal Information Processing StandardsPublication 180, U. S. Dept. of Commerce /NationalInstituteofStandardsandTechnology, 2007.[6] FIPS 186-3, Digital Signature Standard (DSS),Federal Information Processing StandardsPublication 186, U. S. Dept. of Commerce /NationalInstituteofStandardsandTechnology, 2006.[7] FIPS 197, Advanced Encryption Standard(AES), Federal Information ProcessingStandards Publication 197, U. S. Dept. ofCommerce / National Institute of Standardsand Technology, 2001.[8] SP 800-57, Recomendation for KeyManagement, Federal Information ProcessingStandards Publication, U. S. Dept. ofCommerce / National Institute of Standardsand Technology, 2007.

A dan B memilih suatu bilangan prima p dan a sebagai akar primitif dari p, kemudian mengirimkan nilai a dan p ke B. Nilai a dan p boleh diketahui oleh umum. Secara rahasia, A memilih bilangan acak x dan B memilih b

Related Documents:

wawancara, dan kuesioner. Hasil aplikasi ini yaitu aplikasi dilengkapi dengan gambar, suara, dan kuis. Serta pengguna bisa menggunakan aplikasi dengan mudah. Aplikasi diimplementasikan menggunakan software eclipse [3]. Ali dan Patambongi (2016) memuat aplikasi pembelajaran kepada anak-anak tentang ilmu pembelajaran membaca. Aplikasi .

Perancangan. dan Implementasi. Aplikasi Pendaftaran dan Sosialisasi UMKM Berbasis Android (Studi Kasus: Disperindagkop Salatiga) Artikel Ilmiah . Oleh :

Membuat Aplikasi Implementasi Dengan Cara pembuatan aplikasi dijelaskan secara detail disertai gambar. Bermanfaat untuk programer pemula yang ingin mengetahui dan belajar tentang aplikasi database Disertai CD Master Intaller, Program Aplikasi jadi, Source Code Aplikasi serta Kamus IT Dipakai Dalam Lingkungan

MAKALAH SEMINAR TUGAS AKHIR PERANCANGAN APLIKASI PENDAMPING PEMBELAJARAN BAHASA INGGRIS MENGGUNAKAN MICROSOFT SPEECH API Karnadi*, Agung Budi Prasetijo**, R. Rizal Isnanto** . Gambar 2.3 Tahapan metodelogi perancangan Coad-Yourdon II. 3 2.3 Teknologi-Teknologi yang Mendasari Aplikasi Aplikasi yang akan dibuat ini bukanlah

REST Web Service: Gambar 3. Desain Sistem REST Web Service 3. HASIL DAN PEMBAHASAN 3.1 Gambaran Umum Aplikasi Pada Penelitian ini akan menghasilkan sebuah aplikasi pengolah pesan Yahoo Messenger dan Aplikasi REST Web Service. Aplikasi pengolah pesan Yahoo Messenger berfungsi untuk mengirim dan menerima pesan Yahoo Messenger.

Using your Bluetooth headset with the Logitech wireless hub 2 Start the Bluetooth Setup Wizard in one of three ways: Press the Connect button on your Bluetooth wireless hub.-or- Right-click the Bluetooth icon, , in the Windows taskbar and select Add a Bluetooth Device from the menu displayed.-or- Select Add a Bluetooth Device from the Bluetooth Tasks panel in the My Bluetooth

2 Design mode - untuk membangun aplikasi Run mode - untuk menjalankan aplikasi Break mode - aplikasi berhenti sementara dan debugger muncul Form Window merupakan pusat untuk membangun aplikasi Visual Basic. Tempat dimana kita menggambar aplikasi kita. Toolbox adalah menu yang berisi kontrol-kontrol yang digunakan di dalam aplikasi kita. Properties Window digunakan untuk menempatkan .

Targus USB Ultra-Mini Bluetooth 2.0 Adapter with EDR Basic Operations Start or Stop Bluetooth (for Windows 2000/ XP only) To start Bluetooth In the Windows system tray, right-click the Bluetooth icon and select Start the Bluetooth Device.The Bluetooth icon is blue in color with a white insert when the Bluetooth software is running. To stop Bluetooth