• Tidak ada hasil yang ditemukan

Aplikasi enkripsi dan dekripsi SMS dengan metode Playfair Cipher pada smartphone berbasis Android.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Aplikasi enkripsi dan dekripsi SMS dengan metode Playfair Cipher pada smartphone berbasis Android."

Copied!
134
0
0

Teks penuh

(1)

vi

ABSTRAKSI

Kriptografi merupakan suatu ilmu untuk menyandikan data agar tidak dapat

diketahui oleh pihak yang tidak bersangkutan/berhak sehingga data tersebut dapat

aman. Playfair cipher merupakan salah satu metode kriptografi simetris yang yang

menyandikan data menggunakan kunci. Metode ini hanya dapat menyandikan data

yang berupa huruf alphabet. Kunci yang digunakan akan dibentuk kedalam tabel 5X5

dengan menhilangkan huruf J. Kemudian data yang berupa huruf tadi akan dienkripsi

dan dekripsi mengunakan kunci yang sudah dibentuk dalam tabel 5X5.

Dalam tugas akhir ini, penulis membuat aplikasi untuk melakukan enkripsi dan

dekripsi Short Message Service (SMS) yang dibangun dengan bahasa pemrograman java. Aplikasi ini dibuat untuk mengamankan isi pesan yang bersifat rahasia/penting.

Selain itu, dengan menggunakan aplikasi ini, SMS yang dikirimkan atau yang terbaca

provider berupa ciphertext.

Aplikasi ini sudah harus terpasang pada smartphone kedua belah pihak (pengirim

dan penerima). Ketika user mengirim SMS, SMS (plaintext) yang dikirim sudah

dienkripsi terlebih dahulu menggunakan aplikasi, jadi SMS yang dikirimkan melalui

provider sudah dalam bentuk enkripsi SMS (ciphertext). SMS (ciphertext) ini yang

masuk ke penerima, sehingga penerima harus menggunakan aplikasi ini untuk

mendekripsi SMS (ciphertext) yang masuk. Untuk melakukan dekripsi harus

menggunakan kunci yang sama dengan kunci yang digunakan untuk melakukan

enkripsi.

Hasil akhir yang didapat yaitu sebuah aplikasi enkripsi dan dekripsi SMS dengan

metode Playfair Cipher yang berjalan dengan baik pada beberapa versi android yang

(2)

vii

ABSTRACT

Cryptography is a study to code data in order to keep it confidential. Playfair

cipher is one of the symmetrical cryptography methods which code the data through

key. This method only codes the data in the form of alphabet. The key used will be

formed in 5X5 table which dismisses letter ‘J’. Eventually, the data will be encrypted and described using the key.

In this study, the researcher creates an application to encrypt and describe Short

Message Service (SMS) under the scope of Java Program. The application aims to

secure secret or important messages. Besides, provider will read the message as chip

text.

The application should be installed in the smartphone in both parties (sender and

receiver). While the sender sends the SMS, it (plaintext) has been encrypted through

the application. Thus, the delivered SMS is in the form of encrypted SMS

(ciphertext). The receiver should install the application in order to describe and then

read the SMS (ciphertext). To describe the SMS, the key used to open the SMS is the

same as the key used to encrypt.

The final result is an encrypted application and description of SMS using Playfair

(3)

APLIKASI ENKRIPSI DAN DEKRIPSI SMS DENGAN METODE

PLAYFAIR CIPHER PADA SMARTPHONE BERBASIS ANDROID

SKRIPSI

Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer

Program Studi Teknik Informatika

Disusun oleh :

Lutvianus Satria Kusuma

105314108

PROGRAM STUDI TEKNIK INFORMATIKA

JURUSAN TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

(4)

THE ENCRIPTION AND DECRIPTION OF SMS APPLICATION

USING PLAYFAIR CIPHER METHOD IN ANDROID-BASED

SMARTPHONE

THESIS

Presented as Partial Fulfillment of the Requirements To Obtain the Sarjana Komputer Degree

In Informatics Engineering

By :

Lutvianus Satria Kusuma

105314108

INFORMATICS ENGINEERING STUDY PROGRAM

DEPARTMENT OF INFORMATICS ENGINEERING

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

(5)
(6)
(7)

Karya ini aku persembahkan kepada :

Tuhan Yang Maha Esa, yang selalu senantiasa memberikan berkat dan rahmat pada diriku

untuk selalu tekun dan pantang menyerah selama pengerjaan tugas akhir ini.

Kedua orangtuaku dan kakak-kakakku, yang selalu memberikan semangat, memberi

motivasi, serta mendoakan aku selama mengerjakan tugas akhir.

Seluruh teman-teman Teknik Informatika 2010, teman-teman seperjuangan yang saling

(8)
(9)
(10)

vi

ABSTRAKSI

Kriptografi merupakan suatu ilmu untuk menyandikan data agar tidak dapat

diketahui oleh pihak yang tidak bersangkutan/berhak sehingga data tersebut dapat

aman. Playfair cipher merupakan salah satu metode kriptografi simetris yang yang

menyandikan data menggunakan kunci. Metode ini hanya dapat menyandikan data

yang berupa huruf alphabet. Kunci yang digunakan akan dibentuk kedalam tabel 5X5

dengan menhilangkan huruf J. Kemudian data yang berupa huruf tadi akan dienkripsi

dan dekripsi mengunakan kunci yang sudah dibentuk dalam tabel 5X5.

Dalam tugas akhir ini, penulis membuat aplikasi untuk melakukan enkripsi dan

dekripsi Short Message Service (SMS) yang dibangun dengan bahasa pemrograman java. Aplikasi ini dibuat untuk mengamankan isi pesan yang bersifat rahasia/penting.

Selain itu, dengan menggunakan aplikasi ini, SMS yang dikirimkan atau yang terbaca

provider berupa ciphertext.

Aplikasi ini sudah harus terpasang pada smartphone kedua belah pihak (pengirim

dan penerima). Ketika user mengirim SMS, SMS (plaintext) yang dikirim sudah

dienkripsi terlebih dahulu menggunakan aplikasi, jadi SMS yang dikirimkan melalui

provider sudah dalam bentuk enkripsi SMS (ciphertext). SMS (ciphertext) ini yang

masuk ke penerima, sehingga penerima harus menggunakan aplikasi ini untuk

mendekripsi SMS (ciphertext) yang masuk. Untuk melakukan dekripsi harus

menggunakan kunci yang sama dengan kunci yang digunakan untuk melakukan

enkripsi.

Hasil akhir yang didapat yaitu sebuah aplikasi enkripsi dan dekripsi SMS dengan

metode Playfair Cipher yang berjalan dengan baik pada beberapa versi android yang

(11)

vii

ABSTRACT

Cryptography is a study to code data in order to keep it confidential. Playfair

cipher is one of the symmetrical cryptography methods which code the data through

key. This method only codes the data in the form of alphabet. The key used will be

formed in 5X5 table which dismisses letter ‘J’. Eventually, the data will be encrypted and described using the key.

In this study, the researcher creates an application to encrypt and describe Short

Message Service (SMS) under the scope of Java Program. The application aims to

secure secret or important messages. Besides, provider will read the message as chip

text.

The application should be installed in the smartphone in both parties (sender and

receiver). While the sender sends the SMS, it (plaintext) has been encrypted through

the application. Thus, the delivered SMS is in the form of encrypted SMS

(ciphertext). The receiver should install the application in order to describe and then

read the SMS (ciphertext). To describe the SMS, the key used to open the SMS is the

same as the key used to encrypt.

The final result is an encrypted application and description of SMS using Playfair

(12)

viii

KATA PENGANTAR

Puji dan syukur penulis panjatkan kepada Tuhan Yesus Kristus, atas berkat

yang luar biasa dan kehendakNya penulis dapat menyelesaikan penelitian tugas akhir

ini yang berjudul “Aplikasi Enkripsi dan Dekripsi SMS Dengan Metode Playfair

Cipher Pada Smartphone Berbasis Android”.

Penulis mengucapkan terimakasih yang sebesar-besarnya kepada semua pihak

yang berperan dalam pengerjaan tugas akhir ini :

1. Tuhan Yesus Kristus dan Bunda Maria yang telah memberikan berkat dan

rahmatNya kepada penulis sehingga dapat menyelesaikan tugas akhir ini.

2. Bapak Benedictus Herry Suharto, S.T., M.T. selaku dosen pembimbing

akademik yang selalu membimbing dalam penyelesaian tugas akhir ini.

3. Bapak Puspaningtyas Sanjoyo Adi, S.T., M.T. dan Iwan Binanto, S.Si., M.Cs.

selaku dosen penguji atas kritik dan saran yang diberikan.

4. Seluruh dosen dan karyawan Universitas Snata Dharma Yogyakarta atas

kontribusinya dalam membantu penulis.

5. Kedua orang tua saya Bapak Drs. Surya Suparji dan Ibu Titik Retno Agustina

yang tanpa henti memberikan dukungan baik secara moral maupun materi.

