Institutional Repository | Satya Wacana Christian University: Perancangan Kriptografi Block Cipher 64 bit Berbasis Pola Bentuk Senapan Mesin Ringan Uzi

Perancangan Kriptografi Block Cipher 64 bit Berbasis Pola Bentuk Senapan Mesin Ringan Uzi

  

Artikel Ilmiah

Peneliti :

Galih Kurnia Jati (672013051)

  

Magdalena A. Ineke Pakereng, M.Kom.

  

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

  

November 2017

Perancangan Kriptografi Block Cipher 64 bit Berbasis Pola Bentuk Senapan Mesin Ringan Uzi

  

Artikel Ilmiah

Diajukan Kepada

Fakultas Teknologi Informasi

Untuk Memperoleh Gelar Sarjana Komputer

  

Peneliti :

Galih Kurnia Jati (672013155)

Magdalena A. Ineke Pakereng, M.Kom.

  

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

  

November 2017

  1. Pendahuluan

  Pesatnya perkembangan teknologi membuat pekerjaan semakin mudah dan semua data penting dalam pekerjaan dapat tersimpan banyak dan mudah. Tetapi semua data tersebut belum tentu aman, maka dari itu diperlukan teknik keamanan data yang dikenal dengan nama kriptografi. Kriptografi adalah penyandian data dengan teknik matematika yang bertujuan untuk mengamankan data.

  Perbedaan yang mendasar mengenai kriptografi dan steganografi adalah cara untuk merahasiakan data. Pada kriptografi data yang sudah di enkripsi akan berbeda dengan data sebelum di enkripsi sehingga jika data dicuri tidak bisa mengartikan data tersebut selain pengirim dan penerima data, sedangkan pada steganografi menyembunyikan data dengan suatu cara sehingga selain pengirim dan penerima tidak ada seorangpun yang mengetahui ada suatu data rahasia.

  Kriptografi sangat dibutuhkan apalagi di era modern ini bukan hanya mengamankan data tetapi keamanan informasi mulai dari percakapan telepon genggam, transaksi bank dan aktivasi peluru kendali. Kriptografi ada dua macam yaitu kriptografi klasik dan kriptografi modern. Dalam penelitian ini kriptografi yang digunakan adalah kriptografi modern yang bersifat simetris menggunakan pola berbasis senapan mesin ringan uzi dan menggunakan satu kunci untuk proses enkripsi dan dekripsi dengan cara kerja informasi atau pesan yang jelas (plaintext) diubah menjadi informasi atau pesan yang tidak dapat dimengerti (ciphertext).

  Senapan mesin ringan uzi adalah senjata milik Israel yang didesain oleh Mayor Uziel Gal pada akhir 1940 dan diperkenalkan ke pasukan IDF pada tahun 1954. Bentuk senapan uzi menyerupai pistol yang memiliki panjang laras 203mm, terdapat dua megasen dipasang dengan bantuan suatu pemegang yang akan memegang kedua magasen tersebut dalam kedudukan siku. Ujung laras uzi dapat dipasangi berbagai peralatan bantu, yang memungkinkan uzi untuk melontarkan granat. Bentuk uzi yang menyerupai pistol dengan dua magazen menjadi pola yang digunakan untuk memasukkan bit dalam setiap blok.

  Proses dilakukan sebanyak 20 putaran setiap putaran memiliki 4 proses

  

plaintext dan juga proses kunci (key). Hasil plaintext akan di-XOR dengan kunci

  yang menghasilkan ciphertext kemudian dikombinasikan dengan S-Box Algoritma AES (Advanced Encryption Standard) yang menghasilkan Avalanche Effect.

  2. Tinjauan Pustaka

  Penelitian pertama berjudul Perancangan Algoritma pada Kriptografi Block

  

Cipher dengan Teknik Langkah Kuda Dalam Permainan Catur membahas tentang

  proses enkripsi dan dekripsi menggunakan pola langkah kuda, yang dilakukan sebanyak 4 putaran. Hasil dari algoritma kriptografi diperoleh hasil 0,027481 ms dari AES. Untuk proses dekripsi 0,013992 ms. Sedangkan perbandingan antara langkah kuda dengan AES-128 adalah 0,140952 ms atau 14.09% [1].

  Kemudian penelitian kedua dengan judul 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 diuji menggunakan avalanche effect dan nilai korelasi. Nilai korelasi yang dihasilkan dari 15 putaran adalah 0.217077 [2].

  Penelitian selanjutnya berjudul “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” yang

  membahas tentang kriptografi menggunakan prinsip s-box dan juga avalanche

  

