Prosiding Seminar Matematika, Sains dan TI, FMIPA UNSRAT, 14 Juni 213.99 PERANCANGAN KRIPTOGRAFI KUNCI SIMETRIS MENGGUNAKAN FUNGSI BESSEL DAN FUNGSI LEGENDRE Fhelesia E. Gomies 1), Alz Danny Wowor 2) 1) Mahasiswa Jurusan Teknologi Informatika, FTI, UKSW, 6728177@student.uksw.edu 2) Jurusan Teknik Informatika, FTI, UKSW, alzdanny.wr@gmail.com Abstrak Keamananan informasi tidak lepas dari kriptografi. Tetapi saat ini, banyak kriptografi yang dapat dikriptanalisis. Penelitian ini, merancang sebuah kriptografi kunci simetris menggunakan fungsi Bessel dan fungsi Legendre. Hasil dari perancangan kriptografi ini, dapat menambah sebuah kriptografi yang kemudian dapat digunakan sebagai pengamanan informasi. Kata Kunci: Fungsi Bessel, Fungsi Legendre, Kriptografi, Kriptanalisis, Kunci Simetris. 1. Pendahuluan Kemajuan software dan hardware pada teknologi komputer, mendukung kemajuan kriptografi. Pada sisi lain juga menyokong kemajuan kriptanalisis. Lihat saja kriptografi Rijndael sebagai pemenang kontes Advanced Encryption Standard (AES) yang dibuat oleh NIST (National Institute of Standards and Technology) di Amerika Serikat dangan lama proses seleksi salama lima tahun. Tetapi kemudian dapat ditunjukan kelemahannya oleh Elad Barkan dan Eli Biham pada tahun 22 [1]. Setelah itu, kembali lagi Eli Biham dan Nathan Kilier dari Technion University Israel, berhasil menujukkan kriptanalisis untuk Rijndael [2]. Kemajuan ini menjadi contoh bahwa sebuah kriptografi yang canggih pun berpeluang untuk dapat dibobol sangat besar. Sehingga, secara berkesinambungan diperlukan adanya modifikasi terhadap teknik kriptografi yang sudah ada ataupun diperlukan adanya penciptaan teknik-teknik kriptografi baru yang semakin kompleks sehingga mempersulit kriptanalisis untuk memecahkannya. Kriptografi yang dibuat selama ini, menggunakan kunci simetris maupun asimetris biasanya memakai kunci bilangan bulat atau hasil konversi bilangan bulat ke bit. Bilangan pecahan desimal merupakan rasionalitas dari bilangan pecahan yang kadang masih mempunyai sisa pembagian. Hal ini yang membuat para kriptografer tidak mau mengguankannya sebagai kunci, karena hasil perhitungannya menjadi tidak mengahasilkan sebuah bilangan bulat. Banyak fungsi-fungsi khusus matematika yang dapat menghasilkan bilangan pecahan desima, seperti fungsi Bessel dan fungsi Legendre. Oleh karena itu, dalam penenlitian ini dilakukan perancangan sebuah kriptografi kunci simetris menggunakan kunci dengan bilangan pecahan desimal yaitu fungsi Bessel dan fungsi Legendre untuk proses enkripsi-dekripsi suatu data. Harapan penenelitian ini, kiranya dapat menambah perbendaharaan teknik kriptografi dengan kunci simetris. 2. Kajian Pustaka Fungsi Bassel Perancangan ini digunakan adalah fungsi Beseel jenis pertama orde ke-n. Secara umum diberikan sebagai berikut [3]. untuk setiap n. J n (x) = x n ( 1)m x 2m 2 2m+n m! (n + m)! m= Fungsi Legendre Polinomial Legendre derajat-n dinotasikan sebagai P n (x) yang secara umum diberikan sebagai berikut [3]. M (2n P n (x) = ( 1) m 2m)! 2 n m! (n m)! (n 2m)! xn 2m m= dimana M = n/2 atau (n 1)/2 adalah bilangan bulat. (1) (2) 99
Prosiding Seminar Matematika, Sains dan TI, FMIPA UNSRAT, 14 Juni 213.1 Convert Between Base Defenisi [5]. Konversi dari urutan bilangan (list digit) l dalam basis ke basis. Secara umum dinotasikan, Konv (l, base ) dengan jumlahan urutan bilangan (jumlahan l) mengikuti aturan, nops (l) k=1 I k α k 1 dimana nops (l) adalah nilai terakhir dari urutan bilangan l. I k α dan l adalah bilangan positif. Nilai yang diperoleh merupakan kumpulan urutan bilangan dalam basis. 3. Perancangan Kriptografi Bagian ini menjelaskan proses enkripsi dan dekripsi dari perancangan kriptografi kunci simetri. Proses Enkripsi Secara umum proses enkripsi ditunjukkan pada Gambar 1, dibawah ini. Gambar 1. Skema Diagram Enkripsi Berikut berturut-turtut dari bagian (a) sampai (e), adalah langkah-langkah secara garis besar dalam proses enkripsi: a) Plainteks (P tx ) dikonversi ke dalam kode ASCII, misalnya C 1 = {x 1, x 2,, x n }. (3) b) Diambil f(x) = ax + b sebagai FUNGSI. Salanjutnya mengecek f(x) mempunyai invers, maka fungsi tersebut dapat digunakan. Dimisalkan hasil subtitusi (C 1 ) yang kedalam fungsi, diperoleh C 2 = {y 1, y 2,, y n }. (4) c) Hasil dari Persamaan (4) diambil sebagai (l) yang akan dilakukan proses Convert Beetwen Base tahap 1, dinotasikan (CBB 1). Dimana KunciTop dan KunciLegendere sebagai kunci, diperoleh C 3 = {z 1, z 2,, z m }. (5) d) Konversi yang diperoleh dari C 3, selanjutnya juga dilakukan konversi tahap 2 (CBB 2), dengan slot dan KunciBassel diperoleh C 4 = {r 1, r 2,, r p }. (6) e) Bilangan-bilangan di C 4 dibuat dalam bilagana bit (binary digit), sehingga diperoleh cipherteks. C tx = { } (7) Pada Gambar 1, terdapat beberapa operasi yang perlu ditunjukan proses kerjanya, seperti proses FUNGSI, KunciTop, KunciLegendre, Slot, dan KunciBassel. Oleh karena itu berikut akan diberikan dalam bentuk flowchart. 1
Prosiding Seminar Matematika, Sains dan TI, FMIPA UNSRAT, 14 Juni 213.11 Gambar 2. Flowchart untuk FUNGSI Sedangkan flowchart untuk menentukan KunciTop dan KunciLegendre diberikan pada Gambar 3 dan Gambar 4. Gambar 3. Flowchart KunciTop Gambar 4. Flowchart KunciLegendre Secara berturut-turut diberikan flowchart untuk menentukan KunciBessel dan slot ditunjukkan pada Gambar 5 dan Gambar 6. Gambar 5. Flowchart KunciBessel Gambar 6. Flowchart Slot Proses Dekripsi Prorses dekripsi dalam perancangan kriptografi ini ditunjukan pada Gambar 6. Gambar 7 Diagram Proses Dekripsi Berikut berturut-turtut dari bagian (f) sampai (j), adalah langkah-langkah secara garis besar dalam proses enkripsi: f) Cipherteks (C tx ) dikonversi balik, akan membentuk urutan bilangan P 1 = {r 1, r 2,, r k }. (8) 11
Prosiding Seminar Matematika, Sains dan TI, FMIPA UNSRAT, 14 Juni 213.12 g) Hasil dari P 1, kemudian dilakukan proses CBB 2, dengan slot dan KunciBassel P 2 = {z 1, z 2,, z m }. (9) h) Persamaan (9) diambil sebagai (l) yang akan dilakukan proses CBB 1. Dimana KunciTop dan KunciLegendere sebagai kunci, diperoleh P 3 = {y 1, y 2,, y n }. (1) i) Invers fungsi dari FUNGSI dimisalkan f 1 (x), kemudian hasil dari P 3 disubtitusikan kedalam f 1 (x), diperoleh P 4 = {x 1, x 2,, x n }. (11) j) Bilangan yang diperoleh dari P 4 diekuivalensi dengan ASCII maka diperoleh plainteks, yang dinotasikan P tx = { } (12) 4. Pengujian dan Pembahasan Pengujaian Kriptografi Sebagai kriptografi simetris, maka dapat melakukan proses enkripsi dan juga dekripsi, oleh sebab itu akan ditunjukkan rancangan kriptografi melakukan proses tersebut. Proses ini dilakukan sesuai dengan skema kriptografi pada Gambar 1. Plainteks yang digunakan UKSW Dengan mengikuti Persamaan (3), sehingga plainteksnya dikonversi kedalam ASCCI diperoleh C 1 = {85, 75, 83, 87} (13) Selanjutnya hasil dari Persamaan (13) disubtitusikan ke dalam FUNGSI f(x) = 2x 5, (sesuai dengan Pers. (4)) diperoleh C 2 = {165, 145, 161, 169} (14) Dari Pers. (5), dengan mengambil l = C 2, KunciLegendre = 129861817, dan KunciTop = 646 hasil pada C2 diperoleh C 3 = {22, 59, 236, 398, 19, 555, 278, 12, 181, 156, 29} (15) Dengan mengikuti aturan pada Persamaan (6), dipilih o slot = 17 31 =139288917338851144614181748946772433. o KunciBesel = 649838748. Sehingga diperoleh C 4 = {742627722618345155325675965497648, 7262656212751268664559379291167114, 27319618194732181432} (16) Hasil dari Persamaan (16), dilakukan proses pada Persamaan (7) diperoleh C tx = {,, } (17) Sehingga diperoleh cipherteks adalah,, Selanjutnya akan dilkukan proses dekripsi. Karena dirancang kriptografi simetris maka kunci yang digunakan adalah sama. Berikut ditunjukkan proses dekripsi. Dengan mengikuti aturan (f) pada Persamaan (8), sehingga diperoleh P 1 = {742627722618345155325675965497648, 7262656212751268664559379291167114, 27319618194732181432} (18) KunciBessel dan Slot digunakan sebagai basis untuk proses CBB 2 dengan mengambil l = P 4 sebagai urutan bilangan, sehingga diperoleh P 2 = {22, 59, 236, 398, 19, 555, 278, 12, 181, 156, 29} (19) Mengacu pada aturan (h), maka hasil dari Persmaan (15) dilakukan proses CBB 1 diperoleh 12
Prosiding Seminar Matematika, Sains dan TI, FMIPA UNSRAT, 14 Juni 213.13 P 3 = {165, 145, 161, 169} (2) Hasil dari Persamaan (2), disubtitusikan kedalam persamaan f(x) = (x + 5)/2, maka hasilnya adalah P 3 = {85, 75, 83, 87} (21) Tahapan akhir adalah mengekuivalensi Persamaan (21) kedalam kode ASCII diperoleh kembali plainteks UKSW. Secara keseluruhan perancangan ini dapat melakukan proses proses enkripsi-dekripsi dengan menggunakan kunci yang sama (simetris), sehingga terbukti menjadi sebuah kriptografi simetris. Uji Sistem Kriptografi Stinson [5], menyatakan bahawa sebuah kriptografi harus memenuhi 5 tuple P, C, K, E, D. Oleh karena itu akan ditunjukkan perancangan ini memenuhi kelima kondisi tersebut. P adalah himpunan berhingga dari plainteks. Rancangan kriptografi ini menggunakan plainteks berupa karakter yang ekuivalen dengna ASCII. Maka dari itu jelas bahwa plainteks adalah himpunan berhingga. C adalah himpunan berhingga dari chiperteks. Chiperteks dihasilkan dalam elemen bit binner (bilangan dan 1). Karena himpunan chiperteks hanya {,1}, maka chiperteks kunci simetris menggunakan fungsi Bessel dan fungsi Legendre adalah himpunan berhingga [6]. K merupakan ruang kunci (Keyspace), adalah himpunan berhingga dari kunci. Penggunaan kunci KunciBessel dan KunciLegendre adalah fungsi dan kunci tambahan lain seperti Slot dan KunciTop juga berupa fungsi. Maka dari itu kunci yang digunakan juga himpunan berhingga. Untuk setiap k K, terdapat aturan enkripsi e k E dan berkorespodensi dengan aturan dekripsi d k D. Setiap e k : P C dan d k : C P adalah fungsi sedemikian hingga d k (e k (x)) = x untuk setiap plainteks x P. Kondisi ke-4 ini secara menyeluruh, terdapat kunci yang dapat melakukan proses enkripsi sehingga merubah plainteks menjadi cipherteks. Dan dapat melakukan proses dekripsi yang merubah cipherteks ke plainteks. Dari penjelasan di atas, terbukti bahwa rancangan kriptografi menggunakan fungsi Bessel dan fungsi Lengendre memenuhi sistem sbuah kriptografi. Peran Fungsi Legendre dan Fungsi Bessel Penggunaan kedua fungsi ini sebagai kunci dalam perancangan kriptografi ini, karena hasil dari fungsi Bessel dan Legendre berupa bilangan pecahan desimal. Bilangan pecahan desimal memiliki keunikan tersendiri karena mempunyai pada sisa pembagian. Hal ini yang membuat sampai saat ini tidak ada teknik kriptografi yang menggunakannya sebagai kunci. Keunikan ini yang dipilih sehingga harapannya akan mempersulit kriptanalisis dengan teknik untuk menebak kunci dan tentu juga memecahkannya. Peran KunciTop dalam Rancangan Kriptografi KunciTop merupakan kunci yang masukan berupa karakter, perancangan ini dapat memberikan kebebasan bagi user untuk memilih kunci yang akan digunakan. Karakter KunciTop dapat berupa abjat, angka, dan simbol. 13
Memori (M) Waktu (s) Memori (M) Waktu (s) Prosiding Seminar Matematika, Sains dan TI, FMIPA UNSRAT, 14 Juni 213.14 3.5.25 3 2.5 2.2.15 1.5 1.5.1.5 1 2 3 Karakter Kunci Abjat Angka Simbol 1 2 3 Karakter Kunci Abjat Angka Simbol Gambar 8 Banyak Karakter KunciTop (abjat, angka, simbol) vs Memori, Gambar 9 Banyak Karakter KunciTop (abjat, angka, simbol) vs Waktu. Gambar 7 maupun Gambar 8, menunjukkan perbandingan karakter inputan terhadap kebutuhan memori dan waktu. Hasil yang diperoleh, pengguanaan karakter simbol nampak lebih memerlukan ruang memori dan waktu yang lebih banyak dibandingkan dengan kerakter abjat dan angka. Peran Slot dalam Rancangan Kriptografi Kriptografi ini, dirancang agar plainteksnya berupa bit dan elemen bit yang dihasilkan relatif sedikit. Slot memainkan peran yang besar dalam menentukan banyaknnya cipherteks. No Tabel 1 Slot vs Cipherteks Karakter Plainteks Slot Banyak Cipherteks 1 72 17 17 19 2 72 17 32 58 3 72 17 51 37 4 72 17 151 13 5 72 17 2513 1 Dari Tabel 1, menujukkan bahwa semakin besar Slot digunakan sebagai kunci akan membuat karakter cipherteks semakin kecil. Relasi ini membuat kriptanalisis sulit untuk melihat hubungan antara plainteks dan cipherteks. Pengujian Banyak Plainteks Terhadap Waktu dan Memory Setelah aplikasi selesai dibuat, dilakukan pengujian banyak pesan terhadap waktu dan memory yang dibutuhkan. 8 7 6 5 4 3 2 1 68 68 27.4 27.4 15 4 4 2 4 6 8 1 Karakter Plainteks 4.5 4 3.5 3 2.5 2 1.5 1.5 4 4.1 1.6 1.1.62.1.2 2 4 6 8 1 Karakter Plainteks Gambar 1 Banyak Karakter Plainteks vs Memori Gambar 11 Banyak Karakter Plainteks vs Waktu 14
Prosiding Seminar Matematika, Sains dan TI, FMIPA UNSRAT, 14 Juni 213.15 Hasil pada Gambar 1 dan Gambar 11, menujukkan hubungan antara banyak karakter kunci dengan kebutuhan memori dan waktu berkorelasi positif. Hal ini dapat dilihat dari semakin besar karakter plainteks akan mebutuhkan waktu yang dan ruang memori yang besar juga. 5. Simpulan Perancangan kriptografi dengan menggunakan fungsi Bessel dan fungsi Legendre berhasil menjadi sebuah teknik kriptografi simetris, dan dapat dikategorikan sebagai kriptografi modern karena menghasilkan cipherteks dalam elemen bit. Kriptografi ini dapat menjadi alternatif dimana banyak kriptografi yang telah ada kriptanalisisnya. Daftar Pustaka [1] Barkan, E., & Biham, E., 22, In How Many Ways Can You Write Rijndael?, Advances in Cryptology, procigings of Asiacryp 22, Lectture Notes in Computer Science 251, Springer- Verlag, pp. 16-175. (http://link.springer.com/chapter/1.17/3-54-36178-2_1) [2] Biham, E., & Kilier, N., 24, Cryptanalysis of Reduced Variants of Rijndael, Haifa: Computer Science Department, Technion Israel Institute of Technology. (http://madchat.fr/crypto/codebreakers/35-ebiham.pdf ) [3] Kreyzig, E., 1998, Advanced Engineering Mathematics, Sixth Edition, New York: John Wiley & Sons. [4] Maplesoft, 21, Convert/Base: Convert Between Base, Maple-14, Waterloo: Waterloo Maple Inc. [5] Stinson, D. R., 1995, Cryptography Theory and Practice, Florida: CRC Press, Inc. [6] Wowor, A. D., 211, Modifikasi Teknik Kriptografi Hill Cipher Menggunakan Fungsi Rasional dan Konversi Basis Bilangan pada Proses Enkripsi-Dekripsi, Tesis Magister Sistem Informasi, Salatiga: FTI UKSW. 15