• Tidak ada hasil yang ditemukan

Pengenalan Teori Angka Teori Angka Teori Angka

N/A
N/A
Protected

Academic year: 2018

Membagikan "Pengenalan Teori Angka Teori Angka Teori Angka"

Copied!
9
0
0

Teks penuh

(1)

TUGAS 2

PENGENALAN TEORI ANGKA

KRIPTOGRAFI

Nama : Fikri Ikhtiyaarullah

Nim : 12.11.0251

Kelas : TI 12 S

JURUSAN INFORMATIKA

SEKOLAH TINGGI MANAGEMENT INFORMASI DAN KOMPUTER

STMIK AMIKOM

PURWOKERTO

2013/2014

(2)

1. Bilangan Prima

Bilangan prima (P) adalah bilangan bulat (integer), positif yang bukan bilangan 1 (satu), serta bukan bilangan majemuk (composite)[13]. Atau dengan perkataan lain dapat dinyatakan bahwa bilangan prima merupakan suatu bilangan asli kecuali 1, yang hanya habis dibagi 1 dan bilangan itu sendiri. Contoh bilangan prima: 2,3,5,7,11,13,…,223,…,337,..7919,…Jika dua pasang bilangan a dan b tidak memiliki faktor pembagi bersama terbesar (gcd) selain 1, maka kedua pasangan bilangan tersebut dinyatakan prima relatif (relatively prime) atau disebut juga sebagai koprima (coprime). Seperti contoh; 8 dan 9 mempunyai faktor pembagi bersama terbesar atau gcd(8,9) adalah 1, artinya bahwa kedua bilangan tersebut relatif prima atau koprima dan bilangan 8 adalah relatif prima terhadap 9. Sedangkan, untuk pasangan bilangan 8 dan 10 bukan relatif prima atau koprima, karena faktor persekutuan terbesarnya atau gcd(8,10) bukan 1 tetapi 2. Dalam kriptografi, khususnya kriptografi kunci publik, sering digunakan bilangan prima besar untuk membangkitkan pasangan kunci.

Bilangan prima hanya memiliki pembagi 1 dan bilangan itu sendiri.

contoh : 2,3,5,7 adalahbilangan prima dan 4,6,8,9,10 bukan bilangan prima. Bilangan Prima merupakan titik pusat dari teori angka untuk memfaktorkan sebuah bilangan "n" adalah dengan menulisnya sebagai produk dari bilangan lain : n = a x b x c

Perlu dicatat bahwa sebuah bilangan secara relative telah dikomparasi untuk mengalikan faktor – factor secara bersama untuk mendapatkan bilangan. Faktorisasi prima dari sebuah angka "n" adalah ketika bilangan tersebut ditulis sebagai produk dari bilangan prima.

contoh : 91 = 7x13 ; 3600 = 24 x 32 x 52

dua buah bilangan a dan b merupakan bilangan prima jika tidak memiliki pembagi yang sama terpisah dari 1 FPB dapat ditentukan dengan membandingkan faktorisasi prima dari bilangan tersebut dengan menggunakan pangkat terkecil.

2. Teorema Fermat

(3)

3. Teorema Euler

Merupakan generalisasi dari teorema Fermat aø(n) = 1 (mod n) untuk a dan n dimana FPB dari a dan n = 1

Percobaan bilangan prima :

 Sering digunakan untuk mencari bilangan prima yang besar.

 Menyaring secaras ederhana dengan percobaan pembagian.

Euler TeoremaTeorema dasar aritmatika menyatakan bahwa setiap bilangan bulat positif N dapat unik difaktorkan ke dalam bentuk N = pq11pq22 ... pqnn, dimana pi adalah bilangan prima yang berbeda, dan qi adalah bilangan bulat positif. Berapa banyak bilangan bulat 1 ≤ k ≤ N yang ada sehingga gcd (k, N) = 1? Hal ini tampaknya sulit untuk menghitung secara langsung, jadi alih-alih, mempertimbangkan bilangan bulat 1 ≤ k ≤ N sedemikian rupa sehingga gcd (k, N) ≠ 1 (k adalah bilangan bulat habis dibagi pi untuk beberapa i). Dari bilangan bulat kurang dari N, NP1 dari mereka adalah kelipatan p1. Demikian pula, NP2 dari bilangan bulat kurang dari N merupakan kelipatan dari p2. Namun, kami telah menyertakan kelipatan p1p2 di kedua perangkat ini, sehingga pendataan ganda.Prinsip Inklusi dan Pengecualian (PIE) adalah suatu metode untuk menghitung jumlah elemen dalam set tumpang tindih. Untuk i = 1 sampai n, biarkan Pi adalah himpunan bilangan bulat kecil dari atau sama dengan N yang merupakan kelipatan dari pi. Kemudian jumlah bilangan bulat yang merupakan kelipatan dari pi | Pi | = NPI. Jumlah bilangan bulat yang merupakan kelipatan dari pipj adalah | Pi ∩ Pj | = Npipj. Hal ini berlaku secara umum: untuk setiap bagian S dari {1,2, ..., n}, jumlah bilangan bulat yang merupakan kelipatan dari Πs ∈ Sps ini | ⋂ s ∈ SPs | = NΠs ∈ Sps.Kemudian, himpunan bilangan yang memenuhi gcd (k, N) = 1 adalah persis himpunan bilangan yang bukan kelipatan dari setiap pi, maka tidak di salah satu set Pi. Dengan Prinsip Inklusi dan Pengecualian,