effect yang diproses sebanyak 5 putaran dan menghasilkan nilai korelasi 0.241734

[3].

  Penelitian-penelitian yang terkait dengan algoritma block cipher tersebut, digunakan sebagai acuan dalam merancang penelitian tentang implementasi block

  

cipher menggunakan pola bentuk senapan mesin ringan uzi yang dikombinasikan

  dengan s-box. Dalam penelitian ini dilakukan dengan proses enkripsi dan dekripsi sebanyak 20 putaran, kemudian diuji menggunakan nilai korelasi dari setiap putaran untuuk mendapatkan hasil terbaik.

  Bagian dari kriptografi yaitu plaintext dan ciphertext. Plaintext adalah pesan yang dapat dimengerti maknanya, sedangkan ciphertext merupakan pesan yang sudah dirubah sehingga tidak dapat dimengerti maknanya. Bagian lain yang terdapat pada kriptografi adalah enkripsi dan dekripsi. Enkripsi adalah proses dimana plaintext dirubah menjadi ciphertext, dan dekripsi adalah kebalikan dari enkripsi yaitu mengembalikan ciphertext menjadi plaintext[4].

  Block Cipher merupakan rangkaian bit yang dibagi menjadi blok-blok yang

  panjangnya sudah ditentukan sebelumnya. Skema proses enkripsi-dekripsi block cipher secara umum dapat ditunjukkan pada Gambar 1.

  

Gambar 1 Skema Proses Enkripsi –Dekripsi Block Cipher [5]

  Misalkan blok plaintext (P) yang berukuran n bit

  P   p , p ,  , p1 2 n

  (1) Blok ciphertext (C) maka blok C adalah

  Cc , c ,  , c

  (2)

    1 2 n

  (3)

  K   k , k ,  , k1 2 n

  Sehingga proses Enkripsi adalah

  

  (4)

  E   P C k

  Proses dekripsi adalah

  D   CP (C) = P k

  (5) Sebuah sistem 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, terdapat aturan enkripsi e kE dan berkorespodensi Untuk setiap k k k

  dengan aturan dekripsi d

  D. Setiap ek : d

  P → C dan : C → P adalah fungsi sedemikian hingga d k (e k (x)) = x untuk setiap plaintext x P.

  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. Nilai koefisien akan selalu berada di antara -1 sampai +1. Untuk menentukan kuat atau lemahnya hubungan antara variabel yang diuji, dapat digunakan Tabel 1. Koefisien korelasi yang 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 [5]

Interval Koefisien Tingkat Hubungan

  Sangat Rendah 0,00 – 0,199

  Rendah 0,20 – 0,399

  Sedang 0,40 – 0,599

  Kuat 0,60 – 0,799

  Sangat Kuat 0,80 – 1,000

  Perancangan kriptografi ini dilakukan dengan beberapa tahap penyusunan yaitu : identifikasi masalah, pengumpulan data, perancangan kriptografi, uji kriptografi, penulisan artikel ilmiah.

  Identifikasi Pengumpulan Perancangan Masalah Data Kriptografi

  Uji Penulisan

  Kriptografi Laporan

  

Gambar 2 Tahapan Penelitian

  Tahap penelitian berdasarkan Gambar 2, dijelaskan sebagai berikut: Tahap Pertama identifikasi masalah, tahapan yang dilakukan untuk melihat permasalahan dalam pengamanan data yang berkaitan dengan kriptografi, tahap kedua pengumpulan data, melakukan pengumpulan data sebagai bahan untuk pembuatan algoritma seperti pencarian pola untuk plaintext dan kunci pada pola bentuk senapan mesin ringan uzi, tahap ketiga perancangan kriptografi, melakukan perancangan algoritma kriptografi dengan pola bentuk senapan mesin ringan uzi diterapkan ke dalam block cipher 64bit, tahap keempat uji kriptografi, melakukan penghitungan mulai dari memasukan plaintext, mengubah text ke dalam bit lalu melakukan proses enkripsi-dekripsi, tahap kelima penulisan artikel ilmiah, melakukan penulisan dari hasil penelitian yang diperoleh.

  Dalam perancangan kriptografi block cipher pada pola bentuk senapan mesin ringan uzi ini dilakukan dua proses yaitu enkripsi dan proses dekripsi. Enkripsi dan dekripsi itu sendiri dilakukan dalam 20 putaran, dan di setiap putaran terdapat 4 proses. Plaintext Kunci Plaintext Kunci Putaran 1 Putaran 20 P2 P2

