9
1 ANALISIS PERBANDINGAN PERFORMANSI ALGORITMA CAMELLIA DAN AES (ADVANCED ENCRYPTION STANDARD) PADA BLOK CIPHER Sabriyanto 1 , Agus Virgono, Ir., MT. 2 , R.Rumani M., BcTT., Drs., MSEE 3 1,2,3 Fakultas Elektro dan Telekomunikasi Institut Teknologi Telkom, Bandung 1 [email protected] 2 [email protected] 3 [email protected] ABSTRACT Cryptography becomes a fully integrated part of network security system in global information era. There are some parameters for cryptography system, they are level of algorithm security, flexibility, characters appearance distribution frequency, distribution variance, avalanche effect, brute force attack, and data execution time. Those parameters are then could be uses as the guidance for the users to choose the suitable cryptography system based on their needs. Advanced Encryption Standard (AES) and Camellia are the examples of the cipher block-based cryptography system. Both cryptography systems using the same symmetric keys, 128 bit block size, and 128, 192, 256 length of keys. This research measures and analyzes the comparison of AES and Camellia algorithm performance. This comparison facilitated by the software which simulated the cryptography process for both algorithms. The performance parameters measurements including the time process, the influence of operation mode, avalanche effect, and brute force attack. This final project use Java programming language as the software development system. Keywords: Camellia, Advanced Encryption Standard, Cryptography, cipher block, avalanche effect, brute force attack. PENDAHULUAN Perkembangan ilmu pengetahuan yang sangat pesat dewasa ini menyebabkan informasi menjadi sesuatu yang sangat berharga, oleh karena itu perlu dilakukan perlindungan terhadap informasi dengan berbagai cara. Salah satu metode yang digunakan untuk melindungi data adalah dengan menggunakan teknik kriptografi dimana informasi yang ada dibuat sedemikian rupa agar tidak dapat diketahui oleh yang tidak memiliki hak akses. Terdapat banyak algoritma kriptografi dimana masing-masing algoritma memiliki karakter dan spesifikasi yang berbeda. Salah satu jenis algoritma kriptografi adalah blok cipher yang menggunakan kunci simetris, contoh : DES, IDEA, Camellia, dan AES. METODA PENELITIAN Pada penelitian ini akan membandingkan dan menganalisa performansi dari dua algoritma kriptografi yaitu Camellia dan AES (Advanced Encryption Standard). Kedua algoritma menggunakan panjang blok data 128 bit dan panjang kunci 128 bit, 192 bit dan 256 bit. Parameter-parameter performansi yang diukur dan dibandingkan meliputi waktu proses, pengaruh mode operasi CBC,CFB,OFB, avalanche effect, dan brute force attack. Untuk mendapatkan parameter-parameter uji digunakan perangkat lunak simulasi yang dibangun menggunakan bahasa pemrograman Java. Tujuan dari penelitian ini adalah : 1. Merancang dan membangun perangkat lunak simulasi kriptografi algoritma Camellia dan AES (Advance Encyption Standard). 2. Mengukur parameter-parameter performansi dari kedua algoritma yang didapatkan melalui perangkat lunak simulasi. 3. Mendapatkan analisa dan kesimpulan akhir dari perbandingan performansi kedua algoritma melalui pengukuran

Algoritma Camellia Dan Aes Pada Blok Cipher

Embed Size (px)

DESCRIPTION

Menjelaskan Algoritama Camellia dan Aes pada Blok Cipher untuk Pembelajaran Bahasa Pemrogaman

Citation preview

Page 1: Algoritma Camellia Dan Aes Pada Blok Cipher

1

ANALISIS PERBANDINGAN PERFORMANSI ALGORITMA CAMELLIA DAN AES (ADVANCED ENCRYPTION STANDARD) PADA

BLOK CIPHER

Sabriyanto1, Agus Virgono, Ir., MT.2, R.Rumani M., BcTT., Drs., MSEE3

1,2,3Fakultas Elektro dan Telekomunikasi Institut Teknologi Telkom, Bandung [email protected] [email protected] [email protected]

ABSTRACT Cryptography becomes a fully integrated part of network security system in global

