• Tidak ada hasil yang ditemukan

Institutional Repository | Satya Wacana Christian University: Perancangan Algoritma Kriptografi Block Cipher Berbasis Pola Cabang dan Ranting Pohon

N/A
N/A
Protected

Academic year: 2018

Membagikan "Institutional Repository | Satya Wacana Christian University: Perancangan Algoritma Kriptografi Block Cipher Berbasis Pola Cabang dan Ranting Pohon"

Copied!
28
0
0

Teks penuh

(1)

Perancangan Algoritma Kriptografi Block Cipher

Berbasis Pola Cabang dan Ranting Pohon

Artikel Ilmiah

Peneliti :

Fajar Eko Setiawan (672008148) Magdalena A. Ineke Pakereng, M.Kom.

Alz Danny Wowor, S.Si., M.Cs.

Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana

(2)

Perancangan Algoritma Kriptografi Block Cipher

Berbasis Pola Cabang dan Ranting Pohon

Artikel Ilmiah

Diajukan kepada Fakultas Teknologi Informasi

Untuk memperoleh gelar Sarjana Komputer

Peneliti :

Fajar Eko Setiawan (672008148) Magdalena A. Ineke Pakereng, M.Kom.

Alz Danny Wowor, S.Si., M.Cs.

Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana

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

Perancangan Algoritma Kriptografi Block Cipher

Berbasis Pola Cabang dan Ranting Pohon

1 Fajar Eko Setiawan, 2 Magdalena A. Ineke Pakereng, 3 Alz Danny Wowor Fakultas Teknologi Informasi

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

Email: 1)672008184@student.uksw.edu, 2)ineke.pakereng@staff.uksw.edu, 3)alzdanny.wowor@staff.uksw.edu

Abstract

Cryptography must be renewed to increase security .Cryptographic techniques can not guarantee to be used forever therefore needs to get new cryptography algorithm .Design in cryptography algorithm by applying a “Cabang dan Ranting Pohon” basic block ciphers is a draft in cryptography algorithm block ciphers where that method in use for a groove randomization bits .The result of this study can be tested with kriptosistem as a technique of cryptography so as to be used as an alternative to data security and also as new methodology

Keywords : Block Cipher, Cryptography, Cabang dan Ranting Pohon

Abstrak

Kriptografi harus diperbarui untuk meningkatkan keamanan. Teknik kriptografi tidak menjamin bisa untuk digunakan selamanya maka dari itu perlu dibuat algoritma kriptografi baru. Perancangan Algoritma Pada Kriptografi Block Cipher Dengan Berbasis Cabang dan Ranting Pohon merupakan suatu rancangan algoritma pada kriptografi block cipher dimana alur tersebut di gunakan untuk alur pengacakan bit. Hasil akhir dari penelitian ini dapat diuji dengan kriptosistem sebagai teknik kriptografi sehingga dapat digunakan sebagai alternatif pengamanan data dan juga sebagai metodologi baru.

Kata Kunci : Block Cipher, Kriptografi, Cabang dan Ranting Pohon

1) Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi Universitas

Kristen Satya Wacana, Salatiga.

2)Staff pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana, Salatiga.

(10)

1. Pendahuluan

Keamanan data dalam suatu proses lalu lintas data merupakan salah satu faktor yang sangat penting bila dalam prosesnya tidak ingin diinterupsi oleh orang yang tidak bertanggungjawab. Untuk melindungi data agar tidak disadap, diubah, disisipkan atau dihilangkan oleh orang yang tidak bertanggungjawab, maka dibutuhkan suatu sistem pengaman data, salah satunya adalah kriptografi.

Algoritma block cipher merupakan kriptografi moderen yang telah diciptakan cukup banyak, namun ada di antaranya yang sudah terpecahkan oleh kriptanalis. Oleh karena itu, perlu adanya modifikasi algoritma atau perancangan algoritma baru sebagai pengganti algoritma kriptografi yang sudah terbongkar keamanannya. Hal tersebut supaya mencegah terjadinya penggunaan kembali algoritma yang sudah pecah untuk pengamanan data. Namun banyaknya teknik kriptografi tidak menjamin bisa untuk digunakan selamanya, karena semakin banyak teknik kriptografi dikembangkan makin banyak pula para ahli kriptanalisis mencoba untuk memecahkannya. Apalagi dengan adanya pendekatan modern dimana sifat algoritma enkripsi yang tidak dirahasiakan lagi membuka kesempatan para kriptanalisis untuk melakukan pengujian kekuatan algoritma tersebut [3]. Jadi dengan adanya teknik-teknik kriptografi baru yang bermunculan, akan semakin menambah variasi teknik kriptografi dalam mengamankan data.

Berdasarkan pemaparan yang diberikan di atas, maka penelitian ini bertujuan untuk dapat merancang algoritma kriptografi untuk kemudian digunakan dalam rancangan kriptografi blockcipher sebagai metodologi baru atau ide kriptografi simetris dalam perkembangan Iptek, dan algoritma yang dirancang adalah berbasis cabang dan ranting pohon. Serta hasil dari rancangan kriptografi ini dapat dibandingkan dengan kriptografi block cipher lainnya sehingga dapat diambil kesimpulan hasil dari kinerja kriptografi hasil rancangan ini.

