• Tidak ada hasil yang ditemukan

Implementasi Dan Analisis Algoritma Massey-Omura Dan Algoritma Even-Rodeh Dalam Pengamanan Dan Kompresi File Dokumen

N/A
N/A
Protected

Academic year: 2017

Membagikan "Implementasi Dan Analisis Algoritma Massey-Omura Dan Algoritma Even-Rodeh Dalam Pengamanan Dan Kompresi File Dokumen"

Copied!
11
0
0

Teks penuh

(1)

BAB 2

TINJAUAN PUSTAKA

8.1.Kriptografi

Kriptografi memiliki arti sebagai suatu bidang ilmu yang mempelajari metode-metode pengiriman pesan dalam bentuk rahasia sehingga hanya pihak yang dituju saja yang dapat menghilangkan penyamaran dari pesan dan membaca pesan asli. Pesan asli disebut plainteks, dan pesan tersamarkan disebut cipherteks. Proses untuk mengubah plainteks menjadi cipherteks disebut enkripsi. Dan sebaliknya yaitu proses mengembalikan cipherteks menjadi plainteks yang dapat dilakukan oleh penerima yang memiliki kunci untuk menghilangkan samaran pesan disebut dekripsi.

Hingga akhir abad ke 20 kriptografi secara umum dianggap sebagai seni. Hal ini disebabkan karena kriptografi pada masa tersebut digunakan untuk mengkonstruksi kode yang baik, atau memecahkan kode yang sudah ada menggunakan kreativitas dan pengertian mengenai bagaimana kode bekerja. Pengguna terbesar kriptografi pada masa ini adalah pemerintah dan organisasi militer. Pada awal tahun 1970 dan 1980an, pandangan bahwa kriptografi merupakan seni berubah secara drastis. Perubahan disebabkan dengan munculnya teori-teori kompleks yang mengawali kajian mendalam terhadap kriptografi sebagai sebuah disiplin ilmu.

(2)

atau transaksi seperti mengamankan transaksi kartu kredit melalui internet, verifikasi pembaharuan sistem operasi, dan proses otentikasi dengan menggunakan password. Kriptografi telah berevolusi dari sebuah kumpulan perangkat yang ditugaskan untuk mengamankan komunikasi rahasia untuk keperluan militer menjadi sebuah ilmu yang dapat digunakan untuk mengamankan sistem untuk orang biasa diseluruh dunia seperti (Katz & Lindell 2015).

2.1.1 Jenis kriptografi berdasarkan kunci enkripsi

Berdasarkan kunci yang digunakan terdapat dua jenis kriptografi, yaitu: 1. Kriptografi simetris atau private key cryptosystem

Pada skema kriptografi private key, kedua pihak yang melakukan komunikasi memilih sebuah kunci (�) yang akan digunakan untuk mengamankan pesan. Pihak pertama dapat mengirimkan sebuah pesan atau plainteks yang telah diamankan menggunakan sebuah kunci yang telah dipilih untuk mengenkripsi atau “mengacak” pesan. Pihak kedua yang telah menerima cipherteks akan mendekripsi atau “menguraikan” pesan dengan menggunakan kunci yang sama. Simetris dari skema ini terletak pada penggunaan kunci yang sama untuk proses enkripsi dan dekripsi pesan. Beberapa contoh sistem kriptografi simetris antara lain DES (Data Encryption Standard), Blowfish, Twofish, Triple-DES, IDEA, Serpent, dan yang terbaru AES (Advanced Encryption Standard). Skema kriptografi simetris dapat dilihat pada Gambar 2.2.

Gambar 2.1 Skema Kriptografi Simetris (Katz & Lindell 2015)

2. Kriptografi asimetris atau kriptografi kunci publik

(3)

pesan. Untuk mendekripsi cipherteks yang dikirimkan oleh pihak pengirim, pihak penerima menggunakan private key (sk) (Katz & Lindell 2015).

2.1.2 Kelebihan dan kelemahan kriptografi kunci publik Kelebihan kriptografi kunci publik (Katz & Lindell 2015):

1. Pihak yang berkomunikasi tidak perlu berbagi kunci secara rahasia sebelum melakukan komunikasi. Kedua pihak dapat bermokunikasi secara aman meskipun jalur komunikasi antara kedua pihak selalu diawasi.

2. Kriptografi kunci publik lebih sesuai pada lingkungan dimana pihak yang belum pernah berinteraksi sebelumnya menginginkan kemampuan untuk berkomunikasi secara aman.

3. Enkripsi kunci publik memperkenankan distribusi kunci dilakukan pada saluran publik. Hal ini dapat menyederhanakan distribusi dan pembaharuan material kunci.

4. Kriptografi kunci publik mengurangi kebutuhan user untuk menyimpan banyak secret key.

