• Tidak ada hasil yang ditemukan

Institutional Repository | Satya Wacana Christian University: Perancangan Kriptografi Block Cipher 64 bit Berbasis Pola Ekor Burung Murai Batu

N/A
N/A
Protected

Academic year: 2019

Membagikan "Institutional Repository | Satya Wacana Christian University: Perancangan Kriptografi Block Cipher 64 bit Berbasis Pola Ekor Burung Murai Batu"

Copied!
31
0
0

Teks penuh

(1)

Perancangan Kriptografi

Block Cipher 64 bit

Berbasis Pola Ekor Burung Murai Batu

Artikel Ilmiah

Peneliti :

Dewi Ryandita (672013155) Magdalena A. Ineke Pakereng, M.Kom.

Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana

(2)

Perancangan Kriptografi

Block Cipher 64 bit

Berbasis Pola Ekor Burung Murai Batu

Artikel Ilmiah

Diajukan Kepada Fakultas Teknologi Informasi

Untuk Memperoleh Gelar Sarjana Komputer

Peneliti :

Dewi Ryandita (672013155) Magdalena A. Ineke Pakereng, M.Kom.

Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana

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

Perancangan Kriptografi

Block Cipher 64 bit

Berbasis Pola Ekor Burung Murai Batu

Dewi Ryandita1, Magdalena A. Ineke Pakereng2 Fakultas Teknologi Informasi

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

E-mail: 672013155@student.uksw.edu1, ineke.pakereng@staff.uksw.edu2

Abstract

Cryptography is the science and art of keeping secrecy. To improve the security level then cryptography needs to be developed. In this research designed Block Cipher Cryptography 64 bit Based Pattern of Stone Mermaid Tail to create new cryptography. Cryptography is designed using 4 processes, 24 combinations which then the result of the lowest correlation value is used to create encryption and decryption where each round there are 4 processes for plaintext process and key process, where process 3 and 4 is transformed using table S-Box to get more random Ciphertext. Testing is also done using Avalanche Effect and Correlation value where the character change reaches 50,625%, so it can be used as alternative in securing data.

Keywords:Cryptography, Block Cipher, Tailed Pattern of Stone Mermaid, Correlation, S-Box, Avalanche Effect.

Abstrak

Kriptografi adalah ilmu dan seni untuk menjaga kerahasiaan. Untuk meningkatkan tingkat keamanannya maka kriptografi perlu dikembangkan. Dalam penelitian ini dirancang Kriptografi Block Cipher 64 bit Berbasis Pola Ekor Burung Murai Batu untuk membuat kriptografi baru. Kriptografi ini dirancang menggunakan 4 proses, 24 kombinasi yang kemudian hasil dari nilai korelasi terendah digunakan untuk membuat enkripsi dan dekripsi dimana setiap putaran terdapat 4 proses untuk proses plaintext maupun proses kunci, dimana proses ke 3 dan ke 4 ditransformasikan menggunakan tabel S-Box untuk mendapatkan Ciphertext yang lebih acak. Pengujianjuga dilakukan menggunakan Avalanche Effect dan nilai Korelasi dimana terjadi perubahan karakter mencapai 50,625%, sehingga dapat digunakan sebagai alternatif dalam mengamankan data.

Kata Kunci : Kriptografi, Block Cipher, Pola Ekor Burung Murai Batu, Korelasi, S-Box, Avalanche Effect.

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

(9)

1. Pendahuluan

Penggunaan perangkat teknologi saat ini bisa dikatakan wajib mengingat kecepatan waktu merupakan tujuan utama baik dalam hal berkomunikasi atau berbagi informasi mulai dari yang sifatnya rahasia maupun yang sifatnya umum. Seiring dengan kemajuan tersebut tingkat kejahatan di era teknologi juga semakin meningkat dan berkembang, sehingga sangat perlu diperhatikan lagi segi keamanannya pada saat melakukan komunikasi atau hal-hal lain terutama yang bersifat rahasia.Meskipun tidak mungkin membuat keamanan yang sempurna setidaknya dapat dibuat serumit dan sesulit mungkin. Salah satu cara untuk meningkatkan keamanan terhadap data atau file yaitu dengan menggunakan metode kriptografi.Kriptografi berguna untuk membuat pesan atau informasi yang jelas(plaintext) menjadi pesan atau informasi yang tidak dapat dimengerti(chipertext). Kriptografi yang digunakan dalam penelitian ini bersifat simetris dengan menggunakan satu kunci untuk proses enkripsi dan dekripsi, digunakan kriptografi simetris karena tidak membutuhkan proses komputasi yang rumit untuk proses enkripsi dan dekripsi.