2. Tinjauan Pustaka

Landasan dari perancangan algoritma baru Pola Cabang dan Ranting Pohon, merujuk pada penelitian sebelumnya. Penelitian yang pertama dengan judul “Perancangan Kriptografi Kunci Simetris Menggunakan Fungsi Polinomial Hermite dan Akar Kuadrat Fungsi Linear”. Dalam penelitian ini membahas bagaimana merancang kriptografi baru menggunakan fungsi polynomial Hermite dan akar kuadrat fungsi linear sebagai pembangkit kunci enkripsi dan dekripsi. Proses dan alur enkripsi dekripsi menggunakan tiga putaran, setiap putaran akan dibangkitkan kunci baru hasil dari pembangkitan kunci sebelumnya. Pada setiap putaran proses enkripsi dekripsi akan menggunakan kunci yang berbeda dalam melakukan perhitungan yang disubtitusikan pada fungsi linear dan invers fungsi linear. Proses CBB menggunakan kunci berbeda dari kunci pada putaran enkripsi dekripsi. Kunci CBB dibangkitkan dari kombinasi hasil kunci polynomialHermite dan kunci akar kuadrat fungsi linear [1].

(11)

1

membahas tentang teknik kriptografi pada kunci simetris dengan melakukan modifikasi penggabungan fungsi Bessel dan fungsi Dawson yang disertakan pada setiap putarannya [2]. Kedua penelitian tersebut menjelaskan bagaimana merancang algoritma baru dimana rancangan itu untuk diterapkan pada kriptografi kunci simetris.

Penelitian yang ketiga dengan judul “Analisa Kriptanalisis Deferensial Pada Twofish”. Dalam penelitian ini membahas tentang analisis algoritma kriptografi Twofish dengan kriptanalisis diferensial. Twofish merupakan salah satu algoritma penyandian yang memanfaatkan block cipher dan merupakan salah satu algoritma kunci simetri modern. Twofish merupakan salah satu dari finalis kompetisi AES (Advance Encryption Standard). Dengan menggunakan salah satu metode kriptanalisis yakni Kriptanalisis deferensial pada tahun 2000 memberikan pengetahuan akan kemungkinan algoritma Twofish dapat dipecahkan [3]. Penelitian ini menjadi acuan untuk perancangan algoritma kriptografi baru, setelah melihat dalam penelitian tersebut terlihat bahwa suatu kriptografi juga memerlukan pembaharuan, supaya tingkat keamanan menjadi lebih baik.

Kriptografi AES (Advanced Encryption Standard) adalah standart algoritma kriptografi terbaru yang menggantikan DES (Data Encryption Standard) yang sudah dipecahkan. Algoritma ini termasuk kelompok kriptografi simetris yang berbasis pada blok cipher. Mempunyai panjang kunci yang fleksibel yaitu 128, 192, dan 256 bit sedangkan ukuran blok yang dienkripsi 128 bit [14].

Kriptografi adalah ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti keabsahan, integritas data, serta autentikasi data. Kriptografi tidak berarti hanya memberikan keamanan informasi saja, namun lebih ke arah teknik-tekniknya [10].

Bagian dari kriptografi terdiri dari pesan, plainteks, dan cipherteks. Pesan merupakan data atau juga informasi yang dapat dibaca dan dimengerti maknanya. Plainteks adalah pesan yang dapat dimengerti maknanya, cipherteks merupakan pesan yang sudah disandikan ke bentuk yang tidak dapat dimengerti maknanya [7]. Bagian lain dari kriptografi adalah enkripsi dan dekripsi. Enkripsi adalah proses mengamankan suatu informasi dengan membuat informasi tersebut yang tidak dapat dibaca tanpa bantuan pengetahuan khusus. Keuntungan dari enkripsi adalah kode asli kita tidak dapat dibaca oleh orang lain. Dekripsi adalah proses mengembalikan suatu informasi dengan cara tertentu dan sesuai dengan algoritma enkripsi yang dipakai. Dekripsi merupakan proses kebalikan dari proses enkripsi, mengubah ciphertext kembali ke dalam bentuk plaintext [4].

(12)

2

Gambar 1. Proses Enkripsi Block Cipher [6] Gambar 2. Proses Dekripsi Block Cipher [6]

Misalkan blok plainteks (P) yang berukuran nbit dapat dinyatakan sebagai vector [6]:

(1) Yang dalam hal ini pi adalah bit 0 atau bit 1 untuk i= 1,2,….,n, dan blok cipherteks (C) adalah

(2) Yang dalam hal ini ci adalah 0 atau 1 untuk i = 1,2,…,m. Bila plainteks dibagi menjadi m buah blok, barisan blok-blok plainteks

(3) Untuk setiap blok plainteks Pi, bit-bit penyusunnya dapat dinyatakan sebagai :

(4) Untuk enkripsi dan dekripsi dengan kunci K dinyatakan berturut-turut dengan persamaan

𝐸𝑘(𝑃) = 𝐶 (proses enkripsi) (5)

𝐷𝑘(𝐶) = 𝑃 (proses dekripsi) (6)

