Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma...

26
1 Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada Pola Terasering Artikel Ilmiah Peneliti : Onie Dhestya Nanda Hartien (672012058) Prof. Ir. Danny Manongga, M.Sc., Ph.D. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga November 2016

Transcript of Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma...

Page 1: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

1

Perancangan Kriptografi Block Cipher 64 Bit

Berbasis pada Pola Terasering

Artikel Ilmiah

Peneliti :

Onie Dhestya Nanda Hartien (672012058)

Prof. Ir. Danny Manongga, M.Sc., Ph.D.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

November 2016

Page 2: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma
Page 3: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

1

Perancangan Kriptografi Block Cipher 64 Bit

Berbasis pada Pola Terasering

Diajukan kepada

Fakultas Teknologi Informasi

Untuk memperoleh Gelar Sarjana Komputer

Peneliti :

Onie Dhestya Nanda Hartien (672012058)

Prof. Ir. Danny Manongga, M.Sc., Ph.D.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

November 2016

Page 4: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

2

Page 5: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

3

Page 6: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

4

Page 7: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

5

Page 8: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

6

Page 9: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

7

Page 10: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

8

1. Pendahuluan

Keamanan menjadi hal yang penting di dalam dunia internet terkhusus

dalam berbagi atau mentransfer data. Pengamanan data menjadi hal sangat

penting karena data merupakan sesuatu yang bersifat rahasia. Banyak teknik

pengamanan data yang sedang dikembangkan, salah satunya adalah

kriptografi. Kriptografi merupakan ilmu dan seni untuk menjaga kerahasiaan

pesan dengan menyandikannya ke dalam bentuk yang tidak dapat dimengerti

lagi maknanya. Melalui proses enkripsi dan dekripsi data atau pesan dapat

diubah ke bentuk sandi dan memerlukan kunci untuk mengerti makna

berdasarkan sandi tersebut. Namun bukan jaminan data atau pesan menjadi

aman ketika sudah diterapkan algoritma kriptografi di dalamnya karena seiring

keamajuan kriptografi semakin banyak pula untuk memecahkan algoritma

tersebut. Berdasarkan hal tersebut diperlukan algoritma pengembangan baru

agar kriptografi tidak mudah untuk dipecahkan. Menurut Kromodimoeljo

(2010) Kriptografi merupakan ilmu mengenai teknik enkripsi dimana data

diacak menggunakan suatu kunci enkripsi menjadi sesuatu yang tidak mudah

untuk dibaca seseorang yang tidak memiliki kunci dekripsi [1]. Munir (2006)

mengemukakan bagian Kriptografi terdiri dari pesan, plaintext dan ciphertext.

Plaintext adalah pesan yang dapat dimengerti maknanya sedangkan ciphertext

merupakan pesan yang sudah disandikan ke bentuk yang tidak dapat

dimengerti maknanya [2].

Algoritma yang digunakan dalam perancangan kriptografi pada penelitian

ini adalah algoritma berbasis block cipher 64 bit dengan menggunakan pola

terasering. Pola terasering digunakan sebagai proses masuknya bit pada

plaintext di-block matriks dimana pola terasering diambil sebagai acuan

karena memiliki pola yang cukup sederhana tetapi dapat menghasilkan bit

yang acak pada matriks. Serta pola terasering sudah dari dahulu digunakan

untuk tanah lereng gunung yang curam dengan fungsi menjaga dan

meningkatkan kestabilan lereng begitu juga pada block cipher agar mengacak

bit dengan keacakan yang terstruktur dan memudahkan dalam mengacak bit

dalam matriks. Pola terasering yang gunakan adalah pola teras bangku miring

untuk plaintext dan teras bangku datar untuk kunci. Plaintext dibagi dalam

block, dimana setiap block berjumlah 64 bit atau 8 byte, dan memiliki 5

putaran dimana setiap putaran terdapat empat proses untuk plaintext dan juga

kunci. Proses plaintext diambil di-XOR yang sudah ditransformasikan ke S-

box menghasilkan ciphertext yang digunakan untuk proses berikutnya.

2. Tinjauan Pustaka

Penelitian sebelumnya yang menjadi acuan dalam penelitian yang

dilakukan, yang pertama adalah “Perancangan Kriptografi Block cipher

Berbasis pada Teknik Tanam Padi dan Bajak Sawah”. Penelitian ini

membahas tentang perancangan kriptografi block cipher berbasis 64bit

