RANCANG BANGUN PROTOKOL KEAMANAN SMS BANKING …...Layanan SMS Banking adalah layanan yang sering...

14
RANCANG BANGUN PROTOKOL KEAMANAN SMS BANKING NASKAH PUBLIKASI I MADE SUNIA RAHARJA 11/323114/PPA/03616 PROGRAM STUDI S2 ILMU KOMPUTER JURUSAN ILMU KOMPUTER DAN ELEKTRONIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS GADJAH MADA YOGYAKARTA 2014

Transcript of RANCANG BANGUN PROTOKOL KEAMANAN SMS BANKING …...Layanan SMS Banking adalah layanan yang sering...

  • RANCANG BANGUN PROTOKOL KEAMANAN SMS BANKING

    NASKAH PUBLIKASI

    I MADE SUNIA RAHARJA11/323114/PPA/03616

    PROGRAM STUDI S2 ILMU KOMPUTERJURUSAN ILMU KOMPUTER DAN ELEKTRONIKA

    FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS GADJAH MADA

    YOGYAKARTA

    2014

  • NASKAH PUBLIKASI

    Untuk Berkala Penelitian Pascasarjana iniTelah Disetujui oleh Tim Pembimbing

    Pembimbing Utama

    Dr.Ahmad Ashari, M.Kom. Tanggal, 2 Juni 2014NIP. 19630502 1990 03 1 005

  • PERNYATAAN

    Dengan ini kami selaku pembimbing tesis mahasiswa Program Pascasarjana :Nama : I Made Sunia RaharjaNIM : 11/323114/PPA/03616Program Studi : Ilmu Komputer

    Setuju / tidak setuju *) naskah ringkasan penelitian (calon naskah berkalapenelitian Program Pascasarjana yang disusun oleh yang bersangkutandipublikasikan dengan / tanpa *) mencantumkan nama tim pembimbing sebagaico-author.

    Kemudian harap maklum.

    Yogyakarta 2 Juni 2014

    Nama Status Pembimbing Tanda Tangan

    Dr. Ahmad Ashari, M.Kom Pembimbing UtamaNIP. 19630502 1990 03 1 005

    * Coret yang tidak perlu

    iii

  • ISSN: 1978-1520 1

    Received June 1stRevised June 25th, 2012; Accepted July 10th, 2012

    Rancang Bangun Protokol Keamanan SMS Banking

    I Made Sunia Raharja1, Dr.Ahmad Ashari, M.Kom.2 1Prodi S2/S3 Ilmu Komputer, FMIPA UGM, Yogyakarta

    2Jurusan Ilmu Komputer dan Elektronika, FMIPA UGM, Yogyakarta e-mail: [email protected], [email protected]

    Abstrak Penggunaan teknologi smartphone(telepon pintar) yang sangat berkembang membuat

    layanan mobile(mobile service) semakin banyak digunakan oleh masyarakat. Layanan SMS Banking adalah layanan yang sering digunakan oleh masyarakat. Masalah keamanan sering diabaikan penyedia layanan SMS Banking. Penggunaan teknologi SMS standar pada layanan SMS Banking diketahui sangat rentan terhadap penyadapan, untuk itu diperlukan suatu protokol SMS Banking yang memberikan layanan keamanan informasi pada pesan transaksi. Keamanan informasi dapat dicapai melalui penggunaan beberapa mekanisme keamanan yaitu encipherment, digital signature, data integrity dan key exchange. Mekanisme keamanan ini dapat diterapkan melalui penggunaan kriptografi. Sistem kriptografi secara umum ada dua yaitu kriptografi simetri dan asimetri.

    Protokol keamanan SMS Banking pada penelitian ini terdiri dari dua tahap, dimana protokol tahap pertama adalah pengiriman permintaan transaksi dan tahap yang kedua adalah proses transaksi. Mekanisme keamanan encipherment dilakukan menggunakan kriptografi simetri 3DES. Mekanisme digital signature dan data integrity dilakukan menggunakan kriptografi asimetri ECDSA, sedangkan mekanisme key exchange menggunakan ECDH. Hasil pengujian menunjukkan protokol yang dibangun dapat digunakan untuk proses transaksi melalui SMS Banking dan memberikan perlindungan kerahasian PIN nasabah, secara keseluruhan protokol sudah dapat memberikan layanan keamanan X.800. Kata kunci— Protokol, Keamanan jaringan, SMS Banking, ECC, 3DES

    Abstract Rapidly growing use of the smartphone has lead to the large amount of mobile service utilization by the society. SMS Banking is one of the frequently used service. However, security issue is often ignored by the provider of SMS Banking services. The standard SMS technology usually applied in common SMS Banking service is wellknown to be very vulnerable to tapping. Therefore, an SMS Banking protocol, providing information security service in transactional message is urgently in need. Information security can be achieved through several security mechanism i.e. enchipherment, digital signature, data integrity and key exchange. These mechanisms are applicable through implementation of cryptography. There are two type of cryptography, symmetric cryptography and asymmetric cryptography.

    SMS Banking security protocol in this research runs through two step. The first step is transmission of transaction request and the second step is transaction process. Encipherment is conducted using 3DES symmetric cryptography. Digital signature and data integrity are conducted using ECDSA asymmetric cryptography. Mean while, the key exchange is conducted using ECDH. Test result showed that the implementation of the protocol can conduct SMS Banking service and provide protection over costumer’s PIN. In general, this protocol have fulfill the X.800 security services. Keywords— Protocol, Network security, SMS Banking, ECC, 3DES

    mailto:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]

  • 22

    1. PENDAHULUAN

    enggunaan telepon seluler diketahui sudah hampir menyamai jumlah penduduk indonesia. Data dari Asosiasi Telekomunikasi Seluler Indonesia (ATSI) menunjukkan bahwa jumlah

    pelanggan seluler di Indonesia per tahun 2011 telah mencapai lebih dari 240 juta pelanggan, jumlah ini hampir menyamai jumlah penduduk Indonesia yang berjumlah 258 juta penduduk pada Desember 2010[1]. Penggunaan telepon seluler yang populer ini juga berpengaruh terhadap peningkatkan penggunaan fasilitas yang ada pada telepon seluler. SMS adalah salah satu fasilitas yang banyak digunakan karena praktis dan tidak membutuhkan biaya internet tambahan. Fasilitas SMS yang berkembang membuat penggunaanya tidak hanya untuk personal namun juga untuk komersial, salah satunya adalah penggunaan SMS untuk transaksi keuangan yaitu SMS Banking. SMS Banking adalah layanan yang ditujukan untuk memudahkan pemilik rekening di suatu bank untuk mendapatkan informasi atau melakukan transaksi keuangan. Menurut survey yang dilakukan pada akhir 2011 diketahui bahwa masyarakat semakin banyak tahu SMS Banking dan membutuhkan penggunaan SMS Banking, bahkan 57% layanan yang diakses pada telepon seluler adalah SMS Banking[2].

    Meskipun memberikan kemudahan, namun teknologi protokol yang digunakan oleh penyedia layanan SMS Banking masih belum aman. Keamanan informasi transaksi menjadi permasalahan yang mengkhawatirkan bagi pihak bank, melihat banyaknya pemilik rekening menggunakan layanan ini[2]. Hampir semua protokol SMS Banking yang ada hanya memanfaatkan teknologi GSM yang masih standar dan rentan terhadap serangan. Kerentanan terhadap serangan terjadi pada transmisi SMS pada jaringan GSM standar yang tidak memilik keamanan yang baik. Pengiriman informasi rahasia(misalnya PIN) ke BTS diketahui masih menggunakan algoritma enkripsi A5 yang sudah diketahui bukan merupakan enkripsi yang aman. Salah satu serangan yang dapat terjadi adalah penyadapan SMS, penyadapan SMS sangat mudah dilakukan jika penyerang memiliki akses ke BTS atau bagian dari jaringan GSM tertentu. Selain itu pesan yang menunggu untuk dikirim ke server bank tersimpan dalam bentuk plainteks sehingga orang yang memiliki akses ke provider dapat dengan mudah melihat PIN pemilik rekening. Sehingga diperlukan keamanan informasi tambahan untuk mengatasi kerentanan pada SMS.

    Keamanan informasi dapat dicapai dengan menerapkan mekanisme keamanan. Mekanisme keamanan berkaitan dengan penggunaan algoritma-algoritma enkripsi. Secara umum enkripsi dikelompokan menjadi dua yaitu enkripsi simetri(Symmetric Encryption) dan enkripsi asimetri(Asymmetric Encryption). Enkripsi simetri digunakan untuk merahasiakan isi dari suatu blok data dengan ukuran tertentu seperti misalnya sebuah pesan, file, kunci enkripsi, dan password. Sedangkan enkripsi asimetri lebih banyak digunakan untuk manajemen kunci yang digunakan pada enkripsi simetri dan tanda tangan digital[3]. Salah satu algoritma enkripsi simetri adalah 3DES, 3DES merupakan algoritma yang sudah direkomendasikan menjadi standar keamanan data[4]. Sedangkan salah satu contoh algoritma asimetri yang dapat digunakan adalah algoritma ECC, Elivtic Curve Cryptography(ECC) memiliki keunggulan dalam memberikan tingkat keamanan yang sama dengan algoritma asimetri lain(RSA) namun dengan ukuran kunci yang lebih kecil[3].

    2. METODE PENELITIAN

    Metode penelitian dilakukan dengan melaksanakan beberapa tahapan yaitu :

    2.1 Analisis Data

    Agar dapat menunjukkan protokol yang dibuat sudah memberikan layanan keamanan SMS Banking dilakukan simulasi yang melibatkan komponen mobile-phone dan server bank.

    P

  • IJCCS ISSN: 1978-1520

    Title of manuscript is short and clear, implies research results (First Author)

    3

    Layanan keamanan yang diberikan sesuai dengan standar X.800[stalling] yaitu confidentiality(kerahasiaan), integrity(integritas), authentication(otentifikasi), non-repudiation(nir-penyangkalan) and availability service(ketersediaan layanan). Untuk memberikan layanan keamanan ini perlu dilakukan mekanisme keamanan yaitu encipherment(enkripsi), digital signature(tanda tangan digital), data integrity(intergitas data) dan key exchange(pertukaran kunci). Digital signature dan data integrity dapat dilakukan dengan menggunakan algoritma ECDSA, encipherment dapat dilakukan dengan menggunakan enkripsi simetri algoritma 3DES. Mekanisme key exchange dapat dilakukan dengan algoritma ECDH.

    Untuk melakukan mekanisme keamanan sisi mobile-phone dan server harus memiliki fungsi untuk melakukan tanda tangan digital untuk pesan transaksi yang dikirimkan dan pemerikasaan tanda tangan digital, melakukan proses pertukaran kunci(key exchange) untuk kunci rahasia. Kunci rahasia ini akan digunakan untuk enkripsi pada mobile-phone dan dekripsi pada server.

    Untuk melakukan transaksi SMS Banking dengan aman nasabah memerlukan kode PIN yang hanya diketahui oleh nasabah, protokol yang dibangun membutuhkan tabel akun SMS Banking yang berisi kode PIN nasabah, tabel akun rekening tabungan nasabah dan tabel transaksi.

    2.2 Perancangan Protokol

    Rancangan protokol ditunjukkan pada Gambar 1. Rancangan protokol terdiri dari tiga layer yaitu Banking aplication layer, Secure SMS protocol layer dan Short Message Transport Protocol. Yang menjadi fokus dalam penelitian ini adalah Banking Aplication layer dan Secure SMS protocol layer.

    Pada Gambar 1 inisiasi protokol selalu dimulai pada sisi mobile-phone dan direspon oleh server. Secure SMS protocol adalah layer yang menerapkan mekanisme keamanan yang sudah ditentukan. Sedangkan Banking Aplication layer adalah layer yang bertugas mengolah data transaksi agar dapat digunakan untuk layer Secure SMS protocol. Layer message transport protocol pada penelitian ini menggunakan protokol yang bertugas untuk menerima dan mengirim SMS standar.

    2.2.1 Secure SMS Protocol layer

    Protokol yang akan dibuat terdiri dari dua bagian yaitu bagian permintaan transaksi(request transaction) dan bagian proses transaksi(process transaction). Berikut ini adalah notasi yang digunakan untuk menjelaskan rancangan protokol, format notasi yang digunakan berdasarkan format notasi dari Ratshinanga[5]: S : Menandakan server; C : Menandakan klien; PIN : Kode PIN nasabah; Req : Data permintaan transaksi; Konf : Pesan balasan konfirmasi dari server; SSpriv : Tanda tangan menggunakan kunci privat ECDSA server; SCpriv : Tanda tangan menggunakan kunci privat ECDSA klien;

    Gambar 1 Rancangan protokol

  • 44

    SECDH : Nilai ECDH server; CECDH : Nilai ECDH klien; EKs : Enkripsi dengan kunci rahasia; Hasil : Hasil transaksi Digest : Kode digest pesan yang dienkripsi; || : penyambungan; C→S : C mengirim SMS ke S […] : Simbol bentuk SMS. Protokol P terdiri dari dua bagian yaitu permintaan transaksi(RT) dan proses transaksi(PT) pada persamaan (1) :

    P = RT + PT (1)

    RT adalah pengiriman permintaan transaksi. PT adalah pengiriman proses transaksi yang dienkripsi menggunakan kunci rahasia dari server. Dimana RT dijelaskan tahapanya lebih lanjut menjadi : M1 : C→S: [SCpriv(CECDH || Req)] : Pesan permintaan transaksi M2 : S→C: [SSpriv(SECDH || Konf)] : Pesan konfirmasi transaksi dan tahapan untuk PT adalah : M3 : C→S: [SCpriv(EKs(PIN))] : Pesan persetujuan transaksi M4 : S→C: [SSpriv(Hasil)] : Pesan hasil transaksi Dua bagian protokol harus dijalankan secara bertahap, bagian kedua tidak dapat dijalankan jika tidak menjalankan bagian pertama, tahapan-tahapan untuk setiap pengiriman pesan transaksi lebih detail adalah sebagai berikut:

    M1: C menyusun pesan permintaan transaksi yang terdiri dari kunci publik ECDH(CECDH) dan data permintaan transaksi(Req). Pesan ini kemudian ditandatangani menggunakan kunci privat milik mobile-phone(SCpriv(CECDH || Req)). Pesan yang sudah ditandatangani dikirim ke bank-server(C→S: [SCpriv(CECDH || Req)]).

    M2: S menerima pesan M1 kemudian memeriksa tanda tangan digital menggunakan kunci publik mobile-phone yang tersimpan pada bank-server. Jika tidak valid pesan permintaan akan langsung dihapus, sedangkan jika valid pesan permintaan akan diproses. Pesan permintaan diproses agar dapat digunakan untuk bagian protokol berikutnya, bank-server menghasilkan kunci rahasia(Ks) menggunakan CECDH dari M1 dan nilai privat ECDH yang dimiliki oleh bank-server, kunci rahasia ini akan digunakan untuk bagian protokol berikutnya. Pesan permintaan transaksi akan dibalas dengan pesan konfirmasi transaksi untuk meminta persetujuan proses transaksi kepada nasabah. Bersama dengan nilai SECDH konfirmasi transaksi ditandatangani menggunakan Sspriv(SSpriv(SECDH || Konf)) kemudian dikirimkan ke klien(S→C: [SSpriv(SECDH || Konf)]).

    M3: C menerima pesan M2 dan memeriksa tanda tangan pesan menggunakan kunci publik bank-server yang tersimpan pada mobile-phone. Jika tanda tangan tidak valid pesan tidak dapat digunakan untuk melakukan persetujuan transaksi, sedangkan jika valid pesan akan diproses dengan cara mobile-phone mengambil nilai SECDH kemudian bersama dengan nilai privat ECDH yang dimiliki oleh mobile-phone dihasilkan kunci rahasia(Ks) yang akan digunakan untuk enkripsi(EKs) pesan persetujuan transaksi. Pesan konfirmasi transaksi disetujui oleh klien dengan mengirimkan pesan persetujuan transaksi yang berisi kode PIN yang dienkripsi menggunakan kunci rahasia(Eks(PIN)). Pesan persetujuan transaksi yang sudah dienkripsi ditandatangani lagi oleh mobile-phone dan dikirimkan ke bank-server(C→S: [SCpriv(Eks(PIN))]).

    M4: S menerima pesan persetujuan transaksi M3 dan memeriksa tanda tangan digital menggunakan kunci publik mobile-phone, jika tidak valid maka pesan akan dihapus sedangkan jika valid pesan persetujuan transaksi didekripsi menggunakan kunci

  • IJCCS ISSN: 1978-1520

    Title of manuscript is short and clear, implies research results (First Author)

    5

    rahasia(Ks) yang dihasilkan pada saat M2. Pesan yang sudah didekripsi digunakan untuk memproses transaksi. Hasil dari proses transaksi akan ditandatangani oleh bank-server(SSpriv(Hasil)) dan dikirimkan ke mobile-phone sebagai pesan hasil transaksi(S→C: [SSpriv(Hasil)]).

    Tahapan-tahapan protokol pada masing-masing komponen protokol : Tahapan protokol permintaan transaksi : Pada sisi mobile-phone :

    1. Membuat pasangan kunci ECDHkeyKlien=ECDHprivKlien + ECDHpubKlien 2. Membuat pesan reqTrans yang terdiri dari ECDHpubKlien dan data transaksi 3. Membuat signature melalui tanda tangan data reqTrans 4. Membuat pesan permintaan transaksi yang terdiri dari signature dan reqTrans 5. Mengirim pesan permintaan transaksi melalui SMS

    Pada sisi server : 6. Mengambil signature dan reqTrans dari pesan permintaan transaksi 7. Memeriksa dan validasi signature 8. Hapus pesan jika tanda tangan tidak valid 9. Jika valid ambil ECDHpubKlien dan data transaksi 10. Membuat pesanKon1 transaksi berdasarkan data transaksi 11. Membuat pasangan kunci ECDHkeyServer=ECDHprivServer+ECDHpubServer 12. Membuat secretKey menggunakan ECDHprivServer dan ECDHpubKlien 13. Membuat pesanKon2 yang terdiri dari ECDHpubServer dan pesanKon1 14. Membuat signature melalui tanda tangan data pesanKon2 15. Membuat pesan konfirmasi transaksi yang terdiri dari signature dan pesanKon2 16. Mengirim pesan konfirmasi transaksi

    Pada sisi mobile-phone : 17. Mengambil signature dan pesanKon2 dari pesan konfirmasi transaksi 18. Memeriksa dan validasi signature 19. Jika tidak valid tidak bis dibaca 20. Jika valid baca pesanKon2 21. Membuat secretKey menggunakan ECDHpubKlien dan ECDHpubServer

    Tahapan protokol proses transaksi :

    Pada sisi mobile-phone : 1. Enkripsi PIN dengan secretKey menghasilkan ciphertext 2. Menghapus kunci rahasia 3. Membuat signature melalui tanda tangan data ciphertext 4. Membuat pesan persetujuan transaksi yang terdiri dari signature dan ciphertext 5. Mengirim pesan persetujuan transaksi

    Pada sisi server : 6. Mengambil signature dan ciphertext 7. Memeriksa dan validasi signature 8. Jika tidak valid hapus pesan persetujuan transaksi 9. Jika valid dekripsi ciphertext dengan secretKey 10. Jika tidak berhasil didekripsi hapus pesan persetujuan transaksi 11. Jika berhasil didekripsi, eksekusi transaksi menggunakan PIN 12. Membuat signature melalui tanda tangan data hasil transaksi 13. Membuat pesan konfirmasi hasil transaksi yang terdiri dari signature dan hasil transaksi 14. Mengirim pesan konfirmasi hasil transaksi 15. Menghapus secretKey

    Pada sisi mobile-phone : 16. Mengambil signature dan hasil transaksi 17. Memeriksa dan validasi signature 18. Jika tidak valid, pesan tidak bisa dibaca

  • 66

    19. Jika valid, baca hasil transaksi

    2.2.2 Banking aplication layer

    Layer ini ada di kedua sisi yaitu mobile-phone dan server. Layer ini akan memproses data transaksi membentuk pesan SMS yang digunakan pada Secure SMS protocol layer. Layer ini juga mendefinisikan proses-proses pendukung mekanisme keamanan pada Secure SMS protocol layer. Gambar 2 menunjukkan use-case Banking aplication layer.

    Protokol yang dibangun membutuhkan empat jenis SMS, dua SMS dikirim dari mobile-phone dan dua SMS dikirim dari server. Keempat pesan memiliki struktur pesan yang berbeda yaitu :

    Pesan permintaan transaksi Pesan yang berisi data permintaan transaksi yang dikirim oleh mobile-phone ditunjukan pada Gambar 3

    Vers Signature ECDHKlien Data transaksi

    Gambar 3 Struktur pesan permintaan transaksi

    Pesan konfirmasi transaksi Pesan yang berisi informasi transaksi yang akan diproses yang dikirimkan oleh server ditunjukan pada Gambar 4.

    Vers Signature ECDHserver Konfirmasi transaksi

    Gambar 4 Struktur pesan konfirmasi transaksi

    Pesan persetujuan transaksi Pesan persetujuan eksekusi transaksi yang berisi PIN nasabah yang dienkripsi yang dikirim oleh mobile-phone ditunjukkan pada Gambar 5

    Vers Signature Ciphertext PIN

    Gambar 5 Struktur pesan persetujuan transaksi

    Pesan konfirmasi hasil transaksi Pesan hasil transaksi yang telah dieksekusi oleh server ditunjukan pada Gambar 6

    Vers Signature Hasil transaksi

    Gambar 6 Struktur pesan konfirmasi hasil transaksi

    Notasi yang digunakan pada struktur pesan ditunjukan pada Tabel 1.

    Gambar 2 Use-case banking aplication layer

  • IJCCS ISSN: 1978-1520

    Title of manuscript is short and clear, implies research results (First Author)

    7

    Tabel 1 Notasi Struktur Pesan

    Notasi Makna

    Vers Pola string spesifik yang digunakan untuk menandakan struktur pesan yang dikirim

    Signature Tanda tangan digital untuk keamanan pesan

    ECDHklien Kunci publik ECDH yang dikirim oleh mobile phone

    Data transaksi Untaian string data transaksi

    ECDHserver Kunci publik ECDH yang dikirim oleh server

    Konfirmasi transaksi Pesan konfirmasi persetujuan transaksi

    Ciphertext PIN Hasil output dari proses enkripsi PIN

    Hasil transaksi Hasil dari proses transaksi yang dikirim oleh server.

    2.2.3 Perancangan Database

    Sesuai dengan analisis data protokol membutuhkan tiga buah tabel yaitu tabel akun rekening tabungan, tabel akun SMS Banking dan table transaksi. Gambar 7 menunjukan Diagram Relasional potokol.

    2.3 Implementasi Protokol

    Implementasi protokol dilakukan pada dua komponen yaitu mobile-phone dan server. Pada mobile-phone implementasi dilakukan menggunakan bahasa pemrograman Android, sedangkan implementasi pada sisi server menggunakan SMSLib untuk layanan smsgateway dan JAVA untuk implementasi tahapan protokol. Proses kriptografi memakai tools library bouncy castle dan kriptografi berbasis JAVA. Implementasi pada sisi mobile-phone mengikuti diagram aktivitas Gambar 8. Gambar 8(a) menunjukkan aktivitas mobile-phone mengirimkan pesan permintaan transaksi. Gambar 8(b) menunjukan aktivitas mobile-phone yang menangani pesan konfirmasi transaksi dan pesan hasil transaksi yang dikirim server. Sedangkan implementasi sisi server mengikuti diagram aktivitas Gambar 9.

    Implementasi database dilakukan menggunakan MYSQL dengan membuat tiga buah tabel yang sesuai dengan Gambar 7.

    Gambar 7 Diagram Relasional database

  • 88

    3. HASIL DAN PEMBAHASAN

    Dilakukan dua jenis pengujian terhadap protokol SMS Banking yang dibangun, pengujian fungsionalitas protokol SMS Banking dan pengujian keamanan protokol SMS Banking. Pengujian fungsionalitas dilakukan dengan menjalankan beberapa test case. Dari hasil pengujian fungsionalitas diketahui bahwa server sudah dapat memproses pesan permintaan transaksi/pesan persetujuan transaksi yang memiliki versi pesan yang sesuai dengan protokol

    Gambar 8 Diagram aktivitas sisi server

    Gambar 9: Diagram aktivitas sisi mobile-phone

  • IJCCS ISSN: 1978-1520

    Title of manuscript is short and clear, implies research results (First Author)

    9

    dan menghapus pesan yang tidak sesuai dengan protokol. Pada sisi mobile-phone, mobile-phone menerima dan memproses pesan konfirmasi transaksi/pesan konfirmasi hasil transaksi dari server yang memiliki versi pesan yang sesuai dengan protokol, sedangkan pesan dengan versi yang tidak sesuai dengan protokol diterima namun tidak diproses. Protokol juga dapat merespon dengan baik jika terdapat kesalahan pemasukan nilai pada data transaksi, misalnya jika nasabah memasukkan alphabet pada nilai yang seharusnya bertipe numerik maka server akan memberikan peberitahuan bahwa format pesan yang dikirim salah. Pada bagian proses transaksi, protokol dapat mengeksekusi transaksi jika PIN benar dan memberikan pemberitahuan kepada nasabah jika PIN yang dikirimkan salah. Dari hasil pengujian fungsionalitas diketahui protokol sudah berjalan dengan baik sesuai dengan fungsinya.

    Jumlah segmen pesan yang dibutuhkan untuk permintaan transaksi sebanyak dua segmen sedangkan untuk proses transaksi dibutuhkan satu segmen pesan, untuk bagian permintaan transaksi membutuhkan segmen yang lebih banyak karena dibutuhkan karakter yang lebih banyak untuk nilai kunci publik ECDH

    Pengujian keamanan dilakukan dengan melakukan penyerangan dengan serangan-serangan yang ditentukan pada pohon serangan[6] Gambar 10. Penyerangan dilakukan dengan tujuan untuk mengetahui kode PIN SMS Banking yang ada pada pesan persetujuan transaksi. Dari pohon serangan diketahui bahwa semua serangan yang dilakukan tidak mungkin untuk mengetahui kode PIN nasabah.

    dari proses mitigasi serangan dapat diketahui bahwa protokol sudah memenuhi beberapa

    layanan keamanan yaitu :

    1. Otentikasi(Authentication) Otentikasi menjamin komunikasi SMS antara klien dan server otentik. Fungsi dari otentifikasi adalah menjamin penerima SMS memang benar menerima pesan dari sumber yang dinyatakan. Mekanisme kemanan tanda tangan digital yang diterapkan telah memberikan layanan otentikasi terhadap mobile-phone dan server sehingga pihak luar protokol tidak dapat mengintervensi layanan transaksi yang diberikan, selain itu penggunaan PIN SMS Banking memberikan otentifikasi terhadap klien/nasabah karena hanya klien/nasabah yang mengetahuinya.

    2. Kontrol Akses(Access Control) Pihak mobile-phone dan server dapat diidentifikasi melalui tanda tangan digital, tanda tangan digital dapat diverifikasi sehingga dapat diketahui apakah tanda tangan valid

    Gambar 10: Pohon serangan protokol

  • 110

    atau tidak. Jika tanda tangan tidak valid dapat dipastikan berasal dari pihak luar yang tidal berhak mengakses protkol.

    3. Kerahasiaan Data(Data Confidentiality) Data yang sangat penting dan rahasia adalah PIN SMS Banking. Enkripsi PIN sudah menggunakan algoritma enkripsi yang kuat dengan kunci rahasia yang merupakan one-time password sehingga sudah memberikan kerahasiaan yang kuat.

    4. Integritas data(Data Integrity) Pada protokol yang dibangun pesan permintaan transaksi harus terjaga dari pengubahan atau modifikasi. Mekanisme tanda tangan digital mengimplementasikan fungsi hash yang menghasilkan digest pesan, pengecekan nilai digest dilakukan pada saat verivikasi tanda tangan digital, jika pesan dirubah maka akan menghasilkan nilai digest yang berbeda sehingga tanda tangan menjadi tidak valid.

    5. Nirpenyangkalan(Non-repudiation) Protokol yang dibangun menggunakan PIN SMS Banking untuk mengeksekusi transaksi, PIN hanya diketahui oleh nasabah sehingga nasabah tidak bisa menyangkal dalam melakukan transaksi.

    6. Ketersediaan Layanan(Availability Service) Ketersediaan layanan SMS Banking dapat diganggu dengan serangan denial-of-service(DoS). Serangan DoS biasanya ditujukan pada sisi server sehingga akan mengghambat dalam pelayanan SMS Banking. Serangan DoS dapat dimitagasi dengan memanfaat struktur pesan dan tanda tangan digital. Pesan dengan versi yang tidak sesuai dan pesan yang tidak valid akan dihapus oleh server.

    4. KESIMPULAN

    1. Protokol keamanan SMS Banking yang dibangun sudah dapat melakukan

    fungsionalitasnya dengan baik. Protokol terdiri dari dua bagian yaitu permintaan transaksi dan proses transaksi. Keamanan protokol SMS Banking dapat dicapai dengan menerapkan mekanisme keamanan informasi, mekanisme keamanan informasi yang digunakan pada protokol yang dibangun sudah dapat melindungi kerahasiaan PIN nasabah.

    2. Implementasi mekanisme keamanan melalui kriptografi ECC dan 3DES. dapat dilakukan menggunakan tools bouncycastle dan berbasis JAVA.

    3. Melalui proses pengujian keamanan protokol, protokol SMS Bangking yang dibangun sudah memenuhi standar keamanan data X.800.

    5. SARAN

    Pesan permintaan transaksi yang dikirimkan sebaiknya dilengkapi dengan mekanisme

    kompresi sehingga dapat mengurangi penggunaan segmen pesan.

    UCAPAN TERIMA KASIH

    Penulis mengucapkan terima kasih kepada bapak Dr.Ahmad Ashari, M.Kom selaku pembimbing yang sudah meluangkan waktu memberikan masukan-masukan yang sangat membantu.

    DAFTAR PUSTAKA

    [1] Nugraha, F., 2012, Jumlah Pelanggan Seluler di Indonesia Hampir Mendekati Jumlah Penduduk Indonesia, http://tinyurl.com/btbxh2y, 18 Januari 2012, diakses 18 Maret 2013.

    http://tinyurl.com/btbxh2y

  • IJCCS ISSN: 1978-1520

    Title of manuscript is short and clear, implies research results (First Author)

    11

    [2] Mahayan, D., 2012, Problem Sms Bangking Dan Mobile Banking Di Indonesia, http://tinyurl.com/ctb4sor, 1 April 2012, diakses 18 Maret 2013.

    [3] Stallings, W., 2011, Cryptography And Network Security Principles And Practice Fifth Edition, Prentice Hall, New York.

    [4] Barker, W.C, Barker, E., 2012, Recommendation for the Triple Data Encryption Algorithm (TDEA) Block Cipher , National Institute of Standard and Technology, New York.

    [5] Ratshinanga, H, Lo, J., and Bishop, J, 2004, A Security Mechanism for Secure SMS Communication, Computer Science Department, University of Pretoria, South Africa.

    [6] Schneier, B., 1999, Attack Trees: Modelling security threats, Dr. Dobb’s Journal http://www.schneier.com/paper-attacktrees-ddj-ft.html, diakses tgl 17 April 2014.

    http://tinyurl.com/ctb4sorhttp://www.schneier.com/paper-attacktrees-ddj-ft.html

    CoverHalaman PersetujuanHalaman PernyataanHalaman Judul1. PENDAHULUAN2. METODE PENELITIAN2.1 Analisis Data2.2 Perancangan Protokol2.2.1 Secure SMS Protocol layer2.2.2 Banking aplication layer2.2.3 Perancangan Database

    2.3 Implementasi Protokol

    3. HASIL DAN PEMBAHASAN4. KESIMPULAN5. SARANUCAPAN TERIMA KASIHDAFTAR PUSTAKA