Suatu kriptografi dapat disebut sebagai teknik, harus melalui uji kriptosistem terlebih dahulu yaitu dengan diuji dengan metode Stinson. Definisi 2. [9] terdiri dari lima-tuple (Five-tuple) (P, C, K, E , D) , yang memenuhi kondisi:

1. 𝑷 adalah himpunan berhingga dari plainteks,

2. 𝑪 adalah himpunan berhingga dari cipherteks,

3. K merupakan ruang kunci (keyspace), adalah himpunan berhingga dari kunci, 4. E adalah himpunan fungsi enkripsi ek :PC,

5. D adalah himpunan fungsi dekripsi dk :CP, Untuk setiap 𝑘 𝜖 𝑲, terdapat aturan enkripsi 𝑒𝑘𝑬 dan berkorespondensi dengan aturan dekripsi 𝑑𝑘𝜖 𝑫. Setiap

𝑒𝑘 ∶ 𝑷 ⟶ 𝑪 dan 𝑑𝑘 ∶ 𝑪 ⟶ 𝑷 adalah fungsi sedemikian hingga 𝑑𝑘(𝑒𝑘(𝑥)) = 𝑥

(13)

3

Transposisi adalah teknik memindahkan posisi bit pada blok plainteks berdasarkan aturan tertentu. Secara matematis, transposisi dapat ditulis sebagai

P=PM

yang dalam hal ini C adalah blok cipherteks, P adalah blok plainteks, dan M adalah fungsi transposisi. Dalam praktek, M dinyatakan sebagai tabel atau matriks permutasi [7].

Untuk mengetahui besaran nilai algoritma kriptografi yang dirancang mampu untuk mengacak plainteks yang diinputkan maka digunakan nilai keacakan yang diproleh dari persamaan (7):

𝑌𝑖 =𝑝𝑖𝑝−𝑐𝑖 𝑖 (7)

Dimana Yi sebagai nilai keacakan ke-i, dan secara berturut-turut pi dan ci adalah nilai plainteks dan cipherteks ke-i. Nilai keacakan dilihat pada bilangan cipherteks yang dihasilkan oleh algoritma tertentu. Penelitian ini tidak membandingkan ukuran blok dengan AES. Nilai acak dibangun dari selisih perbandingan plainteks dengan cipherteks terhadap plainteks, karena selisih pada pembilang pada persamaan (6) berarti menunjukan jarak dari plainteks, walaupun dirasiokan terhadap plainteks kembali. Kemungkinan yang muncul pada nilai keacakan dapat bertanda positif atau negatif. bernilai negatif berarti selisih perbandingan nilai cipherteks lebih dari besar dari nilai plainteks. bernilai positif berarti nilai plainteks lebih besar dari nilai cipherteks.

Penggunaan jarak dapat dipandang sebagai suatu keacakan apabila brute force attack (BFA) sebagai standar kriptanalisis digunakan untuk membobol algoritma yang ada. Teknik BFA dilakukan dengan mencoba semua kemungkinan kunci atau angka untuk menemukan relasi yang berkorespondensi satu satu (one to one) antara plainteks dan cipherteks. Setiap plaintek yang diinputkan sudah pasti diketahui desimalnya, kriptanalis akan mencoba setiap bilangan yang lebih besar atau lebih kecil dari bilangan plainteks dan akan membesar atau mengecil secara terus-menerus. Misalnya plainteks 70 (karakter F) kriptanalis akan mencoba bilangan dibawah plainteks yaitu 69 dan diatas plainteks yaitu 71 secara terus menerus sampai menemukan kecocokan, apabila semakin jauh nilai cipherteks dari plainteks akan memerlukan banyak waktu dan proses untuk menemukan relasi dengan cipherteks atau bahkan menemukan plainteks.

Diferensiasi data adalah perbandingan selisih antar dua titik. Dalam kalkulus, metode ini sering disebut sebagai turunan atau kemiringan 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-data tersebut dapat divisualisasikan ke dalam

(14)

4

D y

D x =

(yb- ya)

(xa- xb) (8)

dengan (xa, ya) sebagai titik pertama, dan titik berikutnya adalah (xb, yb). Apabila terdapat n data maka untuk menentukan rata-rata dari diferensiasi data dapat di cari untuk melihat tren dari setiap data Rataan diferensiasi (Rd) untuk melihat diberikan pada Persamaan (9).

(9)

3. Langkah-Langkah Penelitian

Dalam proses perancangan algoritma kriptografi baru berbasis pola cabang ranting, terdapat langkah-langkah penelitian yang dilakukan. Langkah-langkah penelitian dapat dilihat pada Gambar 3.

Gambar 3. Langkah-Langkah Penelitian

(15)

5

