1.
Pendahuluan
Robert Morris lahir di Boston pada tanggal 25 Juli 1932, Robert adalah seorang ahli kriptografi yang membantu mengembangkan sistem operasi komputer paling aman dan Robert seorang kontributor utama dalam kedua fungsi numerik dari sistem operasi dan kemampuan keamanan termasuk sistem password dan sistem enkripsi yang bekerja pada kelompok riset Unix di Bell Laboratories. Minat Robert pada keamanan komputer diperdalam pada akhir 1970 saat ia terus mengeksplorasi kriptografi, studi dan praktek menlindungi informasi dengan mengubahnya menjadi kode[1]. Tujuan dari kriptografi itu sendiri untuk menyelesaikan masalah keamanan, kerahasiaan, keaslian dan integritas data sehingga digunakan untuk menjaga informasi dari pihak yang tidak memiliki otoritas atau hak akses. Dapat dikatakan kriptografi apabila telah memenuhi five tuple (P, C, K, E, D) menurut Stinson dimana P merupakan himpunan berhingga dari plainteks, C merupakan himpunan berhingga dari cipherteks, K merupakan ruang kunci, E dan D merupakan enkripsi dan dekripsi[2]. Dalam Perancangan ini menggunakan fungsi hiperbolik, fungsi hiperbolik adalah salah satu hasil kombinasi dari fungsi-fungsi eksponen atau fungsi yang mempunyai analogi dengan fungsi trigonometri diantaranya disebut sinus hiperbolik, cosin hiperbolik, tangen hiperbolik, cotangen hiperbolik, secan hiperbolik, dan cosecan hiperbolik[3]. Dengan latar belakang tersebut, maka dirancang sebuah kriptografi simetris yang memenuhi five tuple (P, C, K, E, D), yang dalam perancangan ini menggunakan fungsi hiperbolik (arcsinh, arccosh, dan tanh) sebagai pembangkit kunci, fungsi linear sebagai putaran dan 3 putaran yang setiap putarannya terdapat 3 proses yang setiap proses tersebut terdapat kunci-kunci pembangkit. Sehingga perancangan ini menghasilkan Cipherteks dalam bentuk bit biner sehingga melibatkan proses konversi basis bilangan. 2.
Tinjauan Pustaka
Penelitian dengan topik “Perancangan Kriptografi Menggunakan Akar Kubik Fungsi Linear dan Fungsi ChebyshevOrde Dua” dibahas tentang perancangan kriptografi baru dengan menggunakan akar kubik fungsi linear dan fungsi Chebyshev orde dua sebagai pembangkit kunci. Proses enkripsi dekripsi dilakukan dengan 5 putaran dengan memasukkan hasil kunci yang dibangkitkan pada fungsi linear dan invers fungsi linear pada setiap proses. Hasil kunci yang dibangkitkan juga digunakan untuk proses CBB (Convert Between Base) yang menghasilkan cipherteks berbentuk deretan bilangan biner[4]. Kemudian pada penelitian dengan judul “Implementasi Fungsi Polinomial Orde-5 dan Fungsi Arctan dalam Perancangan Kriptografi Simetris” yang bertujuan untuk keamanan data terutama pada karakter teks. Dimana perancangan ini terdapat 3 putaran yang setiap putarannya terdapat 3 proses dengan menggunakan fungsi Arctan dan fungsi polinomial orde-5 sebagai kunci dalam proses enkripsi dan dekripsi. Hasil dari perancangan ini berupa cipherteks dalam elemen bit[5].
9
Penelitian-penelitian tersebut menjadi acuan dalam membentuk ide untuk merancang kriptografi simetris dengan menggunakan fungsi hiperbolik berupa arcsinh, arcosh, dan tanh sebagai kunci pembangkit. Perbedaan pada penelitian terdahulu terdapat pada proses enkripsi dan dekripsi, yang menggunakan tiga putaran dan setiap putaran akan dibangkitkan kunci-kunci baru hasil dari pembangkitan kunci sebelumnya. Selain itu pada setiap putaran fungsi linear yang digunakan berbeda karena nilai konstanta didapatkan dari kunci pembangkit yang dihitung dengan formula matematika (kali, bagi, tambah, dan kurang) dengan nilai tertentu. Pemilihan pada fungsi hiperbolik sebagai kunci karena fungsi tersebut merupakan fungsi transenden. Dimana dalam bentuk linear telah dipecahkan dengan kriptanalis brute-force attack sehingga fungsi yang digunakan yaitu fungsi hiperbolik, dimana fungsi hiperbolik termasuk ke dalam fungsi transenden yang memiliki bentuk non-linear dengan ini fungsi yang digunakan dapat mempersulit kriptanalis untuk memecahkan. Kriptografi (cryptography) berasal dari bahasa Yunani : “cryptos” artinya “secret writing” (tulisan rahasia). Definisi yang dipakai di dalam buku-buku yang lama (sebelum tahun 1980-an) menyatakan bahwa kriptografi adalah ilmu dan seni untuk menjaga kerahasiaan pesan dengan menyandikannya ke dalam bentuk yang tidak dapat dimengerti maknanya. Kriptografi bertujuan untuk menjaga kerahasiaan informasi atau data supaya tidak dapat diketahui oleh pihak yang tidak berwenangnamun saat ini kriptografi lebih dari sekedar privacy, tetapi juga untuk tujuan data integrity, authentication, dan non-repufiation[6]. Berdasarkan kunci yang dipakai, algoritma kriptografi dapat dibedakan atas dua jenis yaitu algoritma simetrik (symmetric) dan asimetrik (asymmetric). Kriptografi kunci simetris disebut juga kunci rahasia yang menggunakan satu kunci untuk proses enkripsi dan dekripsi. Sedangkan kriptografi kunci asimetri disebut juga kunci publik yang menggunakan dua kunci, yaitu kunci public yang bisa diketahui oleh pihak lain sedangkan kunci privat tidak diketahui pihak lain [7]. Perancangan ini menggunakan kunci yang dibangkitkan dari fungsi hiperbolik, oleh karena itu berikut ini diberikan enam nisbah dari fungsi hiperbolik[8]. Secara umum diberikan pada persamaan (1). ( ) ( ) ( ) ( ) ( ) ( ) (1) ( ) ( ) ( ) ( ) ( ) ( ) Selain fungsi hiperbolik, digunakan juga inverse fungsi hiperbolik[8]. Secara umum diberikan pada persamaan (2). ( ) ( ) ( ) ( ) ( ) ( ) (2) ( ) ( ) ( ) ( ) ( ) ( )
10
Perancangan kriptografi ini menggunakan fungsi linear sebagai fungsi tambahan untuk proses perputaran dengan fungsi hiperbolik sebgai kunci. Fungsi linear adalah suatu fungsi pada bilangan real yang variabelnya berpangkat satu atau suatu fungsi yang grafiknya merupakan garis lurus sehingga juga disebut persamaan garis lurus[9]. Secara umum diberikan pada Persamaan (3). ( ) (3) Perancangan Kriptografi melibatkan banyak proses perhitungan, selain menggunakan ketiga kunci pada Persamaan (1), Persamaan (2), dan persamaan (3) juga digunakan Convert Between Base (CBB) yang secara umum diberikan pada defenisi sebagai berikut: Defenisi 1. Konversi sembarang bilangan positif s berbasis 10 ke basis. Secara umum notasinya [10]. ( ) (4) Defenisi 2. Konversi dari urutan bilangan (list digit) dalam basis ke basis .Secara umum dinotasikan [10], ( ) (5) Dengan jumlahan urutan bilangan (jumlahan ) mengikuti aturan, ( ) ∑ (6) dimana ( ) adalah nilai terakhir dari urutan bilangan . dan adalah bilangan positif. Nilai yang diperoleh merupakan kumpulan urutan bilangan dalam basis . 3.
Metode Penelitian
Perancangan kriptografi simetrismenggunakan fungsi hiperbolik sebagai kunci dan fungsi linear sebagai putaran, memerlukan beberapa tahapan penyusunan penelitian. Tahap yang diperlukan yaitu Analisis Kebutuhan, Pengumpulan Bahan, Perancangan Kriptografi Simetris, Pembuatan Kriptografi, Uji Kriptografi, dan Penulisan Laporan.
11
AnalisisKebutuhan
PengumpulanBahan
PerancanganKriptografi
Pembuatan Kriptografi
Uji Kriptografi
PenulisanLaporan Gambar 1 Tahapan Penelitian
Tahapan penelitian berdasarkan Gambar 1. Tahap pertama: analisis kebutuhan yaitu, melakukan analisis mengenai kebutuhan apa saja yang dibutuhkan dalam merancang sebuah kriptografi baru menggunakan fungsihiperbolik Arcsinh, Arcosh, dan tanh.Tahap kedua: pengumpulan bahan yaitu, melakukan pengumpulan terhadap data-data dari jurnal-jurnal, buku, serta sumber yang terkait dengan proses enkripsi dan dekripsi pada data teks dalam proses perancangan kriptografi simetris menggunakan fungsi hiperbolik Arcsinh, Arcosh, tanh melalui dokumen dan referensi yang tersedia; Tahap ketiga: Perancangan bagan proses enkripsi dan dekripsi dalam pembuatan kriptografi baru beserta gambaran umum mengenai kriptografi baru yang akan dilakukan. Tahap keempat: Pembuatan kriptografi, pada tahap ini perancangan kriptografi yang baru sesuai dengan bagan atau alur yang sesuai dengan tahap ketiga. Tahap kelima: menguji hasil pada tahap ketigaapabila pembuatan kriptografi telah selesai, maka dilakukan pengujian apakah kriptografi yang dibuatlayak menjadi sebuah kriptografi baru yang tingkat keamanannya terjamin.Tahap keenam: penulisan laporan hasil penelitian, yaitu mendokumentasikan proses penelitian yang sudah dilakukan dari tahap awal hingga akhir ke dalam tulisan, yang akan menjadi laporan hasil penelitian. Dalam perancangan kriptografi dilakukan dengan duaproses utama yaitu proses enkripsi dan dekripsi. Pada proses enkripsi ini dilakukan dengan melakukan proses sebanyak tiga kali putaran yang pada setiap putaran terdapat proses linear dan kunci inputan untuk membangkitkan fungsi Arcsinh, Arccosh, dan Tanh sebagai kunci dimana setiap putaran terdapat kunci baru yang di bangkitkan dari ketiga fungsi hiperbolik tersebut yang ditunjukan pada Gambar 2.
12
ASCII
Plainteks
P u t a r a n
*
*
+ *
+
*
+
+
Kunci Inputan
ASCII *
+ *
+ *
1 * *
+
+
P u t a r a n 2
+
( ) ( ) ( )
*
+
*
Ket :
+
*
Fungsi pada fungsi
+
P u t a r a n 3
Kunci pembangkit Kunci pada fungsi *
+
Gambar 2Proses Enkripsi
Tahap Persiapan Enkripsi dan Dekripsi a) Menyiapkan Plainteks Menyiapkan plainteks yang akan dienkripsi diubah ke dalam bilangan ASCII dan di-mod 127, maka * + (7) dimana adalah panjang karakter pada plainteks. b) Menyiapkan Kunci Inputan Kunci Inputan didapatkan dengan mengubah karakter kunci inputan menjadi bilangan ASCII yang kemudian bilangan-bilangan tersebut dijumlahkan dan hasil dari penjumlahan di-mod127 sehingga * + (8) ( )mod 127 (9) 13
dimana
adalah panjangnya karakter kunci inputan.
c) Menyiapkan Fungsi Arcsinh Fungsi arcsinh digunakan sebagai kunci pembangkit pertama dalam proses enkripsi dan dekripsi. Dimana merupakan kunci inputan, hasil Persamaan (8)sehingga ( ) ( ) (10) d) Menyiapkan Fungsi Arccosh Hasil dari Persamaan (10) digunakan dalam membangkitkan kunci pembangkit kedua yang digunakan dalam proses enkripsi dan dekripsi. Dimana merupakan fungsi arcsinh, sehingga ( ) ( ) (11) e) Menyiapkan Fungsi Tanh Hasil dari Persamaan (11) digunakan dalam membangkitkan kunci pembangkit ketiga yang digunakan dalam proses enkripsi dan dekripsi. Dimana merupakan fungsi arccosh, sehingga ( ) ( ) (12) f) Menyiapkan kunci tambahan yang dibangkitkan dari proses enkripsi dan dekripsi yang digunakan untuk nilai konstanta pada fungsi linear. ( ) (13) Dimana merupakan kunci tambahan banyaknya kunci tambahan 1 sampai 4 - Kunci pembangkit tambahan 1 pada proses enkripsi dan dekripsi, merujuk pada Persamaan (13) dimana , dan , sehingga (14) - Kunci pembangkit tambahan 2 pada proses enkripsi dan dekripsi, merujuk pada Persamaan (13) dimana , dan , sehingga (15) - Kunci pembangkit tambahan 3 pada proses enkripsi dan dekripsi, merujuk pada persamaan (13) dimana , dan , sehingga ( ) (16) - Kunci pembangkit tambahan 4 pada proses enkripsi dan dekripsi, merujuk pada persamaan (12) dimana , dan , sehingga (17) g) Menyiapkan fungsi lineardan fungsi invers fungsi linear. Fungsi linear digunakan untuk proses enkripsi. Pada setiap putaran menggunakan fungsi linear yang berbeda. - Fungsi linear 1 pada putaran pertama didapatkan dari Persamaan (3) dimana dan Persamaan (10) yang kemudian di-mod 127, sehingga diperoleh ( ) ( ) (18) - Fungsi linear 2 pada putaran pertama didapatkan dari Persamaan (3) ( ) dimana dan ( ) yang kemudian di-mod 127, sehingga diperoleh ( ) ( ( )) (19)
14
-
Fungsi linear 3 pada putaran pertama didapatkan dari Persamaan (3) ( )yang di-mod dimana Persamaan (15) dan 50, 127, sehingga diperoleh ( ) (( ) ) (20) - Fungsi linear 4 pada putaran kedua didapatkan dari Persamaan (3) dimana Persamaan (14) dan 27, Persamaan (11) yang di-mod 127, sehingga diperoleh ( ) (( ) ) (21) - Fungsi linear 5 pada putaran kedua didapatkan dari Persamaan (3) dimana Persamaan (15) dan 20, Persamaan (12) yang di-mod 127, sehingga diperoleh ( ) (( ) ) (22) - Fungsi linear 6 pada putaran kedua didapatkan dari Persamaan (3) dimana , Persamaan (16) dan Persamaan (10) yang di-mod 127, sehingga diperoleh ( ) ( )) (23) ( - Fungsi linear 7 pada putaran ketiga didapatkan dari Persamaan (3) dimana Persamaan (15) dan Persamaan (12) yang di-mod 127, sehingga diperoleh ( ) ( ( )) (24) - Fungsi linear 8 pada putaran ketiga didapatkan dari Persamaan (3) dimana ( ) ( ) yang di-mod 127, sehingga diperoleh ( ) (( ) (25) ) - Fungsi linear 9 pada putaran ketiga didapatkan dari Persamaan (3) dimana Persamaan (16) dan 22, Persamaan (10) dan Persamaan (17) yang di-mod 127, sehingga diperoleh ( ) (( ) ( )) (26) Tahap selanjutnya proses dekripsi yang memerlikan invers fungsi linear, invers dari Persamaan (18) sampai Persamaan (226) sebagai berikut ( ) ( ) (27) ( )
(
( )
(
)
(29)
( )
(
)
(30)
( )
(
)
(31)
( )
(
)
(32)
( )
(
)
(33)
( )
(
( )
(
)
(28)
) )
15
(34) (35)
h) Menyiapkan Convert Between Base (CBB) Proses enkripsi menggunakan konversi basis bilangan, berdasarkan Persamaan (4) ( ) (36) Sedangkan untuk proses dekripsi digunakan konversi basis bilangan sebagai berikut pada Persamaan (5) (37) Setelah tahap persiapan selesai dilakukan maka proses selanjutnya adalah alur enkripsi secara garis besar, berikut merupakan penjelasan alur enkripsi pada Gambar 2. a) Putaran pertama hasil pada Persamaan (18) kemudian ditambahkan kedalam Persamaan (3), kemudian dikalikan dengan urutan bilangan dari Persamaan (7), dimana adalah banyak plainteks * + (38) b) Putaran pertamahasil dari Persamaan (38) kemudian disubtitusikan ke dalam Persamaan linear (19), dimana adalah banyak plainteks * + (39) c) Putaran pertamahasil dari Persamaan (39) kemudian disubtitusikan ke dalam Persamaan linear (20), dimana adalah banyak plainteks * + (40) d) Putaran keduahasil dari Persamaan (40) kemudian disubtitusikan ke dalam Persamaan linear (21), dimana adalah banyak plainteks * + (41) e) Putaran kedua hasil dari persamaan (41) kemudian disubtitusikan ke dalam Persamaan linear (22), dimana adalah banyak plainteks * + (42) f) Putaran keduahasil dari Persamaan (42) kemudian disubtitusikan ke dalam Persamaan linear (23), dimana adalah banyak plainteks * + ` (43) g) Putaran ketigadari hasil Persamaan (43) kemudian disubtitusikan ke dalam Persamaan linear (24), dimana adalah banyak plainteks * + (44) h) Putaran ketigadari Persamaan (44) kemudian disubtitusikan ke dalam Persamaan linear (25), dimana adalah banyak plainteks * + (45) i) Putaran ketiga dari Persamaan (45) kemudian disubtitusikan ke dalam Persamaan linear (26), dimana adalah banyak plainteks * + (46) j) Bilangan-bilangan pada Persamaan (45) kemudian dikonversi menggunakan Persamaan (36), sehingga * + (47)
16
*
Cipherteks
*
+
+ *
+
( )
P u t a r a n
Kunci Inputan *
( )
+
ASCII
*
+
*
+
( ) * *
+
( )
+ *
+
( )
P u t a r a n
2
1 *
( )
+ ( ) ( ) ( )
P u t a r a n
( )
*
+
( )
3
*
+
*
+
( )
Ket : Fungsi pada fungsi Kunci pembangkit
Plainteks
Kunci pada fungsi
Gambar 3 Proses Dekripsi
Setelah proses enkripsi selesai, selanjutnya proses dekripsi berikut merupakan penjelasan pada Gambar 3 diagram proses dekripsi. Persamaan (47) dan adalah a) Merujuk pada Persaman (36) dimana banyak plainteks, sehingga diperoleh * + (48) b) Hasil dari Persamaan (48)kemudian disubtitusikan pada Persamaan (27) dan adalah banyak plainteks maka hasilnya * + (49) c) Hasil dari Persamaan (49)kemudian disubtitusikan pada Persamaan (28) dan adalah banyak plainteks maka hasilnya * + (50) 17
d) Hasil dari Persamaan (50)kemudian disubtitusikan pada Persamaan (29) dan adalah banyak plainteks maka hasilnya * + (51) e) Hasil dari Persamaan (51)kemudian disubtitusikan pada Persamaan (30) dan adalah banyak plainteks maka hasilnya * + (52) f) Hasil dari Persamaan (52)kemudian disubtitusikan pada Persamaan (31) dan adalah banyak plainteks maka hasilnya * + (53) g) Hasil dari Persamaan (53)kemudian disubtitusikan pada Persamaan (32) dan adalah banyak plainteks maka hasilnya * + (54) h) Hasil dari Persamaan (54)kemudian disubtitusikan pada Persamaan (33) dan adalah banyak plainteks maka hasilnya * + (55) i) Hasil dari Persamaan (55)kemudian disubtitusikan pada Persamaan (34) dan adalah banyak plainteks maka hasilnya * + (56) j) Hasil dari Persamaan (56)kemudian disubtitusikan pada Persamaan (35) dan adalah banyak plainteks maka hasilnya * + (57) k) Hasil dari Persamaan (57) kemudian diubah ke dalamkode ASCII yang berkorespondensi sehingga diperoleh plainteks. 4.
Hasil dan Pembahasan
Aplikasi yang dibuat merupakan aplikasi yang dapat melakukan proses enkripsi dan dekripsi pada data teks. Untuk menguji apakah perancangan kriptografi simetris yang menggunakan fungsi linear sebagai putaran dan fungsi hiperbolik sebagai pembangkit kunci dalam sebuah teknik kriptografi baru, maka akan dilakukan proses enkripsi-dekripsi sesuai dengan langkah-langkah yang telah dijelaskan sebelumnya. Berikut ini adalah tahap persiapan sebelum proses enkripsi dan dekripsi. Tahap Persiapan a) Mempersiapkan plainteks “FTI TI” merupakan plainteks yang digunakan b) Menyiapkan kunci inputan “fti” merupakan kunci inputan yang digunakan dalam proses enkripsi dan dekripsi c) Menyiapkan kunci arcsinh sebagai kunci pembangkit pertama yang merujuk pada Persamaan (10) d) Menyiapkan kunci arcosh sebagai kunci pembangkit kedua yang merujuk pada Persamaan (11) e) Menyiapkan kunci tanh sebagai kunci pembangkit ketiga yang merujuk pada Persamaan (12) 18
f) Kunci Pembangkit - Merujuk pada Persamaan (14) maka (58) -
Merujuk pada Persamaan (15) maka
-
Merujuk pada Persamaan (16) maka ( Merujuk pada Persamaan (17) maka
(59)
-
)
(60) (61)
g) Fungsi linear - Merujuk pada Persamaan (18) maka ( ) - Merujuk pada Persamaan (19) maka ( ) ( - Merujuk pada Persamaan (20) maka ( ) ( - Merujuk pada Persamaan (21) maka ( ) ( - Merujuk pada Persamaan (22) maka ( ) ( - Merujuk pada Persamaan (23) maka ( ) ( - Merujuk pada Persamaan (24) maka ( ) ( - Merujuk pada Persamaan (25) maka ( ) (( ) - Merujuk pada Persamaan (26) maka ( ) (( ) ( h) Invers Fungsi Linear - Merujuk pada Persamaan (27) maka ( ) ( - Merujuk pada Persamaan (28) maka ( ) ( ) - Merujuk pada Persamaan (29) maka ( ) ( - Merujuk pada Persamaan (30) maka ( )
-
(
(62) )
(63)
)
(64)
)
(65)
)
(66) )
(67)
)
(68) )
(69)
)) mod 127
(70)
)
(71) (72) ) )
Merujuk pada Persamaan (31) maka ( ) ( ) Merujuk pada Persamaan (32) maka ( ) ( )
19
(73) (74)
(75) (76)
-
Merujuk pada Persamaan (33) maka ( ) ( ) - Merujuk pada Persamaan (34) maka ( ) ( - Merujuk pada Persamaan (35) maka ( ) ( ) i) Menyiapkan Convert Between Base (CBB)
(77) )
(78) (79)
Proses enkripsi menggunakan konversi basis bilangan, berdasarkan Persamaan (36) ( ) (80) Sedangkan untuk proses dekripsi digunakan konversi basis bilangan sebagai berikut pada Persamaan (37) (81) Setelah melakukan tahap persiapan maka akan dilanjutkan pada proses enkripsi dan dekripsi dengan langkah-langkah yang dijelaskan pada tahap perancangan sebagai berikut: Proses Enkripsi - Dekripsi a) Merujuk pada Persamaan (7) menghasilkan bilangan ASCII * + b) Merujuk pada Persamaan (8) menghasilkan * + c) Merujuk pada Persamaan (9) menghasilkan * + d) Merujuk pada Persamaan (10) menghasilkan
(82) (83) (84) (85)
e) Merujuk pada Persamaan (11) menghasilkan (86) f) Merujuk pada Persamaan (12) menghasilkan g)
h)
i)
j)
(87) Hasil dari Persamaan (82) subtitusikan pada Persamaan (62) sehingga diperoleh * + (88) Hasil pada Persamaan (88) disubtitusikan pada Persamaan (63) sehingga diperoleh * + (89) Hasil dari Persamaan (89) disubtitusikan pada Persamaan (64) sehingga diperoleh * + (90) Hasil dari Persamaan (90) disubtitusikan pada Persamaan (65) sehingga diperoleh * + (91)
20
k) Hasil dari Persamaan (91) disubtitusikan pada Persamaan (66) sehingga diperoleh * + (92) l) Hasil dari Persamaan (92) disubtitusikan pada Persamaan (67) sehingga diperoleh * + (93) m) Hasil dari Persamaan (93) disubtitusikan pada Persamaan (68) sehingga diperoleh * + (94) n) Hasil dari Persamaan (94) disubtitusikan pada Persamaan (69) sehingga diperoleh * + (95) o) Hasil dari Persamaan (95) disubtitusikan pada Persamaan (70) sehingga diperoleh * + (96) p) Hasil dari Persamaan (96) disubtitusikan lagi ke dalam Persamaan linear (47) sehingga diperoleh cipherteks *
+
(97)
Setelah cipherteks diketahui, maka selanjutnya adalah melakukan proses dekripsi. Proses yang dilakukan sesuai dengan langkah-langkah yang dijelaskan pada tahap persiapan. a) Hasil dari (97) diambil dan kemudian disubtutusikan kedalam Persamaan (37), maka diperoleh * + (98) b) Hasil Persamaan (98) disubtitusikan dengan menggunakan invers fungsi linear kesembilan (71), maka diperoleh * + (99) c) Hasil dari Persamaan (99) disubtitusikan dengan menggunakan invers fungsi linear kedelapan (72) diperoleh * + (100) d) Hasil dari Persamaan (100) disubtitusikan dengan menggunakan invers linear ketujuh (73) diperoleh * + (101) e) Hasil dari Persamaan (101) disubtitusikan dengan menggunakan in8ers linear keenam (74) diperoleh * + (102) f) Hasil dari Persamaan (102) disubtitusikan dengan menggunakan invers linear kelima (75) diperoleh * + (103)
21
g) Hasil dari Persamaan (103) disubtitusikan dengan menggunakan invers linear keempat diperoleh (76) diperoleh * + (104) h) Hasil dari Persamaan (104) disubtitusikan dengan menggunakan inverse linear ketiga (77) diperoleh (105) * } i) Hasil dari Persamaan (105) disubtitusikan dengan menggunakan invers linear kedua (78) diperoleh * + (106) j) Hasil dari Persamaan (106) disubtitusikan dengan menggunakan invers linear pertama (79) diperoleh * + (107) k) Hasil dari (107) kemudian diubah ke dalam bentuk karakter sesuai ASCII sehingga diperoleh plainteks FTI TI. Secara keseluruhan perancangan ini dapat melakukan proses enkrpsidekripsi sehingga secara umum menjadi sebuah kriptografi dan memenuhi syaratsyarat sistem kriptografi. Pada bagian selanjutnya menjelaskan secara rinci bagaimana perancangan ini memenuhi sebuah sistem kriptografi. Stinson [2], seorang kriptografer asal Amerika Serikat menyatakan bahwa sebuah sistem kriptografi harus memenuhi lima tuple (five-tuple). Berikut ini akan menjelaskan bagaimana perancangan kriptografi simetris menggunakan fungsi linear sebagai putarannya dan fungsi arcsinh, arcosh, tanh sebagai kunci yang sudah dijelaskan diatas memenuhi lima tuple tersebut : - P adalah himpunan berhingga dari plainteks.Bilangan ASCII merupakan sekumpulan karakter yang ekuivalen dengan jumlah bilangan yang semuanya terbatas dalam sebuah himpunan yang berhingga. Maka himpunan plainteks pada perancangan kriptografi simetris adalah himpunan berhingga. - Cadalah himpunan berhingga dari cipherteks. Cipherteks yang dihasilkan pada perancangan kriptografi simetris merupakan elemen bit (bilangan 0 dan 1). Karena himpunan cipherteks hanya * +, maka cipherteks pada perancangan kriptografi simetris adalah himpunan berhingga. - K merupakan ruang kunci (keyspace), adalah himpunan berhingga dari kunci. Penggunaan fungsi Linear dan kunci arcsinh, arcosh, tanh adalah fungsi. Maka dari itu kunci yang digunakan juga himpunan berhingga. - Untuk setiap k K, terdapat aturan enkripsi E dan berkorespodensi dengan aturan dekripsi . Setiap dan adalah fungsi sedemikian hingga ( ( )) untuk setiap plainteks . Dari kondisi ke-4 ini secara menyeluruh terdapat kunci yang dapat melakukan proses enkripsi sehingga merubah plainteks menjadi cipherteks dan begitupun sebaliknya, dapat melakukan proses dekripsi sehingga bisa merubah cipherteks menjadi plainteks kembali. Sebelumnya telah dibuktikan dengan plainteks FTI TI juga dapat melakukan proses Berdasarkan penjelasan tersebut sistem ini telah memenuhi ke-5 tuple sehingga perencangan kriptografi kunci simetris menggunakan fungsi arcsinh, 22
arcosh, tanh dan fungsi linear untuk dapat melakukan enkripsi dan dekripsi dengan mengubah palinteks menjadi cipherteks dan terbukti bahwa perancangan ini menjadi kriptografi baru
Gambar 4 Tampilan Proses Enkripsi
Hasil dari perancangan terlihat pada Gambar 4 menjelaskan tampilan proses enkripsi. Untuk memperoleh cipherteks maka harus di input plainteks serta kunci dan memilih button Enkripsi untuk diproses. Dan untuk hasil dari proses enkripsi digunakan dalam proses dekripsi untuk mengembalikan pesan ke bentuk semula dengan menggunakan nilai kunci yang sama seperti yang digunakan pada proses enkripsi, selanjutnya pilih button Dekripsi agar diproses untuk memperoleh plainteks kembali yang dijelaskan pada Gambar 5.
23
Gambar 5 Tampilan Proses Dekripsi
Setelah aplikasi dibuat berikut ini akan ditunjukkan grafik pengujian jumlah karakter terhadap banyaknya waktu dan memori selama proses enkripsi dan dekripsi dengan menggunakan kriptografi simetris. Uji perancangan kriptografi simetris dilakukan dengan membandingkan jumlah karakter yang diproses berdasarkan waktu dan memory yang diperlukan selama proses enkripsi dan dekripsi berlangsung. Hasil pengujian perancangan kriptografi ini dibandingkan dengan 2 penelitian terdahulu yaitu perancangan kriptografi menggunakan kunci simetris akar kubik juga fungsi Chebyshevorde-2 dan fungsi arctan juga fungsi polinomial orde-5 sedangkan pada penelitian ini menggunakan fungsi hiperbolik. Gambar 4 dan Gambar 5 Menunjukkan perbedaan banyaknya karakter yang diinput dalam penggunaan memory dan waktu selama uji perancangan kriptografi simetris dijalankan dengan membandingkan setiap jumlah karakter selama proses enkripsi dan dekripsi berlangsung antara perancangan kriptografi febe (PKF), perancangan kriptografi Oktoberlin (PKO) dan perancangan kriptografi yulian(PKY).
24
6.5 5.5
Waktu (s)
4.5 3.5 2.5 1.5 0.5 -0.5 0
100
200
300
400
500
Banyak Karakter PKF PKO
600
700
800
PKY
Gambar 4Ketersediaan Banyak KarakterTerhadap Waktu
Berdasarkan pada grafik Gambar 4 terlihat bahwa banyaknya karakter plainteks akan mempengaruhi waktu yang lebih lama pada saat proses berjalan, dimana pada PKF dan PKO cenderung stabil di bandingkan PKY yang mengalami kenaikan yang signifikan pada jumlah karakter 600 dan 700 karakter. Waktu yang diperlukan saat karakter 500 dan 700 pada PKF adalah 2.01s dan 2.66s, PKO 2.24s dan 2.83s, sedangkan pada PKY 3.58s dan 6.34s. Pada grafik menunjukkan bahwa hasil perhitungan kemiringan garis pada PKF, PKO, dan PKY adalah 0.001765 (PKF), 0.001691 (PKO), dan 0.007366 (PKY). Dari jumlah waktu yang diperlukan terlihat bahwa nilai kemiringan kemiringan pada PKY lebih besar antara PKF dan PKO hal ini disebabkan karena PKY menggunakan lima putaran sedangkan PKF dan PKO menggunakan tiga putaran yang di setiap putaran tersebut terdapat tiga proses. 70
Memory (Mb)
60 50 40 30 20 10 0 0
100
200
300
400
500
600
Banyak Karakter
PKF
PKO
PKY
Gambar 5Ketersediaan Banyak Karakter terhadap Memory
25
700
800
Gambar 5 menjelaskan ketersediaan memory pada PKF, PKO dan PKY dimana pada PKY mengalami kenaikan yang signifikan pada jumlah plainteks lebih dari 400 karakter dengan jumlah memory yang diperlukan 63.51Mb sedangkan pada PKF dan PKO mengalami kenaikan pada jumlah plainteks lebih 500 karakter dengan jumlah memory yang diperlukan 61.67Mb dan 63.7Mb. Nilai kemiringan pada masing perancangan kriptografi baru adalah 0.052492 (PKF), 0.051052 (PKO) dan 0.057101 (PKY). Terlihat bahwa nilai kemiringan pada PKY yang paling tinggi, hal tersebut karena proses pada PKY menggunakan lima proses dalam perancangan kriptografi yang dibuatnya. Dalam penelitian ini merancang menggunakan plainteks berupa karakter, sedangkan cipherteks yang dihasilkan berupa bit. Oleh karena itu untuk mengetahui perbandingan banyaknya karakter plainteks dan cipherteks maka perlu membandingkannya untuk melihat seberapa baik algoritma yang dibangun dalam sebuah perancangan kriptografi baru. Tabel 1 Perbandingan Plainteks dan Cipherteks
Cipherteks
Plainteks 10 100 200 300 400 500 600 700 800
295 3193 6412 9632 12852 16072 19292 22512 25731
Data pada Tabel 1 memberikan informasi terkait banyaknya karakter plainteks dan cipherteks. Hasil tersebut menujukkan karakter dari algoritma kriptografi yang dirancang. Penggunaan banyaknya plainteks sangat tergantung pada spesifikasi komputer yang digunakan. Plainteks sebesar 800 karakter merupakan stresspoint dari perancangan kriptografi ini. Kebutuhan informasi untuk karakter yang lebih besar dari 800 sangat diperlukan untuk mengetahui karakteristik dari algoritma dan juga tingkat kenaikan setiap interfal yang diambil. Oleh karena itu sangat diperlukan model matematika yang dibangun berdasarkan data yang diperoleh pada Tabel 1. Dalam kasus ini model yang dibangun berdasarkan fitting (pencocokan kurva) dari data yang ada pada Tabel 1, proses pencocokan kurva ditunjukkan pada Gambar 6.
26
35000 y = 32.198x - 27.15
30000
Cipherteks
25000 20000 15000 10000 5000 0 0
200
400 600 800 Plainteks Cipherteks Linear (Cipherteks)
Gambar 6 PerbandinganPlainteks dan Cipheteks
Berdasarkan koefisien determinasi yang paling baik ( R 2 1 ) mendekati atau sama dengan 1. Feeting yang dilakukan dengan data pada tabel 1 maka diperoleh: (108) y 32.198x - 27.15 Model pada Persamaan (108) menunjukkan perbandngan antara banyaknya karakter plaintek dan banyaknya bit pada cipherteks, gradien dari persamaan 108 adalah 32,198. Hal ini memberikan informasi setiap laju kenaikan antar banyaknya plainteks terhadap cipherteks. 5.
Simpulan
Hasil penelitian perancangan pembangkit kunci kriptografi simetris menggunakan fungsi hiperbolik sebagai pembangkit kunci dan fungsi linear digunakan pada setiap putaran, selain itu telah memenuhi five tuple sehingga bisa disebut sebagai sebuah kriptografi. Kekurangan dari penelitian ini yaitu hanya bisa berjalan pada teks, semakin banyak teks pada plainteks maka diperlukan waktu yang lama untuk enkripsi dan dekripsi semakin banyak juga memori yang dibutuhkan sehingga mempersulit kriptanalist untuk memecahkannya. Dalam pengujian memory saat jumlah karakter lebih dari 400 karakter PKF dan PKO lebih baik dari perancangan terdahulu PKY karena sedikit menggunakan memory sedangkan pada waktu yang dibutuhkan dalam proses PKY cenderung memerlukan waktu yang lebih banyak. Hal ini disebabkan karena proses PKF dan PKF menggunakan tiga putaran sedangkan PKY menggunakan lima putaran. Berdasarkan pada grafik diatas gradien pada sumbu x terhadap sumbu yaitu 32,198. Perbandingan antara banyaknya palinteks dan cipherteks berelasi sesuai dengan persamaan y 32.198x - 27.15 . Perancangan ini juga dapat digolongkan modern karena cipherteks yang dihasilkan dalam bentuk bit biner. Sehingga bila ada penelitian selanjutnya bisa enkripsi dan dekripsi pada gambar, video dan data yang lainnya.
27
6.
Daftar Pustaka [1]
Tekno.kompas, 4 Juli 2011, Mengenang Robert Morris, Salah Satu “Bidan Unix”, http://tekno.kompas.com/read/2011/07/04/16082716/mengenang.robert. morris.salah.satu.quotbidan.unixquot, Diakses pada tanggal 25 Juni 2014. [2] Stinson, D.R., 1995, Cryptography Theory and Practice, Florida: CRC Press, Inc. [3] Hassi, Ronald., 1987, Kamus Matematika Inggris-Indonesia, Bandung: Tarsito. [4] Maal, Y& Wowor, A. D. 2013. Perancangan Kriptografi menggunakan Akar kubik Fungsi Linear dan Fungsi chebysheb orde 2. Salatiga:Skripsi-S1 Sarjana Universitas Kristen Satya Wacana. [5] Banjarnahor, O & Wowor, A. D. 2014. Implementasi Fungsi Polinomial Orde-5 dan Fungsi Arctan dalam Perancangan Kriptografi Simetris. Salatiga: Skripsi-S1 Sarjana Universitas Satya Wacana. [6] Munir, R., 2006. Kriptografi. Informatika: Bandung. [7] Bruce Schneier, 1996, Applied Cryptograp by: Protocols, Algorithms, and Source Code in C, USA: John Wiley & Sons, Inc. [8] The World Book Encyclopedia of Science, 1989, Vol.4 Trigonometric and Hyperbolic Functions page107-131 : Public Word Book. [9] Sutojo, T., Bowo N., Erna, Z.A., dkk., 2010, Teori dan Aplikasi Aljabar Linear dan Matriks dengan Implementasi Aljabar Linear dan Matriks Menggunkan Matlab., Semarang : Andi. [10] Wowor, A. D. 2013. Modifikasi Kriptografi Hill Cipher Menggunakan Convert Between Base. Bali : Seminar Nasional Sistem Informasi Indonesia.
28