• Tidak ada hasil yang ditemukan

Institutional Repository | Satya Wacana Christian University: Perancangan Kriptografi Block Cipher Berbasis pada Garis Pertumbuhan dan Pita Pertumbuhan Cangkang Kerang

N/A
N/A
Protected

Academic year: 2018

Membagikan "Institutional Repository | Satya Wacana Christian University: Perancangan Kriptografi Block Cipher Berbasis pada Garis Pertumbuhan dan Pita Pertumbuhan Cangkang Kerang"

Copied!
28
0
0

Teks penuh

(1)

Perancangan Kriptografi Block Cipher Berbasis pada

Garis Pertumbuhan dan Pita Pertumbuhan

Cangkang Kerang

Artikel Ilmiah

Peneliti :

Handri Yonatan Santoso (672009089) Hindriyanto Dwi Purnomo, S.T., MIT., Ph.D.

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

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

(2)

i

Perancangan Kriptografi Block Cipher Berbasis pada

Garis Pertumbuhan dan Pita Pertumbuhan

Cangkang Kerang

Artikel Ilmiah

Diajukan kepada

Fakultas Teknologi Informasi

Untuk memperoleh gelar Sarjana Komputer

Peneliti :

Handri Yonatan Santoso (672009089) Hindriyanto Dwi Purnomo, S.T., MIT., Ph.D.

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

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

(3)
(4)
(5)
(6)
(7)
(8)
(9)

viii

Perancangan Kriptografi

Block Cipher

Berbasis pada

Garis Pertumbuhan dan Pita Pertumbuhan Cangkang Kerang

1Handri Yonatan Santoso, 2Hindriyanto Dwi Purnomo, 3Alz Danny Wowor Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana Jl. Diponegoro 52-60, Salatiga 50771, Indonesia

Email: 1672009089@student.uksw.edu, 2hindriyanto.purnomo@staff.uksw.edu, 3alzdanny.wowor@staff.uksw.edu

Abstract

Block cipher algorithm, a modern cryptography that many of it have made, but some of its has broken by cryptanalysis attacks. It is important to make new block cipher algorithms to change the old algorithms also to improve the message’s security. As new block cipher design, Garis Pertumbuhan and Pita Pertumbuhan Cangkang Kerang (Clamshell’s Growth Lines and Bands) or GPCK has a Swap Boxthe swap rules of blocks key. GPCK is a symmetric key algorithm of a 64-bit block that have good random value on encryption process. The result of the research showed that GPCK’s design can successfully be a cryptosystem and can used as methodology reference to design new symmetric key cryptography.

Keywords: Block Cipher, Garis and Pita Pertumbuhan Cangkang Kerang, Cryptography, Swap Box, Symmetric Key.

Abstrak

Algoritma cipher blok, sebuah kriptografi moderen yang sudah banyak dibuat tetapi beberapa di antaranya sudah terpecahkan oleh serangan kriptanalisis. Membuat algoritma cipher blok adalah penting untuk menggantikan algoritma yang lama juga untuk memperbaiki keamanan pesan. Sebagai desain cipher blok baru, Garis Pertumbuhan dan Pita Petumbuhan Cangkang Kerang (GPCK) mempunyai Swap Box, yaitu aturan pertukaran blok kunci. GPCK adalah 64-bit blok algoritma kunci simetris yang mempunyai nilai keacakan yang baik pada proses enkripsi. Hasil penelitian menunjukkan bahwa desain GPCK berhasil menjadi sebuah kriptosistem dan dapat digunakan sebagai acuan metodologi dalam merancang kriptografi kunci simetris.

Kata Kunci : Cipher Blok, Garis dan Pita Pertumbuhan Cangkang Kerang, Kriptografi, Swap Box, Kunci Simetris.

1 Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi Universitas Kristen Satya Wacana, Salatiga.

(10)

1

1. Pendahuluan

Seiring dengan perkembangan perangkat elektronik dan yang terus berkala, maka harus diiringi pula dengan perkembangan keamanan data karena data digital banyak dikirim dan dihasilkan dari perangkat-perangkat elektronik. Banyak terjadi kasus penyadapan data, pencurian data, dan pembobolan rekening karena salah satunya disebabkan oleh kurangnya keamanan data yang dimiliki. Kriptografi diciptakan sebagai salah satu cara untuk mengamankan data. Algoritma block cipher merupakan kriptografi moderen yang telah diciptakan cukup banyak, namun ada di antaranya yang sudah terpecahkan oleh kriptanalis. Oleh karena itu, perlu adanya modifikasi algoritma atau perancangan algoritma baru sebagai pengganti algoritma kriptografi yang sudah terbongkar keamanannya. Hal tersebut supaya mencegah terjadinya penggunaan kembali algoritma yang sudah pecah untuk pengamanan data. Serangan terhadap teknik kriptografi yang ada, dilakukan para kriptanalisis pada dasarnya adalah untuk memecahkan atau membongkar keamanan algoritma kriptografi tersebut, yang selanjutnya digunakan untuk usaha mengupas data tersandi tanpa mengetahui atau menggunakan kunci.

Oleh sebab itu, melihat dari data digital yang banyak dikirimkan dan mengingat bahwa aspek keamanan data merupakan salah satu faktor penting dalam melindungi pertukaran data dari orang-orang yang tidak pada ruang lingkupnya, maka dalam penelitian ini dirancang kriptografi baru dari block cipher berbasis pada Garis Pertumbuhan dan Pita Pertumbuhan Cangkang Kerang.

