perancangan kriptografi block cipher berbasis pada teknik...

25
Perancangan Kriptografi Block Cipher Berbasis Pada Teknik Anyaman Dasar Tunggal Artikel Ilmiah Peneliti : Shelta Claudia Putri (672008293) M. A. Ineke Pakereng, M.Kom. Alz Danny Wowor, S.Si., M.Cs. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga Mei 2015

Upload: vuongdan

Post on 07-Mar-2019

249 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis

Perancangan Kriptografi Block Cipher

Berbasis Pada Teknik Anyaman Dasar Tunggal

Artikel Ilmiah

Peneliti :

Shelta Claudia Putri (672008293)

M. A. Ineke Pakereng, M.Kom.

Alz Danny Wowor, S.Si., M.Cs.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

Mei 2015

Page 2: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis

Perancangan Kriptografi Block Cipher

Berbasis Pada Teknik Anyaman Dasar Tunggal

Artikel Ilmiah

Diajukan kepada

Fakultas Teknologi Informasi

Untuk memperoleh gelar Sarjana Komputer

Peneliti :

Shelta Claudia Putri (672008293)

M. A. Ineke Pakereng, M.Kom.

Alz Danny Wowor, S.Si., M.Cs.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

Mei 2015

Page 3: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis
Page 4: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis
Page 5: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis
Page 6: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis
Page 7: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis
Page 8: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis
Page 9: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis

Perancangan Kriptografi Block Cipher

Berbasis Pada Teknik Anyaman Dasar Tunggal

1

Shelta Claudia Putri, 2M. 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

The cryptography use to increase secure of the data and keep should be updating,

because a lot of cryptographic has been released and already solved by the cryptanalysis.

This research based is how to create cryptographic block cipher on a Anyaman Dasar

Tunggal method where that method use a pattern for to encryption the data. This

research results can be use an alternative for secure the data and also a new

cryptographic method.

Keywords : Cryptography, Block Cipher Cryptography, Anyaman Dasar Tunggal.

Abstrak

Kriptografi yang digunakan untuk meningkatkan keamanan data harus selalu

diperbaharui, dikarenakan banyak kriptografi yang dipublish dan sudah dipecahkan oleh

kriptanalisis. Penelitian ini merancang sebuah kriptografi block cipher berbasis pada

teknik anyaman dasar tunggal dimana teknik tersebut digunakan menjadi pola dalam

mengenkripsi data. Hasil dari penelitian ini dapat dipakai sebagai alternatif untuk

mengamankan data dan juga sebagai teknik kriptografi baru.

Kata Kunci : Kriptografi, Kriptografi Block Cipher, Anyaman Dasar Tunggal.

1 Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi Universitas Kristen

Satya Wacana, Salatiga. 2 Staff pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana, Salatiga.

3 Staff pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana, Salatiga.

Page 10: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis

1

1. Pendahuluan

Proses pengiriman dan pertukaran informasi atau data dilakukan melalui

perangkat digital karena itu faktor keamanan diperlukan agar dalam proses

tersebut tidak terjadi pencurian maupun manipulasi data oleh pihak yang tidak

bertanggung jawab. Untuk menjaga kerahasiaan dan keamanan data, maka

diperlukan sebuah metode pengamanan, yaitu kriptografi. Terdapat banyak teknik

kriptografi yang bisa digunakan, salah satunya adalah block cipher, yang

merupakan suatu algoritma yang input dan output-nya berupa satu block, dan

setiap block terdiri dari beberapa bit [1].

Kriptografi digunakan dalam kehidupan sehari-hari. Contoh penerapan

kriptografi yang banyak digunakan, adalah kartu cerdas dan transaksi Anjungan

Tunai Mandiri (ATM). Kartu cerdas dapat melayani banyak fungsi, mulai dari

otentikasi sampai penyimpanan data. Banyak peralatan mobile yang menggunakan

kartu cerdas untuk otentikasi. Namun kartu cerdas tidak menjamin keamanan

secara total. Jika perangkat mobile hilang, sertifikat digital dan kunci privat di

dalam kartu cerdas berpotensi diakses oleh pencuri. Selain kartu cerdas, contoh

lain dari kegunaan kriptografi adalah transaksi melalui ATM. Dalam melakukan

transaksi kartu ATM diberi kode PIN (Personal Information Number) yang

berasosiasi dengan kartu tersebut. PIN diperlukan untuk keamanan dalam proses

transaksi agar data pengguna tidak disalahgunakan oleh pihak yang tidak

bertanggung jawab [2].

Munir [2], menjelaskan bahwa kriptografi DES digunakan sebagai alat

pengamanan PIN di berbagai bank di Indonesia. Karena menggunakan DES maka

rata-rata PIN berjumlah 4 atau 6 karakter, yang kemudian di-padding

(ditambahkan karakter NULL) sampai 8 dan memenuhi ukuran kunci pada DES