P1 K1 P1 K1

C1 C1

  

S-BOX K2 S-BOX K2

P2 K2 P2 K2

C2 C2

S-BOX S-BOX P4 P4

P3 K3 P3 K3

C3 C3

P4 K4 P4 K4

C4 Chippertext

Gambar 3 Proses Alur Enkripsi

  Gambar 3 menunjukkan alur proses enkripsi, langkah-langkah proses enkripsi itu sendiri 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 proses pada setiap putaran; d) Putaran pertama Plaintext 1 (P1) diproses dengan pola dan di-XOR dengan Kunci 1 (K1) menghasilkan C1; e) C1 ditransformasikan dengan pola menjadi P2 kemudian di S-BOX, setelah itu P2 di-XOR dengan K2 menghasilkan C2; f) C2 ditransformasikan dengan pola menjadi P3 kemudian di-XOR dengan K3 menghasilkan C3; g) C3 ditransformasikan dengan pola menjadi P4 kemudian di S-

  

BOX, setelah itu P4 di-XOR dengan K4 menghasilkan C4; h) Masuk pada putaran

  dua, C4 ditransformasikan menjadi P5 kemudian dilakukan proses yang sama dengan putaran pertama, dan dilakukan sampai putaran ke-20 hingga menghasilkan

  Ciphertext (C).

  

Gambar 4 Proses Alur Dekripsi

  Gambar 4 menunjukkan alur proses dekripsi, langkah-langkah proses dekripsi tersebut dijelaskan sebagai berikut: a) Menyiapkan ciphertext dan kunci; b) Mengubah ciphertext dan kunci menjadi biner sesuai dalam tabel ASCII; c) setiap putaran; d) Putaran pertama Ciphertext (C) diproses dengan pola dan di-

  XOR dengan Kunci 20 (K20) menghasilkan P20; e) P20 ditransformasikan dengan pola menjadi P20 dan diproses menggunakan S-BOX, dan mendapatkan hasil akhir P20; f) P20 ditransformasikan dengan pola menjadi C19 kemudian di-XOR dengan K19, menghasilkan P19 dan mendapatkan hasil akhir P19; g) P19 ditransformasikan dengan pola menjadi C18 kemudian di-XOR dengan K18,menghasilkan P18, kemudia P18 dengan S-BOX dan mendapatkan hasil akhir dari P18; h) P18 ditransformasikan dengan pola menjadi C17 kemudian di-XOR dengan K17, menghasilkan P17; i) Masuk pada putaran dua, P17 ditransformasikan menjadi C16 kemudian dilakukan proses yang sama dengan putaran pertama, dan dilakukan sampai putaran ke-20 hingga menghasilkan Plaintext (P).

  Dalam bagian ini akan membahas tentang algoritma perancangan kriptografi block cipher 64bit berbasis pola bentuk senapan mesin ringan uzi secara terperinci.

  Dalam algoritma ini pola bentuk senapan digunakan sebagai proses pemasukan dan pengambilan bit. Pola tersebut ditunjukkan pada Gambar 5.

  

