Aritmatika Modular Greatest Common Divisor GCD Algoritma Euclid

2.2.1. Aritmatika Modular

Aritmetika modular digunakan dalam proses enkripsi dan dekripsi pada algoritma Pohlig-Hellman. Enkripsi dapat dilakukan menghitung nilai pesan dipangkatkan dengan nilai kunci enkripsi yang didapat kemudian dengan melakukan modulo pada nilai bilangan prima yang ditentukan sebelumnya. Aritmatika modular sering dicontohkan sebagai pemahaman aritmatika jam. Kaisar,2004. Misalkan dalam operasi a mod m berarti menghasilkan sisa jika a dibagi dengan m. Bilangan m disebut modulus atau modulo, dan hasil arimetika modulo m terletak di dalam himpunan {0, 1, 2, …, n-1} sehingga dapat dinotasikan � ��� � = � sedemikian sehingga: m = n q + r, 0 ≤ r n 2.2.1

2.2.2. Greatest Common Divisor GCD

Pembagi bersama terbesar atau disingkat PBB Greatest Common Divisor atau GCD digunakan dalam rancangan algoritma Pohlig-Hellman pada saat penentuan kunci tambahan multiple-key. Kunci tambahan bersyarat harus merupakan anggota dari bilangan ganjil yang mana GCD antara bilangan ganjil tersebut dengan nilai totient yang didapat harus bernilai 1. Dalam notasi dapat dituliskan � � ∈ ���, K e ∈ �����, � = 1. Greatest Common Divisor atau GCD dari bilangan suatu a dan b adalah bilangan bulat terbesar d sedemikian sehingga d | a dan d | b. Dalam hal ini kita nyatakan bahwa GCD a,b = d. Misalkan dalam menentukan GCD 5,2 = 1. Didapati bahwa nilai a adalah 5 dan nilai b adalah 2. Untuk mempermudah dapat dilihat pada algoritma berikut ini. 1.1.Algoritma Greatest Common Divisor GCD function gcda,b while b ≠ 0 t := b b := a mod b a := t return a Universitas Sumatera Utara

2.2.3. Algoritma Euclid

Konsep pertama algoritma Euclid berasal dari Cina pada saat Dinasti Han sekitar tahun 200 SM dan 200 M. Algoritma Euclid adalah algoritma untuk mencari GCD dari dua buah bilangan bulat. Algoritma ini digunakan dalam menyederhanakan pecahan dengan membagikan pembilang dan penyebut dengan GCD dan juga untuk mencari penyelesaian bilangan bulat dari persamaan linear. Euclid adalah matematikawan Yunani yang menuliskan algoritma Euclid dalam bukunya yang berjudul “Element” yang sangat terkenal. Algoritma ini akan digunakan dalam rancangan algoritma Pohlig-Hellman dalam penentuan nilai bilangan kunci tambahan. Misalkan ditentukan dua buah bilangan bulat bukan negatif m dan n dimana m ≥ n. Maka algoritma Eulidean dapat mencari pembagi bersama terbesar dari m dan n. Mollin, 2007. Misalkan m = 11 dan n = 7, maka langkah-langkah perhitungan yang dilakukan ada algoritma Euclid adalah sebagai berikut : 1. Menghitung nilai r berdasarkan perhitungan m mod n adalah 11 mod 7 = 4. Karena didapat nilai r tidak sama dengan nol, maka fungsi GCD dipanggil kembali dengan parameter n,r GCD 7,4 2. Menghitung kembali nilai r berdasarkan perhitungan 7 mod 4 = 3. Karena r tidak sama dengan nol, maka fungsi GCD dipanggil kembali dengan parameter n,r = CGD 4,3 3. Menghitung kembali nilai r berdasarkan perhitungan 4 mod 3. Karena r tidak sama dengan nol, maka fungsi GCD dipanggil kembali dengan parameter n,r = GCD3,1 4. Menghitung kembali nilai r, yaitu 3 mod 1 = 0. Karena r sama dengan nol, maka akan menghasilkan nilai n = 1. Karena GCD 11,7 sama dengan satu maka kedua bilangan tersebut adalah relatif prima. Algoritma Euclid sangat efisien bahkan pada deretan angka yang panjang dan sering digunakan pada kriptografi. Berikut ini adalah algoritma untuk Universitas Sumatera Utara Eucledian yang dapat menghitung faktor persekutuan terbesar dari dua buah bilangan bulat.

1.2. Algoritma Euclidean