Anda di halaman 1dari 46

BAB I

PENDAHULUAN

1. Latar Belakang
Seiring dengan berkembangnya teknologi informasi, kebutuhan manusia akan
teknologi komunikasi juga meningkat, salah satu teknologi alat komunikasi adalah
telepon genggam atau lebih di kenal dengan HP ( handphone). Pada era sekarang HP
bukan lagi menjadi barang mewah melainkan sudah menjadi kebutuhan utama bagi
orang yang membutuhkan informasi dan komunikasi di seluruh penjuru dunia.
Komunikasi merupakan suatu proses dimana seseorang atau beberapa orang,
kelompok, organisasi, dan masyarakat menciptakan, dan menggunakan informasi
agar terhubung dengan lingkungan dan orang lain. Ada informasi yang dapat disebar
luaskan ke masyarakat umum namun ada informasi yang harus dirahasiakan agar
tidak terjadi penyalahgunaan. Informasi yang disampaikan dapat berupa tulisan, jika
tulisan atau pesan disampaikan secara langsung dari pengirim kepada penerima pada
saat itu juga dan tanpa melalui perantara apapun, maka hal tersebut dapat menjamin
keamanan, keutuhan, dan keaslian pesan. Namun jika pesan harus dikirim melalui
perantara dan memerlukan waktu dalam proses pengirimannya, maka ada
kemungkinan bahwa pesan akan mengalami penyadapan sehingga pesan rahasia
diketahui pihak yang tidak seharusnya atau kemungkinan pesan mengalami
perubahan sebelum sampai ke tujuan sebenarnya.
Berbagai macam layanan komunikasi tersedia saat ini, seperti SMS ( Short
Message Service) yang kita kenal dengan pesan singkat. SMS merupakan layanan
komunikasi yang sangat umum digunakan masyarakat, yang berfungsi untuk
mengirim atau menerima pesan-pesan pendek. Namun dengan layanan SMS yang
ada, timbul pertanyaan mengenai keamanan informasi jika seseorang ingin
mengirimkan suatu informasi rahasia melalui layanan SMS.
PizzaExpress sebagai salah satu perusahaan yang bergerak pada bisnis food and
beverage. PizzaExpress memiliki sistem yang sangat baik dalam hal struktur
organisasi, pelayanan serta pemesanan yang sudah terkomputerisasi. Namun masih
memiliki kekurangan dalam hal pengamanan data sales harian ataupun bulanan,
sehingga data sales yang dikirim sangat rawan sekali untuk disalahgunakan oleh pihak
yang tidak berhak mengetahui informasi tersebut.
PizzaExpress kesehariannya melakukan transaksi data sales melalui e-mail,
apabila internet sedang tidak terkoneksi person incharge melakukan transaksi data
sales dengan mengirimkannya melalui SMS tanpa adanya pengamanan apapun,
sehingga menyebabkan rawannya pencurian informasi yang dapat merugikan
perusahaan.
Berdasarkan hal tersebut, maka diperlukan sebuah aplikasi yang dapat menjaga
keamanan pesan tersebut agar tetap rahasia. Terdapat beberapa teknik untuk
mengamankan data yaitu dengan teknik kriptografi dan steganografi yang dapat
diimplementasikan dalam sebuah aplikasi untuk menyamarkan pesan. Kedua teknik
tersebut sama – sama memiliki fungsi untuk mengamankan suatu pesan, akan tetapi
memiliki konsep yang berbeda. Kriptografi menyamarkan arti suatu pesan tanpa
menyembunyikan keberadaannya dan membuat siapapun menyadari bahwa ada
sesuatu yang mencurigakan dari pesan tersebut. Sedangkan steganografi merupakan
teknik menyembunyikan data didalam wadah media digital, sehingga selain penerima
yang dimaksud tidak ada lagi yang dapat mengetahui ataupun menyadari bahwa ada
suatu pesan yang tersimpan.
Berkaitan dengan hal tersebut penulis melakukan implementasi terhadap
pengamanan pesan SMS dengan teknik kriptografi yang menggunakan metode
algoritma Vigenere Cipher dan Caesar Cipher.

1
2

2. Rumusan Masalah
Berdasarkan latar belakang yang telah diuraikan diatas, maka dirumuskan inti
permasalahannya adalah sebagai berikut :
a. Bagaimana cara mengamankan pesan informasi berupa teks yang dikirimkan
melalui SMS dari pihak yang tidak bertanggung jawab.
b. Bagaimana cara bertukar informasi antar pengguna aplikasi secara aman dan
rahasia.

3. Tujuan Penulisan
Berdasarkan latar belakang dan masalah yang telah dijabarkan diatas, maka
tujuan adalah sebagai berikut :
a. Untuk mengimplementasikan algoritma kriptografi Vigenere Cipher dan Caesar
Cipher.
b. Untuk membuat aplikasi sistem keamanan SMS dengan algoritma kriptografi
Vigenere Cipher dan Caesar pada ponsel berbasis Android.
c. Untuk memberikan solusi tentang keamanan dan keaslian pesan informasi berupa
teks yang akan dikirim dan diterima.

4. Batasan Masalah
Dalam memusatkan masalah yang ada dan agar tidak menyimpang dari pokok
pembahasan, sehingga dalam menyelesaikan masalah tugas akhir ini akan dibatasi
pada beberapa hal berikut ini :
a. Metode algoritma kriptografi yang digunakan adalah Vigenere Cipher dan Caesar
Cipher.
b. Data yang akan dienkripsi dan dekripsi adalah teks berbentuk SMS.
c. Bahasa pemrograman yang digunakan adalah Java.
d. Kunci yang digunakan harus sepanjang 6 karkater.
e. Karakter kunci yang dipakai hanya bisa dari decimal 32 – 127 pada tabel ascii.
f. Pesan plaintext hanya bisa sepanjang 154 karakter, karena akan ada proses
penggabungan 6 karakter kunci dengan pesan plaintext.
g. Aplikasi hanya bisa mengirim panjang pesan dengan total 160 karakter.
h. Aplikasi hanya bisa mengirim pesan terenkripsi.

5. Metodologi
Metode Pengembangan Perangkat Lunak yang digunakan adalah Model Waterfall,
Waterfall model mengambil kegiatan proses dasar spesifikasi, pengembangan, validasi
dan evolusi dan mewakili kegiatan tersebut sebagai fase proses terpisah seperti
spesifikasi persyaratan, perancangan perangkat lunak, implementasi, pengujian dan
sebagainya.
a. Metode Penelitian
1) Studi Literatur
Penulisan ini dimulai dengan studi kepustakaan yaitu mengumpulkan data
dengan mencari dan membaca buku-buku, jurnal, artikel, makalah, dan
beberapa situs internet yang dapat membantu dalam menunjang penyusunan
tugas akhir.

b. Metode Pengembangan
Metode atau pendekatan umum yang digunakan dalam pengembangan
aplikasi pada laporan ini adalah Waterfall, dengan tahapan sebagai berikut :
1) Analisa Masalah
3

Setelah data – data dikumpulkan, maka selanjutnya akan dilakukan analisa


terhadap masalah dan analisis kebutuhan sistem, yang nantinya akan dilakukan
pengambilan keputusan terhadap masalah yang akan dikaji.

2) Desain
Pada tahap ini bertujuan untuk menentukan spesifikasi detil dari
komponen-komponen program (manusia, perangkat lunak, perangkat keras,
jaringan dan data) dan membuat rancangan tampilan berupa input dan output.
3) Implementasi
Pada tahap ini sistem sudah dikembangkan menjadi suatu perangkat lunak
yang siap dipakai, kemudian dilakukan proses pengujian. Perangkat lunak yang
telah diuji dan diterima pengguna siap untuk digunakan.
4) Perawatan
Perangkat lunak yang telah dioperasikan akan dilakukan proses perawatan
yaitu berupa monitoring, evaluasi dan perubahan bila diperlukan agar sesuai
dengan yang diharapkan.

6. Sistematika Penulisan
Seluruh tahapan sistem ini dibagi menjadi beberapa bab, yaitu Bab 1 – Bab 5,
agar laporan tugas akhir ini menjadi terarah dan mudah dipahami. Sistematika
penulisan dari laporan ini adalah sebagai berikut :