menggunakan pendekatan tanam padi dan bajak sawah sebagai metode

pemasukan bit pada block matriks [3].

Page 11: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

9

Pada penelitian yang berjudul Desain Algoritma Berbasis Kubus Rubik

dalam Perancangan Kriptografi Simetris. Penelitian ini membahas mengenai

perencanaan algoritma block cipher dengan transposisi kubus rubik untuk

menghasilkan sebuah kriptografi simetris yang dapat digunakan sebagai

alternatif penggunaan pengamanan data [4].

Berdasarkan penelitian-penelitian yang pernah dilakukan terkait

perancangan Kriptografi block cipher, maka dirancang sebuah kriptografi

block cipher 64 bit dengan pola terasering. Perbedaan penelitian ini dengan

yang sebelumnya dimana jumlah data yang diproses sebanyak 64 bit dengan

jumlah putaran sebanyak 20 kali. Jumlah data yang diacak sebanyak 64 bit dan

dikombinasikan dengan tabel substitusi S-Box maka kriptografi yang

dirancang dapat lebih menyamarkan hasil enkripsi (ciphertext) dibandingkan

dengan penelitian sebelumnya. Pada penelitian ini proses enkripsi dilakukan

sebanyak 5 putaran berbeda dengan penelitian sebelumnya yang proses

enkripsi dilakukan sebanyak 8 putaran, banyak putaran pada proses enkripsi

pada perancangan kriptografi dalam penelitian ini membuat waktu yang

dibutuhkan untuk mengenkripsi data lebih lama dibandingkan dengan

penelitian-penelitian sebelumnya.

Kriptografi merupakan ilmu mengenai teknik enkripsi dimana data diacak

menggunakan suatu kunci enkripsi menjadi sesuatu yang tidak mudah untuk

dibaca seseorang yang tidak memiliki kunci dekripsi [1].

Bagian kriptografi terdiri dari pesan, plaintext, ciphertext. Pesan merupakan

data atau juga informasi yang dapat dibaca dan dimengerti maknanya.

Plaintext adalah pesan yang dapat dimengerti maknanya, ciphertext

merupakan pesan yang sudah disandikan ke bentuk yang tidak dapat

dimengerti maknanya.

Sebuah kriptografi harus melalui uji kriptosistem terlebih dahulu dengan

metode Stinson. Sebuah sistem harus memenuhi lima– tuple (Five tuple) [5]

yaitu sebagai berikut:

P adalah himpunan berhingga berdasarkan plaintext,

C adalah himpunan berhingga berdasarkan ciphertext,

K merupakan ruang kunci (keyspace), adalah himpunan berhingga

berdasarkan kunci,

Untuk setiap 𝑘 𝜖 𝑲, terdapat aturan enkripsi 𝑒𝑘 𝜖 𝑬 dan

berkorespodensi dengan aturan dekripsi 𝑑𝑘 𝜖 𝑫. Setiap 𝑒𝑘 ∶ 𝑷 ⟶ 𝑪

dan 𝑑𝑘 ∶ 𝑪 ⟶ 𝑷 adalah fungsi sedemikian hingga 𝑑𝑘(𝑒𝑘(𝑥)) = 𝑥

untuk setiap plaintext 𝑥 𝜖 𝑷. Untuk menguji nilai algoritma yang dirancang memiliki hasil

ciphertext yang acak berdasarkan plaintext maka digunakan Persamaan

1, dimana variable X merupakan plaintext dan Y merupakan ciphertext

[6].

𝑟 =nΣxy – (Σx) (Σy)

√{nΣx² – (Σx)²} {nΣy² – (Σy)²}

(1)

Dimana:

n = Banyaknya pasangan data X dan Y

Page 12: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

10

Σx = Total jumlah berdasarkan variabel X

Σy = Total jumlah berdasarkan variabel Y

Σx2 = Kuadrat berdasarkan total jumlah variabel X

Σy2 = Kuadrat berdasarkan total jumlah variabel Y

Σxy = Hasil perkalian berdasarkan total jumlah variabel X dan variabel

Y

Panduan umum dalam menentukan kriteria kolerasi ditunjukkan pada Tabel 1

Tabel 1 Kriteria Korelasi [7]

R (-/+) Kriteria Korelasi

0 Tidak ada korelasi

0 – 0,5 Korelasi lemah

0,5 – 0,8 Korelasi sedang

0,8 – 1 Korelasi kuat/erat

1 Korelasi sempurna