Algoritma pada perancangan kriptografi dalam penelitian ini adalah algoritma berbasis Block Cipher 64 bit dengan pola ekor burung murai batu 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 ekor burung murai batu digunakan sebagai pola pengambilan bit, pola pemasukan bit dibuat secara vertikal dan horisontal.Pola ekor burung murai batu digunakan sebagai pola dalam pengambilan bit karena memiliki bentuk yang unik sehingga menambah keacakan

plaintext.Plaintext akan dimasukkan ke dalam blok-blok dimana setiap blok berjumlah 64 bit,terdapat 24 putaran kombinasi dan 20 putaran enkripsi dan dekripsi dimana setiap putaran terdapat 4 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. S-Boxyang digunakan dalam penelitian ini adalah S-Box algoritma AES (Advanced Encryption Standard). Berdasarkan latar belakang masalah maka dilakukan penelitian yang membahas tentang perancangan Kriptografi Block Cipher 64 bitBerbasis Pola Ekor Burung Murai Batu.

2. Tinjauan Pustaka

Penelitian yang membahas perancangan kriptografi block ciphertelah banyak dilakukan. Penelitian pertama adalahKriptografi Block Cipher 256 Bit Berbasis Pola Teknik Tarian Dansa Tali,membahas tentang perancangan kriptografi block cipher yang menghasilkan Ciphertext yang acak. Kriptografi

Block Cipher 256 Bit ini memiliki 5 (lima) putaran proses enkripsi dimana hasil dari proses ke-2 dan ke-3 ditransformasi menggunakan tabel substitusi S-Box

(10)

yang sudah mencapai 50%sehingga dapat digunakan sebagai alternatif dalam pengamanan data[1].

Penelitian kedua adalah Perancangan Kriptografi Block Cipher Berbasis Pola Ikan Berenang,membahas tentang algoritma yang dikembangkan berdasarkan prinsip block cipher dengan ukuran blok 64 bit. Penelitian ini membuat kriptografi baru dengan prinsip kriptografi yaitu kotak – s, iterated cipherdan jaringan feistel. 4 proses yang diulang sebanyak 15 kali memberikan hasil yang paling efektif dari 20 putaran.Pengujian dalam penelitian ini menggunakan avalanche effect dan nilai korelasi. Hasil yang diperoleh dari penelitian ini bahwa penggunaan proses kotak – s, iterated cipher dan jaringan feistel menghasilkan rata–rata 43% dan korelasi dari 15 putaran menghasilkan nilai 0.21708[2].

Penelitian ketiga adalahPerancangan Kriptografi Block Cipher 64 byte

Berbasis Pola LaunchpadThe Chainsmokers - Closer (Launchpad Pro Cover) – YouTube,membahas tentang perancangan algoritma kriptografi Block Cipher 64 byte.Penelitian ini melakukan 24 proses kombinasi menghasilkan hasil korelasi yang terendah akan dilanjutkan ke proses 20 putaran enkripsi dan 20 putaran deskripsi. Algoritma ini mengacu pada prinsip-prinsip kriptografi dengan mengimplementasi operasi tranposisi, jaringan feistel dan substitusi tabel S-Box. Pengujian dilakukan dengan Avalanche Effect yang sudah mencapai 49,53125% dan korelasi dari 20 putaran menghasilkan nilai -0,035714691[3].

Penelitian-penelitian yang sudah ada terkait perancangan algoritmakriptografi simetris block cipher menjadi acuan dalam membentuk ide untuk merancang penelitian baru tentang perancangan Kriptografi Block Cipher 64 bitBerbasis Pola Ekor Burung Murai Batu. Pada penelitian ini dilakukan proses kombinasi pola24putaran, setelah mendapatkan kombinasi pola dengannilai korelasi terendah maka kombinasi pola tersebut digunakan dalam proses 20 putaran enkripsi dan dekripsi dimana setiap putaran terdapat 4 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.S-Boxyang digunakan dalam penelitian ini adalah S-Box algoritma AES (Advanced Encryption Standard).

(11)

Gambar 1 Skema Proses Enkripsi-Dekripsi Pada Block Cipher [4]

Misalkan blok plaintext (P) yang berukuran n bit

p

p

p

n

P

1

,

2

,

,

(1)

Blok ciphertext (C) maka blok C adalah

c

c

c

n

C

1

,

2

,

,

(2)

Kunci (K) maka kunci adalah

k

k

k

n

K

1

,

2

,

,

(3)

Sehingga proses enkripsi adalah

 

P

C

E

k

(4)

Proses dekripsi adalah

 

C

P

D

k

(C) = P (5)

Sebuah kriptografi dapat dikatakan sebagai suatu teknik kriptografi, harus melalui uji kriptosistem terlebih dahulu yaitu diuji dengan metode Stinson. Sebuah sistem akan dikatakan sebagai sistem kriptografi jika memenuhi 5 (lima)-tuple

(Five tuple)[5]:

1. P adalah himpunan berhingga dari plaintext,

2. C adalah himpunan berhingga dari ciphertext,

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

