4. Karena kunci publik diketahui secara luas dan dapat digunakan setiap orang, maka cipherteks tidak memberikan informasi mengenai otentikasi
pengirim. 5. Tidak ada algoritma kunci-publik yang terbukti aman sama seperti block
cipher. Kebanyakan aalgoriam mendasakan keamanannya pada sulitnya memecahkan persoalan-persoalan aritmetik pemfaktoran, logaritmik, dsb
yang menjadi dasar pembangkitan kunci
2.2 Algoritma LUC
Algoritma ini merupakan salah satu jenis algoritma asimetri. Pada sub bab ini penulis akan menjelaskan tentang Algoritma LUC beserta cara kerja algoritma LUC itu
sendiri.
2.2.1 Perkembangan algoritma LUC
Pada tahun 1993, Smith dan Michael menyatakan bahwa algoritma LUC merupakan algoritma yang dijabarkan dari deret Lucas. Sehingga didapat rumus enkripsi dan
dekripsi dari barisan lucas tersebut. Algoritma LUC mempunyai ciri khas dari algoritma kriptografi asimetri yang
lain, dimana setiap katakter dari string berupa teks atau plainteks yang dimasukkan, lalu dikonversi kedalam bentuk bilangan dengan kode ASCII American Standard
Code for Information Interchange. Inputan file teks berupa file berecord, setip kalimat merupakan satu record. Plainteks dipecah kedalam blok berisi 2 karakter yang
kemudian dilakukannya enkripsi pada tiap-tiap blok. Cipherteks yang diperoleh merupakan merupakan hasil gabungan dari blok-blok plainteks yang telah di enkripsi.
Untuk proses dekripsi, tiap-tiap blok dikonversi kembali dengan kode ASCII untuk menghasilkan plainteks yang diinginkan. Besaran-besaran yang digunakan
pada Algoritma LUC adalah:
Universitas Sumatera Utara
a. Bilangan prima p dan q
b. Kode ASCII 255
c. Plainteks berupa file berecord
d. Kunci e merupakan public key dan kunci d yang bersifat private key.
2.3 Landasan Matematika Algoritma LUC
Dalam mempelajari algoritma kriptografi, sebaiknya memahami terlebih dahulu konsep-konsep dasar perhitungan matematis yang akan digunakan dalam suatu
algoritma kriptografi tersebut.
2.3.1 Aritmatika modulo
Aritmatika modulo merupakan salah satu peran yang penting dalam komputasi integer, khususnya pada aplikasi kriptografi. Operator yang digunakan pada aritmatika
modulo adalah mod modulo yang menyatakan sisa hasil pembagian. Diberikan a bilangan bulat dan m adalah bilangan bulat 0. Operasi a mod m
dibaca ”a modulo m” memberikan sisa yang merupakan hasil dari pembagian a
dengan m. Dengan kata lain, a mod m = r , sehingga a = m.q + r,
dengan 0 ≤ r m. Dinotasikan:
a mod m = r , = m.q + r, dengan 0 ≤ r m. Sebagai contoh:
Jika 11 mod 3 = 2 , maka 11 = 33 + 2.
2.3.2 Least Common Multiple LCM
Least Common Multiple LCM dari suatu himpunan bilangan adalah bilangan terkecil yang merupakan kelipatan dari setiap anggota himpunan itu. Juga merupakan bahasa
lain dari KPK Kelipatan Persekutuan Terkecil. Contoh, LCM dari 4 dan 6 dengan perhitungan manual dapat ditulis seperti dibawah ini:
Universitas Sumatera Utara
4 = 4, 8, 16, 24, 38, 32, 36, 40,… 6 = 6, 12, 18, 24,
30, 36, 42, … Kelipatan persekutuannya adalah bilangan-bilangan yang muncul pada kedua baris
geometri tersebut, yakni 12, 24, dan 36. Jadi, LCM dari 4 dan 6 adalah 12.
2.3.3 Fermat’s Little Theorem Teorema Little Fermat memberikan uji yang baik untuk ketidakprimaan. Peranan
penting Fermat’s Little Theorem dalam kriptografi adalah mempermudah perhitungan matematis prima sebagai dasar dari teknik enkripsi asimetris.
Untuk bilangan prima p dan bilangan bulat a , a
p
≡ a mod p. Di mana p adalah bilangan bulat dan a adalah urutan bilangan yang lebih kecil dari p. Jika
hasilnya ≠ 1, maka p bukan bilangan prima. Sebaliknya, jika hasilnya = 1, maka p bilangan prima. Berikut ini contoh penerapan metode Fermat:
a. Bila p = 6
Maka 1 ≤a 6, didapat a = {1, 2, 3, 4, 5}
a
p-1
mod p 1
6-1
mod 6 = 1
5
mod 6 = 1 2
6-1
mod 6 = 2
5
mod 6 = 2 3
6-1
mod 6 = 3
5
mod 6 = 3 4
6-1
mod 6 = 4
5
mod 6 = 4 5
6-1
mod 6 = 5
5
mod 6 = 5
Setelah melakukan perhitungan untuk memastikan apakah 6 bilangan prima atau tidak, ditemukan hasil ≠ 1 yaitu 2, 3, 4, 5, maka dipastikan bahwa 6 bukan
merupakan bilangan prima.
b. Bila p = 7
Maka 1 ≤ a 7, didapat a = {1, 2, 3, 4, 5, 6} a
p-1
mod p 1
7-1
mod 7 = 1
6
mod 7 = 1
Universitas Sumatera Utara
2
7-1
mod 7 = 2
6
mod 7 = 1 3
7-1
mod 7 = 3
6
mod 7 = 1 4
7-1
mod 7 = 4
6
mod 7 = 1 5
7-1
mod 7 = 5
6
mod 7 = 1 6
7-1
mod 7 = 6
6
mod 7 = 1
Hasil diatas menunjukkan perhitungan untuk memastikan apakah 7 bilangan prima atau tidak, ditemukan hasil dari semua perhitungan = 1, maka jelas bahwa 7
merupakan bilangan prima.
2.3.4. Algoritma Lehman
Algoritma Lehman membagi suatu bilangan yang akan diuji, misal p dengan bilangan prima kurang dari 256 pengujian, dengan cara membangkitkaan bilangan acak a yang
lebih kecil dari p dan dihitung a
p-12
mod p yang bernilai 1 atau -1. Berarti p berpeluang prima sebesar 50 yang apabila langkah ini dulang dan lolos sebanyak t
kali, maka akan menghasilkan sebuah bilangan prima p yang mempunyai kesalahan tidak lebih dari 12t.
2.3.5 Algoritma Euclidean Bilangan terbesar yang mampu membagi setiap seluruh anggota himpunan bilangan
tersebut dan menghasilkan bilangan bulat. Dua buah bilangan bulat a dan b , dimana salah satu dari keduanya tidak sama dengan 0, dikatakan relatif prima jika gcda,b =
1. Algoritma ini digunakan untuk mencari nilai pembagi persekutuan terbesar
PBB dari dua bilangan bulat. Algoritma ini didasarkan pada pernyataan bahwa ada dua buah bilangan bulat tak negatif yakni m dan n dimana nilai m
≥ n. Adapun tahap- tahap pada algoritma Euclidean adalah:
1. Jika n = 0 maka m adalah PBB m, n; stop. Kalau tidak yaitu n ≠ 0
lanjutkan ke langkah nomor 2. 2.
Bagilah m dengan n dan misalkan sisanya adalah r.
Universitas Sumatera Utara
3. Ganti nilai m dengan nilai n dan nilai n dengan nilai r, lalu ulang
kembali ke langkah nomor 1.
Algoritma Euclidean dapat digunakan untuk mencari dua buah bilangan bulat yang relatif prima. Contoh:
m = 80, n = 12 ; memenuhi syarat karena m ≥ n 80 = 6.12 + 8
12 = 1.8 + 4 8 = 2.4 + 0, sisa pembagi terakhir adalah 0 maka 80,12 = 4
2.3.6 Bilangan relatif prima Dua buah bilangan bulat a dan b dikatakan relatif prima jika FPB atau GCD greatest
common divisor dari a dan b bernilai 1.
Contoh : 17 dan 11 relatif prima sebab FPB 17, 11 = 1. Begitu juga 23 dan 7 relatif
prima karena FPB 23, 7 = 1. Tetapi 15 dan 3 tidak relatif prima sebab FPB 15, 3 = 3
≠ 1.
2.3.7 Invers Modulo Jika a dan m relatif prima, gcd a, m = 1, dan m 1, maka dapat menemukan invers
balikan dari a modulo m. Balikan a modulo m adalah bilangan bulat a
-1
, sehingga: aa
-1
≡ 1 mod m Dari definisi relatif prima, diketahui bahwa gcd a,m = 1 sehingga terdapat bilangan
bulat p dan q, sehingga pa + qm =1
yang mengimplikasikan bahwa pa + qm ≡ 1 mod m, karena qm
≡ 0 mod m, maka pa
≡ 1 mod m
Universitas Sumatera Utara
Sebagai contoh: karean gcd 4,9 = 1, maka invers modulo dari 4 mod 9 ada. 9 = 2. 4 + 1
Susunan persamaan diatas menjadi: -2 . 4 + 1 . 9 = 1. Dari persamaan terakhir, diperoleh -2 merupakan invers modulo dari 4 mod 9. Periksa bahwa :
-2.4 ≡ 1 mod 9 9 habis membagi -2. 4-1 = -9.
2.4 Prinsip Kerja Algoritma LUC