BAB I PENDAHULUAN
Bab ini merupakan bab yang sangat penting, karena berisi mengenai
latar belakang masalah, perumusan masalah, batasan masalah, maksud
dan tujuan, metode pengembangan / metodologi, dan sistematika
penulisan dari laporan ini.

BAB II LANDASAN TEORI


Bab ini membahas tentang algoritma dan metode yang dibahas,
serta teori lain yang terkait dengan topik bahasan. Pada bab ini juga
dicantumkan beberapa referensi ilmiah yang relevan dan terjamin
validitasnya.

BAB III ANALISIS MASALAH DAN PERANCANGAN PROGRAM


Bab ini membahas tentang analisis terkait permasalahan dan solusi
yang dibahas dalam laporan ini yang mencakup beberapa hal mulai dari
analisa masalah dan solusinya, dan perancangan program seperti
rancangan basis data, rancangan menu, rancangan layar, algoritma, dan
flowchart.

BAB IV IMPLEMENTASI DAN UJI COBA PROGRAM


Bab ini membahas tentang implementasi dan uji coba program yang
mencakup beberapa hal mulai dari lingkungan percobaan, data masukan,
langkah pengujian, dan evaluasi program tentang kelebihan dan
kekurangan program.

BAB V PENUTUP
Bab ini merupakan bab terakhir pada penulisan ini yang berisi
mengenai kesimpulan yang diambil dari pembahasan topik tugas akhir
dan berisi pula saran yang bertujuan untuk membangun dan
meningkatkan kualitas topik tugas akhir dimasa mendatang.
4
BAB II

LANDASAN TEORI

1. Kriptografi
a. Pengertian Kriptografi
Secara etimologi kata kriptografi (Cryptography) berasal dari bahasa Yunani,
yaitu kryptos yang artinya yang tersembunyi dan graphein yang artinya tulisan
(Prayudi, 2005). Awal mula kriptografi dipahami sebagai ilmu tentang
menyembunyikan pesan (Sadikin, 2012), tetapi seiring perkembangan zaman
hingga saat ini pengertian kriptografi berkembang menjadi ilmu tentang teknik
matematis yang digunakan untuk menyelesaikan persoalan keamanan berupa
privasi dan otentikasi (Diffie, 1976).
Dalam kriptografi akan dijumpai beberapa istilah-istilah penting antara lain
adalah plaintext, ciphertext, enkripsi, dekripsi, cryptanalysis, dan cryptology.
Plaintext adalah data yang dapat dibaca, sedangkan teknik untuk menjadikan data
tidak dapat dibaca disebut enkripsi. Data yang telah dienkripsi disebut ciphertext,
dan teknik untuk mengembalikan ciphertext menjadi plaintext disebut dekripsi
(Prayudi, 2005).
Cipher merupakan algoritma kriptografi, yakni fungsi matematika yang
berperan dalam enkripsi dan dekripsi data (Rizal, 2011). Pelaku yang ahli dalam
bidang kriptografi disebut cryptographer.
Cryptanalysis adalah ilmu untuk memecahkan ciphertext menjadi plaintext
dengan tidak melalui cara yang semestinya, sedangkan orang yang menguasai
ilmu ini disebut Cryptanalyst. Cabang matematika yang meliputi kriptografi dan
cryptanalysis disebut Cryptology, sedangkan orang yang menguasai ilmu ini
disebut cryptologist.

Gambar 2.1 : Proses Enkripsi dan Dekripsi


(www.kajianpustaka.com, 2014)

b. Sejarah Kriptografi
Sejarah penulisan rahasia tertua dapat ditemukan pada peradaban Mesir
kuno, yakni tahun 3000 SM. Bangsa Mesir menggunakan ukiran rahasia yang
disebut dengan hieroglyphics untuk menyampaikan pesan kepada orang-orang
yang berhak.
Awal tahun 400 SM bangsa Spartan di Yunani memanfaatkan kriptografi di
bidang militer dengan menggunakan alat yang disebut scytale, yakni pita panjang
berbahan daun papyrus yang dibaca dengan cara digulungkan ke sebatang
silinder. Mula – mula pengirim menuliskan pesannya diatas pita papyrus yang
digulung pada sebatang silinder, setelah itu pita dilepaskan dan dikirimkan. Batang
silinder yang cukup tebal dapat dituliskan 6 huruf dan bisa memuat 3 huruf secara
melingkar. Sedangkan peradaban Cina dan Jepang menemukan kriptografi pada
abad 15 M dan Kriptografi telah digunakan oleh Julius Caesar sejak zaman Romawi
Kuno. Teknik ini dijuluki caesar cipher untuk mengirim pesan secara rahasia.

5
6

Gambar 2.2 : Scytale (www.kajianpustaka.com, 2014)

Peradaban Islam juga menemukan kriptografi karena penguasaannya


terhadap matematika, statistik, dan linguistik. Bahkan teknik kriptanalisis
dipaparkan untuk pertama kalinya pada abad 9 M oleh seorang ilmuwan bernama
Abu Yusuf Ya’qub ibn ‘Ishaq as-Shabbah al Kindi atau dikenal dengan Al-Kindi yang
menulis kitab tentang seni memecahkan kode. Kitabnya berjudul Risalah fi
Istikhraj al-Mu’amma (Manuskrip untuk memecahkan pesan-pesan Kriptografi).
Terinspirasi dari perulangan huruf dalam Al-Qur’an, Al-Kindi menemukan teknik
analisis frekuensi, yakni teknik untuk memecahkan ciphertext berdasarkan
frekuensi kemunculan karakter pada sebuah pesan (Wirdasari, 2008).

Gambar 2.3 : Risalah fi Istikhraj al-Mu’amma


(www.kajianpustaka.com, 2014)

c. Tujuan Kriptografi
Ada empat tujuan mendasar dari ilmu kriptografi ini yang juga merupakan
aspek keamanan informasi yaitu :
1) Kerahasiaan, adalah layanan yang digunakan untuk menjaga isi dari informasi
dari siapapun kecuali yang memiliki otoritas atau kunci rahasia untuk
membuka/mengupas informasi yang telah disandi.
2) Integritas data, adalah berhubungan dengan penjagaan dari perubahan data
secara tidak sah. Untuk menjaga integritas data, sistem harus memiliki
kemampuan untuk mendeteksi manipulasi data oleh pihak-pihak yang tidak
7

berhak, antara lain penyisipan, penghapusan, dan pensubsitusian data lain


kedalam data yang sebenarnya.
3) Autentikasi, adalah berhubungan dengan identifikasi/pengenalan, baik secara
kesatuan sistem maupun informasi itu sendiri. Dua pihak yang saling
berkomunikasi harus saling memperkenalkan diri. Informasi yang dikirimkan
melalui kanal harus diautentikasi keaslian, isi datanya, waktu pengiriman, dan
lain-lain.
4) Non-repudiasi, adalah usaha untuk mencegah terjadinya penyangkalan
terhadap pengiriman/terciptanya suatu informasi oleh yang
mengirimkan/membuat.

d. Jenis Kriptografi Berdasarkan Perkembangan