yang sebanding dengan 64 bit. Penggunaan DES sebagai pengamanan sangat

berisiko karena keberadaan DES sudah diganti oleh AES, selain itu kriptografi

tersebut sudah dipecahkan dengan teknik differential cryptanalysis oleh

kriptanalis Eli Biham dan Adi Shamir [3]. Kondisi penggunaan DES di berbagai

bank menujukkan bahwa sangat kurang metode kriptografi baru yang dapat

digunakan untuk mengamankan berbagai informasi penting.

Penelitian ini merancang algoritma ayaman dasar tunggal dan kemudian

digunakan untuk merancang kriptografi blok cipher. Anyaman Dasar Tunggal

(ADT) merupakan salah satu dari sekian banyak anyaman yang ada, yang

biasanya diterapkan pada pembuatan tikar, ancak, atau yang lainnya. ADT

digunakan sebagai pola atau alur untuk menempatkan bit-bit dalam sebuah blok

dengan yang dikombinasikan dengan operasi-operasi kriptografi.

Tujuan penelitian ini adalah merancang algoritma kriptografi simetris yang

berbasis pada Anyaman Dasar Tunggal. Kemudian algoritma tersebut digunakan

dalam rancangan kriptografi block cipher, dan ini selanjutnya akan dibandingkan

dengan kriptografi AES.

2. Tinjauan Pustaka

Bagian ini membahas tentang pustaka terkait dengan penelitian yang telah

dilakukan sebelumnya. Pustaka-pustaka tersebut akan digunakan sebagai

Page 11: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis

2

pembanding atau sebagai acuan. Adapun bagian kedua membahas teori dasar yang

digunakan dalam penelitian ini.

Kajian yang pertama membahas penelitian terdahulu dengan judul

“Perancangan Algoritma pada Kriptografi Block Cipher dengan Teknik Langkah

Kuda dalam Permainan Catur”. Penelitian ini membahas tentang bagaimana

merancang kriptografi simetris berbasis block cipher dengan menggunakan teknik

langkah kuda dalam permainan catur sebagai pola pengambilan bit di dalam kotak

8×8. Proses enkripsi dilakukan sebanyak empat putaran untuk menghasilkan

cipherteks [4]. Kesamaan penelitian di atas dengan penelitian ini adalah sama-

sama merupakan kriptografi simetris berbasis block cipher. Penelitian di atas

dijadikan dasar dan acuan untuk membuat kriptografi baru.

Penelitian yang kedua berjudul “Studi dan Analisis Algoritma Rivest Code 6

(RC6) dalam Enkripsi/Dekripsi Data”. Dalam penelitian ini dibahas proses

enkripsi dan dekripsi dengan algoritma RC6. RC6 memecah block 128 bit menjadi

4 buah block 32 bit, menjadi A, B, C, D. Byte yang pertama dari plainteks atau

cipherteks ditempatkan pada byte A, sedangkan byte yang terakhirnya

ditempatkan pada byte D. Dalam prosesnya akan didapatkan (A, B, C, D) = (B, C,

D, A) yang diartikan bahwa nilai yang terletak pada sisi kanan berasal dari

register disisi kiri. Algoritma RC6 menggunakan 44 buah sub kunci yang

dibangkitkan dari kunci dan dinamakan dengan S[0] hingga S[43]. Masing-

masing sub kunci panjangnya 32 bit [5]. Kesamaan penelitian kedua dengan

penelitian ini adalah sama-sama menggunakan kunci simetris dan berbasis block

cipher.

AES (Advanced Encryption Standard) adalah teknik enkripsi yang dijadikan

standard FIPS oleh NIST (Nasional Institute of Standards and Technology) tahun

2001. AES menjadi standard melalui proses seleksi. Dari beberapa teknik enkripsi

yang dicalonkan untuk menjadi AES, yang terpilih adalah enkripsi Rijndael.

Teknik enkripsi ini termasuk jenis block cipher [6]. Rijndael mendukung panjang

kunci 128 bit sampai 256 bit dengan step 32 bit. Panjang kunci dan ukuran blok

dapat dipilih secara independen. Karena AES menetapkan panjang kunci adalah

128, 192, dan 256, maka dikenal AES-128, AES-192, dan AES-256 [7]. AES

digunakan sebagai pembanding dalam penelitian ini, dan AES yang digunakan

adalah AES-128 karena merupakan standard pengamanan yang dipakai saat ini.

Yang akan dibandingkan adalah nilai keacakan dan juga diferensiasi data.

Selanjutnya, teori-teori dasar yang akan dibahas dalam penelitian ini

meliputi:

Kriptografi, secara umum adalah ilmu dan seni untuk menjaga kerahasiaan

berita. Selain pengertian tersebut terdapat pula pengertian ilmu yang mempelajari

teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi

seperti kerahasiaan data, keabsahan data, integritas data, serta autentikasi data [2].

ada berbagai macam teknik kriptografi, salah satu diantaranya adalah block

cipher.

Block cipher mengenkripsi pesan dengan cara merangkai bit-bit plainteks

yang kemudian dibagi menjadi blok dengan panjang yang sama [8][9]. Skema

enkripsi dan dekripsi dengan block cipher digambarkan pada Gambar 1.

Page 12: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis
Page 13: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis

4

dikeringkan dan lembut. Ada beberapa jenis anyaman salah satunya ada anyaman

tunggal. Agung [13], mengatakan anyaman tunggal adalah anyaman dengan

aturan satu lembar lusi (iratan bilah bambu arah melintang) ditimpa dengan satu

lembar pakan (iratan bilah bambu arah membujur). Contoh anyaman dapat

ditunjukkan pada Gambar 2.

Gambar 2 Contoh Anyaman

Gambar 2 merupakan hasil anyaman, dimana dalam proses menganyam tikar

2 bahan dari daun pandan saling ditimpa yaitu arah menyimpang (iratan) dan juga

arah membujur (pakan). Pada baris pertama (ganjil) bilah melintang masuk kesatu

bilah membujur sehingga menjadi pola tersembunyi (tidak tampak), sedangkan

pada baris kedua (genap) iratan bilah membujur masuk ke satu bilah melintang

sehingga menjadikan pola timbul (tampak), proses tersebut berulang sampai

anyaman selesai sehingga membuat pola timbul dan tersembunyi.

Untuk memenuhi ukuran blok 8×8 yang sebanding dengan 64 bit,

perancangan ini menggunakan padding. Proses padding adalah proses

penambahan byte-byte dummy berupa karakter NULL pada byte-byte sisa yang

masih kosong pada blok terakhir plainteks, sehingga ukurannya menjadi sama

dengan ukuran blok penyandian [14].

Perancangan ini juga menggunakan transposisi bit. Menurut Munir [2], pada

algoritma Columnar Transposition, huruf-huruf di dalam plaintext tetap sama

namun urutannya diubah. Algoritma ini melakukan transpose terhadap rangkaian

karakter di dalam teks. Nama lain untuk metode ini adalah permutasi atau

pengacakan (scrambling) karena transpose setiap karakter di dalam teks sama

dengan mempermutasikan karakter-karakter tersebut.

Pada penelitian ini, pengujian rancangan kritografi dilakukan dengan mencari

nilai keacakan dan diferensiasi data. Nilai keacakan digunakan untuk mengetahui

besarnya algoritma kriptografi yang dirancang mampu mengacak plainteks yang