Pada block cipher, rangkaian bit plaintext dibagi menjadi block-block bit

dengan panjang yang serupa, biasanya 64 bit (tapi adakalanya lebih). Enkripsi

dilakukan terhadap block bit plaintext menggunakan bit kunci (yang

ukurannya sesuai dengan ukuran block plaintext). Algoritma enkripsi

menghasilkan block ciphertext yang berukuran sesuai dengan block plaintext.

Dekripsi dilakukan dengan aturan yang serupa seperti enkripsi. Algoritma

block cipher menggabungkan beberapa teknik kriptografi klasik dalam proses

enkripsi, dengan kata lain, block cipher dapat diacu sebagai super-enkripsi.

Terasiring atau Sengkedan merupakan metode konservasi dengan

membuat teras-teras yang dilakukan untuk mengurangi panjang lereng,

menahan air sehingga mengurangi kecepatan dan jumlah aliran permukaan,

serta memperbesar peluang penyerapan air oleh tanah [8].

Gambar 1 Pola Teras Bangku Datar dan Miring Pada Terasering [8]

Gambar 1 adalah pola teras bangku datar terasering yang digunakan

sebagai acuan untuk pola plaintext dan pola teras bangku miring terasering

Page 13: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

11

yang menjadi acuan pada pola kunci yang nantinya disusun dengan bentuk dan

pemasukan yang berbeda-beda dalam pola kriptografi pada block cipher yang

telah dibuat. Pola Terasering diambil sebagai acuan karena memiliki pola yang

cukup sederhana tetapi dapat menghasilkan bit yang acak pada matriks.

3. Metode Dan Perancangan Sistem

Secara umum penelitian terbagi ke dalam 5 (lima) tahapan, yaitu: (1) tahap

identifikasi masalah, (2) tahap perancangan, (3) tahap implementasi, (4)

pengujian dan analisis (5) tahap pelaporan berdasarkan hasil penelitian.

Gambar 2 Tahapan Penelitian

Tahap 1: Tahap pertama identifikasi masalah yaitu mengidentifikasi

masalah yang akan dibahas dan pengumpulan data yang dibutuhkan

berdasarkan Perancangan Kriptografi block cipher dengan pola terasering

tersebut.

Tahap 2: Perancangan block cipher meliputi pembuatan bagan enkripsi

dan dekripsi diterapkan dalam block cipher dengan ukuran block 8 x 8 (64-

bit). Membuat gambaran secara umum mengenai perancangan teknik

kriptografi.

Tahap 3: Implementasi block cipher menggunakan pola terasering

mencakup pola kriptografi dirancang akan diimplementasikan ke dalam

simulasi pada Ms. Excel dengan memasukkan plaintext dan kunci yang

berbeda.

Tahap 4: Pengujian block cipher menggunakan pola terasering dan

menganalisis hasil berdasarkan perancangan kriptografi tersebut dengan

analisis statistik nilai korelasi dan avalanche effect berdasarkan setiap

plaintext awal dan ciphertext berdasarkan semua hasil enkripsi pada setiap

proses putaran.

Identifikasi masalahi

Perancangan block cipher menggunakan pola terasering

Implementasi block cipher menggunakan pola terasering

Pengujian dan analisis hasil pengujian

Penulisan laporan

Page 14: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

12

Tahap 5: Adalah penulisan Laporan Hasil Penelitian yang sudah

dilakukan berdasarkan tahap awal hingga tahap akhir dengan

mendokumentasikannya.

.

Gambar 3 Rancangan Alur Proses Enkripsi

Gambar 3 menunjukkan rancangan alur proses enkripsi pada perancangan

kriptogradi-bock cipher berbasis 64 bit pada pola terasering, tahap persiapan

dan langkah langkah proses enkripsi dijelaskan sebagai berikut:

Page 15: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

13

a. Menyiapakn Plaintext dan kunci.

b. Mengubah Plaintext dan kunci menjadi biner sesuai tabel ASCII.

c. Dalam rancangan alur proses enkripsi mempunyai rumus untuk

menghasilkan plaintext dan kunci:

Plaintext 1 (P1) melakukan pengaturan dengan melakukan pola

terasering kemudian di-XOR dengan Kunci 1 (K1) lalu

ditransformasikan ke tabel S-box menghasilkan Plaintext 2 (P2);

Plaintext 2 (P2) melakukan pengaturan dengan melakukan pola

terasering kemudian di-XOR dengan Kunci 2 (K2) lalu