Algoritma kriptografi dapat diklasifikasikan menjadi menjadi dua jenis
berdasarkan perkembangannya, yaitu kriptografi klasik dan kriptografi modern.
1) Algoritma Kriptografi Klasik
Algoritma ini digunakan sejak sebelum era komputerisasi dan kebanyakan
menggunakan teknik kunci simetris. Metode menyembunyikan pesannya adalah
dengan teknik subtitusi atau transposisi atau keduanya (Sadikin, 2012). Teknik
subtitusi adalah menggantikan karakter dalam plaintext menjadi karakter lain
yang hasilnya adalah ciphertext. Sedangkan transposisi adalah teknik
mengubah plaintext menjadi ciphertext dengan cara permutasi karakter.
Kombinasi keduanya secara kompleks adalah yang melatarbelakangi
terbentuknya berbagai macam algoritma kriptografi modern (Prayudi, 2005).
2) Algoritma Kriptografi Modern
Algoritma ini memiliki tingkat kesulitan yang kompleks (Prayudi, 2005),
dan kekuatan kriptografinya ada pada key atau kuncinya (Wirdasari, 2008).
Algoritma ini menggunakan pengolahan simbol biner karena berjalan
mengikuti operasi komputer digital. Sehingga membutuhkan dasar berupa
pengetahuan terhadap matematika untuk menguasainya (Sadikin, 2012).
e. Jenis Kriptografi Berdasarkan Kunci
Algoritma kriptografi dapat diklasifikasikan menjadi dua jenis berdasarkan
kuncinya, yaitu algoritma simetris dan algoritma asimetris (Prayudi, 2005).
1) Algoritma Simetris
Algoritma ini disebut simetris karena memiliki key atau kunci yang sama
dalam proses enkripsi dan dekripsi sehingga algoritma ini juga sering disebut
algoritma kunci tunggal atau algoritma satu kunci. Key dalam algoritma ini
bersifat rahasia atau private key sehingga algoritma ini juga disebut dengan
algoritma kunci rahasia (Prayudi, 2005). Algoritma yang memakai kunci simetri
di antaranya adalah :
a) Data Encryption Standard (DES),
b) RC2, RC4, RC5, RC6,
c) International Data Encryption Algorithm (IDEA),
d) Advanced Encryption Standard (AES),
e) On Time Pad (OTP),
f) A5, dan lain sebagainya.
2) Algoritma Asimetris
Algoritma ini disebut asimetris karena kunci yang digunakan untuk enkripsi
berbeda dengan kunci yang digunakan untuk dekripsi. Kunci yang digunakan
untuk enkripsi adalah kunci publik atau public key sehingga algoritma ini juga
disebut dengan algoritma kunci publik. Sedangkan kunci untuk dekripsi
menggunakan kunci rahasia atau private key (Prayudi, 2005). Algoritma yang
memakai kunci publik di antaranya adalah :
a) Digital Signature Algorithm (DSA),
8

b) RSA,
c) Diffle-Hellman (DH),
d) Elliptic Curve Cryptography (ECC),
e) Kriptografi Quantum, dan lain sebagainya.

2. Vigenere Cipher
a. Pengertian Vigenere Cipher
Vigenere Cipher adalah suatu algoritma kriptografi klasik yang ditemukan oleh
Giovan Battista Bellaso. Beliau menuliskan metodenya tersebut pada bukunya yang
berjudul La Cifra del. Sig. Giovan Battista Bellaso pada tahun 1553. Nama vigenere
sendiri diambil dari seorang yang bernama Blaise de Vigenere. Nama vigenere
diambil sebagai nama algoritma ini karena beliau menemukan kunci yang lebih
kuat lagi untuk algoritma ini dengan metode autokey cipher meskipun algoritma
dasarnya telah ditemukan lebih dahulu oleh Giovan Battista Bellaso. Algoritma ini
menjadi terkenal karena cukup sulit dipecahkan. Matematikawan Charles Lutwidge
Dodgson menyatakan bahwa algoritma ini tidak terpecahkan. Pada tahun 1917,
ilmuwan Amerika menyebutkan bahwa Vigenere cipher adalah sesuatu yang tidak
mungkin untuk ditranslasikan. Namun hal ini terbantahkan sejak Kasiski berhasil
memecahkan algoritma pada abad ke-19. Pada dasarnya Vigenere cipher serupa
dengan Caesar cipher, perbedaannya adalah pada Vigenere cipher setiap huruf
pesan aslinya digeser sebanyak satu huruf pada kuncinya sedangkan pada Caesar
cipher setiap huruf pesannya digeser sebanyak 1 huruf yang sama. Algoritma
Vigenere cipher ini menggunakan bujur sangkar Vigenere untuk melakukan
enkripsi. Setiap baris di dalam bujur sangkar menyatakan huruf-huruf ciphertext
yang diperoleh dengan Caesar cipher.
Vigenere cipher merupakan salah satu algoritma kriptografi klasik untuk
menyandikan suatu plaintext dengan menggunakan teknik subtitusi. Vigenere
cipher pada dasarnya cukup rumit untuk dipecahkan. Meskipun begitu, Vigenere
cipher tetap memiliki kelemahan. Salah satunya adalah dapat diketahui panjang
kuncinya dengan menggunakan metode kasiski. Hal ini disebabkan karena
umumnya terdapat frasa yang berulang-ulang pada ciphertext yang dihasilkan.

b. Algoritma Vigenere Cipher


Algoritma enkripsi jenis ini sangat dikenal karena mudah dipahami dan
diimplementasikan. Teknik untuk menghasilkan ciphertext bisa dilakukan
menggunakan subtitusi angka maupun bujur sangkar vigenere. Teknik subtitusi
vigenere dengan menggunakan angka dilakukan dengan menukarkan huruf
dengan angka, hampir sama dengan kode geser. Contoh:

Gambar 2.4 : Tabel Subtitusi Algoritma Kriptografi Vigenere Cipher


(sun-coolin.blogspot.co.id, 2012)
9

Plaintext : ANGGI

Key : DJE

Tabel 2.1 : Tabel Pembuktian Dengan Tabel Subtitusi

Plaintext 0 13 6 6 8
Key 3 9 4 3 9
Hasil 3 22 10 9 17
CipherText D W K J R

Dengan metode pertukaran angka dengan huruf di atas, diperoleh bahwa teks
asli (ANGGI) memiliki kode angka (0, 13, 6, 6, 9), sedangkan kode angka untuk
teks key (DJE) yaitu (3, 9, 4). Setelah dilakukan perhitungan, maka dihasilkan
kode angka ciphertext (3, 22, 10, 9, 17). Jika diterjemahkan kembali menjadi
huruf sesuai urutan awal, maka menjadi huruf DWKJR.

Sedangkan metode lain untuk melakukan proses enkripsi dengan metode


vigènere cipher yaitu menggunakan tabula recta (disebut juga bujur sangkar
vigènere). Berikut gambar untuk tabula recta / bujur sangkar Vigenere :

Gambar 2.5 : Tabula Recta Algoritma KriptografiVigenere Cipher


(sun-coolin.blogspot.co.id, 2012)
10

Kolom paling kiri dari bujur sangkar menyatakan huruf-huruf kunci,


sedangkan baris paling atas menyatakan huruf-huruf plaintext. Setiap baris di
dalam bujur sangkar menyatakan huruf-huruf ciphertext yang diperoleh dengan
Caesar cipher, yang mana jumlah pergeseran huruf plaintext ditentukan nilai
numerik huruf kunci tersebut (yaitu, a=0, b=1, c=2, …, z=25). Sebagai contoh,
huruf kunci c (=2) menyatakan huruf-huruf plaintext digeser sejauh 2 huruf ke
kanan (dari susunan alfabetnya), sehingga huruf-huruf ciphertext pada baris c
adalah:

Gambar 2.6 : PotonganTabula Recta Baris ke-C (sun-


coolin.blogspot.co.id, 2012)

Bujur sangkar vigènere digunakan untuk memperoleh ciphertext dengan


menggunakan kunci yang sudah ditentukan. Jika panjang kunci lebih pendek
daripada panjang plaintext, maka kunci diulang penggunaannya (sistem periodik).
Bila panjang kunci adalah m, maka periodenya dikatakan m. Sebagai contoh, jika
plaintext adalah ANGGI IRAWAN dan kunci adalah fajar, maka penggunaan kunci
secara periodik sebagai berikut:

Plaintext : ANGGI IRAWAN

Key : fajar fajarf

CipherText : FNPGZ NRJWRS

3. Caesar Cipher
a. Pengertian Caesar Cipher
Metode penyandian ini dinamakan caesar cipher, setelah digunakan Julius
Caesar untuk berkomunikasi dengan para panglimanya. Dalam kriptografi, caesar
cipher dikenal dengan beberapa nama seperti: shift cipher,  caesar’s code atau
caesar shift. Caesar cipher merupakan teknik enkripsi yang paling sederhana dan
banyak digunakan. Cipher ini berjenis cipher subtitusi, dimana setiap huruf pada
plaintextnya digantikan dengan huruf lain yang tetap pada posisi alfabet. Misalnya
diketahui bahwa pergeseran = 3, maka huruf A akan digantikan oleh huruf D,
huruf B menjadi huruf E, dan seterusnya.

Gambar 2.7 : Tabel Subtitusi Caesar Cipher


(fairuzelsaid.wordpress.com, 2010)
11

b. Algoritma Caesar Cipher