information era. There are some parameters for cryptography system, they are level of algorithm security, flexibility, characters appearance distribution frequency, distribution variance, avalanche effect, brute force attack, and data execution time. Those parameters are then could be uses as the guidance for the users to choose the suitable cryptography system based on their needs.

Advanced Encryption Standard (AES) and Camellia are the examples of the cipher block-based cryptography system. Both cryptography systems using the same symmetric keys, 128 bit block size, and 128, 192, 256 length of keys.

This research measures and analyzes the comparison of AES and Camellia algorithm performance. This comparison facilitated by the software which simulated the cryptography process for both algorithms. The performance parameters measurements including the time process, the influence of operation mode, avalanche effect, and brute force attack. This final project use Java programming language as the software development system.

Keywords: Camellia, Advanced Encryption Standard, Cryptography, cipher block, avalanche effect, brute force attack. PENDAHULUAN

Perkembangan ilmu pengetahuan yang sangat pesat dewasa ini menyebabkan informasi menjadi sesuatu yang sangat berharga, oleh karena itu perlu dilakukan perlindungan terhadap informasi dengan berbagai cara. Salah satu metode yang digunakan untuk melindungi data adalah dengan menggunakan teknik kriptografi dimana informasi yang ada dibuat sedemikian rupa agar tidak dapat diketahui oleh yang tidak memiliki hak akses.

Terdapat banyak algoritma kriptografi dimana masing-masing algoritma memiliki karakter dan spesifikasi yang berbeda. Salah satu jenis algoritma kriptografi adalah blok cipher yang menggunakan kunci simetris, contoh : DES, IDEA, Camellia, dan AES.

METODA PENELITIAN

Pada penelitian ini akan membandingkan dan menganalisa

performansi dari dua algoritma kriptografi yaitu Camellia dan AES (Advanced Encryption Standard). Kedua algoritma menggunakan panjang blok data 128 bit dan panjang kunci 128 bit, 192 bit dan 256 bit. Parameter-parameter performansi yang diukur dan dibandingkan meliputi waktu proses, pengaruh mode operasi CBC,CFB,OFB, avalanche effect, dan brute force attack. Untuk mendapatkan parameter-parameter uji digunakan perangkat lunak simulasi yang dibangun menggunakan bahasa pemrograman Java.

Tujuan dari penelitian ini adalah : 1. Merancang dan membangun

perangkat lunak simulasi kriptografi algoritma Camellia dan AES (Advance Encyption Standard).

2. Mengukur parameter-parameter performansi dari kedua algoritma yang didapatkan melalui perangkat lunak simulasi.

3. Mendapatkan analisa dan kesimpulan akhir dari perbandingan performansi kedua algoritma melalui pengukuran

Page 2: Algoritma Camellia Dan Aes Pada Blok Cipher

2

parameter-parameter yang didapatkan dari simulasi.

Dalam peneltian ini dirumuskan

permasalah yang akan dibahasa sebagai berikut: 1. Bagaimana proses pembuatan cipher

pada data text dan parameter message size, block size dan key size hingga kembali menjadi plaintext.

2. Bagaimana proses pembangkitan kunci simetris pada kedua algoritma Camellia dan AES

3. Melakukan pembandingan dan analisa performansi algoritma melalui pengamatan parameter-parameter performansi.

Untuk lebih memokuskan pengerjaan

penelitian ditetapkan pembatasan-pembatasan sebagai berikut: 1. Data yang akan digunakan pada proses

kriptografi adalah dalam bentuk text yang dikodekan dalam ASCII.

2. Kunci yang digunakan berjenis simetris dengan panjang 128, 192 dan 256 bit.

3. Data masukan sistem dibagi per blok dengan ukuran blok 128 bit.

4. Bahasa pemrograman untuk pembangunan perangkat lunak simulasi proses kriptografi menggunakan bahasa Java.

HASIL DAN PEMBAHASAN Sistem yang dirancang pada penelitian ini adalah aplikasi algoritma AES dan Camellia. Aplikasi ini dapat mengukur waktu proses yaitu proses enkripsi dan dekripsi masing-masing algoritma dengan masukan berupa plaintext, panjang kunci dan mode operasi yang digunakan. Klasifikasi panjang kunci yang digunakan ada tiga jenis berdasarkan ukuran kunci yaitu 128 bit, 192 bit dan 256 bit. Mode operasi yang digunakan ada tiga jenis yaitu Cipher Block Chaining (CBC), Output Feedback (OFB) dan Cipher Feedback (CFB).