4. Untuk setiap 𝑘 𝜖 𝑲, terdapat aturan enkripsi 𝑒𝑘 𝜖 𝑬 dan berkorespodensi dengan aturan dekripsi 𝑑𝑘 𝜖 𝑫. Setiap𝑒𝑘∶ 𝑷 ⟶ 𝑪 dan𝑑𝑘∶ 𝑪 ⟶ 𝑷 adalah fungsi sedemikian hingga 𝑑𝑘(𝑒𝑘(𝑥)) = 𝑥 untuk setiap plaintext 𝑥 𝜖 𝑷.

Untuk menguji nilai algoritma yang dirancang memiliki hasil ciphertext

(12)

𝑟 =

{nΣx² – (Σx)²} {nΣy²nΣxy –(Σx) (Σy)– (Σy)²} (6)

Dimana:

n = Banyaknya pasangan data X dan Y

Σx = Total jumlah dari variabel X

Σy = Total jumlah dari variabel Y

Σx2 = Kuadrat dari total jumlah variabel X

Σy2 = Kuadrat dari total jumlah variabel Y

Σxy = Hasil perkalian dari total jumlah variabel X dan variabelY

Untuk memudahkan menentukan kuat lemahnya hubungan antara variabel yang diuji maka dapat digunakan Tabel 1 [6].

Tabel 1 Klasifikasi Koefisien Korelasi [6]

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 digunakan dalam penelitian ini dapat dibagi ke dalam 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

(13)

Gambar 2 Tahapan Penelitian

Tahapan Penelitian pada Gambar 2, dapat dijelaskan sebagai berikut; Tahap Identifikasi Masalah : Pada tahapan ini dilakukan analisis terhadap permasalahan yang ada, terkait dengan proses perancangan Kriptografi Block Cipher 64 bitBerbasis Pola Ekor Burung Murai Batu. Tahap Pengumpulan Data : Dalam tahapan ini dilakukan pengumpulan data serta sumber mengenai pembahasan terkait penelitian tersebut.Tahap Perancangan Kriptografi : Pada tahap ini akan dilakukan perancangan Kriptografi Block Cipher 64 bitBerbasis Pola Ekor Burung Murai Batu.Untuk pembuatan kunci, proses enkripsi dan proses dekripsi dikombinasikan dengan XOR, kemudian hasil dari XOR tersebut dikombinasikan dengan tabel S-Box.Tahap Pengujian Kriptografi : Pada tahap ini dilakukan pengujian terhadap kriptografi yang telah dibuat. Pengujian proses 24 kombinasi yang akan menghasilkan nilai korelasi terendah,kemudian dilakukan proses enkripsi dan dekripsi,yang terakhir yaitu mencari avalanche effect terbesar.

Penulisan Artikel Ilmiah : Dalam tahap terakhir ini dilakukan penulisan artikel mengenai prosesPerancangan Kriptografi BlockChiper 64 bit berbasis Pola Ekor Burung Murai Batu.

Dalam perancangan kriptografi block cipher 64 bit menggunakan pola ekor burung murai batu ini dilakukan dua proses yaitu proses enkripsi dan proses dekripsi. Enkripsi dan dekripsi itu sendiri dilakukan dalam 20 putaran yang di setiap putarannya terdapat 4 proses.

Gambar 3 merupakan rancangan alur proses enkripsi. Langkah-langkah alur proses enkripsi dapat dijabarkan sebagai berikut:

a) Menyiapkan plaintext;

b) Mengubah plaintext menjadi biner sesuai dalam tabel ASCII,

c) Dalam rancangan enkripsi plaintext dan kunci akan melewati empat proses pada setiap putaran;Putaran pertama Plaintext 1 (P1) melakukan transformasi dengan pola ekor burung murai batu dan di-XOR dengan Kunci 1 (K1) menghasilkan

Plaintext 2 (P2), Plaintext 2 (P2) melakukan transformasi dengan pola ekor burung murai batudan di-XOR dengan Kunci 2 (K2) menghasilkan Plaintext 3

(P3), Plaintext 3 (P3) melakukan transformasi dengan pola ekor burung murai batu dan dilakukan proses perumusan menggunakan tabel substitusi S-Box

kemudian baru di-XOR dengan Kunci 3 (K3) sehingga menghasilkan Plaintext

4 (P4), Plaintext 4 (P4) melakukan transformasi dengan pola ekor burung murai batu dan dilakukan proses perumusan menggunakan tabel substitusi S-Box

kemudian baru di-XOR dengan Kunci 4 (K4) menghasilkan Plaintext 5 (P5),

Plaintext 5 (P5) masuk pada putaran kedua sebagai Plaintext awal (P) dengan alur proses yang sama dengan putaran pertama, dan tahapan tersebut akan

Pengujian Kriptografi

(14)

berlanjut sampai putaran ke-20 yang menghasilkan Ciphertext akhir.

