SAMPUL
PROCEEDING SEMINAR NASIONAL TEKNOLOGI INFORMASI DAN APLIKASINYA 2013 “Aplikasi Teknologi Informasi dalam Menunjang Pelestarian Budaya Nasional dan Pengembangan Sektor Pariwisata” Bali, 20 September 2013
Diselenggarakan Oleh : Program Studi Teknik Informatika Jurusan Ilmu Komputer Universitas Udayana Bali
KATA PENGANTAR
Puji syukur kita panjatkan kehadirat Tuhan Yang Maha Esa, atas terselesainya penyususnan Proceeding SNATIA 2013 ini. Buku ini memuat naskah hasil penelitian dari berbagai bidang kajian yang telah direview oleh pakar dibidangnya dan telah dipresentasikan dalam acara Seminar SNATIA tahun 2013 pada tanggal 20 September 2013 di Universitas Udayana kampus Bukit Jimbaran, Badung, Bali. Kegiatan SNATIA 2013 merupakan agenda tahunan Program Studi Teknik Informatika, Jurusan Ilmu Komputer, Universitas Udayana. SNATIA 2013 mengambil tema “Aplikasi Teknologi Informasi dalam Menunjang Pelestarian Budaya Nasional dan Pengembangan Sektor Pariwisata”, dengan pembicara utama seminar yang terdiri dari pakar peneliti dibidang teknologi informasi, pembicara dari praktisi pariwisata Bali, dan pembicara dari Dinas Kebudayaan Propinsi Bali. Meskipun kegiatan seminar dan pendokumentasian naskah dalam proceeding ini telah dipersiapkan dengan baik, namun kami menyadari masih banyak kekurangannya. Untuk itu panitia mohon maaf yang sebesar-besarnya, dan juga mengucapkan terimakasih atas kepercayaan dan kerjasamanya dalam kegiatan ini. Kritik dan saran perbaikan sangat diharapkan untuk penyempurnaan di masa mendatang, yang dapat dikirimkan melalui e-mail
[email protected]. Kepada semua pihak yang terlibat, baik langsung maupun tidak langsung dalam penyelenggaraan seminar, dan penyusunan proceeding SNATIA 2013, panitia mengucapkan terima kasih.
Denpasar, 20 September 2013
Panitia SNATIA 2013
DAFTAR ISI
Kata Pengantar Daftar Isi Penerapan Analytical Network Process Dalam Purchasing Motor Second (Studi Kasus : Sumber Baru Motor, Yogyakarta) Agus Aan Jiwa Permana .....................................................................................
1
Transformasi Model Warna Yuv Dan Fuzzy Support Vector Machine Untuk Klasifikasi Citra Satelit Ahmad Afif Supianto, Sutrisno ...........................................................................
13
Passage Retrieval In Question Answering System I Wayan Supriana, I Wayan Santiyasa, Cokorda Rai Adi Pramartha ................
23
Sentiment Analysis Dokumen E-Complaint Kampus Menggunakan Additive Selected Kernel SVM Imam Cholissodin, Budi Darma S ......................................................................
29
Segmentasi Data Citra Satelit Berdasarkan Homogenitas Spektral Menggunakan Model Markov Random Field Murinto, Agus Harjoko, Sri Hartati ....................................................................
53
Penerapan Algoritma Boyer More Dan Levenshtein Distance Dalam Koreksi Penulisan Kata Berbahasa Indonesia Yulison Herry Chrisnanto, Erna Dhini Nurhasanah, Agus Komarudin ..............
61
Artificial Stigmergy Semut Dalam Penanganan Masalah Optimasi Pencarian Jalur Terpendek Ekspedisi Barang Ketut Bayu Yogha Bintoro, Ni G. A. P. Harry Saptarini ....................................
73
Pengembangan Sistem Informasi Akuntansi BMT Berbasis Web (studi kasus BMT AZZAM) Tedy Setiadi, Risfi Syarif ....................................................................................
81
Pengaturan Penempatan Buku Di Perpustakaan Menggunakan Metode Association Rule Analysis Dan Vertical Format Algorithm Ni Wayan Mirah Pratiwi Negari, Agus Muliantara, Ngurah Agus Sanjaya ER....................... ................................................................................................
93
Pengamanan Data Citra Digital Menggunakan Metode Vigenere Cipher Hamdani , Anindita Septiarini, Irmadani Apriningrum ......................................
103
Teknik Pengamanan dari Serangan Spammers I Dewa Made Bayu Atmaja Darmawan ..............................................................
113
Femur Length Detection And Measurement Using Cascade Adaboost And Morphology Operators Zaki Imaduddin, I Putu Satwika, Robeth Rahmatullah, Wisnu Jatmiko ............
119
Sistem Pendukung Pemilihan Keputusan Penentuan Kelayakan Penerima Jaminan Kesehatan Masyarakat Menggunakan Multiple Attribut Decision Making (MADM) Dan Metode Simple Additive Weighting (SAW) Gunawan Abdillah, Agus Komarudin, Agun Abdul Gani ..................................
127
Pseudo Random Number Generator Untuk Kode Acak Pin Pada Sistem Informasi PMDK Online Made Putra Wira Dharma, Agus Muliantara ......................................................
135
SMS Gateway Untuk Peningkatan Pelayanan Kepada Customer (Studi Kasus : PT Bhakti Jaya Mobil Indonesia) Ni G. A. P. Harry Saptarini, Zulfahmi Alif Abdi................................................
145
Optimasi Sistem Distribusi Dua Tingkat Dengan Algoritma Genetika Adaptif Putu Indah Ciptayani, Zulfahmi Indra ................................................................
159
Pengaruh Nguyen Widrow Dan Momentum Pada Kinerja Jaringan Syaraf Tiruan Backpropagation I Gusti Agung Ari Bawarta, I Made Widiartha ...................................................
167
Peramalan Hujan Harian Menggunakan Algoritma Backpropagation Ida Bagus Gede Bayu Priyanta, Elsyantri Nana Suhendra, I Gede Santi Astawa ................ ................................................................................................
175
Pengenalan Pola Daun Dengan Menggunakan Metode Radial Basis Function Dengan K-Means Clustering Untuk Penentuan Jenis Tanaman Ni Putu Tessa Intaran, Agus Muliantara .............................................................
181
Prototype Sistem Penunjuk Arah dan Pelacakan Bagi Penyandang Tuna Netra berbasis RFID (Radio Frequency Identification) I Made Widhi Wirawan.......................................................................................
189
Aplikasi Mobile Menampilkan Data Property Perusahaan Property Menggunakan Sistem Operasi Android Cok. Istri Oka Diah Anggaraeni .........................................................................
201
Implementasi Fuzzy dalam Proses Pengereman Secara Otomatis Menggunakan Metode Mamdani Anak Agung Ayu Jacqueline Widari ..................................................................
211
Proceeding Seminar Nasional Teknologi Informasi & Aplikasinya 2013 PSEUDO RANDOM NUMBER GENERATOR UNTUK KODE ACAK PIN PADA SISTEM INFORMASI PMDK ONLINE 1,2
Made Putra Wira Dharma1, Agus Muliantara2 Ilmu Komputer, Matematika dan Ilmu Pengetahuan Alam, Universitas Udayana Kampus Bukit Jimbaran, Badung-Bali Email :
[email protected],
[email protected] ABSTRAK
Pendaftaran Penulusuran Minat Dan Kemampuan (PMDK) online merupakan salah satu cara pendaftaran PMDK yang saat ini banyak digunakan oleh universitas-universitas yang ada. Tentu saja verifikasi menjadi sesuatu yang vital dalam setiap sistem informasi berjenis pendaftaran. Disini kasus yang diangkat adalah kasus pembentuk kode acak PIN pada sistem informasi pendaftaran PMDK online di Universitas Udayana menggunakan algoritma Linear Congruential Generators (LCG). PIN digunakan sebagai validator ketika akan mengkonfirmasi pembayaran kepada sistem informasi PMDK tersebut. LCG yang digunakan berjumlah dua buah yang masing-masing akan menghasilkan tujuh buah digit angka. Kemudian hasil dari kedua LCG tersebut akan digabungkan sehingga akan menghasilkan kode acak PIN dengan jumlah digit yaitu 14 digit. Panjang periode bilangan acak semu dari algoritma LCG paling banyak adalah sebanyak nilai modulusnya, tergantung dari nilai seed, multiplier ,dan increment-nya. Hasil rancangan ini mampu menghasilkan 5000 kode acak PIN yang masing-masing berbeda dan memilki perisisi 100% untuk 5000 PRN tersebut. Selain itu juga diketahui bahwa berdasarkan uji statistik menggunakan metode chi-square, PRN yang dihasilkan dari seed pada periode 1 memilki tingkat distribusi yang merata, sedangkan PRN yang dihasilkan dari seed pada periode 2 tidak memilki tingkat distribusi yang merata masing-masing menggunakan α = 0.025. Kata Kunci: LCG, PRNG, PIN PMDK, Bilangan Acak Semu, Linear Congruential Generators.
1
PENDAHULUAN
Bilangan acak (random number) merupakan hal yang penting dalam ilmu kriptografi. Random number adalah sebuah bilangan yang dihasilkan dari suatu proses, yang keluarannya tidak dapat diprediksi dan tidak menghasilkan bilangan yang sama secara berurutan. Algoritma kriptografi dapat berguna untuk memberikan keamanan terhadap kerahasiaan suatu data. Ditambah lagi pada era internet saat ini dimana suatu file dapat diakses oleh setiap orang dimanapun dan kapanpun, maka algoritma kriptografi menjadi semakin dibutuhkan. Sedangkan, PMDK adalah salah satu jalur program yang dapat digunakan bagi para lulusan untuk mendaftarkan dirinya menjadi kandidat siswa atau mahasiswa jika di perguruan tinggi. Saat ini kebanyakan sistem penerimaan PMDK sudah menggunakan cara online. Salah satu perguruan tinggi yang menggunakan jalur PMDK secara online adalah Universitas Udayana. Pada setiap sistem PMDK online tersebut tentunya terdapat suatu transaksi yang menggunakan kode acak sebagai penanda bagi tiap-tiap pendaftar calon mahasiswa. Salah satunya adalah kode acak PIN yang didapat saat melakukan registrasi awal dan digunakan ketika akan melakukan pembayaran di Bank yang merupakan mitra penyelenggara PMDK. Dalam kasus ini akan dilakukan penerapan suatu metode kriptografi yang dapat digunakan sebagai pembentuk random number yaitu metode LCG (Linear Congruential Generators) [3] yang akan digunakan sebagai pembentuk sekumpulan kode acak PIN pada sistem PMDK online di Universitas Udayana. Metode ini dipilih karena dapat menghasilkan bilangan acak semu (pseudo random number) dengan proses relatif lebih cepat dari metode kriptografi lainnya [4] [6]. Penjelasan mengenai Pseudorandom Number Generator (PRNG) dan Linear Congruential Generators (LCG), perancangan sistem dan implementasi terhadap aplikasi dijelaskan pada bagian 2. Pada bagain 3 akan dijelakan mengenai evaluasi dari sistem. Hasil
135 Jurusan Ilmu Komputer, FMIPA, Universitas Udayana
Proceeding Seminar Nasional Teknologi Informasi & Aplikasinya 2013 dari evaluasi akan dijelaskan pada bagain 4. Dan yang terakhir adalah bagain 5 yang merupakan kesimpulan yang diperoleh dari penilitian ini. 2. MODEL, ANALISIS, DESAIN, DAN IMPLEMENTASI 2.1 Pseudorandom Number Generator (PRNG) Pseudorandom number generator (PRNG) atau pembangkit bilangan acak semu adalah suatu algoritma yang mampu menghasilkan suatu rangkaian bilangan yang sesungguhnya hanya terlihat acak (tidak benar-benar acak). Output yang dihasilkan hanya mendekati beberapa dari sifat-sifat yang dimiliki bilangan acak. Walaupun memiliki keterbatasan jumlah bilangan acak yang dihasilkan, PNRG tetap banyak digunakan dalam ilmu fisika, matematika, biologi sebagai pembentuk bilangan acak dalam proses perhitungannya dan juga merupakan hal yang penting dalam ilmu kriptografi contohnya seperti enkripsi email. Yang menjadi alasan mengapa jumlah bilangan acak yang dihasilkan PNRG memiliki keterbatasan adalah karena bilangan yang benar-benar acak hanya dapat dihasilkan oleh perangkat keras pembangkit bilangan acak, bukan oleh perangkat lunak komputer yang memang didesain deterministik [3] [4] [6]. Suatu PRNG dapat dimulai dari state tertentu dengan parameter masukan umpan acak (random seed). Namun bagaimanapun acaknya umpan yang digunakan sebagai state pada akhirnya akan menghasilkan deret angka yang sama di tiap periodenya. Ada beberapa jenis algoritma PRNG. Berikut beberpa jenis-jenis algortima yang telah di uji coba di [4] [6] : • • • • •
Linear Congruential Generators (LCG) Well Equidistributed Long-period Linear (Well) SIMD-oriented Fast Mersenne Twister (SFMT) BlumBlumShub Marsenne Twister
Pada jurnal [4] dan [6] dihasilkan bahwa dari sekian algoritma yang telah diuji coba didapatkan hasil bahwa algoritma Linear Congruential Generators (LCG) yang memiliki waktu komputasi paling kecil yang artinya mampu menghasilkan bilangan acak semu paling cepat. Pada jurnal ini berfokus pada implementasi penggunaan algoritma Linear Congruential Generators (LCG) sebagai pembentukan kode acak PIN pada Sistem PMDK di Universitas Udayana. 2.2 Linear Congruential Generators (LCG) Linear Congruential Generators (LCG) adalah algoritma yang cukup populer digunakan pada beragam jenis aplikasi. Sebuah LCG mampu menghasilkan suatu rangkaian bilangan acak semu berdasarkan beberapa pengulangan yang telah disesuaikan. Bentuk sederhana dari algoritma LCG adalah sebagai berikut [2] : X n + 1 = ( a X n + b) mod m
, n⩾ 0 ;
(1)
Konstanta a pada algoritma diatas disebut multiplier (faktor pengali), konstanta b disebut increment, dan konstanta m disebut modulus. Rangkaian angka yang dihasilkan adalah : X0, X1, X2, …, Xm di mana X0 adalah kunci pembangkit atau disebut juga umpan (seed). Konstanta a, b, m, dan X0 adalah parameter dari algoritma LCG. Panjang periode bilangan acak semu dari algoritma LCG paling banyak adalah sebanyak m - 1. Berikut contoh perhitungan algortima LCG. Misalkan : Untuk X1n+1 : a = 5, b = 13, m = 23, dan X0 = 0 Untuk X2n+1 : a = 2, b = 15, m = 23, dan X0 = 0 Jika parameter tersebut dimasukkan ke dalam algoritma LCG maka akan menjadi : X1n+1 = (5 x X1n + 13) mod 23 , dan X2n+1 = (2 x X2n + 15) mod 23 136 Jurusan Ilmu Komputer, FMIPA, Universitas Udayana
Proceeding Seminar Nasional Teknologi Informasi & Aplikasinya 2013
Maka hasil dari kedua jenis parameter pada algoritma LCG dapat dilihat pada tabel di bawah ini. Table 1: Perbandingan Dua Contoh Hasil Perhitungan dengan Algoritma LCG n 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
X1n 0 13 9 12 4 10 17 6 20 21 3 5 15 19 16 1 18 11 22 8 7 2 0 13 9
X2n 0 15 22 13 18 5 2 19 7 6 4 0 15 22 13 18 5 2 19 7 6 4 0 15 22
Dari tabel 1 dapat dilihat bahwa deret bilangan acak yang dihasilkan dari algoritma LCG akan berulang pada n tertentu. Pada kasus X1n deret berulang pada n ke-22 yang artinya terjadi periode penuh dengan kata lain perulangan terjadi setiap iterasi perhitungan sebanyak m 1. Sedangkan, pada kasus X2n terjadi pengulangan pada n ke-11 yang artinya tidak terjadi periode penuh. Namun dari kedua hasil percobaan di atas dapat dilihat bahwa perulangan deret bilangan acak dari alogoritma LCG akan pasti terjadi maksimal dengan periode m - 1. 3. PERANCANGAN SISTEM Sistem informasi pendaftaran PMDK online ini dibuat berbasis web dengan bahasa pemrograman PHP dan menggunakan database mysql. Kode acak PIN yang ingin dihasilkan nantinya dengan algoritma LCG ini adalah kode acak sebanyak 14 digit. Jikapun nanti kode
137 Jurusan Ilmu Komputer, FMIPA, Universitas Udayana
Proceeding Seminar Nasional Teknologi Informasi & Aplikasinya 2013 acak PIN yang dihasilkan kurang dari 14 digit maka sesuai rencana kode acak tersebut akan ditambahkan angka 0 hingga digit yang dihasilkan berjumlah 14 digit. Pada awalnya rancangan algoritma dengan bahasa PHP ini hanya menggunakan LCG tunggal yang langsung mengshasilkan 14 digit angka acak. Namun dengan bahasa PHP terdapat kendala yang mengakibatkan terjadinya kesalahan perhitungan jika terdapat operasi perhitungan yang menghasilkan angka lebih dari 14 digit. Maka dilakukan beberapa modifikasi dengan menggunakan LCG ganda. Berikut flowchart penerapan algoritma LCG pada proses pembentukan kode acak pin pada sistem informasi PMDK Online Universitas Udayana :
Gambar 1: Flowchart Pembentukan Nomor PIN PMDK Menggunakan Algoritma LCG Pada flowchart di gambar 1 diketahui bahwa digunakan dua kali perhitungan menggunakan algoritma LCG yang masing-masing akan menghasilkan tujuh digit angka dan nantinya kedua hasil tersebut akan digabungkan sehingga pada akhirnya akan dihasilkan 14 digit angka. Jumlah PIN yang ingin dihasilkan nantinya sebanyak 5000 nomor PIN yang dimasukkan kedalam database dan akan ditampilkan pada sistem informasi PMDK tersebut. Mengenai parameter yang ada untuk seed yang digunakan diambil dari gabungan kode jalur PMDK yaitu “2”, kode gelombang dari PMDK, tahun diadakannya PMDK dan tambahan angka “0”. Penambahan angka “0” dimaksudkan agar jumlah digit dari seed berjumlah tujuh sehingga angka yang dihasilkan dominan adalah angka berdigit tujuh. Kemudian mengenai parameter yang lainnya $a1 = 13, $a2 = 7, $b1 = 5, $b2 = 4 dan untuk modulus dari keduanya $m = 9999999. Mengenai nilai konstanta yang digunakan pada multiplier, increment, dan modulus merupakan pemilihan yang diinginkan dari pihak internal penyelenggara PMDK.
4. IMPLEMENTASI TERHADAP APLIKASI Hasil dari perancangan pemecahan masalah nomor PIN PMDK dengan menggunakan algoritma LCG selanjutnya diimplementasikan pada sistem informasinya. 138 Jurusan Ilmu Komputer, FMIPA, Universitas Udayana
Proceeding Seminar Nasional Teknologi Informasi & Aplikasinya 2013 Jika nomor PIN belum dicetak maka sistem akan meminta agar user memilih periode dari PMDK terlebih dahulu sebelum sistem mencetak 5000 nomor PIN. Pemilihan periode ini akan menentukan seed yang akan digunakan ketika sistem akan mencetak nomor PIN. Pada gambar 2 akan ditampilkan beberapa nomor PIN yang dihasilkan dari seed yang dihasilkan oleh periode satu.
Gambar 2: Hasil Nomor PIN pada Periode Satu Dan pada gambar 3 akan ditampilkan beberapa nomor PIN yang dihasilkan dari seed yang dihasilkan oleh periode dua.
Gambar 3: Hasil Nomor PIN pada Periode Dua Untuk mengecek tidak terjadi pengulangan nomor acak PIN yang dihasilkan pada masing-masing periode maka akan di-select nomor PIN yang meyerupai nomor PIN yang dihasilkan pada user_id pertama, jika terdapat lebih dari satu atau selain user_id pertama yang menggunakan nomor PIN tersebut maka dapat disimpulkan bahwa terjadi pengulangan nomor PIN. Karena pada prinsip algortima LCG sebagai salah satu bilangan acak semu yaitu pengulangan yang terjadi akan kembali ke angka acak yang pertama kali diciptakan. Pada percobaan di atas tidak didapatkan suatu pengulangan dalam men-generate nomor acak semu, maka dari itu didapatkan hasil bahwa algoritma LCG yang diterapkan pada sistem informasi pendaftaran PMDK online tersebut mampu menghasilkan 5000 kode acak PIN tanpa adanya pengulangan.
139 Jurusan Ilmu Komputer, FMIPA, Universitas Udayana
Proceeding Seminar Nasional Teknologi Informasi & Aplikasinya 2013 5. SKENARIO UJI COBA Secara umum bilangan random yang baik memiliki sifat-sifat periode perulangan panjang, lolos uji empiris-statistik, dan urutan bilangan tersebut dapat diulang kapan dan dimanapun [1]. Skenario uji coba yang akan penulis lakukan yaitu dengan melakukan tes periode dan tes statistik dengan metode Chi-Square.
5.1. Tes Presisi Uji coba presisi disini bertujuan untuk menguji tingkat presisi PRNG yang telah dirancang dari segi panjang periode yang mampu dihasilkan. Pada studi kasus PIN PMDK di Universitas Udayana ini dibutuhkan jumlah PRN sebanyak 5000 PIN. Berikut tahapan pengujian tes presisi terhadap PRNG sistem : • Penentuan seed : parameter yang akan berubah pada tes periodik ini adalah parameter X0. Seed awal yg digunakan tentunya adalah seed yg telah ditentukan pihak panitia PMDK Universitas Udayana, untuk nilai seed selanjutnya dilakukan increment 1 terhadap periode PMDK sebelumnya. • Testing : dengan menjalankan PRNG untuk menghasilkan 5000 PRN. Testing dilakukan sebanyak 30 kali termasuk seed periode 1 dan periode 2. • Pengecekan pengulangan periodik : kepada 30 percobaan tersebut dilakukan proses pengecekan apakah terjadi pengulangan PRN atau tidak. • Hitung nilai presisi : menghitung nilai perisisi dengan rumus presisi sebagai berikut [5] :
P=
c × 100% A
(2)
dimana P adalah nilai presisi yang akan diperoleh, c adalah jumlah percobaan yang memberikan hasil tidak terjadi pengulangan dan A adalah jumlah percobaan yang dilakukan.
5.2. Tes Statistik Sistem PRNG PIN PMDK dengan LCG ini akan diuji secara statistik dengan menggunakan metode uji Chi-Square. Metode ini digunakan untuk menguji tingkat frekuensi persebaran atau distribusi PRN yang dihasilkan di tiap kelasnya. Metode ini dipilih karena penulis ingin menguji frekuensi distribusi PRN yang dihasilkan apakah sudah merata atau belum. Diharapkan dengan meratanya persebaran atau distribusi PRN yang dihasilkan maka tiap peserta pendaftaran PMDK akan mendapatkan No. PIN yang bervariasi sesuai dengan aturan yang diinginkan pihak penyelenggara PMDK. Suatu tes statistik diformulasikan pada akhirnya untuk menguji suatu null hypothesis (H0) tertentu. Selain itu terdapat juga alternative hypothesis (Ha). Untuk setiap tes yang dilakukan, maka suatu keputusan akan diambil dari salah satu dari dua hypotetis tersebut sesuai dengan aturan yang berlaku pada masing-masing metode [7]. Berikut tahapan pengujian terhadap PRN PIN PMDK dengan metode Chi-Square : • Pengambilan dataset : data yang digunakan untuk pengujian sebanyak 100 PRN PIN PMDK periode 1 dan 100 PRN PIN PMDK perode 2. • Penentuan jumlah kelas n : penentuan ini bertujuan untuk memecah range keseluruhan PRN dari yang terkecil bernilai 0 hingga yang terbesar bernilai 100000000000000. Penentuan ini juga dipakai dalam penentuan v (derajat kebebasan) yaitu: v = n − 1 (3) •
Jumlah n pada pengujian masing-masaing periode sebanyak 10. Penentuan frekuensi harapan : jika N merupakan jumlah keseluruhan, maka nilai frekuensi harapan yang ingin diraih untuk masing-masing kelas adalah :
Ei =
N n
(4)
140 Jurusan Ilmu Komputer, FMIPA, Universitas Udayana
Proceeding Seminar Nasional Teknologi Informasi & Aplikasinya 2013 • •
Hitung frekuensi PRN sebenarnya : dari dataset yang dimiliki, teliti lalu kelompokkan PRN sesuai range-nya. Hitung nilai chi-square-nya : n
(Oi − Ei )2
i =1
Ei
χ α2 = ∑
(5)
dimana Oi adalah nilai frekuensi sebenarnya pada kelas ke-i, Ei adalah niai frekuensi harapan pada kelas ke-i. • Tentukan nilai selang kepercayaan (α) dan tentukan nilai chi-square tabel-nya (critical value) : pada pengujian digunakan α = 0,025 maka dari table [3] didapat nilai critical value-nya adalah 19,0228. • Menarik kesimpulan dari hipotesis : menarik kesimpulan dari hipotesis yang ada dapat dilakukan dengan membandingkan chi-square statistic value dengan critical value-nya. Jika chi-square statistic value < critical value-nya, maka berlaku hipotesis H0. Jika sebaliknya maka berlaku hipotesis Ha. H0 = data terdistribusi seragam, dan Ha = data tidak terdistribusi seragam [7] Seluruh tahapan tersebut akan diterapakan kepada ke-28 PRN sisa hasil uji coba periodik sebelumnya dengan mengambil masing-masing 100 sampel dataset juga. Yang di uji dengan metode ini hanya percobaan yang lolos uji periodik.
6.
HASIL UJI COBA Hasil evaluasi yang telah dilakukan sesuai dengan skenario uji coba yang telah dirancang sebelumnya dapat dilihat pada table 2 berikut. Tabel 2 : Hasil Evaluasi Tes Presisi dan Tes Statistik Percobaan ke-j 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
H0
Ha
P
-
141 Jurusan Ilmu Komputer, FMIPA, Universitas Udayana
Proceeding Seminar Nasional Teknologi Informasi & Aplikasinya 2013 27 28 29 30
-
100% Dari 30 kali percobaan yang telah dilakukan didapatkan presisi sebesar 100% dengan masing-masing uji coba menghasilkan sebanyak 5000 PRNG sesuai dengan kebutuhan pada studi kasus PRNG PIN PMDK online di Universitas Udayana. Hasil evaluasi tes statistik dengan metode chi-square khusus terhadap periode 1 dan 2 untuk studi kasus PIN PMDK di Universitas Udayana digambarkan pada gambar 4 dan gambar 5
Gambar 4 : Hasil Chi-Square Periode 1 Pada gambar 4 didapatkan hasil chi-square sebesar 17,8. Karena hasil chi-square-nya < dari critical value-nya maka dapat ditarik kesimpulan H0 yaitu data terdistribusi seragam/ tersebar merata.
Gambar 5 : Hasil Chi-Square Periode 2 Gambar 5 di atas merupakan hasil perhitungan chi-square PIN PMDK periode 2. Didapatkan hasil chi-square sebesar 28,8. Karena hasil chi-square-nya > dari critical value-nya maka dapat ditarik kesimpulan Ha yaitu data tidak terdistribusi seragam/ tersebar tidak merata.
7.
KESIMPULAN Dari hasil yang telah didapatkan pada pembahasan penggunaan algoritma LCG sebagai pembentuk angka acak PIN pada sistem informasi pendaftaran PMDK online didapatkan hasil bahwa : • Dengan algoritma enkripsi sederhana yaitu algoritma LCG dapat dihasilkan 14 digit angka acak sebanyak 5000 PRN sesuai dengan jumlah PRN yang dibutuhkan pada 142 Jurusan Ilmu Komputer, FMIPA, Universitas Udayana
Proceeding Seminar Nasional Teknologi Informasi & Aplikasinya 2013
•
•
system PMDK online studi kasus Unversitas Udayana dengan beberapa penyesuaian yang dijelaskan pada subbab perancangan sistem. Dari hasil testing statistic menggunakan metode chi-square ternyata hanya PIN dari periode 1 saja yang memilki tingkat distribusi yang merata dengan α = 0.025, sedangkan PIN yang dihasilkan pada periode 2 tidak memenuhi syarat untuk dikatakan memilki tingkat distribusi yang merata. Perhitungan bilangan acak dengan algoritma LCG yang menghasilkan bilangan acak lebih dari 14 digit menggunakan bahasa PHP dapat ditanggulangi dengan menggunakan LCG ganda.
8.
DAFTAR PUSTAKA [1] Ai, T.J. “Uji Empiris-Statistik Terhadap Fungsi Pembangkit Bilangan Random dalam Bahasa Pemrograman BASIC”. Universitas Atma Jaya Yogyakarta. Yogyakarta. [2] Knuth, D. E. 1938. The Art of Computer Programming. 2nd ed. Addison – Wesley Publishing Company, INC. USA [3] Menezes, A., van Oorschot, P., and Vanstone, S. 1996. Handbook of Applied Cryptography. CRC Press. [4] Oni, M. 2010. “Comparison Between Linear Congruential Generators, Well Equidistributed Long-Period Linear (WELL), And Simd-Oriented Fast Mersenne Twister (SFMT) Algorithm To Generate Pseudorandom Number”. Institut Teknologi Bandung. Bandung. [5] Pratama, I.P.D., Muliantara, A. “Perancangan dan Implementasi Sistem Penerjemah Teks Bahasa Inggris ke Bahasa Bali dengan Menggunakan Pendekatan Berbasis Aturan (Rule Based)”. Jurnal Imu Komputer April 2012 : Vol. 5 No. 1. [6] Ramadhan, A. “Perbandingan Algortima Linear Congruential Generators, BlumBlumShub, dan MersenneTwister untuk Membangkitkan Bilangan Acak Semu”. Institut Teknologi Bandung. Bandung. [7] Rukhin, A., Soto, J., Nechvatal, J., Smid, M., Barker, E., Leigh, S., Levenson, M., Vangel, M., Banks, D., Heckert, A., Dray, J., and Vo, S. 2001. NIST Special Publication 80022.:A Statistical Test Suite for Random and Pseudorandom Number Generators for Cryptographic Applications.
[8] Sun, B. and Li, C.C. “Using Linear Congruential Generators for Cryptographic Purposes”. Computer Science Departement Lamar University. Beaumont.
143 Jurusan Ilmu Komputer, FMIPA, Universitas Udayana