Kelemahan kriptografi kunci publik:

a. Pada beberapa penerapan, kriptosistem kunci publik secara umum lebih lambat dibandingkan kriptosistem simetris sehingga kurang sesuai untuk enkripsi dalam ukuran besar (Blahut, 2014).

2. Dalam prakteknya, cipher asimetris dianggap lebih lambat dibandingkan dengan cipher simetris seperti DES dan AES (Hoffstein, et al. 2014).

8.2.Three-Pass Protocol

Pada kriptografi, Three Pass-Protocol merupakan sebuah protokol atau kerangka kerja untuk mengirim pesan secara aman tanpa harus memerlukan pertukaran kunci. Three-Pass Protocol pertama kali dikembangkan oleh Adi Shamir sekitar tahun 1980 dan dikatakan Three-Pass-Protocol karena pengirim dan penerima melakukan pertukaran pesan sebanyak tiga kali.

(4)

gembok. Berikut merupakan cara kerja Three-Pass Protocol (Kanomori & Yoo, 2009):

1. Alice memasukkan pesan yang ingin dikirimkan kepada Bob ke dalam kotak dan mengunci kotak dengan gembok miliknya. Kotak kemudian dikirimkan ke Bob. 2. Bob menerima kotak yang dikirimkan dari Alice dan mengunci kotak dengan

gembok miliknya dan mengirimkan kotak kembali ke Alice. Pada tahap ini kotak memiliki dua buah gembok.

3. Alice membuka gembok miliknya dari kotak dan mengirimkan kotak kembali ke Bob.

4. Bob membuka gembok miliknya dari kotak dan mendapatkan pesan yang dikirimkan oleh Alice.

8.3.Algoritma Massey-Omura

Massey-Omura Cryptosystem adalah cipher berbasis eksponensial yang diusulkan oleh James Massey dan Jim K. Omura pada 1982 yang didasarkan pada Shamir’s three-pass protocol atau Shamir’s no-keys protocol. Keuntungan dari kriptosistem ini adalah tidak diperlukan distribusi atau pertukaran kunci diantara kedua pihak yang berkomunikasi (Blahut, 2014).

Sebelum melakukan komunikasi dengan menggunakan Massey-Omura Cryptosystem, para koresponden harus memiliki kunci enkripsi dan dekripsi terlebih dahulu dengan syarat (Hyka & Benusi 2014):

1. Kedua pihak menyetujui sebuah bilangan prima (p) yang sudah tetap dan diketahui secara publik sebagai modulus dengan syarat p > L. Di mana L adalah integer terbesar yang merepresentasikan sebuah karakter pesan.

2. Masing-masing pengguna sistem secara rahasia memilih sebuah bilangan bulat acak � atau � antara 1 dan p−1 sebagai calon kunci enkripsi dengan syarat gcd(�,� −1) = 1 dan gcd(�,� −1) = 1

(5)

Tahap-tahap pengiriman pesan dengan Massey-Omura Cryprosystem, dengan anggapan bahwa Bob ingin mengirim sebuah pesan M ke Alice adalah (Hyka & Benusi 2014):

1. Sebelum mengirimkan pesan M kepada Bob, Alice harus mengkonversi pesan alfanumerik menjadi pesan numerik M. Kemudian, Alice menghitung �1 =

��� (���) dan mengirim hasil komputasi kepada Bob.

2. Tanpa perlu mengerti isi dari pesan, Bob mengenkripsi pesan dengan kunci � miliknya dan mengirimkan hasil perhitungan �2 =�1��(����) =

����� (���) yang didapat kembali ke Alice.

3. Alice mendekripsi pesan secara parsial dengan kunci � dan menghitung �3 =

�2��(����) = ������� (����) =��� (����) dan mengirim hasil komputasi ke Bob.

4. Bob kemudian menyelesaikan proses dekripsi dengan kunci � dan

mengkomputasi �4 = �3��(���) = ���� (����) =.

8.4.Aspek Matematika pada Massey-Omura Cryptosystem

2.4.1 Aritmatika modular

Aritmatika modular digunakan dalam kriptografi dengan menggunakan mod atau modulo sebagai operator. Mod adalah operator yang digunakan untuk memberikan hasil sisa bagi antara dua bilangan. Misalkan �,� ∈ ℤ dengan �> 0. Perhitungan m ���� akan menghasilkan sisa bagi r, atau dalam model matematika dapat ditulis:

�����= � (1) sedemikian hingga:

� =� . �+�, di mana �= �÷� dan 0≤ �<� (2) Contoh: 27 ��� 4 = 1, maka 27 = 4 . 6 + 1

Apabila m bernilai negatif, maka sisa bagi yang didapat dari |−�| dibagi dengan

