Algoritma Kriptografi LANDASAN TEORI

Universitas Sumatera Utara

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 7 2. Integritas data data integrity Ditujukan untuk menjamin bahwa pesan masih asliutuh 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, menunjukkan pesan yang telah dikodekan, adalah kunci, adalah fungsi enkripsi dan adalah fungsi dekripsi Nacira Abdelaziz, 2005. Untuk setiap pesan 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 awalasli. 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 karakter plaintext menjadi 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; untuk ≥ = + 26 − 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