ditransformasikan ke tabel S-box menghasilkan Plaintext 3 (P3); dan

tahapan tersebut berlanjut terus secara berurut sampai menghasilkan

Plaintext 20 (P20);

Plaintext 20 (P20) melakukan pengaturan dengan melakukan pola

terasering kemudian di-XOR dengan Kunci 20 (K20) lalu

ditransformasikan ke tabel S-box menghasilkan Ciphertext (C).

Gambar 4 Rancangan Alur Proses Dekripsi

Page 16: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

14

Gambar 4 adalah rancangan alur proses dekripsi berdasarkan ciphertext 20

disubsitusikan ke tabel S-box lalu di-XOR dengan kunci 20 lalu di masukkan ke

proses pengambilan dan pemasukan bit sehingga menghasilkan plaintext 20. Cara

tersebut dilakukan 20 kali untuk menghasilkan plaintext 1.

4. Hasil dan Pembahasan

Algoritma perancangan kriptografi block cipher 64 bit berbasis pola

terasering berdasarkan awal hingga akhir. Dalam algoritma ini digunakan

untuk proses pengambilan bit matriks plaintext. Pada perancangan ini pola

yang digunakan adalah pola teras bangku miring untuk plaintext dan pola teras

bangku datar untuk kunci.

Gambar 5 Pola Plaintext dan Kunci Dengan Pola Terasering

Gambar 5 adalah contoh pola pengambilan dan pemasukan biner dengan

acuan pola teras bangku miring pada plaintext dan pola teras bangku datar pada

kunci. Untuk mempermudah pengambilan dan pemasukannya setiap kotak bit

sudah terisi nomor urutannya. Pola satu diartikan sebagai pola a begitu juga pola

dua diartikan sebagai pola b dan demikian selanjutnya. Berdasarkan biner awal

dan pemasukan biner sesuai dengan pola pada plaintext dan kunci. Ada perbedaan

pengambilan bit serta pemasukan bit berdasarkan kiri ke kanan. Berdasarkan pola-

pola yang sudah dirancang, dilakukan pengujian korelasi atau nilai keterikatan

antara plaintext dan kunci dengan kombinasi urutan pola bertujuan mendapat rata-

rata korelasi terbaik. Pengujian dilakukan dengan menggunakan tiga contoh

plaintext dan kunci yang berbeda.

Plaintext: salatiga, kunci: semarang

Page 17: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

15

Plaintext: sala3, kunci: ftiuksw

Plaintext: #sekrips, kunci: #wisuda

Berdasarkan hasil pengujian korelasi menggunakan contoh plaintext dan kunci

maka hasil rata-rata terbaik yang digunakan sebagai acuan perancangan dalam

proses enkripsi. Tabel 2 Rata-Rata Korelasi

A Nilai

korelasi

ABCD 0.252469 ABDC 0.249454 ACBD 0.275297 ACDB 0.264551 ADBC 0.411261 ADCB 0.204475

B BACD 0.4878

BADC 0.177981 BCAD 0.380483 BCDA 0.241733 BDAC 0.262056 BDCA 0.446166

C CABD 0.497994

CADB 0.17263 CBAD 0.311999 CBDA 0.250012 CDAB 0.411893 CDBA 0.246986

D DABC 0.380744

DACB 0.369086 CADB 0.234289 DBCA 0.358956 DCAB 0.257301 DCBA 0.18189

Tabel 2 kombinasi pola dengan rata-rata korelasi terbaik terdapat pada urutan

“CADB”. Kombinasi ini yang nantinya menjadi pola proses enkripsi sampai

putaran ke 5 untuk menghasilkan ciphertext.

Perancangan algoritma kriptografi Block cipher 64 bit berbasis pola terasering

hanya dilakukan dalam 5 putaran untuk mendapat ciphertext dan dalam tiap

putaran terdapat proses. Proses pertama plaintext dan kunci dikonversi menjadi

ASCII kemudian diubah ke bilangan biner, kemudian plaintext dimasukkan ke

dalam kolom 8x8 menggunakan pola pengambilan bit dan dilakukan pengambilan

dengan pola terasering yang berbeda-beda di tiap proses. Hasil proses XOR

Page 18: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

16

kemudian ditranformasikan dengan tabel substitusi S-Box untuk menghasilkan

plaintext berikutnya sampai 5 kali putaran.

Contoh putaran 1 proses pertama menghasilkan bit C1 yang didapat

berdasarkan XOR yang telah ditransformasi oleh S- Box antara bit P1 yang telah