� adalah r’ dan untuk mendapatkan r dicari � − �′ sedemikian hingga:

(6)

2.4.2 Faktor persekutuan terbesar (Greatest Common Divisor (GCD))

Faktor persekutuan dari dua buah bilangan bulat � dan � adalah bilangan bulat positif

� yang dapat membagi kedua bilangan. Faktor persekutuan terbesar dari � dan � adalah bilangan bulat terbesar dari d dimana �|� dan �|�. Faktor persekutuan terbesar dari � dan � dinotasikan sebagai gcd(�,�). Metode yang umum digunakan untuk mencari gcd adalah algoritma Euclidean (Hoffstein, et al. 2014). Algoritma Euclidean menggunakan hasil sisa bagi dan dapat ditulis sebagai � =� .�+�, dimana � adalah faktor pengali dan � adalah sisa bagi atau mod.

Contoh: pencarian gcd(2024, 748) :

2024 = 748 . 2 + 528

748 = 528 . 1 + 220

528 = 220 . 1 + 88

220 = 88 . 2 + 44

88 = 44 . 1 + 0

Maka, gcd(2024, 748) adalah 44. Terdapat sebuah sebutan khusus untuk kasus di mana gcd � dan � adalah 1, yaitu relatif prima.

2.4.3 Relatif prima atau coprime

Dua buah bilangan bulat � dan � adalah relatif prima bila Greatest Common Divisor (GCD) kedua bilangan tersebut adalah 1. Atau dapat ditulis dengan gcd(�,�)= 1.

2.4.4 Inversi modulo

�−1 disebut inversi dari ��� apabila gcd(,) = 1 dan −1. (���) = 1. Sebagai contoh, pencarian invers dari 27 (��� 4) dapat dilihat pada Tabel 2.1:

Tabel 2.1 Penyelesaian Invers

Maka, invers dari 27 (��� 4) adalah 3.

�−1

1 2 3

(7)

8.5.Kompresi Data

Kompresi Data terdiri dua kata yaitu kata “data” yang secara umum digunakan untuk mendefinisikan informasi dalam bentuk digital yang dioperasikan oleh program komputer, dan “kompresi” yang berarti sebuah proses untuk menghilangkan redudansi. Maka, kompresi data memiliki arti sebagai sebuah metode atau algoritma yang secara efisien dirancang untuk merepresentasi data dengan mode redudansi yang rendah atau menghilangkan redudansi di dalam data. Tujuan utama dari kompresi data adalah untuk mewakili data terkompresi dalam bentuk digital dengan bit sesedikit mungkin namun tetap memenuhi persyaratan minimal yang diperlukan untuk merekonstruksi data kembali menjadi data asli. Algoritma kompresi data tidak akan bekerja apabila tidak terdapat algoritma dekompresi data. Dekompresi data adalah teknik yang digunakan untuk mengembalian data yang telah terkompresi ke ukuran semula.

Kompresi data bekerja dengan dua konsep sederhana yaitu mengurangi jumlah simbol unik yang terdapat di dalam data dan mengencoding simbol dengan frekuensi tinggi menjadi bit yang lebih sedikit. Setiap algoritma kompresi data fokus melakukan salah satu dari dua konsep tersebut. Algoritma kompresi data mentransformasi data dengan mengurangi jumlah simbol atau mengambil keuntungan dari perbedaan jumlah frekuensi simbol dan mengencoding simbol dengan frekuensi tinggi dengan bit yang lebih sedikit (McAnlis & Haecky 2016).

2.5.1 Parameter analisis algoritma kompresi

Terdapat beberapa parameter yang digunakan untuk menganalisis kinerja metode kompresi, antara lain:

1. Ratio of Compression (Rc) adalah perbandingan ukuran data sebelum dan setelah dilakukan kompresi yang dirumuskan sebagai:

��= ������������������

���������ℎ��������

(8)

2. Compression Ratio (Cr) adalah persentasi besar data setelah dikompresi yang didapatkan dengan menghitung perbandingan ukuran data sesudah kompresi dan data sebelum kompresi yang dirumusakan sebagai:

��= ���������ℎ��������

������������������ � 100%

Misalkan didapatkan Compression Ratio sebesar 40%. Hal ini menunjukkan bahwa ukuran data setelah dikompresi hanya 40% dari ukuran file asli.

3. Redudancy (Rd) merupakan kelebihan yang terdapat didalam data sebelum dilakukan kompresi. Kelebihan data ini dapat diketahui dengan menghitung selisih perbandingan ukuran data setelah kompresi dan data sebelum kompresi, yang dirumuskan sebagai:

��= 100% − ���p������������

Nilai 65% yang didapatkan memiliki arti data sebelum kompresi memiliki kelebihan data sebesar 65%.