Gambar 1. Gambaran Umum Sistem

Sistem dirancang dengan

menggunakan bentuk pemodelan Data Flow Diagram (DFS) atau Diagram Alir Data (DAD). Model simulasi yang dirancang dibagi menjadi dua bagian yaitu proses enkripsi yang dapat menampilkan hasil keluaran berupa ciphertext, dan proses dekripsi yang dapat mengembalikan ciphertext menjadi plaintext.

Gambar 2. Pemodelan Sistem

Gambar Diagram Alir Data (DAD) di

atas menggambarkan proses enkripsi dan dekripsi pada masing-masing algoritma kriptografi yaitu algoritma Camellia dan Algoritma AES. Untuk penjelasan lebih rinci dari Diagram Alir Data kedua Algoritma kriptografi dijelaskan pada sub-bab selanjutnya.

Pada bagian ini akan dibahas model algoritma Camellia yang digunakan dalam aplikasi simulasi. Gambar 3. menjelaskan tentang proses enkripsi pada algoritma Camellia dengan menggunakan berbagai kunci yaitu 128, 192, dan 256 bit.

Page 3: Algoritma Camellia Dan Aes Pada Blok Cipher

3

Gambar 3. Diagram Alir Data Enkripsi

Camelia Pertama user memasukkan kunci

utama ke dalam key generator yang akan mengolah kunci utama menjadi beberapa kunci dengan panjang kunci 64 bit yang terbagi dalam dua jenis sub kunci KW, sub kunci K dan sub kunci KL. Sub kunci KW 1 dan KW 2 akan keluar dari key generator menuju XOR-state. Pada waktu bersamaan user juga memasukkan plaintext menuju XOR-state. Maka plaintext akan di-XOR-kan dengan kedua sub kunci KW 1 dan KW 2. Hasil dari XOR-state tersebut dibagi menjadi dua yaitu 64 bit bagian kanan (R0), dan 64 bit bagian kiri (L0), yang ditujukan ke round-state. Di dalam round-state, R0 dan L0 di-XOR-kan dengan sub kunci K sebanyak enam kali dengan membutuhkan sub kunci K sebanyak enam kali Nr unit, hasilnya berupa R1 dan L1.

R1, L1, KL 1, dan KL 2 dimasukkan ke dalam fungsi FL-state (FL) dimana fungsi ini dilakukan sebanyak Nr-kali. Nr adalah jumlah proses FL yang tergantung pada panjang bit kunci utama. Untuk panjang kunci utama 128 bit nilai Nr yang digunakan adalah 3. Untuk panjang kunci utama 192 dan 256 bit nilai Nr yang digunakan adalah 4. Hasil proses tersebut berupa RN dan LN, RN di-XOR-kan dengan KW 3 dan LN di-XOR-kan dengan KW 4 yang akan menghasilkan keluaran berupa ciphertext (C).

Gambar 4. menjelaskan proses dekripsi algoritma Camellia. Prosesnya hampir sama dengan proses enkripsi tetapi terdapat perbedaan pada masukan awal, dimana yang dimasukkan user adalah kunci dan ciphertext (C).

Gambar 4. Diagram Alir Data Proses

Dekripsi Camelia Ciphertext di-XOR-kan dengan sub

kunci KW 3 dan KW 4, setelah itu dimasukkan ke dalam round-state dan di-XOR-kan dengan sub kunci K sebanyak enam kali dimulai dengan K terakhir yang digunakan pada proses enkripsi. Setelah melalui proses di atas, ciphertext dimasukkan ke dalam fungsi FL sebanyak Nr-kali, dimulai dari KL terakhir yang digunakan pada proses enkripsi, hasilnya di-XOR-kan dengan KW 1 dan KW 2 sehingga akan menghasilkan plaintext kembali.

Gambar 1. Diagram Alir Data Proses

Enkripsi AES