Gambar 3 Proses Alur Enkripsi

Gambar 4 merupakan rancangan alur proses dekripsi. Langkah-langkah alur proses dekripsi dapat dijabarkan sebagai berikut :

a) Menyiapkan ciphertext dan kunci.

b) Mengubah ciphertext dan kunci menjadi biner sesuai dalam tabel ASCII.

(15)

dengan pola menjadi C18 kemudian di-XOR dengan K18, mendapatkan hasil akhir P18, P18 ditransformasikan dengan pola menjadi C17 kemudian di-XOR dengan K17, akan menghasilkan P17. Kemudianmasuk pada putaran kedua, P17 ditransformasikan menjadi C16 kemudian dilakukan proses yang sama dengan putaran pertama, dan dilakukan sampai putaran ke-20 hingga menghasilkan

Plaintext.

(16)

4. Hasil dan Pembahasan

Dalam bagian ini akan membahas mengenai algoritma perancangan kriptografi block cipher 64 bit berbasis pola ekor burung murai batu secara terperinci. Gambar pola ekor burung murai batu yang digunakan untuk merancang kriptografi dapat ditunjukkan pada Gambar 5.

Gambar 5 Ekor Burung Murai Batu [7]

Dalam algoritma ini pola ekor burung murai batu digunakan untuk proses pengambilan bit di dalam matriks plaintext. Ekor Burung Murai Batu ini memiliki pola seperti yang ditunjukkan dalam Gambar 6.

Gambar 6Pola Berbasis Ekor Burung Murai Batu

(17)

yang bewarna abu-abu(1, 2, 3, ...8), selanjutnya mengikuti sesuai angka pada Gambar 6. Pola B kebalikan dari Pola A(8, 7, 6, ...1),selanjutnya mengikuti sesuai pada Gambar 6. Pola C diambil dari pola gambar luar yang bewarna putih (1, 2, 3, ...8), selanjutnya mengikuti sesuai pada Gambar 6. Pola D diambil dari gambar pola bagian tengah baris ke-3 kolom ke-4 sampai kolom ke-7 (1, 2, 3, 4) dan pada baris ke-6 kolom ke-4 sampai kolom ke-7 (5, 6, 7, 8), selanjutnya mengikuti sesuai pada Gambar 6.

Berdasarkan pola-pola yang sudah dirancang, dilakukan pengujian korelasi atau nilai keterikatan antara plaintext dan ciphertext dengan mengkombinasikan urutan pola untuk mendapatkan nilai rata-rata korelasi terbaik. Pengujian dilakukan dengan menggunakan plaintext “Ryand1t4” dan menggunakan kunci “Ayyu2510”.Berdasarkan hasil pengujian korelasi dengan menggunakan contoh

plaintext dankunci tersebut maka kombinasi pola hasil rata-rata terbaik yang akan digunakan sebagai acuan perancangan dalam proses enkripsi dan dekripsi.

Tabel 2 Rata-Rata Korelasi

RATA-RATA NILAI KORELASI

POLA RATA-RATA POLA RATA-RATA

A-B-C-D 0.026245498 C-A-B-D 0.653067496

A-B-D-C 0.164967709 C-A-D-B 0.062790278

A-C-B-D 0.012748346 C-B-A-D 0.218810669

A-C-D-B 0.289443359 C-B-D-A 0.567643652

A-D-B-C 0.4167294 C-D-A-B 0.072403631

A-D-C-B 0.229680096 C-D-B-A 0.367559344

B-A-C-D 0.043286825 D-A-B-C 0.524697202

B-A-D-C 0.391890451 D-A-C-B 0.701095721

B-C-A-D 0.140709426 D-B-A-C 0.178249882

B-C-D-A 0.601491566 D-B-C-A 0.598273935

B-D-A-C 0.026245498 D-C-A-B 0.16716055

B-D-C-A 0.164967709 D-C-B-A 0.141049486

(18)

Perancangan algoritma kriptografi Block Cipher 64 bit berbasis polaekor burung murai batu dilakukan dengan 20 putaran untuk mendapatkan ciphertext dan dalam setiap putaran terdapat 4(empat) proses. Proses enkripsi secara umum dapat dilihat pada Gambar 7. Proses pertama plaintext dan kunci dikonversi menjadi ASCII kemudian diubah ke bilangan biner. Plaintext kemudian dimasukkan ke dalam kolom matriks 8x8 menggunakan pola pemasukan bit dan dilakukan pengambilan dengan pola ekor burung murai batu. Kemudian hasil dari XOR ketiga dan keempat tersebut ditransformasikan menggunakan S-Boxyang kemudian diulang terus-menerus hingga putaran ke-20 untuk menghasilkan ciphertext.

Gambar 7Rancangan Proses Enkripsi