Tujuan dari penelitian ini adalah untuk menghasilkan sebuah teknik kriptografi baru dan menghasilkan sebuah metodologi yang dapat digunakan dalam sebuah penelitian kriptografi simetris. Adapun manfaat dari penelitian yang dibuat diharapkan dapat menjawab permasalahan dari kriptografi standar dan menjadi acuan metodologi dalam merancang kriptografi kunci simetris baru khususnya pada

block cipher.

2. Tinjauan Pustaka

Penelitian terdahulu dan dasar teori akan dibahas pada bagian ini. Penelitian terdahulu membahas tentang penelitian yang sudah dilakukan sebelumnya, yang kemudian dapat digunakan sebagai pembanding dan atau sebagai acuan pada penelitian ini. Penelitian terdahulu yang pertama berjudul “Tweakable Block Ciphers” [1], menjelaskan bahwa kriptografi yang diusulkan mempunyai input

(11)

2

Penelitian kedua dengan judul “Kriptografi Kunci Simetris Dengan

Menggunakan Algoritma Crypton” [2], menjelaskan bahwa semakin kompleks

metode pengacakan yang digunakan maka akan semakin sulit untuk membongkar pesan yang terenkripsi ke bentuk aslinya dengan syarat kunci atau private key tidak boleh dipublikasikan kepada umum. Berdasarkan pernyataan tersebut maka dirancang Swap Box pada perancangan ini supaya dapat lebih mengacak plainteks dengan kunci yang diinputkan.

Penelitian ketiga, “Advanced Encryption Standard” [3], menjelaskan bahwa

Advanced Encryption Standard (AES) adalah standard terkini untuk enkripsi kunci rahasia menggantikan DES. Algoritma AES menggunakan kombinasi operasi XOR, subtitusi oktet dengan S-box, kolom dan baris rotasi-rotasi, dan MixColumn. Algoritma sukses diterapkan dan mampu berjalan di sejumlah waktu yang layak pada komputer biasa. Selanjutnya, AES akan dijadikan pembanding perancangan karena AES menjadi standar pengamanan informasi di Amerika. Algoritma AES yang digunakan sebagai pembanding yaitu AES-128.

Kemudian penelitian yang keempat, “Perancangan Kriptografi Block Cipher

Berbasis pada Alur Clamshell’s Growth Rings” [4], perancangan kriptografi yang dibuat sebanyak 8 putaran proses dan berukuran 64-bit dimana pada proses regenerasi plainteksnya menggunakan alur Clamshell’s Growth Rings. Penelitian ini dipakai sebagai dasar untuk melanjutkan perancangan kriptografi garis petumbuhan dan pita petumbuhan cangkang kerang.

Selanjutnya akan dibahas dasar-dasar teori yang digunakan sebagai dasar untuk merancang kriptografi dalam penelitian ini. Kriptografi adalah ilmu yang mempelajari teknik-teknik yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan, integritas data, dan otentikasi [5].

Block cipher atau cipher blok digolongkan sebagai kriptografi moderen. Input

dan output dari algoritma block cipher berupa blok dan setiap blok terdiri dari beberapa bit (1 blok terdiri dari 64-bit atau 128-bit) [6]. Block cipher juga merupakan algoritma kunci simetri atau kriptografi kunci privat, dimana kunci untuk enkripsi sama dengan kunci untuk dekripsi [7]. Secara umum block cipher

dapat ditunjukkan pada Gambar 1.

(12)

3

Misalkan blok plainteks (P) yang berukuran n bit

p p pn

P 1, 2,, (1)

Blok cipherteks (C) maka blok C adalah

c c cn

C1, 2,, (2)

Kunci (K) maka kunci adalah

K

k1,k2,,kn

(3)

Sehingga proses Enkripsi adalah

Ek

 

PC (4)

Proses dekripsi adalah

 

C P

Dk  (C) = P (5) Enkripsi dilakukan terhadap blok bit plainteks menggunakan bit-bit kunci (yang ukurannya sama dengan ukuran blok plainteks). Algoritma enkripsi menghasilkan blok cipherteks yang sama dengan blok plainteks. Dekripsi dilakukan dengan cara yang serupa seperti enkripsi [7].

Garis Pertumbuhan dan Pita Pertumbuhan Cangkang Kerang(GPCK), pada cangkang kelas bivalvia tampak garis konsenstris yang sejajar. Garis tersebut adalah garis pertumbuhan yang menunjukkan masa pertumbuhan pada kerang baik itu pertumbuhan lamban atau tidak ada pertumbuhan [8].

Gambar 2 Kerang Bivalvia [9]

Pada Gambar 2, garis pertumbuhan berselang-seling dengan pita pertumbuhan yang menunjukkan pertumbuhan cepat. Semakin banyak garis pertumbuhan dan pita pertumbuhan, maka semakin tua umur kerang tersebut. Dengan mengikuti garis pertumbuhan dan pita pertumbuhan maka dibuatlah proses enkripsi dan dekripsi dari kedua hal tersebut. Kriptografi yang dirancang merupakan algoritma kunci simetris dengan Swap Box, yaitu sekumpulan tabel aturan swap (pertukaran) pada kolom dan baris blok untuk proses meregenerasi kunci.