mengalami pengacakan dengan bit K1. Kemudian bit C1 dimasukkan ke proses ke

dua menghasilkan P2 proses dilakukan dengan langkah yang sesuai seperti proses

1. Sehingga menghasilkan C3 dan C4 kemudian putaran ke 2 dengan proses yang

sesuai dengan putaran 1.

Gambar 6 Pemasukan Bit Plaintext dan Kunci

Gambar 6 menjelaskan proses pemasukan bit karakter plaintext dan kunci. Setiap

8 bit berdasarkan setiap karakter dimasukkan berurutan dengan mengisi block

bagian kiri terlebih dahulu mengikuti garis anak panah.

Gambar 7 Pola Transposisi Bit Plaintext Proses 1

Gambar 7 adalah proses pengambilan dan pemasukan pada plaintext 1 dan kunci

1. Bit diambil di setiap 8 bit mengikuti urutan angka pada gambar dengan urutan

angka 1 sederet menjadi baris 1 diikuti deret sebelahnya lalu dilanjutkan deret

sebelah kiri angka tersebut.

Gambar 8 Pola Transposisi Bit Kunci Proses 1

Page 19: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

17

Gambar 8 menjelaskan proses pengambilan bit kunci pada proses 1. Bit

diambil setiap 8 bit dengan pola pengambilan secara mendatar berdasarkan kiri ke

kanan dengan awal bit yang di-bold putih. Kemudian dimasukkan kembali ke

kolom matriks berdasarkan kanan ke kiri mengikuti petunjuk tersebut. Hasil

transposisi berdasarkan plaintext dan kunci kemudian di-XOR sehingga

menghasilkan Ciphertext 1 yang kemudian ditransformasikan ke S-Box kemudian

digunakan sebagai Plaintext 2 pada proses ke 2.

Gambar 9 Pola Dekripsi Ciphertext dan Kunci

Gambar 9 menjelaskan tentang proses dekripsi pada pola terasering, dengan pola

2 atau pola b sebagai proses pertama dari proses dekripsi dilanjutkan pola 4 atau

pola d dan seterusnya. Gambar sebelah kiri dari ciphertext dan kunci adalah pola

pengambilan dan sebelah kanan adalah pola pemasukan. Untuk mempermudah

pengambilan dan pemasukannya setiap kotak bit sudah terisi nomor urutannya.

Page 20: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

18

Gambar 10 Tabel Substitusi S-Box AES

Gambar 10 merupakan tabel substitusi S-box yang digunakan dalam proses

enkripsi dan dekripsi. S-box ini digunakan karena lebih mudah dipahami.

Misalkan jika di-input-kan hexadecimal dengan variabel “01” maka hasil

substitusi S-box adalah “7c” jika di-input-kan hexadecimal dengan variabel “08”

maka hasinya “30”. Untuk algoritma dilakukan dengan mengambil plaintext

adalah SALATIGA dan kunci SEMARANG. Setelah melewati proses enkripsi

yang sudah dijelaskan maka mendapatkan ciphertext yang telah dikonversi ke

nilai hexadecimal.

Tabel 3 Hasil Ciphertext Setiap Putaran

Putaran Hasil Hexadecimal 1 DBEAEB7A01275622

2 642AC4CEEF79D50C

3 D570A604D5B1DB41

4 57953AD254EF7A53

5 DBEAEB2301275622

Tabel 3 merupakan hasil enkripsi berdasarkan setiap putaran. Hasil berdasarkan

putaran 5 merupakan final ciphertext. Tabel 4 Algoritma Proses Enkripsi Dalam Satu Putaran

PROSES ENKRIPSI PROSES DEKRIPSI

Masukkan plaintext

Plaintetxt diubah ke ASCII

ASCII diubah ke BINER

BINER dimasukkan ke kolom P1 menggunakan

pola masuk Plaintext

Masukkan C4

C4 diubah ke ASCII

ASCII diubah ke HEXA

HEXA dimasukkan ke dalam tabel S-Box

Hasil HEXA diubah ke BINER

Page 21: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

19

Bit P1 ditransposisikan dengan pola 3

Terasering P1 di-XOR dengan K1

menghasilkan C1

C1 diubah ke BINER

BINER diubah ke HEXA

HEXA dimasukkan ke dalam tabel S-Box

Hasil HEXA diubah ke BINER menjadi C1 S-

Box

C1 yang sudah ditransformasi ke S-Box = P2

