• Tidak ada hasil yang ditemukan

DAFTAR PUSTAKA

PBAS ANSI X

Input : seed acak s berukuran 64 bit, bilangan bulat m dan kunci enkripsi DES E-D-E

Output : m buah barisan semuacak yang masing-masing berukuran 64 bit

<, , ⋯ , M

Proses :

1. Menghitung nilai O = Q q dengan D adalah representasi dari tanggal/waktu yang berukuran 64 bit

2. Untuk i dari 1 sampai m melakukan : 2.1 B ← Q O ⊕ (

2.2 ( ← Q B ⊕ O 3. Hasil <, , ⋯ , M PBAS ANSI X.931

Input : seed acak s berukuran 128 bit, bilangan bulat m dan kunci enkripsi AES E-D-E

Output : m buah barisan semuacak yang masing-masing berukuran 64 bit

<, , ⋯ , M

Proses :

1. Menghitung nilai O = Q q dengan D adalah representasi dari tanggal/waktu yang berukuran 64 bit

2. Untuk i dari 1 sampai m melakukan : 2.1 B ← Q O ⊕ (

2.2 ( ← Q B ⊕ O 3. Hasil <, , ⋯ , M

B. Kelas Kedua

PBAS Blum Blum Shub (BBS)

1. Setup : membangkitkan dua buah bilangan prima besar yang acak p

2. Memilih sebuah bilangan bulat acak s pada interval 71, & − 1@ sedemikian sehingga `0 (, & = 1 dan menghitung ? ← ( & 3. Untuk i dari 2 sampai dengan l melakukan :

3.1 BB < &

3.2 tBleast significant bit dari B 4. Barisan output : t<, t , ⋯ , tV

C. Kelas Ketiga PBAS cmrg

PBAS cmrg merupakan combined multiple recursive generator yang ditemukan oleh L’Ecuyer. Barisan acaksemu yang dihasilkan PBAS ini berasal dari persamaan :

t: = : − *: <

dengan : = $< : <+ $ : + $_ : _ < dan *: = o<*: <+ o *: + o_*: _

Input : $< = 0, $ = 63308, $_ = −183326, o< = 86098, o = 0, o_ = −539608 dan modulus < = 2_<− 1 dan

= 2145483479 PBAS coveyou

:;< = w : :+ 1 x

dengan m = 232 dan x1 adalah nilai awal PBAS fishman18

xz;< = axz mod m

dengana = 62089911, m = 231 -1 dan x1 adalah nilai awal. PBAS fishman20

:;< = $ :

dengan a = 48271, m = 231 -1 danx1 adalah nilai awal. PBAS fishman2x

t: = : − *: < dengan xn dan yn seperti pada fishman20 dan lecuyer21.

PBAS knuthran

: = $< : <+ $ :

dengan a1 = 271828183, a2 = 314159269 dan m = 231-1.

PBAS lecuyer21

:;< = $ :

dengan a = 40692, m = 231 -249 dan x1 adalah nilai awal. PBAS randu

:;< = $ :

dengan a = 65539 m = 231 dan x1 adalah nilai awal. PBAS mrg

PBAS ini merupakan multiple recursivegenerator orde kelima yang

ditemukan oleh L’Ecuyer, Blouin dan Coutre. Barisan semuacak dihasilkan dari persamaan :

: = $< : <+ $} : }

dengan $< = 107374182, $ = $_ = $~ = 0, $} = 10448 dan = 2_<− 1

PBAS gfsr4

PBAS gfsr4 seperti lagged-fibonacci generator. PBAS ini menghasilkan barisan semuacak berdasarkan persamaan

-: = -: c⨁-: •⨁-: ‚⨁-: ƒ

PBAS rand

PBAS rand menghasilkan barisan semuacak berdasarkan persamaan :

:;< = $ :+ 0

dengan a = 1103515245, c = 12345, m = 231 serta x1 adalah nilai awal.

PBAS rand48

PBAS rand menghasilkan barisan semuacak berdasarkan persamaan :

:;< = $ :+ 0

dengan a = 25214903917, c = 11, m = 248 serta x1 adalah nilai awal.

PBAS minstd

PBAS minstd menghasilkan barisan semuacak berdasarkan persamaan :

PBAS Linear Congruential Generator (LCG) Input : parameter a,b dan m serta seedx0

Output : barisan angka semuacak <, , _, ⋯ Proses :

1. Untuk i dari 1 sampai dengan n melakukan :

: = $ : <+ o , & ≥ 1

2. Hasil <, , _, ⋯

Parameter yang digunakan dalam LCG1 adalah a = 1, b = 23, m = 35 dan

x1 = 9 sedangkan pada LCG2 adalah a = 1227, b = 0, m = 131072 dan

x1 = 1.

D. Kelas Keempat PBAS MT19937

PBAS MT19937 yang dibuat oleh Makoto Matsumoto dan Takuji

Nishimura merupakan varian dari algoritma twisted feedback shift-register

Lampiran 2. Plot Nilai Peluang Matriks Transisi Orde Satu Kelas Kesatu Gugus Data Tipe 1

(a) Tanpa Overlap PBAS X9.17 (b) dengan Overlap PBAS X.917

(c) Tanpa Overlap PBAS X9.31 (d) dengan Overlap PBAS X9.31.

Lampiran 3. Plot Nilai Peluang Matriks Transisi Orde Satu Kelas Kesatu Gugus Data Tipe 2

(a) Tanpa Overlap PBAS X9.17 (b) dengan Overlap PBAS X.917

Lampiran 4. Plot Nilai Peluang Matriks Transisi Orde Satu Kelas Kesatu Gugus Data Tipe 3

(a) Tanpa Overlap PBAS X9.17 (b) dengan Overlap PBAS X.917

(c) Tanpa Overlap PBAS X9.31 (d) dengan Overlap PBAS X9.31.

Lampiran 5. Plot Nilai Peluang Matriks Transisi Orde Dua Kelas Kesatu Gugus Data Tipe 1

(a) Tanpa Overlap PBAS X9.17 (b) dengan Overlap PBAS X.917

Lampiran 6. Plot Nilai Peluang Matriks Transisi Orde Dua Kelas Kesatu Gugus Data Tipe 2

(a) Tanpa Overlap PBAS X9.17 (b) dengan Overlap PBAS X.917

(c) Tanpa Overlap PBAS X9.31 (d) dengan Overlap PBAS X9.31.

Lampiran 7. Plot Nilai Peluang Matriks Transisi Orde Dua Kelas Kesatu Gugus Data Tipe 3

(a) Tanpa Overlap PBAS X9.17 (b) dengan Overlap PBAS X.917

Lampiran 8. Plot Nilai Peluang Matriks Transisi Orde Satu Kelas Kedua Gugus Data Tipe 1

(a) Tanpa Overlap (b) dengan Overlap.

Lampiran 9. Plot Nilai Peluang Matriks Transisi Orde Satu Kelas Kedua Gugus Data Tipe 2

(a) Tanpa Overlap (b) dengan Overlap

Lampiran 10. Plot Nilai Peluang Matriks Transisi Orde Satu Kelas Kedua Gugus Data Tipe 3

Lampiran 11. Plot Nilai Peluang Matriks Transisi Orde Dua Kelas Kedua Gugus Data Tipe 1

(a) Tanpa Overlap (b) dengan Overlap

Lampiran 12. Plot Nilai Peluang Matriks Transisi Orde Dua Kelas Kedua Gugus Data Tipe 2

(a) Tanpa Overlap (b) dengan Overlap

.

Lampiran 13. Plot Nilai Peluang Matriks Transisi Orde Dua Kelas Kedua Gugus Data Tipe 3

Lampiran 14. Plot Nilai Peluang Matriks Transisi Orde Satu Kelas Ketiga Gugus Data Tipe 1

(a) Tanpa Overlap PBAS LCG1 (b) dengan Overlap PBAS LCG1

(c) Tanpa Overlap PBAS Coveyou (d) dengan Overlap PBAS Coveyou

(e) Tanpa Overlap PBAS LCG2 (f) dengan Overlap PBAS LCG2

Lampiran 15. Plot Nilai Peluang Matriks Transisi Orde Satu Kelas Ketiga Gugus Data Tipe 2

(a) Tanpa Overlap PBAS LCG1 (b) dengan Overlap PBAS LCG1

(c) Tanpa Overlap PBAS Coveyou (d) dengan Overlap PBAS Coveyou

(e) Tanpa Overlap PBAS LCG2 (f) dengan Overlap PBAS LCG2

Lampiran 16. Plot Nilai Peluang Matriks Transisi Orde Satu Kelas Ketiga Gugus Data Tipe 3

(a) Tanpa Overlap PBAS LCG1 (b) dengan Overlap PBAS LCG1

(c) Tanpa Overlap PBAS Coveyou (d) dengan Overlap PBAS Coveyou

(e) Tanpa Overlap PBAS LCG2 (f) dengan Overlap PBAS LCG2

Lampiran 17. Plot Nilai Peluang Matriks Transisi Orde Dua Kelas Ketiga Gugus Data Tipe 1

(a) Tanpa Overlap PBAS LCG1 (b) dengan Overlap PBAS LCG1

(c) Tanpa Overlap PBAS Coveyou (d) dengan Overlap PBAS Coveyou

(e) Tanpa Overlap PBAS LCG2 (f) dengan Overlap PBAS LCG2

Lampiran 18. Plot Nilai Peluang Matriks Transisi Orde Dua Kelas Ketiga Gugus Data Tipe 2

(a) Tanpa Overlap PBAS LCG1 (b) dengan Overlap PBAS LCG1

(c) Tanpa Overlap PBAS Coveyou (d) dengan Overlap PBAS Coveyou

(e) Tanpa Overlap PBAS LCG2 (f) dengan Overlap PBAS LCG2

Lampiran 19. Plot Nilai Peluang Matriks Transisi Orde Dua Kelas Ketiga Gugus Data Tipe 3

(a) Tanpa Overlap PBAS LCG1 (b) dengan Overlap PBAS LCG1

(c) Tanpa Overlap PBAS Coveyou (d) dengan Overlap PBAS Coveyou

(e) Tanpa Overlap PBAS LCG2 (f) dengan Overlap PBAS LCG2

Lampiran 20. Plot Nilai Peluang Matriks Transisi Orde Satu Kelas Keempat Gugus Data Tipe 1

(a) Tanpa Overlap PBAS mt19937_1999

(b) dengan Overlap PBAS mt19937_1999

(c) Tanpa Overlap PBAS random128_bsd

(d) dengan Overlap PBAS random128_bsd

Lampiran 21. Plot Nilai Peluang Matriks Transisi Orde Satu Kelas Keempat Gugus Data Tipe 2

(a) Tanpa Overlap PBAS mt19937_1999

(b) dengan Overlap PBAS mt19937_1999

(c) Tanpa Overlap PBAS random128_bsd

(d) dengan Overlap PBAS random128_bsd

Lampiran 22. Plot Nilai Peluang Matriks Transisi Orde Satu Kelas Keempat Gugus Data Tipe 3

(a) Tanpa Overlap PBAS mt19937_1999

(b) dengan Overlap PBAS mt19937_1999

(c) Tanpa Overlap PBAS random128_bsd

(d) dengan Overlap PBAS random128_bsd

Lampiran 23. Plot Nilai Peluang Matriks Transisi Orde Dua Kelas Keempat Gugus Data Tipe 1

(a) Tanpa Overlap PBAS mt19937_1999

(b) dengan Overlap PBAS mt19937_1999

(c) Tanpa Overlap PBAS random128_bsd

(d) dengan Overlap PBAS random128_bsd

Lampiran 24. Plot Nilai Peluang Matriks Transisi Orde Dua Kelas Keempat Gugus Data Tipe 2

(a) Tanpa Overlap PBAS mt19937_1999

(b) dengan Overlap PBAS mt19937_1999

(c) Tanpa Overlap PBAS random128_bsd

(d) dengan Overlap PBAS random128_bsd

Lampiran 25. Plot Nilai Peluang Matriks Transisi Orde Dua Kelas Keempat Gugus Data Tipe 3

(a) Tanpa Overlap PBAS mt19937_1999

(b) dengan Overlap PBAS mt19937_1999

(c) Tanpa Overlap PBAS random128_bsd

(d) dengan Overlap PBAS random128_bsd

Lampiran 26. Ringkasan Statistik Nilai Peluang Matriks Transisi Orde Satu dan Dua Kelas Kesatu

Tipe Gugus

Data

X9.17 X9.31

Tanpa Overlap dengan Overlap Tanpa Overlap dengan Overlap

min maks modus min maks modus min maks modus min maks modus

Orde Satu Satu 0,03347 0,040987 0,038501; 0,038713; 0,038725; 0,039205 0,03347 0,040987 0,038501; 0,038713; 0,038725; 0,039205 0,023233 0,052397 0,036579; 0,038066; 0,04; 0,040701 0,021234 0,053563 0,036031; 0,040731; 0,043478 Dua 0,027584 0,049288 0,034836; 0,039123; 0,040014; 0,041136 0,027586 0,052005 0,034256; 0,034896; 0,035392; 0,035615 0,027806 0,050538 0,04007 0,027855 0,051486 0,03867 Tiga 0,027699 0,0406463 0,034474; 0,03909; 0,039612 0,027706 0,051541 0,039366 0,028504 0,046435 0,037152; 0,037471; 0,037683; 0,038442 0,028408 0,047592 0,034422; 0,035834; 0,036432; 0,038098 Orde Dua Satu 0 0.15152 0 0 0,15385 0 0 0,161760 0 0 0,15873 0 Dua 0 0,1383 0 0 0,12766 0 0 0,12941 0 0 0,13043 0 Tiga 0 0,12931 0,041667 0 0,12162 0,045455 0 0,12081 0,041667 0 0,14634 0,034483

Lampiran 27 Ringkasan Statistik Nilai Peluang Matriks Transisi Orde Satu dan Dua Kelas Kedua

Tipe Gugus

Data

Orde1 Orde2

Tanpa Overlap dengan Overlap Tanpa Overlap dengan Overlap

min maks modus min maks modus min maks modus min maks modus

Satu 0.025806 0.055297 0.035733; 0,040695 0.024269 0.052632 0.037147 0 0.16 0 0 0.16216 0 Dua 0.026834 0.049698 0.038356; 0.039041 0.026746 0.051572 0.36167; 0.037562; 0.038553; 0.039817 0 0.13514 0 0 0.12281 0 Tiga 0.029106 0.049264 0.037393; 0.038934; 0.039243; 0.04002 0.028312 0.049126 0.04001 0 0.11034 0.033333 0 0.11905 0.043478

Lampiran 28. Ringkasan Statistik Nilai Peluang Matriks Transisi Orde Satu dan Dua Kelas Ketiga

Tipe Gugus

Data

Orde1 Orde2

Tanpa Overlap dengan Overlap Tanpa Overlap dengan Overlap

min maks modus min maks modus min maks modus min maks modus

Coveyou Satu 0.068092 0.08807 0 0.066718 0.086144 0.038549 0.12332 0 0.042222 0.12304 0 Dua 0.068977 0.085401 0 0.06784 0.084641 0.33445 0.13746 0 0.024735 0.14706 0 Tiga 0.70263 0.085722 0 0.069731 0.08329 0.039655 0.11652 0 0.045614 0.11453 LCG2 Satu 0.07117 0.082851 0 0.07815 0.083464 0 0.04778 0.11401 0 0.050676 0.1134 Dua 0.07221 0.082189 0 0.07273 0.081287 0 0.0553 0.10793 0 0.55046 0.10799 Tiga 0.0741 0.080385 0 0.07396 0.080373 0 0.0598 0.10413 0 0.05892 0.10385 gfsr4 Satu 0.026151 0.056125 0.03814 0.027473 0.053895 0.03641 0.006897 0.15152 0 0.009804 0.15714 0 Dua 0.028217 0.05111 0.036042, 0.036504, 0.037204, 0.03767 0.026704 0.050177 0.036739, 0.037948, 0.038168, 0.039345 0.006897 0.14118 0 0.007042 0.15789 0 Tiga 0.029609 0.049947 0.036598, 0.037376, 0.038522, 0.040415 0.029058 0.0495 0.037577 0.005747 0.1131 0.038462 0.005814 0.11719 0.034014

Lampiran 29. Ringkasan Statistik Nilai Peluang Matriks Transisi Orde Satu dan Dua Kelas Keempat

Tipe Gugus

Data

Orde1 Orde2

Tanpa Overlap dengan Overlap Tanpa Overlap dengan Overlap

min maks modus min maks modus min maks modus min maks modus

mt19937_1999 Satu 0.023913 0.052929 0.03622, 0.03832, 0.039226, 0.039895 0.024755 0.052002 0.037095, 0.037746 0.009709 0.16438 0 0.009804 0.16667 0 Dua 0.028552 0.049147 0.039216 0.028423 0.051405 0.039195 0.006944 0.13333 0 0.007299 0.13462 0 Tiga 0.028609 0.049065 0.036041 0.027322 0.048221 0.041721 0.005618 0.11207 0.041667 0.005525 0.11024 0.047619 random128_bsd Satu 0.024185 0.053093 0.037746, 0.03937 0.025167 0.051583 0.037487 0.009709 0.18293 0 0.010204 0.18841 0 Dua 0.026407 0.049095 0.036803, 0.038582, 0.039451 0.02714 0.05107 0.034507, 0.03523, 0.035334, 0.035591 0.007092 0.14286 0 0.006757 0.14407 0 Tiga 0.029946 0.046549 0.036345 0.029404 0.047279 0.037056 0.007092 0.11429 0.035714 0.005525 0.11486 0.043478

Lampiran 30. Plot Tingkat Kecocokan Gugus Data tanpa dan dengan Overlap

Orde Satu, Dua serta Tiga Kelas Kesatu

(a) Tipe 1

(b) Tipe 2

(c) Tipe 3

Lampiran 31. Plot Tingkat Kecocokan Gugus Data tanpa dan dengan Overlap

Orde Satu, Dua serta Tiga Kelas Kedua

(a) Tipe 1

(b) Tipe 2

(c) Tipe 3

Lampiran 32. Plot Tingkat Kecocokan Gugus Data tanpa dan dengan Overlap

Orde Satu, Dua serta Tiga Kelas Ketiga

(a) Tipe 1

(b) Tipe 2

Lampiran 33. Plot Tingkat Kecocokan Gugus Data tanpa dan dengan Overlap

Orde Satu, Dua serta Tiga Kelas Keempat

(a) Tipe 1

(b) Tipe 2

(c) Tipe 3

Lampiran 34. Plot Tingkat Kecocokan Keempat Kelas PBAS Gugus Data Tipe 1 tanpa Overlap

Lampiran 35. Plot Tingkat Kecocokan Keempat Kelas PBAS Gugus Data Tipe 1 dengan Overlap

(a) Orde 1

(b) Orde 2 (c) Orde 3

Lampiran 36. Plot Tingkat Kecocokan Keempat Kelas PBAS Gugus Data Tipe 2 tanpa Overlap

(a) Orde 1

Lampiran 37. Plot Tingkat Kecocokan Keempat Kelas PBAS Gugus Data Tipe 2 dengan Overlap

(a) Orde1

(b) Orde 2 (c) Orde 3

Lampiran 38. Plot Tingkat Kecocokan Keempat Kelas PBAS Gugus Data Tipe 3 tanpa Overlap

(a) Orde 1

Lampiran 39. Plot Tingkat Kecocokan Keempat Kelas PBAS Gugus Data Tipe 3 dengan Overlap

(a) Orde 1

(b) Orde 2 (c) Orde 3

Lampiran 40. Ringkasan Statistik Gugus Data Tipe 1 tanpa Overlap pada Orde Satu

PBAS Mean Minimum Q1 Median Q3 Maximum

Kelas Kesatu X917 0,0386 0,0382 0,0384 0,0386 0,0388 0,0392 X931 0,0384 0,0365 0,0380 0,0382 0,0388 0,0403 Kelas Kedua BBS 0,0386 0,0382 0,0385 0,0385 0,0388 0,0390 Kelas Ketiga Cmrg 0,0385 0,0379 0,0381 0,0385 0,0387 0,0389 Coveyou 0,0771 0,0765 0,0769 0,0771 0,0773 0,0780 fishman2x 0,0385 0,0380 0,0382 0,0384 0,0387 0,0392 fishman18 0,0386 0,0369 0,0382 0,0386 0,0391 0,0405 fishman20 0,0386 0,0366 0,0382 0,0385 0,0392 0,0400 gfsr4 0,0385 0,0381 0,0383 0,0386 0,0386 0,0389 Knuthran 0,0384 0,0377 0,0383 0,0384 0,0386 0,0394 knuthran2 0,0389 0,0375 0,0382 0,0392 0,0394 0,0407 LCG1 0,0435 0,0417 0,0423 0,0430 0,0445 0,0472 LCG2 0,0769 0,0764 0,0766 0,0769 0,0772 0,0773 Randu 0,0769 0,0763 0,0767 0,0769 0,0771 0,0778 lecuyer21 0,0388 0,0378 0,0380 0,0386 0,0393 0,0402 Minstd 0,0385 0,0366 0,0378 0,0387 0,0391 0,0406

Kelas Ketiga mrg 0,0383 0,0373 0,0379 0,0383 0,0388 0,0397 ran0 0,0384 0,0363 0,0380 0,0384 0,0391 0,0396 ran1 0,0387 0,0370 0,0382 0,0388 0,0390 0,0402 ran2 0,0387 0,0372 0,0379 0,0385 0,0394 0,0403 ran3 0,0387 0,0370 0,0382 0,0388 0,0392 0,0399 rand 0,0766 0,0746 0,0758 0,0768 0,0776 0,0784 rand48 0,0384 0,0374 0,0378 0,0382 0,0391 0,0396 zuf 0,0385 0,0374 0,0378 0,0383 0,0393 0,0400 Kelas Keempat mt19937 0,0382 0,0370 0,0376 0,0382 0,0389 0,0393 mt19937_1998 0,0384 0,0370 0,0380 0,0381 0,0389 0,0404 mt19937_1999 0,0385 0,0381 0,0383 0,0385 0,0388 0,0390 rand128_bsd 0,0385 0,0379 0,0384 0,0385 0,0387 0,0390 random128_glibc2 0,0388 0,0379 0,0384 0,0388 0,0391 0,0399 random128_libc5 0,0381 0,0361 0,0374 0,0379 0,0388 0,0403 rand32_bsd 0,0389 0,0364 0,0385 0,0389 0,0394 0,0409 rand32_glibc2 0,0384 0,0372 0,0379 0,0383 0,0389 0,0397 rand32_libc5 0,0388 0,0375 0,0383 0,0387 0,0394 0,0404 rand64_bsd 0,0383 0,0366 0,0374 0,0386 0,0388 0,0395 rand64_glibc2 0,0383 0,0370 0,0378 0,0383 0,0386 0,0402

Lampiran 41. Rataan Tingkat Kecocokan Kunci OTK Canbera, Jenewa dan New York

Ulangan ke-

Tingkat Kecocokan

Canbera Jenewa New York

Orde1 Orde2 Orde3 Orde1 Orde2 Orde3 Orde1 Orde2 Orde3 1 0.037 0.053 0.031 0.039 0.045 0.036 0.043 0.045 0.041 2 0.037 0.038 0.029 0.036 0.041 0.045 0.040 0.045 0.036 3 0.036 0.038 0.033 0.029 0.035 0.045 0.039 0.037 0.038 4 0.041 0.034 0.038 0.036 0.037 0.030 0.035 0.039 0.033 5 0.027 0.045 0.034 0.034 0.039 0.045 0.040 0.042 0.038 6 0.039 0.046 0.042 0.033 0.050 0.034 0.037 0.041 0.044 7 0.040 0.042 0.046 0.04 0.037 0.034 0.038 0.038 0.040 8 0.038 0.041 0.041 0.046 0.039 0.039 0.043 0.041 0.030 9 0.038 0.041 0.042 0.037 0.035 0.038 0.044 0.032 0.036 10 0.039 0.033 0.040 0.034 0.036 0.045 0.041 0.040 0.032 Rataan 0.037 0.041 0.038 0.036 0.039 0.039 0.040 0.040 0.037

Lampiran 42. Program Simulasi

% Gugus Data Tanpa Overlap

file='random128_bsd'; files=strcat(file,'.txt'); for i =1:10 fid=fopen(files,'r'); Teks=fread(fid,'*char')'; hasil=Teks(1+75000*(i-1):i*75000); n=length(hasil) hasil1=Teks(1+75000*i:i*75000+25000); n=length(hasil1) fclose(fid); myfile = strcat(file,'in_',num2str(i),'.txt'); fid2=fopen(myfile,'w'); fprintf(fid2,hasil); fclose(fid2); myfile = strcat(file,'har_',num2str(i),'.txt'); fid3=fopen(myfile,'w'); fprintf(fid3,hasil1); fclose(fid3); end tesnon(file); [fit,jum]=asal(file); function [fit,jum]=overlaps(file) files=strcat(file,'.txt'); fid=fopen(files,'r'); Teks=fread(fid,'*char')'; hasil=Teks(1:75000); n=length(hasil) hasil1=Teks(75001:100000); n=length(hasil1) fclose(fid); myfile = strcat(file,'oin_1.txt'); fid2=fopen(myfile,'w'); fprintf(fid2,hasil); fclose(fid2); myfile = strcat(file,'ohar_1.txt'); fid3=fopen(myfile,'w'); fprintf(fid3,hasil1); fclose(fid3); for i =2:14 hasil2=Teks(65000*(i-1):(65000*(i-1)+75000)-1); n=length(hasil2) hasil3=Teks(65000*(i-1)+75000:(65000*(i-1)+100000)-1); n=length(hasil3) myfile = strcat(file,'oin_',num2str(i),'.txt');

fid5=fopen(myfile,'w'); fprintf(fid5,hasil2); fclose(fid5); = strcat(file,'ohar_',num2str(i),'.txt'); fid6=fopen(myfile,'w'); fprintf(fid6,hasil3); fclose(fid6); end tesover(file); [fit,jum]=asalover(file); function tesnon(file) for i= 1:10 d=strcat(file,'in_',num2str(i),'.txt'); fid=fopen(d,'r'); Teks=fread(fid,'*char')';

[bigram,pi, matrans]= ordesatu(Teks); gen(Teks,matrans,file,i); fclose(fid); end function [fit,jum]=asal(file) for i =1:10 d=strcat(file,'har_',num2str(i),'.txt'); fid=fopen(d,'r'); Teks=fread(fid,'*char')'; fclose(fid); e=strcat(file,'out_',num2str(i),'.txt'); fid2=fopen(e,'r'); Teks2=fread(fid2,'*char')'; fclose(fid2); jum(i)=sum(Teks==Teks2); fit(i)=sum(Teks==Teks2)/25000; end function gen(Teks,matrans,file,cout) n=length(Teks); TEMP='ABCDEFGHIJKLMNOPQRSTUVWXYZ'; prefiks=Teks(n); myfile = strcat(file,'out_',num2str(cout),'.txt'); fid=fopen(myfile,'w'); for i=1:25000 awal=findstr(TEMP,prefiks); baris=matrans(awal,:); clear j; Jumlah=0; for j=1:26, if baris(:,j) ~= 0,

frek(j) = Jumlah; else frek(j) = 0; end end a=rand(1); h=cariInterv(frek,a); fwrite(fid,TEMP(h),'char'); prefiks=TEMP(h); end fclose(fid);

function [bigram,pi, matrans]= ordesatu(Teks) n=length(Teks); count=1; for i=1:26 myvar=5; for j=1:26 pa =(cat(1,(64+i),(64+j)))'; temp =length(strfind(Teks,char(pa))); bigram(i,j)=temp; end; jumstate(i)=sum(bigram(i,:)); if (jumstate(i)==0) jumstate(i)=myvar; end matrans(i,:)=bigram(i,:)/jumstate(i); pi(i)=1/(n-1)*jumstate(i); hit(i) = sum(matrans(i,:)); end; function [B,pi2,matri]=ordedua(Teks) B=zeros(676,26); n=length(Teks); %cout=0; for i=1:n-2 hur=Teks((i-1)+1:i+2); baris=((hur(1)-65)*26)+(hur(2)-64); kolom=hur(3)-64; B(baris,kolom)=B(baris,kolom)+1; end for j=1:676 myvar=5; jumstate(j)=sum(B(j,:)); if (jumstate(j)==0) jumstate(j)=myvar; end

matri(j,:)=B(j,:)/jumstate(j); pi2(j)=1/(n-2)*jumstate(j); hit(j) = sum(matri(j,:)); end function [gram,pi2,matri]=ordetiga(Teks) gram=zeros(17576,26); n=length(Teks); cout=0; for i=1:n-3 hur=Teks((i-1)+1:i+3); baris=((hur(1)-65)*26^2)+((hur(2)-65)*26)+(hur(3)-64); kolom=hur(4)-64; gram(baris,kolom)=gram(baris,kolom)+1; end for j=1:17576 myvar=5; jumstate(j)=sum(gram(j,:)); if (jumstate(j)==0) jumstate(j)=myvar; end matri(j,:)=gram(j,:)/jumstate(j); pi2(j)=1/(n-2)*jumstate(j); hit(j) = sum(matri(j,:)); end

function hasil = cariInterv(frek, a) for i=1:26 if (a<frek(i)); count=i; break; end; end; if (count>1) c=find(frek>0); baru=frek(c); d=length(c); hit=0; for i=1:d if (count<=c(i)) hit=i; break; end; end; %hit if (hit==1) hasil=count;

set=(frek(count)+baru(hit-1))/2; if (a>set) hasil=count; else hasil=c(hit-1); end end else hasil = count; end

Lampiran 43. Pendugaan Kemungkinan Maksimum Peluang Matriks Transis Model Rantai Markov

Jika matriks peluang transisi P tidak diketahui maka P akan diduga dari data. Parameter-parameter yang akan diduga matriks berukuran & ∙ & dengan input

pij. Sebuah contoh dari rantai markov <: ≡ <, , ⋯ , : yang merupakan

realisasi peubah acak 9<: dengan peluangnya adalah

6 9<: = <: = 6 9< = < … 6 9J= J|9<J < = <J < : JH = 6 9< = < … 6 9J = J|9J <= J < : JH

Fungsi kemungkinan untuk matriks transisinya adalah

† A = 6 9< = < … A‡ˆ‰Š‡ˆ :

JH

Jika didefinisikan jumlah transisi NBC identik dengan jumlah terjadinya i

diikuti oleh j dalam 9<: maka fungsi kemungkinan diatas dapat dinyatakan dalam bentuk

† A = 6 9< = < … … ABC:‹e CH< BH<

Memaksimumkan fungsi kemungkinan pij dilakukan sebagai berikut :

ℒ A = #&† A = #&6 9< = < + R &BC #& ABC B,C

•ℒ A •ABC =

&BC

Untuk menduga ÂBC maka turunan pertama tersebut disamadengankan dengan nol sehingga diperoleh

:‹e Ž‹e = 0.

Akibatnya penduga peluang transisi menjadi ∞. Hal tersebut terjadi karena peluang untuk melakukan seluruh transisi dari suatu state harus sama dengan 1 sehingga untuk setiap i

R ABC = 1 B,C

Ini berarti jumlah derajat bebas dari matriks peluang transisi bukan n2 tetapi & & − 1 .

Terdapat dua metode yang dapat digunakan untuk mengatasi masalah tersebut yaitu metode pertama adalah secara eksplisit mengeluarkan parameter- parameter sedangkan metode kedua adalah menggunakan pengali Lagrange untuk menjalankan pembatasan-pembatasan. Tesis ini hanya menjelaskan metode pertama.

Penjelasan mengenai metode pertama adalah sebagai berikut. Pertama, mengambil peluang transisi secara acak. Karena peluang harus sama dengan 1 atau AB<+ AB + ⋯ + AB = 1 maka dibuat sebuah fungsi kemungkinan maksimum baru yang memiliki peubah bebas sebanyak n-1 yaitu

# AB<, AB , ⋯ , AB < = AB<:‹Š ∙ AB:‹Y⋯ •1 − wAB<:‹Š+ AB:‹Y + ⋯ + AB <:‹•‰Šx‘ :‹•

Memaksimumkan fungsi kemungkinan # AB<, AB , ⋯ , AB < dilakukan sebagai berikut :

# AB<, AB , ⋯ , AB < = ln # AB<, AB , ⋯ , AB <

= &B<ln AB<+ &B ln AB + ⋯ + &B ln •1 − wAB<:‹Š+ AB:‹Y + ⋯ + AB <:‹•‰Šx‘

Turunan pertamanya adalah •# AB<, AB , ⋯ , AB < •AB< = &B< AB<− &B 1 − wAB<:‹Š+ AB:‹Y+ ⋯ + AB <:‹•‰Šx= 0 ⋮ •# AB<, AB , ⋯ , AB < = &B < &B :‹Š :‹Y :‹•‰Š = 0

sehingga diperoleh persamaan berikut : &B< AB< = &B AB = ⋯ = &B 1 − wAB<:‹Š+ AB:‹Y + ⋯ + AB <:‹•‰Šx Atau dapat dinyatakan dengan

&BC

ABC =

&B

AB

Maka penduga kemungkinan maksimumnya adalah : ÂBC = &&BC

B ∙ AB = &BC &B ∙ &B ∑CH<&BC = •:‹e:‹e

e\Š untuk semua = ≠ 1.

Lampiran 44. Daftar Istilah

Dekripsi : Proses mentransformasi siferteks menjadi plainteks dimana setiap fungsi dekripsi ditentukan oleh sebuah algoritma dekripsi dan sebuah kunci (Lidl 1997).

Enkripsi : 1) Proses mentransformasi plainteks menjadi siferteks dimana setiap fungsi enkripsi ditentukan oleh sebuah algoritma enkripsi dan sebuah kunci (Lidl 1997).

2) Pemetaan plainteks ke siferteks berdasarkan barisan kunci terpilih (Tilborg 2005).

Informasi rahasia

: Informasi yang karena nilainya, perlu disembunyikan dan dilindungi agar tidak terbuka untuk umum atau jatuh kepada pihak lain dimana apabila informasi tersebut diketahui oleh umum/pihak lain akan menimbulkan kerugian (Hadiwibowo 2006).

Kriptografi : Studi teknik matematika yang berhubungan dengan aspek- aspek pengamanan informasi seperti kerahasiaan, integritas data, autentikasi entitas, dan autentikasi data (Menezes,et al. 1997).

Kunci : 1) Parameter khusus yang diperlukan dalam suatu transformasi (http://www.thefreedictionary.com).

2) Suatu elemen dari barisan abjad yang dipilih untuk mendefinisikan proses enkripsi (Tilborg 2005).

Pengamanan informasi

: Sebuah lingkaran proses yang terus menerus dengan tujuan mengamankan informasi-informasi penting dan rahasia (Hadiwibowo 2006).

Plainteks : 1) Bentuk tidak terenkripsi dari suatu berita terenkripsi (http://www.thefreedictionary.com)

2) Suatu berita dalam bentuk yang dapat dibaca atau dimengerti (http://dictionary.reference.com)

Siferteks Teks dalam bentuk terenkripsi, lawan dari plainteks (http://www.thefreedictionary.com)

ABSTRACT

SARI AGUSTINI HAFMAN. The Uses of Markov Chain in the Development of Key Predictability Test Methodology. Supervisors: ANANG KURNIA and AGUS BUONO.

One Time Key (OTK) system with key from alphabetical sequences is one of symmetric encryption algorithm that used in Indonesia to protect secret information until now. Alphabetic sequences in OTK system must be cryptographically secure pseudorandom sequences. OTK system in Indonesia only tested by overlapping m-tuple test developed by Marsaglia (2005). Overlapping m-tuple test doesn’t check the unpredictability of alphabetical sequences, it just tests distribution form and indpendency of alphabetical sequences. So, alphabetical sequences in OTK system cannot be used in cryptography application by the reason of unpredictability sequence is unknown. Because some of Pseudorandom Number Generator (PRNG) algorithm based on block cipher algorithm that has markovian properties, markov chain model used to detect predictability alphabetical sequences.

Data in this study consists of two data sources i.e. simulation data that generated from four classes PRNG and OTK system keys in 2005 that used in three communication units of foreign ministry. Simulation data is used to develop key predictability test methodology by find predictability threshold value based on characteristic of match level. OTK system keys will be predictability tested by comparing characteristic of match level with threshold value that is obtained from simulation data.

The first result of this study shows the alphabetical sequence generated by first, second and fourth PRNG class can't be modeled with first-order markov chain until third-order. The third PRNG class, except PRNG LCG1, LCG2, coveyou, rand and randu, also can't be modeled with first order markov chain until third-order. Sequence generated by LCG2, coveyou, rand and randu are not fit for use in cryptography because it has a high probability to be modeled by high orders of markov chain (above the order of three). The second result obtains predictability threshold value with markov chains based on the minimum and maximum match level on the second-order and third-order. The last result shows the size of training data must be greater than the size of the observation data with the best ratio between the size of training data with observational data is 100: 10.

The results of testing using 10 times repeated shows that the match level average of the OTK system key match on the all of three-order less than 4.5 x 10-2, so the OTK system the is feasible to secure information in three communication units.

Keywords : One Time Key (OTK), markov chain, PRNG, probability transition, match level

PENDAHULUAN

Latar Belakang

Salah satu dampak negatif perkembangan teknologi informasi adalah timbulnya kerawanan dalam komunikasi seperti pemalsuan, penyadapan, perusakan, pengubahan informasi. Dalam pengamanan informasi terdapat tiga aspek yang harus diperhatikan yaitu pengamanan fisik, administratif dan logic. Penggunaan kriptografi merupakan salah satu upaya pengamanan secara logic.

Berdasarkan prinsip Kerckhoffs (1883), keamanan sistem kriptografi harus hanya bergantung pada kunci. Dalam sistem kriptografi, kunci umumnya dihasilkan oleh pembangkit bilangan acak nyata (PBAN) atau pembangkit bilangan acaksemu (PBAS). Output dari PBAN atau PBAS ini berupa barisan kunci berbentuk bit atau diubah menjadi bentuk barisan lain bergantung pada kebutuhan sistem kriptografi seperti barisan digit (0-9), barisan bilangan heksadesimal (0-F), barisan karakter (0-255) dan barisan abjad (A-Z).

Terdapat tiga tipe barisan yang dihasilkan oleh PBAN dan PBAS yaitu

pseudo-random sequences (barisan acaksemu), cryptographically secure pseudo-

random sequences (barisan acaksemu yang aman secara kriptografis) dan real

random sequences (barisan yang acak nyata). Barisan dikatakan acaksemu jika secara statistik terlihat acak (berdistribusi seragam dan saling bebas). Barisan dikatakan aman secara kriptografis bila barisan tersebut secara statistik terlihat acak serta unpredictable (ketidakterdugaan). Barisan dikatakan acak nyata bila memenuhi tiga syarat yaitu barisan tersebut secara statistik terlihat acak, ketidakterdugaan dan barisan yang sama tidak dapat dihasilkan kembali (Schneier 1996). Hanya barisan acaksemu yang aman secara kriptografis dan barisan acak nyata yang dapat digunakan dalam sistem kriptografi.

Sistem One Time Key (OTK) yang menggunakan kunci berupa barisan abjad merupakan salah satu contoh sistem kriptografi yang masih digunakan di Indonesia untuk mengamankan informasi yang bersifat rahasia. Berdasarkan prinsip Kerckhoffs (1883), barisan abjad pada OTK minimal harus berupa barisan acaksemu yang aman secara kriptografis.

Uji statistik untuk menguji bentuk distribusi dari suatu barisan kunci mulai berkembang sejak masa perang dunia I yang dipelopori oleh Kendall dan Smith (1938). Uji ini bertujuan menguji barisan digit dan terdiri atas empat uji yaitu uji frekwensi, uji serial, uji poker dan uji gap. Keempat uji tersebut merupakan pengembangan dari uji kecocokan chi-square. Sejak tahun 1938 sampai dengan tahun 2005, uji-uji statistik untuk menguji barisan abjad hanya bertujuan mengetahui bentuk distribusi dari barisan kunci. Marsaglia (2005) mengajukan sebuah uji overlapping m-tuple test yang merupakan pengembangan dari uji serial yang dikembangkan oleh Beker dan Piper (1982).

Selama ini kunci yang digunakan dalam sistem OTK di Indonesia hanya diuji dengan menggunakan overlapping m-tuple test yang dikembangkan oleh Marsaglia (2005). Padahal uji tersebut hanya bertujuan menguji bentuk distribusi dan kesalingbebasan sehingga barisan yang telah lulus overlapping m-tuple test

belum dapat digunakan sebagai kunci sistem OTK karena ketidakterdugaan barisan tersebut belum diketahui.

Mengingat belum adanya penelitian mengenai ketidakterdugaan maka dilakukan penelitian untuk membahas pengujian terhadap keterdugaan suatu barisan abjad dengan menggunakan pendekatan rantai markov. Penelitian dibatasi pada pemodelan rantai markov karena beberapa algorirtma pembentuk PBAS yaitu DES dalam Lai (1992) serta AES dalam Daemen dan Rijmen (2007) merupakan markov cipher yang memiliki sifat markov. Hal ini menyebabkan jika suatu barisan kunci membentuk rantai markov maka barisan kunci tersebut tidak memenuhi ketidakterdugaan. Tetapi jika barisan kunci tersebut tidak membentuk rantai markov maka belum tentu barisan kunci tersebut memenuhi ketidakterdugaan.

Tujuan

Penelitian ini bertujuan mengembangkan metodologi untuk menguji keterdugaan suatu barisan abjad yang dihasilkan PBAS berdasarkan model rantai markov waktu diskrit.

Kriptografi Kriptografi ada

Dokumen terkait