Alternatif Uji Kriteria Avalans Sempurna Pada Sifer Blok Menggunakan Metode Fisher.
ALTERNATIF UJI KRITERIA AVALANS SEMPURNA
PADA SIFER BLOK MENGGUNAKAN METODE FISHER
ANDRIANI ADI LESTARI
SEKOLAH PASCASARJANA
INSTITUT PERTANIAN BOGOR
BOGOR
2015
PERNYATAAN MENGENAI TESIS DAN
SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA*
Dengan ini saya menyatakan bahwa tesis berjudul Alternatif Uji Kriteria
Avalans Sempurna pada Sifer Blok Menggunakan Metode Fisher adalah benar
karya saya dengan arahan dari komisi pembimbing dan belum diajukan dalam
bentuk apapun kepada perguruan tinggi mana pun. Sumber informasi yang berasal
atau dikutip dari karya yang diterbitkan maupun tidak diterbitkan dari penulis lain
telah disebutkan dalam teks dan dicantumkan dalam Daftar Pustaka di bagian
akhir tesis ini.
Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut
Pertanian Bogor.
Bogor, Februari 2015
Andriani Adi Lestari
NIM G151120011
RINGKASAN
ANDRIANI ADI LESTARI. Alternatif Uji Kriteria Avalans Sempurna pada Sifer
Blok Menggunakan Metode Fisher. Dibimbing oleh ANANG KURNIA dan
FARIT M. AFENDI.
Sifer blok merupakan salah satu teknik dalam kriptografi yang menyediakan
keamanan informasi, khususnya kerahasiaan. Salah satu kriteria yang harus
dipenuhi oleh sifer blok yang aman adalah kriteria avalans sempurna (strict
avalanche criterion) atau KAS. Suatu sifer blok memenuhi kriteria avalans teks
asli sempurna (strict plaintext avalanche criterion) atau KATAS jika setiap bit
teks sifer akan berubah dengan peluang setengah ketika satu bit teks asli berubah
untuk kunci yang tetap. Suatu sifer blok memenuhi kriteria avalans kunci
sempurna (strict key avalanche criterion) atau KAKS jika setiap bit teks sifer
akan berubah dengan peluang setengah ketika satu bit kunci berubah untuk teks
asli yang tetap. Berdasarkan konsep tersebut, Dawson mengembangkan suatu
metode untuk menentukan sifer blok memenuhi KAS. Pada penelitian ini akan
dikembangkan suatu metode alternatif untuk menentukan keterpenuhan KAS pada
suatu sifer blok.
Jika sifer blok memenuhi KAS maka setiap unsur pada matriks avalans yang
dibangkitkan oleh sifer blok tersebut bernilai setengah. Terdapat dua pendekatan
yang dapat digunakan untuk menentukan keterpenuhan KAS pada suatu sifer blok,
yaitu uji kesamaan matriks avalans berukuran besar dengan matriks setengah dan
uji setiap unsur dari matriks secara terpisah, kemudian mengkombinasikannya.
Pada penelitian ini pengembangan uji KAS dilakukan berdasarkan pendekatan ke2. Statistik uji alternatif yang diusulkan digunakan untuk menguji hipotesis bahwa
sifer blok memenuhi KAS adalah minus dua kali jumlah logaritma nilai p dari
statistik z pada masing-masing unsur matriks avalans rataan. Statistik uji tersebut
bersebaran khi kuadrat dengan derajat bebas dua kali dimensi dari matriks avalans
rataan.
Evaluasi uji KAS alternatif dan uji KAS Dawson dilakukan dengan
mengevaluasi kuasa uji masing-masing. Hasil penelitian yang dilakukan
menunjukkan bahwa kuasa uji KAS alternatif lebih besar dari uji KAS Dawson,
sehingga dapat disimpulkan bahwa uji KAS alternatif lebih baik dari uji KAS
Dawson.
Kata kunci: sifer blok, kriteria avalans sempurna, uji kriteria avalans sempurna
SUMMARY
ANDRIANI ADI LESTARI. Alternative of Strict Avalanche Criterion Test on
Block Cipher Using Fisher’s Method. Supervised by ANANG KURNIA and
FARIT M. AFENDI.
Block cipher is one of cryptography techniques used to provide information
security, especially confidentiality. Strict avalanche criterion (SAC) is a desirable
property of block cipher. A block cipher satisfies strict plaintext avalanche
criterion (SPAC) if each bit of a ciphertext block changes with the probability of
one half whenever any bit of a plaintext block changes for a fixed key. A block
cipher satisfies strict key avalanche criterion (SKAC) if each bit of a ciphertext
block changes with the probability of one half whenever any bit of a the key
changes for a fixed plaintext. Dawson proposed statistical based methods for
determining whether a block cipher satisfies the strict avalanche criterion. In this
study, we propose an alternative statistical test for defining a block cipher satisfies
the strict avalanche criterion.
A block cipher satisfies strict avalanche criterion if each entry of avalanche
matrix is equal to one half. There are two approaches to develop the alternative
test, the first is testing the equality of two large matrices and the second is testing
the equality of each entry to one half and then combined. In this study, we use the
second approach. We propose an alternative statistic to test the hypothesis that a
block cipher satisfies SAC. The statistic test is minus two times sum of the
logarithm of p-value, where the p-value is tail area probabilities of z statistic from
each entry of the mean of avalanche matrices. The test statistic follows a chisquared distribution with degree of freedom equals to two times dimension of the
matrix.
Simulations were conducted to compare the power of alternative SAC test to
Dawson SAC test. The result showed that the power of the alternative SAC test
was higher than the Dawson SAC test.
Keywords: block cipher, strict avalanche criterion, strict avalanche criterion test
© Hak Cipta Milik IPB, Tahun 2015
Hak Cipta Dilindungi Undang-Undang
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan
atau menyebutkan sumbernya. Pengutipan hanya untuk kepentingan pendidikan,
penelitian, penulisan karya ilmiah, penyusunan laporan, penulisan kritik, atau
tinjauan suatu masalah; dan pengutipan tersebut tidak merugikan kepentingan
IPB
Dilarang mengumumkan dan memperbanyak sebagian atau seluruh karya tulis ini
dalam bentuk apa pun tanpa izin IPB
PENGEMBANGAN UJI KRITERIA AVALANS SEMPURNA
PADA SIFER BLOK MENGGUNAKAN METODE FISHER
ANDRIANI ADI LESTARI
Tesis
sebagai salah satu syarat untuk memperoleh gelar
Magister Sains
pada
Program Studi Statistika
SEKOLAH PASCASARJANA
INSTITUT PERTANIAN BOGOR
BOGOR
2015
Penguji Luar Komisi pada Ujian Tesis: Prof. Dr. Ir. Khairil A. Notodiputro, MS
Judul Tesis
Nama
NIM
: Pengembangan Uji Kriteria Avalans Sempurna pada Sifer Blok
Menggunakan Metode Fisher
: Andriani Adi Lestari
: G151120011
Disetujui oleh
Komisi Pembimbing
Dr. Anang Kurnia
Ketua
Dr. Farit M. Afendi
Anggota
Diketahui oleh
Ketua Program Studi
Statistika
Dekan Sekolah Pascasarjana
Dr. Ir. Anik Djuraidah, MS
Dr. Ir. Dahrul Syah, M.Sc.Agr.
Tanggal Ujian: 22 Desember 2014
Tanggal Lulus:
PRAKATA
Bismillahirrohmanirrohim.
Puji dan syukur penulis panjatkan kehadirat Allah subhanahu wa ta’ala atas
segala rahmat, nikmat serta karunia-Nya sehingga penulis dipermudah dalam
menyelesaikan tesis dengan judul “Pengembangan Uji Kriteria Avalans Sempurna
pada Sifer Blok Menggunakan Metode Fisher”. Tesis ini disusun sebagai salah
satu syarat untuk memperoleh gelar Magister Sains pada program studi Statistika.
Penulis menyampaikan penghargaan dan ucapan terima kasih yang sebesarbesarnya kepada:
1. Dr. Anang Kurnia sebagai ketua komisi pembimbing dan Dr. Farit M. Afendi
sebagai anggota komisi pembimbing yang telah memberikan bimbingan dan
arahan selama penyusunan tesis ini serta Prof. Dr. Ir. Khairil A. Notodiputro,
MS selaku Penguji Luar Komisi atas masukan dan sarannya;
2. Seluruh staf pengajar pascasarjana Departemen Statistika IPB yang telah
banyak memberikan ilmu dan arahan selama perkuliahan sampai dengan
penyusunan tesis ini;
3. Suami dan anak-anakku atas do’a, pengertian, semangat, dan dukungannya;
4. Orangtua dan saudara-saudaraku atas do’a dan dukungannya;
5. Teman-teman (S2 dan S3) Statistika IPB atas kebersamaan, motivasi, dan
dukungannya;
6. Ibu Endang Lestari dan rekan-rekan kerja Puskaji Kriptografi khususnya Sari
Agustini Hafman dan Wildan atas bantuan, dukungan, motivasi dan sumbang
sarannya;
7. Seluruh pihak yang namanya tidak dapat disebutkan satu per satu yang telah
membantu dalam penyusunan tesis ini.
Penulis menyadari bahwa tesis ini masih banyak kekurangan. Oleh karena
itu kritik, saran, dan masukan sangat penulis harapkan demi penyempurnaan dan
perbaikan tesis ini. Semoga tesis ini bermanfaat.
Bogor, Februari 2015
Andriani Adi Lestari
DAFTAR ISI
DAFTAR TABEL
vi
DAFTAR GAMBAR
vi
DAFTAR LAMPIRAN
vi
GLOSARIUM
vi
PENDAHULUAN
Latar Belakang
Tujuan Penelitian
1
1
1
KRITERIA AVALANS SEMPURNA
1
MODEL ALTERNATIF UNTUK UJI KAS
6
EVALUASI UJI KAS ALTERNATIF
Tahapan Simulasi
Hasil Simulasi
9
10
11
IMPLEMENTASI UJI KAKS ALTERNATIF DAN UJI KAKS DAWSON
12
SIMPULAN DAN SARAN
Simpulan
Saran
13
13
13
DAFTAR PUSTAKA
14
LAMPIRAN
15
RIWAYAT HIDUP
26
DAFTAR TABEL
1.
2.
3.
Dua jenis kesalahan pada uji KAS
Ukuran blok plainteks, teks sifer, dan kunci dari sifer blok
Hasil uji KAKS dari beberapa sifer blok
9
12
13
DAFTAR GAMBAR
1.
2.
Pembangkitan vektor avalans
Kuasa dari uji KAS alternatif dan uji KAS Dawson untuk r 65536
dan s 1000
3
12
DAFTAR LAMPIRAN
1.
2.
3.
Ilustrasi enkripsi dan dekripsi dengan menggunakan sifer blok AES-128
Ilustrasi Uji KAKS
Kuasa dari uji KAS alternatif dan uji KAS Dawson untuk r 65536
dan s 1000
15
17
25
GLOSARIUM
Advanced Encryption Standard disingkat AES
Sifer blok simetri standar baru yang digunakan oleh pemerintah Amerika untuk
melindungi informasi sensitif. Algoritma Rijndael terpilih sebagai AES dari
sekumpulan algoritma hasil kompetisi. AES merupakan pengganti DES. (NIST
2001)
Data Encryption Standard disingkat DES
Sifer blok simetri standar yang dikembangkan oleh IBM dibawah naungan
pemerintah Amerika Serikat (NIST 1999). DES digantikan oleh AES.
Dekripsi (decryption)
Proses transformasi untuk mendapatkan kembali teks asli dari teks sifer dengan
menggunakan sebuah kunci (balikan dari enkripsi) (Menezes et al. 1997)
Enkripsi (encryption)
Proses yang mentransformasi teks asli menjadi teks sifer secara unik oleh
setiap elemen kunci (Menezes et al. 1997)
Kriptografi (cryptography)
Ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan
aspek keamanan informasi seperti kerahasiaan, integritas data, autentikasi
entitas, dan autentikasi data (Menezes et al. 1997)
Kriteria avalans sempurna (strict avalanche criterion) disingkat KAS
Jika suatu fungsi memenuhi KAS maka setiap bit-bit keluaran harus berubah
dengan peluang setengah ketika satu bit masukan berubah (Webster dan
Tavares 1986). KAS pada sifer blok terdiri atas KAKS dan KATAS.
Kriteria avalans kunci sempurna (strict key avalanche criterion) disingkat KAKS
Suatu sifer blok memenuhi KAKS jika setiap bit teks sifer akan berubah
dengan peluang setengah ketika satu bit kunci berubah untuk teks asli tetap
(Dawson et al. 1992)
Kriteria avalans teks asli sempurna (strict plaintext avalanche criterion) disingkat
KATAS
Suatu sifer blok memenuhi KATAS jika setiap bit teks sifer akan berubah
dengan peluang setengah ketika satu bit teks asli berubah untuk kunci yang
tetap (Dawson et al. 1992)
Layanan kerahasiaan (confidentiality)
Layanan yang digunakan untuk menjaga isi informasi dari siapapun kecuali
yang memiliki otoritas terhadap informasi tersebut (Menezes et al. 1997)
Penyadapan
Proses untuk mendengarkan (merekam) informasi (rahasia, pembicaraan) orang
lain dengan sengaja tanpa sepengetahuan orangnya (Kemendikbud 2008)
Serangan (attack)
Kegiatan atau usaha yang dilakukan secara sistematis untuk memecahkan
kunci pada suatu sistem kriptografis atau untuk mendapatkan kelemahan dari
sistem kriptografis (LSN 2007)
Serangan teks asli diketahui (known-plaintext attack)
Sebuah serangan dimana musuh mempunyai sejumlah teks asli yang
bersesuaian dengan teks sifer (Menezes et al. 1997)
Serangan teks asli dipilih(chosen-plaintext attack)
Sebuah serangan dimana kriptanalis memiliki kemampuan untuk memilih teks
asli untuk dienkripsi dan kemudian mendapatkan teks sifer yang sesuai. Tujuan
dari serangan ini adalah untuk mendapatkan informasi yang dapat mengurangi
keamanan dari skema enkripsi
(https://www.princeton.edu/~achaney/tmve/wiki100k/docs/Chosenplaintext_attack.html)
Sifer Blok (Block Cipher)
Skema enkripsi yang membagi teks asli ke dalam blok-blok dengan panjang
tetap dan mengenkripsi satu blok teks asli dalam satu waktu (Menezes et al.
1997)
Skema enkripsi (encryption scheme)
Skema yang terdiri dari fungsi enkripsi dan fungsi dekripsi (Menezes et al.
1997)
Teks asli (plaintext)
Bentuk asli (origin) berita; siapapun yang menguasai bahasanya akan dapat
membaca dan mengerti (LSN 2007)
Teks sifer (ciphertext)
Hasil dari enkripsi (LSN 2007)
1
PENDAHULUAN
Latar Belakang
Salah satu cara yang dapat digunakan untuk memperoleh informasi dalam
dunia intelijen adalah penyadapan. Kegiatan intelijen tersebut dilakukan hampir
oleh seluruh negara di dunia dan aksi tersebut tidak dapat dicegah. Oleh karena itu
untuk melindungi informasi dari penyadapan perlu dilakukan tindakan
pengamanan. Penggunaan kriptografi merupakan salah satu upaya yang dapat
dilakukan untuk melindungi informasi dari siapapun kecuali yang memiliki
otoritas terhadap informasi tersebut.
Teknik dalam kriptografi yang menyediakan layanan kerahasiaan adalah
skema enkripsi (Menezes et al. 1997). Salah satu kelas pada skema enkripsi
adalah sifer blok (block cipher). Sifer blok merupakan skema enkripsi yang
membagi teks asli ke dalam blok-blok dengan panjang tetap dan mengenkripsi
satu blok teks asli dalam satu waktu (Menezes et al. 1997). Menezes et al. (1997)
menjelaskan bahwa serangan (attack) yang ditujukan pada sifer blok pada
umumnya bertujuan mendapatkan teks asli dari teks sifer dan pada kasus terburuk
penyerang (attacker) dapat memperoleh kunci. Serangan tersebut dilakukan
dengan mempelajari hubungan antara teks sifer dengan kunci maupun dengan teks
asli. Salah satu kriteria yang mempelajari hubungan tersebut adalah kriteria
avalans sempurna (strict avalanche criterion) atau KAS.
Jika suatu sifer blok memenuhi KAS maka setiap bit-bit keluaran (teks sifer)
harus berubah dengan peluang setengah ketika satu bit masukan (teks asli atau
kunci) berubah (Webster dan Tavares 1986). Berdasarkan konsep tersebut,
Dawson (1992) mengembangkan suatu metode untuk menentukan sifer blok
memenuhi KAS. Pada penelitian ini akan dikembangkan suatu metode alternatif
untuk menentukan keterpenuhan KAS pada suatu sifer blok. Pendekatan yang
digunakan untuk mengembangkan uji KAS alternatif yaitu menguji setiap unsur
dari matriks avalans rataan secara terpisah, kemudian mengkombinasikannya
menggunakan metode Fisher (Fisher 1932).
Tujuan Penelitian
Penelitian ini bertujuan mengembangkan suatu metode alternatif untuk
menentukan keterpenuhan KAS pada suatu sifer blok.
KRITERIA AVALANS SEMPURNA
Sifer blok merupakan skema enkripsi yang membagi teks asli ke dalam
blok-blok dengan panjang tetap dan mengenkripsi satu blok teks asli dalam satu
waktu (Menezes et al. 1997). Bila p ' dan c ' menyatakan vektor baris berdimensi n
serta k ' menyatakan vektor baris berdimensi m yang tiap unsurnya merupakan
anggota dari 2 maka p ' n2 , c ' n2 dan k ' m2 . Untuk teks asli dalam bentuk
2
biner ( 2 ), teks asli dibagi kedalam blok teks asli berukuran n-bit yang
dinotasikan dengan p ' . Blok teks sifer berukuran n-bit dinotasikan c ' merupakan
keluaran dari fungsi enkripsi e dengan masukan teks asli p ' dan kunci k ' atau
c ' e p ', k ' . Fungsi kebalikannya merupakan fungsi dekripsi d sehingga
p ' d c ', k ' . Ilustrasi enkripsi teks asli dan dekripsi dari teks sifernya dapat
dilihat pada Lampiran 1.
Feistel (1973) membuat suatu kriteria yang dapat digunakan untuk
mengukur kekuatan dari sifer blok yaitu efek avalans (avalanche effect). Konheim
(1981) membagi kriteria tersebut menjadi dua, yaitu efek avalans teks asli
(plaintext avalanche effect) dan efek avalans kunci (key avalanche effect). Suatu
sifer blok menunjukkan adanya efek avalans teks asli jika rata-rata setengah dari
teks sifer akan berubah ketika satu bit teks asli berubah untuk kunci yang tetap.
Suatu sifer blok menunjukkan adanya efek avalans kunci jika rata-rata setengah
dari teks sifer akan berubah ketika satu bit kunci berubah untuk teks sifer yang
tetap.
Kam dan Davida (1979) memperkenalkan ide lengkap (complete), yaitu
suatu kondisi dimana setiap bit keluaran bergantung pada semua bit masukan. Jika
dimungkinkan untuk mendapatkan sebuah fungsi Boolean yang sederhana dari
setiap bit keluaran dalam bentuk bit-bit masukan, maka fungsi Boolean tersebut
harus bergantung pada seluruh bit-bit masukan jika fungsi tersebut lengkap (Kim
1991).
Konsep lengkap dan efek avalans dikombinasikan oleh Webster dan Tavares
(1986) untuk membentuk kriteria baru yaitu KAS. Suatu sifer blok memenuhi
kriteria avalans teks asli sempurna (strict plaintext avalanche criterion) atau
KATAS jika setiap bit teks sifer akan berubah dengan peluang setengah ketika
satu bit teks asli berubah untuk kunci yang tetap (Dawson et al. 1992). Bila v 'i
merupakan vektor berdimensi n dengan unsur ke-i bernilai 1 dan unsur lainnya
bernilai 0 maka sebuah sifer blok dengan fungsi enkripsi e : n2 m2 n2
memenuhi KATAS jika
e p ', k ' e p ' v ' , k ' 2
n 1 '
i
untuk semua
p 'n2
i 1,, n (Kim 1990).
Suatu sifer blok memenuhi kriteria avalans kunci sempurna (strict key
avalanche criterion) atau KAKS jika setiap bit teks sifer akan berubah dengan
peluang setengah ketika satu bit kunci berubah untuk teks asli tetap (Dawson et al.
1992). Bila v 'i merupakan vektor berdimensi m dengan unsur ke-i bernilai 1 dan
unsur lainnya bernilai 0 maka sebuah sifer blok dengan fungsi enkripsi
e : n2 m2 2n memenuhi KAKS jika e p ', k ' e p ', k ' v 'i 2n1
k 'm
2
untuk semua i 1,, m (Kim 1990).
Metode alternatif yang dapat digunakan untuk menentukan bahwa sifer blok
memenuhi KAKS adalah dengan mengkonstruksi matriks avalans B (Webster dan
Tavares 1986) .
3
b11 b12
B b21 b22
bn1 bn 2
Matriks avalans merupakan matriks berdimensi
setiap unsurnya adalah nol.
b1m
b2 m
bnm
n m dengan nilai awal dari
Prosedur 1 : Mengkonstruksi matriks avalans B untuk KAKS
1. Pilih blok teks asli acak p '
2.
3.
Bangkitkan r kunci acak k 'k untuk k 1,, r .
Untuk semua k 1,, r dan
j 1,, m , hitung vektor avalans
u c c dengan menyatakan operasi penambahan modulo 2 per bit
'
kj
'
k
'
kj
dari vektor biner. c'k e p ', k 'k merupakan vektor teks sifer hasil enkripsi p '
menggunakan kunci k 'k . Bila v 'i merupakan vektor berdimensi n dengan
unsur ke-i bernilai 1 dan unsur lainnya bernilai 0, c'kj e p ', k 'k v 'j
merupakan vektor teks sifer hasil enkripsi p ' menggunakan kunci k 'k v 'j ,
yaitu yaitu k 'k yang berbeda pada unsur ke-j untuk j 1,, m .. Ilustrasi dari
langkah ini untuk nilai k dan j tertentu dapat dilihat pada Gambar 1.
Langkah 3 akan menghasilkan r vektor avalans u 'kj untuk tiap j 1,, m ,
sehingga secara keseluruhan akan menghasilkan m r vektor avalans u 'kj .
Karena c 'k dan c 'kj merupakan vektor biner dan operasi merupakan operasi
biner, maka u 'kj merupakan vektor biner. Nilai yang mungkin dari ukj [i ]
adalah “0” dan “1” dan peluang terjadinya “1” adalah untuk 0 1 .
Oleh karena itu ukj [i ] bersebaran Bernoulli( ).
kk m
... kk j
ck n
... ck j
ckj n
... ck 1
... k j
k
... ckj j
ukj n
... ukj j
... kk 1
e
p’
e
p’
kk m
... kk 1
... ukj 1
Gambar 1 Pembangkitan vektor avalans
... ckj 1
4
4.
Tambahkan u kj ke matriks avalans B pada kolom ke-j untuk semua
k 1,, r dan j 1,, m . Kemudian bagi setiap unsur dari matriks B
dengan r. Misal
b11 b12 b1m
B b21 b22 b2 m b1 b 2 b m
bn1 bn 2 bnm
1 r
1 r
maka b j u kj atau bij ukj i
r k 1
r k 1
Prosedur yang sama dapat diterapkan dalam mengkonstruksi matriks avalans B
pada KATAS untuk blok kunci tetap k ' dan r kunci acak p 'k untuk k 1,, r .
Nilai bij menyatakan kekuatan hubungan antara kunci/teks asli unsur ke-j
dan teks sifer unsur ke-i (Webster dan Tavares 1986). Nilai 1 atau mendekati 1
pada bij mengindikasikan bahwa ketika kunci/teks asli pada unsur ke-j berubah
maka teks sifer unsur ke-i juga berubah nilainya, sedangkan nilai 0 atau mendekati
0 mengindikasikan bahwa teks sifer unsur ke-i tidak tergantung pada
kunci/plainteks. Jika semua unsur pada matriks avalans bernilai setengah maka
sifer blok memenuhi KAS (KATAS atau KAKS). Dampak tidak terpenuhinya
KATAS dan KAKS pada sifer blok (Dawson et al. 1992) adalah sebagai berikut:
1. Jika sifer blok mempunyai efek avalans teks asli sempurna yang jelek pada
beberapa posisi bit (terdapat bij yang bernilai mendekati 1 atau 0 pada
matriks avalans KATAS untuk i, j tertentu) maka kriptanalis mungkin dapat
menggunakan informasi tersebut untuk melakukan serangan teks asli terpilih
(chosen plaintext attack). Meskipum serangan tersebut tidak mengungkapkan
kunci yang digunakan dan sangat sulit untuk diimplementasikan, adanya
kemungkinan dilakukannya serangan tersebut mengindikasikan kemungkinan
kelemahan dari sifer blok. Sifer blok yang sebaiknya digunakan adalah sifer
blok yang memenuhi kriteria avalans teks asli sempurna.
2. Jika sifer blok tidak memenuhi KAKS maka kriptanalis mungkin dapat
menggunakan informasi tersebut untuk melakukan serangan teks asli
diketahui (known plaintext attack) dengan tujuan untuk mendapatkan kunci.
Jika terdapat banyak posisi i, j dengan bij mendekati nol atau satu maka hal
tersebut dapat mengakibatkan serangan teks asli diketahui pada sifer blok
dapat dilakukan dengan sangat cepat.
Dawson (1992) mengembangkan suatu metode statistika untuk menentukan
sifer blok memenuhi KAKS.
Prosedur 2 : Uji KAKS Dawson (Dawson et al. 1992):
1. Bangkitkan matriks avalans B sesuai dengan Prosedur 1.
b11 b12 b1m
B b21 b22 b2 m
bn1 bn 2 bnm
5
2.
Uji statistik untuk menganalisis matriks avalans B dengan H 0 : E bij 0.5
lawan H1 : E bij 0.5 untuk semua i 1,, n dan j 1,, m . Statistik
uji yang digunakan adalah Z 2 r B 0.5 .
z11
z
Z 21
zn1
Bila H 0 benar
E b 0.5 ,
ij
z12
z22
zn 2
z1m
z2 m
znm
maka ukj [i ] bersebaran Bernoulli(0.5) dan
E ukj [i ]
1
1
dan Var ukj [i ] . Karena ukj [i ] merupakan kejadian yang
2
4
bebas stokastik dan identik untuk k k dengan k , k 1, 2,, r , maka
1 r 1 1
1 r
1 r
E bij E ukj [i ] E ukj [i ]
r k 1 2 2
r k 1
r k 1
1 r 1
1
r
1 r
1 r
Var bij Var ukj [i ] 2 Var ukj [i ] 2 2
4r
r k 1 4 4r
r k 1
r k 1
Berdasarkan teorema limit pusat maka
bij E bij bij 0.5
zij
2 r bij 0.5 .
1 4r
Var bij
akan mendekati sebaran normal baku untuk nilai r besar. Uji tersebut
merupakan uji dua arah. Hitung pij P Z zij sehingga akan didapat
matriks
3.
4.
p11 p12 p1m
P p21 p22 p2 m
p
n1 pn 2 pnm
Ulangi langkah 1 dan 2 untuk s blok teks asli acak, sehingga akan
menghasilkan s matriks Z dan P, yang dinotasikan dengan Z h dan P h untuk
h 1,, s.
Kombinasikan s statistik uji zijh h 1,, s untuk menguji semua H 0 pada
unsur ke-ij menggunakan Metode Fisher-Pearson. Statistik uji dari metode
Fisher-Pearson dalam bentuk matriks adalah
l11 l12 l1m
s
h
L 2 ln P l21 l22 l2 m .
h 1
ln1 ln 2 lnm
Bila H 0 benar maka nilai pijh akan bersebaran seragam pada selang (0,1).
Negatif logaritma dari peubah bersebaran seragam (0,1) akan mengikuti
sebaran eksponensial dengan parameter 1 . Perkalian dari setiap ln pk
dengan 2 akan mengubah parameter menjadi 1 2 dan membuat sebarannya
6
ekuivalen dengan sebaran 2 dengan derajat bebas 2. Jumlah dari s nilai
2ln pijh juga akan mengikuti sebaran 2 dengan derajat bebas 2s . Statistik
5.
uji lij tersebut merupakan peubah bersebaran khi-kuadrat dengan derajat bebas
2s.
Bila nilai p dari statistik uji lij , dinotasikan dengan p2ij P L lij untuk
semua i 1,, n dan j 1,, m maka langkah selanjutnya adalah
menentukan bahwa p 2 bersebaran seragam pada selang (0,1) menggunakan
metode Kolmogorov-Smirnov. Nilai p dari statistik uji Kolmogorov Smirnov
tersebut dibandingkan dengan taraf nyata untuk mengambil keputusan
hipotesis sifer blok memenuhi KAKS ditolak atau diterima.
Prosedur 2 dapat diterapkan guna menguji sifer blok memenuhi KATAS
dengan mengkonstruksi matriks avalans B pada KATAS untuk blok kunci tetap
k ' dan r kunci acak p 'k k 1,, r . Ilustrasi uji KAKS olah Dawson dapat
dilihat pada Lampiran 2.
Uji KAKS dan uji KATAS hanya berbeda cara membangkitkan matriks
avalans, namun bentuk matriks avalansnya sama. Pada tesis ini, uji KAS mewakili
uji KAKS dan KATAS, yaitu uji statistik untuk mengevaluasi matriks avalans
tanpa mempertimbangkan proses dalam mengkonstruksi matriks tersebut.
MODEL ALTERNATIF UNTUK UJI KAS
Jika sifer blok memenuhi KAS maka setiap unsur pada matriks avalans yang
dibangkitkan oleh sifer blok tersebut bernilai setengah. Berdasarkan konsep
tersebut maka terdapat dua pendekatan yang dapat digunakan untuk menentukan
apakah setiap unsur pada matriks avalans bernilai setengah, yaitu
1. Uji kesamaan dua matriks berukuran besar
Uji ini bertujuan membandingkan matriks avalans dengan matriks setengah
dengan hipotesis
H0 : E B 0.5 lawan H1 : E B 0.5 .
Jika matriks avalans merupakan matrik segi maka dapat digunakan metode
yang sama dengan metode untuk menguji kesamaan matriks korelasi sama
dengan matriks tertentu, seperti Statistik M-Box yang dikembangkan oleh
Box (1949), statistik Jennrich dikembangkan oleh Jennrich (1970), atau
statistik VVVS oleh Herdiani (2008).
2. Uji
setiap
unsur
dari
matriks
secara
terpisah,
kemudian
mengkombinasikannya menggunakan metode Fisher (Fisher 1934).
Strategi yang digunakan adalah dengan membangkitkan s matriks avalans,
kemudian mereduksi matriks-matriks tersebut menjadi satu matriks avalans
rataan. Langkah selanjutnya adalah menguji apakah setiap unsur dari matriks
avalans rataan tersebut bernilai 0.5. Uji yang digunakan menggunakan konsep
uji z yang memanfaatkan teorema limit pusat. Nilai p dari uji tersebut
7
kemudian dikombinasikan untuk menguji apakah semua unsur bernilai 0.5
menggunakan metode Fisher (Fisher 1934).
Karena matriks avalans belum tentu matriks segi maka statistik M-Box,
statistik Jenrich, maupun statistik VVVS tidak dapat digunakan. Sampai dengan
tesis ini dibuat, penulis belum menemukan metode yang cocok untuk menguji
kesamaan matriks berukuran besar dengan dimensi sembarang. Oleh karena itu
pengembangan alternatif uji KAS difokuskan pada pendekatan ke-2.
Uji KAS hasil pengembangan disebut uji KAS alternatif. Uji KAKS
alternatif dapat dilihat pada Prosedur 3.
Prosedur 3 : Metode statistik yang diusulkan untuk uji KAKS (uji KAKS
alternatif)
1. Bangkitkan s matriks avalans B dari s blok teks asli acak yang dinotasikan
dengan B h untuk h 1, 2,, s . Pembangkitan matriks avalans sesuai dengan
Prosedur 1.
b11h b12h b1hm
h
h
h
B h b21 b22 b2 m
b h b h b h
nm
n1 n 2
r
1
bijh ukjh i
r k 1
2.
Hitung matriks avalans rataan B
b11 b12
1 s h b 21 b 22
B B
s h 1
b n1 b n 2
3.
b1m
b2m
b nm
Uji statistik untuk menganalisis matriks avalans B dengan H 0 : E bij 0.5
lawan H1 : E bij 0.5 untuk semua i 1,, n dan j 1,, m . bij dapat
dituliskan sebagai berikut
1 s
1 s 1 r
1 s r
bij bijh ukjh i ukjh i
s h 1
s h 1 r k 1
rs h1 k 1
Bila H 0 benar, maka ukjh [i ] bersebaran Bernoulli(0.5) dan E ukj [i ]
1
serta
2
Var ukj [i ]
identik
1
. Karena ukjh [i ] merupakan kejadian yang bebas stokastik dan
4
untuk
k , h k , h dengan k , k 1, 2,, r dan
h, h 1, 2,, s
, maka nilai harapan dan ragam dari bij adalah sebagai
berikut
sr 0.5
1 s r
1 s r
0.5
E bij E ukjh i E ukjh i
sr
sr h1 k 1
sr h1 k 1
8
1 s r
sr 1
1
1 s r
Var bij Var ukjh i 2 2 Var ukjh i 2 24
sr
4sr
sr h 1 k 1
s r h 1 k 1
Statistik uji yang digunakan untuk menguji H 0 : E bij 0.5 lawan
H1 : E bij 0.5 untuk i 1,, n dan
berikut :
bij E bij
j 1,, m
adalah sebagai
bij 0.5
2 rs bij 0.5
1
4sr
Berdasarkan teorema limit pusat, untuk nilai sr yang besar zij akan
bersebaran normal baku. Uji ini merupakan uji dua arah.
Dalam bentuk matriks, statistik uji tersebut dapat dituliskan sebagai
Z 2 sr B 0.5 dengan
zij
4.
Bila pij 2 P Z zij
Var bij
z11
z
Z 21
zn1
merupakan
z12
z22
zn 2
z1m
z2 m
znm
nilai p untuk statistik zij , pij saling
bebas untuk j j dan j, j 1,, m , namun pij belum tentu saling bebas
untuk i i dan i, i 1,, n . Dengan mengasumsikan bahwa pij saling
bebas untuk i, j i, j , j, j 1,, m dan i, i 1,, n , maka
akan terdapat n m uji hipotesis saling bebas yang menguji hipotesis
H 0 : E bij 0.5 . Untuk mengambil keputusan apakah semua unsur dari
matriks avalans rataan B bernilai setengah maka semua nilai pij dapat
dikombinasikan untuk membentuk uji gabungan. Metode yang digunakan
untuk melakukan uji kombinasi nilai pij adalah metode Fisher. Statistik uji
dari metode tersebut adalah
n
m
L 2 ln pij
i 1 j 1
Statistik L mengikuti sebaran dengan derajat bebas 2nm (Fisher 1934).
2
H 0 ditolak pada taraf nyata jika L 2mn
.
2
Prosedur 3 dapat diterapkan guna menguji sifer blok memenuhi KATAS
dengan mengkonstruksi matriks avalans B pada KATAS untuk blok kunci tetap
k ' dan r kunci acak p 'k dengan k 1,, r . Ilustrasi uji KAKS alternatif dapat
dilihat pada Lampiran 2.
9
EVALUASI UJI KAS ALTERNATIF
Jika ij E bij , maka hipotesis dari uji KAS Dawson dapat dituliskan
sebagai H0 : ij 0.5 untuk semua i, j , i 1, 2, , n dan j 1,, m lawan
H1 : minimal ada satu ij 0.5 untuk i 1, 2,, n dan j 1,, m . Hipotesis
dari Uji KAS alternatif juga dapat dituliskan sebagai H0 : ij 0.5 untuk semua
i, j dan
i 1, 2,, n dan j 1,, m lawan H1 : minimal ada satu ij 0.5
untuk i 1, 2,, n dan j 1,, m karena
1 s
1 s
1 s
E bij E bijl E bijl ij ij
s l 1
s l 1 s l 1
Uji hipotesis biasanya dievalusi dan dibandingkan melalui peluang
membuat kesalahan dalam mengambil keputusan untuk menolak atau menerima
hipotesis nol (Casella dan Berger 2002). Uji hipotesis dapat membuat satu dari
dua jenis kesalahan, yaitu kesalahan jenis I atau kesalahan jenis II. Pada uji KAS,
jika 0.5 tetapi uji hipotesis secara salah memutuskan untuk menolak H 0 maka
uji tersebut telah membuat kesalahan jenis I. Sebaliknya, jika 0.5 tetapi uji
hipotesis memutuskan untuk menerima H 0 maka uji tersebut telah membuat
kesalahan jenis II. Hubungan antara keputusan yang diambil dan keadaan
sesungguhnya digambarkan pada Tabel 1.
Galat jenis I merupakan peluang untuk membuat kesalahan jenis I atau
peluang menolak H 0 ketika H 0 benar. Uji hipotesis dikatakan uji bertaraf (taraf
nyata) jika Galat jenis I kurang sama dengan (Casella dan Berger 2002). Galat
jenis II merupakan peluang untuk membuat kesalah jenis II atau peluang untuk
menerima H 0 ketika H1 benar. Kuasa pengujian adalah peluang uji tersebut akan
menolak H 0 dengan benar ketika H 0 salah.
Tabel 1 Dua jenis kesalahan pada uji KAS
Keputusan
H1 : minimal ada satu
Keadaan yang
sesungguhnya
H0 : ij 0.5
H0 : ij 0.5
Benar
Kesalahan Jenis I
H1 : minimal
Kesalahan Jenis II
Benar
ij 0.5
ada satu
ij 0.5
Pada ukuran contoh tertentu, uji hipotesis mustahil mempunyai peluang
yang kecil untuk membuat kedua jenis kesalahan (Casella dan Berger 2002).
10
Peneliti biasanya mengendalikan galat jenis I pada taraf tertentu, dan mencari uji
yang mempunyai galat jenis II sekecil mungkin atau mencari uji dengan kuasa
yang lebih besar dari uji lainnya. Oleh karena itu pada subbab ini akan dipelajari
kuasa dari masing-masing uji KAS.
Jika uji A adalah uji KAS alternatif dengan daerah penolakan pada uji
2
bertaraf yaitu L 2mn
, maka kuasa dari uji tersebut adalah sebagai berikut
kuasa A P menolak H 0 | H1 benar
P L 22mn 0.5
n m
P 2 ln pij 0.5
i 1 j 1
n m
P 2 ln 2 P Z zij 22mn 0.5
i 1 j 1
n m
P 2 ln 2 P Z 2 rs bij 0.5 22mn 0.5
i 1 j 1
n m
P 2 ln 2 P Z 2 rs bij 2 rs 0.5 22mn 0.5
i 1 j 1
Jika D adalah statistik dari uji Kolmogor-Smirnov, dan uji B adalah uji
KAS Dawson dengan daerah penolakan pada dari bertaraf yaitu
0.5 ln 2
D
, maka kuasa dari uji tersebut adalah sebagai berikut
mn
kuasaB P menolak H0 | H1 benar
0.5 ln 2
P D
0.5
mn
Grafik dari kuasa uji dapat digunakan untuk mempermudah analisis kuasa.
Kuasa dari kedua uji KAS merupakan fungsi eksplisit maka untuk menganalisis
kuasa dari kedua uji tersebut dilakukan simulasi. Simulasi juga dilakukan untuk
menghitung Galat jenis I yang digunakan untuk menentukan bahwa kedua uji
KAS merupakan uji yang tak bias.
Tahapan Simulasi
Langkah-langkah yang dilakukan dalam simulasi untuk menghitung kuasa
dari uji KAS alternatif dengan uji KAS Dawson pada θ tertentu adalah sebagai
berikut:
a. Membangkitkan matriks avalans B
Data yang akan diuji oleh uji KAS adalah matriks avalans B. Matriks avalans
B merupakan matriks berdimensi n m . Nilai n merupakan ukuran blok
plainteks/teks sifer dan m merupakan ukuran kunci dari block cipher yang
akan diuji. Simulasi dilakukan pada nilai n 128 dan m 128 . Tiap unsur
dari matriks avalans B adalah
11
1 r
ukj i
r k 1
dengan ukjh [i ] bersebaran Bernoulli(θ). θ merupakan peluang terjadinya “1”
bij
dan 0 1 .
r
u i
k 1
b.
c.
kj
bersebaran Binomial(r,θ). Oleh karena itu setiap
unsur dari matriks avalans B tersimulasi ialah angka random yang
dibangkitkan dari populasi berdistribusi Binomial(r,θ) kemudian dibagi
dengan r. Simulasi dilakukan pada nilai r 216 . Matriks tersebut
dibangkitkan sebanyak 1000 matriks atau s 1000 .
Menguji 1000 matriks avalans B tersimulasi hasil dari a menggunakan uji
KAS Dawson sesuai Prosedur 2 dan uji KAS alternatif sesuai Prosedur 3
pada taraf nyata 0.05 .
Mengulangi langkah a dan b sebanyak 1000 kali. Kemudian hitung proporsi
menolak hipotesis nol. Proporsi tersebut merupakan kuasa dari uji pada
parameter .
Simulasi dilakukan menggunakan perangkat lunak SAS (Statistical Analyis
System) versi 9.3. Fungsi ln merupakan salah satu fungsi yang digunakan pada uji
KAS alternatif dan KAS Dawson. Fungsi ln x didefinisikan untuk x 0
sehingga 0 merupakan masukan tidak valid untuk fungsi tersebut dan ln 0 tak
terdefinisi. Pada SAS fungsi ln dengan masukan 0 akan menghasilkan kesalahan
dan menyebabkan simulasi terhenti. Masukkan fungsi ln pada uji KAS adalah
nilai peluang yang memungkinkan bernilai 0. Oleh karena itu setiap nilai peluang
bernilai 0 diganti dengan bilangan nyata terkecil yang lebih besar dari 0 pada SAS,
yaitu bilangan 11015 untuk menghindari adanya kesalahan.
Hasil Simulasi
Uji KAS alternatif dikatakan lebih baik dari uji KAS Dawson apabila kuasa
uji KAS alternatif lebih besar dari kuasa uji oleh KAS Dawson untuk setiap nilai
, r, dan s . Kuasa uji KAS hasil simulasi pada r 216 dan s 1000 disajikan
dalam bentuk grafik pada Gambar 2, sedangkan hasil simulasi secara numerik
dapat dilihat pada Lampiran 3.
Hasil simulasi (Gambar 2) menunjukkan bahwa uji KAS alternatif
merupakan uji tak bias karena kuasaA galat jenis I untuk setiap 0.5 . Uji
KAS Dawson merupakan uji yang bias karena terdapat nilai kuasaB galat jenis I ,
yaitu untuk 0.499993 dan 0.500007 . Uji KAS alternatif lebih baik dari uji
KAS Dawson pada 0.05 untuk nilai r 65536 dan s 1000 karena
kuasaA kuasaB . Hal tersebut berarti bahwa uji KAS alternatif mampu
mendeteksi bahwa 0.5 (jika memang bukan 0.5) lebih baik daripada uji
KAS Dawson karena perubahan kecil pada nilai menyebabkan naiknya kuasa
dari uji KAS alternatif menuju nilai 1 yang lebih cepat dari uji KAS Dawson.
12
1.0
Peluang tolak Ho
0.8
0.6
0.4
0.2
0.0
0.49990
0.49995
0.50000
θ
Gambar 2 Kuasa dari uji KAS alternatif (
untuk r 65536 dan s 1000
0.50005
0.50010
) dan uji KAS Dawson (
)
IMPLEMENTASI UJI KAKS ALTERNATIF DAN UJI KAKS
DAWSON
Uji KAKS alternatif dan uji KAKS Dawson diterapkan pada beberapa sifer
blok, yaitu Data Encryption Standard (DES) (NIST 1999), Advanced Encryption
Standard (AES)-128 (NIST 2001), AES-196 (NIST 2001), AES-256 (NIST 2001).
Ukuran blok plainteks, teks sifer, dan kunci dari masing-masing sifer blok dapat
dilihat pada Tabel 2.
Tabel 2 Ukuran blok plainteks, teks sifer, dan kunci dari sifer blok
Ukuran blok teks
Sifer blok
Ukuran kunci (m)
asli/teks sifer (n)
DES
64
52
AES-128
128
128
AES-196
128
196
AES-256
128
256
13
Tabel 3 Hasil uji KAKS dari beberapa sifer blok
Sifer blok
DES
AES-128
AES-192
AES-256
Nilai p
Uji KAKS
Uji KAKS
alternatif
Dawson
0.77005
0.6444
0.1204
0.1904
0.72061
0.7816
0.08533
0.6483
Hasil uji KAKS pada Tabel 3 menunjukkan bahwa semua nilai p lebih besar
dari taraf nyata 0.05 maka dapat simpulkan bahwa semua sifer blok yang
diteliti tidak ada cukup bukti untuk menolak hipotesis nol pada taraf nyata
0.05 . Sifer blok tersebut memenuhi KAKS baik berdasarkan hasil Uji KAKS
alternatif maupun uji KAKS Dawson. Hal tersebut berarti perubahan satu bit pada
kunci menyebabkan setiap bit teks sifer berubah dengan peluang setengah. Perlu
dicatat bahwa sifer blok yang memenuhi KAS masih mungkin diserang jika
kriptanalis mengetahui struktur sifer blok dan memenukan kelemahan pada
struktur tersebut (Dawson et al. 1992). Sifer blok yang tidak memenuhi KAS
mengindikasikan adanya kelemahan pada sifer tersebut dan tidak digunakan guna
menghindari serangan yang mungkin dilakukan oleh kriptanalis dengan
memanfaatkan kelemahan tersebut.
SIMPULAN DAN SARAN
Simpulan
Statistik uji alternatif yang diusulkan digunakan untuk menguji hipotesis
bahwa sifer blok memenuhi KAK adalah minus dua kali jumlah logaritma nilai p
dari statistik z pada masing-masing unsur matriks avalans rataan. Statistik uji
tersebut bersebaran khi kuadrat dengan derajat bebas dua kali dimensi dari matriks
avalans rataan. Pengujian KAS alternatif ini lebih baik dari uji KAS Dawson
karena uji KAS alternatif memiliki kuasa yang lebih besar dari uji KAS Dawson.
Saran
Statistik yang digunakan untuk mereduksi matriks avalans pada uji KAS
alternatif adalah statistik rataan. Pada penelitian selanjutnya perlu dilakukan
kajian lebih lanjut tentang penggunaan statistik lain untuk mereduksi matriks
avalans pada uji KAS.
Nilai u jk i pada vektor u jk tidak dijamin saling bebas untuk i i dan
i, i 1,, n yang mengakibatkan pij belum tentu saling bebas untuk i i dan
i, i 1,, n oleh karena itu perlu dilakukan uji kebebasan pada vektor u jk
untuk menjamin bahwa u jk i saling bebas untuk i i dan i, i 1,, n .
14
DAFTAR PUSTAKA
Box, GEP. (1949). A General Distribution Theory for a Class of Likelihood
Criteria. Biometrika, 36(3/4), 317-346.
Casella G, Berger RL. 2002. Statistical Inference, 2th Edition. California:
Duxbury
Dawson E, Gustafson H, Pettitt AN. 1992. Australian Journal of Combinatorics
6:147-153
Erna TH. 2008. Statistik Penguji Kestabilan Barisan Matriks Korelasi.[Disertasi].
Bandung (ID) : Institut Teknologi Bandung
Jennrich, R.I. (1970). An Asymptotic Test for the Equality of Two Correlation
Matrices. Journal of the American Statistical Association, 65(330), 904-912.
Feistel H. 1973. Cryptography and Computer Privacy. Scientific American,
Vol.228, No.5:15-23
Fisher RA. 1934. Statistical Methods for Research Workers, 5th Edition.
Edinburgh: Oliver and Boyd.
Kam JB, dan Davida GI. 1979. Structured Design of Substitution-Permutation
Encryption Networks. IEEE Transactions on Computers, Vol.28, No.
10:747-753
[Kemdikbud] Kementrian Pendidikan dan Budaya, Pusat Bahasa (ID). 2008.
Kamus Besar Bahasa Indonesia Daring [Internet]. [diakses pada 15
Desember 2014]. Tersedia pada
http://badanbahasa.kemdikbud.go.id/kbbi/index.php
Kim K. 1990. A Study on the Construction and Analysis of Substitution Boxes for
Symmetric Cryptosystems. [Disertasi]. Yokohama(JP) : Yokohama National
University
[LSN] Lembaga Sandi Negara (ID). 2007. Jelajah Kriptologi. Jakarta : Lembaga
Sandi Negara RI
Menezes AJ, van Oorschot PC, Vanstone SA. 1997. Handbook of Applied
Cryptography. Florida : CRC Press.
[NIST] National Institute of Standards and Technology (US). 1999. Announcing
the Data Encryption Standard (DES). Federal Information Processing
Standards Publication 46-3 [Internet]. [diunduh pada 21 Mei 2014].
Tersedia pada http://csrc.nist.gov/publications/fips/fips46-3/fips46-3.pdf
[NIST] National Institute of Standards and Technology (US). 2001. Announcing
the Advances Encryption Standard (AES). Federal Information Processing
Standards Publication 197[Internet]. [diunduh pada 21 Mei 2014]. Tersedia
pada http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf
Webster AF, Tavares SE. 1986. On The Design of S-Boxes. Advances in
Cryptology-CRYPTO ’85, LNCS 218:523-534
15
LAMPIRAN
Lampiran 1 Ilustrasi enkripsi dan dekripsi dengan menggunakan sifer blok AES128
Pada Lampiran ini akan diilustrasikan proses enkripsi teks asli dan dekripsi
teks sifernya dengan menggunakan sifer blok, yaitu AES-128.
Teks asli : INSTITUT PERTANIAN BOGOR
Kunci
: 11111111111111111111111111111111 (dalam hexadesimal)
Input dari sifer blok adalah teks asli dalam bentuk biner. Langkah pertama
dalam enkripsi adalah mengubah teks asli dalam bentuk karakter abjad ke bentuk
biner sesuai dengan skema pengkodean karakter (character encoding scheme).
Contoh umum dari skema pengkodean karakter ke dalam bentuk biner adalah
kode Baudot (5 bit), ASCII (8 bit), UTF-8 (8 bit), EBCDIC (8 bit), UTF-16 (16
bit), UTF-32 (32 bit). Penulis akan menggunakan ASCII untuk mengubah
karakter abjad ke dalam bentuk biner yang dituliskan dalam hexadesimal. Teks
asli yang didapat adalah sebagi berikut:
Teks asli : 49 4E 53 54 49 54 55 54 20 50 45 52 54 41 4E 49 41 4E 20 42 4F 47
4F 52 (dalam hexadesimal)
Teks asli dibagi kedalam blok-blok berukuran 128 bit. Kemudian tiap blok
dienkripsi dengan menggunakan fungsi enkripsi dari AES-128. Jika ukuran dari
teks asli bukan kelipatan 128 maka diperlukan penambahan bit (padding). Cara
penambahannya dapat dengan menambahkan bit “0”, atau mengikuti cara
penambahan bit pada PKCS7/ANSIX923/ISO10126. Pada ilustrasi ini metode
penambahan bit yang digunakan adalah dengan menambahkan bit “0”.
Teks asli adalah 24 karakter ASCII dengan 1 karakter adalah 8 bit, maka
panjang teks asli adalah 192 bit. Teks asli akan dibagi kedalam 2 blok teks asli
berukuran 128 bit dengan blok ke-2 ditambahkan bit “0” sampai terbentuk blok
utuh. Jika blok teks asli ke-i dinotasikan dengan p i maka
p1 01001001 01001110 01010011 01010100 01001001 01010100 01010101 01010100
00100000 01010000 01000101 01010010 01010100 01000001 01001110 01001001
p2 01000001 01001110 00100000 01000010 01001111 01000111 01001111 01010010
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Tiap blok teks asli ditransformasi menjadi teks sifer menggunakan fungsi enkripsi
dari AES-128 dengan kunci (Gambar 1 pada lampiran ini). Mode operasi yang
digunakan adalah mode Electronic Code Book (ECB). Teks sifer yang dihasilkan
adalah sebagai berikut:
c1 10110111 10100100 11100001 10101111 11110101 10110001 11010110 11100100
00110010 00001111 11101110 00000010 11001110 10110011 10100101 01101110
c2 10000010 11000001 01001010 01111001 00111101 01010111 11010111 10100100
01101010 00011011 01101001 10011110 11001010 01101110 00001010 10101110
Dalam bentuk heksadesimal dapat ditulisan sebagai
Teks sifer : B7 A4 E1 AF F5 B1 D6 E4 32 0F EE 02 CE B3 A5 6E 82 C1 4A
79 3D 57 D7 A4 6A 1B 69 9E CA 6E 0A AE
Apabila teks sifer diatas didekripsi dengan kunci yang sama maka akan
menghasilkan teks asli (ASCII) berikut:
Teks asli : 49 4E 53 54 49 54 55 54 20 50 45 52 54 41 4E 49 41 4E 20 42 4F
47 4F 52 00 00 00 00 00 00 00 00
16
Teks asli apabila dikodekan kembali ke bentuk teks dengan menggunakan
ASCII maka akan didapat teks “INSTITUT PERTANIAN BOGOR”. Ilustrasi
dibuat dengan menggunakan aplikasi Cryptools 2.0.
(a)
(b)
(c)
(d)
(e)
Gambar 1 Sifer Blok AES-128 (a) Diagram alir dari fungsi enkripsi AES (b)
transformasi Subbyte (c) transformasi ShiftRows (d) transformasi
MixColums (e) transformasi Addroundkey
(Gambar direproduksi dari http://developer.amd.com/resources/documentationarticles/articles-whitepapers/bulk-encryption-on-gpus/ (2014))
17
Lampiran 2 Ilustrasi Uji KAKS
Pada lampiran ini akan diilustrasikan uji KAKS pada sifer blok MINIAES.
MINIAES merupakan penyederhanaan sifer blok AES untuk tujuan pendidikan.
Ukuran teks asli/teks sifer dan kunci dari MINIAES adalah 16 bit atau n 16 dan
m 16 .
Uji KAKS alternatif dari MINIAES untuk s 2, r 10 adalah sebagai
berikut:
1.
Contoh teks asli acak terpilih adalah
p1 ' 10100101 01101100
p 2 ' 10010011 11000101
Mengkonstruksi matriks avalans B untuk KAKS sesuai Prosedur 1.
a. Pilih blok teks asli p1 ' 1010001000101110
b. Bangkitkan 10 kunci acak. Kunci acak terpilih adalah sebagai berikut
k 'k
k
c.
1
1110110100010000
2
0110111011111001
3
0001010011001110
4
0101000110101101
5
1100111110011011
6
0100111100100001
7
1000001110100101
8
1000010110001101
9
1100101000110001
10
0010100010111110
Langkah selajutnya adalah menghitung vektor u 'kj
untuk j 1 dan k 1
k 1'
k
'
1
v1'
c1' e p ', k1'
'
c11
e p ', k1' v1'
: 1110110100010001
: 0011101101000110
'
'
u11
c1' c11
untuk j 1 dan k 2
k 1'
k
'
1
v1'
: 1110110100010000
: 0111101101000010
: 0100000000000100
: 0110111011111001
: 0110111011111000
18
c1' e p ', k1'
: 0111101100111101
'
c11
e p ', k1' v1'
: 1000111010000100
'
'
u11
c1' c11
d.
: 1111010110111001
Lakukan sampai dengan j 16 dan k 10
Tambahkan 160 vektor u kj ke matriks avalans B pada kolom ke-j.
Nilai awal dari setiap unsur pada matriks B adalah 0. Kemudian
tambahkan vektor u11 ke matriks avalans B pada kolom ke-1,
sehingga nilai matriks B akan menjadi
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
Kemudian tambahkan vektor u 21 ke matriks avalans B pada kolom
ke-1, sehingga nilai matriks B akan menjadi
1
2
1
1
0
1
0
1
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
19
Ulangi sampai vektor u10,16 yang ditambahkan ke matriks avalans B
pada kolom ke-16, sehingga matriks B akan menjadi
4
7
7
4
3
7
6
2
6
4
6
4
5
6
4
4
3
5
5
5
7
7
5
3
5
PADA SIFER BLOK MENGGUNAKAN METODE FISHER
ANDRIANI ADI LESTARI
SEKOLAH PASCASARJANA
INSTITUT PERTANIAN BOGOR
BOGOR
2015
PERNYATAAN MENGENAI TESIS DAN
SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA*
Dengan ini saya menyatakan bahwa tesis berjudul Alternatif Uji Kriteria
Avalans Sempurna pada Sifer Blok Menggunakan Metode Fisher adalah benar
karya saya dengan arahan dari komisi pembimbing dan belum diajukan dalam
bentuk apapun kepada perguruan tinggi mana pun. Sumber informasi yang berasal
atau dikutip dari karya yang diterbitkan maupun tidak diterbitkan dari penulis lain
telah disebutkan dalam teks dan dicantumkan dalam Daftar Pustaka di bagian
akhir tesis ini.
Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut
Pertanian Bogor.
Bogor, Februari 2015
Andriani Adi Lestari
NIM G151120011
RINGKASAN
ANDRIANI ADI LESTARI. Alternatif Uji Kriteria Avalans Sempurna pada Sifer
Blok Menggunakan Metode Fisher. Dibimbing oleh ANANG KURNIA dan
FARIT M. AFENDI.
Sifer blok merupakan salah satu teknik dalam kriptografi yang menyediakan
keamanan informasi, khususnya kerahasiaan. Salah satu kriteria yang harus
dipenuhi oleh sifer blok yang aman adalah kriteria avalans sempurna (strict
avalanche criterion) atau KAS. Suatu sifer blok memenuhi kriteria avalans teks
asli sempurna (strict plaintext avalanche criterion) atau KATAS jika setiap bit
teks sifer akan berubah dengan peluang setengah ketika satu bit teks asli berubah
untuk kunci yang tetap. Suatu sifer blok memenuhi kriteria avalans kunci
sempurna (strict key avalanche criterion) atau KAKS jika setiap bit teks sifer
akan berubah dengan peluang setengah ketika satu bit kunci berubah untuk teks
asli yang tetap. Berdasarkan konsep tersebut, Dawson mengembangkan suatu
metode untuk menentukan sifer blok memenuhi KAS. Pada penelitian ini akan
dikembangkan suatu metode alternatif untuk menentukan keterpenuhan KAS pada
suatu sifer blok.
Jika sifer blok memenuhi KAS maka setiap unsur pada matriks avalans yang
dibangkitkan oleh sifer blok tersebut bernilai setengah. Terdapat dua pendekatan
yang dapat digunakan untuk menentukan keterpenuhan KAS pada suatu sifer blok,
yaitu uji kesamaan matriks avalans berukuran besar dengan matriks setengah dan
uji setiap unsur dari matriks secara terpisah, kemudian mengkombinasikannya.
Pada penelitian ini pengembangan uji KAS dilakukan berdasarkan pendekatan ke2. Statistik uji alternatif yang diusulkan digunakan untuk menguji hipotesis bahwa
sifer blok memenuhi KAS adalah minus dua kali jumlah logaritma nilai p dari
statistik z pada masing-masing unsur matriks avalans rataan. Statistik uji tersebut
bersebaran khi kuadrat dengan derajat bebas dua kali dimensi dari matriks avalans
rataan.
Evaluasi uji KAS alternatif dan uji KAS Dawson dilakukan dengan
mengevaluasi kuasa uji masing-masing. Hasil penelitian yang dilakukan
menunjukkan bahwa kuasa uji KAS alternatif lebih besar dari uji KAS Dawson,
sehingga dapat disimpulkan bahwa uji KAS alternatif lebih baik dari uji KAS
Dawson.
Kata kunci: sifer blok, kriteria avalans sempurna, uji kriteria avalans sempurna
SUMMARY
ANDRIANI ADI LESTARI. Alternative of Strict Avalanche Criterion Test on
Block Cipher Using Fisher’s Method. Supervised by ANANG KURNIA and
FARIT M. AFENDI.
Block cipher is one of cryptography techniques used to provide information
security, especially confidentiality. Strict avalanche criterion (SAC) is a desirable
property of block cipher. A block cipher satisfies strict plaintext avalanche
criterion (SPAC) if each bit of a ciphertext block changes with the probability of
one half whenever any bit of a plaintext block changes for a fixed key. A block
cipher satisfies strict key avalanche criterion (SKAC) if each bit of a ciphertext
block changes with the probability of one half whenever any bit of a the key
changes for a fixed plaintext. Dawson proposed statistical based methods for
determining whether a block cipher satisfies the strict avalanche criterion. In this
study, we propose an alternative statistical test for defining a block cipher satisfies
the strict avalanche criterion.
A block cipher satisfies strict avalanche criterion if each entry of avalanche
matrix is equal to one half. There are two approaches to develop the alternative
test, the first is testing the equality of two large matrices and the second is testing
the equality of each entry to one half and then combined. In this study, we use the
second approach. We propose an alternative statistic to test the hypothesis that a
block cipher satisfies SAC. The statistic test is minus two times sum of the
logarithm of p-value, where the p-value is tail area probabilities of z statistic from
each entry of the mean of avalanche matrices. The test statistic follows a chisquared distribution with degree of freedom equals to two times dimension of the
matrix.
Simulations were conducted to compare the power of alternative SAC test to
Dawson SAC test. The result showed that the power of the alternative SAC test
was higher than the Dawson SAC test.
Keywords: block cipher, strict avalanche criterion, strict avalanche criterion test
© Hak Cipta Milik IPB, Tahun 2015
Hak Cipta Dilindungi Undang-Undang
Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan
atau menyebutkan sumbernya. Pengutipan hanya untuk kepentingan pendidikan,
penelitian, penulisan karya ilmiah, penyusunan laporan, penulisan kritik, atau
tinjauan suatu masalah; dan pengutipan tersebut tidak merugikan kepentingan
IPB
Dilarang mengumumkan dan memperbanyak sebagian atau seluruh karya tulis ini
dalam bentuk apa pun tanpa izin IPB
PENGEMBANGAN UJI KRITERIA AVALANS SEMPURNA
PADA SIFER BLOK MENGGUNAKAN METODE FISHER
ANDRIANI ADI LESTARI
Tesis
sebagai salah satu syarat untuk memperoleh gelar
Magister Sains
pada
Program Studi Statistika
SEKOLAH PASCASARJANA
INSTITUT PERTANIAN BOGOR
BOGOR
2015
Penguji Luar Komisi pada Ujian Tesis: Prof. Dr. Ir. Khairil A. Notodiputro, MS
Judul Tesis
Nama
NIM
: Pengembangan Uji Kriteria Avalans Sempurna pada Sifer Blok
Menggunakan Metode Fisher
: Andriani Adi Lestari
: G151120011
Disetujui oleh
Komisi Pembimbing
Dr. Anang Kurnia
Ketua
Dr. Farit M. Afendi
Anggota
Diketahui oleh
Ketua Program Studi
Statistika
Dekan Sekolah Pascasarjana
Dr. Ir. Anik Djuraidah, MS
Dr. Ir. Dahrul Syah, M.Sc.Agr.
Tanggal Ujian: 22 Desember 2014
Tanggal Lulus:
PRAKATA
Bismillahirrohmanirrohim.
Puji dan syukur penulis panjatkan kehadirat Allah subhanahu wa ta’ala atas
segala rahmat, nikmat serta karunia-Nya sehingga penulis dipermudah dalam
menyelesaikan tesis dengan judul “Pengembangan Uji Kriteria Avalans Sempurna
pada Sifer Blok Menggunakan Metode Fisher”. Tesis ini disusun sebagai salah
satu syarat untuk memperoleh gelar Magister Sains pada program studi Statistika.
Penulis menyampaikan penghargaan dan ucapan terima kasih yang sebesarbesarnya kepada:
1. Dr. Anang Kurnia sebagai ketua komisi pembimbing dan Dr. Farit M. Afendi
sebagai anggota komisi pembimbing yang telah memberikan bimbingan dan
arahan selama penyusunan tesis ini serta Prof. Dr. Ir. Khairil A. Notodiputro,
MS selaku Penguji Luar Komisi atas masukan dan sarannya;
2. Seluruh staf pengajar pascasarjana Departemen Statistika IPB yang telah
banyak memberikan ilmu dan arahan selama perkuliahan sampai dengan
penyusunan tesis ini;
3. Suami dan anak-anakku atas do’a, pengertian, semangat, dan dukungannya;
4. Orangtua dan saudara-saudaraku atas do’a dan dukungannya;
5. Teman-teman (S2 dan S3) Statistika IPB atas kebersamaan, motivasi, dan
dukungannya;
6. Ibu Endang Lestari dan rekan-rekan kerja Puskaji Kriptografi khususnya Sari
Agustini Hafman dan Wildan atas bantuan, dukungan, motivasi dan sumbang
sarannya;
7. Seluruh pihak yang namanya tidak dapat disebutkan satu per satu yang telah
membantu dalam penyusunan tesis ini.
Penulis menyadari bahwa tesis ini masih banyak kekurangan. Oleh karena
itu kritik, saran, dan masukan sangat penulis harapkan demi penyempurnaan dan
perbaikan tesis ini. Semoga tesis ini bermanfaat.
Bogor, Februari 2015
Andriani Adi Lestari
DAFTAR ISI
DAFTAR TABEL
vi
DAFTAR GAMBAR
vi
DAFTAR LAMPIRAN
vi
GLOSARIUM
vi
PENDAHULUAN
Latar Belakang
Tujuan Penelitian
1
1
1
KRITERIA AVALANS SEMPURNA
1
MODEL ALTERNATIF UNTUK UJI KAS
6
EVALUASI UJI KAS ALTERNATIF
Tahapan Simulasi
Hasil Simulasi
9
10
11
IMPLEMENTASI UJI KAKS ALTERNATIF DAN UJI KAKS DAWSON
12
SIMPULAN DAN SARAN
Simpulan
Saran
13
13
13
DAFTAR PUSTAKA
14
LAMPIRAN
15
RIWAYAT HIDUP
26
DAFTAR TABEL
1.
2.
3.
Dua jenis kesalahan pada uji KAS
Ukuran blok plainteks, teks sifer, dan kunci dari sifer blok
Hasil uji KAKS dari beberapa sifer blok
9
12
13
DAFTAR GAMBAR
1.
2.
Pembangkitan vektor avalans
Kuasa dari uji KAS alternatif dan uji KAS Dawson untuk r 65536
dan s 1000
3
12
DAFTAR LAMPIRAN
1.
2.
3.
Ilustrasi enkripsi dan dekripsi dengan menggunakan sifer blok AES-128
Ilustrasi Uji KAKS
Kuasa dari uji KAS alternatif dan uji KAS Dawson untuk r 65536
dan s 1000
15
17
25
GLOSARIUM
Advanced Encryption Standard disingkat AES
Sifer blok simetri standar baru yang digunakan oleh pemerintah Amerika untuk
melindungi informasi sensitif. Algoritma Rijndael terpilih sebagai AES dari
sekumpulan algoritma hasil kompetisi. AES merupakan pengganti DES. (NIST
2001)
Data Encryption Standard disingkat DES
Sifer blok simetri standar yang dikembangkan oleh IBM dibawah naungan
pemerintah Amerika Serikat (NIST 1999). DES digantikan oleh AES.
Dekripsi (decryption)
Proses transformasi untuk mendapatkan kembali teks asli dari teks sifer dengan
menggunakan sebuah kunci (balikan dari enkripsi) (Menezes et al. 1997)
Enkripsi (encryption)
Proses yang mentransformasi teks asli menjadi teks sifer secara unik oleh
setiap elemen kunci (Menezes et al. 1997)
Kriptografi (cryptography)
Ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan
aspek keamanan informasi seperti kerahasiaan, integritas data, autentikasi
entitas, dan autentikasi data (Menezes et al. 1997)
Kriteria avalans sempurna (strict avalanche criterion) disingkat KAS
Jika suatu fungsi memenuhi KAS maka setiap bit-bit keluaran harus berubah
dengan peluang setengah ketika satu bit masukan berubah (Webster dan
Tavares 1986). KAS pada sifer blok terdiri atas KAKS dan KATAS.
Kriteria avalans kunci sempurna (strict key avalanche criterion) disingkat KAKS
Suatu sifer blok memenuhi KAKS jika setiap bit teks sifer akan berubah
dengan peluang setengah ketika satu bit kunci berubah untuk teks asli tetap
(Dawson et al. 1992)
Kriteria avalans teks asli sempurna (strict plaintext avalanche criterion) disingkat
KATAS
Suatu sifer blok memenuhi KATAS jika setiap bit teks sifer akan berubah
dengan peluang setengah ketika satu bit teks asli berubah untuk kunci yang
tetap (Dawson et al. 1992)
Layanan kerahasiaan (confidentiality)
Layanan yang digunakan untuk menjaga isi informasi dari siapapun kecuali
yang memiliki otoritas terhadap informasi tersebut (Menezes et al. 1997)
Penyadapan
Proses untuk mendengarkan (merekam) informasi (rahasia, pembicaraan) orang
lain dengan sengaja tanpa sepengetahuan orangnya (Kemendikbud 2008)
Serangan (attack)
Kegiatan atau usaha yang dilakukan secara sistematis untuk memecahkan
kunci pada suatu sistem kriptografis atau untuk mendapatkan kelemahan dari
sistem kriptografis (LSN 2007)
Serangan teks asli diketahui (known-plaintext attack)
Sebuah serangan dimana musuh mempunyai sejumlah teks asli yang
bersesuaian dengan teks sifer (Menezes et al. 1997)
Serangan teks asli dipilih(chosen-plaintext attack)
Sebuah serangan dimana kriptanalis memiliki kemampuan untuk memilih teks
asli untuk dienkripsi dan kemudian mendapatkan teks sifer yang sesuai. Tujuan
dari serangan ini adalah untuk mendapatkan informasi yang dapat mengurangi
keamanan dari skema enkripsi
(https://www.princeton.edu/~achaney/tmve/wiki100k/docs/Chosenplaintext_attack.html)
Sifer Blok (Block Cipher)
Skema enkripsi yang membagi teks asli ke dalam blok-blok dengan panjang
tetap dan mengenkripsi satu blok teks asli dalam satu waktu (Menezes et al.
1997)
Skema enkripsi (encryption scheme)
Skema yang terdiri dari fungsi enkripsi dan fungsi dekripsi (Menezes et al.
1997)
Teks asli (plaintext)
Bentuk asli (origin) berita; siapapun yang menguasai bahasanya akan dapat
membaca dan mengerti (LSN 2007)
Teks sifer (ciphertext)
Hasil dari enkripsi (LSN 2007)
1
PENDAHULUAN
Latar Belakang
Salah satu cara yang dapat digunakan untuk memperoleh informasi dalam
dunia intelijen adalah penyadapan. Kegiatan intelijen tersebut dilakukan hampir
oleh seluruh negara di dunia dan aksi tersebut tidak dapat dicegah. Oleh karena itu
untuk melindungi informasi dari penyadapan perlu dilakukan tindakan
pengamanan. Penggunaan kriptografi merupakan salah satu upaya yang dapat
dilakukan untuk melindungi informasi dari siapapun kecuali yang memiliki
otoritas terhadap informasi tersebut.
Teknik dalam kriptografi yang menyediakan layanan kerahasiaan adalah
skema enkripsi (Menezes et al. 1997). Salah satu kelas pada skema enkripsi
adalah sifer blok (block cipher). Sifer blok merupakan skema enkripsi yang
membagi teks asli ke dalam blok-blok dengan panjang tetap dan mengenkripsi
satu blok teks asli dalam satu waktu (Menezes et al. 1997). Menezes et al. (1997)
menjelaskan bahwa serangan (attack) yang ditujukan pada sifer blok pada
umumnya bertujuan mendapatkan teks asli dari teks sifer dan pada kasus terburuk
penyerang (attacker) dapat memperoleh kunci. Serangan tersebut dilakukan
dengan mempelajari hubungan antara teks sifer dengan kunci maupun dengan teks
asli. Salah satu kriteria yang mempelajari hubungan tersebut adalah kriteria
avalans sempurna (strict avalanche criterion) atau KAS.
Jika suatu sifer blok memenuhi KAS maka setiap bit-bit keluaran (teks sifer)
harus berubah dengan peluang setengah ketika satu bit masukan (teks asli atau
kunci) berubah (Webster dan Tavares 1986). Berdasarkan konsep tersebut,
Dawson (1992) mengembangkan suatu metode untuk menentukan sifer blok
memenuhi KAS. Pada penelitian ini akan dikembangkan suatu metode alternatif
untuk menentukan keterpenuhan KAS pada suatu sifer blok. Pendekatan yang
digunakan untuk mengembangkan uji KAS alternatif yaitu menguji setiap unsur
dari matriks avalans rataan secara terpisah, kemudian mengkombinasikannya
menggunakan metode Fisher (Fisher 1932).
Tujuan Penelitian
Penelitian ini bertujuan mengembangkan suatu metode alternatif untuk
menentukan keterpenuhan KAS pada suatu sifer blok.
KRITERIA AVALANS SEMPURNA
Sifer blok merupakan skema enkripsi yang membagi teks asli ke dalam
blok-blok dengan panjang tetap dan mengenkripsi satu blok teks asli dalam satu
waktu (Menezes et al. 1997). Bila p ' dan c ' menyatakan vektor baris berdimensi n
serta k ' menyatakan vektor baris berdimensi m yang tiap unsurnya merupakan
anggota dari 2 maka p ' n2 , c ' n2 dan k ' m2 . Untuk teks asli dalam bentuk
2
biner ( 2 ), teks asli dibagi kedalam blok teks asli berukuran n-bit yang
dinotasikan dengan p ' . Blok teks sifer berukuran n-bit dinotasikan c ' merupakan
keluaran dari fungsi enkripsi e dengan masukan teks asli p ' dan kunci k ' atau
c ' e p ', k ' . Fungsi kebalikannya merupakan fungsi dekripsi d sehingga
p ' d c ', k ' . Ilustrasi enkripsi teks asli dan dekripsi dari teks sifernya dapat
dilihat pada Lampiran 1.
Feistel (1973) membuat suatu kriteria yang dapat digunakan untuk
mengukur kekuatan dari sifer blok yaitu efek avalans (avalanche effect). Konheim
(1981) membagi kriteria tersebut menjadi dua, yaitu efek avalans teks asli
(plaintext avalanche effect) dan efek avalans kunci (key avalanche effect). Suatu
sifer blok menunjukkan adanya efek avalans teks asli jika rata-rata setengah dari
teks sifer akan berubah ketika satu bit teks asli berubah untuk kunci yang tetap.
Suatu sifer blok menunjukkan adanya efek avalans kunci jika rata-rata setengah
dari teks sifer akan berubah ketika satu bit kunci berubah untuk teks sifer yang
tetap.
Kam dan Davida (1979) memperkenalkan ide lengkap (complete), yaitu
suatu kondisi dimana setiap bit keluaran bergantung pada semua bit masukan. Jika
dimungkinkan untuk mendapatkan sebuah fungsi Boolean yang sederhana dari
setiap bit keluaran dalam bentuk bit-bit masukan, maka fungsi Boolean tersebut
harus bergantung pada seluruh bit-bit masukan jika fungsi tersebut lengkap (Kim
1991).
Konsep lengkap dan efek avalans dikombinasikan oleh Webster dan Tavares
(1986) untuk membentuk kriteria baru yaitu KAS. Suatu sifer blok memenuhi
kriteria avalans teks asli sempurna (strict plaintext avalanche criterion) atau
KATAS jika setiap bit teks sifer akan berubah dengan peluang setengah ketika
satu bit teks asli berubah untuk kunci yang tetap (Dawson et al. 1992). Bila v 'i
merupakan vektor berdimensi n dengan unsur ke-i bernilai 1 dan unsur lainnya
bernilai 0 maka sebuah sifer blok dengan fungsi enkripsi e : n2 m2 n2
memenuhi KATAS jika
e p ', k ' e p ' v ' , k ' 2
n 1 '
i
untuk semua
p 'n2
i 1,, n (Kim 1990).
Suatu sifer blok memenuhi kriteria avalans kunci sempurna (strict key
avalanche criterion) atau KAKS jika setiap bit teks sifer akan berubah dengan
peluang setengah ketika satu bit kunci berubah untuk teks asli tetap (Dawson et al.
1992). Bila v 'i merupakan vektor berdimensi m dengan unsur ke-i bernilai 1 dan
unsur lainnya bernilai 0 maka sebuah sifer blok dengan fungsi enkripsi
e : n2 m2 2n memenuhi KAKS jika e p ', k ' e p ', k ' v 'i 2n1
k 'm
2
untuk semua i 1,, m (Kim 1990).
Metode alternatif yang dapat digunakan untuk menentukan bahwa sifer blok
memenuhi KAKS adalah dengan mengkonstruksi matriks avalans B (Webster dan
Tavares 1986) .
3
b11 b12
B b21 b22
bn1 bn 2
Matriks avalans merupakan matriks berdimensi
setiap unsurnya adalah nol.
b1m
b2 m
bnm
n m dengan nilai awal dari
Prosedur 1 : Mengkonstruksi matriks avalans B untuk KAKS
1. Pilih blok teks asli acak p '
2.
3.
Bangkitkan r kunci acak k 'k untuk k 1,, r .
Untuk semua k 1,, r dan
j 1,, m , hitung vektor avalans
u c c dengan menyatakan operasi penambahan modulo 2 per bit
'
kj
'
k
'
kj
dari vektor biner. c'k e p ', k 'k merupakan vektor teks sifer hasil enkripsi p '
menggunakan kunci k 'k . Bila v 'i merupakan vektor berdimensi n dengan
unsur ke-i bernilai 1 dan unsur lainnya bernilai 0, c'kj e p ', k 'k v 'j
merupakan vektor teks sifer hasil enkripsi p ' menggunakan kunci k 'k v 'j ,
yaitu yaitu k 'k yang berbeda pada unsur ke-j untuk j 1,, m .. Ilustrasi dari
langkah ini untuk nilai k dan j tertentu dapat dilihat pada Gambar 1.
Langkah 3 akan menghasilkan r vektor avalans u 'kj untuk tiap j 1,, m ,
sehingga secara keseluruhan akan menghasilkan m r vektor avalans u 'kj .
Karena c 'k dan c 'kj merupakan vektor biner dan operasi merupakan operasi
biner, maka u 'kj merupakan vektor biner. Nilai yang mungkin dari ukj [i ]
adalah “0” dan “1” dan peluang terjadinya “1” adalah untuk 0 1 .
Oleh karena itu ukj [i ] bersebaran Bernoulli( ).
kk m
... kk j
ck n
... ck j
ckj n
... ck 1
... k j
k
... ckj j
ukj n
... ukj j
... kk 1
e
p’
e
p’
kk m
... kk 1
... ukj 1
Gambar 1 Pembangkitan vektor avalans
... ckj 1
4
4.
Tambahkan u kj ke matriks avalans B pada kolom ke-j untuk semua
k 1,, r dan j 1,, m . Kemudian bagi setiap unsur dari matriks B
dengan r. Misal
b11 b12 b1m
B b21 b22 b2 m b1 b 2 b m
bn1 bn 2 bnm
1 r
1 r
maka b j u kj atau bij ukj i
r k 1
r k 1
Prosedur yang sama dapat diterapkan dalam mengkonstruksi matriks avalans B
pada KATAS untuk blok kunci tetap k ' dan r kunci acak p 'k untuk k 1,, r .
Nilai bij menyatakan kekuatan hubungan antara kunci/teks asli unsur ke-j
dan teks sifer unsur ke-i (Webster dan Tavares 1986). Nilai 1 atau mendekati 1
pada bij mengindikasikan bahwa ketika kunci/teks asli pada unsur ke-j berubah
maka teks sifer unsur ke-i juga berubah nilainya, sedangkan nilai 0 atau mendekati
0 mengindikasikan bahwa teks sifer unsur ke-i tidak tergantung pada
kunci/plainteks. Jika semua unsur pada matriks avalans bernilai setengah maka
sifer blok memenuhi KAS (KATAS atau KAKS). Dampak tidak terpenuhinya
KATAS dan KAKS pada sifer blok (Dawson et al. 1992) adalah sebagai berikut:
1. Jika sifer blok mempunyai efek avalans teks asli sempurna yang jelek pada
beberapa posisi bit (terdapat bij yang bernilai mendekati 1 atau 0 pada
matriks avalans KATAS untuk i, j tertentu) maka kriptanalis mungkin dapat
menggunakan informasi tersebut untuk melakukan serangan teks asli terpilih
(chosen plaintext attack). Meskipum serangan tersebut tidak mengungkapkan
kunci yang digunakan dan sangat sulit untuk diimplementasikan, adanya
kemungkinan dilakukannya serangan tersebut mengindikasikan kemungkinan
kelemahan dari sifer blok. Sifer blok yang sebaiknya digunakan adalah sifer
blok yang memenuhi kriteria avalans teks asli sempurna.
2. Jika sifer blok tidak memenuhi KAKS maka kriptanalis mungkin dapat
menggunakan informasi tersebut untuk melakukan serangan teks asli
diketahui (known plaintext attack) dengan tujuan untuk mendapatkan kunci.
Jika terdapat banyak posisi i, j dengan bij mendekati nol atau satu maka hal
tersebut dapat mengakibatkan serangan teks asli diketahui pada sifer blok
dapat dilakukan dengan sangat cepat.
Dawson (1992) mengembangkan suatu metode statistika untuk menentukan
sifer blok memenuhi KAKS.
Prosedur 2 : Uji KAKS Dawson (Dawson et al. 1992):
1. Bangkitkan matriks avalans B sesuai dengan Prosedur 1.
b11 b12 b1m
B b21 b22 b2 m
bn1 bn 2 bnm
5
2.
Uji statistik untuk menganalisis matriks avalans B dengan H 0 : E bij 0.5
lawan H1 : E bij 0.5 untuk semua i 1,, n dan j 1,, m . Statistik
uji yang digunakan adalah Z 2 r B 0.5 .
z11
z
Z 21
zn1
Bila H 0 benar
E b 0.5 ,
ij
z12
z22
zn 2
z1m
z2 m
znm
maka ukj [i ] bersebaran Bernoulli(0.5) dan
E ukj [i ]
1
1
dan Var ukj [i ] . Karena ukj [i ] merupakan kejadian yang
2
4
bebas stokastik dan identik untuk k k dengan k , k 1, 2,, r , maka
1 r 1 1
1 r
1 r
E bij E ukj [i ] E ukj [i ]
r k 1 2 2
r k 1
r k 1
1 r 1
1
r
1 r
1 r
Var bij Var ukj [i ] 2 Var ukj [i ] 2 2
4r
r k 1 4 4r
r k 1
r k 1
Berdasarkan teorema limit pusat maka
bij E bij bij 0.5
zij
2 r bij 0.5 .
1 4r
Var bij
akan mendekati sebaran normal baku untuk nilai r besar. Uji tersebut
merupakan uji dua arah. Hitung pij P Z zij sehingga akan didapat
matriks
3.
4.
p11 p12 p1m
P p21 p22 p2 m
p
n1 pn 2 pnm
Ulangi langkah 1 dan 2 untuk s blok teks asli acak, sehingga akan
menghasilkan s matriks Z dan P, yang dinotasikan dengan Z h dan P h untuk
h 1,, s.
Kombinasikan s statistik uji zijh h 1,, s untuk menguji semua H 0 pada
unsur ke-ij menggunakan Metode Fisher-Pearson. Statistik uji dari metode
Fisher-Pearson dalam bentuk matriks adalah
l11 l12 l1m
s
h
L 2 ln P l21 l22 l2 m .
h 1
ln1 ln 2 lnm
Bila H 0 benar maka nilai pijh akan bersebaran seragam pada selang (0,1).
Negatif logaritma dari peubah bersebaran seragam (0,1) akan mengikuti
sebaran eksponensial dengan parameter 1 . Perkalian dari setiap ln pk
dengan 2 akan mengubah parameter menjadi 1 2 dan membuat sebarannya
6
ekuivalen dengan sebaran 2 dengan derajat bebas 2. Jumlah dari s nilai
2ln pijh juga akan mengikuti sebaran 2 dengan derajat bebas 2s . Statistik
5.
uji lij tersebut merupakan peubah bersebaran khi-kuadrat dengan derajat bebas
2s.
Bila nilai p dari statistik uji lij , dinotasikan dengan p2ij P L lij untuk
semua i 1,, n dan j 1,, m maka langkah selanjutnya adalah
menentukan bahwa p 2 bersebaran seragam pada selang (0,1) menggunakan
metode Kolmogorov-Smirnov. Nilai p dari statistik uji Kolmogorov Smirnov
tersebut dibandingkan dengan taraf nyata untuk mengambil keputusan
hipotesis sifer blok memenuhi KAKS ditolak atau diterima.
Prosedur 2 dapat diterapkan guna menguji sifer blok memenuhi KATAS
dengan mengkonstruksi matriks avalans B pada KATAS untuk blok kunci tetap
k ' dan r kunci acak p 'k k 1,, r . Ilustrasi uji KAKS olah Dawson dapat
dilihat pada Lampiran 2.
Uji KAKS dan uji KATAS hanya berbeda cara membangkitkan matriks
avalans, namun bentuk matriks avalansnya sama. Pada tesis ini, uji KAS mewakili
uji KAKS dan KATAS, yaitu uji statistik untuk mengevaluasi matriks avalans
tanpa mempertimbangkan proses dalam mengkonstruksi matriks tersebut.
MODEL ALTERNATIF UNTUK UJI KAS
Jika sifer blok memenuhi KAS maka setiap unsur pada matriks avalans yang
dibangkitkan oleh sifer blok tersebut bernilai setengah. Berdasarkan konsep
tersebut maka terdapat dua pendekatan yang dapat digunakan untuk menentukan
apakah setiap unsur pada matriks avalans bernilai setengah, yaitu
1. Uji kesamaan dua matriks berukuran besar
Uji ini bertujuan membandingkan matriks avalans dengan matriks setengah
dengan hipotesis
H0 : E B 0.5 lawan H1 : E B 0.5 .
Jika matriks avalans merupakan matrik segi maka dapat digunakan metode
yang sama dengan metode untuk menguji kesamaan matriks korelasi sama
dengan matriks tertentu, seperti Statistik M-Box yang dikembangkan oleh
Box (1949), statistik Jennrich dikembangkan oleh Jennrich (1970), atau
statistik VVVS oleh Herdiani (2008).
2. Uji
setiap
unsur
dari
matriks
secara
terpisah,
kemudian
mengkombinasikannya menggunakan metode Fisher (Fisher 1934).
Strategi yang digunakan adalah dengan membangkitkan s matriks avalans,
kemudian mereduksi matriks-matriks tersebut menjadi satu matriks avalans
rataan. Langkah selanjutnya adalah menguji apakah setiap unsur dari matriks
avalans rataan tersebut bernilai 0.5. Uji yang digunakan menggunakan konsep
uji z yang memanfaatkan teorema limit pusat. Nilai p dari uji tersebut
7
kemudian dikombinasikan untuk menguji apakah semua unsur bernilai 0.5
menggunakan metode Fisher (Fisher 1934).
Karena matriks avalans belum tentu matriks segi maka statistik M-Box,
statistik Jenrich, maupun statistik VVVS tidak dapat digunakan. Sampai dengan
tesis ini dibuat, penulis belum menemukan metode yang cocok untuk menguji
kesamaan matriks berukuran besar dengan dimensi sembarang. Oleh karena itu
pengembangan alternatif uji KAS difokuskan pada pendekatan ke-2.
Uji KAS hasil pengembangan disebut uji KAS alternatif. Uji KAKS
alternatif dapat dilihat pada Prosedur 3.
Prosedur 3 : Metode statistik yang diusulkan untuk uji KAKS (uji KAKS
alternatif)
1. Bangkitkan s matriks avalans B dari s blok teks asli acak yang dinotasikan
dengan B h untuk h 1, 2,, s . Pembangkitan matriks avalans sesuai dengan
Prosedur 1.
b11h b12h b1hm
h
h
h
B h b21 b22 b2 m
b h b h b h
nm
n1 n 2
r
1
bijh ukjh i
r k 1
2.
Hitung matriks avalans rataan B
b11 b12
1 s h b 21 b 22
B B
s h 1
b n1 b n 2
3.
b1m
b2m
b nm
Uji statistik untuk menganalisis matriks avalans B dengan H 0 : E bij 0.5
lawan H1 : E bij 0.5 untuk semua i 1,, n dan j 1,, m . bij dapat
dituliskan sebagai berikut
1 s
1 s 1 r
1 s r
bij bijh ukjh i ukjh i
s h 1
s h 1 r k 1
rs h1 k 1
Bila H 0 benar, maka ukjh [i ] bersebaran Bernoulli(0.5) dan E ukj [i ]
1
serta
2
Var ukj [i ]
identik
1
. Karena ukjh [i ] merupakan kejadian yang bebas stokastik dan
4
untuk
k , h k , h dengan k , k 1, 2,, r dan
h, h 1, 2,, s
, maka nilai harapan dan ragam dari bij adalah sebagai
berikut
sr 0.5
1 s r
1 s r
0.5
E bij E ukjh i E ukjh i
sr
sr h1 k 1
sr h1 k 1
8
1 s r
sr 1
1
1 s r
Var bij Var ukjh i 2 2 Var ukjh i 2 24
sr
4sr
sr h 1 k 1
s r h 1 k 1
Statistik uji yang digunakan untuk menguji H 0 : E bij 0.5 lawan
H1 : E bij 0.5 untuk i 1,, n dan
berikut :
bij E bij
j 1,, m
adalah sebagai
bij 0.5
2 rs bij 0.5
1
4sr
Berdasarkan teorema limit pusat, untuk nilai sr yang besar zij akan
bersebaran normal baku. Uji ini merupakan uji dua arah.
Dalam bentuk matriks, statistik uji tersebut dapat dituliskan sebagai
Z 2 sr B 0.5 dengan
zij
4.
Bila pij 2 P Z zij
Var bij
z11
z
Z 21
zn1
merupakan
z12
z22
zn 2
z1m
z2 m
znm
nilai p untuk statistik zij , pij saling
bebas untuk j j dan j, j 1,, m , namun pij belum tentu saling bebas
untuk i i dan i, i 1,, n . Dengan mengasumsikan bahwa pij saling
bebas untuk i, j i, j , j, j 1,, m dan i, i 1,, n , maka
akan terdapat n m uji hipotesis saling bebas yang menguji hipotesis
H 0 : E bij 0.5 . Untuk mengambil keputusan apakah semua unsur dari
matriks avalans rataan B bernilai setengah maka semua nilai pij dapat
dikombinasikan untuk membentuk uji gabungan. Metode yang digunakan
untuk melakukan uji kombinasi nilai pij adalah metode Fisher. Statistik uji
dari metode tersebut adalah
n
m
L 2 ln pij
i 1 j 1
Statistik L mengikuti sebaran dengan derajat bebas 2nm (Fisher 1934).
2
H 0 ditolak pada taraf nyata jika L 2mn
.
2
Prosedur 3 dapat diterapkan guna menguji sifer blok memenuhi KATAS
dengan mengkonstruksi matriks avalans B pada KATAS untuk blok kunci tetap
k ' dan r kunci acak p 'k dengan k 1,, r . Ilustrasi uji KAKS alternatif dapat
dilihat pada Lampiran 2.
9
EVALUASI UJI KAS ALTERNATIF
Jika ij E bij , maka hipotesis dari uji KAS Dawson dapat dituliskan
sebagai H0 : ij 0.5 untuk semua i, j , i 1, 2, , n dan j 1,, m lawan
H1 : minimal ada satu ij 0.5 untuk i 1, 2,, n dan j 1,, m . Hipotesis
dari Uji KAS alternatif juga dapat dituliskan sebagai H0 : ij 0.5 untuk semua
i, j dan
i 1, 2,, n dan j 1,, m lawan H1 : minimal ada satu ij 0.5
untuk i 1, 2,, n dan j 1,, m karena
1 s
1 s
1 s
E bij E bijl E bijl ij ij
s l 1
s l 1 s l 1
Uji hipotesis biasanya dievalusi dan dibandingkan melalui peluang
membuat kesalahan dalam mengambil keputusan untuk menolak atau menerima
hipotesis nol (Casella dan Berger 2002). Uji hipotesis dapat membuat satu dari
dua jenis kesalahan, yaitu kesalahan jenis I atau kesalahan jenis II. Pada uji KAS,
jika 0.5 tetapi uji hipotesis secara salah memutuskan untuk menolak H 0 maka
uji tersebut telah membuat kesalahan jenis I. Sebaliknya, jika 0.5 tetapi uji
hipotesis memutuskan untuk menerima H 0 maka uji tersebut telah membuat
kesalahan jenis II. Hubungan antara keputusan yang diambil dan keadaan
sesungguhnya digambarkan pada Tabel 1.
Galat jenis I merupakan peluang untuk membuat kesalahan jenis I atau
peluang menolak H 0 ketika H 0 benar. Uji hipotesis dikatakan uji bertaraf (taraf
nyata) jika Galat jenis I kurang sama dengan (Casella dan Berger 2002). Galat
jenis II merupakan peluang untuk membuat kesalah jenis II atau peluang untuk
menerima H 0 ketika H1 benar. Kuasa pengujian adalah peluang uji tersebut akan
menolak H 0 dengan benar ketika H 0 salah.
Tabel 1 Dua jenis kesalahan pada uji KAS
Keputusan
H1 : minimal ada satu
Keadaan yang
sesungguhnya
H0 : ij 0.5
H0 : ij 0.5
Benar
Kesalahan Jenis I
H1 : minimal
Kesalahan Jenis II
Benar
ij 0.5
ada satu
ij 0.5
Pada ukuran contoh tertentu, uji hipotesis mustahil mempunyai peluang
yang kecil untuk membuat kedua jenis kesalahan (Casella dan Berger 2002).
10
Peneliti biasanya mengendalikan galat jenis I pada taraf tertentu, dan mencari uji
yang mempunyai galat jenis II sekecil mungkin atau mencari uji dengan kuasa
yang lebih besar dari uji lainnya. Oleh karena itu pada subbab ini akan dipelajari
kuasa dari masing-masing uji KAS.
Jika uji A adalah uji KAS alternatif dengan daerah penolakan pada uji
2
bertaraf yaitu L 2mn
, maka kuasa dari uji tersebut adalah sebagai berikut
kuasa A P menolak H 0 | H1 benar
P L 22mn 0.5
n m
P 2 ln pij 0.5
i 1 j 1
n m
P 2 ln 2 P Z zij 22mn 0.5
i 1 j 1
n m
P 2 ln 2 P Z 2 rs bij 0.5 22mn 0.5
i 1 j 1
n m
P 2 ln 2 P Z 2 rs bij 2 rs 0.5 22mn 0.5
i 1 j 1
Jika D adalah statistik dari uji Kolmogor-Smirnov, dan uji B adalah uji
KAS Dawson dengan daerah penolakan pada dari bertaraf yaitu
0.5 ln 2
D
, maka kuasa dari uji tersebut adalah sebagai berikut
mn
kuasaB P menolak H0 | H1 benar
0.5 ln 2
P D
0.5
mn
Grafik dari kuasa uji dapat digunakan untuk mempermudah analisis kuasa.
Kuasa dari kedua uji KAS merupakan fungsi eksplisit maka untuk menganalisis
kuasa dari kedua uji tersebut dilakukan simulasi. Simulasi juga dilakukan untuk
menghitung Galat jenis I yang digunakan untuk menentukan bahwa kedua uji
KAS merupakan uji yang tak bias.
Tahapan Simulasi
Langkah-langkah yang dilakukan dalam simulasi untuk menghitung kuasa
dari uji KAS alternatif dengan uji KAS Dawson pada θ tertentu adalah sebagai
berikut:
a. Membangkitkan matriks avalans B
Data yang akan diuji oleh uji KAS adalah matriks avalans B. Matriks avalans
B merupakan matriks berdimensi n m . Nilai n merupakan ukuran blok
plainteks/teks sifer dan m merupakan ukuran kunci dari block cipher yang
akan diuji. Simulasi dilakukan pada nilai n 128 dan m 128 . Tiap unsur
dari matriks avalans B adalah
11
1 r
ukj i
r k 1
dengan ukjh [i ] bersebaran Bernoulli(θ). θ merupakan peluang terjadinya “1”
bij
dan 0 1 .
r
u i
k 1
b.
c.
kj
bersebaran Binomial(r,θ). Oleh karena itu setiap
unsur dari matriks avalans B tersimulasi ialah angka random yang
dibangkitkan dari populasi berdistribusi Binomial(r,θ) kemudian dibagi
dengan r. Simulasi dilakukan pada nilai r 216 . Matriks tersebut
dibangkitkan sebanyak 1000 matriks atau s 1000 .
Menguji 1000 matriks avalans B tersimulasi hasil dari a menggunakan uji
KAS Dawson sesuai Prosedur 2 dan uji KAS alternatif sesuai Prosedur 3
pada taraf nyata 0.05 .
Mengulangi langkah a dan b sebanyak 1000 kali. Kemudian hitung proporsi
menolak hipotesis nol. Proporsi tersebut merupakan kuasa dari uji pada
parameter .
Simulasi dilakukan menggunakan perangkat lunak SAS (Statistical Analyis
System) versi 9.3. Fungsi ln merupakan salah satu fungsi yang digunakan pada uji
KAS alternatif dan KAS Dawson. Fungsi ln x didefinisikan untuk x 0
sehingga 0 merupakan masukan tidak valid untuk fungsi tersebut dan ln 0 tak
terdefinisi. Pada SAS fungsi ln dengan masukan 0 akan menghasilkan kesalahan
dan menyebabkan simulasi terhenti. Masukkan fungsi ln pada uji KAS adalah
nilai peluang yang memungkinkan bernilai 0. Oleh karena itu setiap nilai peluang
bernilai 0 diganti dengan bilangan nyata terkecil yang lebih besar dari 0 pada SAS,
yaitu bilangan 11015 untuk menghindari adanya kesalahan.
Hasil Simulasi
Uji KAS alternatif dikatakan lebih baik dari uji KAS Dawson apabila kuasa
uji KAS alternatif lebih besar dari kuasa uji oleh KAS Dawson untuk setiap nilai
, r, dan s . Kuasa uji KAS hasil simulasi pada r 216 dan s 1000 disajikan
dalam bentuk grafik pada Gambar 2, sedangkan hasil simulasi secara numerik
dapat dilihat pada Lampiran 3.
Hasil simulasi (Gambar 2) menunjukkan bahwa uji KAS alternatif
merupakan uji tak bias karena kuasaA galat jenis I untuk setiap 0.5 . Uji
KAS Dawson merupakan uji yang bias karena terdapat nilai kuasaB galat jenis I ,
yaitu untuk 0.499993 dan 0.500007 . Uji KAS alternatif lebih baik dari uji
KAS Dawson pada 0.05 untuk nilai r 65536 dan s 1000 karena
kuasaA kuasaB . Hal tersebut berarti bahwa uji KAS alternatif mampu
mendeteksi bahwa 0.5 (jika memang bukan 0.5) lebih baik daripada uji
KAS Dawson karena perubahan kecil pada nilai menyebabkan naiknya kuasa
dari uji KAS alternatif menuju nilai 1 yang lebih cepat dari uji KAS Dawson.
12
1.0
Peluang tolak Ho
0.8
0.6
0.4
0.2
0.0
0.49990
0.49995
0.50000
θ
Gambar 2 Kuasa dari uji KAS alternatif (
untuk r 65536 dan s 1000
0.50005
0.50010
) dan uji KAS Dawson (
)
IMPLEMENTASI UJI KAKS ALTERNATIF DAN UJI KAKS
DAWSON
Uji KAKS alternatif dan uji KAKS Dawson diterapkan pada beberapa sifer
blok, yaitu Data Encryption Standard (DES) (NIST 1999), Advanced Encryption
Standard (AES)-128 (NIST 2001), AES-196 (NIST 2001), AES-256 (NIST 2001).
Ukuran blok plainteks, teks sifer, dan kunci dari masing-masing sifer blok dapat
dilihat pada Tabel 2.
Tabel 2 Ukuran blok plainteks, teks sifer, dan kunci dari sifer blok
Ukuran blok teks
Sifer blok
Ukuran kunci (m)
asli/teks sifer (n)
DES
64
52
AES-128
128
128
AES-196
128
196
AES-256
128
256
13
Tabel 3 Hasil uji KAKS dari beberapa sifer blok
Sifer blok
DES
AES-128
AES-192
AES-256
Nilai p
Uji KAKS
Uji KAKS
alternatif
Dawson
0.77005
0.6444
0.1204
0.1904
0.72061
0.7816
0.08533
0.6483
Hasil uji KAKS pada Tabel 3 menunjukkan bahwa semua nilai p lebih besar
dari taraf nyata 0.05 maka dapat simpulkan bahwa semua sifer blok yang
diteliti tidak ada cukup bukti untuk menolak hipotesis nol pada taraf nyata
0.05 . Sifer blok tersebut memenuhi KAKS baik berdasarkan hasil Uji KAKS
alternatif maupun uji KAKS Dawson. Hal tersebut berarti perubahan satu bit pada
kunci menyebabkan setiap bit teks sifer berubah dengan peluang setengah. Perlu
dicatat bahwa sifer blok yang memenuhi KAS masih mungkin diserang jika
kriptanalis mengetahui struktur sifer blok dan memenukan kelemahan pada
struktur tersebut (Dawson et al. 1992). Sifer blok yang tidak memenuhi KAS
mengindikasikan adanya kelemahan pada sifer tersebut dan tidak digunakan guna
menghindari serangan yang mungkin dilakukan oleh kriptanalis dengan
memanfaatkan kelemahan tersebut.
SIMPULAN DAN SARAN
Simpulan
Statistik uji alternatif yang diusulkan digunakan untuk menguji hipotesis
bahwa sifer blok memenuhi KAK adalah minus dua kali jumlah logaritma nilai p
dari statistik z pada masing-masing unsur matriks avalans rataan. Statistik uji
tersebut bersebaran khi kuadrat dengan derajat bebas dua kali dimensi dari matriks
avalans rataan. Pengujian KAS alternatif ini lebih baik dari uji KAS Dawson
karena uji KAS alternatif memiliki kuasa yang lebih besar dari uji KAS Dawson.
Saran
Statistik yang digunakan untuk mereduksi matriks avalans pada uji KAS
alternatif adalah statistik rataan. Pada penelitian selanjutnya perlu dilakukan
kajian lebih lanjut tentang penggunaan statistik lain untuk mereduksi matriks
avalans pada uji KAS.
Nilai u jk i pada vektor u jk tidak dijamin saling bebas untuk i i dan
i, i 1,, n yang mengakibatkan pij belum tentu saling bebas untuk i i dan
i, i 1,, n oleh karena itu perlu dilakukan uji kebebasan pada vektor u jk
untuk menjamin bahwa u jk i saling bebas untuk i i dan i, i 1,, n .
14
DAFTAR PUSTAKA
Box, GEP. (1949). A General Distribution Theory for a Class of Likelihood
Criteria. Biometrika, 36(3/4), 317-346.
Casella G, Berger RL. 2002. Statistical Inference, 2th Edition. California:
Duxbury
Dawson E, Gustafson H, Pettitt AN. 1992. Australian Journal of Combinatorics
6:147-153
Erna TH. 2008. Statistik Penguji Kestabilan Barisan Matriks Korelasi.[Disertasi].
Bandung (ID) : Institut Teknologi Bandung
Jennrich, R.I. (1970). An Asymptotic Test for the Equality of Two Correlation
Matrices. Journal of the American Statistical Association, 65(330), 904-912.
Feistel H. 1973. Cryptography and Computer Privacy. Scientific American,
Vol.228, No.5:15-23
Fisher RA. 1934. Statistical Methods for Research Workers, 5th Edition.
Edinburgh: Oliver and Boyd.
Kam JB, dan Davida GI. 1979. Structured Design of Substitution-Permutation
Encryption Networks. IEEE Transactions on Computers, Vol.28, No.
10:747-753
[Kemdikbud] Kementrian Pendidikan dan Budaya, Pusat Bahasa (ID). 2008.
Kamus Besar Bahasa Indonesia Daring [Internet]. [diakses pada 15
Desember 2014]. Tersedia pada
http://badanbahasa.kemdikbud.go.id/kbbi/index.php
Kim K. 1990. A Study on the Construction and Analysis of Substitution Boxes for
Symmetric Cryptosystems. [Disertasi]. Yokohama(JP) : Yokohama National
University
[LSN] Lembaga Sandi Negara (ID). 2007. Jelajah Kriptologi. Jakarta : Lembaga
Sandi Negara RI
Menezes AJ, van Oorschot PC, Vanstone SA. 1997. Handbook of Applied
Cryptography. Florida : CRC Press.
[NIST] National Institute of Standards and Technology (US). 1999. Announcing
the Data Encryption Standard (DES). Federal Information Processing
Standards Publication 46-3 [Internet]. [diunduh pada 21 Mei 2014].
Tersedia pada http://csrc.nist.gov/publications/fips/fips46-3/fips46-3.pdf
[NIST] National Institute of Standards and Technology (US). 2001. Announcing
the Advances Encryption Standard (AES). Federal Information Processing
Standards Publication 197[Internet]. [diunduh pada 21 Mei 2014]. Tersedia
pada http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf
Webster AF, Tavares SE. 1986. On The Design of S-Boxes. Advances in
Cryptology-CRYPTO ’85, LNCS 218:523-534
15
LAMPIRAN
Lampiran 1 Ilustrasi enkripsi dan dekripsi dengan menggunakan sifer blok AES128
Pada Lampiran ini akan diilustrasikan proses enkripsi teks asli dan dekripsi
teks sifernya dengan menggunakan sifer blok, yaitu AES-128.
Teks asli : INSTITUT PERTANIAN BOGOR
Kunci
: 11111111111111111111111111111111 (dalam hexadesimal)
Input dari sifer blok adalah teks asli dalam bentuk biner. Langkah pertama
dalam enkripsi adalah mengubah teks asli dalam bentuk karakter abjad ke bentuk
biner sesuai dengan skema pengkodean karakter (character encoding scheme).
Contoh umum dari skema pengkodean karakter ke dalam bentuk biner adalah
kode Baudot (5 bit), ASCII (8 bit), UTF-8 (8 bit), EBCDIC (8 bit), UTF-16 (16
bit), UTF-32 (32 bit). Penulis akan menggunakan ASCII untuk mengubah
karakter abjad ke dalam bentuk biner yang dituliskan dalam hexadesimal. Teks
asli yang didapat adalah sebagi berikut:
Teks asli : 49 4E 53 54 49 54 55 54 20 50 45 52 54 41 4E 49 41 4E 20 42 4F 47
4F 52 (dalam hexadesimal)
Teks asli dibagi kedalam blok-blok berukuran 128 bit. Kemudian tiap blok
dienkripsi dengan menggunakan fungsi enkripsi dari AES-128. Jika ukuran dari
teks asli bukan kelipatan 128 maka diperlukan penambahan bit (padding). Cara
penambahannya dapat dengan menambahkan bit “0”, atau mengikuti cara
penambahan bit pada PKCS7/ANSIX923/ISO10126. Pada ilustrasi ini metode
penambahan bit yang digunakan adalah dengan menambahkan bit “0”.
Teks asli adalah 24 karakter ASCII dengan 1 karakter adalah 8 bit, maka
panjang teks asli adalah 192 bit. Teks asli akan dibagi kedalam 2 blok teks asli
berukuran 128 bit dengan blok ke-2 ditambahkan bit “0” sampai terbentuk blok
utuh. Jika blok teks asli ke-i dinotasikan dengan p i maka
p1 01001001 01001110 01010011 01010100 01001001 01010100 01010101 01010100
00100000 01010000 01000101 01010010 01010100 01000001 01001110 01001001
p2 01000001 01001110 00100000 01000010 01001111 01000111 01001111 01010010
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Tiap blok teks asli ditransformasi menjadi teks sifer menggunakan fungsi enkripsi
dari AES-128 dengan kunci (Gambar 1 pada lampiran ini). Mode operasi yang
digunakan adalah mode Electronic Code Book (ECB). Teks sifer yang dihasilkan
adalah sebagai berikut:
c1 10110111 10100100 11100001 10101111 11110101 10110001 11010110 11100100
00110010 00001111 11101110 00000010 11001110 10110011 10100101 01101110
c2 10000010 11000001 01001010 01111001 00111101 01010111 11010111 10100100
01101010 00011011 01101001 10011110 11001010 01101110 00001010 10101110
Dalam bentuk heksadesimal dapat ditulisan sebagai
Teks sifer : B7 A4 E1 AF F5 B1 D6 E4 32 0F EE 02 CE B3 A5 6E 82 C1 4A
79 3D 57 D7 A4 6A 1B 69 9E CA 6E 0A AE
Apabila teks sifer diatas didekripsi dengan kunci yang sama maka akan
menghasilkan teks asli (ASCII) berikut:
Teks asli : 49 4E 53 54 49 54 55 54 20 50 45 52 54 41 4E 49 41 4E 20 42 4F
47 4F 52 00 00 00 00 00 00 00 00
16
Teks asli apabila dikodekan kembali ke bentuk teks dengan menggunakan
ASCII maka akan didapat teks “INSTITUT PERTANIAN BOGOR”. Ilustrasi
dibuat dengan menggunakan aplikasi Cryptools 2.0.
(a)
(b)
(c)
(d)
(e)
Gambar 1 Sifer Blok AES-128 (a) Diagram alir dari fungsi enkripsi AES (b)
transformasi Subbyte (c) transformasi ShiftRows (d) transformasi
MixColums (e) transformasi Addroundkey
(Gambar direproduksi dari http://developer.amd.com/resources/documentationarticles/articles-whitepapers/bulk-encryption-on-gpus/ (2014))
17
Lampiran 2 Ilustrasi Uji KAKS
Pada lampiran ini akan diilustrasikan uji KAKS pada sifer blok MINIAES.
MINIAES merupakan penyederhanaan sifer blok AES untuk tujuan pendidikan.
Ukuran teks asli/teks sifer dan kunci dari MINIAES adalah 16 bit atau n 16 dan
m 16 .
Uji KAKS alternatif dari MINIAES untuk s 2, r 10 adalah sebagai
berikut:
1.
Contoh teks asli acak terpilih adalah
p1 ' 10100101 01101100
p 2 ' 10010011 11000101
Mengkonstruksi matriks avalans B untuk KAKS sesuai Prosedur 1.
a. Pilih blok teks asli p1 ' 1010001000101110
b. Bangkitkan 10 kunci acak. Kunci acak terpilih adalah sebagai berikut
k 'k
k
c.
1
1110110100010000
2
0110111011111001
3
0001010011001110
4
0101000110101101
5
1100111110011011
6
0100111100100001
7
1000001110100101
8
1000010110001101
9
1100101000110001
10
0010100010111110
Langkah selajutnya adalah menghitung vektor u 'kj
untuk j 1 dan k 1
k 1'
k
'
1
v1'
c1' e p ', k1'
'
c11
e p ', k1' v1'
: 1110110100010001
: 0011101101000110
'
'
u11
c1' c11
untuk j 1 dan k 2
k 1'
k
'
1
v1'
: 1110110100010000
: 0111101101000010
: 0100000000000100
: 0110111011111001
: 0110111011111000
18
c1' e p ', k1'
: 0111101100111101
'
c11
e p ', k1' v1'
: 1000111010000100
'
'
u11
c1' c11
d.
: 1111010110111001
Lakukan sampai dengan j 16 dan k 10
Tambahkan 160 vektor u kj ke matriks avalans B pada kolom ke-j.
Nilai awal dari setiap unsur pada matriks B adalah 0. Kemudian
tambahkan vektor u11 ke matriks avalans B pada kolom ke-1,
sehingga nilai matriks B akan menjadi
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
Kemudian tambahkan vektor u 21 ke matriks avalans B pada kolom
ke-1, sehingga nilai matriks B akan menjadi
1
2
1
1
0
1
0
1
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
19
Ulangi sampai vektor u10,16 yang ditambahkan ke matriks avalans B
pada kolom ke-16, sehingga matriks B akan menjadi
4
7
7
4
3
7
6
2
6
4
6
4
5
6
4
4
3
5
5
5
7
7
5
3
5