Algoritma caesar cipher merupakan algoritma klasik yang memiliki langkah-
langkah logis sebagai berikut :
1) Menghitung panjang karakter / huruf yang diinputkan dalam plaintext.
2) Tiap-tiap huruf diubah menjadi kode ASCII menggunakan proses looping.
3) Untuk melakukan pergeseran / proses enkripsi maka kode ASCII tersebut
digeser dengan cara ditambah sebanyak pergeseran. Misal pergeseran 3 huruf
maka kode ASCII ditambah dengan 3.
4) Jika ditemukan spasi (ASCII=32), maka tidak usah dilakukan penambahan.
5) Hasil pergeseran bilangan ASCII dikembalikan lagi menjadi huruf / karakter.
Transformasi Caesar Cipher dapat direpsentasikan dengan menyelaraskan
plaintext dengan ciphertext ke kiri atau kanan sebanyak jumlah pergeseran yang
diinginkan. Sebagai contoh dengan jumlah pergeseran sebanyak 3 :

Plaintext : ABCDEFGHIJKLMNOPQRSTUVWXYZ
Ciphertext : DEFGHIJKLMNOPQRSTUVWXYZABC
Untuk membaca pesan yang dienkripsi penerima dapat menyelaraskan huruf
ciphertext yang diterima dengan plaintext yang tepat berada di atasnya. Sebagai
contoh enkripsinya sebagai berikut :

Plaintext : UNIVERSITAS BUDI LUHUR


Ciphertext : XQLYHUVLWDV EXGL OXKXU

4. Short Message Service (SMS)


a. Pengertian SMS
SMS adalah bagian (fitur) dari GSM ( Global System for Mobile Communication )

dan merupakan teknologi yang memungkinkan pengiriman dan penerimaan pesan


(message) dalam bentuk teks antar mobile phone (Rossy W, Utomo & Wellem
2006).
Sebuah pesan SMS maksimal terdiri dari 140 bytes, dengan kata lain sebuah
pesan bisa memuat 140 karakter 8-bit, 160 karakter 7-bit atau 70 karakter 16-bit
untuk bahasa Jepang, bahasa Mandarin dan bahasa Korea yang memakai Hanzi
(Aksara Kanji / Hanja). Selain 140 bytes ini ada data-data lain yang termasuk. Ada
pula beberapa metode untuk mengirim pesan yang lebih dari 140 bytes, tetapi
seorang pengguna harus membayar lebih dari sekali. SMS bisa pula untuk
mengirim gambar, suara dan film, SMS bentuk ini disebut MMS.
Pesan-pesan SMS dikirim dari sebuah telepon genggam ke pusat pesan
(SMSC), di sini pesan disimpan dan mencoba mengirimnya selama beberapa kali.
Setelah sebuah waktu yang telah ditentukan, biasanya 1 hari atau 2 hari, lalu
pesan dihapus. Seorang pengguna bisa mendapatkan konfirmasi dari pusat pesan
ini.
SMS sangat populer di Eropa, Asia dan Australia. Di Amerika Serikat, SMS
secara relatif jarang digunakan. SMS populer karena relatif murah. Di Indonesia,
tergantung perusahaannya sebuah SMS berkisar antara Rp. 250,- sampai Rp. 350,.
Karena kesulitan mengetik atau untuk menghemat tempat, biasanya pesan
SMS disingkat-singkat. Tetapi kendala kesulitan sekarang sudah teratasi karena
banyak telepon genggam yang memiliki fungsi kamus.

b. Cara Kerja SMS


Mekanisme cara kerja sistem SMS adalah melakukan pengiriman short
message dari satu terminal pelanggan ke terminal yang lain.  Hal ini dapat
12

dilakukan berkat adanya sebuah entitas dalam sistem SMS yang bernama Short
Message Service Centre (SMSC), disebut juga Message Centre (MC).  SMSC
merupakan sebuah perangkat yang melakukan tugas store and forward traffic
short message.  Didalamnya termasuk penentuan atau pencarian rute tujuan akhir
dari short message.

Gambar 2.8 : Arsitektur Dasar Jaringan SMS


(www.kajianpustaka.com, 2012)

SMSC memiliki interkonektivitas dengan SME (Short Messeging Entity) yang


dapat berupa jaringan e-mail, web, dan voice e-mail. SMSC inilah yang akan
melakukan manajemen pesan SMS, baik untuk pengiriman, pengaturan antrian
SMS, ataupun penerimaan SMS.
Layanan SMS merupakan sebuah layanan yang bersifat non-real time dimana
sebuah short message dapat di submit ke suatu tujuan, tidak peduli apakah tujuan
tersebut aktif atau tidak.  Bila dideteksi tujuan tidak aktif, maka sistem akan
menunda pengiriman ke tujuan hingga tujuan aktif kembali.  Pada dasarnya sistem
SMS akan menjamin delivery dari suatu short message hingga sampai ke tujuan.
Kegagalan pengiriman yang bersifat sementara seperti tujuan yang tidak diaktifkan
selalu teridentifikasi sehingga pengiriman ulang short message akan selalu
dilakukan kecuali bila diberlakukan aturan bahwa short message yang telah
melampaui batas waktu tertentu harus dihapus dan dinyatakan gagal terkirim.

c. Komponen Transmisi SMS


Komponen-komponen yang memungkinkan transmisi SMS diantaranya:
1) Stasiun udara (Cell Tower) merupakan stasiun pemancar selular yang
mengontrol seluruh transmisi seluler pada jaringan komunikasi. Cell tower
memiliki kemampuan respon untuk memberi inisial atau jawaban yang berupa
suara atau lalulintas data.
2) Mobille Switching Centre (MSC) merupakan kantor elektronik yang membawa
seluler. Sistem komputer mengontrol sistem saklar untuk operasi-operasi
jaringan secara otomatis.
3) Sort message service centre (SMSC) dimana pada SMSC terdapat sistem store
dan forward dalam pengiriman SMS. SMS tersebut disimpan dalam jaringan
sampai ponsel siap menerima maka seorang pamakai dapat mengirim atau
menerima SMS, setiap waktu dimana sebuah panggilan suara biasa dalam
posisi aktif atau tidak aktif.
4) GSMC dapat mengkomunikasikan jaringan melalui TCP/IP melalui GSMC. GSMC
merupakan sebuah MSC yang mampu menerima SMS dari routing pelanggan
dan mengirimkan SMS ke MSC atau penginformasi tentang penjelajahan MSC
dari ponsel yang dituju.

d. Perkembangan Teknologi SMS


13

SMS merupakan sebuah sistem pengiriman data dalam paket dengan


bandwidth kecil.  Dengan karakteristik ini, pengiriman suatu data yang pendek
dapat dilakukan dengan efisensi yang sangat tinggi.  Pada awalnya SMS diciptakan
untuk menggantikan layanan paging dengan menyediakan layanan serupa yang
bersifat two-way messaging ditambah dengan notification service, khususnya
untuk voice mail.  Pada perkembangan selanjutnya, muncul jenis-jenis layanan lain
seperti mail, fax, dan paging integration, interactive banking, information service,
dan integrasi dengan aplikasi berbasis internet.  Selain itu juga berkembang
layanan wireless seperti SIM download for active action , debet dan profile editing,
Wireless Point of Sale (POSs) , serta layanan aplikasi lapangan seperti remote
reasing, remote sensing, dan Location Base Services (LBS).  Integrasi dengan
aplikai berbasis internet mendorong timbulnya layanan seperti web-based
messaging, gaming dan chatting.

5. Studi Literatur
a. Riris Tri Harini, Ema Utami, 2012, dalam jurnal yang berjudul Aplikasi Enkripsi SMS
Dengan Modifikasi Vigenere Cipher Pada Ponsel Android, mengemukakan bahwa
berkomunikasi adalah salah satu sifat manusia sejak ada di muka bumi sebagai
sarana untuk saling memahami. Salah satunya adalah melalui penulisan atau
pesan, pesan merupakan informasi yang dapat dibaca dan memiliki makna. Dalam
beberapa tahun terakhir, perkembangan pesat terjadi pada teknologi ponsel. Salah
satunya adalah Ponsel pintar yang memiliki fitur lengkap dengan sistem operasi
yang kompleks seperti komputer. Berbagai sistem operasi untuk ponsel
diperkenalkan, seperti Android. Meski dilengkapi dengan fitur premium dan sistem
operasi, untuk keamanan penyampaian pesan melalui fasilitas SMS, masih
dianggap tidak memadai. Dengan mengenkripsi isi pesan yang akan dikirim, maka
tingkat keamanan informasi pesan bisa ditingkatkan. Dari berbagai teknik enkripsi,
Metode enkripsi Vigenere cipher, Caesar cipher dengan modifikasi dan bilangan
Eulerian dipilih sebagai metode dengan beban kerja ringan. Akses ke pesan
aplikasi harus diamankan dengan password, jadi pesannya akan aman dari pihak
yang tidak berhak.

