• Tidak ada hasil yang ditemukan

diajukan oleh Mimbar Sutisna Wangsadiria kepada SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AMIKOM YOGYAKARTA

N/A
N/A
Protected

Academic year: 2021

Membagikan "diajukan oleh Mimbar Sutisna Wangsadiria kepada SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AMIKOM YOGYAKARTA"

Copied!
19
0
0

Teks penuh

(1)

ANALISIS DAN PERANCANGAN APLIKASI ENKRIPSI SMS DENGAN

KOMBINASI METODE SUBSTITUSI DAN AES BERBASIS ANDROID

DI KALANGAN MAHASISWA STMIK “AMIKOM” YOGYAKARTA

NASKAH PUBLIKASI

diajukan oleh

Mimbar Sutisna Wangsadiria

09.11.3134

kepada

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER

AMIKOM YOGYAKARTA

YOGYAKARTA

2013

(2)
(3)

ANALYSIS AND DESIGN SMS ENCRYPTION APPLICATION IN SUBSTITUTION AND AES COMBINATION METHOD BASED IN ANDROID

AMONG STMIK “AMIKOM” YOGYAKARTA

ANALISIS DAN PERANCANGAN APLIKASI ENKRIPSI SMS DENGAN KOMBINASI METODE SUBSTITUSI DAN AES BERBASIS ANDROID DI KALANGAN

MAHASISWA STMIK “AMIKOM” YOGYAKARTA Mimbar Sutisna Wangsadiria

Ema Utami

Jurusan Teknik Informatika STMIK AMIKOM YOGYAKARTA

ABSTRACT

Last few years occurred rapid development in technology, one of which is the development of telecommunications technology that has helped us reducing the obstacles in communication limited by distance and time. These developments can we look along in wide range of smart phone developments with sophisticated features. One of the provided features is Short Message Service (SMS). This feature is veru familiar among users of smart phones, using SMS, users can communicate via text messages.

In this final project, a software built on the smart phone that are used to enhance the security of the message that will be done through SMS. The software intended to enhance the security of message contents by encrypting sent messages and decrypt received messages. This application can be used to transmit a confidential information securely to others through SMS.

This software was built by using a combination of classical cryptographic algorithms and modern cryptographic algorithms to encrypt SMS. The purpose of using this multiple methods is to obtain an reliably algorithm and can be implemented using Android technology.

(4)

1. Pendahuluan

Beberapa tahun terakhir terjadi perkembangan yang pesat pada bidang

teknologi, khususnya smartphone yang dapat digunakan untuk pelbagai macam kegiatan

seperti data transferring, multimedia, multiplayer games, browsing, video streaming dan

lain – lain. Perkembangan smartphone yang sedang populer saat ini adalah smartphone

yang berbasis Android. Perkembangan smartphone berbasis Android ini sangat

menakjubkan, dikarenakan Android merupakan Operating Systen Mobile yang open

platform. Pelbagai perangkat lunak telah dikembangkan untuk memudahkan kita dalam

membangun suatu aplikasi berbasis Android, diantaranya yang terkenal adalah Eclipse.

Salah satu fitur penting yang tidak dapat dilupakan dari smartphone adalah fitur

untuk melakukan pengiriman data berupa pesan singkat melalui Short Message Service

(SMS).Namun seiring denganperkembangan teknologi yang semakin canggih

menimbulkan pertanyaan mengenai keamanan informasi yang dikirimkan melalui SMS. Setelah melalui pelbagai pertimbangan akhirnya penulis menemukan solusi untuk mengembangkan suatu aplikasi pengamanan SMS dengan menggunakan metode gabungan dari algoritma kriptografi klasik dan algoritma kriptografi modern untuk meng-enkripsi data yang berjalan pada sistem operasi Android sehingga para pengguna smartphone berbasis Android dapat mengirim pesan dengan lebih aman.

2. Landasan Teori

2.1 Short Message Service (SMS)

Short Message Service (SMS) atau sering disebut dengan layanan pesan

singkat merupakan sebuah layanan pesan singkat yang disediakan oleh Global System

of Mobile (GSM) sebagai layanan standar yang digunakan untuk mengirim dan menerima