Untuk menjelaskan secara detailproses pemasukan bit dalam matriks maka diambil proses ke-1 pada putaran ke-1 sebagai contoh. Misalkan angka 1 merupakan inisialisasi setiap bit yang merupakan hasil konversi plaintext

(19)

Gambar 8Pola Pemasukan Bit Plaintext dan Kunci (Key)

Gambar 8 menjelaskan pola pemasukan bit plaintext dan kunci. Setiap 8 bit dari setiap karakter plaintext dan kunci dimasukkan pada setiap blok yang dimulai dari bagian kiri terlebih dahulu kemudian ke kanan mengikuti garis anak panah dan juga sesuai dengan urutan angka seperti pada Gambar 8.

Gambar 9Pola Pengambilan dan Pola Transpose Plaintext dan Kunci Proses 1

Gambar 9merupakan prosespengambilandan transpose pada proses 1,untuk

(20)

Gambar 10Pola Pengambilan dan Pola Transpose Plaintext dan Kunci Proses 2

Gambar 10merupakan proses pengambilan dan transpose pada proses 2,untuk plaintext dan kuncidilakukan dengan alur proses yang sama. Hasil dari XOR C1 yang ditransformasikan ke dalam P2 diambil setiap 8 bit mengikuti urutan angka (1, 2, 3, 4, ...64) pada Gambar 10. Sedangkan untuk K2 didapat dari transformasi K1.Kemudian dimasukkan kembali ke dalam kolom matriks baris pertama (8, 7, 6, ...1),baris kedua (9, 10, 11, ...16), dan untuk baris selanjutnya mengikuti anak panah dan urutan angka pada Gambar 10. Setelah itu P2 dan K2 akan di-XOR-kan menghasilkan C2.

Gambar 11Pola Pengambilan dan Pola Transpose Plaintext dan Kunci Proses 3

(21)

Gambar 12Pola Pengambilan dan Pola Transpose Plaintext dan Kunci Proses 4

Gambar 12 merupakan proses pengambilan dan transpose pada proses 4 atau proses terakhir, untuk plaintext dan kuncidilakukan dengan alur proses yang berbeda, karena untuk proses plaintext menggunakan tabel S-Box dan untuk kuncinya tidak menggunakan tabel S-Box. Hasil dari XOR C3 yang ditransformasikan ke dalam P4 diambil setiap 8 bit mengikuti urutan angka (1, 2, 3, 4, ...64) pada Gambar 12. Sedangkan untuk K4 didapat dari tansformasi K3. Kemudian P4 diproses menggunakan S-Box, setelah itu dimasukkan kembali ke dalam baris matriks kolom pertama (8, 7, 6, ..1), kolom kedua (9, 10, 11, ...16), dan untuk kolom selanjutnya mengikuti anak panah dan urutan angka pada Gambar 12. Setelah itu P4 dan K4 akan di-XOR-kan menghasilkan C4. Proses putaran 1 telah selesai, dan dilakukan proses yang sama secara terus-menerus hingga putaran ke 20 untuk mendapatkan Ciphertext.

Gambar 13Tabel Substitusi S-Box AES

(22)

dalam S-Box yang merupakan perpotongan baris x dengan kolom y.Misalnya S[0, 0] = 19, maka S’[0, 0] = d4.

Untuk pengujian algoritma dilakukan dengan mengambil plaintext adalah Ryand1t4 dan kunci adalah Ayyu2510. 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 D21F91B121675320 11 AD1AD395562362E7

2 A585591575E83F51 12 CEA93E24E583B1C6

3 DBDAA5C1A9115CE1 13 A99CBB3396D63CB

4 13A03ECD631EA360 14 5FADAF757578CB65

5 42701C992F30ABE1 15 302E68CE2B0D8AE

6 FB7E7C372E83DA6 16 1273F15D72C66A33

7 1DE1EA3D6A1AEFFC 17 C615AEC65FE96594

8 72E44940198740A2 18 25BDCD646B493C

9 3B95DBF706099BD 19 2C79316CE85ADC5

10 45D9D1D0295E226C 20 509925CD5E434439

Tabel 3 merupakan hasil enkripsi dari setiap putaran. Hasil dari putaran 20 merupakan final ciphertext.

(23)

Gambar 14 menjelaskan alur dekripsi. Proses dekripsi adalah proses merubah ciphertext menjadi plaintext awal. Dekripsi dilakukan sama seperti enkripsi, tetapi dekripsi dimulai dari putaran ke-20 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 matriks C4 kemudian di-XOR-kan dengan K4 dan pada proses tersebut akan menghasilkan P4. Kemudian P4 ditransformasikan dengan S-Box untuk mendapatkan hasil akhir P4, P4 digunakan sebagaiC3,lalu C3 di-XOR-kan dengan K3 dan menghasilkan P3, P3 ditransformasikan dengan S-Box untuk mendapatkan hasil akhir P3, P3 digunakan sebagai C2, lalu C2 XOR-kan dengan K2 menghasilkan C1, C1 kemudian di-XOR-kan dengan K1 untuk menghasilkan P1, proses itu dilakukan berulang-ulang sebanyak 20 putaran sesuai dengan banyaknya putaran enkripsi dan hasil akhir dari dekripsi putaran ke-20 adalah plaintext awal.