Jumlah bilangan bulat kecil daripada N yang coprime ke N adalah Euler phi fungsi φ (N).

(4)

Bukti: Misalkan S adalah himpunan bilangan bulat yang coprime N. Mari aS adalah himpunan (mungkin diulang) bilangan bulat dari bentuk {sebagai: s ∈ S} diambil modulo N. Pertama, kami menunjukkan bahwa tidak ada pengulangan. Jika ada ulangan, yaitu, ASI ≡ ASJ (modN), maka Modulo Aritmatika Properti H menyiratkan si ≡ sj (modN). Tapi karena setiap elemen dalam S lebih kecil dari N, hal ini tidak mungkin. Kedua, kami menunjukkan bahwa aS terkandung dalam S. Hal ini benar karena diberikan s unsur S, 1 ≤ gcd (seperti, N) ≤ gcd (a, N) × gcd (s, N) = 1 × 1 = 1 , sehingga gcd (seperti, N) = 1 yang menunjukkan bahwa seperti unsur S. Karena aS adalah seperangkat φ (N) elemen yang berbeda yang terkandung dalam S, yang juga satu set φ (N) unsur yang berbeda, itu berikut bahwa perangkat ini adalah sama modulo N.

Sejak set berisi persis sama elemen modulo N, produk dari semua unsur aS sama dengan produk dari semua elemen S modulo N. Oleh karena itu,

as1 ⋅ ⋅ ... ⋅ as2 asφ (N) ≡ s1 s2 ⋅ ⋅ ⋅ ... sφ (N) (modN).

Sejak s1 s2 ⋅ ⋅ ⋅ ... sφ (N) adalah coprime ke N, maka dari Modulo Aritmatika Properti H yang aφ (N) ≡ 1 (modN).

Catatan: Himpunan S juga disebut sistem residu modulo N. berkurangBekerja Contoh

1. Apa unit digit dari 9753?

Solusi: Menemukan unit digit nomor adalah setara dengan bekerja modulo 10. Dengan teorema Euler, kita hanya perlu menentukan nilai eksponen 753 Modulo φ (10) = 10 × (1-12) × (1-15) = 4. Lagi dengan teorema Euler, kita hanya perlu menentukan nilai eksponen 53 Modulo φ (4) = 4 × (1-12) = 2. Kemudian

(5)

Catatan: Pendekatan lain adalah untuk menyadari bahwa 9N (mod10) adalah urutan 9,1,9,1,9,1, ... yang memiliki periode 2. Karena paritas eksponen aneh, ini berarti digit terakhir adalah 9.

2. Hitung (dengan tangan) nilai 521.

Solusi: Dengan teorema Euler, φ (21) = 21 × (1-13) (1-17) = 12, menyiratkan 1012 ≡ 1 (mod21). Bahkan, kita bisa lebih baik daripada ini dengan menerapkan teorema Euler untuk φ (3) = 3 × (1-13) = 2 dan φ (7) = 7 × (1-17) = 6. Kita tahu bahwa 106 ≡ (102) 3 ≡ ≡ 13 1 (mod3) dan 106 ≡ 1 (mod7), sehingga 106 ≡ 1 (mod21). Secara khusus, 106-1 = 21 × 47.619. Oleh karena itu,

521 = 5 × 4.761.921 × 47619 = 238095999999 = 0,238095238095 ...

3. [Fermat Little Teorema] Jika p adalah prima dan adalah integer, menunjukkan bahwa ap≡ a (MODP).

Solusi: Perhatikan bahwa jika p adalah prima, maka φ (p) = p × (1-1p) = p-1. Oleh karena itu, oleh Euler Teorema, jika gcd (a, p) = 1, maka

ap-1 ≡ 1 (MODP) ⇒ ap ≡ a (MODP).

Bagaimana nilai-nilai sedemikian rupa sehingga gcd (a, p) ≠ 1? Dalam hal ini, akan menjadi kelipatan p, jadi ap ≡ ≡ 0p 0 ≡ a (MODP).

