View
277
Download
6
Category
Preview:
Citation preview
Perancangan Kriptografi Block Cipher 64 Bit
Berbasis Pada Pola Formasi Sepak Bola 3-5-2
Artikel Ilmiah
Peneliti :
Tryanto Karinda (672011154)
Magdalena A. Ineke Pakereng, M.Kom.
Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
Mei 2017
ii
Perancangan Kriptografi Block Cipher 64 Bit
Berbasis Pada Pola Formasi Sepak Bola 3-5-2
Artikel Ilmiah
Diajukan Kepada
Fakultas Teknologi Informasi
Untuk Memperoleh Gelar Sarjana Komputer
Peneliti :
Tryanto Karinda (672011154)
Magdalena A. Ineke Pakereng, M.Kom.
Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
Mei 2017
iii
iv
v
vi
vii
viii
ix
x
xi
Perancangan Kriptografi Block Cipher 64 Bit
Berbasis Pada Pola Formasi Sepak Bola 3-5-2
1Tryanto Karinda, 2Magdalena A. Ineke Pakereng
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Jl. Diponegoro 52-60, Salatiga 50711, Indonesia
Email: 1)672011154@student.uksw.edu, 2)ineke.pakereng@staff.uksw.edu
Abstract
Cryptography is the study of techniques for secure data, and cryptography is
indispensableto increase the secure of data, therefore cryptography have to be always
upgraded. This research examine cryptography block cipher 64 bit with a football
formation pattern 3-5-2 in 5 times process of encryption and decryption.
The result of each round has a weak correlation value and is capable of producing
random ciphertext with Avalanche Effect testing reaching 48.5%. So a cryptographic
block cipher algorithm based on 3-5-2 football formation patterns can be used in
securing data.
Keywords: Cryptography,Cipher Block, 3-5-2 Football Formation Patterns
Abstrak
Kriptografi merupakan ilmu yang digunakan untuk menjaga dan mengamankan data,
dan kriptografi sangat dibutuhkan untuk meningkatkan kerahasiaan data, sehingga
kriptografi perlu untuk terus dikembangkan. Dalam penelitian ini dikembangkan
kriptografi block cipher 64 bit dengan pola formasi sepak bola 3-5-2 dengan proses
putaran sebanyak 5 (lima) kali pada proses enkripsi dan dekripsi. Hasil setiap putaran
memiliki nilai kolerasi lemah dan mampu menghasilkan ciphertext yang acak dengan
pengujian Avalanche Effect mencapai 48,5% Sehingga algoritma kriptografi block
cipher berbasis pada pola formasi sepak bola 3-5-2 dapat digunakan dalam
mengamankan data. Kata Kunci: Kriptografi, Block Cipher, Pola Formasi Sepak Bola 3-5-2
1)Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi, Universitas Kristen Satya
Wacana. 2)Staff Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana.
1
1. Pendahuluan
Perkembangan teknologi yang semakin maju di era globalisasi saat ini,
kebutuhan akan suatu informasi sekarang ini mencakup hampir disegala ruang
lingkup kehidupan, dimana setiap lapisan masyarakat maupun organisasi ingin
meningkatkan kebutuhan akan kerahasiaan data dengan akurat dan relavan, namun
dalam kenyataannya hal tersebut terkadang tidak sesuai dengan keinginan dan
harapan, dikarenakan kurang atau terbatasnya suatu tingkat keamanan yang baik
untuk menjaga kerahasiaan data.
Kriptografi (cryptography) merupakan ilmu dan seni penyimpanan pesan, data,
atau informasi secara aman. Kriptografi (Cryptography) berasal dari bahasa Yunani
yaitu dari kata Crypto dan Graphia yang berarti penulisan rahasia [1]. Kriptografi
merupakan bagian dari suatu cabang ilmu matematika yang disebut Cryptology.
Dalam mengenkripsi dan mendekripsi data, kriptografi membutuhkan suatu algoritma
(cipher) dan kunci (key). Cipher adalah fungsi matematika yang digunakan untuk
mengenkripsi dan mendekripsi. Sedangkan kunci merupakan sederetan bit yang
diperlukan untuk mengenkripsi dan mendekripsi data. Kriptografi sangat berperan
penting dalam keamanan informasi saat ini, mulai dari percakapan melalui telepon
genggam, transaksi di bank, sampai aktivasi peluru kendali pun menggunakan
kriptografi [2].
Block Cipher merupakan suatu algoritma yang mana input dan output-nya
berupa satu blok dan terdiri dari beberapa bit (1 blok terdiri dari 64 bit atau 128 bit).
Block cipher mempunyai banyak aplikasi, aplikasi tersebut digunakan untuk
memberikan layanan confidential (kerahasiaan), integritas data atau authentication
(pengesahan pengguna), dan juga dapat memberikan layanan key stream generator
untuk stream cipher [3].
Terdapat dua konsep utama dalam kriptografi yaitu enkripsi yang merupakan
proses mengubah data yang dikirim (Plaintext) menjadi sandi (Ciphertext) dan
dekripsi yang merupakan kebalikan dari enkripsi dimana ciphertext diubah kembali
menjadi plaintext [4].
Algoritma yang digunakan dalam penelitian ini adalah algoritma block cipher
64 bit dengan menggunakan pola formasi sepak bola 3-5-2. Formasi tersebut
mempunyai tujuan agar kriptografi ini dapat menunjukkan ciri khas dari sebuah
permainan Sepak Bola dalam sebuah team dan pola yang digunakan (Formasi 3-5-2)
dipakai dalam proses pengambilan bit sehingga dapat menyembunyikan kerahasiaan
data dengan lebih baik
2
2. Tinjauan Pustaka
Pada penelitian sebelumnya yang menjadi acuan dalam penelitian ini terkait
Kriptografi ada berbagai metode yang telah dilakukan. Salah satunya dalam
penelitian berjudul “Perancangan Kriptografi Block Cipher Berbasis Pola Formasi
Futsal 1-2-1”. Dalam penelitian ini membahas tentang sebuah metode kriptografi
Block Cipher dengan rancangan formasi khusus dalam dunia futsal yang biasa disebut
tiga satu dan dapat membuktikan bahwa pola ini dapat menyembunyikan kerahasiaan
data dengan sangat baik [5].
Penelitian selanjutnya yang berjudul “Pengaruh S-Box Advance Encryption
Standard (AES) pada Perubahan Ciphertext terhadap Perancangan Kriptografi Block
Cipher 64 Bit Berbasis Pola Huruf U“. Membahas mengenai algoritma kriptografi
dengan pendekatan block cipher berbasis 64 bit dengan pola huruf U sebagai pola
pengambilan bit-bit sebanyak 8 bit. Dimana juga terdapat pengaruh S-Box pada
perubahan ciphertext. Pola huruf U digunakan karena dapat memenuhi bit-bit pada
blok-blok yang ada yaitu 64 bit serta adanya transposisi pada pola huruf U [6].
Penelitian selanjutnya yang berjudul “Perancangan Kriptografi Block Cipher
Berbasis Pola Alat Musik Tifa Papua”. Dalam penelitian ini, membahas mengenai
kriptografi simetris yang mengenkripsi satu blok plaintext dengan jumlah bit tertentu
dan menghasilkan blok ciphertext dengan jumlah bit yang sama, sedangkan pola yang
digunakan (alat musik tifa Papua) dipakai dalam proses pengambilan bit [7].
Berdasarkan penelitian-penelitian yang sudah ada terkait perancangan
algoritma kriptografi blockcipher maka dilakukan penelitian yang berjudul
“Perancangan Kriptografi Block Cipher 64 Bit Berbasis Pada Pola formasi Sepak
Bola 3-5-2. Pada penelitian ini proses enkripsi dilakukan sebanyak lima (5) putaran
untuk melihat hasil dari keacakan ciphertext.
Permutasi berpengruh pada saat enkripsi tertentu yang sudah pasti rahasia,
karena permutasi tersebut adalah fungsi dari kunci rahasia. Jika pengguna
menggunakan satu block cipher untuk mengenkrip satu pesan dengan panjang
sembarang, pengguna menggunakan teknik yang dikenal sebagai modus operasi
untuk block cipher tersebut [8].
Skema proses enkripsi dan dekripsi block cipher secara umum digambarkan
pada Gambar 1.
3
Gambar 1 Skema Proses Enkripsi dan Dekripsi Pada Block Cipher[3].
Misalkan blok plainteks (P) yang berukuran n bit
npppP ,, 21 (1)
Blok ciphertext (C) maka blok C adalah
ncccC ,,, 21 (2)
Kunci (K) maka kunci adalah
nkkkK ,, 21 (3)
Sehingga proses Enkripsi adalah
CPEK (4)
Proses dekripsi adalah
PCDK (5)
Kriptografi harus melalui uji kriptosistem terlebih dahulu yang diuji dengan
metode Stinson. Sebuah sistem kriptografi harus memenuhi lima-tupel (Five-tuple)
(P, C, K, E , D) dengan kondisi [9] :
1. P adalah himpunan berhingga dari plainteks,
2. C adalah himpunan berhingga dari ciphertext,
3. K merupakan ruang kunci (keyspace), adalah himpunan berhingga dari kunci,
4
4. Untuk setiapk K,terdapat aturan enkripsiekEdan berkorespodensi dengan
aturan dekripsidkD.Setiapek : PCdan dk : C P adalah fungsi sedemikian
hingga dk(ek(x))= x untuk setiap plainteks xP.
Sehingga Untuk setiap 𝑘𝜖𝑲, terdapat aturan enkripsi 𝑒𝑘𝑬dan
berkorespondensi dengan aturan dekripsi 𝑑𝑘𝜖𝑫. Setiap 𝑒𝑘: 𝑷 → 𝑷dan dk:𝑪 → 𝑷
adalah fungsi sedemikian hingga 𝑑𝑘(𝑒𝑘(𝑥)) = 𝑥 untuk setiap plainteks 𝑥𝜖𝑷.
Untuk menguji nilai algoritma yang dirancang memiliki hasil ciphertext yang
acak dari plaintext maka digunakan Persamaan 6, dimana variable X merupakan
plaintext dan Y merupakan ciphertext.
𝑟 =nΣxy – (Σx) (Σy)
√{nΣx² – (Σx)²} {nΣ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 mengetahui nilai keacakan dari hasil enkripsi antara ciphertextdengan
plaintext digunakan diferensiasi data yang dimana perbandingan selisih antara dua
titik dalam kalkulus. Metode ini sering disebut sebagai turunan atau kemeringan dari
data. Jika diberikan kumpulan data ((x1,y1), (x2,y2), (x3,y3), …, (xn,yn)) dengan syarat
bahwa xi<xi+1 dimana i = 1…n. Data tersebut dapat divisualisasikan ke dalam
koordinat Cartesius untuk setiap x sebagai variabel bebas dan y atau kadang ditulis
sebagai f(x) sebagai variabel tak bebas. Untuk menentukan diferensiasi data pada dua
titik maka persamaan yang dapat dibentuk seperti persamaan 7.
)(
)(
ba
ab
xx
yy
x
y
(7)
Skema enkripsi dan dekripsi dengan block cipher ditunjukkan pada Gambar 1.
Setiap proses enkripsi maupun dekripsi dilakukan dalam bentuk blok-blok. Kunci
yang digunakan pada tiap blok adalah kunci yang sama.
5
Pengujian statistika dengan menggunakan korelasi untuk mengukur kekuatan
hubungan dua variable. Untuk memudahkan menentukan kuat lemahnya hubungan
antara variabel yang diuji maka dapat digunakan Tabel 1.
Tabel 1 Klasifikasi Koefisien Korelasi
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
Perancangan kriptografi ini akan diselesaikan melalui beberapa tahapan
penelitianyaitu: (1) Identifikasi Masalah, (2)Pengumpulan Data, (3) Perancangan
Kriptografi, (4) Uji Kriptografi,dan (5) Penulisan Laporan.
Gambar 2 Tahapan Penelitian
Identifikasi Masalah
Pengumpulan Data
Perancangan Kriptografi
Uji Kriptografi
Penulisan Laporan
6
Tahapan penelitian pada Gambar 2, dapat dijelaskan sebagai berikut : Tahap
Identifikasi masalah : pada tahapan ini dilakukan analisa terhadap masalah yang ada,
dan tentang apa saja yang dibutuhkan dalam menyelesaikan perancangan kriptografi
ini. Batasan masalah yang dibahas dalam perancangan kriptografi berbasis pola
formasi sepak bola 3-5-2, yaitu : 1 Plaintext dan kunci dibatasi maksimal 8 karakter;
2) Block-block yang digunakan pada perancangan kriptografi block cipher ini
menggunakan block 8x8 (64-bit); Tahap pengumpulan data : Dalam tahap ini
dilakukan pengumpulan data yaitu menemukan pola yang akan digunakan dalam
proses perancangan kriptografi block cipher dan mengumpulkan data dari penelitian
sebelumnya; Tahap Perancangan Kriptografi : Pada tahap ini akan dirancang
kriptografi menggunakan pola formasi sepak bola 3-5-2 kemudian membuat
rancangan enkripsi dan dekripsi, enkripsi pada kunci dibuat sesuai alur yang telah
ditentukan pada kunci; Tahap pengujian kriptografi : Pada tahap ini akan dilakukan
pengujian tentang kriptografi yang sudah dirancang, serta menguji korelasi dari tiap
pola yang ada.
Dalam penelitian ini, perancangan kriptografi block cipher 64 bit berbasis
pola formasi sepak bola 3-5-2 dibuat kombinasi sebanyak 24 kombinasi yang terdiri
dari kombinasi A, B, C, D. Proses enkripsi sendiri dilakukan dalam 5 (lima) putaran,
yang ditunjukkan dalam Gambar 3.
Gambar 3Rancangan Alur Proses Putaran Enkripsi
7
Gambar 3 merupakan rancangan alur proses enkripsi pada perancangan
kriptografi block cipher berbasis pola formasi sepak bola 3-5-2. Langkah-langkah
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: 1)
Putaran pertama pengambilan bit Plaintext (P1) melakukan transformasi dengan pola
formasi sepak bola 3-5-2 dan di-XOR dengan Kunci 1 (K1) menghasilkan Plaintext 2
(P2); 2) Plaintext 2 (P2) melakukan transformasi dengan pola formasi sepak bola 3-5-
2 dan di-XOR dengan Kunci 2 (K2) menghasilkan Plaintext 3 (P3); 3) Plaintext 3
(P3) melakukan transformasi dengan pola sepak bola 3-5-2 dan di-XOR dengan
Kunci 3 (K3) sehingga menghasilkan Plaintext 4 (4); 4) plaintext 4 (P4) di-XOR
dengan Kunci 4 (K4) kemudian hasil XOR ditransformasikan lagi dengan table
substitusi S-Box sehingga menghasilkan ciphertext 4; 5) Ciphertext 4 (C4) masuk
pada putaran berikutnya sampai putaran ke 5 dengan alur proses yang sama dengan
putaran pertama, dan hasil Ciphertext 4 putaran 5 merupakan Ciphertext (C) final.
4 Hasil dan Pembahasan
Pada bagian ini akan membahas secara rinci mengenai perancangan algoritma
kriptografi block cipher 64 bit berbasis pada pola formasi sepak bola 3-5-2. Pada
Bagian ini juga akan membahas tentang proses enkripsi dan dekripsi. Teknik proses
enkripsi melibatkan tabel subtitusi untuk memperbesar analisis avalanche effect.
Dalam algoritma ini pola formasi sepak bola 3-5-2 digunakan dalam proses
pengambilan bit. Pembuatan pola formasi 3-5-2 dapat dilihat dalam Gambar 4.
Pengambilan bit pada Pola A Pengambilan bit pada Pola B
8
Pengambilan bit pada Pola C Pengambilan bit pada Pola D
Gambar 4 Rancangan Pola Formasi Sepak Bola 3-5-2
Gambar 4 menjelaskan tentang pengambilan bit-bit yang terlewati pada pola
formasi 3-5-2. Cara pengambilan bit-bit tersebut mengikuti angka 1 sampai dengan
angka 64. Dimulai dengan blok berwarna merah, kemudian warna hijau, dilanjutkan
ke warna ungu, dilanjutkan ke warna merah muda, dan selanjutnya ke warna biru.
Dan block yang berwarna putih untuk pengambilan bit sisa diluar dari pola 3-5-2.
Dalam proses enkripsi dan deskripsi juga terdapat pola pemasukan bit
kedalam blok-blok plainteks dan kunci. Ada 4 pola pemasukan bilangan yang
digunakan sebagai alur pemasukan bilangan pada proses ini, dapat dilihat dalam
Gambar 5, Gambar 6, Gambar 7, dan Gambar8.
Gambar 5 Proses Pemasukan Bit (P1) Gambar 6 Proses Pemasukan Bit (P2)
Gambar 7 Proses Pemasukan Bit (P3) Gambar 8 Proses Pemasukan Bit (P4)
9
Pola pemasukan bit untuk pola A (proses 1), pola B (proses 2), pola C (proses
3), dan pola D (proses 4). Proses pemasukan bit yang pertama yaitu bit diambil dan
dimasukkan dari kiri ke kanan dan pemasukkan bit ini berada di proses 1. Pada proses
berikutnya bit yang masuk dari atas ke bawah, proses 3 menggunakan pemasukan
bilangan dari kanan ke kiri dan proses 4 pemasukan bilangannya dari bawah ke atas
seperti yang sudah ditunjukkan oleh Gambar 5 sampai Gambar 8.
Alur proses enkripsi telah dijelaskan di pembahasan sebelumnya yaitu pada
bagian metode dan perancangan algoritma. Proses dari setiap kombinasi dapat
menghasilkan kombinasi plaintext sebanyak 24 kombinasi dan kunci ABCD agar
dapat mengetahui nilai korelasi atau keterkaitan antara ciphertext dan plaintext.
Tabel 2 Hasil Kombinasi Pola
KOMBINASI
POLA NILAI KORELASI POLA NILAI KORELASI
A-B-C-D 0.136949291 C-A-B-D -0.06564861 A-B-D-C -0.457516531 C-A-D-B -0.231021383 A-C-B-D 0.09251155 C-B-A-D -0.10455052 A-C-D-B -0.193197121 C-B-D-A -0.037090052 A-D-B-C - 0.488066007 C-D-A-B -0.341487301 A-D-C-B -0.438427285 C-D-B-A -0.273200765 B-A-C-D 0.577399136 D-A-C-B -0.666022146 B-A-D-C -0.341487301 D-A-B-C -0.666022146 B-C-A-D -0.10455052 D-B-A-C -0.22287943 B-C-D-A -0.039098283 D-B-C-A -0.041329038 B-D-A-C -0.341487301 D-C-A-B -0.139664188 B-D-C-A -0.273200765 D-C-B-A 0.109182389
Tabel 2 menunjukkan bahwa urutan kombinasi pola dengan nilai korelasi
yang terbaik terdapat pada urutan pola kombinasi C-B-D-A dengan nilai korelasinya
mendekati 0.
Berdasarkan pola-pola yang sudah dirancang, dilakukan pengujian korelasi
atau nilai keterikatan antara plaintext dan ciphertext dengan menkombinasikan urutan
pola untuk mendapatkan rata-rata korelasi terbaik. Pengujian dilakukan dengan
menggunakan 3 (tiga) contoh plaintext yang berbeda yaitu:
- gbipUKSW
- F4KULT4$
- I@A4”.x>
menggunakan kunci : mAiP2472
10
Berdasarkan hasil pengujian korelasi dengan mengganti plaintext dengan karakter
yang berbeda, maka hasil rata-rata korelasi terbaik yang akan digunakan sebagai
acuan untuk perancangan proses enkripsi.
Tabel 3 Tabel Rata-Rata Hasil Korelasi
RATA-RATA NILAI KORELASI
POLA RATA-RATA POLA RATA-RATA
A-B-C-D 0.05607848 C-A-B-D -0.290855051
A-B-D-C -0.073973213 C-A-D-B -0.202896089
A-C-B-D 0.183819708 C-B-A-D 0.138672634
A-C-D-B -0.158897496 C-B-D-A 0.126523983
A-D-B-C -0.183052365 C-D-A-B -0.0327015772
A-D-C-B -0.454922498 C-D-B-A -0.226188722
B-A-C-D 0.20899247 D-A-C-B -0.571975854
B-A-D-C -155453557.2 D-A-B-C -0.571975854
B-C-A-D 0.138672634 D-B-A-C -0.365296066
B-C-D-A 0.137655527 D-B-C-A -0.112876674
B-D-A-C -0.327015662 D-C-A-B -0.49431708
B-D-C-A -0.22618872 D-C-B-A 0.144552776
Tabel 3 menunjukkan bahwa setelah mendapatkan urutan proses kombinasi yang
terbaik dari pengujian hasil rata-rata korelasi, didapatkan rata-rata hasil korelasi
terbaik yaitu 0.05607848 dengan urutan proses plaintext A-B-C-D. Kombinasi ini
pun akan dilanjutkan ke dalam konsep kerja enkripsi algoritma kriptografi sampai
putaran ke-5 untuk menghasilkan ciphertext.
Sebelumnya sudah dijelaskan bahwa perancangan algoritma kriptografi Block
Cipher 64 bit berbasis pola formasi sepak bola 3-5-2 ini hanya dilakukan dalam 5
putaran untuk mendapatkan ciphertext dan dalam setiap putaran terdapat 4 (empat)
proses. Proses enkripsi secara umum dapat dilihat pada Gambar 3. Proses pertama
plaintext dan kunci dikonversi menjadi ASCII kemudian diubah ke bilangan biner.
Plaintext kemudian dimasukkan ke dalam kolom matriks 8 x 8 menggunakan pola
11
pemasukan bit dan dilakukan pengambilan dengan pola formasi sepak bola 3-5-2
pada setiap proses.
Gambar 9 Tabel Subtitusi S-Box
Gambar 9 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 antara baris x dengan kolom y.
Misalnya S[0, 0] = 19,maka S’[0, 0] = d4.
Tabel 4 Hasil Setiap Putaran
Putaran Ciphertext
Putaran 1 BF53523BE3CAC5B8
Putaran 2 4B0F298C0CC1A824
Putaran 3 26075CE593D104C7
Putaran 4 0C00E9D950813352
Putaran 5 1329AA633CF7C76C
Tabel 4 merupakan hasil enkripsi dari setiap putaran. Hasil dari putaran 5
12
merupakan final ciphertext. Nilai korelasi antara plaintext dan ciphertext dapat
digunakan untuk mengukur seberapa acak hasil enkripsi ciphertext dengan plaintext.
Proses dekripsi merupakan kebalikan dari proses enkripsi atau suatu proses
untuk mengembalikan ciphertext menjadi plaintext awal. Proses dekripsi yang dibuat
harus sesuai dengan urutan pola pada tiap proses agar pesan yang sudah dirubah
kedalam ciphertext dapat kembali ke plaintext.
Gambar 10 Konsep Proses Dekripsi
Gambar 10 menjelaskan alur proses pengembalian ciphertext ke plaintext.
Untuk mengembalikan pesan enkripsi ke pesan asli, perlu dilakukan tahapan-tahapan
sesuai Gambar 10, dimana antara kunci di proses 4 (K4) dengan Plaintext 4 (P4) di-
XOR sehingga mendapatkan Ciphertext 3 (C3) selanjutnya selanjutnya kunci dari
proses 3 (K3) di-XOR lagi dengan Plaintext 3 (P3) sehingga menghasilkan
Ciphertext 2 (C2), proses ini dilakukan terus sebanyak 5 (lima) putaran sesuai jumlah
putaran yang digunakan dalam perancangan sehingga akan mengembalikan
Ciphertext kedalam Plaintext.
13
Gambar 11 Pemasukan Bit pada Proses Dekripsi
Gambar 11 menjelaskan tentang proses pemasukan per 8 bit kedalam matriks saat
proses dekripsi dengan menggunakan pola formasi sepak bola 3-5-2 yang diurutkan
mulai dari angka 1.
Gambar 12 Pengambilan Bit pada Proses Dekripsi
Gambar 12 menjelaskan tentang proses pengambilan per 8 bit menggunakan pola
formasi sepak bola 3-5-2 yang diurutkan mulai dari arah anak panah kiri atas hingga
sampai pada angka 6 pada gambar matriks tersebut.
Alur proses pengembalian ciphertext ke plaintext, pola yang digunakan dalam
pengambilan bit pada proses enkripsi akan dipakai sebagai pola pemasukan pada
proses dekripsi. Sebaliknya pola pemasukan yang digunakan pada proses enkripsi
akan dipakai dalam pola pengambilan proses dekripsi.
Tabel 5 Hasil Perubahan Bit pada putaran
Putaran Perubahan Bit AE
Putaran 1 1 1.5625
Putaran 2 6 9.375
Putaran 3 10 15.625
Putaran 4 19 29.6875
Putaran 5 31 48.4375
14
Pada Tabel 5 merupakan hasil enkripsi dari setiap putaran untuk mengukur
seberapa acak hasil enkripsi ciphertext. Nilai keacakan bit antara putaran pertama
hanya 1 bit yang berubah kemudian pada putaran 2 terjadi perubahan pada 6 bit,
putaran 3 menunjukkan perubahan pada 10 bit, sampai dengan putaran 5
menunjukkan peningkatan perubahan bit sebanyak 31.
Gambar 10 Grafik Nilai Avalanche Effect
Pengujian Avalanche effect dilakukan untuk mengetahui seberapa besar
(persen) nilai keacakan bit. Melihat hasil perubahan pada Grafik gambar 10,
pengujian nilai bit Avalanche effect yang terjadi pada setiap proses putaran
mendapatkan hasil nilai terbaik dengan nilai presentase sebesar 48.4375%.
Tabel 6 Algoritma Proses Enkripsi dan Dekripsi.
Algoritma Proses Enkripsi Algoritma Proses Dekripsi 1. Masukkan plaintext
2. Plaintext diubah ke ASCII
3. ASCII diubah ke BINER
4. Bit BINER dimasukkan ke kolom matriks
P1 menggunakan pola pemasukan bit
proses A padaPlaintext
5. Bit P1 ditransposisikandari kolom matriks
P1 dengan pola pengambilan bit proses A
pada plaintext
1. Masukkan C4
2. Nilai C4 disubstitusikan dengan tabel
S-BOX
3. Hasil subtitusi diubah ke Biner
4. Bit biner C4 dimasukkan ke kolom
matriks P4 menggunakan pola
pengambilan bit proses D pada
plaintext
5. Bit C4 ditransposisikan dari kolom
matriks P4 dengan pola pemasukan bit
15
Tabel 6 menjelaskan tentang proses enkripsi dan dekripsi dari Ciphertext menjadi
karakter semula (karakter input).
Algoritma proses kunci (Key), adalah sebagai berikut :
1. Masukkan Kunci
2. Kunci diubah ke ASCII
3. ASCII diubah ke BINER
4. Bit kunci dimasukkan ke kolom matriks K1 menggunakan pola pemasukan bit
proses A pada kunci
5. Bit kunci ditransposisikan dari kolom matriks K1 menggunakan pola
pengambilan bit proses A pada kunci
6. Hasil transposisi K1 dimasukkan ke kolom matriks K2 menggunakan pola
pemasukan bit proses B pada kunci
6. P1 di-XOR dengan K1 menghasilkan C1
7. C1 = P2
8. Bit Biner dimasukan ke kolom matriks P2
menggunakan pola pemasukan proses B
pada plaintext
9. Bit P2 ditransposisikan dari kolom matriks
P2 dengan pola pengambilan bit proses B
pada plaintext
10. P2 di-XOR dengan K2 menghasilkan C2
11. C2 = P3
12. Bit Biner dimasukkan ke kolom matriks P3
menggunakan bit proses C pada plaintext
13. Bit P3 ditransposisikan dari kolom matriks
P3 dengan pola pengambilan bit proses C
pada plaintext
14. P3 di-XOR dengan K3 menghasilkan C3
15. C3 = P4
16. Bit Biner dimasukkan ke kolom matriks P4
menggunakan pola bit pemasukan proses D
pada plaintext
17. Bit P4 ditransposisikkan dari kolom
matriks P4 dengan pola pengambilan
proses D pada plaintext
18. P4 di-XOR dengan K4 menghasilkan C4,
hasil C4 merupakan nilai biner
19. BINER C4 diubah ke HEXA
20. Nilai HEXA disubstitusikan dengan
tabel S-Box.
proses D pada plaintext
6. C4 di-XOR dengan K4 menghasilkan P4
7. P4 = C3
8. Bit biner C3 dimasukkan ke kolom matriks
P3 menggunakan pola pengambilan bit
proses C pada plaintext
9. Bit C3 ditransposisikan dari kolom matriks
P3 dengan pola pemasukan bit C pada
plaintext
10. C3 di-XOR dengan K3 menghasilkan P3
11. P3 = C2
12. Bit biner C2 dimasukan ke kolom matriks
P2 menggunakan pola pengambilan bit B
pada plaintext
13. Bit C2 ditransposisikan dari kolom
matriks P2 dengan pola pemasukan bit
proses B pada plaintext
14. C2 di-XOR dengan K2 menghasilkan
P2
15. P2 =C1
16. Bit biner C1 dimasukkan ke kolom
matriks P1 menggunakan pola
pengambilan bit proses A pada
plaintext
17. Bit C1 ditransposisikan dari kolom
matriks P1 dengan pola pemasukan bit
proses A pada plaintext
18. C1 di-XOR dengan K1 menghasilkan
P1
19. P1 = Plaintext
20. Hasil plaintext dalam bentuk biner
21. Biner Plaintext diubah kedalam
desimal
22. Decimal Plaintext diubah ke karakter
16
7. Bit K2 ditransposisikan dari kolom matriks K2 menggunakan pola
pengambilan bit proses B pada kunci
8. Hasil transposisi K2 dimasukkan ke kolom matriks K3 menggunakan pola
pemasukan bit proses C pada kunci
9. Bit K3 ditransposisikan dari kolom matriks K3 menggunakan pola
pengambilan bit proses C pada kunci
10. Hasil transposisi K3 dimasukkan ke kolom matriks K4 menggunakan pola
pemasukan bit proses D pada kunci
11. Bit K4 ditransposisikan dari kolom matriks K4 menggunakan pola
pengambilan bit proses D pada kunci
Berdasarkan algoritma enkripsi dan dekripsi yang telah dijelaskan sebelumnya,
Pseudocode proses enkripsi dan dekripsi dapat dituliskan sebagai berikut :
Proses Enkripsi
{Program ini digunakan untuk melakukan proses enkripsi data}
Kamus
P,K,P1,P2,P3,P4,K1,K2,K3,K4, = integer
C1,C2,C3,C4 = integer
Start
C1 <- P1 ⨁ K1
Input P
Read P
P to ASCII
ASCII to BINER
Dari BINER = kolom matriks P1, masukkan BINER
P1 Transposisi mengunakan Pola Formasi 3-5-2 A
Output P1
Input K
Read K
K to ASCII
ASCII to BINER
Dari BINER = kolom matriks K1, masukkan BINER
K1 Transposisi mengunakan Kunci A
Output K1
Print C1
C1 = P2
C2 <- P2 ⨁ K2
Dari C1 = kolom matriks P2, masukkan C1
P2 Transposisi menggunakan Pola Formasi 3-5-2 B
Output P2
Dari K1 = kolom matriks K2, masukkan K1
K2 Transposisi menggunakan pola Kunci B
Ouput K2
Print C2
C2=P3
C3 <- P3 ⨁ K3
Dari C2= kolom matriks P3, Masukkan C2
P3 Transposisi menggunakan Pola Formasi 3-5-2 C
Output P3
17
Dari K2 = kolom matriks K3, masukkan K2
K3 Transposisi menggunakan pola Kunci C
Output K3
Print C3
C3=P4
C4<-P4⨁K4
Dari C3=kolom matriks P4, masukkan C3
P4 Transposisi menggunakan Pola Formasi 3-5-2 D
Output P4
Dari K3=kolom matriks K4, masukkan K3
K4 Transposisi menggunakan pola kunci D
Output K4
Print C4
Biner S-Box <- Invers Hexa C4
C4 to BINER
BINER to HEXA
Dari HEXA = Tabel S-Box, masukkan HEXA
HEXA Substitusi menggunakan S-Box
Print BINER S-Box
C4 = P (Putaran++)
Repeat (Putaran = 5)
End
Proses Dekripsi
{Program ini digunakan untuk melakukan proses dekripsi data}
Kamus
P,C,K,P1,P2,P3,P4,K1,K2,K3,K4, = integer
C1,C2,C3,C4 = integer
Start
K2 <- Traposisi K1
Input K
Read K
K to ASCII
ASCII to BINER
Dari BINER = kolom matriks K1, masukkan BINER
K1 Transposisi menggunakan pola Kunci A
Output K2
K3 <- Traposisi K2
K2 Transposisi mengunakan pola Kunci B
Output K3
K4 <- Traposisi K3
K3 Transposisi mengunakan pola Kunci C
Output K4
K4 Transposisi menggunakan pola Kunci D
P4 <- Transposisi dari hasil C4 ⨁ K4
Biner S-box <-invers Hexa P4
P4 to BINER
BINER to HEXA
Dari Biner=Tabel S-Box, masukkan HEXA
18
HEXA Subtitusi menggunakan S-Box
Dari BINER S-Box=kolom matriks C4 masukkan BINER S-Box
C4 ⨁ K4
Transposisi terbalik menggunakan Pola Formasi 3-5-2 D
Print P4
P3 <- Transposisi dari hasil C3 ⨁ K3
Input C
Read C
C3 to ASCII
ASCII to BINER
Dari Biner=kolom matriks C3, masukkan Biner
C3 ⨁ K3
Transposisi terbalik menggunakan Pola Formasi 3-5-2 C
Print P3
P2 <- Transposisi dari hasil C2⨁ K2
Input C
Read C
C2 to ASCII
ASCII to BINER
Dari Biner=kolom matriks C2, masukkan Biner
C2 ⨁ K2
Transposisi terbalik menggunakan Pola Formasi 3-5-2 B
Print P2
P2=C1
P1<- Transposisi dari hasil C1 ⨁ K1
P1⨁ K1
Transposisi terbalik menggunakan Pola Formasi 3-5-2 A
Print P1
P1 to BINER
BINER to ASCII
ASCII to CHAR
Print P
End
5. Simpulan
Berdasarkan penelitian dan pengujian yang dilakukan pada perancangan
kriptografi block cipher 64 bit berbasis pada pola formasi sepak bola 3-5-2, maka
dapat disimpulkan formasi 3-5-2 dapat digunakan sebagai pola pengambilan plaintext
dan menghasilkan ciphertext yang acak dan jauh berbeda dengan plaintext. Algoritma
kriptografi block cipher 64 bit berbasis pola formasi sepak bola 3-5-2 terdiri dari 5
putaran untuk setiap proses enkripsi, dimana setiap putaran terdiri dari 4 proses dan
disubstitusi menggunakan tabel substitusi S-Box dan menunjukkan perubahan bit
yang cukup besar pada setiap proses putaran dan mampu menghasilkan enkripsi yang
acak dengan pengujian avalanche effect mencapai 48.4375% dan memenuhi konsep
five-tuple Stinson dan prinsip block cipher sehingga dapat digunakan sebagai
alternative dalam pengamanan data atau informasi berupa teks.
19
6. Daftar Pustaka
[1] Forouzan, B. A., 2007. Cryptography & Network Security. McGraw-Hill, Inc.
[2] Munir, R., 2006. Kriptografi. Informatika, Bandung
[3] Ariyus, D., 2008. Pengantar Kriptografi Teori, Analisis dan Implementasi,
Penerbit Andi.
[4] Dipanegara, A., 2011, New Concept Hacking. Jakarta: Agogos Publishig.
[5] Louhenapessy, N.M., Pakereng, M. A. I., 2017, Perancangan Kriptografi
Block Cipher Berbasis Pola Formasi Futsal 1-2-1. Salatiga : Jurusan Teknik
Informatika Universitas Kristen Satya Wacana.
[6] Parapat, F. A. C., Pakereng, M. A. I., 2017, Pengaruh S-Box pada Perubahan
Ciphertext Terhadap Perancangan Kriptografi Block Cipher 64 Bit Berbasis
Pola Huruf U. Salatiga : Jurusan Teknik Informatika Universitas Kristen
Satya Wacana.
[7] Heipon, Y. A., Pakereng, M. A. I., 2017, Perancangan Kriptografi Block
Cipher Berbasis Pola Alat Musik Tifa Papua. Salatiga : Jurusan Teknik
Informatika Universitas Kristen Satya Wacana.
[8] Schneier, B., 1996, Applied Cryptography, Secon Editor, New York: John
Wiley and Sons.
[9] Stinson, D. R., 1995, Cryptography: Theory and Practice. CRC Press, Boca
Raton, London, Tokyo
Recommended