Gambar 5 Pola Berbasis Senapan Mesin Ringan Uzi

  Gambar 5 menunjukkan empat pola yang berbeda, dimana pola-pola tersebut berbentuk senapan mesin ringan uzi dengan cara pandang yang berbeda. Berdasarkan pola-pola yang sudah dirancang, dilakukan pengujian korelasi dengan mengkombinasikan urutan pola untuk menemukan nilai korelasi terbaik. Pengujian dilakukan menggunakan contoh plaintext

  “Kurnia425” menggunakan kunci “ShabeL14”. Berdasarkan hasil pengujian korelasi, maka hasil terbaiklah 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

  ABCD 0.559123906 CABD 0.420199006 ABDC 0.199859601 CADB 0.093982179 ACBD 0.247058515 CBAD 0.37121028 ACDB 0.452779067 CBDA 0.610994414 ADBC 0.521317902 CDAB 0.337813778 ADCB 0.290475869 CDBA 0.196954531 BACD 0.227036812 DCBA 0.074518561 BADC 0.007604731 DCAB 0.145350992 BCAD 0.357685893 DBAC 0.449082214 BCDA 0.229668748 DBCA 0.478299684 BDAC 0.38455044 DABC 0.544331896 BDCA 0.39402878 DACB 0.192036749

  Tabel 2 menunjukkan hasil kombinasi pola dan mendapatkan nilai korelasi terbaik pada kombinasi pola B-A-D-C sebesar 0.007604731. Kombinasi ini lah yang akan digunakan untuk melanjutkan proses enkripsi hingga putaran ke-20 untuk menghasilkan ciphertext. Tingkat keamanan tergantung pada nilai koefisien korelasi terbaik, dalam kasus ini ditunjukkan bahwa nilai koefisien korelasi yang mendekati 0 adalah kombinasi pola terbaik dalam mengamankan data dibandingkan dengan kombinasi –kombinasi lainnya.

  Telah dijelaskan bahwa perancangan kriptografi ini dilakukan sebanyak 20 putaran, dan di setiap putaran memiliki 4 proses untuk mendapatkan hasil akhir yaitu ciphertext. Proses pertama plaintext dan kunci diubah ke dalam bentuk ASCII kemudah diubah lagi ke dalam biner. Kemudian bit-bit plaintext diproses dengan pola pemasukan dan pengambilan ke dalam kolom matrik 8x8 menggunakan pola bentuk senapan mesin ringan uzi yang berbeda-beda pada setiap proses. Kemudian hasil XOR proses pertama ditransformasikan menggunakan Jaringan Fiestel pada proses kedua. Hasil XOR dari proses kedua dan ketiga kemudian ditransformasikan menggunakan S-BOX dan menghasilkan P4 yang kemudian digunakan pada proses keempat dan diulang terus-menerus hingga putaran ke-20 untuk menghasilkan

  ciphertext.

  Gambar 6 Pola Pemasukan Bit Plaintext dan Kunci

  Gambar 6 menjelaskan pola pemasukan bit plaintext dan kunci pada proses

  1. Setiap 8 bit dari setiap karakter plaintext dan kunci dimasukkan pada setiap blok sesuai dengan urutan angka.

  

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

  Gambar 7 merupakan proses pengambilan dan transpose pada proses 1, untuk plaintext dan kunci dilakukan dengan alur proses yang sama. Bit diambil setiap 8 bit mengikuti urutan angka pada Gambar 7 dengan urutan angka yang sudah diatur sesuai dengan pola. Kemudian dimasukkan kembali ke dalam kolom matriks baris pertama dari kiri ke kanan, dan untuk baris selanjutnya mengikuti anak panah dan urutan angka pada Gambar 7. Dari proses tersebut menghasilkan P1 dan K1. Setelah itu P1 dan K1 akan di-XOR kan menghasilkan C1.

  

Gambar 8 Pola Pengambilan dan Pola Transpose Plaintext dan Kunci Proses 2 Gambar 8 merupakan proses pengambilan dan transpose pada proses 2, untuk plaintext dan kunci dilakukan dengan alur proses yang berbeda, karena untuk proses plaintext menggunakan tabel S-Box dan untuk kuncinya tidak menggunakan tabel S-BOX. Hasil dari XOR C1 yang ditransformasikan ke dalam P2 diambil setiap 8 bit mengikuti urutan angka pada Gambar 8. Sedangkan untuk K2 didapat dari tansformasi K1. Kemudian P2 diproses menggunakan S-BOX, setelah itu dimasukkan kembali ke dalam baris matriks kolom pertama dari kiri ke kanan, dan untuk kolom selanjutnya mengikuti anak panah dan urutan angka pada Gambar 8. Setelah itu P2 dan K2 akan di-XOR kan menghasilkan C2.

  P

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

  Gambar 9 merupakan proses pengambilan dan transpose pada proses 3, untuk plaintext dan kunci dilakukan dengan alur proses yang sama. Hasil dari XOR C2 yang ditransformasikan ke dalam P3 diambil setiap 8 bit mengikuti urutan angka pada Gambar 9 dengan urutan angka yang sudah diatur. Sedangkan untuk K3 didapat dari tansformasi K2. Kemudian dimasukkan kembali ke dalam kolom matriks baris pertama dari kanan ke kiri, dan untuk baris selanjutnya mengikuti anak panah dan urutan angka pada Gambar 9. Setelah itu P3 dan K3 akan di-XOR kan menghasilkan C3.

  

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

  Gambar 10 merupakan proses pengambilan dan transpose pada proses 4 atau proses terakhir, untuk plaintext dan kunci dilakukan dengan alur proses yang berbeda, karena untuk proses plaintex 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 pada Gambar 10. Sedangkan untuk K4 didapat dari tansformasi K3. Kemudian P4 diproses menggunakan S-BOX, setelah itu dimasukkan kembali ke dalam baris matriks kolom pertama dari kanan ke kiri, dan untuk kolom selanjutnya mengikuti anak panah dan urutan angka pada Gambar 10. 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 11 Tabel S-BOX AES