(13)

4

Operator XOR dioperasikan pada dua bit dengan aturan sebagai berikut. 0  0 = 0

0  1 = 1 1  0 = 1 1  1 = 0

Sistem kriptografi (cryptosystem) adalah himpunan yang terdiri dari algoritma kriptografi, semua plainteks dan cipherteks yang mungkin, dan kunci [7]. Sebuah kriptografi dapat dikatakan sebagai sebuah sistem kriptografi jika memenuhi

lima-tuple (five-tuple)(P, C, K, E, D)yang memenuhi kondisi [10]: 1. 𝑷adalah himpunan berhingga dari plainteks,

2. 𝑪adalah himpunan berhingga dari cipherteks,

3. 𝑲 merupakan ruang kunci (keyspace), adalah himpunan berhingga dari kunci,

4. Untuk setiap kK, terdapat aturan enkripsi ekE dan berkorespodensi

dengan aturan dekripsi dkD. Setiap ℯ𝑘∶ PC dan 𝑑𝑘∶ CP adalah

fungsi sedemikian hinggadk

ek

 

x

x untuk setiap plainteksxP. Lebih lanjut, dasar teori pada pengujian dari perancangan kriptografi ini menggunakan nilai keacakan dan diferensiasi data. Nilai keacakan digunakan untuk mencari tahu seberapa besar nilai dari algoritma kriptografi yang dirancang mampu untuk mengacak plainteks yang diinputkan [11]. Untuk mencari nilai keacakan diperoleh dari:

𝑌𝑖 =𝑝𝑖𝑝−𝑐𝑖𝑖 (6)

Dimana nilai acak Yi untuk tiap karakter diperoleh dari perbandingan antara selisih

plainteks pi dengan cipherteks ci terhadap plainteks pi. Berdasarkan persamaan 1

maka untuk mencari nilai keacakan menggunakan rumus:

𝑌𝑖̅ = ∑𝑛=8𝑌𝑖𝑛

𝑖=0 (7)

Diferensiasi data adalah perbandingan selisih antara dua titik. Dalam kalkulus, metode ini sering disebut sebagai turunan atau kemiringan dari data.Jika diberikan kumpulan data ((x1,y1), (x2,y2), (x3,y3), …, (xn,yn)) dengan syarat bahwa xi < xi+1 dimana i = 1…n. Data-data tersebut dapat divisualisasikan ke dalam koordinat Cartesius untuk setiap x sebagai variabel bebas dan y atau kadang ditulis sebagai

f(x) sebagai variabel tak bebas. Untuk menentukan diferensiasi data pada dua titik maka persamaan yang dapat dibentuk sebagai berikut

D y

D x =

(yb- ya)

(xa- xb) (8)

(14)

5

Apabila terdapat n data maka dapat ditetukan rata-rata dari diferensiasi data (Rataan diferensiasi (Rd)) menggunakan Persamaan (9).

(9)

3. Metode Penelitian

Pada bagian ini menjelaskan langkah-langkah penelitian dan rancangan umum dari kriptografi yang dirancang. Langkah-langkah penelitian dalam menyelesaikan kriptografi berbasis pada Garis Pertumbuhan dan Pita Pertumbuhan Cangkang Kerang ditunjukkan pada Gambar 3, hasil rancangan nantinya akan dilakukan dengan lima-tuple Stinson, dan tiap langkah penelitian dijelaskan sebagai berikut.

Gambar 3 Langkah Penelitian

Langkah 1: Identifikasi Masalah dan Perumusan Masalah. Mengidentifikasi masalah yang kaitannya dengan kriptografi block cipher. Menguraikan dan menjelaskan masalah yang diambil kemudian merumuskan masalah tersebut ke dalam batasan masalah. Batasan masalah yang diambil dalam perancangan kriptografi block cipher berbasis pada Garis Pertumbuhan dan Pita Pertumbuhan Cangkang Kerang, sebagai berikut:

1. Proses enkripsi-dekripsi pada perancangan ini menggunakan teks. 2. Jumlah karakter pada kunci dibatasi sebanyak 8 karakter.

3. Ukuran blok yang digunakan adalah 64-bit.

(15)

6

Langkah 2: Kerangka Teori dan Pengumpulan Bahan. Masalah yang telah dirumuskan kemudian diidentifikasikan variabel-variabel pentingnya dengan masalah penelitian ke dalam kerangka teori.

Pengumpulan bahan-bahan yang terkait baik tinjauan pustaka dan landasan teori dilakukan untuk referensi pembuatan kriptografi yang diteliti.

Langkah 3: Perancangan Kriptografi dan Perancangan Kunci. Membuat

rancangan untuk proses enkripsi dan dekripsi plainteks dengan mengikuti garis pertumbuhan dan pita pertumbuhan pada cangkang kerang. Rancangan enkripsi dan dekripsi kunci dibuat hingga hasil dari rancangan kunci yang didapat dikumpulkan menjadi Swap Box.

Langkah 4: Pembuatan Kriptografi. Rancangan yang sudah jadi kemudian dihitung manual secara matematis pada proses enkripsi plainteks dan teks kunci yang digunakan.

Langkah 5: Uji Kriptosistem. Melakukan pengujian hasil perancangan

kriptografi yang dirancang terhadap kriptosistem.