pesan dalam bentuk teks yang dikirim melalui telepon seluler1.

2.2 Android

Android merupakan sebuah sistem operasi perangkat mobile berbasisi Linux

yang mencakup sistem operasi, middleware, dan aplikasi lainnya. Awalnya pada bulan

Juni 2005 Google Inc. membeli Android Inc. yang merupakan pendatang baru dalam pembuatan piranti lunak untuk telepon seluler. Kemudian untuk mengembangkan

Android, dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan piranti

keras, piranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola,

Qualcomm, T-Mobile, dan Nvidia2.

1 Zulfadli. Aplikasi Supply Chain Management Berbasis SMS. FMIPA UGM, Yogyakarta, 2005. 2 Nazruddin Safaat H, Pemrograman Aplikasi Mobile Smartphone Dan Tablet PC Berbasis Android, Bandung : Informatika, 2012, hal. 1.

(5)

2.3 SQLite

Android memiliki fasilitas untuk membuat database yang dikenal dengan

SQLite. SQLite adalah salah satu software yang embedded yang sangat popular,

kombinasi SQL interface dan penggunaan memory yang sangat sedikit dengan

kecepatan yang sangat cepat dan ringan dalam hal sumber daya. SQLite tidak memiliki

server, namun bentuknya adalah library yang akan dipanggil suatu saat program

dijalankan3.

2.4 Kriptografi

Kriptografi berasal dari bahasa Yunani. Menurut bahasa tersebut kata kriptografi dibagi menjadi dua, yaitu kripto dan graphia. Kripto berarti secret (rahasia) dab graphia berarti writing (tulisan). Menurut terminologinya, kriptografi adalah ilmu dan seni untuk menjaga keamanan pesan ketika pesan dikirim dari suatu tempat menuju tempat yang lain. Dalam perkembangannya, kriptografi juga digunakan untuk

mengidentifikasi pengiriman pesan dengan sidik jari digital (fingerprint)4.

2.5 Data Flow Diagram (DFD)

Pemodelan proses adalah cara formal untuk menggambarkan bagaimana suatu proses beroperasi. Salah satu cara yang popular untuk merepresentasikan proses model

adalah Data Flow Diagram (DFD)5. DFD adalah suatu grafik yang menjelaskan sebuah

sistem dengan menggunakan bentuk – bentuk atau symbol – symbol untuk

menggambarkan aliran data dari proses – proses yang saling berhubungan6.

3. Analisis

3.1 Analisis Sistem

Analisis sistem adalah teknik pemecahan masalah yang menguraikan bagian - bagian komponen dengan mempelajari seberapa bagus komponen - komponen tersebut

bekerja dan berinteraksi untuk mencapai tujuan mereka7. Analisis merupakan tahapan

awal dan sangat penting, karena kesalahan pada tahap ini akan menyebabkan kesalahan pada tahap selanjutnya. Analisis merupakan fondasi untuk menentukan sukses atau tidaknya suatu sistem informasi yang akan dibuat. dalam perancangan sistem nantinya hal yang sangat penting adalah dengan mengetahui masalah yang timbul dan kebutuhan yang yang dibutuhkan.

3

Feri Djuandi, Menggunakan Database Di Android, 2011, hal. 1. 4 Dony Ariyus, Computer Security, Yogyakarta : Andi, 2005, hal. 77.

5 Hanif Al Fatta, Analisis & Perancangan Sistem Informasi, Yogyakarta : Andi, 2007, hal. 105. 6 Elmasri & Navathe, 1994.

(6)

3.2 Software Requirement Spesification (SRS)

Tabel 3.1 Spesifikasi Kebutuhan Perangkat Lunak

NO SRS-ID DESKRIPSI

1 DECS-01 Menerima input nomor tujuan, pesan, key 1, key 2, dan key 3

2 DECS-02 Mengubah pesan dan key menjadi kode ASCII

3 DECS-03 Melakukan enkripsi terhadap pesan menggunakan key yang

telah dimasukkan

4 DECS-04 Memberikan header DECS- pada pesan yang akan dikirimkan

5 DECS-05 Mengirim pesan dan memberikan laporan bahwa pesan telah

