Implementasi Kombinasi Algoritma Vigenere Cipher dan Myszkowski Transposition Pada Aplikasi Penyandian Pesan Berbasis Android

BAB 2
LANDASAN TEORI

2.1. Algoritma
Menurut Kamus Besar Bahasa Indonesia Dalam Jaringan (2008), algoritma diartikan
algoritme, yaitu prosedur sistematis untuk memecahkan masalah matematis di
langkah-langkah terbatas. Kata algoritma berasal dari nama penulis buku arab yang
terkenal, yaitu Abu Ja’far Muhammad Ibnu Musa Al-Khuwarizmi. Al-Khuwarizmi
dibaca orang barat menjadi algorism yang kemudian berubah menjadi algorithm.
Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun
secara sistematis dan logis (Zarlis & Handrizal, 2008).

2.2. Kriptografi
Menurut Kamus Besar Bahasa Indonesia Dalam Jaringan (2008), kriptografi adalah
teknik yang mengubah data menjadi berbeda dari aslinya dengan menggunakan
algoritme matematika sehingga orang yang tidak mengetahui kuncinya tidak akan
dapat membongkar data tersebut. Menurut Rifki, S. (Fahrianto, et al. 2014), pada
awalnya kriptografi dideskripsikan sebagai ilmu yang mempelajari bagaimana
menyembunyikan pesan. Namun, dalam pengertian modern kriptografi merupakan
ilmu yang menggunakan teknik matematika untuk menangani keamanan informasi
seperti kerahasiaan.

Kriptografi bertujuan untuk memberi layanan keamanan (Girsang, 2010).
Aspek-aspek keamanan tersebut, yaitu :
1. Kerahasiaan (confidentiality)
Ditujukan untuk menjaga agar pesan tidak dapat dibaca oleh pihak-pihak yang
tidak berhak. Dalam kriptografi, aspek ini direalisasikan dengan menyandikan
plaintext menjadi ciphertext. Istilah lain yang senada dengan confidentiality
adalah secrecy dan privacy.

Universitas Sumatera Utara

Universitas Sumatera Utara

7

2. Integritas data (data integrity)
Ditujukan untuk menjamin bahwa pesan masih asli/utuh atau belum pernah
dimanipulasi selama pengiriman. Dengan kata lain pesan yang dikirimkan
tidak mengalami perubahan (modifikasi) antara pengirim dan penerima.
3. Otentikasi (authentication)
Ditujukan untuk mengidentifikasi pihak-pihak yang berkomunikasi (user

authentication). Dua

pihak

yang saling berkomunikasi

harus dapat

mengotentikasi satu sama lain sehingga sumber pesan dapat dipastikan.
4. Nirpenyangkalan (non-repudiation)
Ditujukan

untuk

menjaga

entitas

yang


berkomunikasi

melakukan

penyangkalan, yaitu pengirim pesan menyangkal melakukan pengiriman atau
penerima pesan menyangkal telah menerima pesan.
Sistem kriptografi didefinisikan oleh sebuah quintuple ( , , ,
dimana

menunjukkan satu pesan yang jelas,

dikodekan,

adalah kunci,

)

menunjukkan pesan yang telah

adalah fungsi enkripsi dan


(Nacira & Abdelaziz, 2005). Untuk setiap pesan

,

adalah fungsi dekripsi

yang jelas digunakan persamaan :

( ) =
Arjana, et al. (Setiawati, 2014) mengatakan istilah-istilah yang sering
digunakan dalam bidang kriptografi yaitu:
1. Plaintext adalah pesan yang hendak dikirimkan (berisi data asli).
2. Ciphertext adalah pesan ter-enkrip (tersandi) yang merupakan hasil enkripsi.
3. Enkripsi adalah proses pengubahan plaintext menjadi ciphertext.
4. Dekripsi adalah kebalikan dari enkripsi yakni mengubah ciphertext menjadi
plaintext, sehingga berupa data awal/asli.
5. Kunci adalah suatu bilangan yang dirahasiakan yang digunakan dalam proses
enkripsi dan dekripsi.


Banyak skema yang dapat digunakan untuk melakukan enkripsi pada bidang
studi kriptografi. Skema tersebut ditunjukkan pada Gambar 2.1.

Universitas Sumatera Utara

8

Gambar 2.1 Klasifikasi Metode Enkripsi (Singh & Supriya 2013).