Gambar 5. menjelaskan proses enkripsi AES. Pertama user memasukkan plaintext dan kunci yang keduanya di-XOR-kan menjadi initial round (pada gambar ditulis start E-state). Hasil dari proses tersebut adalah A-byte sepanjang 128 bit yang berupa state. A-byte dimasukkan ke dalam Round-E dan berulang sebanyak Nr-1 kali. Nilai Nr didapat dari tabel AES. Untuk kunci 128 bit nilai Nr adalah 10, untuk 192 bit adalah nilai Nr adalah 12 dan untuk 256 bit nilai Nr adalah 14. Proses pada Round-E akan dibahas pada sub-bab selanjutnya. Hasil dari proses tersebut adalah B-byte yang dimasukkan ke dalam Final E-state yang kemudian menghasilkan ciphertext.

Page 4: Algoritma Camellia Dan Aes Pada Blok Cipher

4

Gambar 2 .Diagram Alir Data Round-E

Gambar 6. menjelaskan proses pada

Round-E. Proses ini dimulai dengan proses Sub-Byte untuk A-byte. Proses Sub-Byte adalah proses substitusi A-byte dengan nilai-nilai pada tabel AES dengan menggunakan aturan tertentu. Proses ini menghasilkan A1-byte. Selanjutnya dilakukan proses penggeseran byte pada A1-byte yang dinamakan ShiftRows yang menghasilkan A2-byte. Selanjutnya dilakukan proses transformasi MixColumns, proses ini adalah menukar kolom di dalam A2-byte yang menghasilkan D-byte. Di dalam AddRoundKey D-byte di-XOR-kan dengan sub key. Sub key diperoleh dari kunci awal yang diubah oleh key generator, proses ini menghasilkan B-byte. B-byte akan diproses di final state yang menghasilkan ciphertext. Proses di final E-state hampir sama dengan proses di Round E-state, perbedaannya adalah di final E-state tidak dilakukan proses transformasi MixColumns. Proses final E-state diperlihatkan pada gambar 7 di bawah ini.

Gambar 3 Diagram Alir Data Final E-

state Gambar 8. menjelaskan proses

dekripsi pada AES. Proses dimulai dengan user memasukkan ciphertext dan key ke dalam sistem. Cipher akan di-XOR-kan dengan key, kemudian dilakukan proses invers ShiftRows, selanjutnya proses invers

SubByte pada start D-state menghasilkan nilai A-byte, proses selanjutnya secara berurut adalah AddRoundKey, invers MixColumns, invers ShiftRows dan invers SubByte. Proses ini dilakukan sebanyak Nr-1 kali yang menghasilkan B-byte, kemudian dilakukan proses final D-state yaitu B-byte di-XOR-kan dengan sub key yang berasal dari key generator.

Gambar 4. Diagram Alir Data Proses Dekripsi AES

Untuk mendapatkan data sebagai bahan analisa maka dibutuhkan suatu pengujian terhadap fungsional sistem dan pengukuran parameter-parameter performansi yang telah ditentukan. Poin-poin pengujian dan pengukuran dijabarkan sebagai berikut :

• Pengujian Fungsional - Enkripsi : eksekusi proses

enkripsi message yang akan dikirim

- Dekripsi : eksekusi proses dekripsi incoming message

• Pengukuran Parameter Performansi - Waktu proses enkripsi :

kalkulasi waktu proses enkripsi pesan

- Waktu proses dekripsi : kalkulasi waktu proses dekripsi pesan

- Analisa perbandingan masing-masing mode operasi terhadap parameter ukur antara kedua algoritma AES dan Camellia

- Avalanche Effect : kalkulasi perubahan data terhadap perubahan key

- Bruteforce Attack : kalkulasi peluang dan waktu bongkar key

Prosedur uji yaitu pertama masukkan data atau file plaintext yang akan dienkripsi, kemudian masukkan kunci diikuti dengan eksekusi pilih mode operasi dan pilih algortima kriptografi. Setelah semua prosedur dilakukan maka yang terakhir adalah eksekusi proses

Page 5: Algoritma Camellia Dan Aes Pada Blok Cipher

5

enkripsi dimana sistem melakukan proses enkripsi data atau file masukan sesuai dengan algoritma kriptografi yang digunakan.

Gambar 9. Pengujian Proses Enkripsi

Respon sistem adalah menghasilkan keluaran berupa data atau file ciphertext.

Gambar 10. Respon Proses Enkripsi