dikirim ke nomor tujuan

6 DECS-06 Memeriksa pesan yang masuk apakah memiliki header DECS-

7 DECS-07 Menampilkan nomor pengirim pesan

8 DECS-08 Melakukan dekripsi menggunakan key yang dimasukkan

9 DECS-09 Mengubah pesan dari kode ASCII menjadi karakter

10 DECS-10 Menampilkan pesan asli kepada penerima

3.3 Rancangan Diagram Hierarki

Rancangan ini disusun dengan tujuan untuk memudahkan proses perancangan aplikasi DECryptoSMS. Diagram hierarki ini memiliki dua sub menu, yaitu menu enkripsi dan menu dekripsi. Sedangkan pada tipe sub menu terdapat dua pilihan, yaitu tipe

masukan (input) dan proses.

Gambar 3.1 Diagram Hierarki

3.4 Rancangan Flowchart

MenuUtama

MenuDekripsi MenuEnkripsi

Menu Input Kunci Menu Proses Menu Input Kunci

Enkripsi

Menu Proses Dekripsi

(7)

Rancangan ini disusun dengan tujuan mendesain dan merepresentasikan program. Fungsinya adalah untuk memudahkan dalam penentuan alur logika yang akan dibuat.

Gambar 3.2 Flowchart Sistem

3.5 Rancangan Sistem

Perancangan sistem dibagi dalam beberapa tahap, yaitu penyusunan arsitektur dan pemodelan fungsional dengan menggunakan DFD.

3.5.1 Arsitektur Sistem

3.5.1.1 Arsitektur Aliran Pesan Secara Umum (GSM)

Gambar dibawah ini menunjukkan dua GSM network dan komponen yang

(8)

Gambar 3.3 Susunan Jaringan dan Aliran SMS

1. SMS dikirim melalui MSC/ VLR menuju SMSC di PLMN (Public Land Mobile

Network) A. Ini merupakan sebuah pesan MAP “forward SM”, termasuk nomor MSISDN asal A dan MSISDN tujuan B.

2. Karena end user B berada di PLMN B, SMSC harus me-routing informasi dari HLR

PLMN B. Untuk melakukannya, SMSC mengirim MAP “send routing info for SM” dengan

nomor MSISDN B.

3. HLR mengirim kembali IMSI dari end user B dan VLR-nya.

4. SMSC mengirim SMS sebagai MAP message melalui MSC/ VLR ke end user B.

(Elemen – elemen SMS sudah dibahas di Bab II).

(9)

Gambar 3.4 Arsitektur Sistem Aplikasi 3.5.2 Perancangan Pemodelan Fungsional

3.5.2.1 Context Diagram

Context diagram menunjukkan data yang mengalir antara sistem dan lingkungan yang digambarkan secara umum.

Gambar 3.5 Context Diagram

Penjelasan dari gambar diatas adalah user (pengirim) memasukkan nomor

tujuan, menulis pesan dan mengisi key untuk diproses oleh sistem. Setelah itu sistem

akan memberikan output pemberitahuan bahwa pesan telah dikirim. Selanjutnya

penerima akan mendapatkan pesan yang telah diacak (ciphertext) disertai dengan nomor

pengirim (seperti proses sms pada umumnya).Penerima harus memasukkan kunci yang

(10)

3.5.2.2 Data Flow Diagram (DFD)

Pada tahap ini, proses tunggal dari context diagramakan dibagi menjadi enam

proses yang lebih terperinci, yaitu proses konversi ASCII, proses enkripsi, proses

pemberian header, proses pengiriman pesan, proses pemeriksaan header, proses

dekripsi, dan proses perubahan kode ASCII menjadi karakter kembali.

Gambar 3.6 DFD Level 1

Gambar diatas merupakan DFD level 1 dari aplikasi perangkat lunak DECryptoSMS. Proses – proses yang berlangsung adalah

1. Konversi ASCII

Pada proses ini dilakukan perubahan bentuk isi pesan dari karakter menjadi kode ASCII.

2. Enkripsi

Pada proses ini dilakukan enkripsi terhadap pesan yang akan dikirim dengan

(11)

3. Pemberian Header