Tabel 4 Algoritma Enkripsi dan Dekripsi

Proses Enkripsi Proses Dekripsi

1. Masukkan plaintext 1. Masukkan C4

2. Plaintext dirubah ke ASCII 2. C4dirubah 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 masukan

6. Bit pengambilan dimasukkan lagi kedalam matriks untuk mendapatkan hasil akhir P1

6. C4 di XOR dengan K4

7. P1 di XOR dengan K1 menghasilkan C1

7. Bit P4 diubah ke BINER

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 di XOR dengan K2 menghasilkan C2

10. Hasil konversi diubah ke BINER

11. C2 diubah ke DEC 11. BINER P4 dimasukkan ke kolom matriks dengan pola pengambilan 12. DEC diubah ke HEX 12. P4=C3

13. Hasil HEX diubah menjadi BINER 13. BINER dimasukkan ke kolom C3 menggunakan pola masuk

15. C3 di XOR dengan K3 menghasilkan P3

16. P3 diproses dengan pola pengambilan proses 3

16. P3diubah ke BINER

17. BINER diubah menjadi DEC 17. BINER diubah ke HEX

18. DEC diubah menjadi HEX 18. Hasil HEX ditransformasikan dengan tabel S-BOX

19. HEX ditransformasikan menggunakan S-BOX

19. Hasil konversi diubah menjadi BINER

(24)

21. Hasil BINER dimasukkan ke blok matriks P3

21. P3=C2

22. P3 di XOR dengan K3 menghasilkan C3

24. P4 diproses dengan pola pengambilan proses 4

24. C2 di XOR dengan K2 menghasilkan P2

25. BINER diubah menjadi DEC 25. P2 diproses dengan pola pengambilan 26. DEC diubah menjadi HEX 26. Bit pengambilan dimasukkan lagi

kedalam kolom matriks P2 27. HEX ditransformasikan

menggunakan S-BOX

27. P2=C1

28. Hasil HEX diubah menjadi BINER 29. Hasil BINER dimasukkan ke blok

matriks P4

30. P4 di XOR dengan K4 menghasilkan C4

31. C4 diubah ke DEC

32. DEC diubah ke HEX, sebagai

ciphertext

28. C1 di XOR dengan K1 menghasilkan P1

29. P1 diproses dengan pola pengambilan 30. Bit pengambilan dimasukkan lagi

kedalam kolom matriks P1

31. Hasil akhir pemasukan bit diproses dengan pola pengambilan

32. Hasil akhir BINER P1 diubah ke DEC 33. 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 (Cipertext), dan proses dekripsi menghasilkan P1 (Plaintext) awal.

Algoritma proses Kunci (key), dijelaskan sebagai berkut: 1. Masukkan Kunci

2. Kunci diubah ke ASCII 3. ASCII diubah ke BINER

4. Bit BINER dimasukkan ke kolom K1 menggunakan pola masuk Kunci 5. Bit Kunci ditransposisikan dengan pola Kunci A

6. Transposisi K1 = K2

7. K2 ditransposisikan menggunakan pola Kunci C 8. Transposisi K2 = K3

9. K3 ditransposisikan menggunakan pola Kunci B 10.Transposisi K3 = K4

11.K4 ditransposisikan menggunakan pola Kunci D

Proses Enkripsi

{Program ini digunakan untuk melakukan proses enkripsi data}

Kamus

Dari BINER = blok matriks P1, masukkan BINER P1 menggunakan Pola pemasukan awal

Dari blok matriks P1 = BINER, ambil bit P1 dengan Pola Ekor Burung Murai Batu A

(25)

P1 dengan pola pemasukan proses 1

Dari BINER = blok matriks K1, masukkan BINER K1 menggunakan Pola pemasukan awal

Dari blok matriks K1 = BINER, ambil bit K1 K1 dengan pola pengambilan A

Dari BINER = blok matriks K1, masukkan BINER K1 dengan pola pemasukan proses 1

Output K1 Print C1

C1 = P2 C2 <- P2 ⊕ K2

Dari C1 = blok matriks P2, masukkan C1 P2 menggunakan Pola pemasukan awal

Dari blok matriks P2 = BINER, ambil bit P2 dengan Pola Ekor Burung Murai BatuC

Dari BINER = blok matriks P2, masukkan BINER P2 dengan pola pemasukan proses 2 Output P2

Input K Read K

K to ASCII ASCII to BINER

Dari BINER = blok matriks K2, masukkan BINER K1 menggunakan Pola pemasukan awal