Prosedur uji proses ini berkebalikan dengan proses enkripsi, apabila pada proses enkripsi yang menjadi masukan adalah data atau file plaintext maka pada proses dekripsi yang menjadi masukan adalah data atau file ciphertext. Sistem meminta kunci agar data dapat dienkripsi, oleh karena kedua algoritma kriptografi pada sistem ini adalah berjenis simetris maka kunci yang digunakan pada proses dekripsi adalah kunci yang sama pada proses enkripsi plaintext menjadi ciphertext.

Gambar 11. Pengujian Proses Dekripsi

Setelah kunci dimasukkan kemudian sistem mengeksekusi proses dekripsi yang menghasilkan keluaran berupa plaintext.

Gambar 12. Respon Proses Dekripsi

Bagian ini merupakan kelanjutan dari pengujian fungsional, dimana hasil dari pengujian fungsional adalah berupa parameter-parameter yang dianalisis pada Penelitian ini.

Pengukuran dengan melakukan proses enkripsi pada data plaintext yang di-input-kan ke dalam sistem dan kemudian mencatat nilai waktu yang ditampilkan oleh sistem. Pengujian dilakukan sejumlah lima kali pada masing-masing mode dan ukuran data untuk dapat mengukur nilai waktu rata-rata. Tabel 1. Nilai Rata-Rata Waktu Proses

Enkripsi

Size

AES Encrypt Delay (ms)

Camellia Encrypt Delay (ms)

- CBC OFB CFB - CBC OFB CFB

16 15.2 16 16.8 16.8 15.6 16.2 17.6 18.8

32 15.6 16.6 17.6 17.8 15.8 16.8 18.4 20.4

48 16.6 16.8 17.8 18.8 16.8 17.8 20.4 20.6

64 17.2 18.4 20.4 22.6 17.4 17.6 20.4 21.2

80 18.4 19.4 21.6 21.6 18.8 20.2 22.6 23.8

96 19.4 20.8 22.6 24.4 19.8 21.2 23.8 24.6

112 20.2 21.6 23.8 25.8 20.4 21.8 24.8 26.8

128 21.4 21.8 24.8 26.2 21.6 21.8 27.6 26.6

144 21.6 21.6 26.2 27.4 21.8 21.8 30.4 27.4

160 22.4 23.6 26.6 29.2 22.6 23.6 32.2 32.8

Pengukuran dengan melakukan proses dekripsi pada ciphertext dan kemudian mengamati nilai waktu yang ditampilkan oleh sistem. Pengujian dilakukan sejumlah lima kali pada masing-masing mode dan ukuran data untuk dapat mengukur nilai waktu rata-rata.

Page 6: Algoritma Camellia Dan Aes Pada Blok Cipher

6

Tabel 2 Nilai Rata-Rata Waktu Proses Dekripsi

Size

AES Decrypt Delay (ms)

Camellia Decrypt Delay (ms)

- CBC OFB CFB - CBC OFB CFB

16 15.2 16 17.2 17 15.8 16.2 17.6 19.4

32 15.6 16.4 18.2 18 15.8 16.8 18.4 20.6

48 16.6 16.8 18.4 20.4 17.2 17.8 20.2 20.8

64 17.8 18.4 21.6 22 18.4 19.2 20.4 22.4

80 18.6 19.4 21.8 22.2 19.2 21.8 24.4 24.6

96 20.4 20.8 22.4 24.6 20.8 21.8 23.8 25.2

112 20.6 21.6 25.4 26.6 21.2 22.6 24.8 26.6

128 21.8 21.8 24.8 26.8 22.4 22.2 27.6 28.2

144 22 21.6 26.6 28.2 22.4 24.6 30.4 29.2

160 22.8 23.6 27.6 28.4 23.6 24.6 32.2 34.2

AVG 19.14 19.64 22.4 23.42 19.68 20.76 23.98 25.12

Melakukan pembandingan nilai bit

cipher hasil dari enkripsi dua blok data dan dua key Syang berbeda nilai 1 bit terakhir. Prosedur pengukuran yaitu dengan melakukan proses XOR dari kedua nilai cipher yang plaintext-nya berbeda nilai satu bit pada bit terakhir.

Gambar 12. Ilustrasi Proses Pengukuran

