Desain Algoritma Berbasis Kubus Rubik dalam Perancangan ...

7
Desain Algoritma Berbasis Kubus Rubik dalam Perancangan Kriptografi Simetris Vania Beatrice Liwandouw 1 , Alz Danny Wowor 2 . Jurusan Teknik Informatika, Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Jl. Diponegoro 57-60, Salatiga 1 [email protected] 2 [email protected] Abstract — Cryptography is an important requirement in securing the data and information. The problem is if cryptography have got cryptanalysis who made it no longer safe. This paper try to designing rubik algorithm in making symmetric key cryptography. The result of the research showed that this design has a good level of randomness. and has been successfully be a cryptosystem that can be used as an alternative in securing data and information. Keywords— Cryptography, Cryptanalysis, Symmetric key, rubik I. PENDAHULUAN Salah satu hal yang penting dalam transfer data atau informasi adalah bagaimana menjaga keamanannya, sehingga dapat sampai ke tujuan dengan aman dan tidak diketahui ataupun dimanipulasi oleh pihak yang tidak berkepentingan. Metode yang sering digunakan untuk mengamankan informasi adalah kriptografi [1]. Metode ini sudah digunakan sejak 4000 tahun SM oleh Caesar, selain itu juga Nazi dengan Enigma-nya digunakan pada Perang Dunia II untuk pengamanan informasi. Sekarang ini, ketika komputer digital berkembang membuat semua data yang diolah maupun ditransfer berbasis digital atau binary digit (bit). Perkembangan ini juga ikut berpengaruh pada kriptografi, sehingga kriptografi berbasis bit (kriptografi modern) yang dirancang dan digunakan untuk pengamanan informasi. Begitu banyak kriptografi modern berjenis block cipher yang digunakan sebagai pengamanan informasi hingga saat ini, misalnya DES (Data Encryption Standard) yang pernah menjadi standart keamanan di Amerika Serikat, tetapi kemudian digantikan oleh AES (Advanced Encryption Standard) pada Mey 2005 [2]. DES tergantikan karena NIST (National Institute of Standard and Technology) mengatakan sudah tidak aman lagi untuk digunakan kerena sudah dapat dipecahkan. Masalah yang sering muncul adalah ketika alat pengamanan informasi yang digunakan sudah tidak aman lagi, dalam artian sudah ada kriptanalisinya. AES yang menggantikan DES juga sudah dapat dipecahkan oleh para kriptografer Israel yaitu Eli Biham dan Adi Shamir [3]. Munir [4], mengatakan bahwa transaksi bank di Indonesia masih menggunakan DES sebagai alat pengamanan, sehingga menggunakan 8 karakter inputan yang terdiri dari PIN (4 atau 6 karakter) dan ditambahkan 4 atau 2 karakter untuk melengkapi proses enkripsi. Oleh karena itu diperlukan suatu kriptografi baru yang dapat menyulitkan kriptanalisis untuk memecahkannya. Berdasarkan hal tersebut, maka penelitian ini merancang suatu kriptografi block cipher yang berbasis pada kubus rubik. Kubus Rubik adalah sebuah permainan puzzle mekanik tiga dimensi yang ditemukan pada tahun 1974 oleh seorang pemahat dan profesor arsitektur dari Hungaria bernama Erno Rubik. Puzzle ini disebut sebagai mainan yang paling banyak terjual di dunia dan sampai tahun 2010, telah lebih dari 350 juta buah Rubik’s Cube yang terjual di seluruh dunia [5]. Kubus rubik standar (3×3×3) merupakan satu dari sekian persoalan kombinatorial yang cukup dikenal karena kerumitannya, dimana terdapat 4.32×10 19 (43 quintilion) konfigurasi berbeda yang mungkin dihasilkan dengan mengacaknya [6], sehingga akan memperbesar ruang kemungkinan untuk menebak semua kunci. Kerumitan dan banyaknya kemungkinan inilah yang menjadi ide dasar dalam penelitian ini untuk perancangan kriptografi simetris yang berbasis kubus rubik. Perancangan sebuah kriptografi simetris yang baru sangat memerlukan penelitian terdahulu yang dapat digunakan sebagai landasan penelitian atau pembanding dengan penelitian yang dilakukan sekarang ini. Selanjutnya diberikan penelitian terkait kriptografi simetris yang telah dilakukan sebelumnya. Menurut Dafid [7], dalam penelitiannya yang berjudul “Kriptografi kunci Simetris dengan Menggunakan Algoritma Crypton” membahas bagaimana menerapkan algoritma crypton dalam menghasilkan sebuah kriptografi. Dalam penelitian tersebut, tiap blok data direpresentasikan ke dalam array berukuran 4×4 byte. Tiap blok data tersebut diproses dengan menggunakan rangkaian putaran transformasi. Tiap putaran transformasi terdiri dari empat tahap yaitu : substitusi byte, permutasi bit, transposisi byte