Langkah 6: Penulisan Laporan. Hasil penelitian yang selesai dilakukan kemudian ditulis menjadi ke dalam laporan penelitian.

Rancangan Umum Kriptografi, dijelaskan sebagai berikut. Perancangan

kriptografi block cipher berbasis pada Garis Pertumbuhan dan Pita Pertumbuhan Cangkang Kerang dibuat sebanyak 10 Putaran, mencontoh dari algoritma AES yang mempunyai jumlah putaran yang sama. Untuk proses rancangan secara umum dijelaskan pada Gambar 4.

Gambar 4 Proses Umum Kriptografi Block Cipher GPCK

Plainteks dan kunci yang diinputkan terlebih dahulu akan ter-encode oleh ASCII dan akan masuk pada putaran proses yang berjumlah 10 putaran. Setiap putaran terdapat proses untuk plainteks (Proses Plainteks-i, i= 1, 2, …, 10) dan proses untuk

kunci (Proses Kunci-i, i = 1, 2, …, 10). Setiap hasil dari Proses Plainteks-i dan Proses Kunci-i dihubungkan dengan proses XOR untuk setiap putaran ke i.

Rancangan Algoritma Garis dan Pita Pertumbuhan, dijelaskan sebagai

(16)

7

berisi 1 bit. Sehingga untuk satu kotak pada satu proses akan memerlukan satu kali Masuk Bit dan juga satu kali Ambil Bit.

Dimisalkan plainteks = T, t = karakter plainteks, dan a = biner karakter, maka: Plainteks yang diinputkan haruslah kelipatan dari 8. Jika tidak kelipatan 8, maka akan dilakukan padding karakter, yaitu karakter dengan desimal 129.

𝐽𝑖𝑘𝑎 𝑛 ∤ 8; 𝑛 ∈ 𝑍+, maka

Kemudian dimisalkan kunci = Q, q = karakater kunci, dan b = biner karakter kunci, maka: dilakukan padding karakter, yaitu menggunakan karakter yang sama pada padding

untuk plainteks. Bit dan Ambil Bit pada Kotak 64-Bit. Kotak tersebut dirancang untuk menjelaskan bagaimana memasukkan 64-bit dan juga bagaimana mengambilnya.

Gambar 5 Masuk Bit Pita Pertumbuhan pada Kotak 64-Bit

(17)

8

Berdasarkan pada Gambar 5, dengan memodifikasi alur pita pertumbuhan cangkang kerang maka setiap bit akan dimasukkan dengan arah yang dimulai dari bawah – pada titik hitam, mengikuti tanda panah berwarna hitam secara diagonal menuju ke atas.

Diambil 64-bit sebagai blok pertama adalah a1,a2,,a64, dengan mengikuti proses Masuk Bit sesuai dengan Gambar 5 dan penempatan untuk setiap 8 bit diatur berdasarkan kotak-kotak kecil tertentu. Pemasukan setiap bit diperjelas pada Gambar 7.

Gambar 7 Penerapan Alur Pita Pertumbuhan pada Kotak 64-Bit

Gambar 8 Penerapan Alur Garis Pertumbuhan pada Kotak 64-Bit

Berdasarkan pada Masuk Bit pada kotak di Gambar 7, maka Ambil Bit dilakukan dengan alur Garis Pertumbuhan pada Gambar 8, hal tersebut supaya membentuk keacakan bit yang baik. Sebagai contoh, bila diambil mengikuti arah yang sudah diberikan pada penjelasan sebelumnya dan pola warna pada Gambar 8, maka diperoleh urutan bit berdasarkan karakter sebagai berikut.

(18)

9

berdasarkan Masuk Bit dan Ambil Bit, dirancang algoritma yang berbasis pada Garis Pertumbuhan dan Pita Pertumbuhan Cangkang Kerang.

4. Hasil dan Pembahasan

Pada bagian ini akan dijelaskan hasil dari perancangan kriptografi yang diteliti. Penelitian ini melanjutkan penelitian yang telah dilakukan sebelumnya, yaitu Perancangan Kriptografi Block Cipher Berbasis pada Clamshell’s Growth Rings. Hasil rancangan kriptografi kemudian diuji sebagai sebuah kriptosistem dan akan dibandingkan kriptogafi yang dirancang dengan AES-128.

Pengujian Rancangan Kriptografi, dijelaskan sebagai berikut. Untuk

menguji perancangan GPCK sebagai teknik kriptografi, terlebih dahulu dijelaskan alur proses enkripsi dan dekripsi secara keseluruhan. Pada pembahasan sebelumnya sudah dibahas, namun lebih lengkap proses enkripsi-dekripsi ditunjukkan pada Gambar 7 dan Gambar 8. Lebih lanjut, proses enkripsi dan dekripsi akan diuji dengan contoh teks plainteks dan kunci yang sudah diberikan.

Gambar 9 Rancangan Proses Enkripsi GPCK

Berdasarkan Gambar 9, secara keseluruhan dari kriptografi yang dirancang. Terdapat 10 putaran proses untuk mengubah plainteks menjadi cipherteks. Pada putaran proses plainteks, terdapat 2 (dua) proses, yaitu Masuk Bit, proses dimana bit-bit plainteks dimasukkan ke dalam Kotak 64-Bit menggunakan pita pertumbuhan, setiap proses putaran Masuk Bit mempunyai alur pita pertumbuhan yang berbeda, kemudian Ambil Bit (GP), bit-bit yang telah dimasukkan pada proses Masuk Bit kemudian diambil pada proses Ambil Bit menggunakan alur garis pertumbuhan. Proses putaran kunci terdapat 3 (tiga) proses, yaitu Masuk Bit,