Pada awal tahun 90-an, banyak jenis kriptosistem klasik yang dikembangkan
(Bhateja & Kumar, 2014). Kriptosistem klasik tersebut adalah Caesar cipher,
Substitution cipher, Affine cipher dan lain-lain. Kriptosistem ini merupakan
monoalphabetic kriptosistem dimana ada peta untuk mengubah satu ke satu alfabet
plaintext menjadi ciphertext. Beberapa kriptosistem polyalphabetic seperti Vigenere
cipher, Hill cipher dan Permutation dimana ada peta untuk mengubah
plaintext menjadi

karakter

karakter ciphertext.


Ada dua tipe kriptosistem, yaitu kunci rahasia dan kunci publik (Bhateja, et al.
2014). Pada kriptosistem kunci rahasia hanya terdapat satu kunci yang sama yang
digunakan untuk proses enkripsi dan dekripsi. Sedangkan pada kriptosistem kunci
publik memiliki kunci yang berbeda untuk proses enkripsi dan dekripsinya.
Kriptosistem klasik seperti Simple substation, Vigenere cipher, Hill cipher adalah
kriptosistem kunci rahasia.
Algoritma kriptografi (cipher) yang digunakan sebelum adanya komputer,
dinamakan juga algoritma klasik, adalah berbasis karakter, yaitu enkripsi dan dekripsi
dilakukan pada setiap karakter pesan. Munir (Girsang, 2010) berpendapat bahwa pada
dasarnya algoritma kriptografi klasik dapat dikelompokkan ke dalam dua macam
cipher, yaitu :
1. Cipher substitusi (substitution cipher)
Di dalam cipher substitusi setiap unit plaintext diganti dengan satu unit
ciphertext. Satu “unit” disini berarti satu huruf, pasangan huruf, atau
dikelompokkan lebih dari dua huruf. Algoritma substitusi tertua yang diketahui
adalah Caesar cipher yang digunakan oleh kaisar Romawi, Julius Caesar

Universitas Sumatera Utara


9

(sehingga dinamakan juga Caesar cipher), untuk mengirimkan pesan yang
kepada gubernurnya.
2. Cipher transposisi (transposition cipher)
Pada cipher transposisi, huruf-huruf di dalam plaintext tetap saja, hanya saja
urutannya diubah. Dengan kata lain algoritma ini melakukan transposisi terhadap
rangkaian karakter di dalam teks. Nama lain untuk metode ini adalah permutasi
atau pengacakan (scrambling) karena transposisi setiap karakter di dalam teks
sama dengan mempermutasikan karakter-karkater tersebut.

2.2.1.

Algoritma Vigenere cipher

Vigenere cipher adalah metode pengkodean teks abjad dengan menggunakan nilai
pergeseran yang berbeda-beda. Tabel bujur sangkar Vigenere normal berupa matriks
yang berdasarkan 26 huruf kapital, diikuti dengan siklus perubahan urutan yang terdiri
dari matriks persegi 26 x 26 (Singh & Supriya 2013).


Universitas Sumatera Utara

10

Tabel 2.1 Bujur Sangkar Vigenere Cipher (Setiawati 2014)

Tabel 2.1. merupakan tabel Vigenere cipher berisi huruf abjad yang terdiri dari
baris dan kolom dimana baris menyatakan huruf plaintext dan kolom menyatakan
huruf kunci. Ciphertext diperoleh dari pertemuan antara baris dan kolom pada tabel.
Pada proses enkripsi, setiap karakter kunci dan plaintext bisa diwakili oleh indeks,
untuk a=0, b=1, …, z=25 (Zhang, et al. 2014), ditunjukkan pada Tabel 2.2.

Tabel 2.2 Tabel Substitusi Algoritma Vigenere Cipher (Setiawati, 2014)

Universitas Sumatera Utara

11

Rumus dalam algoritma Vigenere menurut Cahyadi (Setiawati, 2014) :
Enkripsi:

= (

+

26)

Dekripsi :
= (

= (

+ 26

26); untuk
)

26 ; untuk

Keterangan:
= Nilai desimal karakter ciphertext ke-i

= Nilai desimal karakter plaintext ke-i
= Nilai desimal karakter kunci ke-i