Transcript of Desain Algoritma Berbasis Kubus Rubik dalam Perancangan ...

Page 1: Desain Algoritma Berbasis Kubus Rubik dalam Perancangan ...

Desain Algoritma Berbasis Kubus Rubik dalam Perancangan Kriptografi Simetris

Vania Beatrice Liwandouw1, Alz Danny Wowor2.

Jurusan Teknik Informatika, Fakultas Teknologi Informasi Universitas Kristen Satya Wacana

Jl. Diponegoro 57-60, Salatiga

[email protected] [email protected]

Abstract — Cryptography is an important requirement in securing the data and information. The problem is if cryptography have got cryptanalysis who made it no longer safe. This paper try to designing rubik algorithm in making symmetric key cryptography. The result of the research showed that this design has a good level of randomness. and has been successfully be a cryptosystem that can be used as an alternative in securing data and information. Keywords— Cryptography, Cryptanalysis, Symmetric key, rubik

I. PENDAHULUAN Salah satu hal yang penting dalam transfer data atau

informasi adalah bagaimana menjaga keamanannya, sehingga dapat sampai ke tujuan dengan aman dan tidak diketahui ataupun dimanipulasi oleh pihak yang tidak berkepentingan. Metode yang sering digunakan untuk mengamankan informasi adalah kriptografi [1]. Metode ini sudah digunakan sejak 4000 tahun SM oleh Caesar, selain itu juga Nazi dengan Enigma-nya digunakan pada Perang Dunia II untuk pengamanan informasi. Sekarang ini, ketika komputer digital berkembang membuat semua data yang diolah maupun ditransfer berbasis digital atau binary digit (bit). Perkembangan ini juga ikut berpengaruh pada kriptografi, sehingga kriptografi berbasis bit (kriptografi modern) yang dirancang dan digunakan untuk pengamanan informasi.

Begitu banyak kriptografi modern berjenis block cipher yang digunakan sebagai pengamanan informasi hingga saat ini, misalnya DES (Data Encryption Standard) yang pernah menjadi standart keamanan di Amerika Serikat, tetapi kemudian digantikan oleh AES (Advanced Encryption Standard) pada Mey 2005 [2]. DES tergantikan karena NIST (National Institute of Standard and Technology) mengatakan sudah tidak aman lagi untuk digunakan kerena sudah dapat dipecahkan.

Masalah yang sering muncul adalah ketika alat pengamanan informasi yang digunakan sudah tidak aman lagi, dalam artian sudah ada kriptanalisinya. AES yang menggantikan DES juga sudah dapat dipecahkan oleh para kriptografer Israel yaitu Eli Biham dan Adi Shamir [3].

Munir [4], mengatakan bahwa transaksi bank di Indonesia masih menggunakan DES sebagai alat pengamanan, sehingga menggunakan 8 karakter inputan yang terdiri dari PIN (4 atau 6 karakter) dan ditambahkan 4 atau 2 karakter untuk melengkapi proses enkripsi.

Oleh karena itu diperlukan suatu kriptografi baru yang dapat menyulitkan kriptanalisis untuk memecahkannya. Berdasarkan hal tersebut, maka penelitian ini merancang suatu kriptografi block cipher yang berbasis pada kubus rubik.

Kubus Rubik adalah sebuah permainan puzzle mekanik tiga dimensi yang ditemukan pada tahun 1974 oleh seorang pemahat dan profesor arsitektur dari Hungaria bernama Erno Rubik. Puzzle ini disebut sebagai mainan yang paling banyak terjual di dunia dan sampai tahun 2010, telah lebih dari 350 juta buah Rubik’s Cube yang terjual di seluruh dunia [5].

Kubus rubik standar (3×3×3) merupakan satu dari sekian persoalan kombinatorial yang cukup dikenal karena kerumitannya, dimana terdapat 4.32×1019 (43 quintilion) konfigurasi berbeda yang mungkin dihasilkan dengan mengacaknya [6], sehingga akan memperbesar ruang kemungkinan untuk menebak semua kunci. Kerumitan dan banyaknya kemungkinan inilah yang menjadi ide dasar dalam penelitian ini untuk perancangan kriptografi simetris yang berbasis kubus rubik.

Perancangan sebuah kriptografi simetris yang baru sangat memerlukan penelitian terdahulu yang dapat digunakan sebagai landasan penelitian atau pembanding dengan penelitian yang dilakukan sekarang ini. Selanjutnya diberikan penelitian terkait kriptografi simetris yang telah dilakukan sebelumnya.