(19)

10

kunci akan ditukar tiap blok kolomnya dengan kolom dan tiap blok baris dengan baris mengikuti aturan yang telah dibuat, kemudian bit-bit tersebut akan masuk pada Ambil Bit, proses pengambilan bit kunci menggunakan alur pita pertumbuhan. Proses Masuk Bit dan Ambil Bit pada kunci mempunyai alur pita pertumbuhan yang berbeda.

Plainteks (Pt) dan kunci (K) yang ter-encode akan masuk pada putaran proses masing-masing. Hasil dari proses Putaran 1 untuk plainteks adalah P1. Proses serupa juga terjadi pada bit-bit kunci dimana hasil dari proses Putaran 1 untuk kunci adalah K1. Kemudian P1 diproses XOR dengan K1 menghasilkan bit-bit baru yang akan menjadi inputan pada Putaran 2 dan K1 akan menjadi inputan juga pada Putaran 2 untuk kunci. Hasil dari Putaran 2 adalah P2 dan K2, keduanya kemudian akan diproses XOR kembali dan menghasilkan bit-bit baru lagi yang akan diinput kembali pada putaran-putaran plainteks dan kunci berikutnya sampai dengan Putaran 10, dimana P10 akan diproses XOR dengan K10 dan menghasilkan cipherteks (C) yang berupa deret bit.

Karena kriptografi block cipher berbasis pada GPCK merupakan algoritma kunci simetris, untuk proses dekripsi algoritma ini merupakan proses kebalikan dari proses enkripsi yang ditunjukkan pada Gambar 10.

Gambar 10 Rancangan Proses Dekripsi GPCK

Urutan bit C dan K10 akan diproses XOR terlebih dahulu, sehingga menghasilkan P10. P10 dan K10 akan diproses pada proses balik putaran plainteks dan kunci sampai pada proses Putaran 1 yang menghasilkan teks plainteks (Pt) dan teks kunci (K) yang semula.

Untuk membuktikan proses enkripsi pada GPCK maka dilakukan penghitungan secara manual. Pada proses enkripsi menggunakan contoh teks

(20)

11

Plainteks “ALZDANNY” dan kunci “KEEPCALM” yang sudah ter-encode

menjadi biner adalah

A → 01000001

L → 01001100

Z → 01011010

D → 01000100

A → 01000001

N → 01001110

N → 01001110

Y → 01011001

K → 01001011

E → 01000101

E → 01000101

P → 01010000

C → 01000011

A → 01000001

L → 01001100

M → 01001101

Dengan mengikuti alur pita pertumbuhan dan garis pertumbuhan yang sudah diberikan pada Gambar 5 dan Gambar 6 (berbeda arah pemasukan dan pengambilan bit) pada plainteks dan kunci (untuk Masuk Bit dan Ambil Bit) serta meggunakan

Swap Box tertentu pada tiap putaran kunci, maka untuk Putaran 1 menghasilkan

P1 =“01000010 11000001 01100100 00010110 11001010 10011001 10111000

01010000”

K1 = “01101100 10011001 11000011 00000110 01000100 00010001 00001000

00011111”

= “00101110 01011000 10100111 0001000 10001110 10001000 10110000

01001111” = “172C53888E88B04F”

dan pada Putaran 2 menghasilkan

P2 = “10000001 00011001 01000001 10101010 10111011 10111001 00010010

10000110”

K2 = “00010100 10000100 00110110 01111010 00000000 10000001 10100011

11011010”

= “10010101 10011101 01110111 11010000 10111011 00111000 10110001

(21)

12

Untuk Putaran 3 untuk Masuk Bit dan Ambil Bit (GP) mengikuti alur yang sama dengan pada Gambar 5 dan 6 serta mengikuti proses pemasukan dan pengambilan

bit pada Gambar 7 dan 8, maka untuk Putaran 3 plainteks menghasilkan “10110011 01101000 10111110 01100011 11111000 01011100 00110111 10001010”.

Bit-bit K2 selanjutnya menjadi inputan pada Putaran 3 kunci, bit-bit tersebut akan diregenerasi pada proses Masuk Bit, Swap Box, dan Ambil Bit untuk Putaran 3. Pemasukan bit ditunjukkan pada arah panah yang dimulai dari atas pada kolom dan baris pertama sampai pada kolom dan baris kedelapan secara diagonal menurun. Pada Gambar 11 dan Gambar 12, ditunjukkan Masuk Bit kunci menggunakan alur pita pertumbuhan pada Putaran 3.

b1 b3 b6 b10 b15 b21 b28 b36

b2 b5 b9 b14 b20 b27 b35 b43

b4 b8 b13 b19 b26 b34 b42 b49

b7 b12 b18 b25 b33 b41 b48 b54

b11 b17 b24 b32 b40 b47 b53 b58

b16 b23 b31 b39 b46 b52 b57 b61

b22 b30 b38 b45 b51 b56 b60 b63

b29 b37 b44 b50 b55 b59 b62 b64

Gambar 13 Alur Masuk Bit Kunci pada Putaran 3