Pada proses ini dilakukan pemberian header pada pesan yang akan dikirim sebagai

tanda bahwa pesan tersebut milik DECryptoSMS.Pesan tersebut sudah dalam bentuk ciphertext.

4. Pengiriman Pesan

Pada proses ini dilakukan pengiriman pesan sesuai nomor tujuan yang telah melalui proses konversi dan enkripsi, setelah pesan terkirim akan muncul pemberitahuan bahwa pesan telah dikirim.

5. Pemeriksaan Header

Pada proses ini pesan yang masuk akan diperiksa terlebih dahulu apakah memiliki header DECryptoSMS atau tidak. Jika pesan tersebut memiliki header, maka pesan tersebut akan langsung diteruskan menuju proses selanjutnya, yaitu dekripsi. Jika pesan

tidak memiliki header, maka system aplikasi DECryptoSMSakan mengabaikan pesan

tersebut. Selain itu, proses pemeriksaan header juga akan memisahkan SMS yang

memiliki header menuju kotak masuk aplikasi DECryptoSMS.

6. Dekripsi

Pada proses ini dilakukan dekripsi terhadap pesan yang masuk dengan menggunakan kunci yang sesuai. Apabila kunci yang digunakan sesuai, maka pesan yang asli akan muncul, tetapi apabila kunci yang digunakan tidak sesuai, maka pesan yang ditampilkan

tetap berupa chipertext.

3.5.3 Perancangan Sistem

Perancangan sistem merupakan langkah awal dalam pembuatan sistem dimana tahapan ini bertujuan untuk memberikan ketentuan bentuk dan proses pada perangkat lunak yang dibuat agar pembuatan program tidak menyimpang dari aturan yang telah ditetapkan. Pada proses pembuatan aplikasi DECryptoSMS ini terdiri dari 11

(sebelas) kelas, yaitu :About, DB, Decrypto, DecryptoSMSActivity, Help, LazyAdapter,

MainActivity, Settings, SMSInfo, SMSInfoAdapter, SMSReceiver. Proses pembuatan

menggunakan aplikasi Eclipse. Secara garis besar, fungsi dari masing – masing kelas

adalah

1. About merupakan kelas yang berfungsi untuk memberikan informasi tentang aplikasi DECryptoSMS kepada pengguna.

2. DB merupakan kelas yang berfungsi untuk menyimpan data aplikasi.

3. Decryptomerupakan kelas yang berisi algoritma yang digunakan dalam proses enkripsi dan dekripsi. Pada bagian ini seluruh pesan yang keluar dan masuk akan melalui proses enkripsi dan dekripsi.

(12)

4. DecryptoSMSActivity merupakan kelas utama yang mengatur tampilan, pengiriman, penghapusan, dan penerimaan pesan.

5. Help merupakan kelas yang berfungsi untuk memberikan penjelasan tentang cara

menggunakan aplikasi.

6. LazyAdaptermerupakan kelas yang berfungsi untuk mengatur tampilan dan activity

pada inboxdan outbox.

7. MainActivity merupakan kelas yang berfungsi untuk mengatur tampilan awal sebelum masuk menuju halaman utama aplikasi.

8. Settingsmerupakan kelas yang berfungsi untuk mengatur tampilan pada halaman Settings.

9. SMSInfo merupakan kelas yang berfungsi untuk menampilkan informasi dari pesan yang diterima seperti nomor telepon pengirim dan pesan.

10. SMSInfoAdapter merupakan kelas yang berfungsi untuk updating otomatis pesan yang masuk.

11. SMSReceiver merupakan kelas yang yang berfungsi untuk mengatur tampilan list pesan yang masuk.

3.6 Perancangan User Interface

Perancangan Interface atau antarmuka adalah perancangan tampilan aplikasi

yang menghubungkan pengguna dengan system. Berikut ini adalah perancangan interface pada aplikasi DECryptoSMS.

3.6.1 Rancangan Splash Screen

Gambar 3.7 Rancangan Splash Screen

(13)

3.6.2 Rancangan Form Tab Tulis Pesan

Gambar 3.8 Rancangan Form Tab Tulis Pesan 3.6.3 Rancangan Form Tab Kotak Masuk Pesan