6. Kedua kakak saya Evelin Surya Puspita Jayawardani dan Ratnasari Nugraheni

atas semangat yang diberikan kepada penulis hingga dapat menyelesaikan

(13)

ix

7. Teman-teman HMPS yang tidak bisa saya sebutkan satu persatu, terimakasih

atas doa dan semangat yang kalian berikan.

8. Serta semua pihak yang berperan dalam penyelesaian tugas akhir ini.

Tugas akhir ini masih kurang dari kata sempurna, oleh karena itu penulis

dengan rendah hati memohon untuk memberikan kritik dan saran untuk perbaikan

dalam tugas akhir ini. Semoga penulisan tugas akhir ini dapat bermanfaat nagi semua

pihak.

Yogyakarta, Februari 2015

(14)

x

Pernyataan Keaslian Karya ... iv

Lembar Pernyataan Persetujuan ... v

(15)

xi

BAB III ANALISIS PERANCANGAN SISTEM ... 35

3.1 Gambaran Umum ... 35

BAB IV IMPLEMENTASI SISTEM ... 63

(16)

xii

4.2.7 Halaman Menu Tentang Aplikasi ... 100

BAB V ANALISIS HASIL IMPLEMENTASI ... 104

5.1 Hasil Pengujian Sistem ... 104

5.1.1 Pengujian Aplikasi Pada Beberapa Versi Android ... 105

5.1.2 Pengujian Kuisioner ... 106

5.2 Kelebihan Sistem ... 111

5.3 Kekurangan Sistem ... 111

BAB VI PENUTUP ... 112

6.1 Kesimpulan ... 112

6.2 Saran ... 113

DAFTAR PUSTAKA ... 114

(17)

xiii

DAFTAR GAMBAR

Halaman

Gambar 2.1 Cara Kerja Key Distribution Center ... 14

Gambar 2.2 Cara Kerja SMS ... 23

Gambar 3.1 Use Case ... 38

Gambar 3.2 State Diagram Antar Muka ... 45

Gambar 3.3 State Diagram Pesan... 46

Gambar 3.4 Sequence Diagram Pengiriman Pesan ... 46

Gambar 3.5 Sequence Diagram Terima dan Dekripsi Pesan Diterima ... 47

Gambar 3.6 Diagram Class ... 50

Gambar 3.7 Relasi Diagram Class ... 51

Gambar 3.8 Flowchart Enkripsi dan Dekripsi Pesan ... 55

Gambar 3.9 Halaman Pembuka Awal ... 56

Gambar 3.10 Halaman Menu Awal Pesan ... 57

Gambar 3.11 Halaman Tulis Pesan ... 58

Gambar 3.12 Halaman Pesan Masuk ... 59

Gambar 3.13 Halaman Dekripsi Pesan ... 60

Gambar 3.14 Halaman Pengaturan No Pribadi ... 61

Gambar 3.15 Halaman Pesan Keluar ... 61

Gambar 3.16 Halaman Tentang Aplikasi ... 62

Gambar 4.1 Halaman Pembuka Awal ... 78

Gambar 4.3 Halaman Tulis Pesan ... 85

Gambar 4.4 Halaman Pesan Masuk ... 89

Gambar 4.5 Halaman Buka Pesan Masuk ... 91

(18)

xiv

Gambar 4.7 Halaman Pesan Terkirim ... 98

Gambar 4.8 Halaman Tentang Aplikasi ... 100

Gambar 5.1 Grafik Pertanyaan 1 ... 106

Gambar 5.2 Grafik Pertanyaan 2 ... 107

Gambar 5.3 Grafik Pertanyaan 3 ... 108

Gambar 5.4 Grafik Pertanyaan 4 ... 109

(19)

xv

DAFTAR TABEL

Halaman

Tabel 2.1 Kunci Bujursangkar 5X5 ... 18

Tabel 3.1 Use Case Narative Pengiriman Pesan ... 38

Tabel 3.2 Use Case Narative Penerimaan Pesan ... 38

Tabel 3.3 Use Case Narative Hapus Pesan ... 41

Tabel 3.4 Use Case Narative Dekripsi Pesan ... 43

Tabel 3.5 Use Case Narative Mengatur No Telpon Pribadi ... 44

Tabel 3.6 Tabel SMS... 53

Tabel 3.7 Tabel Pesan Masuk ... 53

Tabel 3.8 Tabel Pesan Terkirim ... 54

Tabel 3.9 Tabel Kunci ... 54

Tabel 5.1 Tabel Hasil Pengujian pada Beberapa Versi Android ... 105

Tabel 5.2 Hasil Kuisioner Pertanyaan 1 ... 106

Tabel 5.3 Hasil Kuisioner Pertanyaan 2 ... 107

Tabel 5.4 Hasil Kuisioner Pertanyaan 3 ... 108

Tabel 5.5 Hasil Kuisioner Pertanyaan 4 ... 109

(20)

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

Perkembangan di bidang teknologi dalam beberapa tahun belakangan ini

berkembang begitu pesat, khususnya smartphone yang dapat digunakan untuk

berbagai macam fungsi. Berbagai macam jenis smartphone kini banyak beredar di

semua kalangan masyarakat, salah satunya yaitu smartphone berbasis android.

Smartphone berbasis android ini cukup popular saat ini karena smartphone ini

menggunakan Operating System Mobile yang open platform. Banyak perangkat

lunak untuk mengembangkan atau membangun aplikasi pada smartphone yang

berbasis android ini, diantaranya yaitu eclipse.

Banyak fitur-fitur yang disediakan dari smartphone untuk menjalankan sebuah

fungsi-fungsi tertentu dari smatphone itu sendiri. Salah satu fitur yang cukup penting

dari smartphone yaitu fitur untuk melakukan pengiriman data yang berupa pesan

singkat / Short Message Service (SMS). Namun seringkali karena kesalahan

pengguna itu sendiri dalam melakukan fitur SMS ini, misalnya salah mengirimkan

pesan kepada orang lain yang dimana pesan itu bersifat pribadi, rahasia, dan penting

bagi pengirim dan penerimanya. Lalu seiring juga dengan berkembangnya teknologi

yang semakin canggih maka menimbulkan pertanyaan mengenai keamanan data dan

(21)

2

Dengan berdasarkan dengan alasan-alasan tersebut dan berbagai pertimbangan

maka dirasa dibutuhkan suatu aplikasi pengamanan isi SMS yang akan dikirim.

Pangamanan SMS ini dilakukan dengan cara menyamarkan isi SMS dengan

menggunakan algoritma kriptografi klasik supaya hanya penerima yang berhak saja

yang akan mengetahui maksud dari isi SMS tersebut. Dalam hal ini, maka dibutuhkan

aplikasi yang dapat melakukan enkripsi SMS ketika SMS itu akan dikirim, dan

dekripsi SMS ketika SMS itu sampai ditangan penerima yang berhak. Algoritma

kriptografi klasik yamg digunakan yaitu playfair cipher. Playfair cipher merupakan

algoritma kriptografi klasik yang paling terkenal dan juga paling kuat. Algoritma

playfair cipher juga menggunakan teknik digraph cipher yang artinya proses enkripsi

dilakukan pada setiap dua huruf. Aplikasi yang dibuat berjalan pada sistem operasi

android sehingga para pengguna smatphone dapat melakukan SMS dengan lebih

aman.

1.2 Rumusan Masalah

1. Bagaimana mengimplementasikan enkripsi dan dekripsi SMS pada

smartphone berbasis android dengan menggunakan algoritma kriptografi

klasik Playfair Cipher?

2. Apakah aplikasi ini dapat berjalan dengan baik di beberapa versi OS

(22)

3

1.3 Batasan Masalah

Adapun batasan masalah dalam Tugas Akhir ini adalah sebagai berikut:

1. Aplikasi yang dibuat hanya dapat digunakan pada smartphone yang

bersistem operasi android.

2. Aplikasi yang dibuat difokuskan pada pengiriman dan penerimaan SMS.

3. Aplikasi ini diuji coba pada beberapa versi android.

4. Aplikasi ini tidak membahas masalah jaringan.

1.4 Tujuan dan Manfaat Penelitian

1. Membuat aplikasi yang lebih aman untuk melakukan pengiriman data

yang berupa pesan singkat / Short Message Service (SMS) agar privasi

pengguna lebih terjamin.

2. Dengan adanya enkripsi dan dekripsi SMS, membuat SMS yang dikirim

hanya dapat dibaca oleh orang yang berhak.

3. Menerapkan algoritma playfair cipher pada SMS smartphone berbasis

(23)

4

1.5 Metodologi Penelitian

Berikut ini merupakan penjelasan tentang metodologi yang digunakan oleh

peneliti yaitu sebagai berikut :

1. Studi Pustaka

Studi pustaka dilakukan untuk melengkapi pengatahuan dasar yang

dimiliki peneliti, sehingga dengan adanya hal ini peneliti dapat

menyelesaikan penelitian ini.