Gambar 14 Penerapan Alur Masuk Bit Kunci pada Putaran 3

Bit-bit kunci yang sudah ditempatkan ke dalam Kotak 64-Bit kemudian dikenakan proses Swap Box.

Gambar 15 Proses Swap Box Pada Putaran 3

(22)

13 b6 b10 b15 b21 b28 b36 b1 b3

b9 b14 b20 b27 b35 b43 b2 b5

b13 b19 b26 b34 b42 b49 b4 b8

b18 b25 b33 b41 b48 b54 b7 b12

b24 b32 b40 b47 b53 b58 b11 b17

b31 b39 b46 b52 b57 b61 b16 b23

b38 b45 b51 b56 b60 b63 b22 b30

b44 b50 b55 b59 b62 b64 b29 b37

b38 b45 b51 b56 b60 b63 b22 b30

b44 b50 b55 b59 b62 b64 b29 b37

b24 b32 b40 b47 b53 b58 b11 b17

b9 b14 b20 b27 b35 b43 b2 b5

b31 b39 b46 b52 b57 b61 b16 b23

b6 b10 b15 b21 b28 b36 b1 b3

b18 b25 b33 b41 b48 b54 b7 b12

b13 b19 b26 b34 b42 b49 b4 b8

Gambar 16 Hasil Swap Column Kunci Gambar 17 Hasil Swap Row Kunci

Setelah proses Swap Box kemudian dilakukan pengambilan bit kunci menggunakan alur pita pertumbuhan yang ditunjukkan pada Gambar 18 dan Gambar 19.

b38 b45 b51 b56 b60 b63 b22 b30

b44 b50 b55 b59 b62 b64 b29 b37

b24 b32 b40 b47 b53 b58 b11 b17

b9 b14 b20 b27 b35 b43 b2 b5

b31 b39 b46 b52 b57 b61 b16 b23

b6 b10 b15 b21 b28 b36 b1 b3

b18 b25 b33 b41 b48 b54 b7 b12

b13 b19 b26 b34 b42 b49 b4 b8

Gambar 18 Alur Ambil Bit Kunci Pada Putaran 3

Gambar 19 Penerapan Ambil Bit Kunci Pada Putaran 3

(23)

14 10101001 10001110 10010010 11010001 00010001 00011100”. Proses XOR dari P3 dan K3 menghasilkan biner “10111011 10101001 00010111 11101101 01101010 10001101 00100110 10010110”atau “BBA917ED6A8D2696”.

Hasil biner pada Putaran 3 akan diproses pada Putaran 4, Putaran 5, dan terakhir pada Putaran 10, begitu juga dengan biner kunci pada Putaran 3 akan diproses pada putaran selanjutnya mengikuti alur-alur yang didesain berbeda di tiap proses putaran. Hasil proses plainteks dan kunci pada Putaran 10 menghasilkan biner cipherteks “01100010 01000001 00001000 11000100 10010011 01010100 00011011 00000100” atau dalam heksadesimal “624108C493541B04” dan ditunjukkan pada grafik Gambar 20.

Gambar 20 Grafik Hasil Enkripsi GPCK

Pada proses dekripsi, dilakukan dengan melakukan proses kebalikan dari proses enkripsi. Dengan inputan cipherteks “11111001 00000000 01000100 00001011 11010101 01010100 11110010 00010111” dan dengan teks kunci

(24)

15

Pengujian Kriptosistem, dijelaskan sebagai berikut. Kriptografi dikatakan sebagai sebuah sistem kriptografi jika memenuhi five-tuple P,C, K, E, dan D [9]. Pada pembahasan sebelumnya telah dijelaskan bahwa perancangan kriptografi ini telah memenuhi dua dari kelima syarat sebuah sistem kriptografi menurut Stinson dan berikut akan ditunjukkan bahwa perancangan ini memenuhi kelima kondisi tersebut. P adalah himpunan berhingga dari plainteks. Dalam perancangan ini menggunakan 256 karakter dalam ASCII, himpunan plainteks pada Garis Pertumbuhan dan Pita pertumbuhan adalah himpunan berhingga. C adalah himpunan berhingga dari cipherteks. Cipherteks dihasilkan dalam elemen bit biner (bilangan 0 dan 1) dan karena himpunan bilangan bit biner pada cipherteks hanya {0,1} maka cipherteks adalah himpunan berhingga. K, keyspace atau ruang kunci adalah himpunan berhingga dari kunci. Ruang kunci dalam perancangan ini adalah 256 karakter dalam ASCII. Sehingga ruang kunci merupakan himpunan yang berhingga. E, enkripsi, dan D, dekripsi, setiap ek : PC dan dk : CP adalah fungsi sedemikian sehingga dk(ek(x)) = x, untuk setiap plainteks xP. Pembahasan sebelumnya telah membahas proses enkripsi dan dekripsi, sehingga telah memenuhi tuple E dan D. Karena memenuhi kelima kondisi maka Garis Pertumbuhan dan Pita Pertumbuhan Cangkang Kerang merupakan sebuah sistem kriptografi.

Pengujian Nilai Keacakan dan Diferensiasi Data, dijelaskan sebagai berikut. Pengujian nilai keacakan dilakukan untuk melihat seberapa baik rancangan kriptografi mengacak nilai plainteks. Untuk dapat mengetahui baik atau tidaknya maka diperlukan kriptografi lain sebagai pembanding, oleh karena itu dipilih AES-128 [12].