Gambar 11 tabel S-BOX yang digunakan pada proses enkripsi dan dekripsi.

  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- yang merupakan perpotongan baris x dengan kolom y.

  box

  Misalnya S[0, 0] = 11, maka S’[0, 0] = 82. Untuk pengujian algoritma dilakukan dengan mengambil contoh plaintext

  Kurnia425 dan kunci adalah ShabeL14. Kemudian dilakukan proses enkripsi sebanyak 20 putaran, dan di setiap putaran enkripsi akan mendapatkan ciphertext (C) dan dikonversi ke dalam nilai hexadecimal. Hasil enkripsi dari putaran ke 20 adalah final ciphertext ditunjukkan pada Tabel 3.

  

Tabel 3 Hasil Ciphertext Setiap Putaran

Putaran Hasil Hexadecimal Putaran Hasil Hexadecimal

  2E709B0367C46E8F

  1

  11 BBD2E37257DC57E2 C2002D17B6C28BB0

  2

  12

  2AAAAE5E9652058B 7488DDA40F36A896

  3

  13 FD6B32B06D132DF7 F0222805FB9487E3

  4

  14

  5

  5. Bit pada kolom matrik diambil menggunakan pola pengambilan.

  Masukan 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 matrik P1 dengan pola pemasukan proses 1 4.

  Bit BINER dimasukkan ke kolom matrik C4 dengan pola pemasukan

  5. Masukkan bit K4 menggunakan pola masukan

  

Tabel 4 Algoritma Enkripsi dan Dekripsi

Proses Enkripsi Proses Dekripsi

  6. Bit pengambilan dimasukkan lagi ke dalam matrik 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

  1. Masukan plaintext 1.

  Tabel 3 merupakan hasil enkripsi dari setiap putaran. Hasil dari putaran 20 merupakan final ciphertext. 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 dengan K4 dan pada proses tersebut akan menghasilkan P4. Kemudian P4 ditransformasikan dengan S-BOX untuk mendapatkan hasil akhir P4, P4 digunakan sebagai C3, lalu C3 di XOR dengan K3 dan menghasilkan P3, P3 digunakan sebagai C2, lalu C2 di XOR dengan K2 menghasilkan P2, P2 ditransformasikan dengan S-BOX untuk mendapatkan hasil akhir P2, P2 digunakan sebagai C1. Kemudian C1 di XOR 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.

  14AA76CBD8090CD1

  17

  15

  608CF43DD8035604

  6

  3E66F994156C985B

  16 E59489FA68986397

  7

  2E471736A90CE433

  2E5142BE6C03ACE9

  001CD09992BA30CF

  8

  8D505A78BD41F25F

  18 B2B462EEF1C19EEA

  9 E9582009A1BE0743

  19 EEE60515CDF90E4D

  10 CD8E29DAF37271C6

  20

  9. HEX ditransformasikan dengan tabel S-BOX

  10. P2 di XOR dengan K2 menghasilkan C2

  31. C4 diubah ke DEC 32.

  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 ke dalam kolom matrik 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

  DEC diubah ke HEX sebagai ciphertext 28.

  Masukkan bit K2 menggunakan pola masukan

  C1 di XOR dengan K1 menghasilkan P1

  29. P1 diproses dengan pola pengambilan 30.

  Bit pengambilan dimasukkan lagi ke dalam kolom matrik P1

  31. Hasil akhir pemasukan bit diproses dengan pola pengambilan

  32. Hasil akhir BINER P1 dirubah ke DEC

  33. DEC dirubah ke HEX 34.

  HEX dirubah 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.

  24. P4 diproses dengan pola pengambilan proses 4

  23. C3=P4 diambil dengan pola pemasukan awal 23.

  10. Hasil konversi diubah ke BINER 11. C2 diubah ke DEC 11.

  16. C2=P3 diambil dengan pola pemasukan awal 15.

  BINER P4 dimasukkan ke kolom matriks dengan pola pengambilan

  12. DEC diubah ke HEX 13.

  HEX ditransformasikan menggunakan S-BOX 12.

  P4=C3 14. Hasil HEX diubah menjadi BINER 13.

  BINER dimasukkan ke kolom C3 menggunakan pola masuk

  15. Hasil BINER dimasukkan ke blok matriks P2

  14. Masukkan bit K3 menggunakan pola masukan

  C3 di XOR dengan K3 menghasilkan P3

  22. BINER dimasukkan ke kolom C2 menggunakan pola masukan

  17. P3 diproses dengan pola pengambilan proses 3

  16. P3 diubah ke BINER 18. BINER diubah menjadi DEC 17.

  BINER diubah ke HEX 19. DEC diubah menjadi HEX 18.

  Hasil HEX ditransformasikan dengan tabel S-BOX

  19. Hasil konversi diubah menjadi BINER 20. Hasil HEX diubah menjadi BINER 20.

  BINER P3 dimasukkan ke kolom matriks dengan pola pengambilan

  21. Hasil BINER dimasukkan ke blok matriks P3

  21. P3=C2 22. P3 di XOR dengan K3 menghasilkan C3

  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 B Transposisi K2 = K3 9. K3 ditransposisikan menggunakan pola Kunci D 10.

  Transposisi K3 = K4 11. K4 ditransposisikan menggunakan pola Kunci C

  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, masukan BINER

