Gambar2.2. Skema Kriptografi Simetris Fauzana, 2013
2.2.2.
Algoritma Asimetris
Algoritma asimetris disebut juga dengan kriptografi kunci publik karena algortima ini memiliki kunci yang berbeda untuk enkripsi dan dekripsi, dimana enkripsi
menggunakan public key dan untuk dekripsinya menggunakan private key.Public key dan private key harus saling berpasangan secara matematis.Dengan
memberikan public key, pembuat kunci berhak memberikan dan mendapatkan public key agar pesan aman dan hanya bisa dibaca oleh si pembuat kunci.Dalam
kriptografi kunci asimetri, hampir semua algoritma kriptografinya menggunakan konsep kunci publik, seperti Rivest-Shamir-Adleman RSA, El-Gamal, Rabin
dan sebagainya Harahap, 2014. Kecuali algoritma Pohlig˗Hellman karena kunci enkripsi maupun kunci dekripsinya bersifat rahasia.Skema kriptografi asimetris
dapat dilihat pada Gambar 2.3.
Gambar 2.3 Kriptografi Asimetris Wandani, 2012
.
2.3. Teori Bilangan
2.3.1. Faktor Persekutuan Terbesar
Faktor persekutuan Terbesar atau Greatest common divisor GCD merupakan bilangan bulat terbesar yang merupakan pembagi yang sama dari dua bilangan
bulat. Misalkan a dan b adalah 2 dua bilangan bulat yang tidak nol. Greatest common divisor GCD dari a dan b adalah bilangan bulat terbesar c sedemikian
Algoritma Enkripsi
Algoritma Dekripsi
Kunci Rahasia
Teks Asli Teks Asli
Ciphertext
Universitas Sumatera Utara
sehingga c|a dan c|b. Greatest common divisor GCD dari a dan b dapat dinotasikan dengan gcda,b Munir, 2003.
2.3.2. Euclid
Salah satu cara untuk mendapatkan gcda,b adalah membuat daftar semua factor dari a, membuat daftar semua dari b, dan kemudian mencari factor yang terbesar
yang ada dalam kedua daftar. Akan tetapi, untuk bilangan yang sangat besar, membuat daftar factor bukanlah sesuatu yang mudah. Ada cara yang jauh lebih
efisien untuk mendapatkan gcda,b yaitu dengan menggunakan algoritma Euclid Eulidean algorithm, yang seperti halnya dengan Chinese Remainder Theorem
merupakan algoritma penting
yang berusia lebih dari 2000 tahun Kromodimoeljo, 2010.
Contoh : GCD50,20 adalah :
50 mod 20 = 10 20 mod 10 = 0
Karena telah menghasilkan sisa pembagian sama dengan 0, maka proses berakhir dan didapatlah GCD50,20 = 20
2.3.3. Algoritma Euclid dan Extended Euclid
Teorema yang digunakan sebagai dasar dari algortima Euclid adalah sebagai berikut:
Jika = qb + r maka gcd ,b = gcdb,r………….……8.3.1
Algoritma Euclid menggunakan rumus diatas secara berulang untuk men- dapatkan gcd, yaitu dengan memperkecil kedua bilangan yang dijadikan patokan
untuk gcd setiap kali mengulang, tanpa merubah nilai gcd itu sendiri. Hasil dari komputasi gcd di dapat saat kedua patokan untuk gcd tidak dapat diperkecil lagi.
Untuk melakukan komputasi d = gcd ,b, pertama dilakukan
preprocessing sebagai berikut :
Universitas Sumatera Utara
1. Jika = 0 maka d = |b| dan jika b = 0 maka d = | | gcd tidak dapat
dikomputasi jika = b = 0.
2. Karena gcd ,b = gcd- ,b = gcd ,-b = gcd- ,-b, kita dapat
mentransformasikan komputasi menjadi d = gcd| |,|b|, jadi kedua
bilangan menjadi positif. 3.
Karena gcd ,b = gcdb, , kita dapat saling tukar dan b jika b, dengan hasil
b. 4.
Jika = b maka d = . Setelah preprocessing, jika
0, b 0, b, maka komputasi sudah dirubah menjadi d = gcd
,b dengan b 0 Kromodimoeljo, 2010. 2.3.4.
Chinese Remainder Theorem Chinese Remainder Theorem CRT ditemukan oleh seorang matematikawan
Cina bernama Sun-Tsu juga disebut Sun Tse sekitar 100 A.D anno domini atau 100 M Stallings, 2011. Chinese Remainder Theorem teorema sisa Cina,
dinamai setelah masalah peninggalan Cina yang melibatkan sistem persamaan atau kekongruenan linear, menyatakan bahwa ketika modulus dari sistem
kekongruenan linear yang berpasangan relatif prima, ada solusi unik dari sistem modulo produk dari modulus. Berikut ini adalah pertanyaan atau teka-teki Sun-
Tsu Rosen, 2012.
“Ada beberapa hal yang bilangannnya tidak diketahui. Bila dibagi dengan 11,
sisanya adalah 2, ketika dibagi oleh 7, sisanya adalah 3, dan ketika dibagi 5,
sisanya adalah 2. Berapakah bilangan itu?” Teka-teki tersebut dapat dituliskan sebagai berikut.
x ≡ 2 mod 11
x ≡ 3 mod 7
x ≡ 2 mod 5
Apa solusi dari sistem kekongruenan berikut ini? Sebelum menyelesaikan teka-teki tersebut, berikut ini adalah teorema sisa Cina
Chinese Remainder Theorem Rosen, 2012.
Misalkan m
1
, m
2
, …, m
n
adalah bilangan bulat positif yang relatif prima berpasangan pairwise relatively prime yang lebih besar dari 1 dan a
1
, a
2
, …, a
n
merupakan bilangan bulat sembarang. Maka sistem kekongruenan linear
Universitas Sumatera Utara
x ≡ a
1
mod m
1
, x
≡ a
2
mod m
2
, x
≡ a
n
mod m
n
memiliki sebuah solusi unik modulo m = m
1
m
2
…m
n
. Terdapat solusi x dengan 0 ≤ x m, dan semua solusi lainnya adalah kongruen modulo m untuk solusi ini.
Solusi dari penyelesaian teka-teki Sun-Tsu tersebut adalah sebagai berikut Wandani, 2012.
1. Hitung hasil perkalian dari keseluruhan modulus.
M = m
1
m
2
…m
n
M = 11 × 7 × 5 = 385 2.
Buat himpunan penyelesaian untuk masing-masing persamaan dari bilangan terkecil hingga hasil perkalian modulus M.
x
1
= {2, 13, 24, 35, 46, 57, 68, 79, 90, 101, 112, 123, 134, 145, 156, 167,
178, 189, 200, 211, 222, 233, 244, 255, 266, 277, 288, 299, 310, 321,
332, 343, 354, 365, 376} x
2
= {3, 10, 17, 24, 31, 38, 45, 52, 59, 66, 73, 80, 87, 94, 101, 108, 115,
122, 129, 136, 143, 150, 157, 164, 171, 178, 185, 192, 199, 206, 213,
220, 227, 234, 241, 248, 255, 262, 269, 276, 283, 290, 297, 304, 311,
318, 325, 332, 339, 246, 353, 360, 367, 374, 381} x
3
= {2, 7, 12, 17, 22, 27, 32, 37, 42, 47, 52, 57, 62, 67, 72, 77, 82, 87, 92,
97, 102, 107, 112, 117, 122, 127, 132, 137, 142, 147, 152, 157, 162,
167, 172, 177, 182, 187, 192, 197, 202, 207, 212, 217, 222, 227, 232,
Universitas Sumatera Utara
237, 242, 247, 252, 257, 262, 267, 272, 277, 282, 287, 292, 297, 302,
307, 312, 317, 322, 327, 332, 342, 347, 352, 357, 362, 367, 372, 377,
382} 3.
X merupakan irisan dari keseluruhan himpunan penyelesaian tersebut. X = x
1
∩ x
2
∩ … ∩ x
n
X = x
1
∩ x
2
∩ x
3
= 332 4.
Agar tercapai seluruh bilangan yang memenuhi x, maka dihitung kelipatan persekutuan terkecil Least Common Multiple dari ketiga modulus
interval yang memenuhi x.
Berikut ini merupakan rumus untuk mencari LCM dari dua bilangan bulat positif Rosen, 2012.
ab = GCDa,b . LCMa, b ………….…… 8.3.2
Dari persamaan di atas dapat disimpulkan: GCD11,7,5 = 1 dan LCM3,5,7 = 385
Sehingga x memenuhi akan bilangan dalam interval 105 dimulai dari 23, yaitu x = 332 ± k × 385. Atau interval ini dapat dituliskan:
x X ± k × LCM m
1
,m
2
, …,m
n
Cara yang dapat digunakan untuk menyelesaikan teka-teki Sun-Tsu menurut Rosen 2012 adalah sebagai berikut.
1. Hitung hasil perkalian dari keseluruhan modulus.
M = m
1
m
2
…m
n
M = 11 × 7 × 5 = 385 2.
Hitung hasil bagi dari M dengan tiap-tiap modulus. M
n
= Mm
n
M
1
= 38511 = 35 M
2
= 3857 = 55 M
3
= 3855 = 77 3.
Hitung invers modulo y
n
dari M
n
mod m
n
. Maka diperoleh: y
1
= 2, y
2
= 6 dan y
3
= 2 4.
Diperoleh solusi x dari teka-teki dengan menghitung rumus berikut ini.
Universitas Sumatera Utara
x ≡ a
1
M
1
y
1
+ a
2
M
2
y
2
+ … + a
n
M
n
y
n
x ≡ a
1
M
1
y
1
+ a
2
M
2
y
2
+ a
3
M
3
y
3
≡ 2.35.2 + 3.55.6 + 2.77.2 x
≡ 1487 ≡ 332 mod 385. 2.3.5.
Inversi Modulo Inversi modulo biasanya dilambangkan dengan m
-1
yang disebut inversi dari m m mod n apabila m
-1
.m mod n =1
contoh :
Berapa inversi dari 7 mod 43…? Jawab :
Jadi , m
-1
dari 6 mod 43 = 6 2.3.6.
ɸ -Euler ɸ-Euler adalah fungsi yang mengembalikan jumlah bilangan integer a yang
0 a n dan a relatif prima dengan n a disebut dengan n bila gcda,n = 1. Beberapa hasil fungsi
ɸn adalah : 1.
ɸ1 = 0 2.
ɸp = p -1 jika p adalah bilangan prima. Sebab semua elemen {1,… , p – 1} merupakan prima relative dengan p.
3. ɸm.n = ɸm. ɸn jika m merupakan prima relatif dengan n.
4. ɸp
e
= p
e
- p
e-1
dengan p adalah bilangan prima Sadikin, 2012.
Contoh :
Temukan nilai ɸ6…?
Jawab :
Sebab bilangan a dengan 0 a 6 dan merupakan prima relatif dengan 6 adalah 1,5 maka
ɸ6 = ɸ3. ɸ2 = 2 x 1 = 2
Universitas Sumatera Utara
2.4. Sistem Kriptografi Affine Cipher