Ketiga: Perancangan Algoritma, yaitu melakukan perancangan algoritma kriptografi dengan pola cabang dan ranting pohon. Langkah Keempat: Pembuatan Kriptografi, yaitu menerapkan algoritma dengan teknik cabang dan ranting pohon ke dalam block cipher dengan ukuran blok 8x8. Pembuatan kriptografi secara umum dibahas dalam bagian rancangan umum. Langkah Kelima: Melakukan uji algoritma kriptografi yang dibuat dengan melakukan penghitungan secara manual mulai dari memasukkan plainteks, mengubah teks ke dalam bit lalu melakukan proses enkripsi dekripsi. Jika tidak dapat melakukan enkripsi dan dekripsi maka dilakukan pengecekan kembali atau kembali ke Langkah Keempat. Langkah Keenam: Uji Kriptosistem, yaitu menguji kriptografi yang dibuat dengan 5-tuple dari Stinson jika sudah memenuhi maka perancangan algoritma kriptografi baru dapat dinyatakan sebagai teknik kriptografi. Tahap Ketujuh: Penulisan Laporan yaitu mendokumentasikan proses penelitian dari tahap awal sampai tahap akhir ke dalam sebuah tulisan yang akan menjadi laporan hasil penelitian.

Untuk tidak memperluas ruang lingkup pembahasan maka diberikan batasan-batasan dalam penelitian ini, yaitu;

1. Proses enkripsi dan dekripsi dilakukan pada teks.

2. Jumlah kunci dan plainteksnya terbatas yaitu menampung 8 karakter yang sebanding dengan 64-bit.

3. Panjang kunci mempunyai panjang maksimal 8 karakter. 4. Panjang bloknya adalah 8×8

5. Penelitian ini tidak menguji kriptanalisis terhadap rancangan kriptografi.

Rancangan Umum Kriptografi

Bagian ini merupakan penjelasan lanjutan dari Langkah 4 (Pembuatan Kriptografi) dimana menujukkan proses rancangan kriptografi secara umum. Seperti yang telah dibahas pada bagian sebelumnya, bahwa digunakan pola cabang pohon dan juga ranting pohon untuk mengubah plainteks menjadi cipherteks.

(16)

6

Rancangan kriptografi ditunjukkan pada Gambar 4, dimana terdapat empat putaran dan di setiap putaran juga terdapat dua bagain yang mengoperasikan dua inputan yang berbeda yaitu plianteks dan kunci. Dinotasikan untuk Proses-i (Pi) mengoperasikan plainteks dan ProsesKunci-i (PKi) meregenerasi kunci sehingga pada setiap putaran akan diperoleh kunci yang berbeda. Setiap Putaran-i (PTi) diperoleh dari Transposisi-i (Ti) hasil XOR antara Proses-i dan ProsesKunci-i, yang secara umum diberikan pada Persamaan (10).

PTi = Ti (PiPKi) (10)

dimana i = 1, ..., 4.

Hasil dari setiap putaran PTi akan menjadi inputan pada Ti+1 dan hal yang

sama juga untuk setiap PKi adalah input untuk PKi+1 dengan i = 1, ...,3. Sehingga

secara keseluruahan cipherteks adalah PT4. Sebaliknya untuk melakukan proses

dekripsi, cipherteks sebagai input dan dilakukan proses kebalikan dengan proses dekripsi untuk mendapatkan kembali plainteks.

Setiap Pi dan PKi yang dilakukan pada setiap putaran adalah suatu proses dimana setiap bit dalam satu blok ditempatkan ke dalam kotak 64-bit dan bagaimana cara untuk mengambil bit-bit tersebut. Pola cabang pohon dan ranting pohon adalah alur yang dirancang untuk menempatkan bit-bit dan kemudian mengambilnya. Sebagai contoh diperoleh bit-bit dalam satu blok b1, b2, ..., b64

yang ditempatkan mulai dari kanan bawah sesuai alur menyilang sampai pada pojok kiri atas, alur tersebut diberikan pada Gambar 5.

b64 b63 b61 b58 b54 b49 b43 b36 b62 b60 b57 b53 b48 b42 b35 b28 b59 b56 b52 b47 b41 b34 b27 b21 b55 b51 b46 b40 b33 b26 b20 b15 b50 b45 b39 b32 b25 b19 b14 b10

b44 b38 b31 b24 b18 b13 b9 b6

b37 b30 b23 b17 b12 b8 b5 b3

b29 b22 b16 b11 b7 b4 b2 b1

Gambar 5. Alur Penempatan Bit Gambar 6. Contoh Kotak 64-bit

Gambar 6 merupakan contoh dari Kotak 64-bit yang setiap bit ditempatkan sesuai dengan alur dari Gambar 5. Sebagai contoh, bila diambil secara horisontal dengan baris pertama diambil terlebih dahulu, dan dilanjutkan baris kedua dan seterusnya sampai pada baris ke delapan sehingga seluruh bit dapat terambil dari kotak 64-bit. Pengambilan bit dapat dinotasikan secara verbal berdasarkan karakter (1 karakter sebanding dengan 8 bit) diberikan pada Persamaan (11).

(17)

7

4. Hasil dan Pembahasan

Bagian ini akan ditunjukan hasil dari perancangan kriptografi yang dibangun berbasis pada percabangan ranting pohon, yang kemudian dibuat menjadi sebuah kriptografi blok cipher 64 bit. Hasil rancangan kriptografi diuji sebagai sebuah kriptosistem, dan dibandingkan dengan kriptografi AES terkait dengan nilai keacakan dalam sebuah grafik untuk dibahas sebagai analisis dan diiterpretasi dengan perbandingan kedua kriptografi.