b. Damai Subimawanto, Fuji Ihsani, Jonathan Hindharta, Melisa Chatrine Kamu,


Muhammad Rendianto, Virgiawan Ananda Pratama, 2014, dalam jurnal yang
berjudul Implementasi Algoritma Kriptografi Kode Caesar, Vigenere, Dan
Transposisi Untuk Sistem Proteksi Penggunaan Pesan Singkat (SMS) Pada
Smartphone Android, mengemukakan bahwa pada era modernisasi saat ini,
teknologi telepon selular berkembang pesat. Salah satu bentuk perkembangannya
adalah dengan munculnya telepon pintar dengan sistem operasi Android yang
memiliki beragam fitur menarik dan tingkat kompleksitas yang hampir sama
dengan komputer. Berbagai aplikasi pengiriman pesan secara online, seperti
BlackBerry Messenger dan LINE sudah banyak digunakan. Namun, salah satu fitur
yang selalu ada dan masih digunakan hingga saat ini adalah SMS (Layanan Pesan
Singkat). Keamanan bertukar informasi dan berkomunikasi sangat penting bagi
semua orang. Untuk itu, enkripsi terhadap teks SMS perlu dilakukan untuk
meningkatkan keamanan privasi pengguna dalam proses pengiriman pesan dan
informasi penting. Dari berbagai teknik enkripsi yang ada, enkripsi berlapis dengan
menggabungkan tiga algoritma enkripsi, yaitu Kode Caesar, Vigenere, dan
Transposisi dipilih sebagai metode dalam pengamanan teks SMS. Dengan
meningkatkan jumlah lapisan dan pemanfaatan kunci unik yang digunakan dalam
proses enkripsi dan dekripsi diharapkan mampu mengurangi jumlah penyadapan
teks SMS yang sering terjadi saat ini.
14

c. Yusuf Triyuswoyo ST., Ferina Ferdianti ST., Donny Ajie Baskoro ST., Lia Ambarwati
ST., Septiawan ST., 2014, dalam jurnal yang berjudul Implementasi Algoritma
Caesar, Cipher Disk, Dan Scytale Pada Aplikasi Enkripsi Dan Dekripsi Pesan
Singkat, LumaSMS, mengemukakan bahwa Short Message Service (SMS)
merupakan salah satu cara berkomunikasi yang banyak digunakan oleh pengguna
telepon seluler. Namun banyaknya pengguna telepon seluler yang menggunakan
layanan SMS, tidak diimbangi dengan faktor keamanan yang ada pada layanan
tersebut. Banyak pengguna telepon seluler yang belum menyadari bahwa SMS
tidak menjamin integritas dan keamanan pesan yang disampaikan. Ada beberapa
risiko yang dapat mengancam keamanan pesan pada layanan SMS, diantaranya:
SMS spoofing, SMS snooping, dan SMS interception. Untuk mengurangi risiko
tersebut, maka dibutuhkan sebuah sistem keamanan pada layanan SMS yang
mampu menjaga integritas dan keamanan isi pesan. Dimana tujuannya ialah untuk
menutupi celah pada tingkat keamanan SMS. Salah satu penanggulangannya ialah
dengan menerapkan algoritma kriptografi, yaitu kombinasi atas algoritma Cipher
Disk, Caesar, dan Scytale pada pesan yang akan dikirim. Tujuan dari penulisan ini
adalah membangun aplikasi LumaSMS, dengan menggunakan kombinasi ketiga
algoritma kriptografi tersebut. Dengan adanya aplikasi ini diharapkan mampu
mengurangi masalah keamanan dan integritas SMS.

d. Anjar Pradipta, 2016, dalam jurnal yang berjudul Implementasi Metode Caesar
Cipher Alphabet Majemuk Dalam Kriptografi Untuk Pengamanan Informasi,
mengemukakan bahwa salah satu cara untuk mengamankan data atau informasi
dengan kriptologi. Kriptografi adalah studi tentang keamanan (kerahasiaan),
algoritma kriptografi secara teknis terdiri dari subtitusi teknis dan teknik
transposisi. Teknik kriptografi dapat dipercaya untuk menangani masalah
keamanan data atau informasi, karena selain menggunakan bahasa pemrograman
komputer, kriptografi juga menggunakan rumus matematika, mulai dari formula
sederhana sampai formula kompleks. Dari hasil penelitian ini menyimpulkan bahwa
dengan tidak adanya formula pasti dalam kriptografi metode Caesar Cipher, dapat
dikatakan bahwa Caesar Cipher sulit dipecahkan.

e. Faisal Zuli, Ari Irawan, 2014, dalam jurnal yang berjudul Penerapan Kombinasi
Sandi Caesar Dan Vigenere Untuk Pengamanan Data Pesan Pada Surat Elektronik,
mengemukakan bahwa maraknya aksi penyadapan saat ini perlu kita sikapi dengan
serius karena aksi penyadapan tersebut telah melanggar hak asasi manusia dalam
berkomunikasi dengan aman dalam hal ini adalah komunikasi melalui surat
elektronik dengan akses internet atau dikenal dengan email. Ilmu kriptografi
adalah suatu teknik untuk mengamanankan data atau pesan. Pengamanan data
atau pesan dapat dilakukan dengan menggunakan berbagai algoritma, salah
satunya dapat menggunakan sandi Caesar dan Vigenere. Sandi Caesar dan
Vigenere merupakan bagian dari awal perkembangan ilmu kriptografi, atau bagian
dari kriptografi klasik. Pemanfaatan kombinasi sandi Caesar dan Vigenere dapat
digunakan untuk mengamankan data teks pada pesan email, jika algoritma
tersebut diimplementasikan ke dalam sebuah aplikasi diharapkan dapat untuk
mengamankan isi pesan email sehingga pesan dilindungi dari tindakan intersepsi.
15
BAB III

ANALISA MASALAH DAN PERANCANGAN PROGRAM

1. Permasalahan dan Strategi Pemecahan Masalah


a. Analisa Masalah
PizzaExpress kesehariannya melakukan transaksi data sales melalui e-mail,
apabila internet sedang tidak terkoneksi person incharge melakukan transaksi data
sales dengan mengirimkannya melalui SMS tanpa adanya pengamanan apapun,
sehingga menyebabkan rawannya pencurian informasi yang dapat merugikan
perusahaan.

b. Penyelesaian Masalah
Berdasarkan analisa masalah yang telah diuraikan diatas, serta mengingat
betapa pentingnya kebutuhan akan keamanan dalam bertransaksi data dan
informasi, penulis mencoba untuk merancang dan membuat sebuah aplikasi
dengan teknik kriptografi. Dimana aplikasi tersebut nantinya akan dapat
mengamankan data atau informasi yang akan dikirim melalui SMS. Aplikasi
tersebut nantinya akan dapat mengubah pesan biasa (plaintext) menjadi pesan
yang telah diubah supaya tidak mudah dibaca (ciphertext).
Dengan aplikasi tersebut diharapkan keamanan bertransaksi data dan
informasi dapat terjaga kerahasiaannya. Dan juga tidak disalahgunakan oleh pihak
yang tidak berhak mengetahui informasi tersebut.