Catatan: ini juga dapat ditunjukkan dengan induksi pada.

4. Tunjukkan bahwa jika n adalah bilangan bulat ganjil, maka n membagi -1 2n!. Solusi: Dengan Euler Teorema, n membagi 2φ (n) -1. Karena φ (n) <n, kita memiliki n! = Φ (n) ⋅ k untuk suatu bilangan bulat k. Sejak 2n! -1 = (2φ (n) -1) (2φ (n) ⋅ (k-1) +2 φ (n) ⋅ (k-2) + ... +1), berikut bahwa n juga membagi 2n! -1.

Fungsi Euler Totient ø(n)

Ketika aritmatika modulus n dikerjakan : residu yang lengkapadalah : 0 .. n-1

(6)

jumlah elemen yang ada dalam residu yang dikurangi disebut fungsi Euler Totient ø(n).

Metoda lain untuk menghitung menghitung inverse modulo[17], yaitu dengan mengurangi himpunan sisa hasil bagi, tetapi metoda ini tidak selalu memungkinkan untuk digunakan. Himpunan sisa hasil bagi mod n yang dikurangi ialah himpunan lengkap sisa hasil bagi yang relatif prima terhadap n. Jika n adalah bilangan prima, maka himpunan sisa hasil bagi modulo n yang dikurangi adalah himpunan dari seluruh bilangan dari 1 hingga n – 1. Bilangan 0 bukanlah bagian dari himpunan sisa hasil bagi yang dikurangi untuk semua n yang tidak sama dengan 1.

Fungsi Totien Euler (the Euler Totient Function) yang disebut juga sebagai Euler phi function yang dituliskan dengan notasi f(n), adalah bilangan dari elemen-elemen pada himpunan sisa hasil bagi modulo n. Dalam lain perkataan f(n) adalah bilangan bulat positif kurang dari n yang relatif prima terhadap n untuk setiap n yang lebih besar dari satu, artinya gcd (f(n), n) = 1. jika n ialah bilangan prima, maka f(n) = n – 1, dan jika n = p*q, dimana p dan q bilangan prima, maka f(n) = (p – 1)(q – 1). Perhitungan-perhitungan seperti ini tampak pada beberapa algoritma kunci publik (assimetris). Untuk n bilangan prima yang lebih besar dari 2 ( n ≥ 2), dan gcd(a,n) = 1, maka:

a f (n) = 1 (mod n)

Teorema tersebut adalah versi umum dari teorema Fermat yang dikemukakan oleh Leonhard Euler yang dikenal sebagai Euler’s generalization of Fermat’s Theorem. Sekarang, dengan adanya teorema tersebut, untuk menghitung modulo dari inverse a f (n) dengan modulus n, dapat mudah dihitung dengan cara:

x = a mod n

Adapun dua metode untuk menghitung inverse dapat dilanjutkan untuk memecahkan nilai x pada permasalahan umum :

(a * x) mod n = b

Menggunakan bentuk umum Euler (Euler’s generalization), memecahkan x = ( b * a f (n) - 1) mod n

(7)

Secara umum untuk penghitungan inverse, algoritma Euclid lebih cepat dari bentuk umum Euler. Hal ini secara khusus untuk bilangan dengan jangkauan 500-bit Penerapan Teorema Euler pada Kriptografi RSA

1. Perumusan Algoritma RSA Coding

RSA Coding merupakan salah satu algoritma Assimetris Kriptografi, algoritma lainnya yaitu : DSA, DH, ECC dan lain sebagainya. RSA Coding dikembangkan oleh Ron Rivest, Adi Shamir, dan Len Adleman. Perumusan algoritma RSA Coding didasarkan pada penggunaan Teorema Euler, sehingga dapat menghasilkan rumus enkripsi dan dekripsi yang saling berkaitan.

Besaran-besaran yang digunakan pada RSA Coding antara lain : 1. p dan q bilangan prima (rahasia)

2. (tidak rahasia) 3. (rahasia)

4. e (kunci enkripsi) (tidak rahasia) 5. d (kunci dekripsi) (rahasia) 6. m (plainteks) (rahasia) 7. c (cipherteks) (tidak rahasia)

Sebelum pembahasan tentang algoritma RSA coding akan dijelaskan tentang teorema euler terlebih dahulu.

Jika m adalah bilangan bulat positif dan a adalah bilangan bulat dengan gcd (a,m) = 1, maka, a^ (m) = 1 (mod m).ᴓ

2. Algoritma Miller Rabin

Tes yang berdasarkan bagian prima yang merupakan hasil dari Teorema Fermat Algoritmanya adalah :

Test(n)