Untuk merancang kriptografi block cipher yang baru, dilakukan perancangan dengan berbasis pola-pola tertentu. Cabang dan Ranting pohon digunakan sebagai alur untuk mengambil bit dari kotak 64-bit. Rancangan ini menempatkan bit dengan mengasumsikan selalu ada batang utama yang menjadi pangkal untuk percabangan, dan setiap bit-bit akan disesuaikan untuk pengembilan atau juga sebagai penempatan bit. Untuk lebih jelasnya contoh cabang dan ranting pohon yang diberikan pada Gambar 7.

Gambar 7. Contoh Cabang dan Ranting

Pohon [11] Gambar 8. Alur Cabang dan Ranting Pohon

Berdasarkan pola dari cabang dan ranting pohon dirancang Cabang dan ranting pohon diberikan pada Gambar 7, maka dibentuk pola cabang ranting pohon pada Gambar 8. Alur ini dimulai dari pangkal pohon, kemudian ke ranting-ranting yang dimulai dari ranting-ranting yang besar ke ranting-ranting terkecil (pucuk). Pola cabang dan ranting pohon bila digunakan sebagai alur pengambilan bit dari kotak 64-bit yang sudah di inputkan sesuai pola pemasukan sesuai dengan Gambar 5, maka akan diperoleh urutan bit diberikan pada Persamaan (12).

K1 = (b29, b30, b31, b32, b33, b34, b35, b36), K2 = (b22, b16, b11, b7, b4, b2, b1, b37), K3 = (b44, b50, b55, b59, b62, b64, b23, b17),

K4 = (b12, b8, b5, b3, b38, b45, b51, b56), (12) K5 = (b60, b63, b24, b18, b13, b9, b6, b39),

(18)

8

Alur cabang dan ranting pohon (CRP) seperti yang ditunjukan pada Gambar 8 dapat digunakan sebagai alur untuk pemasukan bit maupun sebagai pengambilan bit dari kotak 64-bit. Hal ini dilakukan sehingga memperoleh banyak kombinasi alur yang dapat digunakan. Selain itu, alur CRP dapat dimodifikasi dengan membuat cabang utama memulai dari arah yang berbeda. Misalnya dari arah kiri bawah ke kanan atas, dari arah kanan atas ke kiri bawah, dan dari arah kiri atas ke kanan bawah.

Rancangan umum yang diberikan pada Gambar 4 ditunjukkan terdapat 4 putaran, dan pada setiap putaran terdapat proses untuk plainteks dan kunci sehingga akan memerlukan dua alur untuk penempatan atau pemasukan bit serta dua alur untuk pengambilan bit. Secara keseluruhan untuk proses enkripsi memerlukan 16 alur, dimana delapan alur untuk pemasukan dan delapan alur untuk pengambilan bit. Alur cabang dan ranting pohon digunakan untuk mengoperasi plainteks, sedangkan untuk mengoperasi bit pada kunci diberikan pada Gambar 9 sebagai alur pemasukan dan Gambar 10 sebagai alur untuk pengambilan bit.

Gambar 9. Alur Input Bit Kunci Gambar 10. Alur Ambil Bit Kunci

Apabila setiap bit dimasukan sesuai dengan alur pada Gambar 9, dan selanjutnya dialakukan pengambilan dengan alur pada Gambar 10, maka akan diperoleh urutan bit bdasarkan karakter diberikan pada Persamaan 13.

K1 = (b29, b30, b31, b32, b33, b34, b35, b36), K2 = (b22, b16, b11, b7, b4, b2, b1, b37), K3 = (b44, b50, b55, b59, b62, b64, b23, b17),

K4 = (b12, b8, b5, b3, b38, b45, b51, b56), (13) K5 = (b60, b63, b24, b18, b13, b9, b6, b39),

K6 = (b46, b52, b57, b61, b25, b19, b14, b10), K7 = (b40, b47, b53, b58, b26, b20, b15, b41), K8 = (b48, b54, b27, b21, b42, b49, b28, b43).

(19)

9

proses enkripsi perancangan algoritma dengan alur Cabang Ranting. Proses enkripsi-dekripsi secara keseluruhan untuk masing-masing putaran dapat dilihat pada Gambar 11 dan Gambar 12.

Gambar 11 adalah diagram secara keseluruhan dengan lengkap dimana setiap proses diberikan dengan jelas. Berdasarkan bagian enkripsi, nampak plainteks dan kunci dimasukan dalam bentuk karakter yang kemudian dikodekan dalam ASCII yang selanjutnya dikonversi ke dalam bit (binary digit). Setelah diubah ke biner selanjutnya masuk proses putaran. Ada 4 putaran yang dilakukan pada plainteks, pada tiap putaran terdapat 2 proses yaitu pemasukan bit, dan pengambilan bit. Alur pemasukan bit plainteks dapat dilihat pada Gambar 5 dan untuk pengambilan bit menggunakan alur cabang dan ranting pohon seperti pada gambar 8. Alur input bit kunci dapat dilihat pada Gambar 9, sedangkan untuk pengambilannya pada Gambar 10.

