Institutional Repository | Satya Wacana Christian University: Perancangan Kriptografi Block Cipher Menggunakan Pola Formasi Tari Reog Ponorogo
Perancangan Kriptografi Block Cipher Menggunakan Pola Formasi Tari Reog Ponorogo
Artikel Ilmiah
Peneliti :
Yogie Aldy Rinaldi (672013177)
Magdalena A. Ineke Pakereng, M.Kom.
Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
September 2017
Perancangan Kriptografi Block Cipher Menggunakan Pola Formasi Tari Reog Ponorogo
Artikel Ilmiah
Diajukan Kepada
Fakultas Teknologi Informasi
Untuk Memperoleh Gelar Sarjana Komputer
Peneliti :
Yogie Aldy Rinaldi (672013177)
Magdalena A. Ineke Pakereng, M.Kom.
Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
September 2017
Perancangan Kriptografi Block Cipher
Menggunakan Pola Formasi Tari Reog Ponorogo
1 2 Yogie Aldy R, Magdalena A. Ineke PakerengFakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Abstract
In this research, the design of block cipher cryptography using the pattern of reog
ponorogo dance formation. Based on the result of 24 pattern combinations, the pattern
with the best correlation value will be used in the design of encryption and decryption
process. This cryptography is designed using 4 20-round processes, where the 2nd and
4th processes are transformed using the S-Box table to obtain more random Ciphertext.
Testing is also done using Avalanche Effect and Correlation value where the character
changes reach 52.5%, so it can be used in securing the data.Keywords: Cryptography, Block Cipher,
24 Combination, Encryption,
Decryption, Pattern of Reog Ponorogo Formation, Correlation, Avalanche effect
Abstrak
Pada penelitian ini dilakukan perancangan kriptografi block cipher menggunakan pola
formasi tari reog ponorogo. Berdasar hasil 24 kombinasi pola didapatkan pola dengan
nilai korelasi terbaik yang akan digunakan dalam perancangan proses enkripsi dan
dekripsi. Kriptografi ini dirancang menggunakan 4 proses 20 putaran, dimana proses ke-2
dan ke-4 ditransformasikan menggunakan tabel S-Box untuk mendapatkan Ciphertext
yang lebih acak. Pengujian juga dilakukan menggunakan Avalanche Effect dan nilai
Korelasi dimana terjadi perubahan karakter mencapai 52,5%, sehingga dapat digunakan
dalam mengamankan data.
Kata Kunci: Kriptografi, Block Cipher, 24 Kombinasi, Enkripsi, Dekripsi, Pola Formasi
Tari Reog Ponorogo, Korelasi, Avalanche effect 1)
Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi, Universitas
2) Kristen Satya Wacana. Staff Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana.1. Pendahuluan Teknik kriptografi yang sudah ada telah banyak dipecahkan, karena itu
diperlukan teknik kriptografi baru. Algoritma pada perancangan kriptografi dalam penelitian yang dilakukan adalah algoritma berbasis Block Cipher 64 bit dengan pola formasi tari reog ponorogo yang dikombinasikan dengan tabel substitusi atau S-Box. Block Cipher adalah algoritma enkripsi yang membagi plaintext yang akan dikirimkan dengan jumlah bit tertentu (block), dan setiap block akan dienkripsi dengan proses yang sama untuk menghasilkan ciphertext. Sedangkan pola formasi tari reog ponorogo digunakan sebagai pola transposisi untuk pengambilan maupun pemasukan bit plaintext pada setiap blok matriks. Plaintext akan dimasukkan ke dalam blok-blok dimana setiap blok berjumlah 64 bit, terdapat 24 (dua puluh empat) putaran kombinasi dan 20 (dua puluh) putaran enkripsi dan dekripsi dimana setiap putaran terdapat 4 (empat) proses untuk proses plaintext maupun proses kunci (key). Hasil dari proses plaintext akan di-XOR dengan kunci untuk menghasilkan Ciphertext yang kemudian byte-nya akan dikombinasikan dengan S-Box untuk menghasilkan Avalanche Effect yang besar. Berdasarkan latar belakang masalah maka dilakukan penelitian yang membahas tentang perancangan kriptografi block cipher menggunakan pola formasi tari reog ponorogo.
2. Tinjauan Pustaka
Penelitian-penelitian yang membahas tentang block cipher dan menjadi acuan dalam penelitian yang dilakukan dijelaskan sebagai berikut, penelitian pertama adalah Perancangan Kriptografi Block Cipher Berbasis Pola Ikan Berenang, yang membahas tentang perancangan kriptografi baru menggunakan prinsip S-BOX, iterated cipher dan jaringan fiestel yang dilakukan sebanyak 15 (lima belas) putaran adalah 0.217007 dan diuji menggunakan avalanche effect dan nilai terkecil adalah 9.375 dan nilai terbesar adalah 53.12 [1].
Penelitian kedua adalah Perancangan Kriptografi Block Cipher Menggunakan Pola Batik Tasikmalaya, penelitian ini menggunakan 24 (dua puluh empat) putaran kombinasi dan 5 (lima) putaran proses enkripsi dan dekripsi menghasilkan pengujian avalanche effect yang dilakukan pun menunjukkan bahwa proses enkripsi di setiap putaran memiliki perubahan yang mencapai 50,78125% [2].
Berdasarkan penelitian-penelitian yang sudah ada terkait perancangan kriptografi simetris block cipher maka dilakukan penelitian tentang perancangan kriptografi block cipher menggunakan pola formasi tari reog ponorogo. Pada penelitian ini proses kombinasi 24 (dua puluh empat) putaran, setelah mendapatkan nilai korelasi terendah dilakukan proses enkripsi dan dekripsi dimana setiap proses tersebut dilakukan dalam 20 (dua puluh) putaran dimana setiap putaran terdapat 4 (empat) proses plaintext maupun proses kunci. Hasil dari proses plaintext akan di-XOR dengan kunci untuk menghasilkan ciphertext yang kemudian byte-nya akan dikombinasikan dengan S-Box untuk penelitian ini adalah S-Box algoritma AES (Advanced Encryption Standart). Skema proses enkripsi dan dekripsi block cipher secara umum ditunjukkan pada Gambar 1.
Gambar 1 Skema Proses Enkripsi-Dekripsi Pada Block Cipher
Misalkan blok plaintext (P) yang berukuran n bit
, , , P p p p 1 2 n
(1) Blok ciphertext (C) maka blok C adalah
C c , c , , c
(2)
n 1 2 Kunci (K) maka kunci adalah K k , k , , k
(3)
n 1 2 Sehingga proses enkripsi adalah E P C k
(4) Proses dekripsi adalah
D C P (C) = P
(5) k Sebuah system kriptografi terdiri dari 5-tuple (Five Tuple) (P,C,K,E,D) yang memenuhi kondisi :
1. P adalah himpunan berhingga dari plaintext.
2. C adalah himpunan berhingga dari ciphertext.
3. K merupakan ruang kunci (Keyspace), himpunan berhingga dari kunci.
4.
k E dan berkorespodensi
Untuk setiap k K, terdapat aturan enkripsi e
k k
dengan aturan dekripsi d D. Setiap ek : P → C dan d : C → P adalah fungsi sedemikian hingga d k (e k (x)) = x untuk setiap plaintext x ∊P. [3]
Dalam pengujian menggunakan korelasi yang merupakan teknik statistik untuk mengukur kekuatan hubungan antar dua variabel dan untuk mengetahui bentuk hubungan antara dua variabel tersebut dengan hasil yang bersifat kuantitatif. Kekuatan hubungan antar dua variabel itu disebut dengan koefisien korelasi. Untuk menentukan kuat atau lemahnya hubungan antara variabel yang diuji, dapat digunakan Tabel 1. Koefisien korelasi yang ditunjukkan pada Tabel 1 berguna untuk menunjukkan tingkat hubungan antara data awal dan hasil enkripsi, jika nilai korelasi mendekati 0 maka memiliki tingkat hubungan yang rendah dan menunjukkan perubahan yang signifikan antara plaintext dan ciphertext.
Tabel 1 Klasifikasi Koefisien Korelasi [4]
Interval Koefisien Tingkat Hubungan
0,00 Sangat Rendah
- – 0,199
0,20 Rendah
- – 0,399
0,40 Sedang
- – 0,599
0,60 Kuat
- – 0,799
Sangat Kuat
0,80 – 1,000 3. Metode Penelitian
Tahapan penelitian yang digunakan dalam penelitian ini dapat dibagi kedalam 5 (lima) tahapan yaitu : (1) tahap identifikasi masalah, (2) tahap pengumpulan data, (3) tahap perancangan kriptografi, (4) tahap pengujian kriptografi, (5) tahap penulisan artikel.
Identifikasi Masalah
Pengumpulan Data
Perancangan Kriptografi
Pengujian Kriptografi
Penulisan Artikel
Gambar 2 Tahapan Penelitian
Gambar 2 menjelaskan Tahapan penelitian dijelaskan sebagai berikut.Identifikasi masalah, pada tahapan ini dilakukan analisis terhadap permasalahan yang ada, terkait dengan proses perancangan kriptografi block cipher 64 bit menggunakan pola formasi tari reog ponorogo. Tahap pengumpulan data, dalam tahapan ini dilakukan pengumpulan data serta sumber mengenai pembahasan terkait penelitian tersebut. Tahap perancangan kriptografi, pada tahap ini dilakukan perancangan kriptografi block cipher menggunakan pola formasi tari reog ponorogo untuk pembuatan kunci, proses enkripsi dan dekripsi yang dikombinasikan dengan XOR. Pengujian kriptografi, pada tahap ini dilakukan pengujian kriptografi yang telah dibuat pada 24 (dua puluh empat) kombinasi dan diambil nilai korelasi terendah, nilai korelasi terendah digunakan dalam proses pembuatan enkripsi dan dekripsi yang menghasilkan avalanche effect terkecil dan terbesar. Tahap penulisan artikel, dalam tahap terakhir ini dilakukan penulisan artikel mengenai proses perancangan kriptografi block cipher menggunakan pola formasi tari reog ponorogo.
Dalam perancangan kriptografi block cipher menggunakan formasi tari reog ponorogo ini dilakukan 2 (dua) proses yaitu proses enkripsi dan proses dekripsi dimana masing-masing proses memiliki 20 (dua puluh) putaran yang terdapat 4 (empat) proses.
Gambar 3 Proses Enkripsi
Gambar 3 menjelaskan proses enkripsi. Langkah-langkah proses enkripsi dijelaskan sebagai berikut :
1. Melihat tabel korelasi yang terbaik.
2. Menyiapkan plaintext dan kunci.
3. Mengubah plaintext dan kunci menjadi biner dalam tabel ASCII.
4. Dalam pembuatan enkripsi melewati 4 (empat) putaran.
5. Putaran pertama plaintext 1 diproses dengan pola formasi tari reog ponorogo dan di-XOR dengan kunci 1 menghasilkan ciphertext 1.
6. C1 ditransformasikan dengan pola menjadi P2 dan di-XOR dengan K2 menghasilkan ciphertext 2.
7. P2 melakukan transformasi dengan pola formasi tari reog ponorogo dan dilakukan proses perumusan menggunakan tabel substitusi S-Box kemudian baru di-XOR dengan K2 sehingga menghasilkan plaintext.
8. C2 ditransformasikan dengan pola formasi tari reog ponorogo menjadi P3 dan di-XOR dengan K3 menghasilkan ciphertext C3.
9. P4 melakukan transformasi dengan pengambilan pola formasi tari reog ponorogo.
10. Proses perumusan dengan menggunakan tabel S-Box, dengan proses alur yang sama seperti yang dilakukan pada Gambar 3 secara berulang hingga ke putaran 20 (dua puluh).
Gambar 4 Proses Dekripsi
Gambar 4 menjelaskan langkah-langkah proses pemasukan dekripsi dijelaskan sebagai berikut :
1. C4 didapatkan atau diambil dari tabel biner input dekripsi.
2. K4 didapatkan dari enkripsi K4 pada proses enkripsi 20 (dua puluh).
3. C4 dan K4 di-XOR menjadi P4 kemudian dirumuskan dalam tabel S-Box menjadi tabel P4 dan K4.
4. P4 dan K4 diinputkan dari bilangan biner yang sudah dirumuskan sesuai pola formasi tari reog ponorogo.
5. Proses tersebut dilakukan berulang sampai proses P1 dan K1.
6. Tetapi pada proses P1 dan K1 dirumuskan menjadi ciphertext diambil dari P1.
7. Gambar 4 proses dan alur dilakukan secara berulang sampai dekripsi 20 (dua puluh).
Dalam bagian ini akan dibahas algoritma perancangan kriptografi block
cipher menggunakan pola formasi tari reog ponorogo secara lebih detail. Pola
formasi tari reog ponorogo digunakan sebagai pola pengambilan bit dalam plaintext dan kunci.
Gambar 5 Tari Reog Ponorogo [4]
Gambar 5 menjelaskan pola formasi tari reog ponorogo digunakan sebagai pola pengambilan pada setiap bit dalam matriks plaintext.
Gambar 6 Pola Berbasis Tari Reog Ponorogo
Gambar 6 menjelaskan pola (A-B-C-D) pola formasi tari reog ponorogo, pola-pola tersebut menunjukkan cara pengambilan yang berbeda berdasarkan apa yang sudah digambarkan seperti pola pada Gambar 6, setelah melewati beberapa proses pengujian mencari nilai korelasi terbaik. Pengujian menggunakan contoh
plaintext AldYpL3n menggunakan kunci G4raMb0y.
Berdasarkan hasil pengujian maka didapatkan nilai korelasi terbaik yang selanjutnya akan digunakan sebagai acuan pada proses enkripsi dan dekripsi.
Tabel 2 Rata-Rata Korelasi
1 A-B-C-D
13 C-A-B-D 0,710926686 0,081527061
2 A-B-D-C
14 C-A-D-B 0,261434554 0,480918213
3 A-C-B-D 0,107479787
15 C-B-A-D 0,070337886
4 A-C-D-B
16 C-B-D-A 0,43010085 0,40729696
5 A-D-B-C
17 C-D-A-B 0,669095426 0,373899988
6 A-D-C-B
18 C-D-B-A 0,208069305 0,279427398
7 B-A-C-B 0,363171866
19 D-A-B-C 0,182662019
8 B-A-D-C 0,117298883
20 D-A-C-B 0,307187332
9 B-C-A-D 0,221093131
21 D-B-A-C 0,274668677
10 B-C-D-A
22 D-B-C-A 0,597702536 0,137385495
11 B-D-A-C
23 D-C-A-B 0,108987048 0,321318643
12 B-D-C-A
24 D-C-B-A 0,721764051 0,502182916
Pada Tabel 2 menjelaskan hasil kombinasi pola dan mendapatkan nilai korelasi terbaik pada kombinasi pola C-B-A-D sebesar 0,070337886, yang ditandai dengan huruf warna merah. Kombinasi C-B-A-D akan digunakan dalam proses enkripsi hingga putaran ke 20 (dua puluh) untuk menghasilkan ciphertext.
Perancangan kriptografi ini dilakukan sebanyak 20 (dua puluh) putaran dan setiap putaran mempunyai 4 (empat) proses untuk mendapatkan hasil akhir yaitu ciphertext. Proses plaintext dan kunci diubah ke dalam bentuk ASCII kemudian dirubah ke dalam kolom matriks 6x6 dan pola pengambilan menggunakan pola formasi tari reog ponorogo. Mengubah plaintext dan kunci akan melewati 4 (empat) proses dalam setiap putaran, plaintext 1 (P1) diproses dengan pola formasi tari reog ponorogo dan di-XOR dengan kunci 1 menghasilkan ciphertext 1 (C1), C1 ditransformasikan dengan pola menjadi P2 dan di-XOR dengan K2 menghasilkan C2, (P2) melakukan transformasi dengan pola formasi tari reog ponorogo dan dilakukan proses perumusan menggunakan tabel substitusi S-Box kemudian baru di-XOR dengan K2 sehingga menghasilkan
plaintext, C2 ditransformasikan dengan pola menjadi P3 dan di-XOR dengan K3
menghasilkan C3 kemudian (P4) melakukan transformasi proses perumusan menggunakan tabel substitusi S-Box lalu di-XOR dengan K4, melalui perumusan menghasilkan P4, plaintex (4) dengan alur proses yang sama dengan putaran pertama, dan tahapan tersebut akan berlanjut sampai putaran ke 20 (dua puluh) yang menghasilkan ciphertext.
Untuk menjelaskan secara detail proses pemasukan bit dalam matriks maka diambil proses 1 pada putaran 1 sebagai contoh. Misalkan angka 1 merupakan inisialisasi setiap bit yang merupakan hasil konversi plaintext maka urutan bit adalah sebagai berikut 1,2,3,4,.......64
Gambar 7 Proses Pemasukan Kunci dan Plaintext
Gambar 7 menjelaskan proses pemasukan bit karakter plaintext dan kunci dimasukkan secara berurutan dengan mengisi blok plaintext terlebih dahulu lalu kemudian blok kunci sesuai arah panah yang dijelaskan.
Gambar 8 Pola Pengambilan dan Transpose Plaintext dan Kunci Proses 1
Gambar 8 menjelaskan pola pengambilan dan transpose plaintext dan kunci. Bit diambil setiap 8 bit mengikuti urutan angka (1,2,3,4,...8), pada Gambar 8 dengan urutan sesuai nomor. Kemudian dimasukkan kembali ke dalam kolom matriks baris pertama dari kiri ke kanan. Dari proses tersebut menghasilkan P1 dan K1, kemudian K1 di-XOR menghasilkan C1.
Gambar 9 Pola Pengambilan dan Transpose Plaintext dan Kunci Proses 2
Gambar 9 menjelaskan pola pengambilan dan transpose plaintext dan kunci. Bit diambil setiap 8 bit mengikuti urutan angka (1,2,3,4,...8) pada Gambar 9 dengan urutan sesuai nomor, kemudian dimasukkan kembali ke dalam kolom matriks baris pertama dari kiri ke kanan. Dengan alur proses plaintext menggunakan tabel S-Box kemudian ditransformasikan menjadi P2 dan K2. Setelah itu dimasukkan kembali ke dalam baris matriks kolom pertama dari bawah ke atas, baris kedua dari atas ke bawah, dan untuk kolom selanjutnya mengikuti urutan angka pada Gambar 9. Setelah itu P2 dan K2 di-XOR menghasilkan C2.
Gambar 10 Pola Pengambilan dan Transpose Plaintext dan Kunci Proses 3
Gambar 10 menjelaskan proses pola transpose plaintext dan kunci proses 3, hasil dari XOR C2 yang ditransformasikan ke dalam P3 diambil setiap 8 bit mengikuti urutan angka (1,2,3,4,...8), pada Gambar 10 dengan urutan nomor (1,2,3,....8), disubstitusi ke dalam S-Box, dari tabel S-Box disubstitusi menjadi P3 dan K3, kemudian di-XOR menghasilkan C3.
Gambar 11 Pengambilan dan Pola Transpose Plaintext dan Kunci Proses 3
Gambar 11 menjelaskan pola pengambilan dan transpose plaintext dan kunci. Diambil setiap 8 bit mengikuti urutan angka pada Gambar 11 dengan urutan nomor (1,2,3,4,...8), kemudian dimasukkan kembali ke dalam kolom matriks baris pertama dari kiri ke kanan dengan alur proses plaintext menggunakan tabel S-Box kemudian ditransformasikan menjadi P4 dan K4. Setelah itu dimasukkan kembali ke dalam baris matriks kolom pertama dari bawah ke atas, kolom kedua dari atas ke bawah dan untuk kolom selanjutnya mengikuti urutan angka pada Gambar 11. Kemudian P4 dan K4 di-XOR menghasilkan C4, proses putaran pertama selesai, untuk proses tersebut dilakukan secara berulang hingga proses ke 20 (dua puluh) untuk mendapatkan ciphertext.
Gambar 12 Tabel Substitusi S-Box AES Gambar 12 merupakan tabel substitusi yang digunakan dalam proses enkripsi. Cara pensubstitusian adalah sebagai berikut: untuk setiap byte pada
5
10 C4F5F63791A904A
19 E067A15A7F365A98
9 E23B1136753D3350
4B2CE27024A574DD
18
8 B788A02221C9EC75
17 B96EA48197CF1CA
2A1A985A50FBD3CA
7
3BBF03111B822AE
16
6 A23A4F0C49D3FA1
15 D8781F7D3739527
8E564C294F279816
14 C7DEFF6CEEF3DD78
array state , misalkan S[r, c] = xy, yang dalam hal ini xy adalah digit heksadesimal
2
dari nilai S[r, c], maka nilai substitusinya, dinyatakan dengan S ’[r, c], adalah elemen di dalam S-Box yang merupakan perpotongan baris x dengan kolom dengan kolom y. Misalnya S[0, 0] = 19, maka S’[0, 0] = d4.
Untuk pengujian algoritma dilakukan dengan mengambil plaintext adalah AldYpL3n dan kunci adalah G4raMb0y. Setelah melewati proses enkripsi yang telah dijabarkan sebelumnya maka mendapatkan ciphertext yang telah dikonversi ke dalam nilai hexadecimal.
Tabel 3 Hasil Ciphertext Setiap Putaran
Putaran Hasil Hexadecimal Putaran Hasil Hexadecimal
1 BEEBB683E581F7C8
11
39F4387D7AB7AEE
7E23F973B1F3CD9F
91C92B3AA01C57FA
12 437BD18BE8964117
3
1F1795ADA061A13B
13
93A37518F405FB4
4
20 D0D682422F86D2B Tabel 3 merupakan hasil enkripsi dari setiap putaran, hasil pada putaran ke 20 (dua puluh) merupakan final ciphertext.
Tabel 4 Algoritma Enkripsi dan Dekripsi Proses Enkripsi Proses Dekripsi
BINER dimasukkan ke kolom C2 menggunakan pola masuk
18. P4 ditransformasikan menggunakan S- BOX
19. Hasil HEX diubah menjadi BINER 20.
Hasil BINER dimasukkan dalam matriks P4
21. P4 di XOR dengan K4 menghasilkan C4
15. C3 di XOR dengan K3 menghasilkan P3
16. P3 dubah ke BINER 17.
BINER diubah ke HEX 18. Hasil HEX ditransformasikan dengan tabel S-BOX
19. Hasil konversi diubah menjadi BINER 20.
BINER P3 dimasukkan ke kolom matriks dengan pola pengambilan
21. P3=C2 22.
23. Masukkan bit K2 menggunakan pola pemasukan
16. P3 dan K3 di XOR menghasilkan C3 17.
22. BINER dirubah menjadi DEC 23.
DEC diubah menjadi HEX, sebagai ciphertext 24.
C2 di XOR dengan K2 menghasilkan P2
25. P2 diproses dengan pola pengambilan 26.
Bit pengambilan dimasukkan lagi ke dalam kolom matriks P2
27. P2=C1 28.
C1 di XOR dengan K1 menghasilkan P1
29. P1 diproses dengan pola pengambilan 30.
Bit pengambilan dimasukkan lagi ke dalam kolom matriks P1
31. Hasil akhir pemasukan bit diproses dengan pola pengambilan
32. Hasil akhir BINER P1 diubah ke DEC 33.
C3 = P4 diambil dengan menggunakan pola pemasukan
15. P3 diproses dengan pola pengambilan proses 3
1. Masukkan plaintext 1.
7. P1 di XOR dengan K1 menghasilkan C1
Masukkan C4
2. Plaintext dirubah ke ASCII 2.
C4 dirubah ke ASCII
3. ASCII diubah ke BINER 3.
ASCII diubah ke BINER
4. Bit BINER dimasukkan ke kolom matriks P1 dengan pola pemasukan proses 1 4.
Bit BINER dimasukkan ke kolom matriks C4 dengan pola pemasukan
5. Bit pada kolom matriks diambil menggunakan pola pengambilan.
5. Masukkan bit K4 menggunakan pola pemasukan
6. Bit pengambilan dimasukkan lagi ke dalam matriks untuk mendapatkan hasil akhir P1 6.
C4 di XOR dengan K4
7. Bit P4 diubah ke BINER
14. Masukan bit K3 menggunakan pola pemasukan
8. C1 = P2 diambil menggunakan pola pemasukan
8. BINER diubah ke HEX
9. P2 diproses dengan pola pengambilan proses 2
9. HEX ditransformasikan dengan tabel S-BOX
10. P2 ditransforrmasikan menggunakan S- BOX
10. Hasil konversi diubah ke BINER 11. Hasil HEX diubah menjadi BINER 11.
BINER P4 dimasukkan ke kolom matriks dengan pola pengambilan
12. Hasil BINER dimasukkan dalam matriks P2
12. P4=C3 13. P2 di XOR dengan K2 menghasilkan C2
13. BINER dimasukkan ke kolom C3 menggunakan pola masuk
14. C2 = P3 diambil dengan pola pemasukan awal
DEC diubah ke HEX 34. HEX diubah ke CHAR, sebagai plaintext Tabel 4 merupakan algoritma proses enkripsi dan dekripsi secara menyeluruh. Proses enkripsi menghasilkan C4 (ciphertext), dan proses dekripsi menghasilkan P1 (plaintext) awal, algoritma proses kunci dijelaskan sebagai berikut :
1. Masukkan kunci.
2. Kunci diubah ke ASCII.
3. ASCII diubah ke biner.
4. Bir biner dimasukkan ke kolom K1 menggunakan pola masuk kunci.
5. Bit kunci di transposisikan dengan pola kunci C.
6. Transposisi K1 = K2.
7. K2 di transposisikan menggunakan pola kunci B.
8. Transposisi k2 = k3.
9. K3 ditransposisikan menggunakan pola kunci A.
10. Transposisi K3 = K4.
11. K4 ditransposisikan menggunakan pola kunci D.
Proses Enkripsi {Program ini digunakan untuk melakukan proses enkripsi data} Kamus P,K,P1,K1,P2,K2,P3,K3,P4,K4 = integer C1,C2,C3,C4 = integer Start
C1 <- P1 ⊕ K1 Input P Read P
P to ASCII ASCII to BINER Dari BINER = blok matriks P1, masukkan BINER P1 menggunakan Pola pemasukan awal
Dari blok matriks P1 = BINER, ambil bit P1 dengan pola formasi tarian reog ponorogo C Dari BINER = blok matriks P1, masukkan BINER P1 dengan pola pemasukan proses 1
Output P1 Input K Read K K to ASCII
ASCII to BINER Dari BINER = blok matriks K1, masukkan BINER K1 menggunakan Pola pemasukan awal Dari blok matriks K1 = BINER, ambil bit K1
K1 dengan pola pengambilan C
Dari BINER = blok matriks K1, masukkan BINER K1 dengan pola pemasukan proses 1 Output K1Print C1 C1 = P2 C2 <- P2 ⊕ K2
Dari C1 = blok matriks P2, masukkan C1 P3 menggunakan Pola pemasukan awal Dari blok matriks P2 = BINER, ambil bit P2 dengan pola formasi tarian reog ponorogo B
BINER to HEXA Dari HEXA = Tabel S-box, masukkan HEXA
HEXA konversi menggunakan S-box Print BINER S-box Dari BINER = blok matriks P2, masukkan BINER P2 menggunakan pola pemasukan proses 2 Output P2 Dari K1 = blok matriks K2, masukkan K1 Dari blok matriks K2 = BINER, ambil bit K2
K3 dengan pola pengambilan B Dari BINER = blok matriks K2, masukkan BINER K2 K2 menggunakan pola pemasukan proses Output K2
Print C2 C2 = P3 C3 <- P3 ⊕ K3
Dari C2 = blok matriks P3, masukkan C2 P2 menggunakan Pola pemasukan awal
Dari blok matriks P3 = BINER, ambil bit
P3 dengan pola formasi tarian reog ponorogo ADari BINER = blok matriks P3, masukkan BINER P3 dengan pola pemasukan proses 3 Output P2 Input K Read K K to ASCII
ASCII to BINER Dari BINER = blok matriks K3, masukkan BINER
K1 menggunakan Pola pemasukan awal
Dari blok matriks K3 = BINER, ambil bit K3K3 dengan pola pengambilan A Dari BINER = blok matriks K3, masukkan BINER K3 dengan pola pemasukan proses 3 Output K3
Print C3 C3 = P4 C4 <- P4 ⊕ K4
Dari C3 = blok matrik P4, masukkan C3
P4 menggunakan Pola pemasukan awal
Dari blok matriks P4 = BINER, ambil bit P4 dengan pola formasi tarian reog ponorogo DBINER to HEXA Dari HEXA = Tabel S-box, masukkan HEXA HEXA konversi menggunakan S-box Print BINER S-box
Dari BINER = blok matriks P4, masukkan BINER P3 menggunakan pola pemasukan proses 4 Output P4 Dari K3 = blok matriks K4, masukkan K3
Dari blok matriks K4 = BINER, ambil bit K4 K4 dengan pola pengambilan D Dari BINER = blok matriks K4, masukkan BINER K4 K4 menggunakan pola pemasukan proses 4
Output K4 Print C4 Repeat End Proses Dekripsi {Program ini digunakan untuk melakukan proses dekripsi data} Kamus P,K,P1,K1,P2,K2,P3,K3,P4,K4 = integer C1,C2,C3,C4 = integer Start
Input K Read K K to ASCII ASCII to BINER Dari BINER = blok matriks K1, masukkan BINER
K1 menggunakan Pola pemasukan awal Dari blok matriks K1 = BINER , ambil bit K1 K1 dengan pola formasi tarian reog ponorogo D Dari BINER = blok matriks K1, masukkan BINER K1
⊕ K3 Print P3 Dari blok matriks P2 = BINER, ambil bit P2 BINER to HEXA Dari HEXA = Tabel S-Box, masukkan HEXA
Print P1 Dari blok matriks P1 = BINER, ambil bit P1 BINER to HEXA Dari HEXA = Tabel S-Box, masukkan HEXA HEXA ditranformasi menggunakan S-Box Dari BINER P1 = blok matriks P1, masukkan BINER
⊕ K1 Dari P2 = blok matriks C1, masukkan BINER C1 ⊕ K1
Menggunakan pola pengambilan B Output P2 P2 = C1 P1 <- C1
⊕ K2 Print P2 Dari blok matriks P4 = BINER, ambil bit P4
Dari BINER P4 = blok matrik P4, masukkan BINER
P2 <- C2 ⊕ K2 Dari P3 = blok matriks C2, masukkan BINER C2
HEXA ditranformasi menggunakan S-Box Dari BINER P2 = blok matriks P2, masukkan BINER
Menggunakan pola pengambilan A
P3 = C2Output P4 P4 = C3 P3 <- C3 ⊕ K3 Dari P4 = blok matriks C3, masukkan BINER C3
Output K1 K1 = K2 Dari K1 = blok matriks K2, masukkan Bit K1 dengan pola pemasukan awal
Print P4 Dari blok matriks P4 = BINER, ambil bit P4
Dari BINER P4 = blok matrik P4, masukkan BINER
Menggunakan pola pengambilan DRead C C4 to ASCII ASCII to BINER Dari BINER = blok matriks C4, masukkan BINER C4 ⊕ K4
Output K4 P4 <- C4 ⊕ K4 Input C
Dari K3 = blok matriks K4, masukkan K3 Dari blok matriks K4 = BINER, ambil bit K4 K4 dengan pola pengambilan C Dari BINER = blok matriks K4, masukkan BINER K4
K3 dengan pola pengambilan B Dari BINER = blok matriks K3, masukkan BINER K3 Output K3 K3 = K4
K2 = K3 Dari K2 = blok matriks K3, masukkan Bit K2 K2 dengan pola pemasukan awal Dari blok matriks K3 = BINER, ambil bit K3
Dari blok matriks K2 = BINER, ambil bit K2 dengan pola pengambilan A Dari BINER = blok matriks K2, masukkan BINER K2 Output K2
Menggunakan pola pengambilan C Output P1 P1 to BINER BINER to ASCII ASCII to CHAR Print P End
Pengujian korelasi digunakan untuk mengukur seberapa acak perbandingan antara hasil enkripsi (ciphertext) dan plaintext. Nilai korelasi sendiri berkisar 1 sampai -1, dimana jika nilai korelasi mendekati 1 maka plaintext dan
6 0,437657269
Tabel 5 menunjukkan setiap putaran memiliki nilai korelasi lemah sehingga dapat disimpulkan bahwa algoritma kriptografi block cipher menggunakan formasi tari reog ponorogo ini dapat menghasilkan nilai korelasi enkripsi 0,049533894.
20 0,460222079
10 0,080109205
19 0,901131833
9 0,538348595
18 0,81856248
8 0,331721684
17 0,276401202
7 0,287958408
16 0,049533894
15 0,099068975
ciphertext memiliki hubungan yang sangat kuat tetapi jika mendekati 0 maka
plaintext dan ciphertext memiliki hubungan yang tidak kuat .5 0,916235961
14 0,255643902
4 0,058242284
13 0,489281446
3 0,741141577
12 0,063195592
2 0,35968373
11 0,295631258
1 0,339768226
Tabel 5 Nilai Korelasi Setiap Putaran
Putaran Korelasi Putaran Korelasi
Nilai korelasi kuat dan lemah pada Tabel 5 berpengaruh pada hasil enkripsi, jika nilai korelasi kuat, maka hasilnya kurang baik sehingga kurang memenuhi syarat untuk dijadikan sebagai algoritma kriptografi.
Gambar 13 Grafik Perbandingan Plaintext dan Ciphertext Gambar 13 menjelaskan bahwa antara putaran 1 (satu) dan 20 (dua puluh) memiliki perbedaan antara plaintext dan ciphertext. Pengujian avalanche effect dilakukan untuk mengetahui perubahan bit yang ada ketika plaintext diubah. Pengujian dilakukan dengan merubah karakter yang terdapat pada plaintext awal, sehinggga akan menghasilkan perbedaan dalam setiap putaran.
Tabel 6 Tabel Presentase Avalanche Effect
Putaran Presentase Putaran presentase
7 42,1875
Gambar 14 Grafik Avalanche effect
Rata-Rata 52,5
20 42,1875
50
10
19 57,8125
9 56,25
18 53,125
8 56,25
17 67,1875
16 57,8125
1 37,5
6 51,5625
15 54,6875
5 56,25
14 46,875
4 51,5625
13 57,8125
3 40,625
12 60,9375
2 56,25
11 53,125
Gambar 14 menjelaskan hasil dari pengujian avalanche effect pada penelitian ini plaintext awal adalah AldYpL3n yang kemudian diubah menjadi y0gi3aLd. Terjadi perubahan bit pada setiap putarannya, pada putaran ke-17 (tujuh belas) terdapat perubahan bit yang paling besar yaitu 67,18 tetapi pada putaran ke-1 (satu) terjadi perubahan bit paling rendah yaitu 37,5. Berdasarkan hasil putaran ke-1 (satu) sampai putaran ke-20 (dua puluh) dapat disimpulkan hasil rata-rata pengujian avalanche effect sebesar 52,5%.
Pada penelitian perancangan kriptografi block cipher menggunakan pola formasi tari reog ponorogo, pada pengujian avalanche effect diperoleh nilai rata- rata sebesar 52,5% dan pada penelitian Perancangan Kriptografi Block Cipher Menggunakan Pola Batik Tasikmalaya menunjukkan bahwa dalam pengujian
avalanche effect memiliki perubahan yang mencapai 50,78125%. berdasarkan
hasil tersebut dapat disimpulkan bahwa perancangan kriptografi block cipher menggunakan pola formasi tari reog ponorogo yang menghasilkan perubahan bit yang besar sehingga dapat dijadikan acuan dalam pengamanan data
5. Simpulan
Berdasarkan penelitian yang telah dilakukan tentang perancangan kriptografi block cipher menggunakan pola formasi tari reog ponorogo dapat disimpulkan, bahwa pola formasi tari reog ponorogo dapat digunakan sebagi pola pengambilan plaintext yang menghasilkan ciphertext. Pada pengujian avalanche
effect diperoleh nilai rata-rata 52,5%. Berdasarkan pengujian ini perancangan
kriptografi block cipher menggunakan pola formasi tari reog ponorogo dapat digunakan sebagai alternatif dalam pengamanan data.
6. Daftar Pustaka
[1] Guntoro, Pakereng, M. A. I, 2016 “Perancangan Kriptografi Block Cipher Berbasis Pola ikan Berenang”. Teknik Informatika, Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana.
[2] Yusuf, I. Safano, Pakereng, M. A. I, 2017 “Perancangan Kriptografi Block
Cipher
menggunakan Pola Batik Tasikmalaya”. Teknik Informatika, Fakultas Teknologi Informasi, Universitas Kristen Satya wacana. [3] Munir, R., 2006, Kriptografi, Bandung: Informatika. [4] Rifka, S, diambil pada tanggal 7 Agustus 2017 pukul 14.12 WIB.