ALGORITMA THE SIEVE OF ERATOSTHENES DAN
LINEAR CONGRUENTIAL GENERATOR ( LCG )
DALAM PERANCANGAN APLIKASI
KRIPTOGRAFI RSA
TESIS
Oleh
M FAKHRIZA
097038035/TINF
PROGRAM STUDI MAGISTER (S2) TEKNIK INFORMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
ALGORITMA THE SIEVE OF ERATOSTHENES DAN
LINEAR CONGRUENTIAL GENERATOR ( LCG )
DALAM PERANCANGAN APLIKASI
KRIPTOGRAFI RSA
TESIS
Diajukan sebagai salah satu syarat untuk memperoleh gelar
Magister Komputer dalam Program Studi Magister
Teknik Informatika pada Program Pascasarjana
Fasilkom -TI Universitas Sumatera Utara
Oleh
M FAKHRIZA
097038035/TINF
PROGRAM STUDI MAGISTER (S2) TEKNIK INFORMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
PENGESAHAN TESIS
Judul Tesis
:
ALGORITMA THE SIEVE OF ERATOSTHENES DAN LINEARCONGRUENTIAL GENERATOR ( LCG ) DALAM PERANCANGAN APLIKASI KRIPTOGRAFI RSA
Nama Mahasiswa
: M Fakhriza
NIM
: 097038035
Program Studi
: Magister Teknik Informatika
Fakultas
: Ilmu Komputer dan Teknologi Informasi
Menyetujui Komisi Pembimbing
M.Andri Budiman,ST, M.Comp.Sc, MEM Prof. Dr. Muhammad Zarlis
Anggota Ketua
Ketua Program Studi Dekan
Prof. Dr. Muhammad Zarlis NIP : 195707011986011003
PERNYATAAN ORISINALITAS
ALGORITMA THE SIEVE OF ERATOSTHENES DAN
LINEAR CONGRUENTIAL GENERATOR ( LCG )
DALAM PERANCANGAN APLIKASI
KRIPTOGRAFI RSA
TESIS
Dengan ini saya nyatakan bahwa saya mengakui semua karya tesis ini adalah hasil kerja saya sendiri kecuali kutipan dan ringkasan yang tiap bagiannya telah di jelaskan sumbernya dengan benar.
Medan, 22 Februari 2012
PERNYATAAN PERSETUJUAN PUBLIKASI
KARYA ILMIAH UNTUK KEPENTINGAN
AKADEMIS
Sebagai civitas akademika Universitas Sumatera Utara, saya yang bertanda tangan di bawah ini:
Nama : M FAKHRIZA Nim : 097038035
Program Studi : Magister ( S2) Teknik Informatika Jenis Karya Ilmiah : TESIS
Demi pengembangan ilmu pengetahuan, menyetujui untuk memberikan kepada Universitas Sumatera Utara Hak Bebas Royalti Non-Eksklusif (Non-Exclusive Royalty free Right) atas Tesis saya yang berjudul:
ALGORITMA THE SIEVE OF ERATOSTHENES DAN
LINEAR CONGRUENTIAL GENERATOR ( LCG ) DALAM
PERANCANGAN APLIKASI KRIPTOGRAFI RSA
Beserta perangkat yang ada (jika diperlukan). Dengan Hak Bebas Royalti Non-Eksklusif ini, Universitas Sumatera Utara berhak menyimpan, mengalih media, memformat, mengelola dalam bentuk database, merawat dan mempublikasikan Tesis saya tanpa meminta izin dari saya selama tetap mencantumkan nama saya sebagai penulis dan sebagai pemegang dan atau sebagai pemilik hak cipta.
Demikian pernyataan ini dibuat dengan sebenarnya.
Medan, 22 Februari 2012
Telah diuji pada Tanggal : 24 Januari 2012
PANITIA PENGUJI TESIS
Pembimbing Utama : Prof. Dr. Muhammad Zarlis
Pembimbing Anggota : M. Andri Budiman, ST,M.Comp.Sc,MEM
Ketua Penguji : Prof. Dr. Herman Mawengkang
Anggota Penguji : Dr. Erna Budhiarti Nababan
Anggota Penguji : Ade Candra, ST, M.Kom
RIWAYAT HIDUP
DATA PRIBADI
Nama lengkap berikut gelar : M Fakhriza
Tempat dan Tanggal Lahir : Medan 12 Februari 1985 Alamat Rumah : Jl Seto, No. 92 Medan Telepon / HP : 085296550077
Email : bk1211za@ymail.com
DATA PENDIDIKAN
KATA PENGANTAR
Bismillahhirahmanirahim. Dengan menyebut Nama Allah yang Maha Pengasih dan Penyayang,. Serta rahmat dan hidayah-NYA, Alhamdulillahi rabbil ‘alamin, puji dan syukur atas segala yang telah diberikan Allah SWT kepada penulis melalui Ridha dan Karunia-Nya sehingga tesis ini dapat diselesaikan, dengan judul “Algoritma The Sieve Of Eratosthenes Dan Linear Congruential Generator (LCG) Dalam Perancangan Aplikasi Kriptografi RSA”.
Tesis merupakan salah satu syarat yang harus dipenuhi oleh setiap mahasiswa untuk mendapat gelar Magister Komputer pada Program Studi Teknik Informatika Sekolah Pascasarjana Universitas Sumatera Utara Medan.
Pada kesempatan ini pula penulis ingin mengucapkan terima kasih yang sebesar-besarnya kepada berbagai pihak yang telah banyak membantu peneliti baik secara moril maupun material, langsung dan tidak langsung sehingga penulisan tesis ini selesai tepat pada waktunya. Untuk itu semua saya ingin mengucapkan terima kasih kepada :
1. Bapak Prof. Dr. H. Muhammad Zarlis, selaku Pembimbing utama, Ketua Program Studi Magister Teknik Informatika dan Dekan Fakultas Ilmu Komputer dan Teknologi Informasi.
2. Bapak M. Andri Budiman, ST, M.Comp.Sc, MEM selaku sekretaris Program studi Magister Teknik Informatika dan pembimbing anggota.
3. Bapak Prof. Dr. Herman Mawengkang selaku ketua komisi pembanding. 4. Dr. Erna Budhiarti Nababan selaku anggota komisi pambanding.
5. Bapak Ade Candra, ST, M.Kom, selaku anggota komisi pembanding.
6. Kedua Orang Tua penulis ( Papa dan Mama ) yang selalu memberikan dukungan moril, materil serta do’a kepada penulis sampai saat ini. Isteri (maya) dan anak tercinta (Alief Sandro), Beserta adik Rika, Ima, Rozi dan Koko yang selalu menyayangi penulis.
8. Bapak Ir. Suhaimi Batubara beserta isteri selaku guru, dosen, dan orang tua yang telah memberikan banyak inspirasi serta dorongan moril kepada penulis. 9. Rekan-rekan sesama mahasiswa, terutama buat : Pak Kapten, Pak Udin, Pak
Husni, Pak Marlin, Pak Sayed, Pak Nurdin, Razi, Maries, Tessa dan lainnya. 10.Seluruh Pegawai administrasi Program Studi Magister Teknik Informatika
USU terutama buat : Bang Jawa, Citra, Bang ewin, widya dan lainnya. 11.Seluruh keluarga besar ADA FC dan sahabat-sahabat tercinta.
12.Semua pihak yang telah memberikan bantuan dalam penyelesaian tesis ini.
Penulis menyadari bahwa kemampuan dan pengalaman penulis masih sangat terbatas. Oleh karena itu, semoga kekurangan yang ada pada penulis dapat diperbaiki bersama dan berharap Tesis ini bermanfaat bagi semua pihak, Amin. Wabillahi taufik walhidayah Wassalamu’alaikum warahmatullahi wabarakatuh
Medan, 22 Februari 2012 Penulis,
ALGORITMA THE SIEVE OF ERATOSTHENES DAN LINEAR CONGRUENTIAL GENERATOR (LCG) DALAM PERANCANGAN
APLIKASI KRIPTOGRAFI RSA
ABSTRAK
Kriptografi adalah ilmu untuk menyamarkan pesan agar hanya dikenal baik oleh penyedia dan penerima pesan. Algoritma kunci publik RSA adalah salah satu metode dalam ilmu kriptografi. Dalam algoritma kunci publik RSA, ada kunci privat dan publik, di mana masing-masing kunci menggunakan bilangan acak yang merupakan bilangan prima untuk melakukan enkripsi dan dekripsi.Bilangan acak yang dihasilkan sebenarnya adalah bilangan pseudo-random ('hampir' acak).
Linear Congruential Generator (LCG) algoritma yang digunakan untuk
menghasilkan bilangan acak, dan The Sieve Of Eratosthenes diterapkan untuk menentukan apakah bilangan acak yang dihasilkan adalah bilangan prima.
THE SIEVE OF ERATOSTHENES ALGORITHM AND LINEAR
CONGRUENTIAL GENERATOR ( LCG ) IN THE DESIGN
OF RSA CRYPTOGRAPHY APPLICATIONS
ABSTRACT
Cryptography is a science for disguising message in order that it is only known by both the provider and the receiver of the message. RSA Public key algorithm is a method in the science of cryptography. In RSA public key algorithm, there are private and public keys, in which each of the keys uses random number which is a prime in order to do encryption and decryption. The random number generated is actually a pseudo-random numbers (‘almost’ random). Linear Congruential Generator ( LCG ) algorithm is used to generate random numbers, and the Sieve of Eratosthenes is applied to determine whether the random numbers generated are primes.
DAFTAR ISI
2.1.1. Kriptografi Kunci Simetris dan Asimetris ... 9
2.2. Algoritma RSA ... 12
2.3. Pembangkit Bilangan Prima ... 17
2.3.1. ALgoritma The Sieve Of Eratosthenes ... 17
2.4. Bilangan Acak ... 19
2.4.1. Pembangkit Bilangan Acak (Crytographically Pseudo- Random Number Generator ... 19
2.4.2. Algoritma Pembangkit Bilangan Acak Semu ... 20
2.5. Probabilistic Encryption ... 20
2.6. Pembangkit Bilangan Acak Linera Congruential Generator (LCG) ... 21
BAB III METODOLOGI PENELITIAN ... 25
3.1. Perumusan Algoritma Kunci Publik RSA ... 25
3.2.1. Enkripsi ... 27
3.2.2. Dekripsi ... 29
3.3. Membangkit Bilangan Acak Dengan Linear Congruential Generator ... 31
3.4.. Pengujian Bilangan Prima dengan The Sieve of Eratosthenes 38
BAB IV ANALISIS DAN PEMBAHASAN ... 41
4.1. Pendahuluan ... 41
4.2. Perancangan Program ... 41
BAB V KESIMPULAN DAN SARAN ... 47
5.1. Kesimpulan ... 47
5.2. Saran ... 47 DAFTAR PUSTAKA
DAFTAR TABEL
Tabel 2.1. Perbandingan Kecepatan Waktu Penghasilan Angka ... 22
Tabel 2.2. Contoh Bilangan Acak Yang Dihasilkan Dari Persamaan LCG... 23
Tabel 3.1. Konstanta Yang Bagus Untuk LCG ... 32
DAFTAR GAMBAR
Gambar 1.1. Proses Enkripsi dan Dekripsi Kunci Publik ... 2
Gambar 2.1. Contoh Confidentiality ... 6
Gambar 2.2. Contoh Data Integrity ... 7
Gambar 2.3. Contoh Authentication ... 7
Gambar 2.4. Contoh Non-repudiation ... 8
Gambar 2.5. Diagram Proses Enkripsi dan Dekripsi Algoritma Simetris... 10
Gambar 2.6. Diagram Proses Enkripsi dan Dekripsi Algoritma Asimetris ... 11
Gambar 3.1. Main Flowchart ... 26
Gambar 3.2. Flowchart Proses Enkripsi ... 28
Gambar 3.3. Flowchart Proses Dekripsi ... 29
Gambar 3.4. Flowchart LCG ... 37
Gambar 3.5. Eksekusi Bilangan Kelipatan Dua ... 38
Gambar 3.6. Eksekusi Bilangan Kelipatan Tiga ... 39
Gambar 3.7. Eksekusi Bilangan Kelipatan Lima ... 3
Gambar 3.8. Eksekusi Bilangan Kelipatan Tujuh ... 40
Gambar 4.1. Tampilan Utama Program ... 41
Gambar 4.2. Input Teks ... 42
Gambar 4.3. Setelah Submit... 43
Gambar 4.4. Setelah Submit Berkali-kali ... 44
Gambar 4.5. Simulasi 10 karakter ... 45
Gambar 4.4. Simulasi 10 karakter setelah submit ... 45