Hasil dari proses pemasukan dan pengambilan bit Plainteks akan menghasilkan Teks 1 (T1). Selain plainteks diperlukan kunci dimana pada kunci juga dilakukan perlakuan yang sama dengan plainteks pada Proses Kunci. Ada 4 putaran pada kunci dengan alur pemasukan dan pengambilan bit berbeda. Hasil dari proses pemasukan bit dan pengambilan bit Kunci menghasilkan Kunci 1 (K1). Teks 1 ( T1) dan kunci 1 (K1) dimana T1 dan K1 adalah hasil pengacakan putaran 1. Setelah itu dilakukan proses XOR antara T1 dan K1 untuk kemudian hasil dari XOR tersebut mengalami pergeseran bit 1 kali ke kanan untuk menghasilkan Cipherteks1 (C1). C1 akan diputar kembali untuk dilakukan proses 2 pada putaran 2, hasil dari putaran 2 akan menghasilkan T2. Kunci juga diputar kembali, dengan alur berbeda dari proses kunci 1. Proses putaran dilakukan sampai putaran 4 hungga T4 dan K4 selesai diproses dan menghasilkan C4

(20)

10

Gambar 11. Rancangan Diagram Proses Enkripsi Tiap Putaran

(21)

11

delapan. Secara umum apabila dimisalkan plainteks adalah X dan kunci adalah Y, maka dapat dinyatakan seperti pada Tabel 1.

Tabel 1. Proses Padding pada Plainteks dan Kunci

Padding Plainteks

Misalkan Plainteks X = (x1, x2,x3, ... ,xn), n|8, n ∈

Z+

Jika n ∤ 8, maka padding (8m – n) karakter ....,

n < 8m; m = 1, 2, ... Padding

Kunci

Misalkan Kunci Y = (y1, y2,...., yr)

Jika r < 8, maka padding (8 – r) karakter ...., n < 8; r = 1, 2, ..., 7.

Sebagai contoh, terdapat 13 karakter plainteks, maka n = 13 dan13 < 8m. Sehingga kelipatan delapan terkecil yang lebih besr dari 13 adalah 16 (8m; m = 2), jadi jumlah karakter yang akan di padding adalah (16 – 13) = 3 karakter. Hal yang sama juga pada kunci, misalkan diinputkan hanya 3 karakter sehingga perlu di padding sebanyak (8 – 3) = 5 karakter untuk memenuhi panjang ukuran blok cipher.

(22)

12

Gambar 12. Rancangan Diagram Proses Dekripsi Tiap Putaran

Sedangkan untuk proses dekripsi dapat dilihat dari Gambar 12 di atas, yang menjelaskan dilakukan kebalikan proses (invers) dari proses tiap putaran. Proses Kunci dilakukan terlebih dahulu dari Proses Kunci 1 sampai Proses Kunci 4. Ciphertext diubah menjadi bit untuk kemudian ditransposisikan 7 bit ke kanan dimana itu merupakan kebalikan dari proses enkripsi yang digeser ke kanan, dan hasil dari pergeseran bit tersebut dilakukan proses XOR dengan hasil dari Proses Kunci 4 (K4) untuk menghasilkan T4. Kemudian T4 masuk ke dalam Kebalikan Proses 4 dimana proses itu adalah kebalikan dari Proses pada enkripsi, jika dalam enkripsi bit masuk ke dalam alur pemasukan dan diambil mengikuti alur pengambilan, namun pada proses dekripsi, bit masuk ke dalam alur pengambilan

(23)

13

dan diambil sesuai alur pemasukan pada enkripsi. Hasil dari Kebalikan Proses 4 menghasilkan C3 yang selanjutnya akan mengalami proses berikutnya yaitu ditransposisikan 5 blok ke kiri dan di-XOR dengan K3 untuk menghasilkan T3 dan T3 masuk ke dalam kebalikan proses yang menghasilkan C2, begitu seterusnya sampai pada Kebalikan Proses 1 untuk dapat kembali ke Plaintext.

Pengujian Rancangan Kriptografi.

Penghitungan secara manual dilakukan membuktikan proses enkripsi pada Pola Cabang Ranting. Proses enkripsi menggunakan contoh plainteks “PASSWORD”, dengan kunci “FORTUNER”. Yang akan dijelaskan pada penelitian ini adalah proses putaran pertama atau ke 1. Pada plainteks ”PASSWORD” yang sudah diubah ke dalam biner adalah :

P: 01010000 A: 01000001 S: 01010011 S: 01010011

W: 01010111 O: 01001111 R: 01010010 D: 01000100

Pada bagian proses enkripsi dijelaskan dimana di dalam proses menggunakan alur pemasukan yang sama di tiap putaran namun menggunakan alur pengambilan bit yang berbeda pada tiap putarannya. Jadi plainteks yang dimasukkan ke dalam proses dengan alur yang sama yaitu secara miring ke atas yang dimulai dari sudut kiri atas blok seperti pada Gambar 5. Setelah bit-bit dimasukkan proses selanjutnya melakukan pengambilan bit alur yang digunakan adalah alur cabang ranting yang digunakan pada putaran satu ini sesuai pada Gambar 8. Pemasukan bit sesuai pola dapat dilihat pada Gambar 13 dan pengambilan bit dapat dilihat pada Gambar 14.