Avalanche Effect

Tabel 3. Nilai Avalanche Effect AES dengan Masukan Berbeda dan Kunci

Sama

Mode Input Bit Berubah Persentase

CBC in1.key1 131/256 51.17 In2.key1

OFB in1.key1 127/256 49.61 In2.key1

CFB in1.key1 124/256 48.44 In2.key1

Tabel 4. Nilai Avalanche Effect AES dengan Masukan Sama dan Kunci

Berbeda

Mode Input Bit Berubah Persentase

CBC in1.key1 138/256 53.91 In1.key2

OFB in1.key1 129/256 50.39 In1.key2

CFB in1.key1 122/256 47.66 In1.key2

Tabel 4. Nilai Avalanche Effect Camellia

dengan Masukan Berbeda dan Kunci Sama

Mode Input Bit Berubah Persentase

CBC in1.key1 133/256 51.96 In2.key1

OFB in1.key1 129/256 50.39 In2.key1

CFB in1.key1 125/256 48.83S In2.key1

Tabel 5. Avalanche Effect Camellia dengan Masukan Sama dan Kunci

Berbeda

Mode Input Bit Berubah Persentase

CBC in1.key1 135/256 52. 73 in1.key2

OFB in1.key1 131/256 51.17 in1.key2

CFB in1.key1 129/256 50.39 in1.key2

Analisa Brute Force Attack pada

sistem ini adalah dengan melakukan perhitungan matematis dari masing-masing kunci untuk mendapatkan nilai durasi proses memecahkan kemungkinan kunci.

Algoritma AES dan Camellia mengggunakan kunci untuk proses enkripsi yang sama dengan proses dekripsi dengan panjang 128, 192 dan 256 bit.

Kemungkinan kunci yang dapat dihasilkan dengan menggunakan panjang 128 bit adalah sejumlah 3,4 x 1038 kunci. Asumsi kecepatan komputasi adalah 106 key/sec maka :

Page 7: Algoritma Camellia Dan Aes Pada Blok Cipher

7

257

32

6

38

1008,1101536,3

sec104,3

10

104,3 ×=×

×=×

menghasilkan durasi sejumlah 1,08 x 1025 tahun untuk memecahkan seluruh kemungkinan kunci.

Untuk kunci 192 bit, kemungkinan kunci yang dapat dihasilkan adalah sejumlah 6,2 x 1057 kunci. Asumsi kecepatan komputasi adalah 106 key/sec maka :

447

51

6

57

1097,1101536,3

sec102,6

10

102,6 ×=×

×=×

menghasilkan durasi sejumlah 1,97 x 1044 tahun untuk memecahkan seluruh kemungkinan kunci.

Kemungkinan kunci yang dapat dihasilkan dengan menggunakan panjang 128 bit adalah sejumlah 3,4 x 1038 kunci. Asumsi kecepatan komputasi adalah 106 key/sec maka :

637

71

6

77

108,3101536,3

sec102,1

10

102,1 ×=×

×=×

(4.2) menghasilkan durasi sejumlah 3,8 x 1063 tahun untuk memecahkan seluruh kemungkinan kunci.

Tabel 6. Perbandingan Nilai Brute Force

Attack

Kunci Durasi Brute Force Attack

128 bit 1,08 x 1025 tahun 192 bit 1,97 x 1044 tahun 256 bit 3,8 x 1063 tahun

Berdasarkan data hasil dari pengujian

dan pengukuran sistem maka dapat dihasilkan analisa dan perhitungan data parameter performansi.

Pengukuran parameter performansi sistem yang telah dilakukan terdiri dari waktu proses enkripsi dan dekripsi, avalanche effect, bruteforce attack dan pembandingan kedua algoritma AES dan Camellia berdasarkan masing-masing parameter performansi.

Hasil pengukuran waktu proses enkripsi dan dekripsi menunjukkan bahwa semakin besar jumlah karakter pada plaintext maka akan semakin lama waktu yang dibutuhkan untuk melakukan proses enkripsi dan dekripsi, hal ini dikarenakan

proses enkripsi dan dekripsi adalah proses pengacakan dan pengkodean nilai setiap karakter dimana karakter diubah ke dalam bentuk byte.

CHAR SIZE ~ WAKTU PROSES ...(1)