Menurut Dafid [7], dalam penelitiannya yang berjudul “Kriptografi kunci Simetris dengan Menggunakan Algoritma Crypton” membahas bagaimana menerapkan algoritma crypton dalam menghasilkan sebuah kriptografi. Dalam penelitian tersebut, tiap blok data direpresentasikan ke dalam array berukuran 4×4 byte. Tiap blok data tersebut diproses dengan menggunakan rangkaian putaran transformasi. Tiap putaran transformasi terdiri dari empat tahap yaitu : substitusi byte, permutasi bit, transposisi byte

Page 2: Desain Algoritma Berbasis Kubus Rubik dalam Perancangan ...

dan penambahan kunci. Dari hasil pengujian terlihat bahwa baru tiga putaran perbedaan yang terjadi mencapai 60 bit atau hampir setengah dari besar cipherteks(128 bit). Semakin banyak perubahan yang terjadi, akan semakin sulit bagi kriptanalis untuk dapat melakukan kriptanalisis. Bila perubahan bit yang terjadi hanya sedikit, hal ini dapat mempermudah dalam mencari plainteks atau kunci. Penelitian ini menyimpulkan bahwa semakin kompleks metode pengacakan yang digunakan maka semakin sulit untuk membongkar pesan yang terenkripsi ke dalam bentuk aslinya.

Penelitian Nugroho [8] dengan topik “Perancangan dan implementasi algoritma kriptografi kunci simetri Alay-Yielded Octal” mengerjakan pada setiap putaran dilakukan pembangkitan sebuah kunci dengan sumber asal kunci yang telah masuk sepanjang maksimum 26 karakter lalu pemetaan kunci kepada papan kunci dan translasi string pesan menjadi biner, kemudian menjadi senarai bilangan oktal dan pemetaan oktal – keypad. Hasil penelitian ini mengatakan bahwa algoritma tersebut memenuhi kebutuhan coffusion dan diffusion sesuai aturan Stinson. Penelitian ini juga menyimpulkan bahwa masih banyak sisi kehidupan yang bila ditelaah lebih jauh akan bisa menjadikan dunia ini semakin berkembang menuju ke arah yang lebih baik, walaupun dimulai dengan cara yang tidak disukai oleh sebagian orang. “Alay-Yielded Octal” berusaha menunjukkan bahwa selama manusia bisa diam merenung untuk beberapa saat tanpa menghakimi hal yang tidak disetujui, ia pasti bisa menemukan sesuatu yang membangun atau mengambil hikmah dari kejadian yang ada.

Joan Daemen dan Vincent Rijmen dalam buku “The Design of Rijndael”[9] memaparkan desain dari algoritma Rijndael yang kemudian menjadi AES. Rijndael adalah blok cipher yang memiliki sebuah blok variabel dan sebuah blok variabel kunci. Panjang blok dan panjang kunci dapat dipilih secara independen untuk setiap kelipatan 32 bit, dengan minimal 128 bit dan maksimal 256 bit. Secara garis besar Rijndael melakukan XOR antara plainteks dengan cipher key (Tahap Initial Round), lalu dikenakan putaran sebanyak Nr – 1 kali. Pada setiap putaran dilakukan Substitusi byte dengan menggunakan tabel substitusi (SubBytes), pergeseran baris-baris array state secara wrapping (ShiftRows), mengacak data di masing-masing kolom array state (MixColumns), dan melakukan XOR antara state sekarang dengan round key (AddRoundKey). Proses yang dilakukan untuk putaran terakhir adalah SubBytes, Shift Rows, dan AddRoundKey.

Tujuan yang hendak dicapai dalam penelitian ini adalah dapat menghasilkan kriptosistem baru dengan algoritma Kubus Rubik. Tujuan yang kedua, menghasilkan sebuah metodologi terkait perancangan kriptografi simetris yang dapat digunakan sebagai alternatif penggunaan pengamanan data. Manfaat yang bisa dihasilkan melalui penelitian ini adalah memperkaya kajian teoritis terkait dengan penggunaan aplikasi pengamanan data.

Mengacu pada perumusan masalah, maka ruang lingkup permasalahan dibatasi pada perancangan kriptografi

merupakan kriptografi simetris artinya kunci untuk enkripsi dan dekripsi sama dengan panjang 12 karakter, input yang digunakan berupa teks berbasis pada ASCII (American Standard Code for Information Interchange), dan rubik yang digunakan adalah kubus rubik 4×4×4.

II. LANDASAN TEORI Bagian ini menjelaskan beberapa landasan teoritis yang

diperlukan untuk menyelesaikan permasalahan penelitian.

A. Pengertian Kriptografi Secara etimologi, kriptografi (cryptography) berasal dari

