Upload
doanquynh
View
223
Download
0
Embed Size (px)
Citation preview
Perancangan Kriptografi Block Cipher Berbasis pada
Teknik Burung Terbang
Artikel Ilmiah
Peneliti :
Andre William Muabuay (672009323)
Magdalena A. Ineke Pakereng, M.Kom.
Alz Danny Wowor, S.Si., M.Cs.
Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
Agustus 2015
1
Perancangan Kriptografi Block Cipher Berbasis pada
Teknik Burung Terbang
Artikel Ilmiah
Diajukan kepada
Fakultas Teknologi Informasi
Untuk memperoleh gelar Sarjana Komputer
Peneliti :
Andre William Muabuay (672009323)
Magdalena A. Ineke Pakereng, M.Kom.
Alz Danny Wowor, S.Si., M.Cs.
Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
Agustus 2015
2
3
4
5
6
7
8
Perancangan Kriptografi Block Cipher Berbasis pada
Teknik Burung Terbang
1Andre William Muabuay, 2Magdalena A. Ineke Pakereng, 3Alz Danny Wowor
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Jl. Diponegoro 52-60, Salatiga 50771, Indonesia
Email: [email protected], [email protected], [email protected]
Abstract
By using cryptography, we can secure a datum in the presence of the third
parties. In the beginning, crypthography was used to secure a datum in a form of text.
There are a lot of block cipher cryptography techniques which are developed from
diferrent kinds of algorithm applied for securing data, such as DES, RC5, IDEA, RSA
etc. This research designs a new crypthography technique , i.e. block cipher algorithm
using the Flying Bird Technique which is applied in the research of symmetric key
cryptography. The result of this design can be used as a tool to secure confidential
messages, especially in the text character.
Key Words: Cryptography , Block Cipher, Flying Bird Technique, Symmetric Key.
Abstrak
Dengan kriptografi kita dapat menjaga keamanan suatu data dari pihak yang tidak
diinginkan. Pada permulaannya kriptografi digunakan untuk mengamankan sebuah data
berupa teks.Banyak teknik kriptografi block cipher yang dikembangkan dengan berbagai
macamalgoritma yangdigunakan dalam mengamankan sebuah data diantaranya adalah
DES, RC5,IDEA, RSA dan masih banyak lagi algoritma kriptografi lainnya.Penelitian ini
merancang sebuah teknik kriptografibaru yaitu algoritma block cipher dengan Teknik
Burung Terbang,yang digunakan dalam penelitian kriptografi kunci simetris. Hasil
perancangan ini dapat digunakan sebagai alat untuk mengamankan pesan rahasia,
terutama pada karakter teks.
Kata Kunci: Kriptografi, Block Cipher, Teknik Burung Terbang,Kunci Simetris.
1Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi Universitas Kristen
Satya Wacana, Salatiga. 2Staff pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana, Salatiga. 3Staff pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana, Salatiga.
9
1. Pendahuluan
Menurut ITSEC (Information Technology Security Evaluatian Criteria ),
konsep dasar keamanan sistem informasi dilihat dari 3 aspek yaitu kerahasiaan
(confidentiality), keutuhan (integrity), dan ketersediaan (availability) [1].
Teknologi informasi memiliki peran vital dalam melakukan proses pengiriman
data. Masalah yang sering muncul dalam pengiriman data tersebut sangat rentan
terkait keamanan data itu sendiri. Berdasarkan pentingnya keamanan data maka
dibutuhkanlah suata sistem yang dapat mengamankan data tersebut.
Dengan kriptografi kita dapat menjaga keamanan suatu data dari pihak yang
tidak diinginkan. Pada permulaannya kriptografi digunakan untuk mengamankan
sebuah data berupa teks. Bermacam-macam algoritma yang digunakan dalam
mengamankan sebuah data diantaranya adalah DES, RC5,IDEA, RSA dan masih
banyak lagi algoritma kriptografi lainnya. Untuk menunjang keamanan data
tersebut maka dirancangalah algoritma kriptografi baru menggunakan block
cipher berbasis pada teknik burung terbangyang merupakan algoritma kunci
simetris.
Algoritma ini diadopsi ketika burung terbang berkelompok membentuk
formasi “V”, pola unik tersebut digunakan untuk pengambilan bit plainteks dan
kunci sebanyak empat putaran untuk proses enkripsi dan dekripsi dengan
mengunakan transposisi pada kotak 64-bit. Penelitian ini menghasilkan sebuah
teknik kriptografi baru yang digunakan dalam penelitian kriptografi simetris.
Hasil perancangan ini dapat digunakan sebagai alat untuk mengamankan pesan
rahasia, terutama pada karakter teks.
2. Tinjauan Pustaka
Landasan dari perancangan algoritma baru Teknik Burung Terbang,
merujuk pada penelitian-penelitian sebelumnya.
Penelitian pertama dengan judul “teknik langkah kuda catur”. Perancangan
algoritma langkah kuda catur menggunakan langkah kuda catur sebagai alur
pengacakan bit. Hasil rata–rata keacakan AES terhadap langkah kuda catur adalah
sebesar 0.364033347 [2]. Pada penelitian pertama digunakan sebagai acuan untuk
alur pengacakan bit pada pola masuk bit dan pola pengambilan bit.
Penelitian kedua dengan judul “perancangan algoritma kriptografi block
cipher dengan langkah kuda. Penelitian tersebut merancang Block Cipher dengan
pola langkah kuda lari dan langkah kuda jalan. Pola tersebut menghasilkan
algoritma kriptografi simetris dan dapat memenuhi lima–tupel (five–tuple). Hasil
perbandingan langkah kuda dan AES-128 lebih cepat 0.948699906 ms [3].
Penelitin kedua digunakan sebagai pembanding waktu dan memori pada proses
enkripsi dan dekripsi.
Penelitian ketiga dengan judul “Perancangan algoritma kriptografi berbasis
cabang dan ranting pohon”. Penelitian tersebut menggunakan kriptografi block
cipher dengan algoritma pola cabang ranting untuk proses pengacakan bit.
Kemudian diXOR dengan kunci yang sudah beregenerasi dalam proses enkripsi
selama empat putaran untuk menghasilkan cipherteks [4].
10
Penelitian ketiga digunakan sebagai acuan proses enkripsi sebanyak empat
putaran.
Pada penelitian ini akan dilakukan perancangan algoritma baru yang di
adopsi dari formasi burung terbang. Sejauh ini belum ada teknik kriptografi block
cipher yang menggunakan formasi burung terbang sebagai pola pengambilan bit
plainteks dan kunci. Pola pengambilan bit dengan formasi tersebut dilakukan
sebanyak empat putaran, setiap putaran memiliki pola pengambilan bit yang
berbeda. Kemudian akan dilakukan proses XOR pada plainteks dengan kunci
untuk menghasilkan putaran dalam proses enkripsi untuk menghasilkan
cipherteks.
Kemudian akan dilakukan perbandingan dengan algoritma langkah kuda
dari segi penggunaan memori dan waktu. Alasan dilakukan perbandingan dengan
Langkah Kuda karena algoritma langkah kuda lebih cepat dari AES- 128.
Selanjutnya akan dibahas dasar-dasar teori yang digunakan sebagai dasar
merancang kriptografi dalam penelitian ini. Block cipherdigolongkan sebagai
kriptografi moderen, input dan output dari algoritma block cipher berupa block
dan setiap block terdiri dari beberapa bit (1 block terdiri dari 64-bit atau 128-bit)
[5]. Block cipher juga merupakan algoritma kunci simetri atau kriptografi kunci
private, dimana kunci untuk enkripsi sama dengan kunci untuk dekripsi [6].
Skema proses enkripsi dan dekripsi block cipher secara umum dapat digambarkan
pada Gambar 1.
Gambar 1 Skema Proses Enkripsi dan Dekripsi Pada Block Cipher [6]
Misalkan blok plainteks (P) yang berukuran n bit
npppP ,,, 21 (1)
Blok cipherteks (C) maka blok C adalah
ncccC ,,, 21 (2)
Kunci (K) maka kunci adalah
nkkkK ,,, 21 (3)
Sehingga proses Enkripsi adalah
11
CPEk (4)
Proses dekripsi adalah
PCDk (C) = P (5)
Enkripsi dilakukan terhadap block bit plainteks menggunakan bit–bit kunci
(yang ukuranya sama dengan block plainteks). Algoritma enkripsi menghasilkan
block cipherteks yang sama dengan block plainteks. Dekripsi dilakukan dengan
cara yang serupa seperti enkripsi. Kriptografi membentuk sebuah sistem yang
dinamakan sistem kriptografi. Sistem kriptografi (cryptosystem) adalah kumpulan
yang terdiri dari algoritma kriptografi, semua plainteks dan cipherteks yang
mungkin, dan kunci [6]. Sebuah kriptografi dapat dikatakan sebagai sistem
kriptografi jika memenuhi kelima-tupel (Five-tuple) (P, C, K, E, D) yang
memenuhi kondisi :
1. adalah himpunan berhingga dari plainteks.
2. adalah himpunan berhingga dari cipherteks.
3. merupakan ruang kunci (keyspace), adalah himpunan berhingga dari kunci.
4. Untuk setiap k K, terdapat aturan enkripsi E dan berkorespodensi dengan
aturan dekripsi . Setiap dan adalah fungsi
sedemikian hingga untuk setiap plainteks .
Dasar teori pada pengujian dari perancangan kriptografi ini menggunakan
nilai keacakan dan diferensiasi data. Nilai keacakan digunakan untuk mencari
tahu seberapa besar nilai dari algoritma kriptografi yang dirancang mampu untuk
mengacak plainteks yang diinputkan [6].
Gambar 2Teknik Burung Terbang Membentuk Formasi “V” [7]
Perancangan algoritma kriptografi ini menggunakan teknik burung terbang
yang membentuk formasi “V”, Sebuah studi baru menerbitkan penelitian dalam
jurnal Nature yang dipimpin para peneliti dari Royal Veterinary College Inggris,
mengungkap misteri aneh dalam formasi kawanan burung terbang. Banyak
ilmuwan telah menyadari dan memahami bahwa burung memanfaatkan energi
12
udara ketika terbang dalam bentuk formasi 'V' [7]. oleh karena keunikan formasi
burung maka akan diterapkan pada alur pengambilan bit plainteks dan alur
kunci.Untuk mencari nilai keacakan diperoleh dari:
(6)
Dimana nilai acak Yi untuk tiap karakter diperoleh dari perbandingan antara selisih
plainteks pi dengan cipherteks ci terhadap plainteks pi. Dari persamaan 1 maka untuk
mencari nilai keacakan menggunakan rumus:
(7)
Diferensiasi data adalah perbandingan selisih antara dua titik. Dalam
kalkulus, metode ini sering disebut sebagai turunan atau kemiringan dari data.Jika
diberikan kumpulan data ((x1,y1), (x2,y2), (x3,y3), …, (xn,yn)) dengan syarat bahwa
xi<xi+1 dimana i = 1…n. Data-data tersebut dapat divisualisasikan ke dalam
koordinat Cartesius untuk setiap x sebagai variabel bebas dan y atau kadang ditulis
sebagai f(x) sebagai variabel tak bebas. Untuk menentukan diferensiasi data pada
dua titik maka persamaan yang dapat dibentuk sebagai berikut
Dy
Dx=
(yb - ya )
(xa - xb )(8)
dengan (xa, ya) sebagai titik pertama, dan titik berikutnya adalah (xb, yb).
Apabila terdapat n data maka dapat ditentukan rata-rata dari diferensiasi data
(Rataan diferensiasi (Rd))menggunakan Persamaan (9).
1
)/()()/()()/()( 1123231212
n
xxyyxxyyxxyyR nnnn
d
(9)
3. Metode penelitian
Pada bagian ini menjelaskan langkah–langkah penelitian dari kriptografi
yang dirancang. Langkah–langkah penelitian dalam menyelesaikan kriptografi
berbasis pada teknik burung terbang ditunjukan pada Gambar 2. Dalam
Perancangan kriptografi simetris ini diselesaikan melalui tahapan penelitian yang
terbagi dalam tujuh tahapan, yaitu: (1) Identifikasi dan Perumusan Masalah (2)
Pengumpulan Bahan (3) Perancangan Algoritma (4) Pembuatan Kriptografi (5)
Uji Kriptografi (6) Uji Kriptosistem (7) Penulisan Laporan.
13
Gambar 3 Tahapan Penelitian
Tahapan penelitian pada Gambar 3, dapat dijelaskan sebagai berikut :
Tahap satu: Identifikasi dan perumusan masalah, mengidentifikasi masalah yang
akan dibahas tentang kriptografi block cipher yang dijadikan landasan
perancangan algoritma baru. Menjelaskan perumusan masalah yang dibahas
dalam rancangan kriptografi block cipher berbasis pada alur teknik burung
terbang. Tahap dua: Pengumpulan bahan, yang terkait dengan proses enkripsi dan
dekripsi pada data teks menggunakan kriptografi block cipher, kunci simetris
melalui acuan yang ada. Tahap tiga: Perancangan algoritma, yaitu membuat
rancangan enkripsi dan dekripsi pada plainteks dengan alur teknik burung terbang
ke dalam block cipher dengan ukuran block 64-bit. Sedangkan pada kunci dibuat
sesuai dengan alur yang telah ditentukan hingga menghasilkan rancangan kunci.
Tahap empat: Pembuatan kriptografi yaitu bagaimana cara menerapkan algoritma
pada alur teknik burung terbang ke dalam block cipher dengan panjang block64-
bit, dengan melakukan proses perancangan enkripsi dan dekripsi pada kriptografi
yang dirancang. Tahap lima: Pengujian Kriptografi, yaitu menguji kriptografi
melakukan penghitungan secara manual, mulai dari memasukkan plainteks dan
mengubah teks ke dalam bit lalu melakukan proses enkripsi dan dekripsi. Jika
tidak dapat melakukan enkripsi dan dekripsi maka dilakukan pengecekan kembali
atau kembali ke tahap 4. Tahap enam: Pengujian kriptosistem, yaitu menguji
kriptografi yang dibuat dengan five-tuple dari Stinson sesuai dengan teori yang
sudah diberikan pada Definisi 1. Jika sudah memenuhi maka perancangan
algoritma kriptografi block cipher berbasis teknik burung terbang dapat dijadikan
sebagai teknik kriptografi baru. Tahap7: Penulisan laporan dari proses penelitian
14
dari tahap awal sampai tahap akhir ke dalam sebuah tulisan yang akan menjadi
laporan hasil penelitian.
Rancangan Umum Kriptografi
Dalam proses perancangan algoritma kriptografi terdapat proses enkripsi dan
dekripsi, sebagai penyamaran atau penyembunyian pesan plainteks dan menjadi
pesan yang tersembunyi pada cipherteks. Dimana dijelaskan dari empat putaran
proses rancangan kriptografi secara umum menggunakan pola teknik burung
terbang dapat dilihat pada Gambar 4.
Gambar 4 Proses umum Kriptografi Block cipher TBT
Plainteks dan kunci yang diinputkan terlebih dahulu oleh ASCII dan dirubah
menjadi biner dan dimasukan pada putaran proses yang berjumlah 4 putaran.
Setiap putaran terdapat proses untuk plainteks (Proses Plainteks-i, i = 1, 2, 3, 4)
dan proses untuk kunci (Proses Kunci-i, i = 1, 2, 3, 4). Setiap hasil dari Proses
Plainteks-i dan Proses Kunci-i dihubungkan dengan proses XOR untuk setiap
putaran ke i.
Plainteks 1 (P1) melakukan pengurutan dengan melakukan alur proses TBT
dan di XOR Kunci 1 (K1) dan menghasilkan Plainteks 2 (P2) kemudian Plainteks
2 (P2) melakukan pengurutan dengan melakukan alur proses TBT dan di XOR
Kunci 2 (K2) menghasilkan Plainteks 3 (P3) dan Plainteks 3 (P3) melakukan
pengurutan dengan melakukan alur proses TBT dan di XOR Kunci 3 (K3)
menghasilkan Plainteks 4 (P4) kemudian Plainteks 4 (P4) melakukan pengurutan
dengan melakukan alur proses TBT dan di XOR Kunci 4 (K4) untuk
menghasilkan Cipherteks, Kunci 1 sampai dengan kunci 4 dihasilkan dari hasil
perputaran matriks atau hasil acak dari masing-masing kunci secara berurutan
dengan menggunakan proses TBT.
4. Hasil dan Pembahasan
Pada bagian ini akan dijelaskan hasil dari perancangan kriptografi yang
diteliti. Hasil rancangan kriptografi kemudian diuji sebagai sebuah kriptosistem.
Perancangan TBT sebagai teknik kriptografi, terlebih dahulu dijelaskan proses
enkripsi secara keseluruhan.
15
Gambar 5 Rancangan Proses Enkripsi TBT
Berdasarkan Gambar 5, secara keseluruhan dari kriptografi yang dirancang,
terdapat 4 putaran proses untuk mengubah plainteks menjadi cipherteks.Pada
putaran proses plainteks, terdapat tiga tahap, yaitu merubah plainteks menjadi
biner, proses dimana bit–bit plainteks dimasukkan ke dalam kotak 64-bit
menggunakan Teknik Burung Terbang.
Bit kemudian diambil menggunakan teknik burung terbang. Plainteks dan
kunci yang sudah dirubah ke biner akan masuk pada putaran proses masing-
masing. Hasil dari proses Putaran 1 untuk plainteks adalah P1. Proses serupa juga
terjadi pada bit-bit kunci dimana hasil dari proses putaran 1 untuk kunci adalah
K1. Kemudian P1 diproses XOR dengan K1 menghasilkan bit cipherteks yang
akan menjadi inputan pada Putaran 2 dan K1 akan di lakukan proses pengambilan
bit dengan menggunakan alur ambil bit yang berbeda dengan K1untuk menjadi
inputan juga pada putaran 2 untuk kunci. Hasil dari putaran 2 adalah P2 dan K2,
keduanya kemudian akan diproses XOR kembali dan menghasilkan bit-bit baru
lagi yang akan diinput kembali pada putaran-putaran plainteks dan kunci
berikutnya sampaidengan Putaran 4, dimana P4 akan diproses XOR dengan K4 dan
menghasilkan cipherteks (C) yang berupa deret bit.
Karena kriptografi block cipher berbasis pada TBT merupakan algoritma
kunci simetris, untuk proses dekripsi algoritma ini merupakan proses kebalikan
dari proses enkripsi yang ditunjukkan pada Gambar 6.
Gambar 6 Rancangan Proses Dekripsi
16
Gambar 10 menjelaskan tentang proses dekripsi dimana bit cipherteks dan
K4 akan diproses XOR terlebih dahulu, sehingga menghasilkan P4. Kemudian P4
dan K4 akan diproses pada proses balik putaran plainteks dan kunci sampai pada
proses Putaran 1 yang menghasilkan teks plainteks dan teks kunci yang semula.
Aplikasi yang dibuat akan melakukan proses enkripsi dan dekripsi pada data
teks, setelah dimasukkan sejumlah karakter sebagai kunci dengan batasan 8
karakter maka proses enkripsi akan ditampilkan pada output text, dan langsung
dilakukan proses dekripsi.Untuk menguji perancangan kriptografi simetris ini
sebagai sebuah teknik kriptografi, dilakukan proses enkripsi-dekripsi. Proses
dilakukan sesuai dengan langkah-langkah yang telah dilakukan pada perancangan.
Rancangan Algoritma Teknik Burung Terbang (TBT)
Algoritma yang dirancang memiliki 4 putaran proses untuk mengubah plainteks
menjadi cipherteks. Untuk mengubah plainteks menjadi biner, menggunakan kode
ASCII (American Standard Code of Information Interchange) biner tersebut
dimasukan kedalam kotak 64 bit dan diambil berdasarkan pola teknik burung
terbang. Teknik burung terbang tidak hanya digunakan pada proses plainteks
namun juga pada proses kunci.Setelah melalui proses masuk bit dan ambil bit
maka akan di lakukan XOR bit plainteks dan kunci untuk menghasilkan
cipherteks, setiap putaran bit menggunakan pola masuk dan pola pengambilan bit
yang berdeda sesuai dengan pola teknik burung terbang.seperti pada Gambar 5
dan Gambar 6.
Pada Gambar 7 menggambarkan pola masuk bit dimana plainteks akan
dirubah menjadi biner dan dimasukan kedalam kotak 64-bit, langkah pertama
memasukan bit dilakukan secara vertikal dari kolom pertama adalah P1,P2,…,P64.
Pada Gambar 6 menjelaskan pola pengambilan bit berdasarkan Algoritma Burung
Terbang yang dimulai dari P25,P26,P18…,P5.
Gambar 7 Pola Masuk Bit Pada Teknik
Burung Terbang Pada Kotak 64-Bit
p1 p9 p17 p25 p33 p41 p49 p57
p2 p10 p18 p26 p34 p42 p50 p58
p3 p11 p19 p27 p35 p43 p51 p59
p4 p12 p20 p28 p36 p44 p52 p60
p5 p13 p21 p29 p37 p45 p53 p61
p6 p14 p22 p30 p38 p46 p54 p62
p7 p15 p23 p31 p39 p47 p55 p63
p8 p16 p24 p32 p40 p48 p56 p64
Gambar 8 Pola Pengambilan Bit Pada Teknik
Burung Terbang Pada Kotak 64-Bit
p1 p9 p17 p25 p33 p41 p49 p57
p2 p10 p18 p26 p34 p42 p50 p58
p3 p11 p19 p27 p35 p43 p51 p59
p4 p12 p20 p28 p36 p44 p52 p60
p5 p13 p21 p29 p37 p45 p53 p61
p6 p14 p22 p30 p38 p46 p54 p62
p7 p15 p23 p31 p39 p47 p55 p63
p8 p16 p24 p32 p40 p48 p56 p64
17
Pada Gambar 8 adalah proses ambil bit dengan alur TBT, hal tersebut
dimaksudkan supaya membentuk keacakan bit yang baik. Sebagai contoh, bit
diambil mengikuti arah yang sudah diberikan pada penjelasan sebelumnya dan
pola warna pada Gambar 8, maka diperoleh urutan bit berdasarkan karakter.
Dimisalkan plainteks = Tt = karakter plainteks, dan p = biner karakter, maka:
nppppT ,,,, 321 dimana Znn ,8|
;,,,, 83211 ppppt
;,,,, 16111092 ppppt
;,,,, 241918173 ppppt
nnnnn ppppt 8586878 ,,,, (10)
Plainteks yang diinputkan haruslah kelipatan dari 8. Jika tidak kelipatan 8, maka
akan dilakukan padding karakter.
, maka
71;8|)(
,,,,,,,, 2121
kkn
ppppppP knnnn (11)
Sesuai dengan Gambar 6 maka didalam 1 blok matriks terdapat 64-bit, dan urutan
pengambilan rangkaian bit-bit tersebut dijabarkan sebagai berikut. (12)
Pada Gambar 9 menjelasakan pola masuk bit kunci dimana plainteks akan
dirubah menjadi biner dan dimasukan kedalam kotak 64-bit, langkah pertama
memasukan bit dilakukan secara horisontal dari kanak ke kiri kolom pertama
adalah k1,k2,…,k64. Pada Gambar 7menjelaskan pola pengambilan bit berdasarkan
Algoritma Burung Terbang yang dimulai dari k25, k18, k26…, k5.
18
k8 k7 k6 k5 k4 k3 k2 k1
k16 k15 k14 k13 k12 k11 k10 k9
k24 k23 k22 k21 k20 k19 k18 k17
k32 k31 k30 k29 k28 k27 k26 k25
k40 k39 k38 k37 k36 k35 k34 k33
k48 k47 k46 k45 k44 k43 k42 k41
k56 k55 k54 k53 k52 k51 k50 k49
k64 k63 k62 k61 k60 k59 k58 k57
k8 k7 k6 k5 k4 k3 k2 k1
k16 k15 k14 k13 k12 k11 k10 k9
k24 k23 k22 k21 k20 k19 k18 k17
k32 k31 k30 k29 k28 k27 k26 k25
k40 k39 k38 k37 k36 k35 k34 k33
k48 k47 k46 k45 k44 k43 k42 k41
k56 k55 k54 k53 k52 k51 k50 k49
k64 k63 k62 k61 k60 k59 k58 k57
Gambar 9 Pola Masuk Bit Kunci Pada
Teknik Burung Terbang Pada Kotak 64-Bit Gambar 10 Pola Pengambilan Bit KunciPada
Teknik Burung Terbang Pada Kotak 64-Bit
Pola pengambilan kunci pada matriks 64-bit seperti Gambar 10. Merupakan pola
pengambilan rangkaian biner pada kunci diputaran ke-1. Berikut adalah
penjabaran dari urutan pengambilan rangkaian biner putaran ke-1
Kemudian dimisalkan kunci = X, x = karakater kunci, dan k= biner karakter
kunci,maka:
nkkkkX ,,,, 321 dimana Znn ,8|
;,,,, 83211 kkkkx
;,,,, 16111092 kkkkx
;,,,, 241918173 kkkkx
⋮
nnnnn kkkkx 8586878 ,,,, (13)
Kunci yang diinputkan haruslah kelipatan dari 8. Jika tidak kelipatan 8, maka
akan dilakukan padding karakter.
, maka
71;8|)(
,,,,,,,, 2121
kkn
kkkkkkX knnnn (14)
Sesuai dengan Gambar 8 maka didalam 1 blok matriks terdapat 64-bit, dan urutan
pengambilan rangkaian bit-bit kunci tersebut dijabarkan sebagai berikut.
.
19
(15)
Teknik Burung Terbang Sebagai Teknik Kriptografi
Suatu kriptografi dapat dikatakan sebagai sebuah teknik kriptografi jika
vnmemenuhi 5-tuple yaitu P, C, K, E, dan D. Akan ditunjukan bahwa
perancangan ini memenuhi kelima (5-tuple). Padalah himpunan berhingga dari
plainteks, Dalam penelitian perancangan ini menggunakan 256 karakter ASCII
yang di ambil dari table ASCII, himpunan plainteks pada Teknik Burung Terbang
merupakan himpunan berhingga. Cadalah himpunan berhingga dari cipherteks.
Cipherteks dihasilkan dalam 256 karakter ASCII. K, keyspace adalah himpunan
berhingga dari kunci. Jumlah ruang kunci yang dipakai dalam perancangan ini
adalah 256 karakter yang diambil dari ASCII. Sehingga ruang kunci merupakan
himpunan berhingga . E, enkripsi, dan D, dekripsi, setiap ek : P→C dandk : C → P
adalah fungsi sedemikian hingga dk(ek(x)) = x, untuk setiap plainteks x∊P.
Pembahasan sebelumnya telah membahas proses enkripsi dan dekripsi sehingga
telah memenuhi tuple E dan D. karena telah memenuhi kelima kondisi maka
Teknik Burung Terbang merupakan sebuah sistem kriptografi. Pengujian ini
menunjukkan bahwa rancangan kriptografi dapat melakukan proses enkripsi dan
dekripsi, maka telah memenuhi dua dari 5-tuple Stinson untuk sebuah
kriptosistem [8].
Gambar 10 dan Gambar 11 menjelaskan tampilan proses enkripsi dan proses
dekripsi dengan mengisi karakter teks dan kunci. Untuk memperoleh cipherteks
maka harus diinputkan plainteks serta kunci yang sudah ditentukan pada input
teks. Dimana cipherteks yang dihasilkan dari proses enkripsi digunakan dalam
proses dekripsi untuk mengembalikan pesan ke bentuk awal untuk memperoleh
plainteks.
Berikut adalah pengujian proses enkripsi dan dekripsi:
a) Plainteks yang digunakan adalah “FAKULTAS”
20
b) Kunci yang digunakan yaitu “FTI-UKSW”
c) Setelah tahap persiapan selesai dilakukan, kemudian melakukan proses
enkripsi dan dekripsi.
d) Maka pada proses enkripsi dari plainteks dan kunci tadi maka akan
menghasilkan nilai hexa“45138873EEAB3507”
e) Setelah menghasilkan hasil cipherteks, maka aplikasi akan menampilkan
lamanya proses enkripsi “0.0236” detik.
f) Setelah menghasilkan hasil cipherteks, juga akan menampilkan perbedaan
byte sebanyak 3758kb.
Gambar 11 Tampilan Proses Enkripsi
Setelah tahap input karakter dan kunci selesai dilakukan, kemudian melakukan
proses enkripsi. Waktu yang dibutuhkan “0.0236” detik, dan memori yang
digunakan pada saat proses enkripsi adalah 3758 Kb.Setelah cipherteks diketahui,
selanjutnya adalah melakukan proses dekripsi, hasil cipherteks yang didapatkan
merupakan nilai hexa sebab kombinasi angka hexa terdari dari 1-9 karakter
numerik dan A-F karakter alfabet.
Setelah cipherteks diketahui, maka selanjutnya adalah melakukan proses
dekripsi, hasil cipherteks yang didapatkan merupakan nilai hexa sebab kombinasi
angka hexa terdari dari 1-9 karakter numerik dan A-F karakter alfabet. Proses
yang dilakukan sesuai dengan langkah-langkah yang sudah dijelaskan pada tahap
perancangan.
a) Cipherteks yang diperoleh pada proses enkripsi yaitu
"45138873EEAB3507”
b) Hasil dari cipherteks kemudian dimasukan ke dalam input teks dan
melakukan proses dekripsi maka menghasilkan “FAKULTAS”
c) Lamanya proses dekripsi yaitu “0.7415” detik, dan perbedaan kb yaitu
3498kb.
21
Gambar 12 Tampilan Proses Dekripsi
Perbandingan dengan plainteks awal dan cipherteks dapat dilihat pada grafik
Gambar 13.
Gambar 13 Grafik nilai Keacakan dan Diferensiasi.
Pengujian pertama yang dilakukan adalah mencari nilai keacakan
berdasarkan Persamaan ke (7) maka diperoleh nilai -0.3139. menunjukan
informasi dari rata-rata perbandingan antara selisih plainteks dan
chiperteksterhadap plainteks, kecenderungan kriptografi ini membawa lebih
banyak cipherteks keatas plainteks.
Pengujian berikutnya merujuk dari Persamaan ke (9) maka di peroleh nilai
diferensiasi data sebesar -8.8571.Nilai tersebut menunjukan bahwa adanya
hubungan negatif antara plainteks dan cipherteks.
Algoritma ini akan diuji menggunakan nilai waktu dan memori dari pada
algoritma Langkah Kuda (LK) sehingga dapat melihat perbandingan pada hasil uji
Gambar 14 GrafikPerbandingan Waktu TBT Dan LK
22
Gambat 14 berdasarkan banyaknya data yg diuji secara acak, dan banyaknya
karakter yang dipilih dengan angka sembarang. data terbesar yang diinputkan
adalah 1008 karakter, dan data terkecil adalah 1. Lamanya waktu berdasarkan
karakter yang diinputkan, secara statistik menginformasikan algoritma kriptografi
TBT, pada proses enkripsi dengan inputan yang sama dengan algoritma LK
memperoleh waktu lebih cepat pada proses enkripsi dibandingkan dengan
algoritma LK.
Grafik hasil pengujian fitting berdasarkan banyaknya data yang diuji maka
di dapatkan R2 = 1 . Berdasarkan hasil pengujian dapat diperoleh model
persamaan sebagai berikut.
(16)
Model ini dapat digunakan untuk memproyeksikan kebutuhan waktu
berdasarkan banyaknya inputan karakter, contoh inputan data sebanyak 3000
karakter maka berdasarkan persamaan (12) diperoleh.
0846.0)3000(0057.0)3000( f . (17)
= 17.0154detik.
Gambar 14 menunjukan hasil pengujian plainteks terhadap memori berdasarkan
banyaknya karakter. Dimana sumbu x menunjukan banyaknya karakter, dan
sumbu y menunjukan banyaknya memori yang digunakan.
Gambar 15 Grafik Perbandingan Memori TBT Dan LK
Berdasarkan Gambar 15 Menunjukan hasil pengujian plainteks terhadap
memori, berdasarkan banyaknya karakter yang dipilih dengan angka sembarang.
Menggunakan inputan yang sama antara algoritma TBT dan LK secara statistik
menginformasikan bahwa algoritma TBT menggunakan memori yang cukup kecil
di bandingkan dengan algoritma LK pada proses enkripsi .
Berdasarkan uji waktu dan memori menggunakan model fitting
Menggunakan inputan yang sama antara algoritma teknik burung terbang dan
langkah kuda secara statistik menginformasikan bahwa algoritma teknik burung
terbang melakukan proses enkripsi yang lebih cepat dan menggunakan memori
yang lebih sedikit di bandingkan dengan algoritma langkah kudapada proses
enkripsi .
0846.00057.0)( xxf
23
5. Simpulan dan Saran
Simpulan yang dapat diambil adalah rancangan algoritma kriptografi
dengan teknik Burung Terbang dapat dikatakan sebuah teknik kriptografi karena
dapat melakukan proses enkripsi dan dekripsi, dan telah memenuhi (five tuple).
Simpulan kedua adalah waktu yang diperlukan untuk melakukan proses enkripsi
memerlukan waktu lebih cepat sebesar 0,0057 detik dari proses dekripsi.
Kebutuhan memori terhadap banyak karakter plainteks yang diinputkan
selalu berbanding lurus dengan laju kenaikan. Hal yang sama juga untuk
kebutuhan memori terhadap banyak karakter plainteks, selalu berbanding lurus
dengan laju kenaikan sebanyak 70357 kb. Banyak proses yang sedikit dapat
menjamin keamanan pesan bila dilakukan dengan kombinasi pola dalam
pemasukan dan pengambilan bit dari kotak 64-bit.
Saran dari penelitian ini adalah dapat ditambahkan proses s-box untuk
membuat hungan non-linier yang kuat dan dapat menutupi kekurangan dari
operasi XOR dan proses transposisi. Atau juga dapat ditambahkan fungsi
pembangkit acak untuk memperkuat proses pembangkitan kuci yang dinamis
sehingga dapat meningkatkan keamanan dari serangan brute force atack.
6. Daftar Pustaka
[1] [CEC 1990] (Informal) EC advisory group SOG-IS: Information
Technology Security Evaluation Criteria (ITSEC), Harmonised Criteria of
France, Germany, the Netherlands, the United Kingdom – Version 1; 02
May 1990
[2] Setiawan, A. N., Wowor, A. D., Magdalena, A. I. P., 2015.Perancangan
AlgoritmaPada Kriptografi Block Cipher dengan Teknik Langkah Kuda
Dalam Permainan Catur.Prociding Seminar Teknik Informatika dan
Sistem Informasi, Bandung.
[3] Bili,D. D& Wowor, A. D, 2015. Perancangan Kriptografi Block Cipher
dengan Langkah Kuda, Universitas Kristen Satya Wacana, Salatiga.
[4] Setiawan, E. F & Wowor, A. D, Magdalena, A. I. P., 2015.Perancangan
AlgoritmaKriptografi Block Cipher Berbasis Pola Cabang dan Ranting
Pohon. Universitas Kristen Satya Wacana, Salatiga.
[5] Ariyus, Dony. 2006. Kriptografi Keamanan Data dan Komunikasi.
Yogyakarta: Graha Ilmu.
[6] Munir, Rinaldi, 2006. Kriptografi, Bandung: Informatika.
24
[7] S.J., Hubel, T.Y., Fritz, J., Heese, S., Trobe, D., Voelkl, B., Hailes, S.,
Wilson, A.M. & Usherwood, J.R. 2014. Upwash exploitation and
downwash avoidance by flap phasing in ibis formation flight. Portugal.
Nature 505, 399-402.
[8] Stinson, D.R. 1995. Cryptography Theory and Practice. Florida: CRC
Press, Inc.