2. Membangun aplikasi dengan menggunakan metode berorientasi objek.

3. Menganalisis dan Mendesain aplikasi enkripsi dan dekripsi SMS.

4. Mengimplementasi program menggunakan eclipse.

5. Menguji coba aplikasi mengunakan smatphone berbasis android.

1.6 Sistematika Penulisan

Struktur penulisan tugas akhir ini adalah sebagai berikut :

BAB I PENDAHULUAN

Berisi latar belakang masalah, batasan masalah, tujuan dan manfaat

penelitian, rumusan masalah, metodologi penelitian, dan sistematika

penulisan.

BAB II LANDASAN TEORI

Berisi teori-teori yang menyangkut tentang enkripsi dan dekripsi

(24)

5

BAB III ANALISIS PERANCANGAN SISTEM

Berisi tentang analisis dari sistem yang akan dibuat dan

perancangan dari sistem itu sendiri secara tepat untuk mengatasi

masalah yang ada.

BAB IV IMPLEMENTASI SISTEM

Berisi pembahasan-pembahasan mengenai perubahan dari

rancangan sistem ke penerapan sistem sesungguhnya. Bab ini akan

menjelaskan semua dari awal tahap-tahap pembuatan sistem.

BAB V ANALISIS HASIL IMPLEMENTASI

Berisi analisis dari hasil implementasi sistem yang mencakup

kelebihan dan kekurangan aplikasi yang telah dibuat dan diuji coba.

BAB VI PENUTUP

(25)

6

BAB II

LANDASAN TEORI

2.1 KRIPTOGRAFI

Kriptografi (cryptography) berasal dari bahasa Yunani, terdiri dari dua suku

kata yaitu kripto dan graphia. Kripto artinya menyembunyikan, sedangkan graphia

artinya tulisan. Kriptografi adalah ilmu yang mempelajari teknik-teknik matematika

yang berhubungan dengan aspek keamanan informasi, seperti kerahasiaan data,

keabsahan data, integritas data, serta autentikasi data (Menezes, Oorschot and

Vanstone, 1996). Tetapi tidak semua aspek keamanan informasi dapat diselesaikan

dengan kriptografi.

Kriptografi dapat pula diartikan sebagai ilmu atau seni untuk menjaga

keamanan pesan. Ketika suatu pesan dikirim dari suatu tempat ke tempat lain, isi

pesan tersebut mungkin dapat disadap oleh pihak lain yang tidak berhak untuk

mengetahui isi pesan tersebut. Untuk menjaga pesan, maka pesan tersebut dapat

diubah menjadi suatu kode yang tidak dapat dimengerti oleh pihak lain.

Enkripsi adalah sebuah proses penyandian yang melakukan perubahan

sebuah kode (pesan) dari yang bisa dimengerti (plainteks) menjadi sebuah kode yang

tidak bisa dimengerti (cipherteks). Sedangkan proses kebalikannya untuk mengubah

cipherteks menjadi plainteks disebut dekripsi. Proses enkripsi dan dekripsi

(26)

7

Secara sederhana istilah-istilah di atas dapat digambarkan sebagai berikut :

Proses Enkripsi/Dekripsi Sederhana

Cryptography adalah suatu ilmu ataupun seni mengamankan pesan, dan dilakukan oleh cryptographer. Sedang, cryptanalysis adalah suatu ilmu dan seni membuka (breaking) ciphertext dan orang yang melakukannya disebut cryptanalyst.

Cryptographic system atau cryptosystem adalah suatu fasilitas untuk mengkonversikan plaintext ke ciphertext dan sebaliknya. Dalam sistem ini,

seperangkat parameter yang menentukan transformasi pencipheran tertentu disebut

suatu set kunci. Proses enkripsi dan dekripsi diatur oleh satu atau beberapa kunci

kriptografi. Secara umum, kunci-kunci yang digunakan untuk proses pengenkripsian

dan pendekripsian tidak perlu identik, tergantung pada sistem yang digunakan.

Secara umum operasi enkripsi dan dekripsi dapat diterangkan secara

matematis sebagai berikut:

EK (M) = C (Proses Enkripsi)

DK (C) = M (Proses Dekripsi)

Pada saat proses enkripsi kita menyandikan pesan M dengan suatu kunci K

(27)

8

dengan menggunakan kunci K sehingga dihasilkan pesan M yang sama seperti pesan

sebelumnya.

Dengan demikian keamanan suatu pesan tergantung pada kunci ataupun

kunci-kunci yang digunakan, dan tidak tergantung pada algoritma yang digunakan.

Sehingga algoritma-algoritma yang digunakan tersebut dapat dipublikasikan dan

dianalisis, serta produk-produk yang menggunakan algoritma tersebut dapat

diproduksi massal. Tidaklah menjadi masalah apabila seseorang mengetahui

algoritma yang kita gunakan. Selama ia tidak mengetahui kunci yang dipakai, ia tetap

tidak dapat membaca pesan.

Jenis jenis Kriptografi

Suatu kriptografi terdiri dari sebuah algoritma, seluruh kemungkinan

plaintext, ciphertext dan kunci-kunci. Secara umum kriptografi dapat digolongkan

menjadi, yaitu :

1. Kriptografi Simetris

Disebut sebagai algoritma simetris, karena dalam proses enkripsi dan

dekripsinya menggunakan kunci yang sama. Algoritma enkripsi dan

deskripsi bias merupakan algoritma yang sudah umum diketahui, namun

kunci yang dipakai harus terjaga kerahasiaanya, dan hanya diketahui oleh

(28)

9

tentang kunci yang dipergunakan. Pendistribusian kunci dari satu pihak

ke pihak lainnya memerlukan suatu kanal tersendiri yang terjagaan

kerahasiaannya. Adapun proses kriptografi simetris dapat kita lihat pada

gambar dibawah :

Algoritma kunci simetris memiliki beberapa kelebihan dan kekurangan,

yakni:

Kelebihan :

1. Waktu proses untuk enkripsi dan dekripsi relatif cepat, hal ini

disebabkan karena efisiensi yang terjadi pada pembangkit kunci.

2. Karena cepatnya proses enkripsi dan dekripsi, maka algoritma ini

dapat digunakan pada sistem secara real-time seperti saluran telepon

digital.

Kekurangan :

1. Untuk tiap pasang pengguna dibutuhkan sebuah kunci yang berbeda,

sedangkan sangat sulit untuk menyimpan dan mengingat kunci yang

banyak secara aman, sehingga akan menimbulkan kesulitan dalam hal

(29)

10

2. Perlu adanya kesepakatan untuk jalur yang khusus untuk kunci, hal ini

akan menimbulkan masalah yang baru karena tidak mudah u

menentukan jalur yang aman untuk kunci, masalah ini sering disebut

dengan “Key Distribution Problem”.

3. Apabila kunci sampai hilang atau dapat ditebak maka kriptosistem ini

tidak aman lagi.

2. Kriptografi Asimetris

Dalam kriptografi asimetris ini digunakan dua buah kunci. Satu kunci

yang disebut kunci publik (public key) dapat dipublikasikan, sedang kunci yang lain yang disebut kunci privat (private key) harus dirahasiakan. Proses menggunakan sistem ini dapat diterangkan secara sederhana

sebagai berikut : bila A ingin mengirimkan pesan kepada B, A dapat

menyandikan pesannya dengan menggunakan kunci publik B, dan bila B

ingin membaca surat tersebut, ia perlu mendekripsikan surat itu dengan

kunci privatnya. Dengan demikian kedua belah pihak dapat menjamin

asal surat serta keaslian surat tersebut, karena adanya mekanisme ini.

Algoritma kunci asimetris memiliki beberapa kelebihan dan kekurangan,

yakni:

Kelebihan :

(30)

11

2. Manajemen kunci pada suatu sistem informasi dengan banyak

pengguna menjadi lebih mudah, karena jumlah kunci yang digunakan

lebih sedikit.

Kekurangan :

1. Kecepatan proses algoritma ini tergolong lambat bila dibandingkan

dengan algoritma kunci simetris.

2. Untuk tingkat keamanan yang sama, rata-rata ukuran kunci harus lebih

besar bila dibandingkan dengan ukuran kunci yang dipakai pada

algoritma kunci simetris.

3. Kriptografi Hibrid

Sistem ini mengggabungkan chiper simetrik dan asimetrik. Proses ini

dimulai dengan negosiasi menggunakan chiper asimetrik dimana kedua

belah pihak setuju dengan private key/session key yang akan dipakai.

Kemudian session key digunakan dengan teknik chiper simetrik untuk

mengenkripsi conversation ataupun tukar-menukar data selanjutnya. Suatu

session key hanya dipakai sekali sesi. Untuk sesi selanjutnya session key

(31)

12

Ada empat tujuan mendasar dari kriptografi yang juga merupakan aspek

keamanan informasi adalah :

1. Kerahasiaan (Confidentiality) Adalah layanan yang digunakan untuk menjaga isi dari informasi dari siapapun kecuali yang memiliki kunci