P1 menggunakan Pola pemasukan awal

  Dari blok matriks P1 = BINER, ambil bit P1 dengan pola Bentuk Senapan Mesin Ringan Uzi B Dari BINER = blok matriks P1, masukan BINER P1 dengan pola pemasukan proses 1

  Output P1 Input K Read K K to ASCII

  ASCII to BINER Dari BINER = blok matriks K1, masukan BINER

K1 menggunakan Pola pemasukan awal

Dari blok matriks K1 = BINER, ambil bit K1

  K1 dengan pola pengambilan B Dari BINER = blok matriks K1, masukan BINER K1 dengan pola pemasukan proses 1 Output K1

  Print C1 C1 = P2 C2 <- P2 ⊕ K2

  Dari C1 = blok matriks P2, masukan C1 P2 menggunakan Pola pemasukan awal Dari blok matriks P2 = BINER, ambil bit P2 dengan pola Bentuk Senapan Mesin Ringan Uzi A

  

BINER to HEXA

Dari HEXA = Tabel S-box, masukan HEXA HEXA konversi menggunakan S-box Print BINER S-box

  Dari BINER = blok matriks P2, masukan BINER P2 menggunakan pola pemasukan proses 2 Output P2 Dari BINER = blok matriks P2, masukan BINER

  P2 dengan pola pemasukan proses 2 Output P2 Input K Read K

  K to ASCII ASCII to BINER Dari BINER = blok matriks K2, masukan BINER

  Dari blok matriks K2 = BINER, ambil bit K2 K2 dengan pola pengambilan A Dari BINER = blok matriks K2, masukan BINER K2 dengan pola pemasukan proses 2

  Output K2 Print C2 C2 = P3 C3 <- P3

  ⊕ K3 Dari C2 = blok matriks P3, masukan C2 P3 menggunakan Pola pemasukan awal

Dari blok matriks P3 = BINER, ambil bit

  P3 dengan pola Bentuk Senapan Mesin Ringan Uzi D Dari BINER = blok matriks P3, masukan BINER P2 dengan pola pemasukan proses 3 Output P3 Dari K2 = blok matriks K3, masukan K2

Dari blok matriks K3 = BINER, ambil bit K3

  K3 dengan pola pengambilan D Dari BINER = blok matriks K3, masukan BINER K3 K3 menggunakan pola pemasukan proses 3 Output K3

  Print C3 C3 = P4 C4 <- P4 ⊕ K4

  

Dari C3 = blok matrik P4, masukan C3

P4 menggunakan Pola pemasukan awal

Dari blok matriks P4 = BINER, ambil bit P4 dengan pola Bentuk Senapan Mesin Ringan Uzi C

  BINER to HEXA Dari HEXA = Tabel S-box, masukan HEXA HEXA konversi menggunakan S-box Print BINER S-box

  Dari BINER = blok matriks P4, masukan BINER P3 menggunakan pola pemasukan proses 4 Output P4 Dari K3 = blok matriks K4, masukan K3

  

Dari blok matriks K4 = BINER, ambil bit K4

K4 dengan pola pengambilan C Dari BINER = blok matriks K4, masukan 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, masukan BINER K1 menggunakan Pola pemasukan awal

  Dari blok matriks K1 = BINER , ambil bit K1 K1 dengan pola Bentuk Senapan Mesin Ringan Uzi C Output K1 K1 = K2 Dari K1 = blok matriks K2, masukan Bit K1 dengan pola pemasukan awal

  

Dari blok matriks K2 = BINER, ambil bit

K2 dengan pola pengambilan D Dari BINER = blok matriks K2, masukan BINER K2 Output K2

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