1. cari bilangan bulat k,q,k>0 q bilangan ganjil jadi (n-1) = 2kq 2. pilih bilangan bulat acak a, 1<a<n-1

3. if aq mod n = 1 then return ("inconclusive") 4. for j= 0 to k-1 do

(8)

6. return ("composite")

Penentuan Kemungkinan

Jika Miller-Rabin return "composite" maka bilangan tersebut bukan bilangan prima jika tidak maka merupakan bilangan prima atau bilangan prima-pseudo.

Distribusi Bilangan Prima

Teorema Bilangan Prima menyatakan bilangan prima muncul setiap bilangan bulat (ln n).

3. Teorema Chinese Remainder

 Digunakan untuk mempercepat komputasi modulus.

 Mengijinkan kita untuk bekerja dalam tiap modulus secara terpisah.

Teorema Sisa Cina atau Chinese Remainder Theorem (CRT)[19] adalah suatu teorema untuk menyelesaikan permasalahan pada seluruh sistem persamaan jika diketahui faktorisasi prima dari n. Versi dasar dari teorema sisa ini telah ditemukan oleh matematikawan cina pada abad pertama, yang bernama Sun Tse.

Secara umum, jika faktorisasi prima dari n adalah p1*p2*... pi, maka sistem persamaannya ialah:

(x mod pi) = ai, dimana i = 1,2,.., t

Sistem persamaan tersebut mempunyai penyelesaian yang unik, yaitu x dimana x lebih kecil daripada n. Dalam persamaan ini beberapa bilangan prima dapat tampil lebih dari sekali. Sebagai contoh, p1 mungkin sama dengan p2. Dalam lain perkataan, sebuah bilangan yang lebih kecil dari perkalian beberapa bilangan prima, diidentifikasikan secara unik dengan sisa hasil baginya mod bilangan-bilangan prima tersebut.

Untuk a <> dan b <>, dimana p dan q adalah bilangan prima, terdapat sebuah bilangan x yang unik yang kurang dari pq, dan gcd(p,q) = 1, maka;

(9)

Dalam Chinese Reminder Theorem, disediakan suatu cara untuk mengkombinasikan dua persamaan modular yang menggunakan modulus yang berbeda. Misalkan, untuk dua bilangan p dan q, yang relatif prima, jika;

a = b mod p, a = b mod q

Dengan p dan q koprima atau relatif prima (gcd (p,q) = 1), maka; a = b mod p*q

Hal ini dapat dibuktikan jika a = b mod p, kemudian p dibagi (a - b). Dengan cara yang sama, q membagi (a - b). Tetapi p dan q relatif prima, maka untuk pq membagi (a - b), konsekuensinya, a = b mod p*q. Dalam Chinese Reminder Theorem, disediakan suatu cara untuk mengkombinasikan dua persamaan modular yang menggunakan modulus yang berbeda.

Pembuktian:

a = b mod p à a =b+ k*p

p membagi (a – b), dan dengan cara yang sama, q membagi (a – b) a – b = 1(p*q) à a = b mod p*q

Akar Sederhana

Dari Teorema Euler kita punyaaø(n) mod n = 1 anggap am =1(mod n), FPB (a,n) = 1

jika m < ø(n) maka a merupakan akar sederhana.

Logika Diskret

Referensi

Dokumen terkait

- Himpunan bilangan bulat dikatakan tidak tertutup terhadap operasi pembagian karena ada hasil bagi dari sepasang bilangan bulat yang bukan bilangan bulat.. Jadi,

Pada bagian ini akan dijelaskan bagaimana dari himpunan bilangan bulat non negatif diperoleh sebuah semiring faktor dan semiring lokal sebagaimana dijelaskan

1) Buatlah algoritma yang membaca sebuah bilangan bulat positif lalu menentukan apakah bilangan tersebut merupakan kelipatan 4. Kemudian, translasikan algoritma tersebut

• Dari anggota himpunan kelipatan persekutuan bilangan-bilangan tersebut yang terkecil dan.. bukan

Artinya adalah bilangan bulat positif terbesar yang habis dibagi dan kurang dari sama dengan.. Jadi himpunan bilangan yang habis dibagi

Bilangan rasional terdiri dari bilangan bulat dan bilangan pecahan, atau secara umum bisa dikatakan bahwa jika himpunan bilangan bulat kita gabungkan dengan himpunan

1) Buatlah algoritma yang membaca sebuah bilangan bulat positif lalu menentukan apakah bilangan tersebut merupakan kelipatan 4. Kemudian, translasikan algoritma

akan menjadi suatu pernyataan yang benar untuk setiap subtitusi x yang diambil dari himpunan semesta bilangan bulat karena kuantifikasinya berlaku untuk semua