rahasia atau otoritas untuk mmembuka informasi yang telah disandikan.

2. Integritas Data (Data Integrity) Berhubungan dengan penjagaan dari perubahan data secara tidak sah. Untuk dapat menjaga integritas data,

suatu sistem harus memiliki kemampuan untuk mendeteksi manipulasi

data yang dilakukan pihak-pihak yang tidak berhak, antara lain

penyisipan, penghapusan, dan pendistribusian data lain ke dalam data

yang asli.

3. Otentifikasi (Authentication) Berhubungan dengan identifikasi, baik secara kesatuan sistem maupun informasi itu sendiri. Dua pihak yang

saling berkomuniasi harus saling memperkenalkan diri. Informasi yang

dikirimkan harus diOtentikasi keasliannya, isi datanya, waktu pengiriman

dan lain sebagainya.

4. Non-repudiasi (Non-repudiation) Merupakan usaha untuk mencegah terjadinya penyangkalan terhadap pengiriman atau terciptanya suatu

(32)

13

Distribusi Kunci Simetris Menggunakan Enkripsi Simetris

Pada enkripsi simetris, kedua belah pihak harus melakukan pertukaran atau

berbagi kunci yang sama, dan kunci ini yang harus dilindungi dari akses oleh orang

lain. Oleh karena itu, istilah yang merujuk pada cara penyampaian kunci untuk dua

pihak yang ingin bertukar data, tanpa membiarkan orang lain untuk melihat kunci.

Untuk kedua pihak A dan B, distribusi kunci dapat dicapai dalam beberapa cara,

sebagai berikut:

1. Pihak A dapat memilih kunci dan cara mengirimkannya ke B.

2. Menggunakan pihak ketiga ( C ) dan pihak C ini dapat memilih kunci dan

cara mendistribusikan kunci ke pihak A dan B.

3. Jika A dan B sebelumnya menggunakan sebuah kunci, salah satu pihak dapat

mengirimkan kunci baru ke yang lain, dienkripsi dengan menggunakan

kunci tua.

4. Jika A dan B masing-masing memiliki koneksi terenkripsi kepada pihak

ketiga C, C dapat memberikan kunci pada jaringan terenkripsi ke A dan B.

Distribusi kunci (1 dan 2) merupakan sederhana tapi hanya berlaku bila ada

kontak pribadi antara keduabelah pihak, dimana perangkat dan kunci terjadi pada

setiap pasangan, tapi tidak berlaku dalam skala beberapa pihak yang ingin

berkomunikasi. Distribusi kunci (3) ini didasarkan pada distribusi pertama dan kedua,

dan dengan catatn telah melakukan distribusi pertama atau kedua. Distribusi kunci (4)

(33)

14

media yang dipercaya untuk memediasi pembentukan komunikasi yang aman antara

mereka. Harus percaya perantara tidak menyalahgunakan pengetahuan semua kunci

sesi.

Key Distribution Centre

Pada mekanisme KDC dimisalkan Alice dan Bob ingin berkomunikasi dan

menggunakan kunci simetris. Mereka tidak pernah bertemu (mungkin mereka hanya

bertemu disebuah chat online) dengan demikian belum ada kesepakatan mengenai

kunci yang akan digunakan. Bagaimana mereka bisa setuju atau menyepakati kunci.

Solusi yang sering digunakan adalah menggunakan KDC.

KDC adalah server yang dapat menghasilkan kunci yang berbeda pada

masing-masing pengguna yang terdaftar dengan melakukan register terlebih dahulu untuk

mendaftar ke KDC. Diilustrasikan bahwa Alice dan Bob adalah pengguna terdaftar

KDC, mereka hanya tahu kunci masing-masing, KA – KDC dan KB – KDC.

Alice dan Bob berkomunikasi menggunakan kunci session yaitu R1

(34)

15

1. Langkah pertama yang harus dilakukan Alice adalah menggunakan KA –

KDC untuk mengenkripsi komunikasinya dengan KDC, Alice

mengirimkan pesan ke KDC dan mengatakan bahwa dia (A) ingin

berkomunikasi dengan Bob (B).

2. Setelah itu KDC akan mendekripsi KA – KDC (A,B) dan kemudian KDC

mengotentikasi Alice. KDC kemudian menghasilkan nomor acak, R1. Ini

adalah nilai yang akan menjadi kunci bersama untuk Alice dan Bob dan

akan digunakan untuk melakukan enkripsi simetris ketika mereka

berkomunikasi satu sama lain. R1 ini disebut dengan kunci one-time

session. Lalu KDC menginformasikan kepada Alice dan Bob mengenai

kunci one-time session mereka yaitu R1. KDC mengirimkan kembali pesan

terenkripsi ke Alice berisi sebagai berikut :

 R1 merupakan kunci one-time session yang akan digunakan Alice

dan Bob untuk berkomunikasi.

 Sepasang nilai A, dan R1, Dienkripsi oleh KDC menggunakan

kunci Bob, KB – KDC. Kunci yang dihasilkan adalah KB-KDC (A,

R1).