Dari blok matriks K3 = BINER, ambil bit K3

  K3 dengan pola pengambilan A Dari BINER = blok matriks K3, masukan BINER K3 Output K3 K3 = K4

  Dari K3 = blok matriks K4, masukan K3

Dari blok matriks K4 = BINER, ambil bit K4

K4 dengan pola pengambilan B Dari BINER = blok matriks K4, masukan BINER K4

  Output K4 P4 <- C4 ⊕ K4 Input C

  Read C C4 to ASCII ASCII to BINER Dari BINER = blok matriks C4, masukan BINER C4 ⊕ K4

  Print P4 Dari blok matriks P4 = BINER, ambil bit P4 Dari BINER P4 = blok matrik P4, masukan BINER Menggunakan pola pengambilan C

  Output P4 P4 = C3 P3 <- C3 ⊕ K3 Dari P4 = blok matriks C3, masukan BINER C3

  ⊕ K3 Print P3 Dari blok matriks P3 = BINER, ambil bit P3 BINER to HEXA

  

Dari HEXA = Tabel S-Box, masukan HEXA

HEXA ditranformasi menggunakan S-Box

Dari BINER P3 = blok matriks P3, masukan BINER Menggunakan pola pengambilan D

  Output P3 P3 = C2 P2 <- C2 ⊕ K2 Dari P3 = blok matriks C2, masukan BINER C2

  ⊕ K2 Print P2 Dari blok matriks P2 = BINER, ambil bit P2 Dari BINER P2 = blok matrik P2, masukan BINER

  Menggunakan pola pengambilan A Output P2 Output P2 P2 = C1

  P1 <- C1 ⊕ K1 Dari P2 = blok matriks C1, masukan BINER C1

  ⊕ K1 Print P1 Dari blok matriks P1 = BINER, ambil bit P1

  • 0.007604731
  • 0.366311278

  4 -0.035538294 14 -0.541838588

  20

  10 0.040224057

  9 -0.18732388 19 -0.038826491

  18

  8

  7 -0.154577198 17 -0.130552039

  16 0.181756434

  6 0.184261189

  15 0.725164299

  5 0.568882532

  13 0.147699606

  3 0.654524183

  2 -0.06309283 12 -0.739146937

  11

  1

  

Tabel 5 Nilai Korelasi Setiap Putaran

Putaran Korelasi Putaran Korelasi

  ciphertext memiliki hubungan yang tidak kuat.

  Pengujian korelasi digunakan untuk mengukur seberapa acak perbandingan antara hasil enkripsi (ciphertext) dan plaintext. Nilai korelasi sendiri berkisar 1 sampai -1, dimana jika nilai kolerasi mendekati 1 maka plaintext dan ciphertext memiliki hubungan yang sangat kuat, tetapi jika mendekati 0 maka plaintext dan

  End

  

Menggunakan pola pengambilan B

Output P1 P1 to BINER BINER to ASCII ASCII to CHAR Print P

  BINER to HEXA Dari HEXA = Tabel S-Box, masukan HEXA HEXA ditranformasi menggunakan S-Box Dari BINER P1 = blok matriks P1, masukan BINER

  • 0.204005273
  • 0.101054882
  • 0.01588761

  Tabel 5 menunjukkan nilai korelasi setiap putaran, dan dapat disimpulkan bahwa algoritma kriptografi block cipher 64 bit berbasis pola bentuk senapan mesin ringan uzi memiliki nilai korelasi lemah dan menghasilkan nilai korelasi yang acak.

  

Gambar 12 Grafik Perbandingan Plaintext dan Ciphertext

  18

  7 34 53,125

  17

  32

  50

  8

  40 62,5

  28 43,75

  16

  9 28 43,75

  19 33 51,5625

  10

  38 59,375

  20

  20 31,25

  Rata-rata

  27 42,1875

  30 46,875

  Gambar 12 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. Presentase setiap putaran dapat dilihat pada Tabel 6.

  12 29 45,3125

  

Tabel 6 Tabel Presentase Avalanche Effect

Putaran Jumlah Bit Berubah Presentase (%) Putaran Jumlah Bit Berubah Presentase (%)

  1

  32

  50

  11

  24 37,5

  2 24 37,5

  3

  6

  32

  50

  13 33 51,5625

  4 37 57,8125

  14 36 56,25

  5 33 51,5625

  15 31 48,4375

  48,5156% .

  