2. Perancangan Aplikasi
Perancangan aplikasi kriptografi ini dibuat yakni terdiri dari lima buah menu, yang
terdiri dari menu home, menu tulis pesan, menu kotak masuk, menu kotak keluar dan
menu keluar.
Untuk melakukan pengamanan data sales yang akan dikirimkan menggunakan
SMS, user dapat memilih menu tulis pesan, user dapat menekan tombol phone book
untuk memilih nomor telepon tujuan kemudian masukkan pesan data sales yang akan
dikirim kemudian masukkan kunci yang dijadikan pengamanan lalu menekan tombol
enkripsi untuk menghasilkan pesan yang sudah diamankan oleh teknik kriptografi dan
kemudian user menekan tombol kirim untuk mengirim pesan yang sudah di amankan
tersebut ke nomor telepon tujuan.
Sedangkan untuk melihat SMS yang masuk, user memilih menu kotak masuk
kemudian user dapat memilih pesan SMS mana yang ingin dibaca dengan cara
menekan saja pesan yang ingin dibaca, kemudian user akan dialihkan ke halaman
detail kotak masuk untuk melihat isi pesan secara lengkap, di halaman ini user dapat
membuka kunci untuk membaca teks pesan asli yang sudah dikirim, dengan cara
memasukkan kunci yang benar lalu user dapat menekan tombol dekripsi untuk
memproses pembukaan kunci pesan yang diamankan dengan teknik kriptografi. User
juga dapat melihat history pesan yang sudah dikirim, dengan cara memilih menu
kotak keluar kemudian user dapat memilih pesan mana yang ingin dibaca dan dilihat
dengan cara menekan saja pesannya, lalu user akan di alihkan ke halaman detail
kotak keluar, sama halnya dengan detail kotak masuk, user dapat juga membuka
kunci pesan, untuk melihat pesan apa yang sudah dikirim sebelumnya.

3. Rancangan Layar
Rancangan layar merupakan komponen yang sangat penting sebelum di
implementasikan dalam bentuk program aplikasi. Desain atau rancangan layar dibuat
untuk diimplementasikan kedalam coding program agar memudahkan programmer

16
17

dalam membuat aplikasi kriptografi yang disesuaikan dengan kebutuhan user. Berikut
ini adalah rancangan layar untuk aplikasi kriptografi SMS :
a. Rancangan Layar Home
Pada rancangan layar home, merupakan halaman pertama yang akan tampil
saat user membuka aplikasi. Pada menu home ini menampilkan tampilan menu
utama aplikasi, yang berisikan beberapa menu yaitu, menu tulis pesan untuk
menulis pesan, mengenkripsi pesan dan kirim pesan, menu kotak masuk untuk
melihat urutan pesan yang masuk, mendeskripsi pesan, menu kotak keluar untuk
melihat urutan pesan yang dikirim, lihat pesan, mendeskripsi pesan dan menu
keluar untuk keluar dari aplikasi.

Gambar 3.1 : Rancangan layar home

b. Rancangan Layar Tulis Pesan


Pada rancangan layar tulis pesan, merupakan menu yang digunakan untuk
menulis mengirimkan suatu pesan ke orang lain, user dapat memilih tombol phone
book untuk memilih nomor tujuan atau user dapat mengetik nomor tujuan secara
manual. User dapat menulis pesan yang akan dikirim setelah itu memasukkan
kunci sebagai pengaman pesan dan tombol enkripsi untuk mengubah pesan
menjadi sebuah ciphertext dan user dapat mengirim pesan setelah pesan asli
18

diubah menjadi ciphertext dengan menekan tombol kirim, halaman tulis pesan bisa
diakses melalui menu home.

Gambar 3.2 : Rancangan layar tulis pesan

c. Rancangan Layar Kotak Masuk


Pada rancangan layar kotak masuk, merupakan menu yang digunakan untuk
melihat urutan pesan yang masuk berupa nama pengirim, tanggal diterimanya
SMS dan isi pesan. Dimana jika user memilih salah satu pesan yang ingin dibaca,
maka akan dialihkan ke halaman detail kotak masuk.
19

Gambar 3.3 : Rancangan layar kotak masuk

d. Rancangan Layar Detail Kotak Masuk


Pada rancangan layar detail kotak masuk , merupakan halaman dimana user
dapat melihat detail isi pesan yang diterima seperti nomor pengirim, tanggal dan
waktu diterimanya pesan dan juga isi pesan. Di halaman ini user dapat
mendekripsikan pesan yang masuk yaitu pesan yang berupa ciphertext, dengan
cara memasukkan kunci yang benar dan menekan tombol dekripsi. Halaman detail
kotak masuk dapat diakses setelah user memilih pesan yang akan dibaca pada
menu kotak masuk.
20

Gambar 3.4 : Rancangan layar Detail kotak masuk

e. Rancangan Layar Kotak Keluar


Pada rancangan layar kotak keluar, merupakan menu yang digunakan untuk
melihat urutan pesan yang keluar berupa nama kontak tujuan, tanggal dikirimnya
SMS dan isi pesan. Dimana Jika user memilih salah satu pesan yang ingin dibaca,
maka akan dialihkan ke halaman detail kotak keluar, di menu ini juga bisa
dijadikan sebagai history dari aplikasi ini.
21

Gambar 3.5 : Rancangan layar kotak keluar

f. Rancangan Layar Detail Kotak Keluar


Pada rancangan layar detail kotak keluar, merupakan halaman dimana user
dapat melihat detail isi pesan yang dikirim seperti nomor telepon tujuan, tanggal
dan waktu dikirimnya pesan dan juga isi pesan. Di halaman ini user dapat
mendekripsikan pesan yang keluar yaitu pesan yang berupa ciphertext, dengan
cara memasukkan kunci yang benar dan menekan tombol dekripsi. Halaman detail
kotak keluar dapat diakses setelah user memilih pesan yang akan dibaca pada
menu kotak keluar.
22

Gambar 3.6 : Rancangan layar detail kotak keluar

g. Rancangan Layar Keluar


Pada rancangan layar keluar, merupakan menu yang digunakan user untuk
keluar dari aplikasi.
23

Gambar 3.7 : Rancangan layar keluar

4. Flowchart
Untuk menggambarkan urutan proses pada aplikasi ini, akan digunakan flowchart
untuk memperjelas alur kerja proses. Berikut adalah flowchart untuk masing-masing
proses menu.
a. Flowchart Menu Home
Pada flowchart menu home terdapat beberapa menu utama yang akan tampil
pada aplikasi ini. User dapat melakukan aktivitas melalui menu yang tersedia
diantaranya ketika user akan menulis pesan, mengamankan pesan dan mengirim
pesan maka user dapat memilih menu tulis pesan, jika user akan melihat pesan
yang masuk, membaca pesan, medekripsi pesan maka user dapat memilih menu
kotak masuk, jika user ingin melihat pesan yang sudah dikirim, membaca pesan
yang sudah dikirim, mendekripsi pesan maka user dapat memilih menu kotak
24

keluar dan jika user ingin keluar dari aplikasi maka user dapat memilih menu
keluar.

Gambar 3.8 : Flowchart Menu Home

b. Flowchart Menu Tulis Pesan


Pada flowchart menu tulis pesan, user dapat melakukan pengiriman pesan
yang terenkripsi ataupun tidak, user hanya perlu memasukkan nomor telepon
25

tujuan, isi pesan dan kunci pesan untuk pengamanan pesan, lalu user tinggal
menekan tombol kirim.

Gambar 3.9 : Flowchart Menu Tulis Pesan

c. Flowchart Menu Kotak Masuk


Pada Flowchart kotak masuk user dapat melihat list pesan masuk yang
diterima. Ketika user menekan salah satu list pesan tersebut, maka user akan
dialihkan ke halaman menu detail kotak masuk dan user dapat melihat detail isi
26

pesan serta membuka kunci pesan untuk proses mengubah pesan menjadi pesan
asli.

Gambar 3.10 : Flowchart Menu Kotak Masuk

d. Flowchart Menu Kotak Keluar


Pada Flowchart kotak keluar user dapat melihat list pesan keluar yang dikirim.
Ketika user menekan salah satu list pesan tersebut, maka user akan dialihkan ke
halaman menu detail kotak keluar dan user dapat melihat detail isi pesan serta
membuka kunci pesan untuk proses mengubah pesan menjadi pesan asli.
27

Gambar 3.11 : Flowchart Menu Kotak Keluar

e. Flowchart Enkripsi Vigenere Cipher


Pada flowchart enkripsi vigenere cipher, menjelaskan alur proses untuk
enkripsi pesan SMS dimana plaintext yang telah diinput akan diproses untuk di
ubah menjadi ciphertext.
28

Gambar 3.12 : Flowchart Enkripsi Vigenere Cipher

f. Flowchart Enkripsi Caesar Cipher


Pada flowchart enkripsi Caesar cipher, menjelaskan alur proses untuk enkripsi
pesan SMS dimana plaintext yang telah diinput akan diproses untuk di ubah
menjadi ciphertext.
29

Gambar 3.13 : Flowchart Enkripsi Caesar Cipher

g. Flowchart Dekripsi Vigenere Cipher