Waktu proses enkripsi dan dekripsi

pada algoritma AES lebih rendah dibandingkan dengan waktu proses pada algoritma Camellia dikarenakan struktur cipher dan penjadwalan kunci pada algoritma AES lebih sederhana dibandingkan Camellia. Semakin sederhana struktur cipher dan penjadwalan pada algoritma kriptografi maka waktu proses enkripsi dan dekripsi yang dibutuhkan akan semakin kecil.

STRUK CIPHER ~ WKT PROSES ..(2)

Pada struktur cipher AES ditekankan

kesederhanaan tranformasi dengan menggunakan matrik dengan panjang 16 byte array dimana pada matrik tersebut terjadi beberapa proses tranformasi pergeseran nilai kolom dan baris. Pada algoritma Camellia digunakan jaringan Fiestel sebagai pembentukan struktur dan proses penjadwalan kunci. Pada jaringan Fiestel tersebut dimerlukan waktu untuk proses round, semakin banyak proses round pada jaringan Fiestel maka semakin besar waktu yang dibutuhkan untuk melakukan proses enkripsi dan dekripsi.

ROUND FEISTEL ~ WAKTU PROSE ..(3)

Semakin panjang kunci yang

digunakan maka waktu proses enkripsi dan dekripsi juga semakin besar karena untuk penjadwalan kunci pada AES terdapat sub kunci dengan nilai 16 byte array dan terdiri dari proses permutasi setiap 4 byte word pada data kunci. Camellia memiliki struktur jaringan Fiestel dalam proses generator kunci menjadi beberapa sub kunci dengan nilai 64 bit. Semakin panjang kunci yang dimasukkan maka semakin besar proses penbentukan kunci dan waktu proses enkripsi dan dekripsi pada algoritma kriptografi.

KEY LENGTH ~ WAKTU PROSES ..(4)

Page 8: Algoritma Camellia Dan Aes Pada Blok Cipher

8

Tabel 7. Nilai Rata-Rata Perbandingan

Waktu Proses AES dan Camellia

Key Lengt

h

AES (ms) Camellia (ms)

Enc Dec Enc Dec

128 bit 17.72 17.8 18.36 18.3 192 bit 18.8 19.14 19.06 19.68 256 bit 19.64 19.86 20.36 20.6

Tabel 8. Perbandingan Waktu Proses AES dan Camellia

Proses Waktu Proses Enkripsi AES<CAMELLIA Dekripsi AES<CAMELLIA

Pengukuran parameter waktu proses

pada algoritma Camellia dan AES dilakukan untuk masing-masing mode operasi, hasil pengukuran menunjukkan bahwa mode operasi yang paling sedikit menggunakan waktu proses adalah mode operasi Cipher Block Chaining (CBC) dikarenakan pada mode ini data yang dienkripsikan bersifat feedforward yaitu blok cipher menjadi initialization vector untuk blok plain selanjutnya. Pada dua mode lainnya (CFB dan OFB) merupakan mode blok cipher yang hampir mirip dengan cipher aliran, dimana data mengikuti sistem antrian dengan ukuran 8 bit tanpa menunggu data lengkap terlebih dahulu. Waktu proses menjadi lebih lama karena 8 bit data paling kiri dari hasil enkripsi menjadi keystream yang di-XOR-kan dengan 8 bit pertama dari plaintext dimana proses ini menghasilkan cipher yang kemudian disalin untuk menjadi antrian data initialization vector.

Tabel 9. Perbandingan Waktu Proses

Masing-Masing Mode Operasi

Proses Waktu Proses Enkripsi CBC<OFB<CFB Dekripsi CBC<OFB<CFB

Hasil pengukuran dan pembandingan

nilai bit dari cipher yang dihasilkan dari dua input yang berbeda 1 bit menunjukkan bahwa algoritma AES dan Camellia dengan menggunakan mode operasi dan