Gambar 3.9 Rancangan Form Tab Kotak Masuk Pesan

Tab Nomor Tujuan Kunci 1 Kunci 2 Kunci 3 Pesan

Kirim Enkrip Reset

Tab Kunci 1 Kunci 2 Kunci 3 Pesan

(14)

3.6.4 Rancangan Form Tab Kotak Keluar Pesan

Gambar 3.10 Rancangan Form Tab Kotak Keluar Pesan 3.6.5 Rancangan Form Bantuan

Gambar 3.11 Rancangan Form Tab Bantuan

4. Hasil Penelitian Dan Pembahasan 4.1 Implementasi

Tahap yang harus dilalui setelah melewati tahap perancangan dan pengkodean adalah tahap pengujian.Pengujian terhadap program ini dilakukan dengan tujuan untuk mengetahui apakah program atau sistem yang dibuat berjalan dan berfungsi sesuai dengan rancangan. Tab Kunci 1 Kunci 2 Kunci 3 Pesan Tab Help About Exit

(15)

Dalam proses pembuatan aplikasi, implementasi perancangan antarmuka dibagi menjadi 5 bagian utama, penjelasannya akan dibahas sesuai dengan sub bahasan dibawah ini.

4.1.1 Splash Screen

Pada saat aplikasi dijalankan, pengguna akan ditampilkan splash screen berupa

logo aplikasi DECryptoSMS, setelah beberapa saat pengguna akan masuk halaman utama.

Gambar 4.1 Form Splash Screen 4.1.2 Form Tulis Pesan

Ketika splash screen telah hilang, pengguna akan langsung menuju menu tab Tulis Pesan. Pada tab Tulis Pesan ini pengguna diharapkan untuk memasukkan nomor tujuan, pesan yang ingin disampaikan, kunci 1 yang sudah disediakan dalam bentuk number picker sehingga memudahkan pengguna dalam memilih angka yang ingin dijadikan kunci 1. Kemudian pengguna harus memasukkan kunci 2 dengan batas maksimal 8 karakter, langkah terakhir pengguna juga harus memasukkan kunci 3 dengan

batas maksimal 8 karakter. Setelah mengisi semua form, pengguna dapat mengirim

pesan dengan cara memilih tombol send, apabila pengguna ingin menulis ulang sms,

pengguna dapat memilih tombol reset, selain itu pengguna dapat mengetahui ciphertext

(16)

Gambar 4.2 Form Tulis Pesan 4.1.3 Form Kotak Masuk Pesan

Aplikasi DECryptoSMS telah dilengkapi dengan tab, sehingga akan memudahkan pengguna dalam berpindah posisi dari tab Tulis Pesan menuju tab Kotak

Masuk Pesan. Setelah berada di tab Kotak Masuk Pesan, telah disediakan form untuk

memasukkan kunci 1, kunci 2, dan kunci 3. Pengguna harus mengisi form tersebut

kemudian memilih pesan yang ingin dibaca. Jika kunci yang dimasukkan dan pesan yang dipilih sesuai, maka aplikasi akan menampilkan pesan asli. Namun jika kunci yang dimasukkan dan pesan yang dipilih tidak sesuai, maka aplikasi akan tetap menampilkan chipertext.

(17)

4.1.4 Form Kotak Keluar Pesan

Setelah dari tab kotak masuk pesan, kita beralih menuju tab kotak keluar pesan. Tab kotak keluar pesan memiliki tampilan yang sama dengan tampilan tab kotak masuk pesan, begitu juga dengan cara kerja. Pesan yang tersimpan didalam kotak keluar pesan pun merupakan pesan yang sudah dienkripsi.Jika pengguna ingin membaca kembali pesan yang telah dikirim, maka pengguna harus memasukkan kunci yang sesuai.

Gambar 4.4 Form Kotak Keluar Pesan 4.1.5 Form Bantuan

Tab bantuan berisi menu help, about, dan exit.Help berfungsi untuk memberikan

petunjuk kepada pengguna mengenai cara mengoperasikan aplikasi DECryptoSMS. About berfungsi untuk memberikan informasi kepada pengguna tentang aplikasi DECryptoSMS. Exit berfungsi untuk keluar dari aplikasi DECryptoSMS.