3. Selanjutnya Pesan dari KDC ke Alice adalah KA – KDC (R1, KB – KDC

(35)

16

mengetahui kunci One-Time Sessionnya adalah R1. Alice juga

mengekstrak KB – KDC (A, R1) dan memforward pesan kepada Bob.

4. Bob mendekripsi pesan yang diterima, KB – KDC (A, R1). Bob

mengetahui bahwa R1 adalah kunci one-time sessionnya, dan Alice (A)

yang akan berkomunikasi dengan dia. Bob harus mengotentikasi Alice

terlebih dahulu menggunakan R1.

Keuntungan menggunakan KDC adalah fleksibilitas dan efisiensi. Karena

pengguna hanya perlu bertukar dan menyimpan KKM. Bukan KKM dari setiap

penerima.

One-Time Session Key

Kita telah melihat diatas bahwa kunci one-time session dihasilkan oleh KDC

untuk digunakan dalam enkripsi kunci simetris antara dua entitas. Dengan

menggunakan kunci one-time session dari KDC pengguna dibebaskan dari keharusan

untuk menyepakati kunci bersama untuk setiap entitas dengan siapa ingin

berkomunikasi. Sebaliknya, pengguna hanya perlu memiliki satu kunci rahasia

bersama untuk berkomunikasi dengan KDC, dan KDC akan menginformasikan kunci

one-time session dari KDC untuk semua komunikasi dengan entitas lainnya.

Kunci one-time session juga digunakan dalam kriptografi kunci publik . Sistem

kunci publik sering digunakan untuk tujuan otentikasi. Setelah dua pihak telah

(36)

17

dienkripsi untuk menyepakati satu kali kunci simetris bersama . Session key simetris ini kemudian digunakan untuk mengenkripsi pesan.

2.2. SANDI PLAYFAIR

Sandi Playfair digunakan oleh Tentara Inggris pada saat Perang Boer II dan

Perang Dunia I. Ditemukan pertama kali oleh Sir Charles Wheatstone dan Baron

Lyon Playfair pada tanggal 26 Maret 1854. Playfair merupakan digraphs cipher,

artinya setiap proses enkripsi dilakukan pada setiap dua huruf. Playfair menggunakan

table 5x5. Semua alfabet kecuali J diletakkan ke dalam tabel. Huruf J dianggap sama

dengan huruf I atau sesuai dengan kesepakatan, sebab huruf J mempunyai frekuensi

kemunculan yang paling kecil. Metode Playfair Cipher adalah salah satu sandi klasik

yang menggunakan teknik manual simetrik enkripsi dan merupakan salah satu sandi

substitusi berpasangan (digraf) pertama di dunia. Pertama-tama menentukan kata

kunci yang diinginkan dan kunci yang sudah ditentukan tadi dibentuk menjadi tabel

bujursangkar 5X5. Kunci yang digunakan berupa kata dan tidak ada huruf sama yang

berulang. Apabila kuncinya “RAHASIA”, maka kunci yang digunakan adalah

“RAHSI”. Selanjutnya, kunci dimasukkan ke dalam tabel 5x5, isian pertama adalah

kunci, selanjutnya tulis huruf-huruf berikutnya secara urut dari baris pertama dahulu,

(37)

18

Berikut ini aturan-aturan proses enkripsi pada Playfair yaitu

1. Jika kedua huruf tidak terletak pada baris dan kolom yang sama, maka

huruf pertama menjadi huruf yang sebaris dengan huruf pertama dan

sekolom dengan huruf kedua. Huruf kedua menjadi huruf yang sebaris

dengan huruf kedua dan yang sekolom dengan huruf pertama.

Contohnya, CT menjadi EP, ZL menjadi XN.

2. Jika kedua huruf terletak pada baris yang sama maka huruf pertama

menjadi huruf setelahnya dalam baris yang sama, demikian juga dengan

huruf kedua. Jika terletak pada baris kelima, maka menjadi baris pertama,

dan sebaliknya. Arahnya tergantung dari posisi huruf pertama dan

kedua,mpergeserannya ke arah huruf kedua. Contohnya, AS menjadi HI,

GL menjadi KM.

3. Jika kedua huruf terletak pada kolom yang sama maka huruf pertama

(38)

19

huruf kedua. Jika terletak pada kolom kelima, maka menjadi kolom

pertama, dan sebaliknya. Arahnya tergantung dari posisi huruf pertama

dan kedua, pergeserannya ke arah huruf kedua. Contohnya, ET menjadi

MY, AK menjadi CP.

4. Jika kedua huruf sama, maka letakkan sebuah huruf di tengahnya (sesuai

kesepakatan).

5. Jika jumlah huruf plainteks ganjil, maka tambahkan satu huruf pada

akhirnya, seperti pada aturan ke-4.

Pada proses dekripsi kebalikan dengan memproses enkripsi dengan ketentuan

dekripsi playfair sebagai berikut :

1. Jika kedua huruf tidak terletak pada baris dan kolom yang sama, maka

huruf pertama menjadi huruf yang sebaris dengan huruf pertama dan

sekolom dengan huruf kedua. Huruf kedua menjadi huruf yang sebaris

dengan huruf kedua dan sekolom dengan huruf pertama. Contohnya, HE

menjadi SD.

2. Jika kedua huruf terletak pada baris yang sama maka huruf pertama

menjadi huruf sebelumnya dalam baris yang sama, demikian juga dengan

huruf kedua. Jika terletak pada baris kesatu, maka menjadi baris kelima,

(39)

20

3. Jika kedua huruf terletak pada kolom yang sama maka huruf pertama

menjadi huruf sebelumnya dalam kolom yang sama, demikian juga

dengan huruf kedua. Jika terletak pada kolom pertama, maka menjadi

kolom kelima, dan sebaliknya. Contohnya, ZU didekrip menjadi UN.

Keunggulan Sandi Playfair

1. Proses enkripsi dan dekripsi data menggunakan kombinasi dua huruf

sehingga kriptanalis yang menggunakan teknik analisis frekuensi sangat

sulit untuk memecahakan sandi playfair.

2. Tabel kunci hanya digunakan sekali karena terdapat kemungkinan tabel

kunci tersebut telah dipecahkan oleh pihak yang tidak berkepentingan.

Kelemahan Sandi Playfair

1. Sandi Playfair dengan mudah dapat dipecahkan dengan menggunakan teknik frekuensi ditribusi ganda, yaitu dengan menghitung frekuensi

kemunculan pasangan dua huruf sandi yang kemudian dibandingkan

dengan frekuensi pasangan dua huruf pada suatu bahasa.

2. SandiPlayfair tidak menggunakan huruf J dalam tabel kunci sehingga bisa menimbulkan makna atau arti ganda pada saat memecahkan atau

menerjemahkan suatu sandi.

(40)

21

2.3. SMS

Short Message Service atau biasa disingkat SMS merupakan sebuah layanan

yang banyak diaplikasikan pada sistem komunikasi tanpa kabel (wireless),

memungkinkan dilakukannya pengiriman pesan dalam bentuk alphanumeric antara

terminal pelanggan atau antar teminal pelanggan dengan sistem eksternal, seperti

e-mail, paging, voice e-mail, dan lain-lain.

Aplikasi SMS merupakan aplikasi yang paling banyak peminat dan

penggunanya. Hal ini dapat dibuktikan dengan munculnya berbagai jenis aplikasi

yang memanfaatkan fasilitas SMS.

Sifat transmisi SMS yang merupakan short burst membuat jenis aplikasi

yang memanfaatkan SMS biasanya berupa aplikasi pengiriman data yang ringkas dan

pendek. Sifat perangkat SMS yang mobile dan dapat mengirimkan informasi dari

mana saja selama masih dalam cakupan layanan opertaor, memunculkan aplikasi

lapangan dimana informasi-informasi yang dikumpulkan dari lapangan dikirim secara

berkala kepada pusat pengolahan informasi. Pada bidang entertainment, aplikasi SMS

dapat digunakan sebagai media untuk bermain game atau saling berkirim pesan-pesan

humor maupun karakter-karakter teks yang mempresentasikan gambar.

Variasi aplikasi SMS lainnya adalah untuk aplikasi-aplikasi internet yang

di-SMS-kan, seperti mail-to-SMS dan SMS-to-mail. Aplikasi ini memungkinkan user

mengirimkan atau menerima e-mail melalui ponsel yang dibawanya. Penerimanya

(41)

22

body e-mail yang berformat non-text. Pada umumnya, layanan penerimaan e-mail

melalui SMS hanya berupa notifikasi (pemberitahuan). Layanan ini membuat user

dapat dengan mudah mengirim e-mail dari manapun user berada, tidak perlu dial-up

ke ISP atau mencari warnet.

Cara kerja SMS :

Saat kita menerima pesan SMS/MMS dari handphone (mobile originated),

pesan tersebut tidak langsung dikirimkan ke handphone tujuan (mobile terminated),

akan tetapi dikirim terlebih dahulu ke SMS Center (SMSC) yang biasanya berada di

kantor operator telepon, baru kemudian pesan tersebut diteruskan ke handphone

tujuan. Dengan adanya SMSC, kita dapat mengetahui status dari pesan SMS yang

telah dikirim, apakah telah sampai atau gagal.

Apabila handphone tujuan dalam keadaan aktif dan dapat menerima pesan

SMS yang dikirim, ia akan mengirimkan kembali pesan konfirmasi ke SMSC yang

menyatakan bahwa pesan telah diterima, kemudian SMSC mengirimkan kembali

status tersebut kepada si pengirim. Jika handphone tujuan dalam keadaan mati, pesan

(42)

23

Gambar 2.2 Cara Kerja SMS

Period-validity artinya tenggang waktu yang diberikan si pengirim pesan

sampai pesan dapat diterima oleh si penerima. Hal ini dapat kita atur pada ponsel kita,

mulai dari 1 jam sampai lebih dari 1 hari. Setiap detiknya, ponsel kita saling bertukar

informasi dengan tower si pengirim paket data untuk memastikan bahwa semua

berjalan sebagaimana mestinya.

Ponsel kita juga mengunakan control channel untuk set-up panggilan masuk.

Saat seseorang berusaha menelepon kita, tower akan mengirimkan pesan ke control

channel, sehingga ponsel akan memainkan ringtones. Saat seseorang mengirimkan

SMS, SMS tersebut akan mengalir via SMSC, menuju tower, lalu tower akan

mengirimkan pesan ke ponsel kita sebagai paket data pada control channel. Dengan

(43)

24

pada control channel dan pesan tersebut akan terkirim memalui tower ke SMSC

menuju ponsel yang dituju.

SMS kemudian dikembangkan menjadi Enhaced Message Service, dimana

dengan EMS jumlah karakter yang bisa dikirimkan dalam 1 SMS menjadi lebih

banyak dan dapat juga digunakan untuk mengirim pesan berupa non-karakter (dapat

berupa gambar sederhana). Pada EMS, untuk pengiriman pesan yang lebih dari 160

karakter, maka pesan akan dipecah menjadi beberapa buah, dimana

masing-masingnya terdiri dari tidak lebih dari 160 karakter. Misalnya pesan yang dikirmkan

terdiri dari 167 karakter, maka pesan ini akan dipecah menjadi 2 buah SMS (1 SMS

dengan 160 karakter dan 1 SMS dengan 7 karakter).

Kedua SMS ini akan dikirmkan sebagai 2 SMS terpisah dan di sisi penerima

akan digabungkan menjadi satu SMS lagi. Selain itu EMS juga memungkinkan

perngiriman data gambar sederhana dan rekaman suara. Ternyata, cara kerja SMS

tidak semudah kelihatannya, SMS tidak langsung sampai ke ponsel yang dituju,

melainkan melewati serangkaian proses hingga SMS itu sampai ke ponsel yang

(44)

25

2.4. ANDROID

Penemu Android adalah Andy Rubin yang lahir pada tanggal 22 Juni 1946 di

New Bedford, Amerika Serikat. Andy Rubin bersama-sama dengan Rich Miner, Nick

Sears, dan Chris White mendirikan Android.inc dan apada Juli 2005 dibeli oleh

Google.

Foto Andy Rubin Penemu Android

Pengertian dan Fungsi Android

Pengertian Android adalah sistem operasi berbasis Linux yang dipergunakan

sebagai pengelola sumber daya perangkat keras, baik untuk ponsel, smartphone dan

PC dan tablet. Secara umum Android adalah platform yang terbuka (Open Source)

bagi para pengembang untuk menciptakan aplikasi mereka sendiri untuk digunakan

oleh berbagai piranti bergerak. Telepon pertama yang memakai sistem operasi

Android adalah HTC Dream, yang dirilis pada 22 Oktober 2008. Pada penghujung

tahun 2009 diperkirakan di dunia ini paling sedikit terdapat 18 jenis telepon seluler

(45)

26

telah hadir dengan versi 1.1, yaitu sistem operasi yang sudah dilengkapi dengan

pembaruan estetis pada apalikasinya, seperti jam alrm, voice search, pengiriman

pesan dengan Gmail, dan pemberitahuan email.

Hingga tahun 2012, Android telah berkembang dengan pesat. Dalam kurun 3

tahun Android telah diproduksi dalam versi, dan versi terakhir yang diproduksi

disebut sebagai Android versi 4.1 atau Android Jelly Bean.

Perkembangan Android dari tahun 2009 - 2012

Android versi 1.1

Android versi 1.5 (Cupcake)

Android versi 1.6 (Donut)

Android versi 2.0/2.1 (Eclair)

Android versi 2.2 (Froyo: Frozen Yoghurt)

Android versi 2.3 (Gingerbread)

Android versi 3.0/3.1 (Honeycomb)

Android versi 4.0 (ICS :Ice Cream Sandwich)

Android versi 4.1 (Jelly Bean)

(46)

27

2.5. METODE ANALISIS SISTEM

2.5.1. Use Case

Use-case diagram merupakan model diagram UML yang digunakan untuk menggambarkan requirement fungsional yang diharapkan dari sebuah sistem. Use-case diagram menekankan pada “siapa” melakukan “apa” dalam

lingkungan sistem perangkat lunak akan dibangun. Use-case diagram sebenarnya terdiri dari dua bagian besar; yang pertama adalah use case diagram (termasuk gambar use case dependencies) dan use case description.

Use-case diagram adalah gambaran graphical dari beberapa atau semua

actor, use-case, dan interaksi diantara komponen-komponen tersebut yang memperkenalkan suatu sistem yang akan dibangun. Use-case diagram menjelaskan manfaat suatu sistem jika dilihat menurut pandangan orang yang berada di luar sistem. Diagram ini menunjukkan fungsionalitas suatu sistem

atau kelas dan bagaimana sistem tersebut berinteraksi dengan dunia luar.

Use-case diagram dapat digunakan selama proses analisis untuk menangkap requirement system dan untuk memahami bagaimana sistem seharusnya bekerja. Selama tahap desain, use-case diagram berperan untuk menetapkan perilaku (behavior) sistem saat diimplementasikan. Dalam sebuah model mungkin terdapat satu atau beberapa use-case diagram. Kebutuhan atau

(47)

28

sistem yang diharapkan (use-case), dan yang mengelilinginya (actor), serta hubungan antara actor dengan use-case (use-case diagram) itu sendiri.

Use case class digunakan untuk memodelkan dan menyatakan unit

fungsi/layanan yang disediakan oleh sistem (or bagian sistem:

subsistem atau class) ke pemakai.

Use case dapat dilingkupi dengan batasan sistem yang diberi label

nama sistem.

Use case adalah sesuatu yang menyediakan hasil yang dapat diukur ke

pemakai atau sistem eksternal.

Komponen Pembentuk Use Case Diagram : 1. Actor

Pada dasarnya actor bukanlah bagian dari use case diagram, namun untuk dapat terciptanya suatu use case diagram diperlukan beberapa

actor. Actor tersebut mempresentasikan seseorang atau sesuatu (seperti perangkat, sistem lain) yang berinteraksi dengan sistem. Sebuah actor

mungkin hanya memberikan informasi inputan pada sistem, hanya

menerima informasi dari sistem atau keduanya menerima, dan memberi

(48)

29

man . Actor dapat digambarkan secara secara umum atau spesifik, dimana untuk membedakannya kita dapat menggunakan relationship.

2. Use Case

Use case adalah gambaran fungsionalitas dari suatu sistem, sehingga

customer atau pengguna sistem paham dan mengerti mengenai kegunaan

sistem yang akan dibangun.

Catatan : Use case diagram adalah penggambaran sistem dari sudut pandang pengguna sistem tersebut (user), sehingga pembuatan use case

lebih dititikberatkan pada fungsionalitas yang ada pada sistem, bukan

berdasarkan alur atau urutan kejadian.Cara menentukan Use Case dalam suatu sistem:

a) Pola perilaku perangkat lunak aplikasi.