Nilai keacakan dihitung berdasarkan Persamaan (6) dan nilai deferensiasi pada Persamaan (9) yang telah diberikan pada pembahasan sebelumnya. Nilai keacakan dilihat pada bilangan cipherteks yang dihasilkan oleh algoritma tertentu. Penelitian ini tidak membandingkan ukuran blok dengan AES. Nilai keacakan didapat dari selisih perbandingan plainteks 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 bernilai positif atau negatif. Bernilai negatif berarti selisih perbandingan nilai cipherteks lebih besar dari nilai plainteks, bernilai positif berarti nilai plainteks lebih besar dari nilai cipherteks.

(25)

16

cipherteks dari plainteks maka akan memerlukan banyak waktu dan proses untuk menemukan relasi dengan cipherteks atau bahkan menemukan plainteks.

Digunakan plainteks “Send 50kg NZT49 @10pm, #CentP” dan kunci

KiP1S3f”. Plainteks dipilih dengan variasi abjad, angka, dan simbol. Hal ini agar inputan akan bervariasi terutama untuk nilai ASCII yang diperoleh. Hasil pengujian ditunjukkan dengan grafik pada Gambar 21.

Gambar 21 Grafik Hasil Perbandingan GPCK dengan AES-128

Berdasarkan Persamaan (6), dapat diperoleh nilai keacakan sumbu-y untuk GPCK sebesar -1,0576 dan untuk AES-128 sebesar -1,0284. Hal tersebut menunjukkan bahwa pengacakan pada GPCK memiliki nilai cipherteks lebih besar dari plainteks yang diinputkan. Diperoleh 0,0276 perbedaan nilai keacakan dari kriptografi yang dirancang dengan AES-128. Dari Persamaan (9) diperoleh bahwa diferensiasi data untuk GPCK sebesar -0,9032 dan untuk AES-128 sebesar -2,3225.

Pengujian selanjutnya adalah melakukan proses enkripsi untuk plainteks yang sama. Pemilihan plainteks yang sama bertujuan untuk melihat seberapa baik untuk rancangan kriptografi GPCK mengacak plainteks. Sama dengan pengujian sebelumnya, tetap dibandingkan dengan AES-128.

Plainteks yang dipilih adalah plainteks “ffffffffffffffff” dan kunci “KiP1S3f”.

Penggunaan karakter f karena karakter tersebut mempunyai bit yang simetris

“01100110”. Sifat simetris ini membuat apabila ditempatkan dalam kotak 64-bit akan selalu simetris dibaca dari kiri ke kanan atau sebaliknya dari atas ke bawah. Hasil dari pengujian diberikan pada grafik Gambar 22.

0 50 100 150 200 250 300

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32

(26)

17

Gambar 22. Grafik Hasil Perbandingan GPCK dengan AES-128 Menggunakan Plainteks Karakter Sama

Berdasarkan grafik pada Gambar 22, nampak AES-128 sangat konsisten untuk mengacak plainteks dengan inputan yang sama. Hasil ini nampak pada dapat dilihat bahwa dari pengujian GPCK menggunakan input dengan karakter yang diberikan, menghasilkan grafik yang berpola ulang untuk kelipatan 8 karakter. Hal tersebut menjelaskan bahwa GPCK mampu menahan 8 karakter yang sama dengan asumsi tidak dipetakan pada karaker yang sama. Nilai keacakan pada pengujian ini untuk GPCK sebesar -0,663 dan AES-128 sebesar -0,1881. Nilai diferensiasi data yang dihasilkan GPCK sebesar 3,8 dan AES-128 sebesar -10,467.

Pengujian Avalanche Effect dan Pengujian Ekstrim, dijelaskan sebagai berikut. Pengujian-pengujian yang sebelumnya lebih pada aluar dan proses enkripsi dan dekripsi. Bagian ini akan ditunjukkan kalau rancangan ini mempunyai

Avalanche Effect (AE). Pengujian ini biasanya dilakukan untuk kriptografi block cipher atau kriptografi berbasis fungsi Hash. Pada kriptografi tersebut apabila sudah mempunyai AE maka sudah dapat dikatakan dapat menahan serangan kriptanalisis karena merumitkan dan menjadi tidak mungkin untuk pengujian secara statistika dan juga menghilangkan hubungan korespodensi satu ke satu antara plainteks dan cipherteks.

Selain menguji AE, rancangan ini juga dilakukan pengujian ekstrim yaitu dengan memasukan plainteks dan kunci dengan bit 0. Dalam hal ini berarti akan terdapat satu blok yang isinya terdiri dari bit 0, baik pada blok plainteks maupun blok kunci. Pada rancangan ini apabila plainteks dan cipherteks seluruh bitnya 0,

maka diperoleh cipherteks “01000000 11110010 11011101 00001101 10101100 01100000 11010100 11100100” atau “40F2DD0DAC60D4E4”. Hasil ini menujukkan bahwa kriptografi ini sangat baik sebagai rancangan sebagai sebuah

block cipher, karena pengujian ekstrim ini, terbukti dengan mengubah 1 buah bit saja pada plainteks, dapat merubah seluruh cipherteks yang ada. Kekuatan ini menujukkan bahwa kriptografi rancangan mempunyai AE yang baik.