Gambar 13. Hasil Input Bit Gambar 14. Pengambilan Bit

(24)

14

Hasil dari proses putaran pertama yaitu T1 berupa bit yang nantinya akan di-XOR dengan kunci yang sudah dilakukan proses putaran. Pada proses kunci digunakan alur pembangkitan kunci dengan memakai alur yang berbeda tiap putaran. Kunci “FORTUNER” yang sudah diubah ke dalam biner adalah:

F: 01000110 11000110 01110101 10000001 10111000 10001100”.

Hasil dari pemasukan bit dan pengambilan bit plainteks pada putaran 1 (P1) akan di-XOR dengan hasil proses kunci pada putaran 1 (K1). Hasil XOR dari T1 dengan K1 adalah: “10111101 11001000 00001011 11001110 01001100 00001100 10101101 00101101” dan bit hasil dari XOR tersebut akan mengalami pergeseran bit 1 kali ke kanan sebelum menghasilkan Cipherteks1 (C1). Setelah mengalami pergeseran 1 kali ke kanan, bit C1 yang dihasilkan adalah “11011110 11100100 00000101 11100111 00100110 00000110 01010110 10010110“ dengan simbol “Þ ä ENQ ç & ACK V –”.

Untuk dilakukan proses berikutnya pada putaran ke dua, hasil dari C1 masuk ke dalam Proses 2 dan untuk kunci hasil dari K1 masuk ke dalam Proses Kunci 2. Begitu seterusnya hingga putaran ke empat untuk meghasilkan Cipherteks. Dan Chiperteks yang dihasilkan adalah: “10000001 01110111 01001000 00010111 10000100 00011101 00110101 11011111”, dengan simbol “w H ETB „ GS 5 ß”. Setelah dilakukan perbandingan dengan Plainteks awal, dapat dilihat pada grafik Gambar 15.

Gambar 15. Grafik Plainteks Dengan Cipherteks

Plainteks PASSWORD dengan desimalnya adalah “80, 65, 83, 83, 87, 79, 82, 68” dan bilangan desimal berdasarkan ASCII untuk kunci FORTUNER “70, 79, 82,

(25)

15

84, 85, 78, 69, 82”. Dapat dilihat selisih terhadap inputan dan hasil dari masing-masing putaran pada tabel 2.

Tabel 2. Selisih Perbandingan Input dan Hasil Tiap Putaran

I Input

1 80,65,83,83, 87,79,82,68 70,79,82,84, 85,78,69,82 222,228,5,231, 38,6,86,150

-142,-163,78,-

148,49,73,-4,-82

2 222,228,5,231, 38,6,86,150 136,252,144,198, 117,129,184,140 161,252,49,187, 165,36,46,11

61,-24,-

44,44,-127,-30,40,139

3 161,252,49,187, 165,36,46,11 73,150,86,197 6,10,249,35, 170,125,243,157 133,247,3,178, 28,5,46,9,-5,-89,-197,-146

4 170,125,243,157 133,247,3,178, 42,209,219,35 4,112,48,159, 129,119,72,23, 132,29,53,223

4,128,-69,155,38,96,

190,-66

Dan hasil dari masing-masing putaran dapat dilihat pada tabel 3. Tabel 3. Hasil Tiap Putaran

(26)

16

Pembuktian Sebagai Kriptosistem

Suatu teknik kriptografi dapat dikatakan sebagai sebuah teknik kriptografi jika memenuhi 5-tuple yaitu P, C, K, E, dan D yang telah diberikan pada Defenisi 1. Bagian ini akan ditunjukan bahwa perancangan kriptografi blok cipher CRP memenuhi kelima (5-tuple).

Bagian yang pertama adalah syarat P adalah himpunan berhingga dari plainteks. Perancangan ini menggunakan 256 karakter ASCII sebagai doamian inputan, sehingga sudah tentu elemen plainteks adalah himpunan yang berhingga. Syarat atau tuple-2 yang harus dipenuhi yaitu Cadalah himpunan berhingga dari cipherteks. Sama dengan elemen plainteks, ciperteks di konversikan dalam dihasilkan dalam 256 karakter ASCII, walaupun dalam proses dibawah dalam oprasi bit. K, keyspace adalah himpunan berhingga dari kunci. Jumlah ruang kunci yang dipakai dalam perancangan ini adalah 256 karakter yang diambil dari ASCII. Sehingga ruang kunci merupakan himpunan berhingga. E, enkripsi, dan

D, dekripsi, setiap ek : PC dan dk : C → P adalah fungsi sedemikian hingga

dk(ek(x)) = x, untuk setiap plainteks xP. Pembahasan sebelumnya telah

membahas proses enkripsi dan dekripsi sehingga telah memenuhi tuple E dan D. Karena telah memenuhi kelima kondisi maka Alur Pola Cabang dan Ranting Pohon merupakan sebuah sistem kriptografi.

Pengujian Lanjutan dengan Variasi Plainteks

Plainteks Z, dan kuncinya

Gambar 16. Grafik Hasil Perbandingan dengan AES-128 Menggunakan Plainteks Karakter Sama