P2 ditransposisikan menggunakan pola 1

Terasering

P2 di-XOR dengan K2 menghasilkan C2

C2 diubah ke BINER

BINER diubah ke HEXA

HEXA dimasukkan ke dalam tabel S-BOX

Hasil HEXA diubah ke BINER menjadi C2 X-

box

C2 X-Box = P3

BINER dimasukkan ke dalam kolom P3

menggunakan pola masuk plaintext

Bit P3 ditransposisikan mengunakan pola 4

Terasering

P3 di-XOR dengan K3 menghasilkan C3

C3 diubah ke BINER

BINER diubah ke HEXA

HEXA dimasukkan ke dalam tabel S-BOX

Hasil HEXA invers diubah ke BINER

C3 X-Box = P4

BINER dimasukkan ke dalam kolom P4

menggunakan pola masuk plaintext

Bit P4 ditransposisikan mengunakan pola 2

Terasering

P4 di-XOR dengan K4 menghasilkan C4

C4 diubah ke BINER

BINER diubah ke HEXA

HEXA dimasukkan ke dalam tabel S-BOX

Menghasilkan hasil ASCII

ASCII diubah HEXA

Bit BINER dimasukkan ke kolom P4

menggunakan pola masuk Plaintext

C4 di-XOR dengan K4

Hasil XOR ditransposisikan terbalik dengan

pola 3 Terasering menghasilkan P4

Bit P4 diubah ke BINER

BINER diubah ke HEXA

HEXA dimasukkan ke dalam tabel S-BOX

Hasil HEXA invers diubah ke BINER

BINER dimasukkan ke dalam kolom C3

menggunakan pola masuk plaintext

C3 di-XORd dengan K3

Hasil XOR ditransposisikan terbalik dengan

pola 1 Terasering menghasilkan P3

Bit P3 diubah ke BINER

BINER diubah ke HEXA

HEXA dimasukkan ke dalam tabel S-BOX

Hasil HEXA invers diubah ke BINER

BINER dimasukkan ke dalam kolom C2

menggunakan pola masuk plaintext

C2 di-XOR dengan K2

Hasil XOR ditransposisikan terbalik dengan

pola 4 Terasering menghasilkan P2

Bit P2 diubah ke BINER

BINER diubah ke HEXA

HEXA dimasukkan ke dalam tabel S-BOX

Hasil HEXA invers diubah ke BINER

P2 = C1

C1 diubah ke BINER

BINERdiubah ke HEXA

HEXA dimasukkan ke dalam S-Box

Menghasilkan HEXA

HEXA diubah ke BINER C1

Bit C1 di-XOR dengan K1

Hasil XOR ditransposisikan terbalik dengan

pola 2 Terasering menghasilkan P1

P1 diubah ke BINER

BINER diubah ke ASCII

ASCII diubah ke CHAR

Tabel 4 merupakan algoritma proses enkripsi dan dekripsi. Proses enkripsi

menhasilkan C4 sedangkan proses dekripsi menghasilkan P1.

Algoritma proses kunci (Key):

a. Masukkan kunci

b. Kunci diubah ke ASCII

c. ASCII diubah ke BINER

d. Bit BINER dimasukkan ke kolom K1 menggunakan pola masuk Kunci

e. Bit Kunci ditransposisikan dengan pola Kunci C

f. Transposisi K1 = K2

g. K2 ditransposisikan menggunakan pola Kunci A

h. Transposisi K2 = K3

i. K3 ditransposisikan menggunakan pola Kunci D

j. Transposisi K3 = K4

Page 22: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

20

k. K4 ditransposisikan menggunakan pola Kunci B

Pseudocode proses Enkripsi dan Dekripsi: Proses Enkripsi

{Program ini digunakan untuk melakukan enkripsi data) Kamus

P,K,P1,P2,P3,P4,K1,K2,K3,K4,= integer C1, C2, C3, C4= integer

Start

C1 <- P1 ⨁ K1 Masukkan P

Read P P to ASCII ASCII to BINER Berdasarkan BINER = kolom matriks P1, masukkan BINER P1 Transposisi mengunakan Pola 3 Terasering

Output P1 Masukkan K

Read K K to ASCII ASCII to BINER Berdasarkan BINER = kolom matriks K1, masukkan BINER K1 Transposisi mengunakan Kunci pola 3 Terasering

Output K1 Print C1

Biner S-Box <- Invers Hexa C1 C1 to BINER BINER to HEXA Berdasarkan HEXA = Tabel S-Box, masukkan HEXA HEXA Substitusi menggunakan S-Box

