IMPLEMENTASI ALGORITMA BLOCK CIPHER CLEFIA 128 BIT UNTUK PENGAMANAN APLIKASI KOMUNIKASI CHAT Aprita Danang Permana 1, A mas 2 Lembaga Sandi Negara aprita.ang@lemsaneg.go.id, amas@lemsaneg.go.id Abstrak Komunikasi Chat merupakan salah satu media pertukaran informasi antara dua orang atau lebih secara online melalui teknologi internet. Pengguna komunikasi chat diberikan beberapa kemudahan dalam pertukaran pesan yang berupa teks maupun data (file). Dengan kemudahan tersebut, pengguna juga dihadapkan dengan kerawanan dalam komunikasi chat ini, salah satunya yaitu kerawanan akses data modifikasinya. Seluruh percakapan yang dilakukan akan selalu dilewatkan via server untuk dapat menuju ke pihak penerima. Sehingga rawan akan aya akses modifikasi pesan tersebut. Pada penelitian ini, penulis akan melakukan implementasi algoritma kriptografi block cipher Clefia 128 bit untuk dapat melakukan pengamanan pada komunikasi chat yang dilakukan. Kata kunci : kriptografi, block cipher, clefia. 1. Pendahuluan Pada saat sekarang ini, teknologi berkembang dengan pesatnya. Kebutuhan akan peralatan yang dapat mendukungnya juga semakin meningkat. Dengan kondisi seperti ini, sistem pertukaran informasi semakin dipermudah semua orang pun dapat dengan mudah untuk mendapatkan akses terhadap informasi tersebut. Salah satunya penggunaan teknologi chatting, para pengguna dengan mudah melakukan pertukaran informasi dengan pengguna lainnya pada saat kapanpun. Hanya dengan mengirimkan pesan singkat, pertukaran informasi sudah dapat dilakukan dari manapun kapanpun. Namun tidak sedikit pihak yang mengerti akan informasi yang dikomunikasikan dapat dimanfaatkan oleh pihak lain yang tidak berkepentingan ingin mengetahui isi informasi atau bahkan melakukan pengubahan informasi tersebut. Menurut dokumen milik Symantec (Securing Instant Messaging), pada Mei 2002 sekelompok hacker melakukan penyerang terhadap sebuah sistem server instant messaging atau chat dengan cara mendapatkan akses kontrol server tersebut. Data yang dicuri antara lain akun pengguna serta melakukan penghapusan, modifikasi pesan yang tersimpan pada server. Selain itu, pada saat sekarang ini penggunaan komunikasi chat sudah melakukan implementasi keamanan di dalamnya. Sebagai contoh, aplikasi Whatsapp yang telah menggunakan metode end-to-end encryption sebagai fitur pengamanan komunikasi chat baik komunikasi personal maupun grup. Berdasarkan hal tersebut, penulis melakukan penelitian untuk melakukan implementasi algoritma block cipher Clefia 128 bit pada aplikasi komunikasi chat. Diharapkan dengan aya penelitian ini dapat memberikan salah satu solusi untuk metode pengamanan pada komunikasi chat. Selain itu juga bertujuan untuk melakukan pengujian performasi untuk algoritma block cipher Clefia 128 bit. 2. Landasan Teori a. Algoritma Block Cipher Berikut merupakan beberapa definisi mengenai block cipher: Block cipher menurut William Stalling (Stalling. 2005) adalah skema enkripsi/dekripsi yang memperlakukan blok plaintext secara keseluruhan untuk menghasilkan blok ciphertext dengan panjang yang sama. Block cipher menurut Alfred J. Menezes dkk (Menezes dkk. 1997) adalah suatu fungsi yang memetakan n-bit blok plaintext ke n- bit blok ciphertext dengan n adalah panjang blok. Block cipher dapat dipang sebagai sistem sandi substitusi sederhana dengan periode panjang. Fungsi dalam block cipher diparameterkan oleh K, yaitu kunci dengan panjang k-bit dengan mengambil nilai-nilai dari subset K (ruang kunci) dari himpunan semua vektor-vektor k-bit Vk. Umumnya diasumsikan kunci dipilih secara acak. Pengggunaan ukuran blok plaintext ciphertext yang sama bertujuan untuk menghindari penambahan data. A-179
b. Algoritma Clefia 128 Bit (Sony Corp, 2007) CLEFIA merupakan algoritma yang didesain atas dasar efisiensi namun tetap memperhatikan keamanan. Algoritma ini telah ditetapkan sebagai algoritma standar untuk pervasive computing yang memiliki kriteria untuk penerapan pada device yang memiliki sumberdaya terbatas melalui ISO/IEC 29192-2. Algoritma ini berbasis block cipher dengan ukuran 128 bit blok dengan variasi kunci 128, 192 256 bit. CLEFIA menggunakan struktur Feistel yang membagi blok menjadi 4 jalur masing-masing berukuran 32 bit. Jumlah round pada CLEFIA bervariasi tergantung panjang kuncinya, untuk kunci 128 bit memiliki jumlah round 18, kunci 192 bit memiliki jumlah round 22 kunci 256 bit memiliki jumlah round 26. Diagram algoritma CLEFIA dapat dilihat pada gambar 1. Gambar 1. Diagram Algoritma Clefia Fungsi F merupakan komponen utama dalam struktur algoritma CLEFIA yang berbasis Feistel. Didalamnya harus melibatkan operasi atau fungsi nonlinear memiliki sifat difusi yang maksimal. Fungsi F pada CLEFIA terdiri dari 3 komponen operasi yaitu operasi XOR dengan kunci, fungsi nonlinear S-box 8x8 fungsi linear mixing. Fungsi F pada CLEFIA dapat dilihat pada Gambar 2. M1 ini didefinisikan berdasarkan pada polinomial primitive z 8 + z 4 + z 3 + z + 1 dengan menggunakan matriks M0 M1 berukuran 4 x 4 berikut: 3. Metode Penelitian Metode penelitian yang dilakukan pada penelitian ini adalah sebagai berikut : Melakukan studi literatur pengumpulan data dari berbagai sumber seperti buku internet mengenai penelitian yang akan dilakukan. Melakukan analisis kebutuhan dalam implementasi algoritma Clefia untuk Secure Chat. Melakukan proses perancangan aplikasi Secure Chat. Membuat prototype aplikasi Secure Chat menggunakan bahasa pemrograman C++. Melakukan pengujian komunikasi, fungsional fitur performansi pada aplikasi Secure Chat. 4. Pembahasan 4.1. Desain Implementasi Sistem a. Desain Sistem Desain sistem aplikasi Secure Chat yang dilakukan, menitikberatkan kepada permasalahan kerahasian data yang dikomunikasikan. Setiap pengguna yang akan menggunakan aplikasi Secure Chat harus melakukan registrasi otentikasi kepada server chat. Lalu sistem akan melakukan proses enkripsi dekripsi terhadap semua pesan yang akan dikirim maupun diterima. Proses pengiriman pesan chat dilakukan melalui protokol komunikasi TCP Socket. Gambar 3. Desain Aplikasi Secure Chat Gambar 2. Fungsi F pada Algoritma Clefia S0 S1 merupakan fungsi nonlinear S-box 8x8, segkan M0 M1 merupakan fungsi perkalian dengan matriks M0 M1 untuk proses linear mixing. Perkalian matriks M0 A-180 b. Implementasi Sistem Pada tahap implementasi, digunakan bahasa pemrograman C++ (Qt) pada sistem operasi Windows 8. Penggunaan bahasa pemrograman Qt untuk mempermudah dalam proses interfacing sistem komunikasi TCP Socket.
Tahap pertama dalam sistem komunikasi secure chat adalah Login. Pada tahap ini, user akan memasukkan identitasnya serta alamat server yang digunakan. Gambar 4. Tahapan User Login Selanjutnya pada sisi server akan melakukan otentikasi penyimpanan pada sistem server tersebut. Jika sukses, maka server akan mengirimkan pesan bahwa user telah diregistrasi. Gambar 5. Registrasi Sukses Dengan demikian, maka user tersebut sudah siap untuk melakukan komunikasi Secure Chat. Pesan yang dikirim bersifat broadcast kepada seluruh user yang telah diregistrasi oleh server. Gambar 6. Proses Komunikasi Chat Pesan yang dikomunikasikan secara otomatis akan dilakukan enkripsi/dekripsi oleh Secure Chat client. Segkan pada sisi server akan mendapatkan pesan terenkripsi sebagai berikut : A-181 Gambar 7. Pesan Terenkripsi pada Server 4.2. Pengujian Analisis Sistem Pada tahap pengujian dilakukan beberapa langkah yaitu pengujian komunikasi pengujian performansi. Pengujian komunikasi melakukan pengujian pada komunikasi pesan pendek, seg, panjang. Segkan untuk pengujian performansi melakukan pengujian kecepatan proses enkripsi/dekripsi pada pesan pendek, seg panjang. a. Pengujian Komunikasi Pada pengujian komunikasi dilakukan pengujian sebanyak 3 kali untuk setiap parameter. Berikut hasil pengujiannya : Tabel 1. Hasil Pengujian Komunikasi Pesan asli Pesan pendek Hello Selamat Pagi Apa kabar? Pesan Seg Algoritma Block Cipher Clefia 128 Bit Seminar Nasional Teknologi Informasi Aplikasinya Komunikasi ini telah dilakukan Pesan terenkripsi "òp¹\\ \u008 5\u0088P\u0 092\u001Cú\ " '3" " \u008d 1 #1\u001FëÉ\ u0007ð\b½\ u0006üm" "\"D>- [ö³\u0099^\f\ u009c¾ç+\ u008f\u001 4" "ÑÊ\b Á}\u0010ð; ¼\u009A\u007Fñ\u 001Eú\b\u0081Nén õcçax\u0082%?a æuu]þ\u001e\")à{ ôä.\u0019j\u0090\ u00ad\u0098ò" "\u0099q#\u0097ø \u0086\u0096\u0 099öîê ÏPê\u000F W\u0093ÔÈsKÑ\u 0092ð~2\u00861a D \u0019îãä\u0016 \u0083«ýîb\u0081 Î\u0093 n¹$\u008b NúhÚÎÈú¹JëmÚ" "G7'z!aXòè\tl\u008 FîIR\u0014?s\u009 6 `\u0010¼à{î ë!. Dekripsi
pengamanan pesannya Pesan Panjang Tema: Memperkok oh posisi Indonesia dalam era Masyarakat Ekonomi ASEAN (MEA) melalui pengembang an energi alternatif pemanfaatan teknologi Pada penelitian ini penulis akan membuat desain protokol kriptografi mengimple mentasikann ya pada aplikasi Secure Chat Setiap user harus membuktika n keaslian identitasnya pada saat awal komunikasi xgñ\u0005ëui%î\ r¼w y(º\t TEíðÂF\ u0014ª Õ(\u0002\u 001F\tÇ<" "\u009f³à àofwcé \u008b\u0004u\u008 C3Õ\u009BXF¾Ñ Iç ÞbâÝ\u0084ð\u000 EÓ ± â\u001b\u0085 ù\u0081\u009e\u009 7ÊFÜÎ\u0012\u0091 ÃÌãàÎ\u0083\u0084Ö Å\u0094là7\u0003è\u 0016\u0081~X\räzÖ = \u009d0!^\u009 5ÒÀ\u001Aû,\u0091 \u008f\u0010\u0087 U\u000F2Ï'Ò2\u009D ¼Ä^Ì\u0011ê±\r³\u00 0B»ôT\u001Aý\"*Ù\ u0099öäö\\ä5<\u000 5ø\u0098Y\u0081\u0 08D;ú\u0014\u008Eâ PÇP\u001F7xEr" "t7 U#\u0015Ä \u000 3=\u0098Ñb\u0011«à ÄÄúN}PVÎ\u0089ñl ì\u009e\u0005`ú8\u0 087\u0011½\fGfÇ A¹ ~ p«\u001b\u0001@ - \u001fjó\u0091/bäã Ê\u0099&Þ \b\u0081 {Ã#\u001AoéÓç \u 0080u\u0096\u0080~ 9ýc\u0095Ô½HÎ\u00 8CcûYÑ\u0016\u008 FJ _)\u0015±m.\u00 9E5½ 8lN9%\u0085) x íý\u001f\u001f{â ObQ\u0005" "ó\u001dúcçøü \u0 01A iéâæþ\u001fsÿ ÒA^Ôk.nïÂßl\"\fÆ,v }î&(êoh}sgö ny\u0 09A\u0080\u0010)\u 0015ÂiW\u0086A7\u 0019ß\u000FP6K_Õ\ u008b\\c õ² r\u0098 [}Ï\u0002" b. Pengujian Performansi Pada pengujian performansi dilakukan pengujian menggunakan pesan pendek, seg panjang yang telah ditentukan sebelumnya dengan masingmasing pesan diuji sebanyak 10 kali. Tabel 2. Hasil Pengujian Performansi Pesan asli Rata-rata (ms) Hello 0.017581 Selamat Pagi 0.017983 Apa kabar? 0.01776 Algoritma Block Cipher Clefia 0.048595 128 Bit Seminar Nasional Teknologi 0.063143 Informasi Aplikasinya Komunikasi ini telah dilakukan 0.066579 pengamanan pesannya Tema: Memperkokoh posisi 0.143334 Indonesia dalam era Masyarakat Ekonomi ASEAN (MEA) melalui pengembangan energi alternatif pemanfaatan teknologi Pada penelitian ini penulis 0.121736 akan membuat desain protokol kriptografi mengimplementasikannya pada aplikasi Secure Chat Setiap user harus membuktikan 0.081528 keaslian identitasnya pada saat awal komunikasi c. Analisis Hasil Pengujian Berdasarkan hasil pengujian komunikasi, semua pesan baik pesan pendek, seg panjang dapat dilakukan proses enkripsi dekripsi dengan baik. Setiap pesan yang dikirimkan dapat dibaca oleh semua user yang telah diregistrasi oleh server. Untuk pesan pendek akan menghasilkan 16 byte karakter segkan pesan seg panjang akan berukuran kelipatannya, dikarenakan algoritma Clefia mengubah pesan ke dalam pesan terenkripsi dengan panjang 16 byte atau kelipatannya. Segkan pada pengujian performansi, didapatkan bahwa panjang pesan yang berkisar antara 16 s.d 32 bit (pesan pendek) akan membutuhkan waktu 0.01 ms s.d 0.02 ms, pesan seg (64 s.d 128 bit) membutuhkan waktu 0.04 ms s.d 0.08 ms, lalu untuk pesan panjang (> 128 bit) akan membutuhkan waktu > 0.1 ms. 5. Kesimpulan 1) CLEFIA merupakan algoritma yang didesain atas dasar efisiensi namun tetap memperhatikan keamanan. 2) Implementasi algoritma Clefia pada komunikasi chat dapat meningkatkan level keamanan pesan. A-182
3) Berdasarkan hasil pengujian yang telah dilakukan, implementasi algoritma clefia pada komunikasi chat dapat melakukan fungsi enkripsi dekripsi dengan baik, serta proses enkripsi dekripsi pesan efisien. Daftar Pustaka: Symantec. 2002. Securing Instant Messaging. Symantec Enterprise Security. Bruce Schneier. 2009. Applied Cryptography, Second Edition. John Wliey & Sons Inc Menezes, J. Alfred et al. 1996. Handbook ofapplied Cryptography. Sony Corporation. 2007. The 128-bit Blockcipher CLEFIA. Japan A-183