(27)

17

Gambar 17. Grafik Hasil Perbandingan dengan AES-128

Hasil perbandingan antara AES dengan kriptografi yang diteliti dapat dilihat dari diagram pada Gambar 17. Analisis perbandingan dilakukan dengan mencari nilai keacakan. Berdasarkan data pada Gambar 17 dan perhitungan dari persamaan (6), dapat diperoleh nilai keacakan sumbu-y untuk kriptografi Cabang dan Ranting Pohon sebesar -0,26144 dan untuk AES-128 sebesar -0,68327. Nilai keacakan AES terhadap kriptografi yang diteliti adalah sebesar -1,61349. Sedangkan untuk nilai diferensiasi berdasarkan pada persamaan (8) dapat dihasilkan untuk AES sebesar -0,0625 dan untuk Cabang dan Ranting Pohon sebesar -0,5625.

5. Simpulan

Berdasarkan penelitian yang telah dilakukan maka dapat diambil kesimpulan, perancangan kriptografi dengan pola cabang ranting dapat melakukan enkripsi dan dekripsi, dan juga dapat memenuhi 5-tuple sehingga dapat dikatakan sebagai sebuah sistem kriptografi. Hasil rata-rata keacakan AES terhadap Pola Cabang dan Ranting Pohon adalah -1,61349 dengan nilai diferensiasi sebesar -0,5625. Selain itu penelitian ini juga dapat digunakan sebagai teknik kriptografi baru dan juga metodologi baru dalam kriptografi simetris yang dapat membantu penelitian kriptografi.

6. Tinjauan Pustaka

[1] Huda, Khairul. 2014. Perancangan Kriptografi Kunci Simetris Menggunakan Fungsi Polinomial Hermite dan Akar Kuadrat Fungsi Linear. UKSW, Salatiga.

[2] Setyawan, Yudi. 2014. Penggunaan Fungsi Bessel dan Fungsi Dawson dalam Perancangan Kriptografi Kunci Simetris. UKSW, Salatiga.

[3] Suprabowo, Arif. 2011. Analisa Kriptanalisis Deferensial Pada Twofish. Institut Teknologi Bandung.

[4] Dewi, B., dkk., 2015. “Kemlu RI Masih Klarifikasi Berita Penyadapan Intelijen”. Diakses pada 20 April 2015.

[5] Chang, G., 2012, Penyadapan e-mail dari Papua, Diakses pada 21 April 2015.

(28)

18

Jakarta.: SPK IT Consulting

[7] Munir, Rinaldi, 2006. Kriptografi, Bandung: Informatika.

[8] Franindo, Ardian, 2007. “Chiper Blok dengan Algoritma Operasi XOR antar Pecahan Blok”. Institut Teknologi Bandung

[9] Stinson, D.R. 1995. Cryptography Theory and Practice. Florida: CRC Press, Inc.

[10] Negara, I Made Ari Jaya, 2003. Penyandian Data Dengan Algoritma Kriptografi Noekeon. Institut Teknologi Bandung.

[11] http://www.grandrapidsohio.com/images/Branch.jpg. Diakses pada tanggal 15 Januari 2015.

[12] Liwandouw, V.B,. Wowor A.D. 2015. Desain Algoritma Kubus Rubik Dalam Perancangan Kriptografi Simetris. Prosiding Seminar Teknik Informatika dan Sistem Informasi.Bandung

[13] Nayuki, 2014, AES Cipher Internal in Excel,

(http://nayuki.eigenstate.org/page/aes-cipher-internals-in-excel),

(diakses 2 Februari 2015)

Gambar

Gambar 1. Proses Enkripsi Block Cipher [6]
Gambar 3. Langkah-Langkah Penelitian
Gambar 4. Rancangan Kriptografi Secara Umum
Gambar 5. Alur Penempatan Bit
+7

Referensi

Dokumen terkait

[r]

Tuliskan perkataan berimbuhan yang betul berdasarkan kata dasar dalam kurungan yang diberikan... Padankan frasa dengan kata hubung

Yang dimaksud dengan kegiatan kunjungan rumah adalah semua kegiatan yang dilakukan untuk tindakan lanjut kegiatan jenis pelayanan : penyakit dalam, kesehatan anak (Termasuk.

8 Posttest Lisan Menjelaskan bentuk badan hukum, ketetapan, prosedur, fungsi, Badan Hukum dalam pendirian Bisnis Home Care dengan benar Menjelaskan bentuk badan hukum,

Ulf Mehlig do Centre for Marine Ecology (ZMT), Universidade de Bremen, para leitura crítica, melhorias no código para plotar a média e o desvio padrão, e permissão para usar

The representative of Association of Brazilian Pepper Producers and Exporters (ABEP) informed that several pesticides which were listed in the IPC proposal are not permitted to

Hasil analisis variabel secara individual dengan menggunakan regresi linear berganda maka diketahui bahwa Debt to Equity Ratio berpengaruh negatif dan tidak signifikan

(3) Tahap Analisis dan Interpretasi. Pada tahap ini, model harapan ideal yang telah divalidasikan, diinterpretasikan berdasarkan kerangka teoritik, norma-norma praktis yang