Print BINER S-Box

C1 = P2

C2 <- P2 ⨁ K2 Berdasarkan C1 = kolom matriks P2, masukkan C1 P2 Transposisi menggunakan Pola 1 Terasering

Output P2 Berdasarkan K1 = kolom matriks K2, masukkan K1 K2 Transposisi menggunakan pola Kunci 1 Terasering

Ouput K2 Print C2

Biner S-Box <- Invers Hexa C2 C2 to BINER BINER to HEXA Berdasarkan HEXA = Tabel S-Box, masukkan HEXA HEXA Substitusi menggunakan S-Box Print BINER S-Box

C2 = P3

C3 <- P3 ⨁ K3 Berdasarkan BINER S-Box = kolom matriks P3, Masukkan BINER S-Box P3 Transposisi menggunakan pola 4 Terasering

Output P3 Berdasarkan K2 = kolom matriks K3, masukkan K2 K3 Transposisi menggunakan pola Kunci D

Output K3 Print C3

Biner S-Box <- Invers Hexa C3 C2 to BINER BINER to HEXA Berdasarkan HEXA = Tabel S-Box, masukkan HEXA HEXA Substitusi menggunakan S-Box

Print BINER S-Box

C3 = P4

C4 <- P4 ⨁ K4

Page 23: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

21

Berdasarkan BINER S-BOX = kolom matriks P4, masukkan BINER S-Box P4 Transposisi menggunakan Pola 2 Terasering

Output P4 Berdasarkan K3 = kolom matriks K4, masukkan K3 K4 Transposisi menggunakan pola Kunci B

Ouput K4 Print C4 Repeat

End

Proses Dekripsi {Program ini digunakan untuk melakukan dekripsi data}

Kamus P,C,K,P1,P2,P3,P4,K1,K2,K3,K4, = integer C1, C2, C3, C4= integer

Start K2 <- Traposisi K1 Input K

Read K K to ASCII ASCII to BINER Berdasarkan BINER = kolom matriks K1, masukkan BINER K1 Transposisi mengunakan pola Kunci B

Output K2 K3 <- Traposisi K2 K2 Transposisi mengunakan pola Kunci D

Output K3 K4 <- Traposisi K3 K3 Transposisi mengunakan pola Kunci A

Output K4

K4 Transposisi menggunakan pola Kunci C

P4 <- C4 to Biner Biner to Hexa Berdasarkan HEXA = Tabel S-Box, masukkan HEXA HEXA Substitusi menggunakan S-Box Berdasarkan BINER S-Box = kolom matriks C4, Masukkan BINER S-Box Transposisi berdasarkan hasil C4 ⨁ K4

Input C Read C C4 to ASCII ASCII to BINER Berdasarkan BINER = kolom matriks C4, masukkan BINER

C4 ⨁ K4 Transposisi terbalik menggunakan Pola 2 Terasering

Print P4 P3 <- Transposisi berdasarkan hasil C3 ⨁ K3 Biner S-Box <- Invers Hexa P4 P4 to BINER BINER to HEXA Berdasarkan HEXA = Tabel S-Box, masukkan HEXA HEXA Substitusi menggunakan S-Box Berdasarkan BINER S-Box = kolom matriks C3, Masukkan BINER S-Box C3 ⨁ K3 Transposisi terbalik menggunakan Pola 4 Terasering

Print P3

P2 <- Transposisi berdasarkan hasil C3 ⨁ K3 Biner S-Box <- Invers Hexa P3 P4 to BINER BINER to HEXA Berdasarkan HEXA = Tabel S-Box, masukkan HEXA HEXA Substitusi menggunakan S-Box Berdasarkan BINER S-Box = kolom matriks C2, Masukkan BINER S-Box C2 ⨁ K2 Transposisi terbalik menggunakan Pola 1 Terasering

Print P2

Page 24: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

22

P2=C1

P1<- Transposisi berdasarkan hasil C1 ⨁ K1 P2 ⨁ K2 Biner S-Box <- Invers Hexa P2 P4 to BINER BINER to HEXA Berdasarkan HEXA = Tabel S-Box, masukkan HEXA HEXA Substitusi menggunakan S-Box Berdasarkan BINER S-Box = kolom matriks C2, Masukkan BINER S-Box

C1 ⨁ K1 Transposisi terbalik menggunakan Pola 3 Tearasering