Dari blok matriks K2 = BINER, ambil bit K2 K2 dengan pola pengambilan C

Dari BINER = blok matriks K2, masukkan BINER K2 dengan pola pemasukan proses 2

Output K2 Print C2

C2 = P3 C3 <- P3 ⊕ K3

Dari C2 = blok matriks P3, masukkan C2 P3 menggunakan Pola pemasukan awal

Dari blok matriks P3 = BINER, ambil bit P3 dengan Pola Ekor Burung Murai Batu B

BINER to HEXA

Dari HEXA = Tabel S-box, masukkan HEXA HEXA konversi menggunakan S-box

Print BINER S-box

Dari BINER = blok matriks P3, masukkan BINER P3 menggunakan pola pemasukan proses 3 Output P3

Dari K2 = blok matriks K3, masukkan K2

Dari blok matriks K3 = BINER, ambil bit K3 K3 dengan pola pengambilan B

Dari BINER = blok matriks K3, masukkan BINER K3 K3 menggunakan 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 Ekor Burung Murai Batu D

BINER to HEXA

Dari HEXA = Tabel S-box, masukkan HEXA HEXA konversi menggunakan S-box

Print BINER S-box

(26)

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

Dari BINER = blok matriks K1, masukkan BINER K1 menggunakan Pola pemasukan awal

Dari blok matriks K1 = BINER , ambil bit K1 K1 dengan Pola Ekor Burung Murai BatuD

Dari BINER = blok matriks K1, masukkan BINER K1 Output K1

K1 = K2

Dari K1 = blok matriks K2, masukkan Bit K1 dengan pola pemasukan awal

Dari blok matriks K2 = BINER, ambil bit K2 dengan pola pengambilan B

Dari BINER = blok matriks K2, masukkan BINER K2

Output K2 K2 = K3

Dari K2 = blok matriks K3, masukkan Bit K2 K2 dengan pola pemasukan awal

Dari blok matriks K3 = BINER, ambil bit K3 K3 dengan pola pengambilan C

Dari BINER = blok matriks K3, masukkan BINER K3 Output K3

K3 = K4

Dari K3 = blok matriks K4, masukkan K3

Dari blok matriks K4 = BINER, ambil bit K4 K4 dengan pola pengambilan A

Dari BINER = blok matriks K4, masukkan BINER K4 Output K4

Dari BINER = blok matriks C4, masukkan BINER C4 ⊕ K4

Print P4

Dari blok matriks P4 = BINER, ambil bit P4 BINER to HEXA

Dari HEXA = Tabel S-Box, masukkan HEXA HEXA ditranformasi menggunakan S-Box

Dari BINER P4 = blok matriks P4, masukkan BINER Menggunakan pola pengambilan D

Output P4 P4 = C3

P3 <- C3 ⊕ K3

Dari P4 = blok matriks C3, masukkan BINER C3 ⊕ K3

(27)

Dari blok matriks P3 = BINER, ambil bit P3 BINER to HEXA

Dari HEXA = Tabel S-Box, masukkan HEXA HEXA ditranformasi menggunakan S-Box

Dari BINER P3 = blok matriks P3, masukkan BINER Menggunakan pola pengambilan B

Output P3 P3 = C2

P2 <- C2 ⊕ K2

Dari P3 = blok matriks C2, masukkan BINER C2 ⊕ K2

Print P2

Dari blok matriks P2 = BINER, ambil bit P2 Dari BINER P2 = blok matrik P2, masukkan BINER

Menggunakan pola pengambilan C Output P2

P2 = C1

P1 <- C1 ⊕ K1

Dari P2 = blok matriks C1, masukkan BINER C1 ⊕ K1

Print P1

Dari blok matriks P1 = BINER, ambil bit P1

Dari BINER P1 = blok matrik P1, masukkan BINER Menggunakan pola pengambilan A

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 ciphertext

memiliki hubungan yang sangat kuat, tetapi jika mendekati 0 maka plaintext dan

ciphertext memiliki hubungan yang tidak kuat atau lemah.

Jumlah putaran ideal tidak dapat ditentukan, karena proses enkripsi atau pengacakan dari setiap pola berbeda-beda dan setiap pola memiliki kelemahan masing-masing. Tetapi jika putaran semakin banyak maka hasil enkripsi semakin baik.

(28)

Tabel 5 Nilai Korelasi Setiap Putaran

Putaran Korelasi Putaran Korelasi

1 0.012748346 11 0.254702133

2 0.531230097 12 0.171688111

3 0.262900019 13 0.432729172

4 0.690570092 14 0.630025898

5 0.010608295 15 0.178184785

6 0.217936228 16 0.000782535

7 0.267132186 17 0.619950605

8 0.203605568 18 0.835704713

9 0.15547317 19 0.588089526

10 0.284510726 20 0.5143265