Gambar 13 Grafik Avalanche Effect

  Pada Gambar 13 yaitu hasil dari pengujian Avalanche Effect, pada penelitian ini plaintext awal adalah Kurni425 yang kemudian diubah menjadi Galih425. Terjadi perubahan bit pada setiap putarannya, pada putaran ke 8 perubahan bitnya terjadi cukup besar yaitu 62,5% dengan arti pada putaran ini terjadi perubahan bit yang baik, tetapi juga terjadi perubahan bit yang kecil pada putaran ke 20 yaitu sebesar 31,25% ini berarti perubahan bitnya kurang baik. Dari putaran pertama sampai dengan putaran ke dua puluh dapat disimpulkan bahwa rata-rata hasil . pengujian Avalanche Effect ini yaitu sebesar 48,5156%

  5. Simpulan

  Berdasarkan penelitian yang dilakukan, dapat disimpulkan bahwa kriptografi block cipher 64 bit berbasis pola bentuk senapan mesin ringan uzi dapat dikatakan sebagai sistem kriptografi. Dalam proses enkripsi, rancangan kriptografi

  

block cipher berbasis pola bentuk senapan mesin ringan uzi ini menghasilkan output

yang acak sehingga dapat digunakan sebagai alternatif dalam pengamanan data.

  Dalam pengujian avalanche effect yang dilakukan menunjukkan bahwa proses . enkripsi di setiap putaran memiliki perubahan yang mencapai 48,5156%

  6. Daftar Pustaka

  [1] Setiawan, N. A., Pakereng, M. A. I., 2015 “Perancangan Algoritma Kriptografi Block Cipher dengan Teknik Langkah Kuda Dalam Permainan Catur”. Teknik Informatika, Fakultas Teknologi Informasi, Universitas

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

  [3] 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.

  [4] Widodo, A, dkk., 2015 “Perancangan Kriptografi Block Cipher Berbasis pada

  Teknik Tanam Padi dan Bajak Sawah”.Teknik Informatika, Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana. [5] Latuperissa, D, Pakereng, M.

  A. I., 2016 “PerancanganAlgoritmaKriptografiBlock Cipher 256 Bit BerbasisPolaHuruf B, M, E, W”. teknikInformatika, FakultasTeknologiInformasi, Universitas Kristen SatyaWacana.

Dokumen yang terkait

Institutional Repository | Satya Wacana Christian University: Peningkatan Hasil Belajar IPA dengan Menggunakan Metode Eksperimen Berbantuan Media Visual pada Siswa Kelas 5 SD Negeri 2 Ampel Kecamatan Ampel Semester II Tahun Pelajaran 2014/2015

0 0 23

Institutional Repository | Satya Wacana Christian University: Peningkatan Hasil Belajar IPA dengan Menggunakan Metode Eksperimen Berbantuan Media Visual pada Siswa Kelas 5 SD Negeri 2 Ampel Kecamatan Ampel Semester II Tahun Pelajaran 2014/2015

0 0 26

Institutional Repository | Satya Wacana Christian University: Peningkatan Hasil Belajar IPA dengan Menggunakan Metode Eksperimen Berbantuan Media Visual pada Siswa Kelas 5 SD Negeri 2 Ampel Kecamatan Ampel Semester II Tahun Pelajaran 2014/2015

0 0 32

Institutional Repository | Satya Wacana Christian University: Peningkatan Hasil Belajar IPA dengan Menggunakan Metode Eksperimen Berbantuan Media Visual pada Siswa Kelas 5 SD Negeri 2 Ampel Kecamatan Ampel Semester II Tahun Pelajaran 2014/2015

0 0 14

Institutional Repository | Satya Wacana Christian University: Penerapan Finite State Automata pada Perancangan Strategi Parkir Mobil Otomatis

9 21 22

Institutional Repository | Satya Wacana Christian University: Perancangan Kriptografi Block Cipher 64 Bit Berbasis Pola Permainan Taplak

0 0 29

Institutional Repository | Satya Wacana Christian University: Perancangan Aplikasi Pengaduan Pelayanan Publik Berbasis Web di Kecamatan Sidomukti

0 0 21

Institutional Repository | Satya Wacana Christian University: Validasi Aplikasi Diagnosa Penyakit Kanker Serviks Menggunakan Finite State Automata

0 3 24

Institutional Repository | Satya Wacana Christian University: Perancangan Kriptografi Block Cipher Menggunakan Pola Formasi Tari Reog Ponorogo

0 0 27

Institutional Repository | Satya Wacana Christian University: Perancangan Kriptografi Block Cipher 64 bit Berbasis Pola Tarian Topeng Ireng

0 0 31