bahasa Yunani dan terdiri dari dua suku kata, yaitu “cryptos” yang artinya rahasia (secret) dan “graphein” artinya tulisan (writing). Sehingga kriptografi dapat diartikan sebagai tulisan rahasia (secret writing). Kriptografi kadang diartikan sebagai ilmu dan seni untuk menjaga keamanan pesan. Pengertian yang lain, kriptografi merupakan ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperi kerahasiaan, integritas data, otentikasi entitas dan otentikasi keaslian data [10].

Kriptografi tidak hanya berarti penyediaan keamanan informasi, melainkan sebuah himpunan teknik-teknik. Penggunaan kata “seni” di dalam definisi di atas berasal dari fakta sejarah bahwa pada masa-masa awal sejarah kriptografi, setiap orang mungkin mempunyai cara yang unik untuk merahasiakan pesan. Cara-cara unik tersebut mungkin berbeda-beda pada setiap pelaku kriptografi sehingga setiap cara menulis pesan rahasia pesan mempunyai nilai estetika tersendiri sehingga kriptografi berkembang menjadi sebuah seni merahasiakan pesan [4]. Suatu proses penyandian yang melakukan perubahan sebuah kode (pesan) dari yang bisa dimengerti atau plainteks menjadi sebuah kode yang tidak bisa dimengerti atau cipherteks disebut enkripsi. Sedangkan proses kebalikannya untuk mengubah cipherteks menjadi plainteks disebut dekripsi. Gambar 1, memperlihatkan skema enkripsi dan dekripsi.

Gambar 1. Skema enkripsi dan dekripsi [11]

Algoritma kriptografi disebut juga sebagai cipher yaitu

aturan untuk enkripsi dan dekripsi, atau fungsi matematika yang digunakan untuk enkripsi dan dekripsi. Beberapa cipher memerlukan algoritma yang berbeda untuk enkripsi dan dekripsi.

Konsep matematis yang mendasari algoritma kriptografi adalah relasi anatra dua buah himpunan yaitu himpunan yang berisi elemen-elemen plainteks dan himpunan berisi cipherteks. Proses enkripsi dan dekripsi merupakan fungsi yang memetakan elemen-elemen antara kedua himpunan tersebut.

Misalkan P menyatakan plainteks dan C menyatakan cipherteks, maka fungsi enkripsi memetakan P ke C.

Page 3: Desain Algoritma Berbasis Kubus Rubik dalam Perancangan ...