tanpa mode operasi menghasilkan range nilai antara 47% sampai dengan 53%. Pada algoritma Camellia terdapat perubahan bit paling sedikit karena proses menggunakan round block dan subkunci yang berbeda saat proses iterasi jaringan Fiestel pada proses enkripsi dan dekripsi, kemudian dipengaruhi proses kunci generator untuk menghasilkan beberapa sub kunci dengan ukuran 64 bit tiap sub kunci dan proses pengacakan kunci dengan plaintext saat proses enkripsi dan dekripsi. Berdasarkan hasil pengukuran pada algoritma AES dan Camellia terhadap mode operasi maka mode operasi Cipher Feedback (CFB) memiliki nilai perubahan bit yang paling besar dibandingkan kedua mode lainnya (CBC dan OFB). Dari sudut pandang avalanche effect bahwa standarisasi sebuah algoritma kriptografi dikatakan tangguh apabila memiliki nilai avalanche effect ½ atau 50%, maka dapat disimpulkan ketiga mode operasi pada algoritma AES dan Camellia adalah tangguh karena memiliki nilai avalanche effect lebih dari 50%. KESIMPULAN

Penelitian ini menghasilkan kesimpulan sebagai berikut : 1. Panjang karakter masukan dan panjang

kunci berbanding lurus terhadap waktu proses enkripsi dan dekripsi kedua algoritma, hal ini karena data yang masuk ke dalam sistem semakin banyak yang akan mempengaruhi waktu proses sistem.

2. Waktu proses enkripsi dan dekripsi pada algoritma AES lebih rendah daripada algoritma Camellia karena algoritma AES memilki struktur cipher dan penjadwalan kunci yang relatif lebih sederhana daripada algoritma Camellia.

3. Berdasarkan hasil pengukuran nilai avalanche effect kedua algoritma maka algoritma Camellia dikatakan lebih tangguh terhadap cryptanalisis.

4. Brute force attack pada kedua algoritma menghasilkan nilai waktu bongkar yang sangat besar, hal ini menyebabkan algoritma dikatakan tahan terhadap cryptanalis.

5. Untuk perancangan sistem yang lebih menekankan terhadap optimasi waktu

Page 9: Algoritma Camellia Dan Aes Pada Blok Cipher

9

proses maka lebih tepat digunakan algoritma kriptografi AES karena memiliki waktu proses yang relatif rendah sementara untuk sistem yang lebih menekankan terhadap daya tahan terhadap cryptanalisis maka lebih tepat digunakan algoritma kriptografi Camellia.

6. Pada perbandingan mode operasi didapatkan mode operasi CBC memiliki nilai waktu proses yang relatif lebih rendah dibandingkan dengan mode yang lain, maka dapat disimpulkan mode operasi ini sesuai untuk digunakan pada sistem embedded dan protokol keamanan jaringan internet.

DAFTAR PUSTAKA

[1] C.A.van Tilborg, Henk. (2002) Fundamentals of Cryptology. Kluwer Academic Publishers.

[2] Chen, Louis H.Y. Sun, Yeneng. (2002). Coding Theory And Cryptology. Word Scientific Publishing.

[3] Daemen, J. Rijmen, V. (2002). a.) “AES Proposal : Rijndael”. www.esat.kuleuven.ac.be/~rizmen

b.) “The Design of Rijndael : AES – The Advanced Encryption Standard”. Springer-Verlag.

[4] Henricksen, Matt. (1995). Cryptanalysis of Modern Symmetric Ciphers. Thesis Degree Doctor of Philosophy, University of Queensland.

[5] Ichikawa, Aoki. Matsui, Kanda. Nakajima, Moriai. Tokita. (2000). Specification of Camellia – A 128–bit Block Cipher. NTT and Mitsubishi Electric Corporation. Japan.

[6] Preneel, Bart. Logachev, Oleg A. (2008). Boolean Function in Cryptology and Information Security. IOS press.

[7] Schineir, Bruce. (1996). Applied Cryptography second edition Protocol Algorithm and Source Code in C. Jhon Wiley & Sons. USA.

[8] Tetsuya, Kazumoro Aoki. Mitsuru, Masuya Kanda.

a.) (2000). A 128-bit Block Cipher Suitable for Multiple Platforms Design and Analysis. Nippon Telegraph and Telephone. Japan.

b.) Specification of Camellia – A 128 bit Block Cipher. Nippon Telegraph and Telephone. Japan.

[9] Yin, Yiqun Lisa. (2000). A Note on the Block Cipher Camellia. NTT Multimedia Communication Laboratories. Japan.