0 50 100 150 200 250 300

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

(27)

18

5. Simpulan

Berdasarkan pada pembahasan sebelumnya, perancangan kriptografi block cipher berbasis pada Garis Pertumbuhan dan Pita Pertumbuhan Cangkang Kerang dapat melakukan proses enkripsi dan dekripsi, dan memenuhi syarat 5-tuple dari sebuah kriptosistem, sehingga dapat disebut sebagai sebuah kriptografi.

Dari hasil perbandingan tingkat nilai keacakan antara GPCK dengan AES-128 diperoleh hasil bahwa rancangan kriptografi yang diteliti mempunyai nilai keacakan sebesar 0,7536 dan AES-128 sebesar 1,0284. Hasil dari perbandingan nilai keacakan keduanya adalah 0,3647. Diferensiasi data yang dimiliki pada GPCK sebesar -1,0645 dan untuk AES-128 sebesar -2,3225.

Selain itu, perancangan kriptografi GPCK mampu digunakan sebagai algoritma alternatif untuk mengamankan pesan dan mempunyai Avalanche Effect

yang baik serta berhasil mengacak plainteks dengan bit 0 menjadi cipherteks pada pengujian ekstrim. Oleh karena itu, dapat dikatakan perancangan kriptografi ini sebagai teknik kriptografi dan dapat dijadikan acuan metodologi dalam menciptakan kriptografi simetris.

6. Daftar Pustaka

[1] Liskov, Moses., Ronald L. Rivest, & David Wagner. 2002. Tweakable Block Ciphers. Lecture Notes in Computer Science. Volume 2442, pp. 31-46

[2] Dafid. 2006. Kriptografi Kunci Simetris Dengan Menggunakan Algoritma Crypton. Jurnal Ilmiah STMIK GI MDP. Volume 2 Nomor 3 [3] Selent, Douglas. 2010. Advanced Encryption Standard. InSight: Rivier

Academic Journal. Volume 6, Number 2, Fall 2010

[4] Santoso, H.Y., Wowor, A.D., & Pakereng, Magdalena A.I. 2015.

Perancangan Kriptografi Block Cipher Berbasis pada Alur Clamshell’s Growth Rings. Prociding SeTISI Universitas Kristen Maranatha. Volume 1, hal. 48-53

[5] Menezes, A.J., P.C. van Oorschot, & S.A. Vanstone. 1997. Handbook of Applied Cryptography, CRC Press

[6] Ariyus, Dony. 2006. Kriptografi Keamanan Data dan Komunikasi. Yogyakarta: Graha Ilmu

[7] Munir, Rinaldi, 2006. Kriptografi, Bandung: Informatika

[8] COA:: Conchologist of America, Inc., 1996, Classification of Mollusca,

[Online],

http://www.conchologistsofamerica.org/conchology/classes.asp (diakses tanggal 12 November 2014)

[9] Wilson, Mark., 2015, Wooster’s Fossil of the Week: A lucinid bivalve

from the Middle Jurassic of southern Israel, [Online],

(28)

19

[10] Stinson, D. R., 1995. Cryptography: Theory and Practice. CRC Press, Boca Raton, London, Tokyo

[11] Liwandouw, V.B., & Wowor, A.D., 2015. Desain Algoritma Berbasis Kubus Rubik Dalam Perancangan Kriptografi Simetris. Prociding SeTISI Universitas Kristen Maranatha. Volume 1, hal. 42-47

[12] Project Nayuki, 2014, AES cipher internals in Excel, [Online], http://www.nayuki.io/page/aes-cipher-internals-in-excel (diakses tanggal 15 Januari 2015)

Gambar

Gambar 1  Skema Proses Enkripsi-Dekripsi Pada Block Cipher [7]
Gambar 2 Kerang Bivalvia [9]
Gambar 3 Langkah Penelitian
Gambar 4 Proses Umum Kriptografi Block Cipher GPCK
+7

Referensi

Dokumen terkait

[r]

Yang dimaksud dengan kegiatan kunjungan rumah adalah semua kegiatan yang dilakukan untuk tindakan lanjut kegiatan jenis pelayanan : penyakit dalam, kesehatan anak (Termasuk.

The representative of Association of Brazilian Pepper Producers and Exporters (ABEP) informed that several pesticides which were listed in the IPC proposal are not permitted to

Hasil analisis variabel secara individual dengan menggunakan regresi linear berganda maka diketahui bahwa Debt to Equity Ratio berpengaruh negatif dan tidak signifikan

Memberikan informasi tentang variabel-variabel apa saja yang dapat mempengaruhi niat pembelian ulang, sehingga perusahaan dapat menata ulang strategi untuk

(3) Tahap Analisis dan Interpretasi. Pada tahap ini, model harapan ideal yang telah divalidasikan, diinterpretasikan berdasarkan kerangka teoritik, norma-norma praktis yang

Pelabuhan pangkalan adalah pelabuhan perikanan atau pelabuhan umum di Indonesia yang ditunjuk sebagai tempat kapal perikanan berpangkalan untuk melakukan pendaratan hasil

PENERAPAN STRATEGI WRITING TO LEARN UNTUK MENINGKATKAN KEMAMPUAN KOGNITIF SISWA SMA PADA MATERI GERAK LURUS!. Universitas Pendidikan Indonesia | repository.upi.edu |