Pada flowchart dekripsi vigenere cipher, menjelaskan alur proses untuk
dekripsi pesan SMS dimana ciphertext yang sedang dibaca bisa di ubah menjadi
plaintext kembali, dengan memasukan kunci yang benar maka ciphertext akan
diproses untuk di ubah menjadi plaintext.
30

Gambar 3.14 : Flowchart Dekripsi Vigenere Cipher

h. Flowchart Dekripsi Caesar Cipher


Pada flowchart dekripsi caesar cipher, menjelaskan alur proses untuk dekripsi
pesan SMS dimana ciphertext yang sedang dibaca bisa di ubah menjadi plaintext
31

kembali, dengan memasukan kunci yang benar maka ciphertext akan diproses
untuk di ubah menjadi plaintext.

Gambar 3.15 : Flowchart Dekripsi Caesar Cipher

5. Algoritma
Algoritma digunakan untuk mempermudah dalam pembuatan dan perancangan
suatu program. Algoritma yang telah dibuat merupakan terjemahan dari flowchart,
dimana algoritma akan menjabarkan cara kerja program tersebut. Dalam aplikasi ini
terdiri dari beberapa algoritma yang digunakan untuk menjalankan proses pada
program. Berikut adalah algoritma untuk masing-masing proses menu.
32

a. Algoritma Menu Home


Algoritma menu home menjelaskan proses dimana user dapat memilih menu
yang tersedia di aplikasi. Menu pilihan terdiri dari menu tulis pesan, menu kotak
masuk, menu kotak keluar dan menu keluar.

1. Tampilkan halaman home


2. Input pilih
3. If pilih = “Tulis Pesan” then
4. Tampilkan menu tulis pesan
5. Else if pilih = “Kotak Masuk” then
6. Tampilkan menu kotak masuk
7. Else if pilih = “Kotak Keluar” then
8. Tampilkan menu Kotak Keluar
9. Else if pilih = “Keluar” then
10. Keluar dari halaman home
11. Else kembali ke baris kedua
12. End if

b. Algoritma Menu Tulis Pesan


Algoritma menu tulis pesan menjelaskan bagaimana proses pengiriman dan
proses mengamankan pesan berlangsung.

1. Tampilkan halaman tulis pesan


2. If pilih = “backpress” then
3. kembali ke halaman home
4. Else
5. Input No_telp, pesan dan kunci
6. If No_telp, pesan dan kunci !=”” then
7. If Kunci = “6 karakter” then
8. Input pilih
9. If pilih = “Enkripsi” then
10. Vigenere Cipher
11. Gabung hasil enkripsi Vigenere Cipher dengan kunci
12. Caesar Cipher
13. Tampilkan hasil enkripsi
14. Kirim
15. If Kirim = “Berhasil” then
16. Kembali ke halaman home
17. Else
18. Kembali kebaris kelima
19. Else
20. Kembali ke baris kelima
21. Else
22. Kembali ke baris kelima
23. Else
24. Kembali ke baris kelima
25. End if

c. Algoritma Menu Kotak Masuk


33

Algoritma menu kotak masuk menjelaskan tentang bagaimana proses memilih


pesan yang diterima dan akan dibaca.

1. Tampilkan halaman kotak masuk


2. Ambil data pesan kotak masuk
3. Tampilkan daftar pesan
4. If pilih =”backpress” then
5. Kembali ke halaman home
6. Else
7. Pilih pesan
8. Tampilkan detail pesan
9. Input Kunci
10.If Kunci = “6 karakter” then
11. Input pilih
12. If pilih = “dekripsi” then
13. Dekripsi Caesar Cipher
14. Key = “ambil 6 karakter dari belakang hasil dekripsi caesar cipher”
15. Ciphertext = “hapus 6 karakter dari belakang hasil dekripsi caesar
cipher”
16. If Kunci =”key” then
17. Dekripsi vigenere cipher
18. Tampilkan hasil dekripsi
19. Tampilkan detail pesan
20. Else
21. Kembali ke baris kesembilan
22. Else if
23. Pilih =”backpress” then
24. kembali ke daftar pesan
25. Else
26. Kembali ke baris kedelapan
27.Else
28. Kembali ke baris kedelapan
29.End if

d. Algoritma Menu Kotak Keluar


Algoritma menu kotak keluar menjelaskan tentang bagaimana proses memilih
pesan yang telah dikirim dan akan dibaca.

1. Tampilkan halaman kotak keluar


2. Ambil data pesan kotak keluar
3. Tampilkan daftar pesan
4. If pilih =”backpress” then
5. Kembali ke halaman home
6. Else
7. Proses pilih pesan
8. Tampilkan detail pesan
9. Input Kunci
10.If Kunci = “6 karakter” then
11. Input pilih
12. If pilih = “dekripsi” then
13. Dekripsi Caesar Cipher
34

14. Key = “ambil 6 karakter dari belakang hasil dekripsi caesar cipher”
15. Ciphertext = “hapus 6 karakter dari belakang hasil dekripsi caesar
cipher”
16. If Kunci =”key” then
17. Dekripsi vigenere cipher
18. Tampilkan hasil dekripsi
19. Tampilkan detail pesan
20. Else
21. Kembali ke baris kesembilan
22. Else if
23. Pilih =”backpress” then
24. kembali ke daftar pesan
25. Else
26. Kembali ke baris kedelapan
27.Else
28. Kembali ke baris kedelapan
29.End if

e. Algoritma Enkripsi Vigenere Cipher


Algoritma enkripsi vigenere cipher menjelaskan tentang bagaimana proses
enkripsi pesan sebelum dikirim berlangsung.

1. Masukkan plaintext
2. Masukkan kunci
3. i=0
4. j=0
5. While i < panjang plaintext
6. Shift = ((int(kunci.charAt(j)-32))
7. j=j+1
8. j = j % panjang kunci
9. Offset = ((int)pesan.charAt(i)+shift) % 127
10. Hasil += (char) (offset)
11. Proses i = i + 1
12. End while
13. Tampilkan hasil
14. Selesai

f. Algoritma Enkripsi Caesar Cipher


Algoritma enkripsi caesar cipher menjelaskan tentang bagaimana proses
enkripsi pesan sebelum dikirim berlangsung.

1. Masukkan plaintext
2. Kunci = 3
3. t=0
4. While t < Panjang plaintext
5. int p = plaintext.charAt(t)
6. p = (p + kunci) % 256
7. If p > 256 then
8. p = p – 256
9. Else
35

10. hasil = hasil (char) p


11. t=t+1
12. End While
13. Tampilkan hasil
14. Selesai

g. Algoritma Dekripsi Vigenere Cipher


Algoritma dekripsi vigenere cipher menjelaskan tentang bagaimana proses
dekripsi pesan yang diterima / dikirim berlangsung.

1. Masukkan ciphertext
2. Masukkan kunci
3. i=0
4. j=0
5. While j < panjang pesan
6. Shift = ((int) pesan.charAt(j)) – 32
7. j=j+1
8. j = j % panjang kunci
9. Offset = ((int) pesan.charAt(i) – shift) % 127
10. If offset < 0 then
11. offset = offset + 127
12. Else
13. hasil += (char) (offset)
14. End while
15. Tampilkan hasil
16. Selesai

h. Algoritma Dekripsi Caesar Cipher


Algoritma dekripsi caesar cipher menjelaskan tentang bagaimana proses
dekripsi pesan yang diterima / dikirim berlangsung.

1. Masukkan ciphertext
2. Kunci = 3
3. r=0
4. While r < panjang pesan
5. int dek = panjang pesan.charAt ( r )
6. dek = (dek – kunci) % 256
7. If dek < 0 then
8. dek = dek + 256
9. Else
10. hasil = hasil + (char) dek
11. r=r+1
12. End while
13. Tampilkan hasil
14. Selesai
36
BAB IV

IMPLEMENTASI DAN UJI COBA PROGRAM

Pada bab ini akan dilakukan implementasi proses pengiriman dan penerimaan pesan
SMS, serta uji coba program yang telah dibuat. Tujuannya adalah untuk mengetahui
kinerja program aplikasi kriptografi SMS.

1. Spesifikasi Hardware dan Software


a. Perangkat Keras (Hardware)
Di bawah ini merupakan spesifikasi hardware yang digunakan dalam uji coba
pengoperasian aplikasi kriptografi SMS.
1) Notebook Asus A555L
a) Processor : Intel (R) Core (TM) i5-5200U CPU @ 2.20Ghz
b) Graphic : Nvidia GeForce 940M
c) HDD : 1 TB
d) Memory : 4 GB
2) Smartphone Android Asus Zenfone 2
a) Processor : Intel Atom Z3580 quad-core 2.3 Ghz
b) Graphic : PowerVR G6430
c) Storage : 64 GB
d) Ram : 4 GB

