Perancangan Kriptografi
Block Cipher
256-bit
Berbasis Pola Batik Totogan Banyuwangi
Artikel Ilmiah
Peneliti :
Armanno Rifai (672013601) Magdalena A. Ineke Pakereng, M.Kom.
Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana
ii
Perancangan Kriptografi
Block Cipher
256-bit
Berbasis Pola Batik Totogan Banyuwangi
Artikel Ilmiah
Diajukan Kepada Fakultas Teknologi Informasi
Untuk Memperoleh Gelar Sarjana Komputer
Peneliti :
Armanno Rifai (672013601) Magdalena A. Ineke Pakereng, M.Kom.
Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana
2
Perancangan Kriptografi
Block Cipher
256-bit
Berbasis Pola Batik Totogan Banyuwangi
Armanno Rifai1, Magdalena A. Ineke Pakereng2 Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana Jl. Diponegoro 52-60, Salatiga 50711, Indonesia
E-mail: 672013601@student.uksw.edu1, ineke.pakereng@staff.uksw.edu2
Abstract
The security of information is needed in the era technological development. Cryptography is the best step to safe data. Block Cipher Cryptography based on Batik Totogan Banyuwangi of this pattern designed to create a new cryptography. The design of cryptography with 256 block size as alternative concept. This cryptography has been designed using 4 processes and be repeated 5 rotations, where the first process and third process substituted using S-Box table to get more complicated ciphertext. Avalanche Effect and correlation are testing to find byte transformation. The byte changes get 51,953125% and this pattern can be concluded as alternative concept to safe data.
Keyword: Block Cipher, Cryptography, Batik Totogan Banyuwangi Pattern, Avalanche Effect, Correlation, S-Box.
Abstrak
Keamanan suatu informasi sangat diperlukan pada masa perkembangan teknologi saat ini. Kriptografi adalah langkah terbaik untuk mengamankan data. Kriptografi
Block Chiper Berbasis Pola Batik Totogan Banyuwangi ini dirancang untuk membuat kriptografi baru. Rancangan kriptografi dengan ukuran blok 256 bit sebagai konsep alternatif. Kriptografi ini dirancang menggunakan 4 proses dan diulang sebanyak 5 putaran, dimana proses ke-1 dan ke-3 disubtitusi menggunakan tabel S-Box untuk mendapatkan Ciphertext yang lebih rumit. Avalanche Effect dan nilai korelasi adalah pengujian untuk mencari perubahan bit. Perubahan bit mencapai 51,953125% dan dapat disimpulkan bahwa pola ini sebagai konsep alternatif untuk mengamankan data.
Kata Kunci: Block Cipher, Kriptografi, Pola Batik Totogan Banyuwangi,
Avalanche Effect, Korelasi, S-Box.
1)Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi, Universitas Kristen
Satya Wacana
3 1. Pendahuluan
Keamanan suatu informasi sangat diperlukan pada masa perkembangan teknologi saat ini. Namun pertumbuhan teknologi tidak sejalan dengan sistem keamanan dari teknologi itu sendiri. Dibutuhkan suatu sistem keamanan yang mampu menjaga kerahasian suatu data, sehingga data yang dikirim tetap aman. Salah satu metode agar data tetap aman yaitu dengan membuat data menjadi tidak mudah dipahami oleh siapapun kecuali untuk client yang berhak menerima data tersebut. Teknik tersebut sering dikenal dengan nama kriptografi, sebagai suatu ilmu untuk mengamankan data. Saat ini, kriptografi menjadi dasar bagi keamanan komputer dan jaringan karena yang menjadi pokok dari fungsi komputer dan jaringan adalah data ataupun informasi [1].
Dalam dunia kriptografi sering ditemui berbagai macam permasalahan dalam pemilihan pola. Pola yang unik akan membuat proses enkripsi dan dekripsi semakin menarik. Pola dengan tema budaya adalah pola yang masih jarang digunakan. Batik Totogan Banyuwangi adalah salah satu batik yang terkenal di Banyuwangi. Motif pola batik Totogan Banyuwangi merupakan pola kriptografi yang mempunyai ciri khas tersendiri yaitu memiliki tiga warna, yang digunakan sebagai pola pemasukan dan pengambilan bit dalam rancangan teknik kriptografi yang dirancang.
Algoritma-algoritma dalam proses enkripsi dan dekripsi terbagi menjadi dua macam, yaitu Stream Cipher dan Block Cipher. Algoritma dalam perancangan kriptografi ini menggunakan algoritma Block Cipher 256-bit dengan pola batik Totogan Banyuwangi yang dikombinasikan dengan S-Box.
Berdasarkan latar belakang masalah, maka akan dilakukan penelitian tentang perencanaan kriptografi block cipher 256-bit berbasis pola batik Totogan Banyuwangi.
2. Tinjauan Pustaka
Terdapat banyak penelitian tentang kriptografi block cipher. Salah satunya yaitu berjudul Perancangan Kriptografi Block Cipher Berbasis pada Teknik Tanam Padi dan Bajak Sawah, yang membahas tentang implementasi algoritma Block Cipher untuk proses enkripsi dan dekripsi data yang dilakukan sebanyak 8 putaran. Algoritma teknik tanam padi membuktikan bahwa pola ini menghasilkan kriptografi simetris. Hasil waktu enkripsi dari perancangan teknik tanam padi adalah 0,00682 ms [3].
Peneletian kedua berjudul Perancangan Kriptografi Block Cipher Berbasis Pola Ikan Berenang membahas tentang perancangan kriptografi baru menggunakan prinsip s-box, iterated cipher dan jaringan fiestel yang dilakukan sebanyak 15 putaran dan di uji menggunakan avalanche effect dan nilai korelasi. Hasil yang diperoleh dari penelitian ini yaitu nilai persentase dalam perubahan bit mencapai 43.02083333% [4].
4
effect yang diproses sebanyak 5 putaran. Hasil yang diperoleh dari penelitian ini bahwa nilai persentase dalam perubahan bit mencapai 41% [5].
Kriptografi merupakan sebuah ilmu yang digunakan untuk menjaga kerahasiaan dari sebuah data [6]. Dalam ilmu kriptografi, terdapat dua buah proses yaitu melakukan enkripsi dan dekripsi. Pesan yang akan dienkripsi disebut sebagai
plaintext (teks biasa). Disebut demikian karena informasi ini dengan mudah dapat dibaca dan dipahami oleh siapa saja. Algoritma yang dipakai untuk mengenkripsi dan mendekripsi sebuah plaintext melibatkan penggunaan suatu bentuk kunci. Pesan plaintext yang telah dienkripsi dikenal sebagai ciphertext (teks sandi) [2].
Penelitian-penelitian yang terkait dengan algoritma block cipher tersebut, digunakan sebagai acuan dalam merancang penelitian tentang implementasi block cipher menggunakan pola batik Totogan Banyuwangi yang dikombinasikan dengan
s-box dan jaringan fiestel. Dalam penelitian ini dilakukan dengan proses enkripsi dan dekripsi sebanyak 5 putaran, kemudian diuji menggunakan nilai korelasi dari setiap putaran untuuk mendapatkan hasil terbaik.
Block cipher adalah rangkaian bit yang dibagi menjadi blok-blok bit yang panjangnya sudah ditentukan sebelumnya [3]. Alur proses enkripsi dan dekripsi
block cipher secara umum dapat digambarkan pada Gambar 1.
Gambar 1 Skema Proses Enkripsi –Dekripsi Block Cipher [2]
Misalkan blok plaintext (P) yang berukuran n bit
p p pn
P 1, 2,, (1)
Blok ciphertext (C) maka blok C adalah
c c cn
C 1, 2,, (2)
Kunci (K) maka kunci adalah
k k kn
K 1, 2,, (3)
Sehingga proses Enkripsi adalah
P CEk (4)
Proses dekripsi adalah
C P5
Pada pengujian 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. Nilai koefisien akan selalu berada di antara -1 sampai +1. Untuk menentukan nilai korelasi yang kuat atau lemahnya hubungan antara variabel yang diuji, dapat digunakan menjadi pedoman pada Tabel 1.
Tabel 1 Klasifikasi Koefisien Korelasi [5]
Interval Koefisien Tingkat Hubungan
0,00 – 0,199 Sangat Rendah
0,20 – 0,399 Rendah
0,40 – 0,599 Sedang
0,60 – 0,799 Kuat
0,80 – 1,000 Sangat Kuat
3. Metode Penelitian
Tahapan penelitian yang dilakukan untuk menyelesaikan penelitian ini yaitu dengan ditunjukkan pada Gambar 2.
Gambar 2 Tahapan Penelitian
6
yang telah dibuat apakah sudah berjalan dengan semestinya. Jika belum maka dilakukan perbaikan-perbaikan yang diperlukan.
Pada perancangan kriptografi block cipher pada pola batik totogan Banyuwangi ini dilakukan dua proses yaitu enkripsi dan proses dekripsi. Enkripsi dan dekripsi itu sendiri dilakukan dalam 5 putaran, dan di setiap putaran terdapat 4 proses.
Gambar 3 Rancangan Proses Alur Enkripsi
Gambar 3 menunjukkan alur proses enkripsi, tahapan enkripsi itu sendiri dapat dijelaskan sebagai berikut:
a) Menyiapkan plaintext dan kunci.
b) Mengubah plaintext dan kunci menjadi biner sesuai dalam tabel ASCII. c) Dalam perancangan enkripsi, plaintext dan kunci akan melewati empat
7
d) Putaran pertama Plaintext 1 (P1) diproses dengan pola setelah itu P1 di S-BOX dan di-XOR dengan Kunci 1 (K1) menghasilkan Ciphertext 1 (C1) e) HasilC1 ditansformasikan dengan pola menjadi P2 dan di-XOR dengan K2
menghasilkan C2.
f) C2 ditransformasikan dengan pola menjadi P3 pola setelah itu P3 di S-BOX
dan di-XOR dengan K3 menghasilkan C3.
g) Hasil C3 ditransformasikan dengan pola menjadi P4 dan di-XOR dengan K4 menghasilkan C4.
h) Masuk pada putaran dua, hasil C4 ditransformasikan menjadi P1 kemudian dilakukan proses yang sama dengan putaran pertama dan dilakukan sampai putaran ke-5 hingga menghasilkan Ciphertext (C).
Gambar 4 RancanganProses Alur Dekripsi
Gambar 4 menunjukkan alur proses dekripsi, tahapan proses dekripsi tersebut dapat dijelaskan sebagai berikut:
8
b) Mengubah ciphertext dan kunci menjadi biner sesuai dalam tabel ASCII. c) Dalam perancangan dekripsi, plaintext dan kunci akan melewati empat
proses dalam setiap putaran.
d) Putaran pertama Ciphertext (C) dimasukkan ke dalam C4 diproses dengan pola, setelah itu C4 di-XOR dengan Kunci 4 (K4) menghasilkan Plaintext 4 (P4).
e) P4 ditransformasikan menjadi C3, setelah itu C3 di-XOR dengan K3 menghasilkan P3 lalu masuk ke S-BOX.
f) P3 ditransformasikan dengan pola menjadi C2 dan di-XOR dengan K2 menghasilkan P2.
g) P2 ditransformasikan menjadi C1 dan di-XOR dengan K1 menghasilkan P1. h) Masuk pada putaran dua,P1 di S-BOX dan ditransformasikan menjadi C1 kemudian dilakukan proses yang sama dengan putaran pertama dan dilakukan sampai putaran ke-5 hingga menghasilkan Plaintext (P).
4. Hasil Pembahasan
Dalam tahap ini akan dibahas tentang algoritma perancangan kriptografi
block cipher 256-bit berbasis pola batik Totogan secara lebih detail dan terstruktur. Tahapan ini juga akan membahas tentang proses enkripsi dan dekripsi. Sedangkan gambar pola batik Totogan Banyuwangi yang digunakan untuk merancang kriptografi dapat ditunjukkan pada Gambar 5.
Gambar 5 Pola Batik Totogan Banyuwangi [7]
9
Pola (A) Pola (B)
Pola (C) Pola (D)
Gambar 6 Pola Batik Totogan Banyuwangi
Pada Gambar 6 menggambarkan empat pola yang berbeda, dimana pola-pola tersebut menggambarkan pola batik Totogan Banyuwangi. Berdasarkan pola-pola yang sudah dirancang sedemikian rupa, tahapan selanjutnya yaitu melakukan pengujian korelasi dengan mengkombinasikan urutan pola untuk menemukan nilai korelasi terbaik. Contoh plaintext yang digunakan yaitu “dewamahameru3676 malangjawatimur” dan contoh kunci yang digunakan yaitu “ranupaneranukumbolo arcakalimati”.
10
Tabel 2 Tabel Rata-Rata Korelasi
RATA-RATA NILAI KORELASI
POLA RATA-RATA POLA RATA-RATA
A-B-C-D 0.041269866 C-A-B-D 0.355184372
A-B-D-C 0.082671507 C-A-D-B 0.184367214
A-C-B-D 0.223663437 C-B-A-D 0.270518555
A-C-D-B 0.362760104 C-B-D-A 0.07393006
A-D-B-C 0.237644491 C-D-A-B 0.118241871
A-D-C-B 0.047130757 C-D-B-A 0.136523714
B-A-C-D 0.08104247 D-A-B-C 0.268792788
B-A-D-C 0.07540448 D-A-C-B 0.327747955
B-C-A-D 0.297671273 D-B-A-C 0.198793159
B-C-D-A 0.194122924 D-B-C-A 0.501547857
B-D-A-C 0.104797755 D-C-A-B 0.03997557
B-D-C-A 0.129793573 D-C-B-A 0.12570713
Tabel 2 menunjukkan bahwa urutan kombinasi pola dengan rata-rata korelasi terbaik terdapat pada urutan pola D-C-A-B dengan nilai korelasi 0.03997557. Kombinasi D-C-A-B yang akan dilanjutkan pada tahap proses enkripsinya sampai putaran ke-5 untuk menemukan ciphertext.
Tahapan perancangan kriptografi ini dilakukan sebanyak 5 putaran dan di setiap putaran memiliki 4 proses untuk mendapatkan hasil akhir yaitu ciphertext. Proses pertama plaintext dan kunci diubah ke dalam bentuk ASCII kemudian diubah lagi ke dalam bilangan biner. Setelah itu bit-bit plaintext diproses dengan pola pemasukan ke dalam kolom matrik 16x16 dan pola pengambilan dengan menggunakan pola batik Totogan Banyuwangi yang berbeda-beda pada setiap prosesnya. Kemudian hasil dari XOR ketiga dan keempat ditansformasikan menggunakan S-BOX yang kemudian diulang terus-menerus hingga putaran ke-5 untuk menghasilkan ciphertext.
11
Gambar 7 Pola Pemasukan Awal Plaintext dan Kunci
Gambar 7 menjelaskan proses pola pemasukan bit karakter Plaintext dan Kunci. Setiap 8 bit dari setiap karakter dimasukkan berurutan dengan mengisi blok bagian atas terlebih dahulu mengikuti garis anak panah berwarna biru 1, 2, 3, 4, 5, 6, 7 ….248 dan garis anak panah berwarna jingga mengikuti angka 9, 10, 11, 12, 13, ...256.
Gambar 8 Proses Pengambilan dan Pemasukan Proses 1
12
Gambar 9 Proses Pengambilan dan Pemasukan Proses 2
Gambar 9 menunjukkan proses pengambilan plaintext dan kunci pada proses 2. Pada proses dua angka 1 sebagai karakter pertama pengambilan bit dimulai dari kanan atas. Angka 1, 2, 3, 6, 7, 8 ...64 dimasukkan ke dalam blok sesuai pola warna biru. Angka 65, 66, 67, 68, ...128 dimasukkan ke dalam blok sesuai pola warna coklat. Angka 129, 130, 131, 132, ...256 dimasukkan ke dalam blok sesuai pola warna putih.
Gambar 10 Proses Pengambilan dan Pemasukan Proses 3
13
Gambar 11 Proses Pengambilan dan Pemasukan Proses 4
Gambar 11 menunjukkan proses pengambilan dan pemasukan plaintext dan kunci pada proses 4. Pada proses 4 angka 1 diambil dari blok kiri bawah ke atas. Angka 1, 2, 3, 6, 7, 8 ...64 dimasukkan ke dalam blok sesuai pola warna biru. Angka 65, 66, 67, 68, ...128 dimasukkan ke dalam blok sesuai pola warna coklat. Angka 129, 130, 131, 132, ...256 dimasukkan ke dalam blok sesuai pola warna putih.
Gambar 12 Tabel S-BOX AES
Gambar 12 merupakan tabel substitusi S-box yang digunakan dalam proses enkripsi. Cara pensubstitusian adalah sebagai berikut: untuk setiap byte pada array state, misalkan S[r, c] = xy, yang dalam hal ini xy adalah digit heksadesimal 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 y.Misalnya S[0,
0] = 19, maka S’[0, 0] = d4.
14
Tabel 3 Hasil Ciphertext Setiap Putaran
Tabel 3 merupakan hasil enkripsi dari setiap putaran. Hasil dari putaran kelima merupakan hasil dari final output ciphertext.
Proses dekripsi yaitu proses merubah ciphertext menjadi plaintext awal. Tahapan dekripsi dilakukan sama seperti enkripsi, tetapi dekripsi dimulai dari putaran ke-5 menuju putaran ke-1 untuk mendapatkan plaintext awal. Pola pengambilan pada proses enkripsi akan menjadi pola pemasukan pada proses dekripsi, sedangkan pola pemasukan pada enkripsi akan digunakan sebagai pola pengambilan pada dekripsi. Proses dekripsi dimulai dari memasukkan ciphertext ke kolom matrik C4 kemudian di-XOR dengan K4 pada proses keempat menghasilkan P4.
15
Tabel 4 Algoritma Enkripsi dan Dekripsi
Tabel 4 merupakan algoritma proses enkripsi dan dekripsi secara menyeluruh. Proses enkripsi menghasilkan C4, dan proses dekripsi menghasilkan P1.
Algoritma kunci (key), dijelaskan sebagai berikut: 1. Masukkan kunci.
2. Kunci diubah ke ASCII. 3. ASCII diubah ke biner.
4. Bit biner dimasukkan ke kolom K1 dengan pola pemasukan kunci. 5. Bit Kunci ditransposisikan dengan pola Kunci D
6. Transposisi K1 = K2
7. K2 ditransposisikan menggunakan pola Kunci C 8. Transposisi K2 = K3
Proses Enkripsi Proses Dekripsi
1. Masukkan plaintext
2. Plaintext dirubah ke ASCII
3. ASCII diubah ke biner
4. Bit biner dimasukkan ke kolom matrik P1 dengan pola pemasukan proses 1 (D) 5. Bit pada kolom matrik P1 diambil
menggunakan pola pengambilan proses 1 6. Bit pengambilan dimasukkan lagi ke dalam matrik mendapatkan hasil akhir P1 7. P1 di-XOR dengan K1 menghasilkan C1 8. DEC diubah ke HEX
9. HEX diproses menggunakan S-BOX 10. Hasil HEX diubah ke biner
11. Biner dimasukkan ke kolom P1
12. P1 di-XOR dengan K4 menghasilkan C1 13. C1 = P2 (C) diambil dengan pola
pemasukan proses 2
14. P2 di-XOR dengan K2 menghasilkan C2 15. C2 = P3 (A) diambil dengan pola
pemasukan proses 3
16. P3 diproses menggunakan pola pengambilan proses 3.
17. Biner diubah ke DEC 18. DEC diubah ke HEX
19. Hasil HEX diproses menggunakan S-BOX
20. Hasil HEX diubah ke biner 21. Hasil biner diubah ke DEC
22. P3 di-XOR dengan K3 menghasilkan C3 23. P4 (B) di-XOR dengan K4 menghasilkan
C4
24. Hasil gabungan dari semua HEX berupa ciphertext
1. Masukkan ciphertext 2. Ciphertext di C4
3. Bit biner dimasukkan ke kolom matrik C4 dengan pola pemasukan proses 4 4. C4 di-XOR dengan K4 menghasilkan P4 5. P4 (B) diproses dengan pola
pengambilan proses 4
6. P4 diubah ke biner dengan pola pemasukan proses 4
7. C3 di-XOR dengan K3 menghasilkan P3 (A)
8. Bit biner dimasukkan ke kolom matrik C3 dengan pola pemasukan proses 3 9. P3 diproses menggunakan pola
pemasukan proses 3 10. Hasil Biner diubah ke HEX
11. Hasil HEX diproses menggunakan S-BOX
12. Hasil HEX diubah ke DEC 13. Hasil DEC diubah ke biner
14. P3 diproses menggunakan pola pengambilan proses 3
15. Hasil P3 = C2
16. C2 di-XOR dengan K2 menghasilkan P2 (C)
17. Hasil P2 = C1
18. C1 di-XOR dengan K1 menghasilkan P1 (D)
19. Hasil biner P1 diubah ke DEC 20. DEC diubah ke HEX
21. Hasil HEX diproses menggunakan S-BOX
22. Hasil HEX diubah ke biner
23. Hasil akhir biner P1 dirubah ke DEC 24. Hasil DEC diubah ke HEX
16
9. K3 ditransposisikan menggunakan pola Kunci A 10.Transposisi K3 = K4
11.K4 ditransposisikan menggunakan pola Kunci B
Dalam tahapan ini, akan dijelaskan tentang Pseudocode pada perancangan kriptografi block cipher dengan menggunakan pola batik Totogan Banyuwangi.
Proses enkripsi dan proses dekripsi dapat dijelaskan sebagai berikut:
Proses Enkripsi
{Program ini digunakan untuk melakukan proses enkripsi data} Kamus
Dari biner = kolom matrik P1, masukkan biner P1 menggunakan Pola Batik Totogan Banyuwangi D
Dari kolom matrik P1 = biner, ambil bit P1 dengan pola pengambilan D
Dari biner = kolom matrik P1, masukkan biner P1 Output P1
Input K Read K
K to ASCII ASCII to biner
Dari biner = kolom matrik K1, masukkan biner K1 menggunakan Pola Batik Totogan Banyuwangi D
Dari kolom matrik K1 = biner, ambil bit K1 K1 dengan pola pengambilan D
Dari biner = kolom matrik K1, masukkan biner K1 Output K1
Print C1
Biner s-box <- invers hexa C1 C1 to biner Biner to hexa
Dari hexa = tabel s-box, masukkan hexa Hexa substitusi menggunakan s-box Print biner s-box
C1 = P2 C2 <- P2 ⊕ K2
Dari C1 = kolom matrik P2, masukkan C1
P2 menggunakan Pola Batik Totogan Banyuwangi C Dari kolom matrik P2 = biner, ambil bit P2 dengan pola pengambilan C
Dari biner = kolom matrik P2, masukkan biner P2 Output P2
Dari K1 = kolom matrik K2, masukkan K1 K2 menggunakan Pola Batik Totogan Banyuwangi C
Dari kolom matrik K2 = biner, ambil bit K2 dengan pola pengambilan C
Dari biner = kolom matrik K2, masukkan biner K2 Output K2
Print C2 C3 <- P3 ⊕ K3
Dari C2 = kolom matrik P3, masukkan C2 P3 menggunakan Pola Totogan Banyuwangi A
Dari kolom matrik P3 = biner, ambil bit P3 dengan pola pengambilan A
17
Dari K2 = kolom matrik K3, masukkan K2 K3 menggunakan Pola Batik Totogan Banyuwangi A
Dari kolom matrik K3 = biner, ambil bit K3 dengan pola pengambilan A
Dari biner = kolom matrik K3, masukkan biner K3 Output K3
Print C3
Biner s-box <- invers hexa C3 C3 to biner
Biner to hexa
Dari hexa = tabel s-box, masukkan hexa Hexa substitusi menggunakan s-box Print biner s-box
C3=P4 C4 <- P4 ⊕ K4
Dari biner s-box = kolom matrik P4, masukkan biner s-box P4 menggunakan Pola Batik Totogan Banyuwangi B
Dari kolom matrik P4 = biner, ambil bit P4 dengan pola pengambilan B
Dari biner = kolom matrik P4, masukkan biner P4 Output P4
Dari K3 = kolom matrik K4, masukkan K3 K4 menggunakan Pola Batik Totogan Banyuwangi B
Dari kolom matrik K4 = biner, ambil bit K4 dengan pola pengambilan B
Dari biner = kolom matrik K4, masukkan biner K3 Output K4
Print C4 Repeat
End
Proses Dekripsi
{Program ini digunakan untuk melakukan proses dekripsi data} Kamus
Dari biner = kolom matrik K1, masukkan biner K1 menggunakan Pola Batik Totogan Banyuwangi B
Dari kolom matrik K1 = biner, ambil bit K1 K1 dengan pola pengambilan B
Dari biner = kolom matrik K1, masukkan biner K1 Output K1
Dari K1 = kolom matrik K2, masukkan K1 K2 menggunakan Pola Batik Totogan Banyuwangi A
Dari kolom matrik K2 = biner, ambil bit K2 dengan pola pengambilan A
Dari biner = kolom matrik K2, masukkan biner K2 Output K2
Dari K2 = kolom matrik K3, masukkan K2 K3 menggunakan Pola Batik Totogan Banyuwangi C
Dari kolom matrik K3 = biner, ambil bit K3 dengan pola pengambilan C
Dari biner = kolom matrik K3, masukkan biner K3 Output K3
Dari K3 = kolom matrik K4, masukkan K3 K4 menggunakan Pola Batik Totogan Banyuwangi D
Dari kolom matrik K4 = biner, ambil bit K4 dengan pola pengambilan D
18
Dari BINER = kolom matrik C4, masukan BINER C4 ⊕ K4
Print P4
Dari kolom matrik P4 = biner, ambil P4
Dari biner = kolom matrik P2, masukkan biner Menggunakan pola pengambilan B
Output P4 P4 = C3
P3 <- C3 ⊕ K3
Dari P4 = kolom matrik C3, masukkan biner
C3 ⊕ K3
Print P3
Dari kolom matrik P3 = biner, ambil bit P3 Biner to hexa
Dari hexa = tabel s-box, masukkan Hexa Hexa ditransformasi menggunakan s-box
Dari biner P4 = kolom matrik, masukkan biner Menggunakan pola pengambilan A
Output P3 P3 = C2
P2 <- C2 ⊕ K2
Dari P3 = kolom matrik C3, masukkan biner
C2 ⊕ K2
Print P2
Dari kolom matrik P2 = biner, ambil P2
Dari biner = kolom matrik P2, masukkan biner Menggunakan pola pengambilan C
Output P2 P2= C1
P1 <- C1 ⊕ K1
Dari P2 = kolom matrik C2, masukkan biner
C1 ⊕ K1
Print P1
Dari kolom matrik P1 = biner, ambil bit P1 Biner to hexa
Dari hexa = tabel s-box, masukkan Hexa Hexa ditransformasi menggunakan s-box
Dari biner P4 = kolom matrik, masukkan biner Menggunakan pola pengambilan D
Print P1
Dari kolom matrik P1 = biner, ambil P1
Dari biner = kolom matrik P1, masukkan biner Menggunakan pola pengambilan D
Output P1
Pengujian korelasi digunakan untuk mengukur perbandingan antara plaintext
19
Tabel 5 Nilai Korelasi Setiap Putaran
Tabel 5 menjelaskan nilai korelasi setiap putaran dan dapat disimpulkan bahwa algoritma kriptografi block cipher 256 bit menggunakan pola batik Totogan Banyuwangi memiliki nilai korelasi yang lemah dan menghasilkan nilai korelasi yang acak.
Gambar 13 Grafik Perbandingan Plaintext dan Ciphertext
Gambar 13 menunjukkan bahwa antara putaran satu dengan putaran yang lain memiliki perbedaan yang signifikan 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, sehingga akan menghasilkan perbedaan pada setiap putarannya.
Tabel 6 Hasil Pengujian Avalanche Effect
Tabel Avalanche Effect
Putaran Banyak BIT Berubah Persentase
1 124 48,4375
2 132 51,5625
3 136 53,125
4 141 55,078125
5 132 51,5625
20
Tabel 6 menjelaskan bahwa antara putaran satu dengan putaran yang lain memiliki perbedaan dalam perubahan bit. Putaran ke-4 adalah jumlah perubahan bit tertinggi dan putaran ke-1 adalah jumlah bit terendah.
Gambar 14 Grafik Pengujian Avalanche Effect
Pada Gambar 14 adalah hasil dari pengujian Avalanche Effect, pada kasus ini plaintext awal adalah dewamahameru3676 malangjawatimur yang kemudian diubah menjadi puncakrinjani3726 lomboknusa0298. Terjadi perubahan bit yang besar di setiap putarannya, seperti yang terjadi pada putaran ke-1 dan ke-4 perubahan bit melebihi angka 55%, dan hanya ada satu putaran yang perubahan bitnya berada di bawah 50% yakni hanya pada putaran ke-1. Dapat disimpulkan bahwa pengujian Avalanche Effect dari semua putaran menghasilkan perubahan bit mencapai 51,953125%. Maka dari itu jika rata-rata semua putaran perubahan bit mencapai 51,953125% dapat membuat plaintext yang asli sulit ditemukan. Sehingga plaintext yang asli tetap aman. Pada efek penggunaan pola batik Totogan Banyuwangi dalam computational time dan tingkat keamanan dapat memberikan pola yang mempunyai keunikan tersendiri dalam proses pemasukan plaintext
menjadi rumit atau acak.
5. Simpulan
Berdasarkan penelitian yang dilakukan, dapat disimpulkan bahwa kriptografi block cipher 256 bit berbasis pola batik Totogan Banyuwangi dapat dikatakan sebagai sistem kriptografi. Dalam proses enkripsi, rancangan kriptografi
21 6. Daftar Pustaka
[1] Ariyanto, E. Indah, T. 2008. Analisa Implementasi Algoritma Stream Cipher Sosemanuk Dan Dicing Dalam Proses Enkripsi Data, Yogyakarta: Universitas Pembangunan Veteran.
[2] Pabokory, F. Astuti, I. 2015. Implementasi Kriptografi Pengamanan Data Pada Pesan Teks, Isi File Dokumen, Dan File Dokumen Menggunakan Algoritma Advanced Encryption Standard. Samarinda: Universitas Mulawarman.
[3] Widodo, A. Wowor, D. Alz. Mailoa, E. Pakereng, M. A. I. 2015.
Perancangan Kriptografi Block Cipher Berbasis pada Teknik Tanam Padi dan Bajak Sawah. Salatiga : FTI UKSW.
[4] Guntoro, Pakereng, M. A. I., 2016. Perancangan Kriptografi Block Cipher Berbasis Pola Ikan Berenang. Teknik Informatika, Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana.
[5] Tomasosa, E. L., Pakereng, M. A. I., 2016. Pengaruh S-BOX Advandce Encryption Standard (AES) Terhadap Avalanche Effect Pada Perancangan Kriptografi Block Cipher 256 Bit Berbasis Pola Teknik Dansa Tali Dari Maluku. Teknik Informatika, Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana.
[6] Handoko, P. Aripin. 2015. Teknik Keamanan Data Menggunakan Kriptografi Dengan Algoritma Vigenere Cipher Dan Steganografi Dengan Metode End Of File (Eof). Semarang: Universitas Dian Nuswantoro.