(18)

5. Kesimpulan

Kesimpulan yang dapat diambil dari penulisan skripsi ini adalah sebagai berikut:

1. Aplikasi DECryptoSMS ini dapat mengirimkan dan menerima SMS sekaligus

memiliki fasilitas untuk mengamankan informasi dari pesan yang dikirim dengan cara memanfaatkan ilmu kriptografi.

2. Untuk menghasilkan aplikasi berbasis mobile yang dapat melakukan enkripsi, kita

dapat mengimplementasikan algoritma kriptografi klasik dan atau modern dengan menggunakan eclipse.

3. Kombinasi algoritma kriptografi klasik dan modern dapat diimplementasikan dengan

baik untuk enkripsi pesan teks yang bekerja pada jaringan GSM dengan mengirimkan pesan dalam bentuk kombinasi abjad dan angka pada ponsel berbasis Android.

4. Kekurangan dari implementasi algoritma AES untuk enkripsi SMS adalah jumlah

karakter yang lebih besar karena 15 karakter akan menjadi 32 karakter setelah dienkripsi (kelipatan 16).

(19)

DAFTAR PUSTAKA

Ariyus, Dony. 2005. Computer Security. Yogyakarta : Andi.

Ariyus, Dony. 2008. Pengantar Ilmu Kriptografi. Yogyakarta : Andi.

DiMarzio, J. F. 2008. Android A Programmer’s Guide. Mc Graw Hill.

Elmastri, R & Navasthe, B. 1994.Fundamental Of Database System 2nd Edition. Addison

Wesley.

Fatta, H. A. 2007. Analisis & Perancangan Sistem Informasi. Yogyakarta: Andi.

Felker, Donn. 2011. Android Application Development for Dummies. Wiley.

H, Nazruddin Safaat. 2012. Pemrograman Aplikasi Mobile Smartphone Dan Tablet PC

Berbasis Android.Bandung : Informatika.

Hariyanto, B. 2007.Esensi – Esensi Bahasa Pemrograman Java Edisi 2.Bandung :

Informatika.

Jackson, Wallace. Android Apps for Absolute Beginners.Apress.

Gambar

Gambar 3.1 Diagram Hierarki
Gambar 3.2 Flowchart Sistem
Gambar 3.3 Susunan Jaringan dan Aliran SMS
Gambar 3.5 Context Diagram
+7

Referensi

Dokumen terkait

Kinerja bank Himpunan Saudara dari perspektif pelanggan adalah cukup baik, berdasarkan indikator dari pangsa pasar, retensi, dan akuisisi pelanggan yang cukup

Sesuai dengan Peraturan Direktur Jenderal Pajak Nomor PER-24/PJ/2012 tentang Bentuk, Ukuran, Tata Cara Pengisian Keterangan, Prosedur Pemberitahuan dalam Rangka

Dengan lokasi yang sangat strategis di Gandaria, Kebayoran Baru, Jakarta Selatan, apartemen 1Park Avenue ini memiliki akses terbaik menuju CBD Jakarta.. Dekat

5.4 Hubungan Sikap dengan Peran Serta Masyarakat untuk Kewaspadaan Dini dalam Pencegahan DBD .... Tabel Data Responden per Lingkungan ... Hasil Uji Validitas Variabel Pengetahuan

Tujuan dari penelitian untuk mengeta- hui hubungan ambulasi dini terhadap aktifasi peristaltic usus pada pasien post operasi frak- tur ekstremitas bawah dengan anestesi umum di

Pada penelitian ini, dibuat pengendalian sistem mesin penganjian dengan metode kontrol PID pada putaran motor DC dengan mikrokontroller Atmega 8535 dan sensor hall effect encoder

Oleh yang demikian, wacana sains Islam kontemporari bukan bermakna penolakan sepenuhnya modeniti oleh pemikir intelektual Islam tempatan dan antarabangsa,

Aktif adalah jika PP masih melakukan kegiatan pendaratan ikan walaupun pada triwulan yang bersangkutan. tidak ada kegiatan pendaratan ikan tetapi masih akan melakukan