CPE =)( (1) dan fungsi dekripsi memetakan D ke C,

PCD =)( (2) karena proses enkripsi kemudian dekripsi mengembalikan pesan ke pesan asal, maka berlaku persamaan

PPED =))(( (3)

B. Rubik Rubik’s Cube adalah permainan puzzle mekanik tiga

dimensi yang ditemukan pada tahun 1974 oleh seorang pemahat dan profesor arsitektur dari Hungaria bernama Erno Rubik [5].

Rubik memberi nama hasil temuannya itu Magic Cube, yang kemudian dipatenkan di Hungaria dan dijual pertama kali melalui perusahaan Ideal Toy Corporation. Pada tahun 1980, perusahaan Ideal Toy mengubah nama magic cube tersebut menjadi “Rubik’s Cube”. Dan hingga saat ini, lebih dari 350 juta Rubik’s Cube telah dijual di seluruh dunia.

Sebuah Rubik’s Cube standard (3×3×3) terbentuk dari 26 kubus kecil yang disebut juga cubelets atau cubies. Setiap sisi Rubik’s Cube memiliki 9 permukaan yang terdiri dari enam warna yang berbeda. Standard Cube merupakan model yang paling populer hingga dibuat berbagai macam varian-nya [12] antara lain:

a. Master Cube (4×4×4), diciptakan oleh Péter Sebestény. Ukuran standar adalah 6.5cm³ dan memiliki 7.40×1019 konfigurasi berbeda saat diacak.

b. Professor's Cube (5×5×5), diciptakan oleh Udo Krell. Ukuran standar jenis ini adalah 7cm³ dan memiliki 2.83×1074 konfigurasi berbeda saat diacak.

c. V-Cube 6 (6×6×6), diciptakan oleh Panagiotis Verdes dengan total 152 keping bila dipisah-pisah, karya genius dari Verdes Innovations SA. Ukuran standar yang dikeluarkan adalah 6.9cm³ dan memiliki 1.57×10116 konfigurasi berbeda saat diacak.

d. V-Cube 7 (7×7×7), penciptanya sama seperti V-Cube 6, juga dengan mekanisme yang sama. Ukuran standar jenis ini adalah 7.2cm³ dan memiliki 1.95×10160 konfigurasi berbeda saat diacak.

e. V-Cube 8 (8×8×8), terdiri dari 324 cubies, Saat ini memegang rekor sebagai yang terbesar, terhalus, dan merupakan permainan puzzle paling kompleks di dunia. Ukuran standar jenis ini adalah 8.6cm³ dan memiliki 3.52×10211 konfigurasi berbeda saat diacak.

f. Pocket Cube (2×2×2), disebut juga Mini Cube. Memiliki 3.70×1019 konfigurasi berbeda saat diacak.

Gambar 2. Macam-macam rubik [11].

C. Sistem Kriptografi Stinson [13], menjelaskan sebuah sistem kriptografi

harus memenuhi lima-tuple (five-tuple) yang terdiri dari (P, C, K, E, D) dimana : 1. P adalah himpunan berhingga dari plainteks, 2. C adalah himpunan berhingga dari cipherteks, 3. K merupakan ruang kunci (keyspace), adalah himpunan

berhingga dari kunci, 4. E adalah himpunan fungsi enkripsi CPke →: ,

5. D adalah himpunan fungsi dekripsi PCkd →: , Untuk setiap k ∈ K, terdapat aturan enkripsi ek ∈ E dan

berkorespodensi dengan aturan dekripsi dk ∈ D . Setiap ek : P → C dan dk : C→ P adalah fungsi sedemikian hingga dk (ek (x)) = x untuk setiap plainteks x ∈ P.

D. Menghitung Keacakan Asumsi yang digunakan untuk menghitung tingkat

keacakan dengan melihat rasio dari hasil selisih bilangan plainteks dan cipherteks berbanding bilangan plainteks, yang secara umum diberikan pada Persamaan (4). Semakin besar rasio yang diperoleh maka semakin tinggi tingkat keacakan yang dihasilkan.

bpbcbpAc )( −= (4)

III. METODE PENELITIAN Bagian ini membahas tentang langkah-langkah (tahapan)

yang dilakukan untuk menyelesaikan permasalahan penelitian. Secara lengkap tahapan penelitian diberikan pada Gambar 1.

Gambar 3. Tahapan Penelitian.

Penjelasan lengkap terkait dengan langkah-langkah (tahapan) yang telah dan akan dilakukan beserta juga dengan hasil (output) yang sudah/akan diperoleh diberikan pada Tabel. I berikut ini.

TABEL I

PENJELASAN TAHAPAN PENELITIAN

Tahapan Aktifitas Output Tahap 1 Mengidentifikasi dan

merumuskan masalah Rumusan permasalahan yaitu

Page 4: Desain Algoritma Berbasis Kubus Rubik dalam Perancangan ...

melalui kajian pustaka yang bersumber pada buku, jurnal yang relevan. Menyusun kerangka teori terkait dengan masalah yang telah dirumuskan.

bagaimana membuat kriptografi yang berbasis bagaimana merancang algoritma berbasis pada Rubik Memperoleh suatu rancangan kerangka teori yang telah disesuaikan dengan rubik.

Tahap 2 Kajian Pustaka Memperoleh pustaka, baik dari buku, jurnal maupun narasumber yang mengetahui tentang kriptografi berbasis rubik

Tahap 3 Observasi Proses Rubik

Mengetahui cara kerja kubus rubik 8×8×8.

Tahap 4 Perancangan Algoritma Perancangan Kriptografi Pengujian Kriptosistem

Gambar 4. Pengujian

Kriptosistem

Menghasilkan algoritma Menghasilkan kriptografi Mengetahui kekuatan kriptografi yang telah dirancang serta menghasilkan sebuah sistem kriptografi yang telah memenuhi aturan Stinson.

Tahap 5 Penulisan Laporan Menghasilkan laporan penelitian dalam bentuk jurnal.

Setiap langkah-langkah atau tahapan secara jelas telah

ditunjukkan pada Tabel 1. Tetapi yang menjadi catatan pada Langkah 4 adalah pengujian sebuah sistem kriptografi berdasarkan aturan Stinson. Rancangan kriptografi berbasis pada rubik memiliki begitu banyak proses yang perlu dilakukan, dalam hal ini ruang plainteks, ruang kunci, ruang cipherteks dan juga proses enkripsi maupun dekripsi. Setelah algortima berhasil dirancang, maka selanjutnya perlu dilakukan pengujian 5-tuple untuk memenuhi sebuah kriptosistem. Pengujian ini ditunjukkan pada Gambar 4.

Rancangan kriptografi berbasis kubus rubik secara umum ditunjukkan pada Gambar 5. Pada bagan tersebut dilengkapi dengan Proses A dan Proses B. Pada proses A dilakukan XOR antara blok bit plainteks dan blok bit kunci. Sedangkan proses B dilakukan transposisi blok bit, setelah

diperoleh hasil dari proses rubik. Pada proses enkripsi memerlukan inputan n-plainteks dan kunci sebanyak 12 karakter (apabila kunci kurang dari 12 karakter maka akan ditambahkan karakter spasi atau 32 dalam ASCII). Sedangkan pada proses dekripsi, dilakukan sebaliknya dengan inputan n-cipherteks dan juga kunci yang sama pada proses enkripsi.

Gambar 5. Proses Enkripsi dan Dekripsi

IV. PEMBAHASAN Penelitian ini merancang kriptografi simetris yang

berbasis pada kubus rubik 4×4×4. Oleh kerena itu, bagian yang pertama ini akan dipaparkan secara umum proses enkripsi dan dekripsi beserta contohnya. A. Proses Enkripsi

1. Plainteks diinput sebanyak n karakter dimana +∈ Znn ;48| kemudian dikonversi ke dalam kode

ASCII dan disusun ke dalam blok blok bit. Dimana untuk setiap blok bit terdiri dari 6 bit, secara umum diberikan pada Persamaan (5).

},,,{ 38421 xxxP != (5)

Jika P tidak memenuhi +∈ Znn ;48| , maka harus menambahkan karakter 32 (spasi dalam kode ASCII) hingga syarat terpenuhi.

2. Kunci dirancang sebanyak 12 karakter, yang secara umum diberikan sebagai berikut

}.12

,,2

,1

{ kkkK != (6)

Ø Untuk memenuhi satu proses enkripsi kunci harus diregenerasi sebanyak empat kali untuk memenuhi jumlah karakter yang sama (48 karakter).

Ø Kunci ke-2 merupakan regenerasi dari kunci ke-1 yang mengalami pergeseran 1 bit ke kiri. Proses yang sama untuk regenerasi kunci ke-3 dan ke-4 secara berturut-turut dilakukan pergeseran 2 bit dan 3 bit ke kiri dari kunci ke-1.

3. Selanjutnya, blok bit plainteks di XOR dengan blok bit kunci. Dimana secara keseluruhan jumlah bit kunci yang telah diregenerasi memenuhi

}384,,2,1{ yyyK != (7)

Page 5: Desain Algoritma Berbasis Kubus Rubik dalam Perancangan ...

Setiap bit yang diperoleh dari Persamaan (5) dioperasikan dengan setiap bit pada Persamaan (7). Secara umum diperoleh

.384,,1; !=⊕= iik

ip

ic (8)

4. Berikutnya, untuk setiap bit ic dalam blok bit

64,,1; !=jjr diposisikan ke dalam kubus kecil

dengan urutan seperti yang ditunjukkan pada Gambar 6.

Gambar 6. Proses Awal Rubik Rancangan kriptografi ini menggunakan rubik 4×4×4 sehingga membutuhkan 64 kubus kecil. Sehingga

}64,,2,1{ rrrR != (9)

Dimana untuk setiap kubus kecil berisi 6 bit, seperti pada Persamaan (9).

},,,{ 6211 cccr != },,,{ 12872 cccr != (10)

!

}384

,,380

,379

{64

cccr !=

5. Terjadi proses pengacakan pada kubus rubik, dimana rubik dapat diputar secara vertikal dan horizontal. Seperti yang dijelaskan pada bagian sebelumnya bahwa ketersediaan konfigurasi berbeda pada rubik 4×4×4 sebanyak 7.40×1019

sehingga memungkinkan pengguna bebas untuk menentukan arah perputaran pada setiap prosesnya.

6. Langkah selanjutnya adalah pengambilan bit dari rubik sebanyak 8 bit untuk setiap blok bit, sehingga diperoleh 48 blok bit.

7. Blok bit hasil proses rubik dikenakan proses B yaitu proses transposisi blok bit yang dilakukan secara acak, kemudian di konversi ke bilangan ASCII dan diperoleh cipherteks.

Untuk memenuhi kriptosistem berdasarkan aturan Stinson yaitu pada bagian enkripsi dan dekripsi maka diberikan dua kasus dengan plainteks yang berbeda. Kasus yang pertama adalah mengenkripsi plainteks “SEGERA KIRIM KE EMAIL SAYA, [email protected] dengan kunci FTI SALATIGA”. Kasus ini mewakilkan variasi karakter berupa huruf kapital, huruf kecil, angka, dan simbol.

Gambar 7. Grafik Hasil Kasus 1

Keterwakilan variasi karakter berakibat pada variasi bit yang cukup banyak. Kondisi ini dapat dipakai sebagai ukuran untuk melihat kemampuan rancangan dalam sebuah sistem kriptografi.

Berdasarkan proses pada Gambar 5 dan langkah-langkah yang telah diberikan sebelumnya, maka cipherteks dari kasus 1 adalah L¾GVT„CANLwfÂ&€SOHNULû²l}EMSUBET Xw.LFWþ³ïCANCANÊÈ£CREOTF³V͇'ˆ÷éDLE€.

Hasil proses enkripsi dari contoh pertama seperti yang ditunjukkan pada Gambar 7.

Kasus yang kedua dipilih plainteks ZZZZZZZZZZ ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ. Pemilihan huruf Z sebagai karakter tunggal dalam plainteks dikarenakan Z ekuivalen dengan 01011010, dimana hasil ekuivalensinya merupakan bit yang simetris lipat terhadap 4 bit. Secara umum dapat dikatakan untuk setiap n-karakter akan memenuhi banyaknya bit yang simetris dengan aturan ½ × m × 8 = 4m (m = banyak karakter). Dengan asumsi sifat simetris bit tersebut, maka plainteks dengan karakter Z digunakan sebagai kasus 2 untuk melihat kemampuan algoritma dalam mengenkripsi sebuah pesan.

Berdasarkan proses pada Gambar 5, maka diperoleh cipherteks untuk Kasus 2 adalah 9øBEL|߃™dDC1›fÆDL E&ïŠEĺ3;ÌL»ÌD1u )o‘:ØÅEM'æR™bfDC1n¤™[. Hasil proses enkripsi kasus 2 ditunjukkan pada Gambar 8.