b. Perangkat Lunak (Software)


Di bawah ini merupakan spesifikasi software yang digunakan dalam uji coba
pengoperasian aplikasi kriptografi SMS.
1) Windows 7 Ultimate SP1
2) Android Studio 2.3.2
3) Sistem operasi android marshmallow 6.0.1
4) Android SDK (Software Development Kit)

2. Tampilan Layar Program


Berikut ini merupakan penjelasan dan gambar mengenai tampilan yang terdapat
pada aplikasi kriptografi SMS.
a. Tampilan Layar Menu Home
Berikut adalah tampilan layar menu home. Dalam menu home terdapat
beberapa menu antara lain menu tulis pesan, menu kotak masuk, menu kotak
keluar dan menu keluar.

Gambar 4.1 : Tampilan Layar Menu Home

37
38

b. Tampilan Layar Menu Tulis Pesan


Berikut adalah tampilan layar menu tulis pesan, menu ini akan digunakan
untuk mengirim pesan SMS.

Gambar 4.2 : Tampilan Layar Menu Tulis Pesan

c. Tampilan Layar Menu Kotak Masuk


Berikut adalah tampilan layar menu kotak masuk. Menu ini akan menampilkan
list SMS yang masuk/diterima.

Gambar 4.3 : Tampilan Layar Menu Kotak Masuk


39

d. Tampilan Layar Menu Detail Kotak Masuk


Berikut adalah tampilan layar menu detail kotak masuk. Menu ini akan
menampilkan detail pesan SMS yang masuk/diterima.

Gambar 4.4 : Tampilan Layar Menu Detail Kotak Masuk

e. Tampilan Layar Menu Kotak Keluar


Berikut adalah tampilan layar menu kotak keluar. Menu ini akan menampilkan
list SMS yang telah dikirim.

Gambar 4.5 : Tampilan Layar Menu Kotak Keluar


40

f. Tampilan Layar Menu Detail Kotak Keluar


Berikut adalah tampilan layar menu detail kotak keluar. Menu ini akan
menampilkan detail pesan SMS yang telah dikirim.

Gambar 4.6 : Tampilan Layar Menu Detail Kotak Keluar

g. Tampilan Layar Menu Keluar


Berikut adalah tampilan layar menu keluar, menu ini akan menampilkan layar
pada saat user menekan tombol keluar dari menu home.

Gambar 4.7 : Tampilan Layar Menu Keluar


41

3. Uji Coba Program


Setelah spesifikasi hardware dan software telah terpenuhi, maka tahap
selanjutnya adalah tahap pengujian program. Pada bagian ini akan dijelaskan
pengujian aplikasi kriptografi SMS secara rinci.
a. Proses Home
Berikut merupakan tampilan layar menu home. Pada menu home, user dapat
memilih menu-menu yang tersedia pada aplikasi, seperti menu tulis pesan, menu
kotak masuk, menu kotak keluar dan manu keluar.

Gambar 4.8 : Menu Home

b. Proses Tulis Pesan


Berikut merupakan tampilan layar menu tulis pesan. Pada menu tulis pesan
user diharuskan untuk mengisi nomor telepon agar proses kirim SMS dapat
berlangsung, isi pesan sebagai informasi pesan SMS dan kunci untuk pengamanan
pesan agar pesan dapat diubah menjadi ciphertext.

Gambar 4.9 : Menu Tulis Pesan


42

c. Proses Kotak Masuk


Berikut merupakan tampilan layar menu kotak masuk, dimana user terlebih
dahulu memilih menu kotak masuk yang tersedia pada menu home.

Gambar 4.10 : Menu Kotak Masuk

Pada Gambar 4.10 merupakan tampilan dari menu kotak masuk. User dapat
memilih SMS yang akan dibaca dengan cara menekan salah satu pesan yang ingin
dibaca. Kemudian user akan dialihkan ke menu detail kotak masuk untuk
mengetahui isi pesan secara lengkap yang telah diterima. User dapat membuka
kunci dengan cara memasukkan kunci yang telah disepakati dan menekan tombol
dekripsi agar pesan dapat dibuka dan dibaca.

Gambar 4.11 : Menu Detail Kotak Masuk


43

d. Proses Kotak Keluar


Berikut merupakan tampilan layar menu kotak keluar, dimana user terlebih
dahulu memilih menu kotak keluar yang tersedia pada menu home.

Gambar 4.12 : Menu Kotak Keluar

Pada Gambar 4.12 merupakan tampilan dari menu kotak keluar. User dapat
memilih SMS yang akan dibaca dengan cara menekan salah satu pesan yang ingin
dibaca. Kemudian user akan dialihkan ke menu detail kotak keluar untuk
mengetahui isi pesan secara lengkap yang telah dikirim. User dapat membuka
kunci dengan cara memasukkan kunci pada saat pengiriman pesan dan menekan
tombol dekripsi agar pesan dapat dibuka dan dibaca.

Gambar 4.13: Menu Detail Kotak Keluar


44

e. Proses Keluar
Berikut merupakan tampilan layar menu keluar, dimana user terlebih dahulu
memilih menu keluar yang tersedia pada menu home.

Gambar 4.14: Menu Keluar

Gambar 4.1 : Tabel Uji Coba Aplikasi

No Nomor telepon Isi Kunci Ciphertext Kirim Alasan


tujuan pesan status
1 08989841931 Test1 Abcdef x+:<yDefghi Berhasil -
2 08989841931 Test2 Abcdef x+:<zDefghi Berhasil -
3 08989841931 Test3 Abcdef x+:<{Defghi Berhasil -
4 08989841931 Test4 Abcdef x+:<|Defghi Berhasil -
5 08989841931 Test5 Abcdef x+:<}Defghi Gagal Pesan gagal
dikirim pada
saat mode
pesawat

4. Evaluasi Program
Setelah melakukan analisa dari hasil pengujian aplikasi dapat ditemukan
beberapa kelebihan maupun kekurangan dari aplikasi tersebut, antara lain sebagai
berikut :
a. Kelebihan
1) Pesan yang dikirim dapat menggunakan kunci sesuai keinginan.
2) Pesan yang dikirim lebih aman karena menggunakan dua metode pengamanan.
45

3) Pesan yang dikirim tidak perlu terkoneksi internet.

b. Kekurangan
1) Pesan yang dikirim menggunakan pulsa telepon.
2) Pesan tidak dapat dikirim apabila tidak adanya signal.
3) Tidak dapat mengirimkan pesan yang panjang atau lebih dari 154 karakter.
4) Aplikasi tidak dapat mengirimkan pesan ke banyak nomor telepon tujuan.
BAB V

PENUTUP

1. Kesimpulan
Berdasarkan hasil pengujian yang telah dilakukan penulis pada aplikasi
pengamanan SMS dengan teknik kriptografi yang menggunakan metode Vigenere
cipher dan Caesar cipher, dapat diambil kesimpulan sebagai berikut :
a. Program aplikasi kriptografi berjalan dengan baik pada smartphone android.
b. Algoritma vigenere cipher dan caesar cipher berhasil mengamankan pesan SMS,
dengan mengubah pesan asli menjadi pesan yang tidak dapat diartikan, serta
pesan tersebut dapat dikembalikan ke bentuk pesan asli sehingga dapat dibaca
dan tersampaikan informasi yang dikirimkan dengan aman.
c. Jika sinyal telepon dalam keadaan mode pesawat, maka pesan gagal dikirim.

2. Saran
Dalam proses kriptografi dengan metode vigenere cipher dan caesar cipher ini
masih terdapat beberapa aspek yang dapat dikembangkan lebih lanjut, antara lain
sebagai berikut :
a. Pesan yang masuk bisa di berikan filter agar tidak tercampur dengan pesan utama
telepon.
b. Adanya fitur tambahan seperti dapat mengirim pesan ke banyak penerima dan lain
sebagainya.
c. Aplikasi dapat berjalan di semua sistem operasi android.

46

Anda mungkin juga menyukai