FINITE FIELD Kompleksitas Waktu Asimptotik

BAB III HASIL DAN PEMBAHASAN Pada bab ini akan dijelaskan hal-hal yang berhubungan dengan masalah logaritma diskret pada dan bagaimana mengeksplorasinya dengan menggunakan algoritme Exhaustive Search, Baby-Step Giant-Step, Pollard’s rho, Pohlig-Hellman, dan Index Calculus. 3.1 MASALAH LOGARITMA DISKRET PADA FINITE FIELD

3.1.1 FINITE FIELD

Galois Field adalah nama populer untuk field dengan jumlah elemen terbatas finite. Disebut Galois Field, sebagai penghargaan terhadap Evariste Galois yang menemukan hubungan antara grup dan persamaan polinomial. Galois Field dinotasikan , berorder , dengan prima dan integer positif. Jika = , maka menurut Teorema 2.3.28 atau bisa juga dinotasikan ℤ adalah integer modulo p berbentuk field berorder . Setiap operasi aritmetikanya dilakukan dalam modulo agar hasilnya tetap berada dalam daerah . Selanjutnya pembahasan akan difokuskan pada . Berdasarkan Teorema 2.3.31 adalah perluasan field ℤ . Berdasarkan Definisi 2.3.20 ℤ [x] adalah himpunan semua polinomial dalam peubah x dengan koefisien dalam ℤ merupakan sebuah ring di bawah operasi penjumlahan dan perkalian polinomial. Misalkan polinomial tak konstan atas ℤ [ ], maka berdasarkan Teorema 2.3.32 ada ∈ sedemikian sehingga = . Jika ada seperti ini, maka disebut algebraic atas ℤ Definisi 2.3.33. Selanjutnya berdasarkan Teorema 2.3.43, jika deg , ℤ = , maka ℤ merupakan ruang vektor atas ℤ berdimensi- dengan basis { , , , … . , , }. ℤ adalah field. Misalkan ∈ ℤ[ ]adalah polinomial irredusibel atas ℤ berderajad , maka menurut Teorema 2.3.14 adalah suatu ideal, 20 dengan = { | ∈ ℤ [ ]}. Selanjutnya, berdasarkan Teorema 2.3.34 ℤ [ ] adalah finite field berorder , dengan operasi penjumlahan dan perkalian polinomial dilakukan dalam modulo . Dari uraian di atas dan berdasarkan Teorema 2.3.37 dan Teorema 2.3.38, jika diberikan polinomial irredusibel ∈ ℤ[ ]berderajad dan = , maka setiap ∈ ℤ dapat dinyatakan secara unik dalam bentuk = + + + + , dimana ∈ ℤ , −, dan ≅ ℤ [ ] ≅ ℤ ≅{ + + + | ∈ ℤ untuk semua }. Contoh 1 Finite Field = + + adalah polinomial irredusibel berderajad 4 atas ℤ , dan = + + = = + , maka = ℤ [ ] = { , , , , , , , , , , , , , , , } = { , , , , , + , + , + , + + , + , + , + + , + + , + + + , + + , + } Dari uraian di atas, ada beberapa cara yang dapat dilakukan untuk merepresentasikan elemen-elemen , diantaranya adalah dengan representasi grup siklik, representasi polinomial, representasi vektor dan representasi himpunan. 1 Representasi grup siklik : 0, , 1 , ..., , dengan adalah generator ∗ , dimana ∗ = − { }. 2 Representasi polinomial dalam peubah : + + + + , dimana ∈ ℤ , −. 3 Representasi vektor : [ , , , ...], dengan ∈ ℤ 4 Representasi himpunan : { , , , ...}, dengan . Cara merepresentasikan elemen-elemen dengan representasi himpunan mengacu pada tesis Rosdiana 2009. Representasi himpunan selanjutnya diperlukan pada saat komputasi untuk menentukan masalah logaritma diskret. Pada contoh 1 di atas cara merepresentasikan elemen-elemen adalah 21 dengan representasi grup siklik dan representasi polinomial. Tabel 3.1.1 berikut memperlihatkan elemen-elemen dalam beberapa representasi. Tabel 3.1.1 Elemen-elemen No Representasi Himpunan Representasi Vektor Representasi Grup Siklik Representasi Polinomial 1 {} [0,0,0,0] 2 {0} [1,0,0,0] 1 1 3 {1} [0,1,0,0] 1 1 4 {2} [0,0,1,0] 2 2 5 {3} [0,0,0,1] 3 3 6 {0,1} [1,1,0,0] 4 + 7 {1,2} [0,1,1,0] 5 + 2 8 {2,3} [0,0,1,1] 6 + 3 9 {0,1,3} [1,1,0,1] 7 + + 3 10 {0,2} [1,0,1,0] 8 + 2 11 {1,3} [0,1,0,1] 9 + 3 12 {0,1,2} [1,1,1,0] 10 + + 2 13 {1,2,3} [0,1,1,1] 11 + + 3 14 {0,1,2,3} [1,1,1,1] 12 + + + 3 15 {0,2,3} [1,0,1,1] 13 + + 3 16 {0,3} [1,0,0,1] 14 + 3 Setiap operasi aritmetika dilakukan terhadap polinom yang tidak dapat direduksi lagi irredusibel dalam ℤ . Secara umum dapat dituliskan sebagai berikut. Misalkan adalah polinomial irredusibel atas ℤ berderajad , maka operasi penjumlahan dan perkalian dalam dapat didefinisikan sebagai berikut : 1. Penjumlahan Jika = + + + + , = + + + + ∈ . Maka + =, dimana = + + + + dengan + mod 2. 2. Perkalian 22 Jika = + + + + , = + + + + ∈ . Maka . =, dimana s= + + + + dengan = ∑ mod , −. Penjumlahan dan perkalian dalam ini dihitung dengan menggunakan algoritme standar untuk integer dan aritmetika polinomial. Unsur identitas penjumlahannya adalah polinomial 0, dan unsur identitas perkaliannya adalah polinomial 1. Pengurangan adalah invers dari penjumlahan; jika ∈ maka invers penjumlahan dari dinotasikan − pada adalah solusi unik untuk persamaan + = dalam . Selanjutnya, pembagian adalah invers dari perkalian; jika ∈ maka invers perkalian dari dinotasikan pada adalah solusi unik untuk persamaan . = pada . Invers perkalian dalam dapat dihitung secara efisien dengan menggunakan Algoritme Euclidean yang Diperluas. Dalam pembahasan selanjutnya akan dibahas tanpa elemen {0}, dinotasikan dengan ∗ , membentuk grup di bawah operasi perkalian Definisi 2.3.29.

3.1.2 MASALAH LOGARITMA DISKRET PADA