Gambar 8. Grafik Hasil Kasus 2

Pada gambar 7 dan 8 terlihat bahwa hasil yang diberikan menunjukkan pola perubahan yang cukup acak dari plainteks ke chiperteks. Bahkan untuk plainteks yang sama menghasilkan chiperteks yang berbeda dan tidak terjadi perulangan.

B. Proses Dekripsi Perancangan kriptografi ini, adalah kriptografi simetris

sehingga proses dekripsi masih menggunakan kunci yang sama dengan proses enkripsi seperti yang telah dijelaskan

0  

50  

100  

150  

200  

250  

300  

Plainteks   Chiperteks  

0  

50  

100  

150  

200  

250  

300  

Plainteks   Chiperteks  

Page 6: Desain Algoritma Berbasis Kubus Rubik dalam Perancangan ...

pada Gambar 5. Sebagai contoh kita akan mendekripsi chiperteks yang diperoleh dari kasus 2 pada proses enkripsi sebelumnya. Hasil dekripsi ditunjukkan pada Gambar 9.

Gambar 9. Grafik Hasil Dekripsi Kasus 2

Mengetahui tingkat keacakan sebuah teknik kriptografi

sangat diperlukan untuk melihat korespondensi satu-satu antara plainteks dan cipherteks. Apabila cipherteks ditemukan polanya (berpola) maka kriptografi tersebut akan mudah dipecahkan oleh kriptanalisis. Analisis yang dapat dipakai untuk melihat korespondensi tersebut, hubungannya dilakukan seperti Persamaan (4).

