Prosiding SENTIA 2016 – Politeknik Negeri Malang
Volume 8 – ISSN: 2085-2347
IMPLEMENTASI ALGORITMA BLOCK CIPHER CLEFIA 128 BIT UNTUK PENGAMANAN APLIKASI KOMUNIKASI CHAT Aprita Danang Permana1, A’mas2 Lembaga Sandi Negara
[email protected],
[email protected]
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 dan modifikasinya. Seluruh percakapan yang dilakukan akan selalu dilewatkan via server untuk dapat menuju ke pihak penerima. Sehingga rawan akan adanya akses dan 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 dan 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 dan 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.
A-179
Berdasarkan hal tersebut, penulis melakukan penelitian untuk melakukan implementasi algoritma block cipher Clefia 128 bit pada aplikasi komunikasi chat. Diharapkan dengan adanya 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 nbit blok ciphertext dengan n adalah panjang blok. Block cipher dapat dipandang 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 dan ciphertext yang sama bertujuan untuk menghindari penambahan data.
Prosiding SENTIA 2016 – Politeknik Negeri Malang
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 dan 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 dan 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 dan memiliki sifat difusi yang maksimal. Fungsi F pada CLEFIA terdiri dari 3 komponen operasi yaitu operasi XOR dengan kunci, fungsi nonlinear S-box 8x8 dan fungsi linear mixing. Fungsi F pada CLEFIA dapat dilihat pada Gambar 2.
Volume 8 – ISSN: 2085-2347
M1 ini didefinisikan berdasarkan pada polinomial primitive z 8 + z 4 + z 3 + z + 1 dengan menggunakan matriks M0 dan M1 berukuran 4 x 4 berikut:
3. Metode Penelitian Metode penelitian yang dilakukan pada penelitian ini adalah sebagai berikut : Melakukan studi literatur dan pengumpulan data dari berbagai sumber seperti buku dan 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 dan performansi pada aplikasi Secure Chat. 4. Pembahasan 4.1. Desain dan 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 dan otentikasi kepada server chat. Lalu sistem akan melakukan proses enkripsi dan 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 b. Gambar 2. Fungsi F pada Algoritma Clefia S0 dan S1 merupakan fungsi nonlinear S-box 8x8, sedangkan M0 dan M1 merupakan fungsi perkalian dengan matriks M0 dan M1 untuk proses linear mixing. Perkalian matriks M0 dan
A-180
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 dan komunikasi TCP Socket.
Prosiding SENTIA 2016 – Politeknik Negeri Malang
Volume 8 – ISSN: 2085-2347
Tahap pertama dalam sistem komunikasi secure chat adalah Login. Pada tahap ini, user akan memasukkan identitasnya serta alamat server yang digunakan.
Gambar 7. Pesan Terenkripsi pada Server
Gambar 4. Tahapan User Login Selanjutnya pada sisi server akan melakukan otentikasi dan 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. Sedangkan pada sisi server akan mendapatkan pesan terenkripsi sebagai berikut :
A-181
4.2. Pengujian dan Analisis Sistem Pada tahap pengujian dilakukan beberapa langkah yaitu pengujian komunikasi dan pengujian performansi. Pengujian komunikasi melakukan pengujian pada komunikasi pesan pendek, sedang, dan panjang. Sedangkan untuk pengujian performansi melakukan pengujian kecepatan proses enkripsi/dekripsi pada pesan pendek, sedang dan 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 Dekripsi terenkripsi Pesan pendek “Hello” "òp¹\\´\u008 Berhasil 5\u0088P\u0 092\u001Cú\ "®'3" “Selamat Pagi” "®\u008D¶1 Berhasil #1\u001FëÉ\ u0007Ð\b½\ u0006Üm" “Apa kabar?” "\"D>Berhasil [ö³\u0099^\f\ u009C¾Ç+\ u008F\u001 4" Pesan Sedang “Algoritma "ÑÊ\b¤Á}\u0010ð; Berhasil Block Cipher ¼\u009A\u007Fñ\u Clefia 128 Bit” 001Eú\b\u0081Nén õCÇaX\u0082%?a æUU]Þ\u001E\")à{ ôÄ.\u0019j\u0090\ u00AD\u0098ò" “Seminar "\u0099Q#\u0097ø Berhasil Nasional ®\u0086\u0096\u0 Teknologi 099öîê¸ÏPê\u000F Informasi dan W\u0093ÔÈsKÑ\u Aplikasinya” 0092ð~2\u00861a¢ D°\u0019Îãä\u0016 \u0083«ÝîB\u0081 Î\u0093¥n¹$\u008B NúhÚÎÈú¹JëmÚ" “Komunikasi "G7'z!aXòè\tl\u008 Berhasil ini telah FîIR\u0014?s\u009 dilakukan 6¨`\u0010¼À{ίë!.
Prosiding SENTIA 2016 – Politeknik Negeri Malang
pengamanan pesannya”
Pesan Panjang “Tema: Memperkok oh posisi Indonesia dalam era Masyarakat Ekonomi ASEAN (MEA) melalui pengembang an energi alternatif dan pemanfaatan teknologi”
“Pada penelitian ini penulis akan membuat desain protokol kriptografi dan mengimple mentasikann ya pada aplikasi Secure Chat” “Setiap user harus membuktika n keaslian identitasnya pada saat awal komunikasi”
b.
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"
Volume 8 – ISSN: 2085-2347
Tabel 2. Hasil Pengujian Performansi
Pesan asli
Berhasil
“Hello” “Selamat Pagi” “Apa kabar?” “Algoritma Block Cipher Clefia 128 Bit” “Seminar Nasional Teknologi Informasi dan Aplikasinya” “Komunikasi ini telah dilakukan pengamanan pesannya” “Tema: Memperkokoh posisi Indonesia dalam era Masyarakat Ekonomi ASEAN (MEA) melalui pengembangan energi alternatif dan pemanfaatan teknologi” “Pada penelitian ini penulis akan membuat desain protokol kriptografi dan mengimplementasikannya pada aplikasi Secure Chat” “Setiap user harus membuktikan keaslian identitasnya pada saat awal komunikasi”
Berhasil
c.
Berhasil
Pengujian Performansi Pada pengujian performansi dilakukan pengujian menggunakan pesan pendek, sedang dan panjang yang telah ditentukan sebelumnya dengan masingmasing pesan diuji sebanyak 10 kali.
Rata-rata (ms) 0.017581 0.017983 0.01776 0.048595 0.063143 0.066579 0.143334
0.121736
0.081528
Analisis Hasil Pengujian
Berdasarkan hasil pengujian komunikasi, semua pesan baik pesan pendek, sedang dan panjang dapat dilakukan proses enkripsi dan 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 sedangkan pesan sedang dan panjang akan berukuran kelipatannya, dikarenakan algoritma Clefia mengubah pesan ke dalam pesan terenkripsi dengan panjang 16 byte atau kelipatannya. Sedangkan 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 sedang (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.
A-182
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.
Prosiding SENTIA 2016 – Politeknik Negeri Malang
3) Berdasarkan hasil pengujian yang telah dilakukan, implementasi algoritma clefia pada komunikasi chat dapat melakukan fungsi enkripsi dan dekripsi dengan baik, serta proses enkripsi dan 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
Volume 8 – ISSN: 2085-2347