2.2.2. Algoritma Myszkoski transposition
Menurut Atul, K. (Bhowmick, et al, 2015), Myszkowski transposition adalah salah
satu cipher transposisi. Algoritma ini ditulis oleh Émile Victor Théodore Myszkowski
dalam bukunya yang berjudul Cryptographie Indéchiffrable pada tahun 1902. Buku
ini ditulis berdasarkan penemuannya dan diklaim aman dari orang yang tidak berhak
membaca pesan tersebut. Hal ini didasarkan pada penggunaan kunci transposisi
dengan menulis teks secara horizontal (baris) dan membacanya secara vertikal
(kolom).
Proses enkripsi dilakukan dengan cara menyusun plaintext ke dalam baris
matriks. Kemudian matriks tersebut dibaca perkolom sehingga didapatkan ciphertext.
Banyak kolom yang digunakan pada matriks ditentukan oleh panjang kunci yang
digunakan. Kunci berupa urutan angka unik ataupun terdapat angka yang sama dengan
posisi acak, dimulai dari 1. Plaintext dibaca sesuai urutan angka pada kunci dengan
ketentuan pada angka yang unik dibaca perkolom, sedangkan pada angka yang sama
dibaca dari kiri ke kanan perkolomnya. Sedangkan untuk proses dekripsi merupakan
kebalikan dari proses enkripsinya.


Universitas Sumatera Utara

12

2.3. Metode Kasiski
Secara lengkap langkah-langkah metode kasiski yaitu (Achmad, 2011) :
1. Tentukan semua kriptogram yang berulang di dalam ciphertext. Pesan yang
panjang biasanya mengandung kriptogram yang berulang.
2. Hitung jarak antara kriptogram yang berulang.
3. Hitung semua faktor pembagi dari jarak tersebut (faktor pembagi menyatakan
panjang kunci yang mungkin).
4. Tentukan irisan dari himpunan faktor pembagi tersebut. Nilai yang muncul di
dalam irisan menyatakan angka yang muncul pada semua faktor pembagi dari
jarak-jarak tersebut. Nilai tersebut mungkin adalah panjang kunci.
2.4. Android
Menurut Safaat & Nazruddin (Shabara, 2015), Android merupakan sebuah sistem
operasi berbasis Linux yang dirancang untuk perangkat seluler layar sentuh seperti
smartphone atau komputer tablet. Android berjalan di dalam Dalvik Virtual Machine
(DVM) bukan di Java Virtual Machine (JVM). Sebenarnya DVM memiliki banyak
kesamaan dengan Java Virtual Machine, seperti Java ME (Java Mobile Edition),
tetapi Android menggunakan Virtual Machine sendiri yang dikustomisasi dan
dirancang untuk memastikan bahwa beberapa fitur berjalan lebih efisien pada
perangkat mobile.
Android merupakan sistem operasi open source. Ada empat keuntungan dari
sistem operasi open source. Keuntungan pertama, sistem operasi ini gratis. Kedua,
semua orang bebas memodifikasi sistem yang ada. Ketiga, pengguna tidak harus
menggunakan perangkat lunak berbayar yang hanya bisa bersinergi dengan perangkat
lunak berbayar yang lain dari perusahaan yang sama. Keempat, banyaknya orang yang
ikut mengembangkan sistem membuat sistem operasi open source selalu diperbaharui,
dan sistem keamannnya pun lebih baik (Asror, 2015).

Universitas Sumatera Utara

13

2.5. Penelitian Relevan
Berikut ini beberapa penelitian yang terkait dengan algoritma Vigenere cipher
dan Myszkowski transposition :
1. Setiawati, R. melakukan penelitian pada tahun 2014 yang berjudul
Implementasi Keamanan File TXT dan RTF dengan kombinasi Algoritma
Kriptografi Vigenere dengan Steganografi Least Significant Bit (LSB) pada
Gradasi Titik Hijau dalam File BMP. Implementasi penelitian ini
menghasilkan perangkat lunak yang dapat menjamin keamanan pesan file txt
dan rtf.
2. Pada tahun 2015, Shabara, S. telah melakukan penelitian dengan judul
Enkripsi SMS Pada Smartphone Berbasis Android dengan Metode Vigenere
dan Transposisi Kolom. Transposisi kolom yang digunakan adalah transposisi
kolom standar. Kekurangan dari penelitian ini yaitu menghasilkan panjang dua
kali dari pesan asli.
3. Bhowmick, A., Lal, A.V. & Ranjan, N. dalam jurnal yang berjudul Enhanced
6x6 Playfair Cipher Using Double Myszkowski Transposition yang
dipublikasikan tahun 2015 mengambil kesimpulan bahwa penggunaan
algoritma Myszkowski transposition dapat meningkatkan kekebalan terhadap
serangan. Namun demikian, pesan yang dihasilkan kehilangan karakter spasi
dan simbol spesial karena diabaikan saat proses enkripsi.

Universitas Sumatera Utara