Print P1 P1 to BINER BINER to ASCII ASCII to CHAR

Print P End

Tabel 5 Nilai Korelasi Setiap Putaran S-Box

Putaran Nilai korelasi

1 -0.02722620

2 0.429738932

3 0.784557824

4 -0.434545885

5 0.096037063

Tabel 5 menjelaskan nilai berdasarkan setiap putaran korelasi. Nilai korelasi

pada putaran ke 5 menunjukkan nilai yang baik karena nilai yang dihasilkan

tingkat hubungan antara plaintext dan ciphertext masuk dalam kategori sangat

rendah. Grafik berdasarkan enkripsi acak proses putaran ditunjukkan pada

Gambar 11.

Gambar 11 Korelasi Berdasarkan Putaran 1 Sampai 5

0

1

2

3

4

5

6

7

8

9

10

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

HASIL KORELASI

Page 25: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

23

Gambar 11 menjelaskan tentang pengujian Avalanche Effect dilakukan untuk

mengatahui seberapa besar perubahan bit ketika karakter plaintext dirubah.

Pengujian dilakukan dengan 3 contoh plaintext dan kunci (key) yang berbeda dan

kemudian akan diubah 1 karakter pada plaintext sehingga menghasilkan

perbedaan Avalanche Effect pada putarannya.

Gambar 12 Grafik Pengujian Avalanche Effect

Gambar 12 menjelaskan bahwa hasil yang didapat setelah pengujian dengan

plaintext DISASTER dan DISCSTER mengalami perubahan bit pada grafik yang

signifikan.

5. Simpulan

Berdasarkan penelitian yang dilakukan, disimpulkan kriptografi block cipher

64 bit berbasis pola terasering dapat melakukan enkripsi dan memenuhi konsep 5-

tuple Stinson sehingga dapat dikatakan sebagai sistem kriptografi. Untuk

mendapatkan pola terbaik dilakukan 24 kombinasi dengan urutan yang berbeda-

beda sehingga mendapat urutan dengan nilai rata-rata dengan korelasi yang

terendah dengan pola CADB. Pola CADB memiliki nilai korelasi yang stabil.

Untuk meningkatkan perubahan bit atau avalanche effect pada setiap putaran

adanya penggabungan tabel substitusi S-box pada setiap proses dalam putaran,

menghasilkan peningkatan avalanche effect yang signifikan. Setelah menemukan

pola CADB lalu diputar sebanyak 5 kali putaran dengan 1 putaran terdapat 4

proses yang menghasilkan nilai korelasi 0.096037063. Setiap prosesnya disubsitusi

dengan S-box agar Avelanche Effect mengalami peningkatan yang dapat

menghasilkan 4.6875% enkripsi yang acak sehingga dapat diterapkan untuk

mengamankan informasi berupa teks.

6. Daftar Pustaka

[1] Kromodimoeljo, S. 2010. Teori dan Aplikasi Kriptografi. Jakarta: SPK IT

Consulting.

[2] Munir, R. 2006. Kriptografi. Bandung: Informatika.

[3] Widodo, A. 2015. Perancangan Kriptografi Block cipher Berbasis pada

Teknik Tanam Padi dan Bajak Sawah. Universitas Kristen Satya Wacana:

Salatiga.

[4] Liwandouw, V. B. 2016. Desain Algoritma Block cipher Dengan Skema

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

JUMLAH 30 34 26 32 32 39 39 32 25 36 31 25 30 30 27 25 39 34 27 30

HASIL 47 53 41 50 50 61 61 50 39 56 48 39 47 47 42 39 61 53 42 47

0

50

100

AVALANCHE EFFECT

Page 26: Perancangan Kriptografi Block Cipher 64 Bit Berbasis pada ......dimengerti maknanya [2]. Algoritma yang digunakan dalam perancangan kriptografi pada penelitian ini adalah algoritma

24

Transposisi Kubus Rubik. Universitas Kristen Satya Wacana: Salatiga.

[5] Stinson, D. R., 1995, Cryptography: Theory and Practice. CRC Press,

Boca Raton, London, Tokyo.

[6] Mongomery C. D., Runger C. G., 2003. Applied Statistics and Probability

for Engineers. John Wiley & Sons Inc. US

[7] Dafid, 2006, Kriptografi Kunci Simetris Dengan Menggunakan Algoritma

Crypton, STMIK MDP Palembang.

[8] Arsyad, S. 1989. Konservasi Tanah dan Air. IPB-Press. Bogor.