b) Deskripsi tugas dari sebuah actor.

c) Sistem atau “benda” yang memberikan sesuatu yang bernilai kepada

actor.

d) Apa yang dikerjakan oleh suatu perangkat lunak (*bukan bagaimana

(49)

30

Relasi dalam Use Case

Ada beberapa relasi yang terdapat pada use case diagram: 1. Association, menghubungkan link antar element.

2. Generalization, disebut juga inheritance (pewarisan), sebuah

elemen dapat merupakan spesialisasi dari elemen lainnya.

3. Dependency, sebuah element bergantung dalam beberapa cara ke

element lainnya.

4. Aggregation, bentuk assosiation dimana sebuah elemen berisi

elemen lainnya.

Tipe relasi/stereotype yang mungkin terjadi pada use casediagram: 1. Include, yaitu kelakuan yang harus terpenuhi agar sebuah event

dapat terjadi, dimana pada kondisi ini sebuah use case adalah

bagian dari use case lainnya.

2. Extends, kelakuan yang hanya berjalan di bawah kondisi tertentu seperti menggerakkan roda.

(50)

31

merupakan pilihan selama asosiasi hanya tipe relationship yang dibolehkan antara actor dan use case.

2.5.2.

Sequence diagram

Sequence diagram (diagram urutan) adalah suatu diagram yang

memperlihatkan atau menampilkan interaksi-interaksi antar objek di dalam

sistem yang disusun pada sebuah urutan atau rangkaian waktu. Interaksi antar

objek tersebut termasuk pengguna, display, dan sebagainya berupa

pesan/message.

Sequence Diagram digunakan untuk menggambarkan skenario atau

rangkaian langkah-langkah yang dilakukan sebagai sebuah respon dari suatu

kejadian/even untuk menghasilkan output tertentu. Sequence Diagram diawali

dari apa yang me-trigger aktivitas tersebut, proses dan perubahan apa saja yang

terjadi secara internal dan output apa yang dihasilkan.

Diagram ini secara khusus berasosiasi dengan use case diagram.

Sequence diagram juga memperlihatkan tahap demi tahap apa yang seharusnya

terjadi untuk menghasilkan sesuatu didalam use case. Sequence diagram juga

dapat merubah atribut atay method pada class yang telah dibentuk oleh class

diagram, bahkan menciptakan sebuah class baru. Sequence diagram

(51)

32

Sequence diagram biasanya digunakan untuk tujuan analisa dan desain,

memfokuskan pada identifikasi method didalam sebuah system. Sequence

diagram biasanya dipakai untuk memodelkan :

 Deskripsi tentang system yang ada pada sebuah / beberapa use

case pada use case diagram, yang menggambarkan hubungan

antara actor dan use case diagram.

 Logika dari method (operation, function atau procedure).

 Logika dari service (high level method).

2.5.3. State Diagram

State diagram digunakan untuk medeskripsikan perilaku sistem. State

diagram mendeskripsikan semua kondisi yang mungkin muncul sebagai sebuah

object begitu pula dengan event.

Elemen state diagram adalah kotak yang merepresentasikan state sebuah

objek dan tanda panah untuk menunjukkan perpindahan ke state yang

selanjutnya. Bagian aktivitas dari simbol state menggambarkan aktivitas object

(52)

33

Simbol berikutnya adalah initial state yang menunjukkan kapan object ini berjalan.

2.5.4. Class Diagram

Class Diagram adalah suatu diagram yang memperlihatkan atau

menampilkan struktur darisebuah sistem, sistem tersebut akan menampilkan

system kelas, atribut dan hubungan antara kelas ketika suatu sistem telah selesai

membuat diagram. Objek diagram adalah suatu diagram yang berfungsi untuk

mengatur atribut,objek dan hubungan antara contoh dalam diagram,ojek diagram

juga dapat menampilkan struktur model system dalam waktu tertentu.

Class diagram digunakan untuk menampilkan kelas-kelas dan paket-paket

(53)

34

relasi antar mereka. Biasanya, dibuat beberapa class diagram untuk system

tunggal. Beberapa diagram akan menampilkan subset dari kelas-kelas dan

relasinya. Dapat dibuat beberapa diagram sesuai dengan yang diinginkan untuk

mendapatkan gambaran lengkap terhadap system yang dibangun.

2.5.5. SQLite

SQLite itu merupakan sebuah Database yang bersifat ACID-compliant

dan memiliki ukuran pustaka kode yang relatif kecil, ditulis dalam bahasa C.

SQLite merupakan proyek yang bersifat public domain yang dikerjakan oleh D.

Richard Hipp. SQLite memiliki fitur relasional database, hampir sama dengan

SQL pada desktop hanya saja SQLite membutuhkan memori yang sedikit. PHP,

Firefox, Chrome, iPhone dan Android adalah contoh produk yang menggunakan

SQlite. Di browser firefox, Sqlite dipakai untuk menyimpan konfigurasi,

bookmark dan history website sedangkan di smartphone android, SQLite dipakai

untuk menyimpan contact. SQLite mendukung tipe data TEXT (mirip dengan

String di Java), INTEGER (mirip dengan Long di Java) dan nyata (mirip dengan

Double di Java). Semua jenis lain harus dikonversi ke dalam salah satu bidang

tersebut sebelum mendapatkan disimpan dalam database. SQLite sendiri tidak

memvalidasi jika jenis ditulis ke kolom yang benar-benar dari jenis yang

ditetapkan, misalnya Anda dapat menulis sebuah integer ke dalam kolom String

(54)

35

BAB III

ANALISIS PERANCANGAN SISTEM

3.1 GAMBARAN UMUM SISTEM

Aplikasi yang akan dibuat merupakan sebuah aplikasi untuk

meng-enkripsi pesan yang akan dikirim dan mendekripsi pesan yang diterima. Jadi

kedua user, si pengirim dan penerima pesan harus sama-sama menggunakan

handphone android, dan sama-sama sudah menginstal aplikasi ini. Ketika user

akan mengirim pesan, lalu yang dikirimkan adalah sebuah enkripsi dari pesan

yang akan dikirimkan ke penerima. Proses enkripsi pesan ini dilakukan dua kali,

yaitu yang pertama mengenkripsi pesan dengan kunci no telp tujuan atau no telp

si penerima pesan. Lalu yang kedua, mengenkripsi lagi pesan yang sudah

dienkripsi tadi dengan kunci sesuai dengan kunci yang sudah diinputkan si

pengirim. Jadi proses enkripsi yang pertama tadi yang mengunakan kunci no

tujuan itu akan secara otomatis dilakukan program. Sehingga si pengirim pesan

tadi hanya menginputkan isi pesan dan kunci yang dipakai untuk mengenkripsi

pesan, lalu menekan tombol kirim, dan pesan akan secara otomatis terenkripsi

2X, yaitu kunci yang pertama menggunakan no tujuan pesan, dan yang kedua

menggunakan kunci yang sudah diinputkan si pengirim tadi. Dan pesan yang

sudah dienkripsi tersebut disebut chipertext, jadi penerima sms mendapatkan

(55)

36

membaca isi sms yang diterima dari pengirim. Proses dekripsi membutuhkan

sebuah kunci agar chipertext dapat dibaca dengan jelas oleh penerima. Dan kunci

untuk mendekripsi chipertext harus sama dengan kunci yang digunakan saat

menenkripsi pesan. Proses pendekripsian juga dilakukan 2X agar pesan asli dapat

dibaca. Proses dekripsi yang pertama menggunakan kunci yang sama dengan

kunci yang diinputkan si pengirim pesan. Lalu pesan didekripsi lagi

menggunakan no si penerima pesan sehingga didapatkan pesan asli yang dikirim

oleh pengirim. Proses pendekripsian yang kedua ini, yang menggunakan kunci

no telp penerima ini dijalankan secara otomatis oleh program. Jadi, si penerima

pesan hanya butuh menginputkan kunci yang sama dengan yang diinputkan si

pengirim saja untuk mendekripsi pesan.

Cara Mendestribusikan Kunci

Pada aplikasi enkripsi dan dekripsi sms ini harus menggunakan kunci

yang sama dalam proses enkripsi dan dekripsi sms. Metode yang digunakan pada

aplikasi ini juga merupakan jenis kriptografi simetris yaitu Playfair Cipher. Jadi jika akan menggunakan aplikasi ini maka kedua belah pihak/pengguna harus

bertemu secara langsung untuk menyepakati kunci yang akan digunakan. Dan

kesepakatan kunci yang akan digunakan untuk menjalankan aplikasi ini tadi tidak

boleh ada pihak lain yang mengetahui kunci tersebut. Sehingga proses sms dapat

(56)

37

Adapun saran dari penulis yang dapat digunakan jika kedua belah

pihak/pengguna tidak bertemu secara langsung untuk menyepakati kunci yang

akan digunakan dalam menjalankan aplikasi ini. Cara-cara yang bisa digunakan

jika kedua belah pihat tidak bertemu secara langsung :

1. Melalui kurir/pihak ketiga yang terpercaya. Cara ini mungkin beresiko

akan disadapnya kunci oleh pihak lain melalui pihak ketiga ini, oleh

sebab itu harus lebih jeli dalam memilih kurir/pihak ketiga agar kunci

yang dititipkan tersebut dapat secara aman sampai ke pengguna.

2. Mengirim kunci tersebut lewat email atau melalui media sosial, misal

pesan message facebook, twitter, dll. Cara ini mungkin beresiko akan

disadapnya kunci tersebut, jadi ketentuanya adalah bagaimana kita sendiri

mengamankan password dari email dan media sosial yang kita punya.

Cara ini juga membutuhkan koneksi internet untuk mengakses email, atau

(57)

38

Tabel 3.1 Use Case Narative Pengiriman Pesan

Aktor Reaksi Sistem

1. User membuka aplikasi

enkripsi dan dekripsi sms pada

handphone android

2. Sistem menampilkan tampilan

awal/ utama dimana terdapat

fungsi yang berbeda-beda pada

setiap menunya.

3. User memilih menu untuk

(58)

39

mengirim pesan yaitu menu

tulis pesan.

4. Sistem menampilkan form

nomor tujuan pesan, form

kunci enkripsi, dan form isi

pesan yang masih kosong

5. User memasukan nomor tujuan, kunci enkripsi pesan

dan isi pesan yang akan

dikirim.

6. User menekan tombol kirim.

7. Sistem melakukan enkripsi

pesan yang akan dikirim, dan

sistem mengirim pesan ke

nomor tujuan dalam bentuk

ciphertext.

8. Sistem akan menampilkan

laporan keberhasilan atau

kegagalan sistem dalam

(59)

40

Tabel 3.2 Use Case Narative Penerimaan Pesan

Aktor Reaksi Sistem

1. Sistem menampilkan peringatan

pesan masuk.

2. User memilih menu pesan

masuk

3. Sistem menampilkan daftar

pesan masuk berdasarkan

nomor pengirim.

4. User memilih salah satu dari

pesan masuk yang ada.

5. Sistem menampilkan pesan

masuk berupa ciphertext, form

kata kunci dekripsi, tombol

balas pesan, tombol dekripsi,

(60)

41

Tabel 3.3 Use Case Narative Hapus Pesan

Aktor Reaksi Sistem

1. User membuka aplikasi enkripsi dan dekripsi sms pada

handphone android.

2. Sistem menampilkan tampilan

awal/ utama dimana terdapat

fungsi yang berbeda-beda

pada setiap menunya.

3. User memilih pesan yang akan dihapus :

a. Jika user akan menghapus

pesan terkirim maka user

memilih menu pesan

terkirim.

b. Jika user akan menghapus

pesan masuk maka user

memilih menu pesan

masuk.

4. a. Sistem menampilkan daftar

(61)

42

nomor tujuan.

b. Sistem menampilkan daftar

pesan masuk berdasarkan

nomor pengirim.

5. a. User memilih salah satu

pesan terkirim lalu

menghapusnya.

b. User memilih salah satu

pesan masuk lalu

menghapusnya.

6. a. Sistem akan menghapus pesan

terkirim yang dihapus.

b. Sistem akan menghapus

pesan masuk yang dihapus.

(62)

43

Tabel 3.4 Use Case Narative Dekripsi Pesan

Aktor Reaksi Sistem

1. User memilih menu pesan masuk

2. Sistem menampilkan daftar

pesan masuk berdasarkan

nomor pengirim.

3. User memilih salah satu dari

pesan masuk yang akan

didekripsi.

4. Sistem menampilkan pesan

masuk berupa ciphertext, form

kata kunci dekripsi, tombol

balas pesan, tombol dekripsi,

dan tombol hapus pesan

5. User memasukan kunci dekripsi

dan menekan tombol dekripsi.

6. Sistem mengenkripsi

ciphertext sesuai kunci yang

(63)

44

7. Sistem menampilkan pesan

yang sudah terdekripsi.

Tabel 3.5 Use Case Narative Mengatur No Telpon Pribadi

Aktor Reaksi Sistem

1. User membuka aplikasi enkripsi dan dekripsi sms pada

handphone android.

2. Sistem menampilkan tampilan

awal/ utama dimana terdapat

fungsi yang berbeda-beda

pada setiap menunya.

3. User memilih menu pengaturan

4. Sistem menampilkan form

nomor telpon.

5. User memasukan no telpon

yang digunakan, dan menekan

tombol simpan.

6. Sistem menyimpan nomor

(64)

45

3.2.3 State Diagram

State Diagram Antarmuka

(65)

46

State Diagram Pesan

Gambar 3.3 State Diagram Pesan

(66)

47

Sequence Diagram Terima dan Dekripsi Pesan Diterima

OnClick ( )

+ void onCreate (Bundle savedInstanceState) + void onClick( )

+ boolean onCreateOptionMenu ( ) + void onBackPressed( )

+ boolean isCheck ( )

User BukaSMS

Activity

(67)

48

- txtNoHp : AutoCompleteTextView - mContext : Context

- intent : Intent - stringNoHp : String - stringIsiPesan : String

+ void onCreate (Bundle savedInstanceState) + void onItemClick (Adapter View)

+ void onClik ( )

+ boolean onCreateOptionMenu ( )

+ boolean onCreateOptionItemSelected ( ) + boolean cokField ( ) - dekripsiKeyUser : String - dekripsiKeyNumber : String - id : Long

+ void onCreate (Bundle savedInstanceState) + boolean onCreateOptionMenu ( )

+ boolean onCreateOptionItemSelected ( ) + void onClik ( )

(68)

49

ListSMSInbox

- mContext : Context - listViewSMS : ListView - adapter : SMSAdapter

- terimaSMS : BroadcastReceiver - filter : IntentFilter

- intent : Intent - id : Long

+ void onCreate (Bundle savedInstanceState) + void onDestroy

+ boolean onCreateOptionMenu ( )

+ boolean onCreateOptionItemSelected ( ) + void onItemClick ( )

SettingKeyActivity - textKey : EditText - btnSimpan: EditText

+ void onCreate (Bundle savedInstanceState) + void onClik ( )

Inbox

- terimaSMS : BroadcastReceiver - filter : IntentFilter

- list : ListView

+ void onCreate (Bundle savedInstanceState) + void DeleteItem ( )

Outbox

- list : ListView

+ void onCreate (Bundle savedInstanceState) + void DeleteItem ( )

(69)

50

HelbActivity

+ void onCreate (Bundle savedInstanceState) + void onClickHelb ( )

+ void startInfoactivity( ) +void toast ( String, Boolean)

TopicActivity

- mTextResource : Int

+ void onCreate (Bundle savedInstanceState)

SMSReceiver

+ void onReceive (Context, Intent)

Playfair

+ encrypt ( ) + decrypt ( )

(70)

51

Enkripsi Dekripsi

Gambar 3.7 Relasi Diagram class MenuActivity

KirimSMSactivity BukaSMSActivity

Playfair

ListMenuInbox Outbox

SettingKeyActivity TopicActivity

HelbActivity

(71)
(72)

53

tb_sms (Tabel SMS)

No Field Tipe Keterangan

1 id int Field untuk memasukan id dari

setiap sms yang disimpan dan ini

menjadi Primary Key

2 nomer text Field ini untuk memasukan nomer

yang digunakan untuk SMS

3 pesan text Field ini untuk memasukan pesan

yang dikirim dan disimpan

Tabel 3.6 Tabel SMS

tb_inbox (Tabel Pesan Masuk)

No Field Tipe Keterangan

1 id int Field untuk memasukan id dari

setiap pesan masuk yang disimpan

dan ini menjadi Primary Key

2 nomer text Field untuk memasukan nomer

pengirim dan dismpan

3 pesan text Field untuk memasukan dan

menyimpan pesan yang masuk

4 tanggal date Field untuk memasukan tanggal

(73)

54

Tabel 3.7 Tabel Pesan Masuk

tb_outbox (Tabel Pesan Terkirim)

No Field Tipe Keterangan

1 id int Field untuk memasukan id dari

setiap pesan terkirim yang disimpan

dan ini menjadi Primary Key

2 nomer text Field untuk memasukan nomer

tujuan dan disimpan

3 pesan text Field untuk memasukan dan

menyimpan pesan yang terkirim

4 tanggal date Field untuk memasukan tanggal

pesan terkirim

Tabel 3.8 Tabel Pesan Terkirim

tb_key (Tabel Kunci)

No Field Tipe Keterangan

1 id int Field untuk memasukan id dari kunci

no tujuan, id menjadi Primary Key

2 nomer text Field untuk memasukan kunci no

tujuan

(74)
(75)

56

3.3 RANCANGAN ANTARMUKA

1. Halaman Pembuka awal

Halaman pembuka awal tampil pertama kali pada saat aplikasi ini

dibuka. Pada halaman pembuka awal ini berisi judul aplikasi yang

dibuat serta logo sms.

Gambar 3.9 Halaman Pembuka Awal

2. Halaman Menu Awal

Halaman menu awal pesan ini merupakan halaman yang tampil setelah

(76)

57

pada aplikasi, yaitu menu tulis pesan, pesan masuk, pesan terkirim,

pengaturan, dan tentang.

Gambar 3.10 Halaman Menu Awal Pesan

3. Halaman Menu Tulis Pesan / Pesan Baru

Halaman Tulis Pesan ini merupakan halaman yang tampil setelah

memilih menu tulis pesan. Dihalaman ini terdapat form kepada yang

harus diisi dengan nomor tujuan pesan dan juga terdapat form kunci

yang harus diisi dengan kunci yang digunakan untuk mengenkripsi

pesan. Setelah mengisikan form kepada dan form kunci lalu terdapat

(77)

58

halaman tulis pesan berfungsi untuk mengenkripsi pesan lalu mengirim

pesan ke SMS center

Gambar 3.11 Halaman Tulis Pesan

4. Halaman Menu Pesan Masuk

Halaman pesan masuk ini merupakan halaman yang tampil setelah

memilih menu pesan masuk. Di dalam halaman ini terdapat daftar

pesan masuk yang terbagi berdasarkan nomor pengirim pesan. Dan

urutan daftar pesan ini tersortir berdasarkan waktu pesan diterima.

Untuk membuka pesan dan mendekripsi pesan user harus memilih

(78)

59

Gambar 3.12 Halaman Pesan Masuk

Setelah memilih salah satu pesan yang akan di dekrip dari daftar pesan

masuk, maka akan muncul halaman dekripsi pesan. Pada halaman ini

terdapat identitas nomor dari pengirim, form kunci, dan form isi pesan

yang sudah terisi ciphertext. Di halaman ini juga terdapat tombol balas,

dekripsi, dan hapus. Tombol balas digunakan untuk membalas pesan

kepada si pengirim, dan jika tombol balas ini ditekan maka akan

masuk ke halaman tulis pesan. Tombol dekripsi dugunakan untuk

mendekripsi pesan ciphertext menjadi pesan asli. Setelah user

(79)

60

maka pada form isi pesan masuk akan menampilkan pesan asli.

Tombol hapus digunakan untuk menghapus pesan masuk.

Gambar 3.13 Halaman Dekripsi Pesan

5. Halaman Menu Pengaturan Nomor Pribadi

Halaman pengaturan nomor pribadi ini tampil ketika menekan menu

pengaturan yang terdapat pada halaman menu awal pesan. Pada

(80)

61

Gambar 3.14 Halaman Pengaturan Nomor Pribadi

6. Halaman Menu Pesan Keluar

Halaman pesan keluar ini merupakan halaman yang tampil setelah

memilih menu pesan keluar. Di dalam halaman ini terdapat daftar

pesan keluar yang terbagi berdasarkan nomor pengirim pesan. Dan

urutan daftar pesan ini tersortir berdasarkan waktu pesan dikirim.

Gambar

Gambar 4.7   Halaman Pesan Terkirim .................................................................
gambar dibawah :
Gambar 2.1 Cara kerja Key Distribution Center
Tabel 1. Kunci Rahasia
+7

Referensi

Dokumen terkait

Air terserap ke dalam poliester yang rendah ini mungkin berhubungan dengan struktur dari poliester yang lebih rapat setelah terjadi cross-link , dimana seperti

Jenis studi evaluasi yang digunakan adalah evaluasi deskriftif yaitu menilai dan menganalisa data dengan cara menggambarkan atau mendeskripsikan data yang telah ada dan

Penelitian ini bertujuan untuk merancang sistem pakar yang dapat mendeteksi gangguan-gangguan yang terjadi pada masa kehamilan, membantru calon ibu dalam mengetahui gangguan

Pada halaman tambah penyakit ini akan terdapat sebuah form untuk menambahkan data penyakit ke database, yang terdiri dari field kode penyakit, nama penyakit,

Manajemen pencegahan dan teknologi dekontaminasi untuk mengurangi efek mikotoksin juga perlu dikembangkan, dengan cara fisik (pencucian, pemanasaan, radiasi

Seleksi Jalur Mandiri Alih Jenjang adalah jalur seleksi bagi calon mahasiswa baru yang dilakukan berdasarkan seleksi terhadap kompetensi profesi sesuai jenjangnya

Dengan ini saya menyatakan bahwa tugas akhir saya yang berjudul ―PENGARUH PENGGUNAAN MATRIKS NA-MONTMORILLONIT TERPILAR KITOSAN BERAT MOLEKUL MEDIUM TERHADAP SIFAT FISIS

Pada prakteknya suatu wanprestasi baru terjadi jika salah satu pihak dinyatakan telah lalai untuk memenuhi prestasinya dan akibat dari kelalaiannya tersebut