Pada Tabel 5 terlihat setiap putaran memiliki nilai korelasi lemah sehingga dapat disimpulkan bahwa algoritma kriptografi block cipher 64 bit berbasis pola ekor burung murai batu ini dapat menghasilkan nilai korelasi enkripsi acak yang dapat dibuat dalam bentuk grafik pada Gambar 15.

Gambar 15 Grafik Perbandingan Plaintext dan Ciphertext

Gambar 15 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

(29)

Tabel 6 Tabel Presentase Avalanche Effect

Putaran Banyak Bit

Presentase (%) Putaran Banyak Bit

Presentase (%)

1 35 54,6875 11 36 56,25

2 31 48,4375 12 32 50

3 36 56,25 13 30 46,875

4 38 59,375 14 32 50

5 30 46,875 15 35 54,6875

6 35 54,6875 16 32 50

7 33 51,5625 17 28 43,75

8 28 43,75 18 33 51,5625

9 31 48,4375 19 27 42,1875

10 37 57,8125 20 29 45,3125

Rata-rata 50,625

Korelasi pola A-C-B-D merupakan pola terbaik dari korelasi pola yang lain, karena kombinasi pola A-C-B-D memiliki nilai korelasi lemah sebesar 0.012748346 (yang paling mendekati 0).

Yang menyebabkan hasil presentase nilai acak rata-rata 50% adalah, setiap putaran pada pengujian avalanche effectdariputaran pertama sampai putaran ke-20 yaitu banyaknya bit.

Gambar 16 Grafik Avalanche Effect

Gambar 16 yaitu hasil dari pengujian Avalanche Effect, pada penelitian ini

(30)

42,1875%ini berarti perubahan bitnya kurang baik. Berdasarkan hasilputaran pertama sampai dengan putaran ke-20 dapat disimpulkan bahwa rata-rata hasil pengujian Avalanche Effect ini yaitu sebesar 50,625%.

5. Simpulan

Berdasarkan penelitian yang telah dilakukan, dapat disimpulkan bahwa perancangan kriptografi block cipher64 bit berbasis pola ekor burung murai batu ini dikatakan sebagai sistem kriptografi. Dalam proses enkripsi, perancangan kriptografi block cipher64 bit berbasis pola ekor burung murai batu ini menghasilkan output enkripsi yang acak, dan juga dengan adanya tabel substitusi

S-Box yang digunakan pada proses ketiga dan keempat pada setiap putaran juga membuktikan bahwa hasil ciphertext tersebut menjadi semakin acak.Sehingga dapat digunakan sebagai alternatif dalam pengamanan data.Dalam perancangan kriptografi block cipher64 bit berbasis pola ekor burung murai batu, pengujian

avalanche effect yang dilakukan menunjukkan proses enkripsi disetiap putaran memiliki perubahan rata-rata sebesar 50,625%.

6. Daftar Pustaka

[1] Tomasoa, E.L., Pakereng, M. A. I., 2016 “Pengaruh S-Box Advanced Encryption Standard (AES) Terhadap Avalanche Effect Pada Perancangan Kriptografi Block Cipher 256 Bit Berbasis Pola Teknik Tarian Dansa Tali

Dari Maluku”. Teknik Informatika, Fakultas Teknologi Informasi,

Universitas Kristen Satya Wacana.

[2] Guntoro, Pakereng, M. A. I., 2016 “Perancangan Kriptografi Block CipherBerbasis Pola Ikan Berenang”. Teknik Informatika, Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana.

[3] Dinata, S. K., Pakereng, M. A. I., 2017 “Perancangan Kriptografi Block Cipher 64 byteBerbasis Pola LaunchpadThe Chainsmokers - Closer (Launchpad Pro Cover) – YouTube”.Teknik Informatika, Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana.

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

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

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

Crypton, STMIK MDP Palembang.

(31)

Gambar

Gambar 1 Skema Proses Enkripsi-Dekripsi Pada Block Cipher [4]
Tabel 1 Klasifikasi Koefisien Korelasi [6]
Gambar 2 Tahapan Penelitian
Gambar 3 Proses Alur Enkripsi
+7

Referensi

Dokumen terkait

Berbeda dengan gurunya al-Shâdhilî yang tidak pernah merasa keberatan untuk berhubungan dengan para pejabat negara pada masanya jika ia merasa ada alasan yang

Haji kali ini, dan terakhirnya ini, kemudian mengantarkan dia pada puncak perjalanan spiritual yang diidamkannya, dia merasa tidak punya batas lagi dengan Allah swt..

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

elastic SCAD SVM terbukti mampu menangani prediksi data berdimensi tinggi, khususnya data penyakit kanker payudara yang berasal dari DNA Microarray. Hal ini dapat

[r]

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

Melawan hukum yang bersifat formil yaitu suatu perbuatan itu bersifat melawan hukum apabila perbuatan diancam pidana dan dirumuskan sebagai suatu delik dalam