dimasukkan. Cara mencari nilai keacakan dirumuskan [15].

)6(i

iii

p

cpY

Dimana Yi sebagai nilai keacakan ke-i, dan secara berturut-turut pi dan ci adalah

nilai plainteks dan cipherteks ke-i. Nilai keacakan dilihat pada bilangan cipherteks

yang dihasilkan oleh algoritma tertentu. Penelitian ini tidak membandingkan

ukuran blok dengan AES. Nilai acak dibangun dari selisih perbandingan plainteks

Page 14: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis

5

dengan cipherteks terhadap plainteks. Karena selisih pada pembilang pada

persamaan (6) berarti menunjukkan jarak dari plainteks, walaupun dirasiokan

terhadap plainteks kembali. Kemungkinan yang muncul pada nilai keacakan dapat

bertanda positif atau negatif. Negatif berarti selisih perbandingan nilai cipherteks

lebih besar dibandingankan dengan nilai plainteks, sedangkan positif berarti

selisih perbandingan nilai cipherteks lebih kecil dibandingkan dengan nilai

plainteks.

Penggunaan jarak dapat dipandang sebagai suatu keacakan apabila metode

Brute Force Attack (BFA) sebagai standar kriptanalis digunakan untuk membobol

algoritma yang ada. Teknik BFA dilakukan dengan mencoba semua kemungkinan

kunci atau angka untuk menemukan relasi yang berkorespondensi satu satu (one

to one) antara plainteks dan cipherteks. Setiap plainteks yang dimasukkan sudah

pasti diketahui desimalnya, kriptanalis akan mencoba setiap bilangan yang lebih

besar atau yang lebih kecil dari bilangan plainteks dan akan membesar atau

mengecil secara terus menerus. Contohnya plainteks dengan nilai desimal 72

(karakter H) kriptanalis akan mencoba bilangan di bawah dan di atas plainteks

misalnya 71, 73, 70, 74 secara terus menerus sampai menemukan kecocokan hasil

bilangan dengan plainteks tersebut, sehingga apabila semakin jauh nilai cipherteks

dari plainteks berarti akan memerlukan banyak waktu dan proses untuk

menemukan relasi dengan cipherteks atau bahkan menemukan plainteks.

Sedangkan diferensiasi data digunakan untuk mencari perbandingan selisih

anatar 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 tersebut dapat divisualisasikan ke

dalam koordinat Cartesius untuk setiap x sebagai variabel bebas, y atau ditulis

sebagai f(x) sebagai variabel tak bebas. Untuk menentukan diferensiasi data pada

dua titik maka persamaan yang dapat dibentuk sebagai berikut :

)7()(

)(

ba

ab

xx

yy

x

y

dengan (xa, ya) sebagai titik pertama, dan titik berikutnya adalah (xb, yb). Apabila

terdapat n data maka untuk menentukan rata-rata dari diferensiasi data dapat di

cari untuk melihat tren dari setiap data Rataan diferensiasi (Rd) untuk melihat

diberikan pada Persamaan (2).

(8)

Page 15: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis

6

3. Metode Penelitian

Dalam perancangan kriptografi block cipher berbasis pada ADT terdiri dari

beberapa tahapan dalam penyusunan penelitian. Tahapan tersebut ditunjukkan

pada Gambar 3.

Gambar 3 Tahapan Penelitian

Tahapan penelitian tersebut dapat dijelaskan sebagai berikut.

1. Identifikasi dan Perumusan Masalah; Mengidentifikasi masalah yang ada

tentang kelemahan kriptografi yang sudah dibuat sebelumnya, kemudian

merumuskannya dalam perancangan algoritma kriptografi block cipher

dengan teknik ADT dengan tujuan membuat kriptografi baru.

2. Analisis Kebutuhan; Menganalisis kebutuhan perancangan algoritma

kriptografi baru yang digunakan untuk mengamankan data.

3. Pengumpulan Bahan; Meliputi pengumpulan referensi yang berkaitan

dengan pembuatan algoritma kriptografi baru, seperti mencari alur untuk

teks dan kunci yang berhubungan dengan proses enkripsi dan dekripsi.

4. Perancangan Algoritma; Memilih alur anyaman yang digunakan dalam

perancangan algoritma.

5. Pembuatan Kriptografi; Menerapkan alur ADT ke dalam block cipher

dengan ukuran block 8×8.

6. Uji Kriptografi; Melakukan pengujian algoritma ADT dengan cara

penghitungan secara manual. Penghitungan dilakukan dengan

Page 16: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis

7

memasukkan plainteks dan kunci serta melakukan proses enkripsi dan

dekripsi. Jika teks tidak kembali saat proses dekripsi, maka dilakukan

pengecekan kembali algoritma yang dibuat (kembali ke Tahap 5).

7. Uji Kriptosistem; Melakukan pengujian algoritma yang dibuat dengan

metode 5-tuple Stinson, kemudian dilakukan analisa untuk melihat apakah

algoritma ADT sudah memenuhi metode Stinson.

8. Penulisan Laporan; Yaitu mendokumentasikan proses penelitian yang

sudah dilakukan dari tahap awal hingga akhir ke dalam tulisan, yang

menjadi laporan hasil penelitian.

Tahapan penelitian ini menjelaskan proses perancangan kriptografi block

cipher dengan teknik ADT. Hasil dari rancangan kriptografi ini akan diuji dengan

aturan Stinson. Batasan masalah dari penelitian ini adalah:

1. Penelitian ini hanya membahas teknik Anyaman Dasar Tunggal sebagai

algoritma.

2. Jumlah plainteks dan kunci sama hanya menampung 8 karakter.

3. Panjang bloknya adalah 64 bit.

4. Tidak membahas teknik transposisi secara mendalam.

5. Panjang kunci mempunyai panjang maksimal 8 karakter.

6. Penelitian ini tidak menguji kriptanalisis terhadap rancangan kriptografi.

Rancangan Umum perancangan kriptografi

Rancangan kriptografi block cipher dengan alur Anyaman Dasar Tunggal

(ADT), dibuat dengan 5 putaran. ADT sama seperti kriptografi lainnya yang

menerima inputan plainteks dan kunci. Dimisalkan plainteks adalah P dan kunci

adalah, K maka dapat dinyatakan K ={x1,x2,x3…..xn}, n|8, n ∈ Z+.

Kedua inputan tersebut akan diproses XOR dan geser mengikuti pola

anyaman. Setiap putaran terdapat proses untuk plainteks dan kunci, dimana Proses

i, 8,,2,1 i dan Proses Key i, 8,,2,1 i . Gambar rancangan umum

kriptografi dapat dilihat pada Gambar 4.

Page 17: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis

8

Gambar 4 Rancangan Umum Kriptografi Blok Cipher Berbasis

Anyaman Dasar Tunggal

Rancangan kriptografi ini dibuat dalam kotak ukuran 8×8. Dimana untuk satu

putarannya, tiap pemasukan plainteks dan kunci masing-masing berjumlah 8

karakter.

k1 k2 k3 k4 k5 k6 k7 k8

k9 k10 k11 k12 k13 k14 k15 k16

k17 k18 k19 k20 k21 k22 k23 k24

k25 k26 k27 k28 k29 k30 k31 k32

k33 k34 k35 k36 k37 k38 k39 k40

k41 k42 k43 k44 k45 k46 k47 k48

k49 k50 k51 k52 k53 k54 k55 k56

k57 k58 k59 k60 k61 k62 k63 k64

Gambar 5 Contoh Kotak 64-Bit

Kotak 64-bit dirancang untuk memasukan 64 bit data plainteks lalu

memprosesnya sampai menghasilkan Pn, dimana n = 1, 2, ..., 5. Pada kotak 64-bit

data plainteks di Gambar 5, kotak berwarna biru yang mengadaptasi dari pola

timbul pada anyaman mewakili proses XOR pada baris ganjil, sedangkan kotak

berwarna merah muda yang mengadaptasi dari pola timbul pada anyaman dan

Page 18: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis

9

mewakili proses XOR pada baris genap. Selain proses XOR, terdapat juga proses

geser bit yang diwakili oleh kotak berwarna putih yang mengadaptasi dari pola

tenggelam pada anyaman. Proses pada perancangan ini juga menggunakan teknik

transposisi bit seperti yang sudah dijelaskan didasar teori. Setelah masuk pada

proses transposisi, kemudian masuk ke proses anyaman.

Hasil dan Pembahasan

Pada bagian Hasil dan Pembahasan ini, akan dijelaskan proses perancangan

alur ADT menjadi sebuah algoritma yang akan digunakan dalam kriptografi block

cipher. Seperti yang telah dijelaskan pada bagian sebelumnya tentang cara

menganyam dimana bahan yang masuk secara melintang akan saling timpa

dengan bahan yang masuk secara membujur, cara tersebut diterapkan dalam

proses pengacakan bit dengan mengacu pola anyaman itu sendiri. Plainteks dan

kunci akan bertemu dan berproses XOR, dimana pada baris ganjil dan genap

pertemuan antara plainteks dan kunci berada di kotak yang berbeda, sehingga

dihasilkan pola anyaman yang timbul dan tenggelam. Proses anyaman pada baris

ganjil ditunjukkan pada Gambar 6 dan proses anyaman pada baris genap

ditunjukan Gambar 7.

k1 k2 k3 k4 k5 k6 k7 k8

Gambar 6 Pemasukan Bit Baris Ganjil

Gambar 6 menunjukkan 8 bit (satu karakter) yang berada dibaris ganjil,

dimana 8 bit yang masuk akan di-XOR dengan bit-bit karakter kunci yang berada

di kolom ganjil juga. Bit-bit karakter yang masuk akan terkena kunci di kotak

ganjil berwarna biru (k1, k3, k5, k7) yang menggambarkan pola timbul pada

anyaman, selanjutnya terjadi proses geser bit di kotak genap berwarna (k2, k4, k6,

k8) dimana kotak berwarna putih menggambarkan pola tenggelan pada anyaman.

.

k9 k10 k11 k12 k13 k14 k15 k16

Gambar 7 Pemasukan Bit Baris Genap

Hal yang sama juga berlaku pada baris genap, dimana karakter yang berada di

baris ini akan di-XOR dengan bit-bit karakter kunci yang berada di kotak genap

berwarna merah muda (k10, k12, k16, k18) yang menggambarkan pola timbul pada

anyaman, lalu dilakukan geser bit pada kotak ganjil berwana putih yang

menggambarkan pola tenggelam pada anyaman (k9, k11, k13, k15), seperti terlihat

pada Gambar 7 sehingga membentuk alur anyaman dasar tunggal.

Proses tersebut berlaku juga pada putaran selanjutnya dimana karakter pada

tiap baris akan dikenakan 4 kali XOR dengan kunci yang berada di setiap kotak

kunci dan 4 kali geser bit dengan aturan geser yang berbeda.

Page 19: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis
Page 20: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis

11

Sebagai contoh, terdapat 10 karakter plainteks, maka n = 10 dan 10 < 8m.

Sehingga kelipatan delapan terkecil yang lebih besar dari 10 adalah 16 (8m; m =

2), jadi jumlah karakter yang akan di padding adalah (16 – 10) = 6 karakter. Hal

yang sama juga pada kunci, misalkan diinputkan hanya 5 karakter sehingga perlu

di padding sebanyak (8 – 5) = 3 karakter untuk memenuhi panjang ukuran blok

cipher.

Hasil dari proses transposisi dimasukkan ke dalam proses anyaman, dimana

dalam proses anyaman terdapat perlakuan XOR dan geser bit. Dalam satu proses

putaran, terdapat 2 perlakuan yang berbeda. Untuk baris ganjil atau karakter yang

berada di urutan ganjil proses dilakukan seperti pada Gambar 6, sedangkan untuk

baris genap atau karakter yang berada di urutan genap proses dilakukan seperti

pada Gambar 7.

Proses generate kunci pada proses 2, 3, 4, dan 5 dilakukan dengan cara

menggeser bit dari putaran sebelumnya kearah kanan, dimana pergeseran bit

dilakukan sesuai dengan aturan yang tetap.

Contoh perhitungan manual

Untuk membuktikan proses enkripsi alur ADT dilakukan dengan dua

pengujian penghitungan secara manual, menggunakan plainteks yang berbeda.

Pengujian pertama proses enkripsi-dekripsi dilakukan dengan menggunakan

contoh plainteks “Dr3@mBoy” dengan kunci “f4cEBo0k”. Penggunaan plainteks

tersebut karena sudah terdapat huruf kapital, huruf kecil, dan simbol di dalamnya.

Yang akan ditunjukkan pada penelitian ini adalah proses ke 1. Proses pada putaran

2, 3, 4, dan 5 sama, hanya berbeda perubahan kunci karena proses generate kunci

dari putaran sebelumnya, serta perbedaan pergeseran pada setiap putarannya.

Plainteks “Dr3@mBoy” terdiri dari 8 karakter. Setelah memenuhi syarat

kelipatan 8, maka langkah selanjutnya karakter diubah ke dalam biner dan

dilakukan proses transposisi. Biner dari hasil proses transposisi dapat dilihat pada

Tabel 1.

Tabel 1 Tabel Hasil Transposisi

No Desimal Hexa Biner Karakter

1 105 69 01101001 i

2 6 06 00000110 ACK

3 101 65 01100101 e

4 114 72 01110010 r

5 36 24 00100100 $

6 119 77 01110111 w

7 64 40 01000000 @

8 66 42 01000010 B

Page 21: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis

12

Dari Tabel 1, selanjutnya masuk ke proses anyaman. Terdapat lima proses

dalam proses anyaman. Alur anyaman pada proses 1, ditunjukkan pada Gambar 9.

Gambar 9 Alur Anyaman Proses 1

Proses pada putaran 1 mempunyai dua perlakuan yang berbeda, yaitu

perlakuan untuk baris ganjil dan baris genap. Pada baris ganjil (contohnya pada

karakter “i” dengan nilai desimal 105 dan nilai biner 01101001) dikenakan kunci

“fcB0” dengan nilai biner 01100110 01100011 01000010 00110000 . Karakter “i”

di-XOR dengan kunci “f”, kemudian 2 bit akhir hasil dari XOR tersebut digeser 2

kearah kiri. Hasil geser pertama di-XOR lagi dengan kunci “c ”, 2 bit akhir hasil

dari XOR tersebut digeser lagi kearah kiri. Proses ini berulang sampai 2 bit hasil

dari XOR kunci “0” digeser kearah kiri sehingga menghasilkan karakter “ ª ”

dengan nilai biner 10101010 dan nilai hexa AA.

Proses pada baris genap (contohnya pada karakter “ACK” dengan nilai

desimal 6 dan nilai biner 00000110) dikenakan kunci “4eok”. 1 bit akhir karakter

“ACK” digeser kearah kiri, hasil geser tersebut kemudian di-XOR dengan kunci

“4”. 1 bit akhir dari hasil XOR tersebut digeser lagi kearah kiri, kemudian di-XOR

lagi dengan kunci ”e”. Proses tersebut berulang sampai hasil geser 1 bit akhir

kearah kiri di-XOR dengan kunci “k” sehingga menghasilkan karakter “k” dengan

nilai biner 01101011 dan nilai hexa 6B. Untuk karakter selanjutnya (pada baris

ganjil dan genap) mendapatkan perlakuan yang sama sehingga pada proses 1

mendapatkan hasil akhir 10101010 01101011 10100110 00101100 11100111

01111100 10000011 00101111.

Adapun proses pada putaran 2, 3, 4, dan 5 hampir sama seperti pada proses

putaran 1, yang membedakan tiap putaran adalah kunci yang di-generate dengan

cara menggeser bit setiap karakter dari proses sebelumnya dan pergeseran bit yang

berbeda pada tiap putarannya. Setelah dilakukan proses putaran sebanyak lima

kali, maka dihasilkan cipherteks dengan nilai desimal dari cipherteks 147, 48, 183,

106, 9, 43, 254, 20, dan nilai hexa 93, 30, B7, 6A, 09, 2B, FD, 14.

Page 22: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis

13

Pengujian kedua dilakukan dengan menggunakan bit simetris, dengan

contoh karakter “ZZZZZZZZZZZZZZZZ” dengan menggunakan kunci yang

sama dengan pengujian pertama. Berdasarkan proses pengujian yang ditunjukkan

pada Gambar 8, diperoleh cipherteks “ßgÃyé ÇœßgÃyé Çœ” dengan nilai desimal

dari cipherteks 223, 103, 195, 121, 233, 24, 199, 156, 223, 103, 195, 121, 233, 24,

199, 156 dan nilai hexa DF, 67, C3, 79, E9, 18, C7, 9C, DF, 67, C3, 79, E9, 18,

C7, 9C. Hasil dari pengujian kedua tereksplisitkan pada grafik Gambar 10.

Gambar 10 Grafik Cipherteks pengujian kedua

Sedangkan pada proses dekripsi, berlaku kebalikan dari proses enkripsi yang

ditunjukkan pada Gambar 8. Proses dekripsi dilakukan dengan membalik alur

antara baris ganjil dan baris genap, dimana pada baris ganjil dikenakan proses

seperti yang sudah dijelaskan pada Gambar 6, dengan membalik alur dari kanan

ke kiri. Hal yang sama berlaku juga pada baris genap seperti yang ditunjukkan

pada Gambar 7. Setelah itu dilanjutkan dengan mengembalikan bit pada hasil

transposisi ke urutan bit-bit semula yang menghasilkan plainteks awal.

Setelah dilakukan pengujian secara manual, langkah selanjutnya adalah

menguji algoritma kriptografi ADT sebagai kriptosistem. Untuk menguji

kriptografi sebagai sebuah kriptosistem, dilakukan pengujian dengan

menggunakan teknik five tuple yaitu P,C,K,E,D. Sebuah kriptografi dapat

dikatakan sebagai kriptosistem jika memenuhi :

- P adalah himpunan berhingga dari plainteks. Dalam perancangan ini

menggunakan 256 karakter ASCII Maka himpunan plainteks pada

perancangan kriptografi Anyaman Dasar Tunggal adalah himpunan

berhingga.

- C adalah himpunan berhingga dari cipherteks. Cipherteks yang dihasilkan

pada perancangan kriptografi Anyaman Dasar Tunggal merupakan elemen

0

50

100

150

200

250

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Plainteks ADT AES-128

Page 23: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis

14

bit (bilangan 0 dan 1). Karena himpunan cipherteks hanya * +, maka

cipherteks pada kriptografi yang dirancang adalah himpunan berhingga.

- K merupakan ruang kunci (keyspace), adalah himpunan berhingga dari

kunci karena jumlah kunci dibatasi sebanyak 8 karakter dalam 256

karakter ASCII. Maka dari itu kunci yang digunakan juga himpunan

berhingga.

- Untuk setiap k K, terdapat aturan enkripsi E dan berkorespodensi

dengan aturan dekripsi . Setiap dan

adalah fungsi sedemikian hingga ( ( )) untuk setiap plainteks

. Dari kondisi ke-4 ini secara menyeluruh terdapat kunci yang dapat

melakukan proses enkripsi sehingga merubah plainteks menjadi cipherteks

dan begitupun sebaliknya, dapat melakukan proses dekripsi sehingga bisa

merubah cipherteks menjadi plainteks kembali. Pengujian ini

menunjukkan bahwa jika rancangan kriptografi dapat melakukan proses

enkripsi dan dekripsi, maka telah memenuhi dua dari 5-tuple Stinson

untuk sebuah kriptosistem.

Selanjutnya, dilakukan pengujian dengan plainteks “AXA Tower, 28th”

dengan kunci yang sama untuk membandingkan keacakan antara algoritma ADT

dengan AES-128 yang merupakan acuan standar keamanan data, dan juga

dilakukan pengujian untuk membandingkan keacakan antara algoritma ADT,

AES-128, dan Langkah Kuda Catur (LKC). Perbandingan antara ADT dengan

AES ditunjukkan pada Gambar 11.

Gambar 11 Perbandingan Keacakan Algoritma ADT dengan AES-128

Pada Gambar 11 dapat dilihat bahwa algoritma ADT menghasilkan grafik

cipherteks yang fluktuatif, begitu juga dengan AES-128. Tetapi bentuk fluktiatif

dari kedua algoritma tersebut berbeda, seperti yang dijelaskan pada dasar teori

bahwa dengan nilai cipherteks berada di atas plainteks mempersulit serangan

Brute For Attack (BFA). Hasil nilai cipherteks tersebut kemudian dibandingan

dengan nilai keacakan AES-128 yang cenderung mematahkan diantara plainteks.

0

50

100

150

200

250

300

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Plainteks ADT AES-128

Page 24: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis

15

Dari persamaan (6) diperoleh nilai keacakan ADT terhadap sumbu y sebesar -

0,831397248, sedangkan nilai keacakan AES terhadap sumbu y adalah sebesar -

0,475877108. Perbandingan nilai keacakan antara ADT terhadap AES adalah

sebesar -0,654054133. Dari segi nilai keacakan algoritma yang dirancang lebih

baik daripada AES-128.

Pengujian selanjutnya adalah melihat nilai diferensiasi dari algoritma yang

dibuat. Nilai diferensiasi dapat diperoleh dengan menggunakan persamaan (8).

Algoritma ADT memiliki nilai diferensiasi sebesar -8,5, sedangkan untuk nilai

diferensiasi AES adalah sebesar -7,595833333. Dari Gambar 11 dapat dilihat

bahwa kedua algoritma cenderung fluktuatif dengan berada di atas dan di bawah

plainteks. Hal tersebut menunjukkan bahwa nilai plainteks lebih kecil daripada

nilai cipherteks.

Pengujian selanjutnya adalah menguji keacakan antara algoritma ADT, AES-

128, dan LKC. Hasil perbandingan antara ketiga algoritma tersebut ditunjukkan

pada Gambar 12.

Gambar 12 Perbandingan Keacakan Algoritma ADT, AES-128, dan LKC

Pengujian algoritma yang ketiga seperti pengujian pada Gambar 11, namun

yang membedakan adalah penambahan algoritma LKC untuk membandingkan

keacakannya. Pada Gambar 12 dapat dilihat bahwa algoritma LKC cenderung

berada di atas plainteks dibandingkan dengan algoritma ADT dan AES-128.

4. Simpulan

Kesimpulan yang diperoleh dari penelitian ini, bahwa Perancangan

Kriptografi Block Cipher Berbasis Pada Teknik Anyaman Dasar Tunggal dapat

melakukan proses enkripsi dan dekripsi sehingga bisa dikatakan sebagai sebuah

teknik kriptografi. Selain itu perancangan ini juga sudah memenuhi 5-tuple

sehingga dapat dikatakan sebagai sistem kriptografi. Hasil keacakan ADT

terhadap AES-128 adalah sebesar 38%.

0

50

100

150

200

250

300

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Plainteks ADT AES-128 LKC

Page 25: Perancangan Kriptografi Block Cipher Berbasis pada Teknik ...repository.uksw.edu/bitstream/123456789/15004/2/T1_672008293_Full... · Perancangan Kriptografi Block Cipher Berbasis

16

5. Daftar Pustaka

[1] Ariyus, Dony, 2006, Kriptografi Keamanan Data Dan Komunikasi.

Yogyakarta. Graha Ilmu.

[2] Munir, Renaldi, 2006, Kriptografi. Bandung. Informatika.

[3] Biham, E., & Shamir, A., 1990, Differential Cryptanalysis of DES like

Cryptosystem, Rehovod: Department of Apllied Mathematics, The

Weizmann Institude of Science.

[4] Setiawan, Adi, N., dkk, 2015, Perancangan Algoritma pada Kriptografi

Block Cipher dengan Teknik Langkah Kuda dalam Permainan Catur.

Prosiding Seminar Teknik Informatika & Sistem Informasi. Bandung.

[5] Prayudi, Yudi., Halik, Idham. 2005. Studi dan Analisis Algoritma Rivest

Code 6 (RC6) dalam Enkripsi/Dekripsi Data. Seminar Nasional Aplikasi

Teknologi Informasi 2005 (SNATI 2005). Yogyakarta.

[6] Kromodimoeljo, Sentot., 2010. Teori dan Aplikasi Kriptografi. Jakarta:

SPK IT Consulting.

[7] Daemen Joan-Vincent Rijmen., 2001. The Design of Rijndael AES-The

Advanced Encryption Standard. New York : Springer

[8] Buchmann, Johannes, A., 2000. Introduction to Cryptography, Springer-

Verlag, Inc : New York

[9] Forouzan, Behrouz, A., 2008, Cryptography and Network Security, New

York: McGraw-Hill.

[10] Stinson, D.R. 1995. Cryptography Theory and Practice. Florida: CRC

Press, Inc.

[11] Arief, F.,2012. Pengertian Anyaman- Seni Menganyam, Yogyakarta :Balai

Pustaka

[12] Kamus Besar Bahasa Indonesia. http://kbbi.web.id/anyam (diakses, 12

Maret 2015).

[13] Agung. 2012. Jurnal Penelitian PendidikanVol. 13 No. 1, April 2012.

[14] Dafid., 2006. Kriptografi Kunci Simetris Dengan Menggunakan Algoritma

Crypton. @lgoritma Jurnal Ilmiah STMIK GI MDP. Palembang. Volume

2 nomor 3 Oktober.

[15] Lewandouw, V.B,. Wowor A.D,. 2015. Desain Algoritma Kubus Rubik

dalam Perancangan Kriptografi Simetris. Prosiding Seminar Teknik

Informatika & Sistem Informasi. Bandung.

[16] Nayuki, 2014, AES Cipher Internal in Excel,

(http://nayuki.eigenstate.org/page/aes-cipher-internals-in-excel), (diakses 2

Februari 2015).