Algoritma Percobaan Bilangan Prima Miller-Rabin

2.4. Algoritma Percobaan Bilangan Prima Miller-Rabin

Teorema kecil Fermat menjelaskan bahwa jika adalah bilangan prima, maka berlaku: − , untuk setiap bilangan bulat dan ∤ . Jika kedua sisi dikalikan dengan , maka teorema Fermat akan menjadi . Selanjutnya dikatakan bahwa adalah witness terhadap jika . Witness terhadap dikombinasikan dengan teorema Fermat cukup untuk membuktikan tanpa keraguan bahwa adalah komposit. Sedangkan cara untuk menilai kemungkinan bahwa adalah prima, dengan mencoba berbagai nilai , , dan seterusnya. Jika salah satunya adalah witness terhadap , maka disimpulkan bahwa adalah komposit. Akan tetapi jika di antaranya tidak ada witness terhadap , maka diduga adalah prima. Diketahui sebuah bilangan komposit = ∙ ∙ , dan tentu saja bilangan ini memiliki witness. Dan ternyata setelah diteliti, bilangan tersebut tidak memiliki witness. Dengan kata lain , untuk setiap bilangan bulat . Dialah R.D. Carmichael yang pada tahun 1910 telah menemukan bilangan komposit yang tidak memiliki witness ini, dan dia menyebutnya dengan bilangan Carmichael. Dan pada tahun 1984, Alford, Granville, dan Pomerance telah menemukan ada tak berhingga bilangan Carmichael. Jadi, teorema Fermat tidak lagi dapat mengungkap apakah adalah mungkin prima atau komposit. Berikut adalah aturan-aturan dalam bilangan prima yang akan diformulasikan menjadi pengecekan bilangan prima Miller-Rabin dengan menyetujui bahwa setiap bilangan komposit memiliki sejumlah besar witness. Misalkan adalah sebuah bilangan prima, maka − = , adalah bilangan ganjil. Misalkan adalah bilangan bulat apapun yang tidak bisa dibagi dengan , maka satu dari dua kondisi berikut adalah benar:  .  Salah satu dari , , , …, �− adalah kongruen − modulo . Definisi 2.12 . Misalkan adalah sebuah bilangan ganjil, maka − = . Bilangan bulat yang memenuhi , = disebut witness Miller-Rabin terhadap jika kedua kondisi berikut adalah benar: Universitas Sumatera Utara  .  � − , untuk setiap = , , , … , − Hoffstein, et al. 2008. Jika ada yang merupakan witness Miller-Rabin terhadap , maka dapat dipastikan adalah bilangan komposit. Dan sedikitnya 75 bilangan antara 1 dan -1 adalah witness Miller-Rabin terhadapa . Miller-Rabin adalah algoritma pengecekan bilangan prima secara probabilistik terhadap . Caranya adalah dengan menghitung − . Lalu hitung , jika hasilnya kongruen , maka mungkin prima. Tetapi, jika hasilnya tidak kongruen , maka hitung nilai dari setiap �− . Jika pada salah satu nilai kongruen dengan − , maka mungkin prima. Dan jika sampai pada − tidak diperoleh nilai yang kongruen dengan − , maka adalah komposit. Misalkan bilangan ganjil = akan diperiksa apakah mungkin prima atau komposit dengan = , maka − = = ⋅ . Selanjutnya hitung , maka = bukan witness Miller-Rabin terhadap . Ganti = , diperoleh − . Nilai = juga gagal menjadi witness Miller-Rabin terhadap , ini berarti mungkin prima. Akan tetapi jika dicoba dengan = , , ⋅ , ⋅ , diperoleh hasil yang berarti = adalah witness Miller-Rabin terhadap , sehingga dapat disimpulkan bahwa adalah bilangan komposit. Dan faktanya adalah bilangan Carmichael Hoffstein, et al. 2008. Universitas Sumatera Utara

2.5. Elliptic Curve Kurva Eliptik