Teori Bilangan Integer LANDASAN TEORI

11 2.3.3. Fungsi hash Fungsi hash adalah sebuah fungsi yang masukannya adalah sebuah pesan dan keluarannya adalah sebuah sidik pesan message fingerprint Ariyus, 2008. Fungsi hash sering disebut dengan fungsi hash satu arah one-way function, message digest, fingerprint, fungsi kompresi dan message authentication code MAC yang merupakan suatu fungsi matematika yang mengambil masukan panjang variabel dan mengubahnya ke dalam urutan biner dengan panjang yang tetap. Fungsi hash biasanya diperlukan bila ingin membuat sidik jari dari suatu pesan. Sidik jari pada pesan merupakan suatu tanda bahwa pesan tersebut benar-benar berasal dari orang yang diinginkan Ariyus, 2008. Beberapa fungsi hash yang banyak dipakai adalah MD5 dan SHA.

2.4. Teori Bilangan Integer

2.4.1. Faktor Persekutuan Terbesar Greatest Common Divisor 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. GCD dari a dan b adalah bilangan bulat terbesar c sedemikian sehingga c|a dan c|b. GCD dari a dan b dapat dinotasikan dengan gcda,b Nasution, 2015. Contoh : GCD 36,88 = … ? 36 mod 88 = 36 88 mod 36 = 16 36 mod 16 = 4 16 mod 4 = 0 Jadi, GCD dari 36,88 adalah 4 2.4.2. Aritmatika Modulo Aritmatika modulo merupakan sisa hasil pembagian dua bilangan. Operator yang digunakan dalam aritmatika modulo adalah mod. Misalkan, jika bilangan integer a dibagi dengan bilangan integer yang lebih besar dari nol b 0, maka akan Universitas Sumatera Utara 12 menghasilkan sisa bagi r remainder dengan hasil bagi s quotient. Sehingga dapat dinotasikan sebagai berikut Lipschutz Lipson, 2007. a mod b = r sedemikian sehingga a = bs + r , dengan 0 ≤ b n ....... 2.1 Sebagai contoh, jika 23 mod 4 = 3, maka 23 = 4 × 5 + 3. Jika a negatif, maka bagi |a| dengan b mendapatkan sisa bagi r ’ Munir, 2006. Sehingga didapatkan: a mod b = b – r’, di mana r’ ≠ 0 dan a 0 .......... 2.2 Sebagai contoh, jika |-23| mod 4 = 3, maka -23 mod 4 = 4 – 3 = 1. Cormen, et al. 2009 menuliskan di dalam bukunya, untuk setiap bilangan bulat a dan setiap bilangan bulat positif b, nilai a mod b adalah sisa residu dari hasil bagi ab: a mod b = a – b ab, di mana 0 ≤ a mod b b .......... 2.3 Contohnya adalah 23 mod 4 = 23 – 4234 = 23 – 45 = 23 – 20 = 3. 2.4.3. Algoritma Extended Euclid Teorema yang digunakan sebagai dasar dari algoritma Extended Euclid adalah sebagai berikut: Jika = qb + r maka gcd,b = gcdb,r ………….……2.4 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. 2.4.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?” Universitas Sumatera Utara 13 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 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 ………….……………….…………….…… 2.5 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, 237, 242, 247, 252, 257, 262, 267, 272, 277, 282, 287, 292, 297, 302, Universitas Sumatera Utara 14 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 ………….……………….…………….…… 2.6 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. Persamaan 2.7 berikut merupakan rumus untuk mencari LCM dari dua bilangan bulat positif Rosen, 2012. ab = GCDa,b . LCMa, b ………….…… 2.7 Dari persamaan di atas dapat disimpulkan: GCD11,5,7 = 1 dan LCM11,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 ………….……………….…………….…… 2.8 M = 11 × 7 × 5 = 385 2. Hitung hasil bagi dari M dengan tiap-tiap modulus. M n = Mm n ………….……………….…………….…… 2.9 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. x ≡ a 1 M 1 y 1 + a 2 M 2 y 2 + … + a n M n y n ………….……………….… 2.10 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. Universitas Sumatera Utara 15 2.4.5. Bilangan prima Bilangan prima adalah bilangan bulat positif a, dimana a ≥ 2 hanya dapat dibagi dengan 1 dan bilangan itu sendiri. Seluruh bilangan prima adalah bilangan ganjil, kecuali 2 yang merupakan bilangan genap. Contoh bilangan prima adalah 2, 3, 5, 7, 11, 13, 17, …. Untuk menguji apakah n merupakan bilangan prima atau bukan, kita cukup membagi n dengan sejumlah bilangan prima, dengan syarat bilangan prima ≤ √n. Jika n habis dibagi dengan salah satu dari bilangan prima tersebut, maka n bukan bilangan prima, tetapi jika n tidak habis dibagi oleh semua bilangan prima tersebut, maka n adalah bilangan prima. Terdapat metode lain yang dapat digunakan untuk menguji keprimaan suatu bilangan bulat, yang terkenal dengan Teorema Fermat. Berikut pernyataan dari Teorema Fermat : Jika p adalah bilangan prima dan a adalah bilangan bulat yang tidak habis dibagi dengan p, yaitu GCDa,p = 1, maka : a p-1 ≡ 1 mod p Mollin, 2007. Teorema Fermat ini memiliki kelemahan yaitu terdapat bilangan bulat bukan prima p sedemikian sehingga a p –1 ≡ 1 mod p. Bilangan bulat p seperti itu disebut bilangan prima semu pseudoprimes. Bilangan bulat a yang menyebabkan a p –1 ≡ 1 mod p, dimana p adalah bilangan prima semu disebut dengan bilangan carmichael atau fermat’s liar. Akan tetapi, bilangan prima semu relatif jarang ditemukan. Contoh : Apakah p = 49 adalah bilangan prima? a. Pilihlah sembarang bilangan bulat positif a dengan syarat 1ap. b. Hitung a p-1 mod p sebanyak dua kali untuk menghindari ditemukan bilangan prima semu. Jika salah satu hasil perhitungan tidak sama dengan 1, maka bilangan bulat p bukan bilangan prima. 3 48 mod 49 = 43 6 48 mod 49 = 8 Karena a p-1 mod p ≠ 1, maka bilangan bulat p = 49 bukan bilangan prima

2.5. Sistem Kriptografi Hill Cipher