Untuk melihat bagaimana pola keacakan yang dihasilkan dari rancangan ini, penulis membandingkan dengan kriptografi AES. Dipilihnya AES karena teknik tersebut adalah salah satu kriptografi simetris yang memiliki pola keacakan yang baik. Hasil perbandingan keacakan dari kriptografi yang dirancang (rancangan) dengan AES ditunjukkan pada Gambar 10.

Gambar 10. Grafik Perbandingan AES dan Rancangan

Pada Gambar 10, secara visual AES memetakan

cipherteks pada range (daerah hasil) dalam interval yang lebih kecil bila dibandingkan dengan range dari kriptografi yang dirancang. Hal ini tergambarkan dengan hasil rancangan tidak hanya di bagian atas plainteks, tetapi berada juga di bawah plainteks.

Hasil rata-rata tingkat keacakan AES untuk plainteks pada kasus 1 sebesar 1,105678431. Sedangkan rata - rata tingkat keacakan untuk kriptografi berbasis rubik sebesar 1,189267463. Sehingga perbedaan tingkat keacakan dengan AES sebesar 7,56%.

Pada plainteks kasus 2, hasil rata-rata tingkat keacakan AES sebesar 0,704398148. Sedangkan rata-rata tingkat keacakan untuk kriptografi berbasis rubik sebesar 0,680092593. Sehingga perbedaan tingkat keacakan dengan AES sebesar 3,45%.

Selanjutnya membuktikan rancangan kriptografi sebagai sebuah kriptosistem dengan memenuhi 5 tuple P, C, K, E, D. P adalah himpunan berhingga dari plainteks. Dalam