4. Running Time adalah waktu yang dibutuhkan sistem untuk mengerjakan sebuah proses. Semakin kecil waktu yang digunakan oleh sistem, maka kinerja algoritma semakin efisien.

2.5.2 Jenis kompresi data berdasarkan output 1. Lossy Compression

(9)

2. Lossless Compression

Pada kompresi file teks metode Lossy Compression tidak sesuai untuk digunakan, di mana pada file teks hilangnya karakter walaupun hanya satu buah dapat menghasilkan teks yang salah, ambigu, atau tidak dapat dimengerti. File seperti ini harus dikompresi dengan metode lossless compression. Pada metode lossless compression, hasil yang didapat identik dengan data original sebelum proses kompresi. Beberapa algoritma yang tergolong jenis metode ini antara lain FLBE, VLBE, Even-Rodeh Code, Huffman Code, 7z, ace, bow, Zip, rar.

8.6.Algoritma Even-Rodeh

Algoritma kompresi Even-Rodeh dikembangkan oleh Shimon Even dan Michael Rodeh pada tahun 1978 yang merupakan algoritma berjenis lossless compression. Ide dasar dibalik algoritma ini adalah untuk menuliskan panjang dari string sebelum menuliskan string tersebut secara rekursif sampai kepada sebuah length yang dapat direpresentasikan pada fixed-size field. Untuk membaca representasi string asli, setiap string panjang akan memberitahukan bagaimana cara menemukan string selanjutnya. Diperlukan sebuah cara untuk menentukan apakan string selanjutnya adalah string panjang atau string asli. Yaitu dengan merepresentasikan string panjang tanpa 0 didepannya dan menuliskan sebuah angka 0 sebelum string asli (Even & Rodeh, 1978).

Tahap-tahap pembentukan kode Even-Rodeh dengan n sebagai indeks dari karakter yang telah diurutkan adalah sebagai berikut:

1. Bila n < 4, prepend atau tambah pada bagian awal kode dengan 3-bit representasi binari n.

2. Bila n ≥4:

a. Set kode menjadi bit 0

b. Prepend kode dengan representasi binari n. c. Set panjang bit n sebagai nilai n.

d. Prepend kode dengan representasi binari n. e. Ulangi langkah c hingga panjang bit n ≥ 4.

(10)

Tabel 2.3 Kode Even-Rodeh

Tabel 2.4 Jumlah bit kode ER berdasarkan variasi karakter

n Jumlah bit ER

1. Tengku Surya Pramana (2013), dalam skripsi yang berjudul “Implementasi Massey-Omura Cryptosystem dan Lehmann Prime Generator untuk keamanan Email pada Mozilla Thunderbird”, menyatakan bahwa waktu eksekusi program berbanding lurus dengan besar bilangan prima dan kunci. Di mana rata-rata waktu enkripsi lebih lama dibandinggkan dengan waktu dekripsi.

(11)

3. Ade Rani Abdullah (2016), dalam skripsi yang berjudul “Perbandingan Algoritma Even-Rodeh dan Algoritma Variable Length Binary Encoding (VLBE) pada Kompresi File Teks”, menyatakan bahwa algoritma Even-Rodeh dan algoritma VLBE dipengaruhi oleh jumlah variasi karakter.

Gambar

Tabel 2.4 Jumlah bit kode ER berdasarkan variasi karakter

Referensi

Dokumen terkait

Pada pengerjaan skripsi dengan judul Perbandingan Algoritma Fibonacci Code Dan Inverted Elias Gamma Code dalam Kompresi File Teks, penulis menyadari bahwa banyak pihak

Semakin besar ukuran file dan kunci yang digunakan atau diproses maka waktu proses menjadi semakin lama dan semakin panjang digit bilangan prima yang digunakan, jumlah

Klambir V No.5 Medan Helvetia Alamat Orang Tua : Perum.. Batu Batam

Tahapan ini dilakukan agar penulis mengetahui proses kompresi pada file dokumen menggunakan algoritma Elias Gamma Code Dan algoritma Goldbach Code yang memiliki tujuan untuk

Penyandian Data Teks Dengan Algoritma Elgamal Dan Algoritma Kompresi Data Dengan Algoritma Elias Gamma Code.. Universitas

Penyandian Data Teks Dengan Algoritma Elgamal Dan.. Algoritma Kompresi Data Dengan Algoritma Elias

Kompresi file teks dilakukan dengan membaca string pada file teks dan mengkodekan string berdasarkan frekuensi data kedalam Elias Delta Code atau Unary

Model kompresi file dengan menggunakan algoritma Inverted Elias Delta yaitu, dengan membangun biner Inverted Elias Delta dulu, kemudian mengganti biner file yang