Institutional Repository | Satya Wacana Christian University: Perancangan Kriptografi Block Cipher Berbasis Pada Teknik Anyaman Dasar Tunggal

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

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

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: 1672008293@student.uksw.edu, 2Ineke.pakereng@staff.uksw.edu,
3

alzdanny.wowor@staff.uksw.edu

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.

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

1

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 samasama 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]. Masingmasing 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.

2

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].
p c
(6)
Yi  i i
pi
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

4

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 :
y ( yb  y a )
(7 )

x ( xa  xb )
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)

5

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

6

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, i 1, 2, , 8 dan Proses Key i, i 1, 2, , 8 . Gambar rancangan umum
kriptografi dapat dilihat pada Gambar 4.

7

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

8

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.

9

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
1
2
3
4
5
6
7
8

Desimal
105
6
101
114
36
119
64
66

Hexa
69
06
65
72
24
77
40
42

11

Biner
01101001
00000110
01100101
01110010
00100100
01110111
01000000
01000010

Karakter
i
ACK
e
r
$
w
@
B

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.

12

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.
250
200
150
100
50
0
1

2

3

4

5

6

7

Plainteks

8

9
ADT

10 11 12 13 14 15 16
AES-128

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

13

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
untuk setiap plainteks
adalah fungsi sedemikian hingga
( ( ))
. 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.
300
250
200
150
100
50
0
1

2

3

4

5

6

Plainteks

7

8

9
ADT

10 11 12 13 14 15 16
AES-128

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.

14

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, AES128, dan LKC. Hasil perbandingan antara ketiga algoritma tersebut ditunjukkan
pada Gambar 12.
300
250
200
150
100
50
0
1

2

3

4

5

Plainteks

6

7

8
ADT

9

10 11 12 13 14 15 16
AES-128

LKC

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%.

15

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, SpringerVerlag, 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).

16

Dokumen yang terkait

Institutional Repository | Satya Wacana Christian University: Perancangan Sistem Informasi Pemetaan Lokasi SPBU di Kota Semarang Berbasis Web Menggunakan Google Maps API

0 0 19

Institutional Repository | Satya Wacana Christian University: Perancangan dan Implementasi Translucent Database Menggunakan Kombinasi Algoritma Vernam Cipher dan Pseudorandom Number Generator pada Data Transaksi Barang

0 0 22

Institutional Repository | Satya Wacana Christian University: Sistem Keamanan Dokumen Perusahaan Menggunakan Advanced Encryption Standard (AES) Algorithm: studi kasus: PT. Adika Dwikarya Utama

0 1 29

Institutional Repository | Satya Wacana Christian University: Perancangan dan Implementasi Sistem Penilaian Kinerja Keuangan Perusahaan Manufaktur Menggunakan Metode Rasio Keuangan dengan Google Chart Berbasis Framework CodeIgniter

0 0 26

Institutional Repository | Satya Wacana Christian University: Perancangan dan Implementasi Translucent Database Menggunakan Algoritma Kriptografi Rivest Code 6 (RC6) pada Data Personal Pegawai Sekolah: studi kasus SMA Kristen Payeti Waingapu

0 0 23

Institutional Repository | Satya Wacana Christian University: Perancangan Animasi Interaktif Pembelajaran Web Security XSS dan SQL Injection Berbasis Web

0 0 26

Institutional Repository | Satya Wacana Christian University: Pemetaan Lokasi Kemacetan Lalu Lintas Kota Salatiga Berdasarkan Tingkat Pelayanan Jalan Menggunakan Teknologi GoogleMaps

0 0 28

Institutional Repository | Satya Wacana Christian University: Profil Literasi Sains Siswa Kelas X MIPA 2 SMA Kristen 1 Salatiga pada Materi Virus

1 1 10

Institutional Repository | Satya Wacana Christian University: Profil Literasi Sains Siswa Kelas X MIPA 2 SMA Kristen 1 Salatiga pada Materi Virus

0 0 22

Institutional Repository | Satya Wacana Christian University: Pengembangan Game HTML5 Menggunakan Framework Phaser

0 0 29