i
ANALISIS DAN PERANCANGAN KRIPTOGRAFI HYBRID DENGAN
ALGORITMA RSA, AES128 DAN SHA1 UNTUK
PENGIRIMAN FILE DOCUMENT
NASKAH PUBLIKASI
diajukan oleh
Rahadi Setiawan
12.11.6038
kepada
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER
AMIKOM YOGYAKARTA
YOGYAKARTA
2016
1
ANALISIS DAN PERANCANGAN KRIPTOGRAFI HYBRID
DENGAN ALGORITMA RSA, AES128 DAN SHA1 UNTUK
PENGIRIMAN FILE DOCUMENT
Rahadi Setiawan1), Dony Ariyus.2) 1) Teknik Informatika STMIK AMIKOM Yogyakarta
2)Magister Ilmu Komputer STMIK AMIKOM Yogyakarta
Jl Ringroad Utara, Condongcatur, Depok, Sleman, Yogyakarta Indonesia 55283
Email : rahadi.s@students.amikom.ac.id1), dony.a@amikom.ac.id2)
The growth of computer networking technology make a relationship between one computer each others. Thats not only make a lot of opportunity in developing of the computer applications but also make another chance for the threats of the conversion and data stealing.
An application that travese public network like internet, assumed could accessed by everyone including peoples or the parties that intend to steal or converting the datas. Because of that, to protect data from access, conversion, and blocking that done by authorities, a networking security devices must be available.
In a provision of security is required a network security which aim to overcome threat also prevent the infiltration. In providing of the network security is applying a hybrid cryptography with RSA, AES 128 and SHA1 algorithm as a network security foundation that in use.
Keywords: Cryptography, hybrid, network
security, RSA, AES 128, SHA-1.
1. Pendahuluan 1.1 Latar Belakang
Perkembangan teknologi jaringan
komputer menyebabkan keterkaitannya satu komputer dengan komputer lainnya. Hal ini tidak hanya membuka banyak peluang dalam pengembangan aplikasi komputer tetapi juga membuat peluang adanya ancaman terhadap pengubahan dan pencurian data.
Sebuah aplikasi yang melintasi jaringan publik seperti internet diasumsikan dapat diakses oleh siapapun termasuk orang-orang
atau pihak-pihak yang memang berniat untuk mencuri atau mengubah data. Oleh karena itu, untuk melindungi data terhadap akses, pengubahan dan penghalangan yang tidak dilakukan oleh pihak yang berwenang, peranti keamanan data yang melintas di jaringan komputer harus disediakan.
FBI, dari data Internet Crime Complaint Center (IC3) tercatat sejak April 2014 hingga June 2015. IC3 mendapatkan 992 laporan kasus ransomware di mana pada kasus ini
CryptoWall sebagai pembuat masalah.
Skema penipuan keuangan ini menargetkan individu dan pembisnis, awal mulanya korban mengklik iklan, email, atau lampiran yang terinfeksi, atau mengunjungi situs web yang terinfeksi. Setelah perangkat korban terinfeksi dengan varian ransomware, file korban menjadi terenkripsi.
Dalam penyediaan pengamanan
diperlukannnya sebuah Keamanan Jaringan dimana bertujuan untuk menanggulangi
ancaman serta mencegah terjadinya
penyusupan. Dalam penyedian Keamanan
Jaringan tersebut adapun rancangan
perangkat desktop JAVA. Menerapkan kriptografi hybrid dengan algoritma RSA, AES 128 dan SHA1 sebagai pondasi Keamanan Jaringan yang di gunakan. Sehingga diharapkan aplikasi dekstop ini dapat menjaga kerahasiaan file document serta informasi-informasi penting.
Berdasarkan latarbelakang yang telah dijabarkan di atas, maka penulis mengangkat skripsi dengan judul “Analisis Dan
2
Algoritma RSA, AES128, dan SHA1 Untuk Pengiriman File Document”. 1.2 Rumusan Masalah
Berdasarkan latar belakang yang telah disampaikan, Adapun pokok permasalahan dalam penelitian ini adalah Bagaimana merancang aplikasi kriptografi hybrid (RSA, AES128 dan SHA1) untuk pengiriman file (document)?
1.3 Batasan Masalah
Agar masalah yang diteliti tidak menyimpang maka diperlukan suatu batasan masalah. Dalam suatu penelitian ini peneliti membatasi masalah yang diteliti, yaitu pada aplikasi pengamanan pengiriman email enkripsi dan dekripsi pesan dengan algoritma kriptografi hybrid (RSA, AES128, dan SHA1). Adapun batasan masalah pada penelititan ini adalah sebagai berikut :
1. Aplikasi ini berbasis desktop Windows.
2. Aplikasi ini hanya menggunakan
algoritma meliputi: (RSA, AES128, dan SHA1) saja dalam proses enkripsi dekripsi pesan dan (document).
3. Krtiptografi Hybrid yang dimaksud adalah penggabungan algoritma simetri dan asimetri (RSA dengan AES128) kemudian menerapkan digital signature dengan fungsi hash SHA1.
4. Inputan ke apliksi berupa teks tertulis dan file (document) yang bisa dienkripsi dan didekripsi .
5. Peneliti tidak berfokus sepenuhya pada pembuatan program pendukung aplikasi tetapi pada implementasi dan hasil analisa dari program yang dibuat. 6. Sistem operasi yang digunakan peneliti
dalam pembuatan aplikasi kriptografi Hybrid (RSA, AES128, dan SHA1) dengan menggunakan Windows 10.
7. Pembuatan program pendukung
aplikasi kriptografi Hybrid (RSA, AES128, dan SHA1) menggunakan bahasa pemrograman JAVA.
8. Pembuatan program menggunakan
aplikasi pendukung yaitu (NetBeans 8.0.1).
9. Algoritma kriptografi, bahasa
pemrograman, sistem operasi, dan
program pendukung selain yang
disebutkan tidak dibahas dan tidak digunakan dalam penelitian ini.
10. Proses enkripsi dan dekripsi pada aplikasi ini memiliki batasan-batasan pada tiap proses algortima dan akan dijelaskan pada bab implementasi dan pembahasan.
1.4 Maksud dan Tujuan Penelitian
Untuk menunjang penguasaan ilmu
yang telah diberikan oleh lembaga
pendidikan Sekolah Tinggi Manajemen
Informatika dan Komputer AMIKOM
Yogyakarta, yang berorientasi pada
Teknologi Informasi dan Komputerisasi. Adapun maksud dan tujuan yang ingin dicapai dari penelitian ini adalah:
1.4.1 Internal
Pengertian tujuan internal yang
dimaksud adalah dilihat dari sisi penulis. Dalam hal ini penulis sebagai Mahasiswa Sekolah Tinggi Manajemen Informatika dan Komputer AMIKOM Yogyakarta adalah sebagai berikut:
1. Sebagai prasyarat untuk memperoleh
gelar Strata-1 Jurusan Teknik
Informatika di Sekolah Tinggi
Manajemen Informatika dan Komputer AMIKOM Yogyakarta.
2. Menerapkan ilmu teoritis yang didapat
selama mengikuti pendidikan di
Sekolah Tinggi Manajemen Informatika dan Komputer AMIKOM Yogyakarta. 3. Sebagai tolak ukur, sejauh mana ilmu
yang didapat diperkuliahan dapat
diterapkan kedalam lingkungan
permasalahan yang sebenarnya dengan cara terlibat langsung dalam proses pembuatan aplikasi.
4. Memperluas serta meningkatkan
kemampuan mahasiswa sebagai bekal untuk memasuki dunia kerja.
1.4.2 Eksternal
Bagi masyarakat luas dan dunia pendidikan pada umumnya penelitian ini mempunyai tujuan sebagai berikut:
1. Adanya implementasi dan hasil analisa yang mampu ditunjukkan sebagai bukti bahwa algoritma kriptografi Hybrid (RSA, AES128, dan SHA1) mampu digunakan sebagai aplikasi yang bisa merahasiakan pesan dan file (document)
yang sulit dipecahkan dengan
3
2. Menghasilkan sebuah program aplikasiberbasis desktop yang berfungsi untuk mengenkripsi dan dekripsi pesan dan file (document) dengan algoritma kriptografi Hybrid (RSA, AES128, dan SHA1) berbasis JAVA.
3. Sebagai bahan penelitian yang dapat dikembangkan dan diperbaiki pada penelitian berikutnya.
1.4 Metode Penelitian
Metode pengumpulan data yang
digunakan adalah studi pustaka dan
observasi, metode perancangan yang
digunakan adalah UML (Unified Modeling Language),dan user interface.
2. Pembahasan
Rosyadi (2012) , membuat aplikasi enkripsi dan dekripsi email menggunakan algoritma kriptografi AES. Aplikasi ini dibuat menggunakan Netbeans 7.0 dan login menggunakan email user yang terhubung dengan internet.
Aplikasi ini dibuat dengan tujuan untuk merancang dan membuat mail client yang aman dari hacker yang sering melakukan pengendusan data email tergantung dari platform yaitu Java SE Runtime Environment (JRE) dan Java Development Kit (JDK).
2.1 Perancangan Algoritma
Pada algoritma Hybrid terbagi atas 2 algoritma kunci yaitu RSA dan AES128 untuk penerapan tanda tangan menggunakan fungsi hash dengan algoritma SHA1. Algoritma RSA di gunakan untuk membuat kunci publik dan private dan algoritma AES128 untuk membuat chipertext dengan proses pesan di enkripsi dengan algoritma AES128. Untuk membuat kunci cipher menggunakan kunci private RSA. Sedangkan untuk tanda tangan proses yang di lakukan ialah menempatkan fungsi hash SHA1 pembangkit kunci.
2.2 Proses Pembentukan Kunci Publik dan Private Menggunakan RSA
Hal pertama yang dilakukan algoritma pembangkit kunci ini adalah membangkitkan 2 bilangan prima besar. Direkomendasikan besar p dan q adalah 512 bit sehingga n berukuran 1024bit. Karena p dan q adalah bilangan prima, maka ϕ(n) = (p – 1) x (q – 1). Kemudian interger e dipilih secara acak dari
ℤɸ(𝑛)yang memenuhi gcd (e,ϕ(n) ) sehingga
e merupakan generator pada ℤɸ(𝑛). Kemudia
algoritma pembangkit kunci RSA
menghitung d invers perkalian e pada ℤɸ(𝑛).
Pada akhirnya algoritma pembangkit kunci RSA menetapkan (e,n) sebagai kunci publik dan d sebagai kunci privat atau tetap di rahasiakan.Berikut ini akan di tuliskan langkah pembentukan kunci sebagai berikut:
1. Pilih dua bilangan prima,p dan q (rahasia).
2. Hitung n = p x q(Besaran n tidak perlu
dirahasiakan).
3. Hitung ϕ(n) = ( p – 1 ) x ( q - 1 ) 4. Pilih sebuah integer e yang di pilih
secara acak dari𝑒←𝑅ℤ
𝜙(𝑛) dengan syarat
gcd (e, ϕ(n)) = 1
5. Hitung kunci d, melalui d = 𝑒−1 pada
ℤ𝜙(𝑛)
6. Hasil dari algoritma di atas:
7. Kunci publik adalah pasangan (e, n). 8. Kunci privat adalah d.
Contoh:
Tentukan kunci publik dan kunci privat sistem kriptografi RSA jika menggunakan 2 bilangan prima p = 17 dan q = 31.
Jawab:
Berdasarkan langkah pembentukan
kunci dapat dihitung parameter kunci publik (e,n) sebagai serikut:
n = p x q =17 x 31 = 527 ϕ(n) = ( p – 1 ) x ( q - 1 ) = 16 x 30 = 480
Misalnya e dipilih 77, nilai 77 memenuhi syarat karena gcd (480,77) = 1. Jadi kunci adalah publik 𝐾publik = (77,527).
Sedangkan parameter d untuk kunci privat adalah d = 77−1 pada ℤ
480 dengan
menggunakan algoritma Extended Euclid (Algoritma) nilai d = 293. Jadi kunci privat adalah 𝐾privat = 293. Perhitungan gcd dari (480,77) = 1 gcd (480,77) = gcd (77,480 mod 77) = gcd (77,18) gcd (77,18) = gcd (18,77 mod 18) = gcd (18,5) gcd (18,5) = gcd (5,18 mod 5) = gcd (5,3) gcd (5,3) = gcd (3,5 mod 3) = gcd (3,2) gcd(3,2) = gcd (2,3 mode 2) = gcd (2,1) gcd(2.1) = gcd (1, 2 mode 1) = gcd (1,0) dan aplikasikan kasus dasar
gcd (1,0) = 1 karena itu, gcd (480,77) = 1.
4
2.3 Pembentukan Kunci AES
Transformasi terhadap state secara berulang dalam beberapa ronde. State yang menjadi keluaran ronke k menjadi masukan untuk ronde ke-k + 1. Teks asli direorganisasi menjadi sebuah state. Dan kemudian sebelum ronde 1 dimulai blok teks asli dicampur dengan kunci ronde ke-0 (AddRoundKey). Selanjutnya ronde ke-1 samape dengan rone ke-(Nr-1) dengan Nr adalah jumlah ronde
menggunakan 4 jenis transformasi
(SubBytes, ShiftRows, MixColumns dan AddRoundKey).AES128 beroperasi pada blok 128-bit dengan kunci 128-bit adalah sebagai berikut (di luar proses pembangkitan round key):
1. AddRoundKey: melakukan XOR antara state awal (plainteks) dengan cipher key. Tahap ini disebut juga initial round. 2. Putaran sebanyak Nr – 1 kali. Proses yang dilakukan pada setiap putaran adalah:
1. SubBytes: substitusi byte dengan menggunakan tabel substitusi (S-box).
2. ShiftRows: pergeseran baris-baris array state secara wrapping. 3. MixColumns: mengacak data di
masing-masing kolom array state. 4. AddRoundKey: melakukan XOR
antara state sekarang round key. 3. Final round: proses untuk putaran
terakhir: 1. SubBytes 2. ShiftRows 3. AddRoundKey
Proses ronde yang di gunakan AES128 adalah 10 ronde(Nr-10).
Gambar 1. Proses Ronde Pada AES128 2.4 Pembentukan Kunci SHA-1
Algoritma Pembentukan Kunci sama dengan system kriptografi RSA, yaitu
menghasilkan kunci public 𝐾𝑝𝑢𝑏𝑙𝑖𝑐 = (e, n)
dank unci Privat 𝐾𝑝𝑟𝑖𝑣𝑎𝑡𝑒 = d.
2.5 Analisis SWOT
Aplikasi ini dibuat berdasarkan adanya peluang, maka dari itu analisis yang tepat digunakan adalah analisis SWOT, dimana yang akan dievaluasi adalah kekuatan (strengths), kelemahan (weakness), peluang (opportunities) dan ancaman (threats).
Tabel 2.5 Matriks SWOT
Internal Eksternal Strengths (S) Weakness (W) Opportunit ies (O) Strategi SO Membuat aplikasi kriptografi yang mampu mengenkrips i pesandan file (document) Strategi WO Aplikasi ini mampu melampirka n file jika pengguna mengingink an sebuah document yang hendak dikirim Threats (T) Strategi ST Menerapkan algortima hybrid RSA, AES128 yang mempunyai 2 buah kunci yaitu kunci Assimetri RSA (public dan private) dan Symmetri AES sehingga keamanan informasi pesan dan file (document) akan sangat terjamin. Strategi WT Untuk memudahka n user dalam mengaplika sikan aplikasi ini, aplikasi ini dirancang menggunak an java GUI (swing,AW T) serta JTatto. Menerapka n pendekatan User- Centered-Design perancanga n antarmuka yang melibatkan pengguna.
5
2.6 UML
Perancangan sistem yang digunakan aplikasi ini adalah UML (Unified Modeling Language). UML adalah bahasa standar yang
digunakan untuk menjelaskan dan
memvisualisasikan fungsi-fungsi dalam
proses analisis dan desain berorientasi objek.
2.6.1 Use Case Diagram
Use Case Diagram adalah gambar dari beberapa atau seluruh aktor dan use case dengan tujuan mengenali interaksi mereka dalam suatu sistem. Use Case Diagram menjelaskan apa yang dilakukan oleh sistem yang akan dibangun dan siapa yang berinteraksi dengan sistem. Sekumpulan Use Case menggambarkan sebuah sistem dalam syarat-syarat pada apa yang dilakukan pada sistem. Komponen utama Use Case Modeling ini adalah Actor dan Use Case itu sendiri.
Gambar 2. Use Case Diagram 2.7 Interface
Perancangan GUI ini adalah rancangan tampilan aplikasi atau yang biasa disebut
dengan Interface yang akan dibuat,
bagaimana aplikasi akan terlihat dilayar.
Gambar 3. Menu Utama
3. Penutup
3.1 Kesimpulan
Berdasarkan penjelasan yang terdapat pada bab awal sampai akhir dari “Analisis dan Perancangan Kriptografi Hybrid dengan Algoritma RSA, AES128, dan SHA-1 untuk
Pengiriman File Document”, maka dapat disimpulkan :
1. Proses perancangan aplikasi yang dibuat ini telah sesuai dengan latar belakang masalah dan batasan masalah yang ada.
2. Pengimplementasian algoritma Hybrid
RSA, AES128, SHA-1 untuk
mengamankan informasi pesan email telah berhasil dibuat. Aplikasi yang dibangun tersebut dapat melakukan
proses pembangkitan kunci dan
penyimpanan kunci kedalam file teks .txt atau .doc. Pengenkripsian pesan teks maupun document serta mengirim pesan yang telah dienkripsi berjalan dengan baik.
3. Symmetric Key Standar AES
menggunakan kunci rahasia yang sama dibagi antara pengirim dan penerima, yang akan digunakan untuk enkripsi maupun dekripsi.
4. Asimetris standar key RSA
menggunakan sepasang kunci dari public key dan private key. Umumnya, public key digunakan untuk enkripsi pada pengirim akhir dan sebuah private key digunakan untuk dekripsi pada akhir penerima. Juga keaslian data dan
integritas didirikan dengan
menggunakan tanda tangan digital. 5. Algoritma Hybrid (RSA, AES128, dan
SHA-1) dikarenakan algoritma
asimetris sangat matematika intensif mereka tidak besar pada enkripsi volume data yang besar, sehingga Anda dapat membuat kunci sesi sementara yang Anda mengenkripsi dengan RSA dan kemudian menggunakannya kunci sesi untuk mengenkripsi data anda yang lebih besar dengan algoritma simetris seperti AES.
3.2 Saran
Dalam penulisan skripsi ini tentunya masih terdapat banyak kekurangan, namun tidak menutup kemungkinan untuk dapat
disempurnakan untuk pengembangan
selanjtnya serta dapat meningkatkan
fungsional dan manfaat dari aplikasi ini. Beberapa hal yang mungkin dapat dilakukan untuk pengembangan aplikasi ini yaitu :
1. Memperbaiki Graphical User Interface (GUI) agar lebih menarik dan lebih user friendly.
6
2. Menambahkan fitur Terima Pesandalam aplikasi.
3. Menambahkan fitur Dekripsi pesan dan file terpisah.
4. Menambahkan fitur terima file agar saat mengambil file, sehingga tidak melalui gmail.
Daftar Pustaka
[1] A. Rosyadi, “Implementasi Algoritma
Kriptografi AES Untuk Enkripsi Dan Dekripsi Email,” TRANSIENT, vol. 1, no. 3, pp. 63–67, 2012.
[2] S. Hamda, Perancangan Aplikasi
Berbasis Android untuk Menyandikan dan Menyembunyikan Berkas pada Data Citra Menggunakan Algoritma
Kriptografi AES dan Metode
Steganografi LSB. Yogyakarta:
STMIK AMIKOM YOGYAKARTA, 2015.
[3] M. Agus Mahardika, "Implementasi Algoritma Kriptografi Elgamal Untuk
Keamanan Pengiriman Email"
Yogyakarta: STMIK AMIKOM
YOGYAKARTA, 2016.
[4] D. Ariyus, Kriptografi Keamanan
Data dan Komunikasi. Yogyakarta: GRAHA ILMU, 2006.
[5] D. Ariyus, Pengantar Ilmu Kriptografi
Teori, Analisis, dan Implementasi. Yogyakarta: ANDI, 2008.
[6] O. Menezes and Vanstone, Handbook
of Applied Cryptography. USA: CRC Press, Inc, 1996.
[7] R. Sadikin, Kriptografi Untuk
Keamanan Jaringan, Yogyakarta:
ANDI, 2012.
[8] R. Munir, Kriptografi. Bandung:
Informatika, 2006.
[9] K. Ganesh Kadam and V. Khaidar,
"Hybrid RSA-AES Encryption for Web Services," Ijtra.Com, pp. 51-56, Sep. 2015.
Biodata Penulis
Rahadi Setiawan, memperoleh gelar Sarjana
Komputer (S.Kom), Jurusan Teknik
Informatka STMIK AMIKOM Yogyakarta, lulus tahun 2017.
Dony Ariyus, memperoleh gelar Magister
Ilmu Komputer (M.Kom) UGM Yogyakarta tahun 2010. Saat ini menjadi dosen tetap di STMIK AMIKOM Yogyakarta.