PEMANFAATAN TEKNOLOGI CLOUD COMPUTING DALAM PERANCANGAN PESAN DENGAN MENGGUNAKAN SISTEM KEAMANAN ALGORITMA HILL CIPHER 3X3 DAN MYSZKOWSKI TRANSPOSITION Sayyid Luthfi Sani1, Prof Tulus M.si2, Drs Mahmud N Siregar3 Jurusan Teknik Informatika Sekolah Tinggi Teknik Harapan Medan Jl. HM Jhoni No 70 Medan, Indonesia 1
[email protected] ABSTRAK Cloud computing atau komputasi awan adalah salah satu model transaksi pesan komunikasi dan informasi yang paling banyak dipakai saat ini. Model ini memberikan kemudahan dalam transaksi data/informasi dengan model penyimpanan awan (cloud storage) dan beragam pengaturan konfigurasi yang dapat dikelola secara remote melalui layanan internet. Dengan berkembangnya model dan algoritma, tindakan kejahatan dalam transaksi pesan online semakin meningkat, untuk itu dibutuhkan sebuah model pengkodean pesan (menggunakan teknik kriptografi) yang sulit untuk dipecahkan (decrypted) dan hanya dapat didekripsi dengan kunci privat khusus. Salah satu cara yang dapat digunakan adalah dengan mengkombinasikan beberapa algoritma kriptografi (kriptografi hibrida) sehingga keamanan pesan dapat lebih terjaga. Pada studi ini, penulis akan mengimplementasikan sebuah sistem transaksi pesan dengan memanfaatkan teknologi cloud computing berbasis android menggunakan kombinasi dari algorima hill cipher dengan matriks 3x3 untuk mengenkripsi/mendekripsi pesan dan algoritma myszkowski transposition untuk mengenkripsi/mendekripsi kunci privat. Algoritma hill cipher adalah algoritma kriptografi simetris yang handal dimana semakin besar ukuran matriks yang digunakan maka semakin sulit untuk diretas. Algoritma myszkowski transposition adalah algorotma kriptografi asimetris yang memiliki tingkat kerumitan tinggi dengan kunci yang sederhana. Keunggulan dari mengkombinasikan dua algoritma ini adalah waktu pemrosesan data yang lebih cepat dengan algoritma hill cipher dan kemudahan transfer kunci dengan algoritma Myszkowski transposition. Kata Kunci: Cloud computing, Kriptografi, hill cipher, dan myszkowski transposition ABSTRACT Cloud computing is one of transaction message model in communication and information system that is most widely used today. This model provides ease of transaction data / information by using cloud storage model and manifold of configuration settings that can be managed remotely via the internet service. With the current development of models and algorithms, crime rate in the online message transactions is increasing, for it takes a model of message encryption (using cryptography techniques) that are difficult to be decrypted and can be decrypted only by specific private key. One of the effective way that can be used to solve this problem is by combining multiple cryptography algorithms (cryptography hybrid) so that the privacy of messages can be more secure. In this study, the author implements a message transaction system by utilizing cloud computing technology based on android system and a combination of hill cipher algorithm sized 3x3 matrix for messages encryption / decryption and myszkowski transposition algorithm for private key encryption / decryption. Hill cipher algorithm is a symmetric cryptography and very reliable where the greater size of the matrix used the more difficult to be hacked. Myszkowski transposition algorithm is asymmetric cryptography that has a high level of complexity with a simple key transpotition. The advantages of combining these two algorithms is the faster data processing by using hill cipher algorithm and easy transpotition of the key by using myszkowski transposition algorithm. Key Words: Cloud computing, Cryptography, hill cipher, dan myszkowski transposition rentan terekspose oleh pihak yang tidak diinginkan ketika terjadi gangguan terhadap cloud storages server yang menyimpan informasi-informasi tersebut. Jika keamanan tidak kuat dan konsisten, fleksibilitas dan keunggulan cloud computing yang ditawarkan tidak dapat diakui kredibilitasnya [1]. Metode pengamanan data yang sering digunakan adalah metode Kriptografi yaitu ilmu mengenai teknik enkripsi di mana data diacak menggunakan suatu kunci enkripsi menjadi sesuatu yang sulit dibaca oleh seseorang yang tidak memiliki kunci dekripsi. Dekripsi dilakukan menggunakan kunci dekripsi untuk mendapatkan kembali data asli.
1.
Pendahuluan Penggunaan teknologi internet pada era globalisasi saat ini berkembang semakin pesat. Teknologi internet membantu manusia dalam memberikan kemudahan dalam mengakses berbagai kegiatan kehidupan seperti sebagai media informasi, pembelanjaan elektronik, pembelajaran online, dan juga sebagai saluran komunikasi yang interaktif, mudah dan murah. Dengan semakin berkembangnya berbagai layanan berbasis cloud computing, informasi yang bersifat sensitif dari berbagai entitas yang tersimpan dalam remote server dengan metode cloud storages
1
Proses enkripsi dilakukan menggunakan suatu algoritma dengan beberapa parameter. Dalam kriptografi, banyak algoritma yang bisa diterapkan seperti: Hill Cipher, Vigenere Cipher, Affine Cipher, AES, DES, IDEA, dan lain-lain. Algoritma yang digunakan biasanya tidak dirahasiakan, bahkan enkripsi yang hanya mengandalkan kerahasiaan algoritmanya, dianggap merupakan suatu proses kriptografi yang tidak baik. Rahasia kunci deskripsi terletak di parameter yang digunakan, jadi kunci ditentukan oleh parameter-nya. Parameter yang menentukan kunci dekripsi tersebutlah yang harus dirahasiakan [2]. Algoritma untuk merahasiakan kunci deskripsi yang banyak dipakai adalah RSA, rail fence cipher, route cipher, columnar transposition, dan myszkowski transposition. Dengan menggunakan proses hybridcryptosystems, yaitu menggabungkan antara kriptografi text dengan kriptografi untuk kunci deskripsi, tentunya akan menghasilkan keamanan yang lebih baik untuk transaksi pesan pada model cloud computing. Pada studi kali ini, akan digunakan algoritma hill cipher 3x3 untuk kliptografi pada pesan text dan algoritma Myszkowski Transposition untuk kunci deskripsinya. Hill cipher diciptakan oleh Lester S. Hill pada tahun 1929. Hill cipher termasuk kepada algoritma kriptografi klasik yang sangat sulit dipecahkan oleh kriptanalis apabila dilakukan hanya dengan mengetahui berkas cipherteks saja. Upaya pencegahan agar hill cipher tidak mudah dipecahkan yang paling sederhana adalah menggunakan ukuran matriks kunci yang besar [3]. Dalam studi ini akan digunakan hill cipher dengan ukuran matriks yang cukup panjang yaitu matriks 3x3. Untuk keamanan kunci deskripsinya digunakan algoritma myszkowski transposition yaitu sebuah variasi dari columnar transposition yang diusulkan oleh รmile Victor Thรฉodore Myszkowski pada tahun 1902. Algoritma myszkowski transposition merupakan algoritma yang memiliki tingkat kerumitan tinggi dengan kunci yang sederhana dibandingkan dengan algoritma rail fence cipher, route cipher, ataupun columnar transposition. Myszkowski transposition mempunyai kerumitan yang lebih tinggi karena pembacaan cipherteks tidak hanya dari satu arah namun dapat pula dilakukan dari dua arah. Keamanan dalam transaksi pesan berbasis cloud computing dapat ditingkatkan dengan menggunakan hybridcryptosystems. Berdasarkan uraian latar belakang di atas, maka rumusan permasalahan pada penelitian ini adalah bagaimana merancang sebuah sistem transaksi pesan online berbasis teknologi cloud computing dengan menggunakan algorima hill cipher 3x3 dan algoritma Myszkowski transposition untuk meningkatkan sistem keamanannya. Tujuan penelitian ini adalah untuk menambah tingkat keamanan sebuah transaksi pesan pada model cloud computing dengan menggunakan
teknik kriptografi yaitu algorima hill cipher 3x3 dan myszkowski transposition Transaksi pesan menggunakan model cloud computing terbukti memberikan kemudahan dalam proses akses yang mudah, praktis dan dapat diakses dari mana saja menggunakan jaringan internet. Namun keamanan menjadi salah satu hal yang harus diperhitungkan. Dengan berkembangnya model dan algoritma, tindakan kejahatan dalam transaksi pesan online semakin meningkat, untuk mengatasi hal tersebut dibutuhkan pengembangan dalam teknik kriptografi. Berikut ini adalah beberapa penelitian berkenaan dengan keamanan model cloud computing: 1. Penerapan Algoritma Vigenere Cipher pada Aplikasi Pesan [4] 2. Penerapan algoritma vigenere dan transposisi kolom untuk enkripsi pesan [5] 3. Peningkatan sistem keamanan pesan menggunakan algoritma affine cipher dan vigenere cipher. [6] 4. Penerapan AES untuk otentikasi akses cloud computing [7] 5. Mengembangkan kemampuan algoritma Playfair Cipher 6x6 menggunakan myszkowski transposition dalam meningkatkan keamanan transaksi data. [8] 6. Meningkatkan keamanan Cloud Storage System menggunakan AES dan RSA dengan Role Base Security. [9] 7. Meningkatkan keamanan Cloud Computing menggunakan hybridcryptosystems: Algoritma RSA dan Blowfish [10] 2.
Metode Penelitian Dalam penelitian ini, penulis menggunakan beberapa metode penelitian untuk mendapatkan data dan informasi yang diperlukan. Adapun metode penelitian yang digunakan adalah sebagai berikut: 1. Pengumpulan Data dan Informasi Pada tahap ini dilakukan pengumpulan informasi dari berbagai sumber seperti buku, artikel, jurnal, maupun hasil penelitian terdahulu sebagai referensi yang diperlukan dalam melakukan penelitian. Ini dilakukan untuk memperoleh informasi yang terkait dengan cloud computing, metode hill cipher, metode myszkowski transposition, web server dan pemrograman Android. 2. Analisis Permasalahan Pada tahap ini dilakukan analisis terhadap hasil studi literatur untuk mendapatkan pemahaman mengenai model cloud computing, penerapan metode hill cipher dan myszkowski transposition serta literatur pendukung lainnya untuk meningkatkan keamanan transaksi pesan. 3. Perancangan sistem Memahami rancangan aplikasi pesan pegawai BPPT Pemerintah Kota Medan sesuai data yang ada dan mengimplementasikan algoritma hill cipher dan algoritma myszkowski
2
transposition untuk meningkatkan keamanan pesan. Pemodelan yang digunakan dalam sistem ini yaitu menggunakan UML (Unified Modeling Language), flowchart, serta perancangan Relasi Table Database yang berguna untuk mempermudah dalam prosesproses selanjutnya. 4 . Implementasi sistem Setelah proses analisis dan perancangan selesai, dilakukan implementasi sistem yaitu pembuatan aplikasi pesan pegawai BPPT Pemerintah Kota Medan berbasis android dan menerapkan algoritma hill cipher dan algoritma myszkowski transposition untuk pengamanan pesannya. 5 . Pengujian sistem Setelah implementasi sistem selesai, maka akan dilakukan pengujian aplikasi pesan pegawai BPPT Pemerintah Kota Medan berbasis android dan pengujian algoritma hill cipher dan algoritma myszkowski transposition dapat meningkatkan keamanan isi pesan pada aplikasi tersebut. 6. Pelaporan Sistem Laporan penelitian akan dilakukan setelah proses analisis, perancangan, implementasi dan pengujian sistem selesai, dan sistem sudah berjalan dengan baik dengan berbagai perbaikan yang dilakukan dan supaya dapat terpantau kinerja sistem yang sudah berjalan.
pemberitahuan untuk mendorong pelibatan kembali dan retensi pengguna. Untuk kasus penggunaan seperti perpesanan instan, pesan dapat mentransfer payload hingga 4 KB ke aplikasi klien. 2.3 Kriptografi Kata kriptografi ini berasal dari bahasa Yunani. Dalam bahasa Yunani kriptografi terdiri dari dua buah kata yaitu cryptos dan graphia. Kata crypto berarti rahasia sedangkan graphia berarti tulisan. Secara harfiah kata kriptografi dapat diartikan sebagai tulisan rahasia. Secara akademis, kriptografi merupakan ilmu yang mempelajari tentang bagaimana menjaga kerahasiaan suatu pesan, agar isi pesan yang disampaikan tersebut aman sampai ke penerima pesan. Kriptografi mempunyai peranan penting dalam dunia komputer, terutama pada sistem berbasis internet yang rentan diserang virus, mailware, hacker dan serangan informasi lainnya. Banyaknya informasi rahasia yang disimpan dan dikirmkan secara online serta berisikan dokumendokumen penting atau data privasi dari suatu instansi yang tidak ingin dibaca oleh orang yang tidak berhak atas informasi tersebut. Oleh karena itu ilmu kriptografi setiap saat selalu dikembangkan untuk dapat menjaga fasilitas-fasilitas tersebut [12]. 2.4 Algoritma Hill Cipher Hill cipher yang merupakan polyalphabetic cipher dapat dikategorikan sebagai block cipher. Pesan teks yang diproses dibagi menjadi blok-blok dengan ukuran tertentu. Setiap karakter dalam satu blok akan saling mempengaruhi karakter lainnya dalam proses enkripsi dan dekripsi, sehingga karakter yang sama tidak dipetakan menjadi karakter yang sama pula. Hill Cipher diciptakan oleh Lester Hill pada tahun 1929. Hasil Cipher (kode) tidak dapat dipecahkan menggunakan teknik analisis frekuensi. Hill Cipher menggunakn perkalian matriks sebagai dasar enkripsi dan deskripsi. Oleh sebab itu, Hill Cipher tidak mengganti setiap abjad yang sama pada plainteks dengan abjad lainnya yang sama pada cipherteks. Jika kriptanalis hanya mengetahui cipherteks saja maka diperkirakan sulit untuk menemukan plainteks, namun jika kriptanalis memiliki berkas cipherteks dan potongan berkas plainteks maka teknik ini sangat mudah dipecahkan [13]. Secara matematis proses enkripsi pada algoritma hill cipher dapat dijelaskan dengan persamaan berikut: [3]
2.1 Komputasi Awan Komputasi awan (cloud computing) merupakan definisi untuk teknologi komputasi grid (grid computing) yang digunakan pada pertengahan hingga akhir 1990-an. Tren komputasi awan mulai muncul pada akhir tahun 2007, digunakan untuk memindahkan layanan yang digunakan sehari-hari ke Internet, bukan disimpan di komputer lokal lagi. Komputasi awan menjadi tren baru di bidang komputasi terdistribusi dimana berbagai pihak dapat mengembangkan aplikasi dan layanan berbasis Service Oriented Architecture di jaringan internet. Berbagai kalangan dapat menarik manfaat dari layanan komputasi awan ini baik sebagai solusi teknologi maupun mendapatkan manfaat ekonomis darinya. Email yang tersedia dalam bentuk web mail merupakan contoh yang sangat kecil dari teknologi komputasi awan. Dengan menggunakan layanan email seperti Gmail dan Yahoo Mail, orang tidak perlu lagi menggunakan outlook atau aplikasi desktop lainnya untuk email mereka. Membaca email dengan browser memungkinkan dilakukan di mana saja sepanjang ada koneksi internet [11].
๐ถ โก ๐พ. ๐ (๐๐๐ 26) 2.2 Firebase Cloud Computing Firebase Cloud Messaging (FCM) adalah solusi perpesanan lintas platform yang memungkinkan Anda mengirimkan pesan dan pemberitahuan dengan terpercaya tanpa biaya. Dengan menggunakan FCM, Anda bisa memberi tahu aplikasi klien bahwa email baru atau data lainnya tersedia untuk disinkronkan. Anda mengirim
Keterangan : C : Cipherteks hasil enkripsi Hill Cipher K : Kunci Hill Cipher dalam bentuk matriks P : Plainteks atau pesan asli Berikut disajikan gambar yang menerangkan proses enkripsi pesan pada algoritma Hill Cipher:
3
hybridcryptosystems disematkan pada saat pengiriman dan penerimaan pesan agar menambah keamanan transaksi pesan yang dikirim, saat diproses hingga pesan tersebut diterima. 3.1. Use-Case Diagram Diagram usecase digunakan untuk menggambarkan hubungan antara aktor dengan fungsi atau layanan yang disediakan oleh sistem [14]. Diagram usecase pada penelitian ini dapat dilihat pada Gambar 3.
Gambar 1. Proses enkripsi pada algoritma hill cipher Proses dekripsi pada Hill Cipher pada dasarnya sama dengan proses enkripsinya. Namun matriks kunci harus dibalik (invers) terlebih dahulu.
Gambar 2. Proses Dekripsi Hill Cipher Secara matematis, proses dekripsi pada Hill Cipher dapat diturunkan dari persamaan. [3] ๐ถ = ๐พ. ๐ ๐พ โ1 . ๐ถ = ๐พ โ1 . ๐พ. ๐ ๐พ โ1 . ๐ถ = 1. ๐ ๐ = ๐พ โ1 . ๐ถ 2.5 Algoritma Myszkowski transposition Menurut Atul, K., Myszkowski transposition adalah salah satu cipher transposisi. Algoritma ini ditulis oleh รmile Victor Thรฉodore Myszkowski dalam bukunya yang berjudul Cryptographie Indรฉchiffrable pada tahun 1902 [8]. Buku ini ditulis berdasarkan penemuannya dan diklaim aman dari orang yang tidak berhak membaca pesan tersebut. Hal ini didasarkan pada penggunaan kunci transposisi dengan menulis teks secara horizontal (baris) dan membacanya secara vertikal (kolom). Proses enkripsi dilakukan dengan cara menyusun plaintext ke dalam baris matriks. Kemudian matriks tersebut dibaca perkolom sehingga didapatkan ciphertext. Banyak kolom yang digunakan pada matriks ditentukan oleh panjang kunci yang digunakan. Kunci berupa urutan angka unik ataupun terdapat angka yang sama dengan posisi acak, dimulai dari 1. Plaintext dibaca sesuai urutan angka pada kunci dengan ketentuan pada angka yang unik dibaca perkolom, sedangkan pada angka yang sama dibaca dari kiri ke kanan perkolomnya. Sedangkan untuk proses dekripsi merupakan kebalikan dari proses enkripsinya.
Gambar 3. Diagram Use-Case 3.2. Flowchart Sistem Flowchart sistem yaitu bagan dengan simbol tertentu yang menggambarkan urutan prosedur dan proses suatu file dalam suatu media menjadi file di dalam media lain, dalam suatu sistem pengolahan data. Flowchart dari sistem yang akan dibangun dapat dilihat pada Gambar 4.
3.
Analisis Proses Pada penelitian ini, aplikasi pesan dikembangkan dengan memanfaatkan model cloud computing berbasis android dengan menambahkan teknik hybridcryptosystems untuk menambah keamanannya. Alur sistem yang dikembangkan dapat dilihat pada use-case diagram dan flowchat sistem yang telah dibangun. Aplikasi yang dikembangkan bersifat userfriendly sehingga pengguna dapat lebih mudah untuk menggunakannya. Teknik
Gambar 4. Flowchart Sistem
4
akan mengdekripsi ciperteks menggunakan algoritma hill cipher.
3.3. Perancangan Antarmuka Pada aplikasi pesan yang dikembangkan, terdapat beberapa proses yang dapat dilakukan. Proses Pendaftaran berisi formulir pendaftaran pengguna baru yang ingin bergabung pada aplikasi ini. Proses Login diperlukan untuk masuk ke menu utama sistem dan memerlukan username dan password. Menu Utama berisi 4 menu yaitu Pesan, Kunci, Kontak dan Navigasi. Pada Proses transaksi pesan disematkan algoritma hill cipher 3x3, sedangkan pada kuncinya digunakan algoritma Myszkowski transposition Rancangan tampilan halaman utama aplikasi dapat dilihat pada Gambar 5.
4.
Hasil dan Pembahasan
4.1 Pengujian Enkripsi dan dekripsi pada sistem Pengujian enkripsi dan dekripsi menggunakan sistem yang dibangun akan menghasilkan ciphertext dan cipherkey. Pada tahap ini, penulis melakukan pengujian form enkripsi dengan menginputkan contoh sebagai berikut: 1. Pesan yang akan dienkripsi adalah โada informasi pentingโ. 2. Kunci yang digunakan pada Hill Cipher adalah โstthmedanโ. Proses pengujian enksripsi dan dekripsi pada sistem yang telah dibangun sebagai berikut: A. Pengujian Enkripsi Sistem Langkah pertama, Pada menu Kunci lakukan pengimputan kunci hill cipher, pada contoh kali ini kunci yang digunakan adalah โstthmedanโ. Tampilan pada aplikasi adalah seperti pada Gambar 7.
Gambar 5 Form Utama Aplikasi Pesan Pada Tab Pesan, pengguna dapat melakukan proses pengiriman dan penerimaan pesan dan pada halaman ini juga diterapkan proses enkripsi dan dekripsi pada pesan dan kunci. Gambar 6 menunjukan rancangan tampilan dari form pesan.
Gambar 7. Proses Tambah Kunci Setelah kunci diinput, pada Menu kontak pilih pengguna yang akan dikirimi pesan setelah itu akan masuk ke room pesan untuk menulis pesan, pada contoh kali ini isi pesan adalah โada informasi pentingโ. Pada sisi aplikasi penerima akan menerima notifikasi dari pesan yang dikirim oleh pengirim yang merupakan hasil enkripsi pesan hill cipher.
Gambar 6. Form Pesan Berikut ini adalah sistematis dari form pesan yang dikembangkan : 1. Sistem keamanan berkerja ketika pengguna melakukan pengiriman. 2. Pesan akan di enkripsi menggunakan algoritma Hill cipher dan kunci hill cipher di enkripsi menggunakan algoritma Myszkowski transposition 3. Dilayar pengirim pesan ketika pertama mengirim pesan hanya nampil teks asli 4. Dilayar penerima pesan, sistem akan otomatis mengdekripsi kan kunci hill cipher menggunakan algoritma myszkowski transposition terlebih dahulu. Selanjutnya
Gambar 8. Proses Pengiriman Pesan dan Peneriman Enkripsi Pesan
5
B.
Pengujian Dekripsi Sistem Pada pengujian dekripsi sistem penerima langsung mengklik notifakasi yang akan menampilkan pada room pesan dan pesan enkripsi akan automatis mengdekripsi pesan ke teks asli. Pada Gambar 9 menampilan gambar pesan yang terdekripsi.
Tabel 3. Proses Pengubahan Karakter K ke Angka t t h m e d a n Kkarakter s 44 45 45 33 38 30 29 26 39 Ktabel Kunci dan Plainteks dibagi menjadi blok yang masing-masing bloknya berukuran 3 karakter sebagai berikut: Tabel 4. Proses Membagi Kunci dan Plainteks menjadi blok ukuran 3 karakter Ktabel Ptabel 44 45 45 26 62 31 38 34 30 34 33 38 30 29 34 40 26 62 39 39 29 26 39 26 39 43 44 41 45 32 Kemudian dilakukan proses enkripsi ๐ถ๐ = ๐พ. ๐๐ (๐๐๐ 97) dimana hasil enkripsi adalah hasil kali antara Kn (Ktabel) dan Pn (Ptabel) mod 97. Rincian perhitungan proses enkripsi dapat dilihat pada tabel 5.
Gambar 9. Proses Dekripsi Pesan 4.2 Pengujian Enkripsi dan Dekripsi secara Manual
Tabel 5. Proses Perhitungan Enkripsi Pesan
A.
Perhitungan Manual Enkripsi Hill cipher Sebelum memasuki langkah-langkah proses enkripsi, tabel yang digunakan pada penelitian ini adalah tabel Encoding Android yang dapat dilihat pada Tabel 1 berikut:
0 A 15 P 30 e 45 t 60 8 75 โ 90 [
1 B 16 Q 31 f 46 u 61 9 76 โ 91 ]
Tabel 1. Tabel Encoding Android 2 3 4 5 6 7 8 9 10 11 12 C D E F G H I J K L M 17 18 19 20 21 22 23 24 25 26 27 R S T U V W X Y Z a b 32 33 34 35 36 37 38 39 40 41 42 g h i j k l m n o p q 47 48 49 50 51 52 53 54 55 56 57 v w x y z 0 1 2 3 4 5 62 63 64 65 66 67 68 69 70 71 72 Sp . , @ # $ % & - + ( 77 78 79 80 81 82 83 84 85 86 87 : ; ! ? _ / ~ | ^ = { 92 93 94 95 96 < > ยฎ โฌ ยฉ
13 N 28 c 43 r 58 6 73 ) 88 }
14 O 29 d 44 s 59 7 74 * 89 \
((Ktabel* Ptabel))* mod 97
Hasil perkalian
C
44 45 45 26 {(33 38 30) โ (29)} 29 26 39 26 โ ๐๐๐ 97 44 45 45 62 {(33 38 30) โ (34)} 29 26 39 39 โ ๐๐๐ 97 44 45 45 31 {(33 38 30) โ (40)} 29 26 39 43 โ ๐๐๐ 97 44 45 45 38 {(33 38 30) โ (26)} 29 26 39 44 โ ๐๐๐ 97 44 45 45 34 {(33 38 30) โ (62)} 29 26 39 41 โ ๐๐๐ 97 44 45 45 30 {(33 38 30) โ (39)} 29 26 39 45 โ ๐๐๐ 97 44 45 45 34 {(33 38 30) โ (39)} 29 26 39 32 โ ๐๐๐ 97
1144 + 1305 + 1170 3619 ( 858 + 1102 + 780 ) = (2740 ) 754 + 754 + 1014 2522 โ ๐๐๐ 97 2728 + 1530 + 1755 6013 (2046 + 1292 + 1170) = (4508 ) 1798 + 884 + 1521 4203 โ ๐๐๐ 97 1364 + 1800 + 1935 5099 (1023 + 1520 + 1290) = (3833 ) 899 + 1040 + 1677 3616 โ ๐๐๐ 97 1672 + 1170 + 1980 4822 ( 1254 + 988 + 1320 ) = (3562 ) 1102 + 676 + 1716 3494 โ ๐๐๐ 97 1496 + 2790 + 1845 6131 (1122 + 2356 + 1230) = (4708 ) 986 + 1612 + 1599 4197 โ ๐๐๐ 97 1320 + 1755 + 2025 5100 ( 990 + 1482 + 1350 ) = (3822 ) 870 + 1014 + 1755 3639 โ ๐๐๐ 97 1496 + 1755 + 1440 4691 ( 1122 + 1482 + 960 ) = (3564 ) 986 + 1014 + 1248 3248 โ ๐๐๐ 97
30 24 0 96 46 32 55 50 27 69 70 2 20 52 26 56 39 50 35 72 47
Selanjutnya hasil perhitungan enkripsi pesan hill cipher disubsitusi kembali dengan tabel Encoding (tabel 1). Adapun hasil subsitusi pesan dapat dilihat pada tabel 6.
Tahap awal enkripsi menggunakan Algoritma Kunci Hill Cipher, pesan dan kunci yang diinput yaitu โada informasi pentingโ dan โstthmedanโ akan disubsitusi berdasarkan tabel diatas. Adapun rincian subsitusi adalah sebagai berikut:
Tabel 6. Hasil Enkripsi Pesan Hill Cipher 30 24 0 96 46 32 55 Ctabel Y A ยฉ u g 3 Ckarakter e 50 27 69 70 2 20 52 Ctabel b & C U 0 Ckarakter y 26 56 39 50 35 72 47 Ctabel 4 n y J ( v Ckarakter a
Table 2. Proses Pengubahan Karakter P ke Angka d a i n f Pkarakter a 26 29 26 62 34 39 31 Ptabel r m a s i Pkarakter o 40 43 38 26 44 34 62 Ptabel e n t i n g Pkarakter p 41 30 39 45 34 39 32 Ptabel
Dari T a be l 6 diperoleh ciphertext pesan : eYAยฉug3yb&-CU0a4nyj(v . Enkripsi pesan dengan sistem dan dengan perhitungan manual menghasilkan ciphertext yang sama, ini
6
23 29 47 ๐๐๐๐๐ ๐พ = (3 23 33) 28 29 90
membuktikan bahwa sistem bekerja dengan baik dan benar. Selanjutnya adalah langkah-langkah proses kunci menjadi invers matriks sebagai berikut :
a. Menentukan kofaktor matriks K Setelah melakukan perhitungan minor matriks, dilakukan perhitungan kofaktor matriks sebagai berikut:
1. Matriks Pada langkah ini membentuk kunci menjadi matriks sebagai berikut: 44 45 45 ๐ = ( 33 38 30 ) 29 26 39
๐ด11 = (โ1)1+1 ร 23 = 1 ร 23 = 23 ๐ด12 = (โ1)1+2 ร 29 = โ1 ร 29 = โ29 ๐ด13 = (โ1)1+3 ร 47 = 1 ร 47 = 47 ๐ด21 = (โ1)2+1 ร 3 = โ1 ร 3 = 3 ๐ด22 = (โ1)2+2 ร 23 = 1 ร 23 = 23 ๐ด23 = (โ1)2+3 ร 33 = โ1 ร 33 = โ33 ๐ด31 = (โ1)3+1 ร 28 = 1 ร 28 = 28 ๐ด32 = (โ1)3+2 ร 29 = โ1 ร 29 = โ29 ๐ด33 = (โ1)3+3 ร 90 = 1 ร 90 = 90
2. Determinan Setelah tebentuknya matriks, proses berikut melakukan proses perhitungan determinan sebagai berikut : |๐พ| = 44 ร (38 30) โ 45 ๐ฅ ( 33 30 ) + 45 26 39 29 39 33 38 ร( ) 29 26 = 44 ร {(38 ร 39) โ (30 ร 26)} โ 45 ร {(33 ร 39) โ (29 ร 30)} + 45 ร {(33 ร 26) โ (29 ร 38)} = 44 ร (1482 โ 780) โ 4 ร (1287 โ 870) + 45 ร (858 โ 1102) = 1143 ๐๐๐ 9 = 76
Dari perhitungan di atas, maka kofaktor matriks K adalah sebagai berikut: 23 โ 29 ๐พ๐๐๐๐๐๐๐ก ๐พ = (โ3 23 28 โ 29
3. Adjoint matriks Proses adjoint matriks melakukan perhitungan dengan langkah-langkah sebagai berikut ini: a. Menentukan minor matriks K Pertama-tama melakukan perhitungan minar matriks sebagai berikut:
47 โ 33) 90
b. Adjoin Matriks K Adjoin matriks K adalah transpose dari matriks kofaktor K yang diperoleh dengan mengubah posisi baris pada matriks kofaktor ke posisi kolom ataupun sebaliknya. Oleh karena itu, adjoin untuk matriks K adalah :
38 30 ๐11 = | | = 38 ร 39 โ 26 ร 30 = 1482 โ 780 26 39 = 702 ๐๐๐ 97 = 23 33 30 ๐12 = | | = 33 ร 39 โ 29 ร 30 = 1287 โ 870 29 39 = 417 ๐๐๐ 97 = 29 33 38 ๐13 = | | = 33 ร 26 โ 29 ร 38 = 858 โ 1102 29 26 = โ244 ๐๐๐ 97 = 47 45 45 ๐21 = | | = 44 ร 39 โ 26 ร 45 = 1755 โ 1170 26 39 = 585 ๐๐๐ 97 = 3 44 45 ๐22 = | | = 44 ร 39 โ 29 ร 45 29 39 = 1716 โ 1305 = 411 ๐๐๐ 97 = 23 44 45 ๐23 = | | = 44 ร 26 โ 29 ร 45 29 26 = 1144 โ 1305 = โ161 ๐๐๐ 97 = 33 45 45 ๐31 = | | = 45 ร 30 โ 38 ร 45 = 1350 โ 1710 38 30 = โ360 ๐๐๐ 97 = 28 44 45 ๐32 = | | = 44 ร 30 โ 33 ร 45 33 30 = 1320 โ 1485 = โ165 ๐๐๐ 97 = 29 44 45 ๐33 = | | = 44 ร 38 โ 33 ร 45 = 1672 โ 1485 33 38 = 187 ๐๐๐ 97 = 90
23 โ3 ๐ด๐๐(๐พ๐ด) = ๐พ ๐ = (โ29 23 47 โ 33
28 โ 29) 90
4. Invers matriks Setelah melakukan perhitungan determinan dan adjoint matriks maka dapat di lakukan proses perhitungan invers matriks sebagai berikut : ๐ด๐๐ (๐พ๐ด) |๐พ๐ด| 23 โ3 28 1 = (โ29 23 โ 29) ๐๐๐ 97 76 47 โ 33 90 23 โ3 28 = 76โ1 (โ29 23 โ 29) ๐๐๐ 97 47 โ 33 90 23 โ3 28 = 60 (โ29 23 โ 29) ๐๐๐ 97 47 โ 33 90 1380 โ 180 1680 = (โ1740 1380 โ 1740) ๐๐๐ 97 2820 โ 1980 5400 22 14 31 = ( 6 22 6 ) 7 57 65
๐พ โ1 =
Dari perhitungan di atas, maka minor matriks K adalah sebagai berikut:
7
Tabel 7. Hasil Pengubahan Kunci Matriks Ke Invers Matrik KItabel KIkarakter
22 W
14 O
31 F
6 G
22 W
6 G
7 H
57 5
Tabel 9 Tabel Matriks Dekripsi Tahap 1 2 W G H
65 @
Pada tabel 7 Diperoleh kunci invers matriks โWOfGWGH5@โ yang akan digunakan untuk melakukan dekripsi hill cipher. Perhitungan Manual Enkripsi myszkowski transpotion Sebelum melakukan enkripsi dengan algoritma Myszkowski transposition, pesan terlebih dahulu disusun menjadi sebuah matriks. Pada proses ini kunci โWOfGWGH5@โ disusun menjadi matriks dengan panjang kolom sama dengan panjang key โ2 4 3โ. Sedangkan panjang baris sama dengan pembulatan ke atas dari panjang pesan setelah dibagi dengan panjang kolom. Berikut adalah proses penyusunan matriks:
Tabel 10 Tabel Matriks Dekripsi Tahap 2 2 W G H
4
3 f G @
Kemudian, ciphertext โOW5โ disusun dari kiri ke kanan pada kolom 2 atau kolom kunci 4. Proses ini ditunjukkan pada Tabel 11 Tabel 11 Tabel Matriks Dekripsi Tahap 3 2 W G H
kolom = panjang key = 3 baris = 21โ3 = 7 pesan disusun perbarisnya atau dari kiri ke kanan. Matriks enkripsi pesan dapat dilihat pada Tabel 8. Tabel 8. Tabel Matriks Enkripsi 4 O W 5
3
Kemudian, ciphertext โfG@โ disusun dari atas ke bawah pada kolom 3 atau kolom kunci 3. Proses ini ditunjukkan pada Tabel 10
B.
2 W G H
4
4 O W 5
3 f G @
Pada proses dekripsi Myszkowski transposition dilakukan pembacaan matriks setelah matriks disusun seperti Tabel 11. Pembacaan matriks dilakukan perbarisnya atau dari kiri ke kanan, sehingga diperoleh pesan โWOfGWGH5@โ.
3 f G @
Pada proses enkripsi Myszkowski transposition matriks dibaca sesuai urutan angka dari yang terkecil hingga angka terbesar perkolomnya atau dari atas ke bawah. Untuk angka yang sama, matriks dibaca perbarisnya atau dari kiri ke kanan. Sehingga diperoleh ciphertext โWGHfG@OW5โ.
D.
Perhitungan Manual Dekripsi Hill Cipher Sebelum melalukan proses dekripsi menggunakan Algoritma Kunci Hill Cipher, karakter enkripsi dan karakter invers matriks terlebih dahulu disubsitusi dengan tabel encoding (Tabel 1) sebagai berikut:
C.
Perhitungan Manual Dekripsi myszkowski transpotion Pesan yang akan didekripsikan yaitu ciphertext hasil dari enkripsi algoritma Myszkowski transposition. Proses dekripsi dilakukan dengan menyusun ciphertext kembali menjadi matriks terlebih dahulu. Pada proses penyusunan matriks, ciphertext โWGHfG@OW5โ disusun menjadi matriks dengan panjang kolom sama dengan panjang key โ2 4 3โ. Sedangkan panjang baris sama dengan pembulatan ke atas dari panjang ciphertext1 setelah dibagi dengan panjang kolom. Berikut adalah proses penyusunan matriks : kolom = panjang key = 3 baris = 21/3 = 7
Tabel 12. Proses Pengubahan Karakter Enkripsi Pesan Ke Angka Y A ยฉ u g 3 Ckarakter e 30 24 0 96 46 32 55 Ctabel b & 0 C U Ckarakter y 50 27 69 52 70 2 20 Ctabel 4 n y J ( v Ckarakter a 26 56 39 50 35 72 47 Ctabel Tabel 13. Proses Pengubahan Karakter Invers Matriks Ke Angka KIkarakter W O F G W G H 5 @ KItabel 22 14 31 6 22 6 7 57 65 Pada tahap awal dekripsi menggunakan algoritma Hill Cipher, angka pada Ctabel dan KItabel dibagi menjadi blok yang masing-masing bloknya berukuran 3 karakter sebagai berikut:
Ciphertext diisi satu-persatu ke dalam matriks perkolomnya sesuai kunci dari yang terkecil hingga terbesar. Untuk angka yang sama ditulis dari kiri ke kanan. Berikut ini adalah proses penyusunan matriks dekripsi. Ciphertext โWGHโ disusun dari atas ke bawah pada kolom 1 atau kolom kunci 2 terlebih dahulu. Proses ini ditunjukkan pada Tabel 9
8
Tabel 14. Prsoses Membagi Karakter Menjadi Blok Ukuran 3 Karakter KItabel Ctabel 22 14 31 30 96 55 69 20 56 35 6 22 6 24 46 50 70 52 39 72 7 57 65 26 32 27 2 26 50 47
2.
3.
4. Kemudian dilakukan proses dekripsi ๐พ๐ = ๐พ๐ผ. ๐ถ๐ (๐๐๐ 97) dimana hasil dekripsi adalah hasil kali antara KIn (KItabel) dan Cn (Ctabel) mod 97. Rincian perhitungan proses enkripsi dapat dilihat pada tabel 15.
5.
Tabel 15. Prsoses Penghitungan Dekripsi Pesan ((KItabel* Ctabel))* mod 97 22 14 {( 6 22 7 57 โ ๐๐๐ 97 22 14 {( 6 22 7 57 โ ๐๐๐ 97 22 14 {( 6 22 7 57 โ ๐๐๐ 97 22 14 {( 6 22 7 57 โ ๐๐๐ 97 22 14 {( 6 22 7 57 โ ๐๐๐ 97 22 14 {( 6 22 7 57 โ ๐๐๐ 97 22 14 {( 6 22 7 57 โ ๐๐๐ 97
31 30 6 ) โ (24)} 65 0 31 96 6 ) โ (46)} 65 32 31 55 6 ) โ (50)} 65 27 31 69 6 ) โ (70)} 65 2 31 20 6 ) โ (52)} 65 26 31 56 6 ) โ (39)} 65 50 31 35 6 ) โ (72)} 65 47
Hasil perkalian
C
660 + 336 + 0 996 ( 180 + 528 + 0 ) = ( 708 ) 210 + 1368 + 0 1578 โ ๐๐๐ 97 2112 + 644 + 992 3748 ( 576 + 1012 + 192 ) = (1780 ) 672 + 2622 + 2080 5374 โ ๐๐๐ 97 1210 + 700 + 837 2747 ( 330 + 1100 + 162 ) = (1592 ) 385 + 2850 + 1755 4990 โ ๐๐๐ 97 1518 + 980 + 62 2560 ( 414 + 1540 + 12 ) = (1966) 483 + 3990 + 130 4603 โ ๐๐๐ 97 440 + 728 + 806 1974 ( 120 + 1144 + 156 ) = (1420 ) 140 + 2964 + 1690 4794 โ ๐๐๐ 97 1232 + 546 + 1550 3328 ( 336 + 858 + 300 ) = (1494 ) 392 + 2223 + 3250 5865 โ ๐๐๐ 97 770 + 1008 + 1457 3235 ( 210 + 1584 + 282 ) = (2076) 245 + 4104 + 3055 7404 โ ๐๐๐ 97
26 29 26 62 34 39
6.
31 40 43
7.
38 26 44 34 62 41
5.2 Saran Berikut ini adalah hal-hal yang menjadi saran dari penelitian ini atau untuk penelitian selanjutnya yang terkait. 1. Didalam penelitian ini pesan yang akan dienkripsi dan didekripsi dalam aplikasi cloud, diharapkan kedepannya pesan yang dienkripsi dan didekripsi berupa aplikasi chat ataupun email. 2. Mengkombinasikan algoritma hill cipher dengan algoritma kriptografi lainnya, baik algoritma simetris maupun asimetris. 3. Didalam penelitian ini pesan yang dirahasiakan merupakan pesan teks, diharapkan kedepannya dapat diterapkan pada pesan suara ataupun citra. 4. Bahasa pemrograman yang digunakan adalah Java dan penerapannya pada smartphone Android, penelitian selanjutnya dapat diterapkan pada perangkat Windows Phone, IOS, atau yang lainnya. 5. Mengembangkan sistem dengan menambah file yang dapat diamankan seperti gambar, audio dan video
30 39 45 34 39 32
Tabel 16. Hasil Dekripsi Pesan Ptabel Pkarakter Ptabel Pkarakter Ptabel Pkarakter
26 a 40 o 41 p
29 d 43 r 30 e
26 a 38 m 39 n
62 26 a 45 t
34 i 44 s 34 i
39 n 34 i 39 n
31 f 62 32 g
Dari tabel 16 diperoleh pesan : โada informasi pentingโ dekripsi pesan dengan sistem dan dengan perhitungan manual menghasilkan pesan asli yang sama, ini membuktikan bahwa sistem bekerja dengan baik dan benar. 5.
Proses enkripsi dan dekripsi dari kombinasi algoritma Hill Cipher dan Myszkowski transposition memenuhi kriteria data. Proses pengiriman pesan secara cloud computing pada perangkat berbasis android berhasil diterapkan. Pada saat perhitungan determinan dari kunci hill cipher, apabila bernilai nol maka pesan yang di enkripsi yang akan di dekripsi kembali tidak akan berhasil menampilkan teks aslinya. Algoritma Myszkowski transposition mampu menutupi kelemahan kunci hill cipher, tergantung pada panjang kunci yang digunakan pada algoritma Myszkowski transposition. Namun, apabila menggunakan kunci Myszkowski transposition yang terdiri dari karakter yang sama maka tidak terjadi pengacakan dan kunci myszkowski transposition akan dibuat bersifat publik. Penyimpanan sistem tersebut masih bersifat lokal, yang belum disimpan di cloud computing dengan menggunakan hosting. Pada proses pengiriman pesan sudah menggunakan cloud computing yang di sediakan oleh firebase sebagai media cloud messaging.
Penutup Daftar pustaka [1] Monjur A. & M. Ashraf H. 2014. Cloud Computing and Security Issues in The Cloud. International Journal of Network Security & Its Applications (IJNSA), Vol.6, No.1 [2] Kromodmoeljo, S. 2010. Teori dan Aplikasi Kriptografi. SPK IT Consulting: Jakarta. ISBN 978-602-96233-0-7. [3] Widyanarko, A. 2007. Studi dan Analisis mengenai Hill Cipher, Teknik Kriptanalisis dan Upaya Penanggulangannya. Program
5.1 Kesimpulan Dari pembahasan dan hasil dari penelitian ini, maka dapat diperoleh beberapa kesimpulan sebagai berikut: 1. Pada penelitian ini, aplikasi kriptografi cloud pesan untuk merahasiakan pesan dengan menggunakan algoritma Hill Cipher dan Myszkowski transposition pada perangkat berbasis Android berhasil diterapkan.
9
Studi Teknik Informatika, Institut Teknologi Bandung. [4] Dwi P, Andi Kurniawan. 2012. Penerapan Algoritma Vigenere Cipher Pada Aplikasi Sms Android. International Journal of Computer Applications (0975 โ 8887) Volume 50โ No.19 [5] Shabara, S. 2015. Enkripsi Sms Pada Smartphone Berbasis Android Dengan Metode Vigenere Dan Transposisi Kolom. Skripsi. Universitas Dian Nuswantoro Semarang. [6] Asror, K. 2015. Peningkatan Sistem Keamanan Pesan Pada Perangkat Mobile Android Dengan Enkripsi Dekripsi Menggunakan Algoritma Affine Cipher Dan Vigenere Cipher. Skripsi. Universitas Dian Nuswantoro Semarang. [7] Imamah, Djunaidy, A., Husni, M. 2015. Penerapan AES untuk Otentikasi Akses Cloud Computing. Jurnal Simantec Vol. 4, No 1 Juni 2014 ISSN 2088-2130. [8] Bhowmick, A., Lal, A.V. & Ranjan, N. 2015. Enhanced 6x6 Playfair Cipher Using Double Myszkowski Transposition. International Journal Of Engineering Research And Technology 4(7): 1100-1104. [9] Bakefode, J., Ubale, S., Pingale. S.V. 2015. Developing Secure Cloud Storage System by Applying AES and RSA Cryptography Algorithms with Role Based Access Control Model. International Journal of Computer Applications (0975 โ 8887) Volume 118โ No.12, May 2015. [10] Jasleen, K., Sushil., G. 2016. Security in Cloud Computing using Hybrid of Algorithms. International Journal of Engineering Research and General Science Volume 4, Issue 2, March-April, 2016 ISSN 2091-2730. [11] Mirashe, Shivaji P., N.V. Kalyankar. 2010. Cloud Computing. Jurnal of computing, Volume 2 Issue 3, Maret 2010. [12] yuli andri, M,2009.Implementasi Algoritma Kriptografi Des ,Rsa Dan Algoritma Kompresi Lzw Pada Berkas Digital.skripsi.universitas sumatera utara [13] Rojali. 2011. Studi dan Implementasi Hill Cipher Menggunakan Binomial Newton Berbasis Komputer. Seminar Nasional Matematika dan Pendidikan Matematika, Jogyakarta. [14] Ambler, S. W. 2005. The Elements of UMLโข 2.0 Style. Cambridge University Press: Cambridge [15]
10