rancangan ini menggunakan 256 karakter ASCII maka himpunan plainteks adalah himpunan berhingga. C juga merupakan himpunan berhingga dari cipherteks karena akan berada pada 256 karakter ASCII. K merupakan ruang kunci (keyspace), adalah himpunan berhingga dari 256 karakter ASCII. Untuk setiap 𝑘  𝜖  𝑲, terdapat aturan enkripsi 𝑒𝑘  𝜖  𝑬  dan berkorespodensi dengan aturan dekripsi 𝑑𝑘  𝜖  𝑫.  Setiap 𝑒𝑘   ∶   𝑷   ⟶   𝑪dan 𝑑𝑘   ∶   𝑪   ⟶   𝑷   adalah fungsi sedemikian hingga 𝑑𝑘(𝑒𝑘(𝑥))  =  𝑥  untuk setiap plainteks 𝑥  𝜖  𝑷. Kondisi ke-4, terdapat kunci yang dapat melakukan proses enkripsi sehingga merubah plainteks menjadi cipherteks. Dan dapat melakukan proses dekripsi yang merubah cipherteks ke plainteks. Untuk tuple E dan D secara khusus telah terwakilkan pada kasus 1 dan kasus 2. Karena memenuhi ke-lima tuple dari Stinson, maka desain algoritma berbasis rubik 4×4×4 dengan kunci simetris merupakan sebuah sistem kriptografi.

V. KESIMPULAN Berdasarkan hasil dan pembahasan, dapat disimpulkan

bahwa rancangan kriptografi berbasis kubus rubik 4×4×4 merupakan sebuah kriptosistem karena memenuhi aturan 5-tuple dari Stinson. Selain itu dari percobaan tingkat keacakan untuk plainteks dengan karakter berbeda diperoleh tingkat keacakan rancangan lebih baik 7,56% daripada tingkat keacakan AES. Sedangkan untuk plainteks dengan karakter yang sama tingkat keacakan AES lebih baik 3,45% dari tingkat keacakan rancangan. Berdasarkan hal tersebut dapat dikatakan bahwa desain algoritma berbasis rubik memiliki tingkat keacakan yang baik.

DAFTAR PUSTAKA [1] Simarmata, Janner. 2005. Pengamanan Sistem Komputer.

Yogyakarta: Andi. [2] Kromodimoeljo, Sentot, 2010, Teori dan Aplikasi Kriptografi,

Jakarta: SPK IT Consulting. [3] Barkan, E. & Biham, E., 2006, In How Many Ways Can You Write

Rijndael, Advances in Crytology, proceedings of Asiacrypt 2002, Laecture Notes in Computer Science 2501, Springer-Verlag, pp 160-175.

[4] Munir, Rinaldi, 2006, Kriptografi, Bandung : Informatika. [5] Rubik’s Official Website, Rubik’s World Sube Fact,

http://www.rubiks.com/world/ cube_facts.php (Diakses pada tanggal 28 Februari 2014).

[6] Richard E. Korf, Larry A. Taylor, Pruning Duplicate Nodes in Depth-First Search, Proceedings of the Eleventh National Conference on Artificial Intelligence, Washington, D.C, Jul 1993, pp. 756-761.

[7] Dafid, “Kriptografi Kunci Simetris Dengan Menggunakan Algoritma Crypton,” Jurnal Ilmiah STMIK MDP Palembang , vol. 2, no. 3, pp. 24-27, 2006.

[8] R. Purwoko Cahyo Nugroho, “Perancangan dan Implementasi Algoritma Kriptografi Kunci Simetri Alay-Yielded Octal”, Makalah IF3058 Kriptografi, 2012/2013.

[9] Daemen, J. & Rijmen, V., 2002, The Disgn of Rijndael : AES-The Advanced Encryption Standard, Berlin: Springer-Verlag.

[10] Menezes, Alfred J., van Oorschot, Paul C., dan Vanstone, Scott A., 1997, Handbook of Applied Cryptography, Florida: CRC Press.

[11] Zimmermann, Phil, 2003, An Introduction to Cryptography, California: PGP Corporation.

0  

50  

100  

150  

200  

250  

300  

Chiperteks   Plainteks  

0  

50  

100  

150  

200  

250  

300  

PLAINTEKS   AES   RANCANGAN  

Page 7: Desain Algoritma Berbasis Kubus Rubik dalam Perancangan ...

[12] V-CUBE™ Verdes Innovations S.A. Official Web Page, https://www.v-cubes.com/products/v-classics (Diakses pada tanggal 28 Februari 2014).

[13] Stinson, D.R., 1995, Cryptography Theory and Practice, Florida: CRC Press, Inc.

[14] Schneier, Bruce, 1996, Applied Cryptography, Second Edition, New York: John Wiley and Sons.

[15] Forouzan, Behrouz A., 2008, Crytography and Network Security, New York: McGraw-Hill.