• Tidak ada hasil yang ditemukan

RSA ENCRYPTION BASED ON RSA-ELGAMAL KEY GENERATION FOR ASCII TEXT DATA

N/A
N/A
Protected

Academic year: 2021

Membagikan "RSA ENCRYPTION BASED ON RSA-ELGAMAL KEY GENERATION FOR ASCII TEXT DATA"

Copied!
21
0
0

Teks penuh

(1)

RSA ENCRYPTION BASED ON RSA-ELGAMAL KEY

GENERATION FOR ASCII TEXT DATA

Diajukan Sebagai Syarat Untuk Menyelesaikan Pendidikan Program Strata-1 Pada

Jurusan Teknik Informatika

Oleh :

Ricardo

NIM : 09021281419132

Jurusan Teknik Informatika

FAKULTAS ILMU KOMPUTER UNIVERSITAS SRIWIJAYA 2019

(2)
(3)
(4)
(5)

viii

KATA PENGANTAR

Puji syukur kepada Tuhan Yang Maha Esa atas berkat dan rahmat-Nya yang telah diberikan kepada Penulis sehingga dapat menyelesaikan Tugas Akhir ini dengan baik. Tugas akhir ini disusun untuk memenuhi salah satu syarat guna menyelesaikan pendidikan program Strata-1 pada Fakultas Ilmu Komputer Program Studi Teknik Informatika di Universitas Sriwijaya.

Untuk selanjutnya penyusun mengucapkan banyak terima kasih kepada pihak-pihak yang telah membantu dalam penyelesaian skripsi ini, yaitu :

1. Dekan Fakultas Ilmu Komputer Universitas Sriwijaya, Jaidan Jauhari, S.Pd., M.T.

2. Ketua Jurusan Teknik Informatika Universitas Sriwijaya, Rifkie Primartha, M.T.

3. Orang tua, Vredy Tan dan Nelly, Saudara Kenedy, Saudari Meilinda dan seluruh keluarga besar yang selalu mendoakan, motivasi, menasehati, serta memberikan dukungan, baik moral maupun material.

4. Pembimbing I, Drs. Megah Mulya, M.T dan pembimbing II, Alfarissi, M.Comp.Sc yang telah membimbing, mengarahkan dan memberikan motivasi dalam proses perkuliahan dan pengerjaan Tugas Akhir.

5. Supervisor yang telah membimbing penulis dalam menyelesaikan Projek Sarjana Muda (PSM 1) di Universiti Teknologi Malaysia, Dr. Mazleena Salleh. 6. Penguji I, Alvi Syahrini Utami, M.Kom dan penguji II, Muhammad Ali Buchari, M.T yang telah memberikan masukan dan ilmu pengetahuan kepada penulis.

7. Dosen Program Studi Teknik Informatika Fakultas Ilmu Komputer Universitas Sriwijaya.

8. Staf Tata Usaha yang telah membantu dalam kelancaran proses administrasi dan akademik selama masa perkuliahan.

9. Teman-teman IF Reguler dan Bilingual, yang selalu berjuang bersama dalam menempuh ilmu.

10. Senior di jurusan Informatika dan teman dekat dari penulis yang telah menemani kehidupan penulis, tempat berbagi cerita, serta menjadi pendengar setia dalam keluh kesah penulis.

11. Semua pihak yang tidak dapat penulis sebutkan satu-persatu yang telah banyak membantu dan berperan bagi penulis terutama dalam penyelesaian tugas akhir ini, terima kasih banyak atas semuanya.

Palembang,

(6)

DAFTAR ISI

Halaman

HALAMAN JUDUL ... i

HALAMAN PENGESAHAN ... ii

HALAMAN TANDA LULUS UJIAN SIDANG TUGAS AKHIR ... iii

HALAMAN PERNYATAAN ... iv

MOTTO DAN PERSEMBAHAN ... v

ABSTRACT ... vi

ABSTRAK ... vii

KATA PENGANTAR ... viii

DAFTAR ISI ... ix

DAFTAR GAMBAR ... xii

DAFTAR TABEL ... xiii

DAFTAR LAMPIRAN ... xiv

BAB I PENDAHULUAN

1.1 Pendahuluan ... I-1 1.2 Latar Belakang ... I-1 1.3 Rumusan Masalah ... I-3 1.4 Tujuan Penelitian ... I-4 1.5 Manfaat Penelitian ... I-4 1.6 Batasan Masalah ... I-4 1.7 Sistematika Penulisan ... I-5 1.8 Kesimpulan ... I-6

BAB II TINJAUAN PUSTAKA

2.1 Pendahuluan ... II-1 2.2 Kriptografi ... II-1 2.2.1 Kriptografi Asimetris ... II-3 2.3 RSA ... II-5 2.3.1 Key Generation ... II-5 2.3.2 Enkripsi ... II-6 2.4 ElGamal ... II-7 2.4.1 Key Generation ... II-7 2.4.2 Enkripsi ... II-8 2.5 Penelitian Lain Yang Relevan ... II-10

2.5.1 Ni Made Satvika Iswari (2017) ... II-10 2.5.2 Ahmad Steef, M. N. Shamma and A. Alkhatib (2015) ... II-11 2.6 Kesimpulan ... II-12

(7)

x BAB III METODOLOGI PENELITIAN

3.1 Pendahuluan ... III-1 3.2 Unit Penelitian ... III-1 3.3 Data ... III-1 3.3.1 Jenis dan Sumber Data ... III-1 3.3.2 Metode Pengumpulan Data ... III-1 3.4 Tahapan Penelitian ... III-2 3.4.1 Menetapkan Kerangka Kerja ... III-2 3.4.2 Menetapkan Kriteria Pengujian ... III-3 3.4.3 Menetapkan Format Data Pengujian ... III-4 3.4.4 Menentukan Alat yang Digunakan Dalam Pelaksanaan

Penelitian ... III-4 3.4.5 Melakukan Pengujian Penelitian ... III-5 3.4.6 Melakukan Analisia Hasil Pengujian Dan Membuat

Kesimpulan ... III-5 3.5 Metode Pengembangan Perangkat Lunak ... III-6 3.5.1 Rational Unified Process ... III-6 3.5.2 Fase Insepsi ... III-7 3.5.3 Fase Elaborasi ... III-8 3.5.4 Fase Konstruksi ... III-8 3.5.5 Fase Transisi ... III-9 3.6 Manajemen Proyek Penelitian ... III-10 3.7 Kesimpulan ... III-18

BAB IV PENGEMBANGAN PERANGKAT LUNAK

4.1 Pendahuluan ... IV-1 4.2 Fase Insepsi ... IV-1 4.2.1 Pemodelan Bisnis ... IV-2 4.2.2 Kebutuhan Sistem ... IV-3 4.2.2.1Fitur Key Generation ... IV-3 4.2.2.2Fitur Enkripsi ... IV-3 4.2.2.3Fitur Dekripsi ... IV-3 4.2.3 Analisis dan Desain ... IV-4 4.2.3.1 Analisis Kebutuhan Perangkat Lunak ... IV-5 4.2.3.2 Analisis Key Generation ... IV-5 4.2.3.3 Desain Perangkat Lunak ... IV-6 1. Model Use Case ... IV-6 2. Diagram Aktivitas ... IV-11 4.3 Fase Elaborasi ... IV-13 4.3.1 Pemodelan Bisnis ... IV-13 4.3.1.1Perancangan Data ... IV-13 4.3.1.2Perancangan Antarmuka ... IV-13 4.3.2 Kebutuhan Sistem ... IV-16 4.3.3 Diagram Sequence ... IV-17 4.4 Fase Konstruksi ... IV-20 4.4.1 Diagram Kelas ... IV-21 4.4.2 Implementasi ... IV-21

(8)

4.4.2.1Implementasi Kelas ... IV-21 4.4.2.2Implementasi Antarmuka ... IV-22 4.5 Fase Transisi ... IV-23 4.5.1 Permodelan Bisnis ... IV-23 4.5.2 Kebutuhan Sistem ... IV-23 4.5.3 Rencana Pengujian ... IV-24 4.5.3.1Rencana Pengujian Use Case Key Generation .... IV-24 4.5.3.2Rencana Pengujian Use Case Encrypt... IV-25 4.5.3.3Rencana Pengujian Use Case Decrypt ... IV-25 4.5.4 Implementasi ... IV-26 4.5.4.1Pengujian Use Case Key Generation... IV-26 4.5.4.2Pengujian Use Case Encrypt ... IV-27 4.5.4.3Pengujian Use Case Decrypt ... IV-28 4.6 Kesimpulan ... IV-29

BAB V HASIL DAN ANALISIS PENELITIAN

5.1 Pendahuluan ... V-1 5.2 Percobaan Penelitian ... V-1 5.3 Hasil Key Generation ... V-2 5.4 Analisis Hasil Penelitian ... V-3 5.5 Kesimpulan ... V-3

BAB VI KESIMPULAN DAN SARAN

6.1 Pendahuluan ... VI-1 6.2 Kesimpulan ... VI-1 6.3 Saran ... VI-2

(9)

xii

DAFTAR GAMBAR

Halaman

II-1. Enkripsi Simetris ... II-3 II-2. Enkripsi Asimetris. ... II-4 III-1. Tahapan Pengujian Penelitian ... III-5 III-2. Arsitektur RUP (Kruchten, 2000) ... III-6 IV-1. Diagram Use Case RSA ... IV-2 IV-2. Diagram Use Case ... IV-6 IV-3. Diagram Aktivitas Use Case GenerateKey ... IV-11 IV-4. Diagram Aktivitas Use Case Encrypt ... IV-12 IV-5. Diagram Aktivitas Use Case Decrypt ... IV-12 IV-6. Rancangan Antarmuka Key Generation ... IV-14 IV-7. Rancangan Antarmuka Encrypt... IV-15 IV-8. Rancangan Antarmuka Decrypt ... IV-16 IV-9. Sequence Diagram Key Generation ... IV-18 IV-10. Sequence Diagram Encryption ... IV-19 IV-11. Sequence Diagram Decryption ... IV-20 IV-12. Antarmuka Menu Utama ... IV-23 IV-13. Antarmuka Output View ... IV-27 V-1. Tampilan Waktu Komputasi Key Generation RSA dan RSA-

(10)

DAFTAR TABEL

Halaman

II-1. Daftar Ukuran Kunci yang Disarankan (BlueKrypt, 2019) ... II-2 II-2. Algoritma RSA dan ElGamal ... II-9 III-1. Rancangan Tabel Waktu Komputasi Key Generation RSA ... III-4 III-2. Rancangan Tabel Waktu Komputasi Key Generation RSA-

ElGamal ... III-4 III-3. Tabel Penjadwalan Penelitian dalam Bentuk Work Breakdown

Structure (WBS) ... III-10 IV-1. Kebutuhan Fungsional ... IV-4 IV-2. Kebutuhan Non Fungsional ... IV-4 IV-3. Definisi Aktor Use Case ... IV-7 IV-4. Definisi Use Case ... IV-7 IV-5. Skenario Use Case GenerateKey ... IV-8 IV-6. Skenario Use Case Encrypt ... IV-9 IV-7. Skenario Use Case Decrypt ... IV-10 IV-8. Implementasi Kelas ... IV-21 IV-9. Rencana Pengujian Use Case Key Generation ... IV-25 IV-10. Rencana Pengujian Use Case Encrypt ... IV-25 IV-11. Rencana Pengujian Use Case Decrypt ... IV-26 IV-12. Pengujian Use Case Key Generation ... IV-26 IV-13. Pengujian Use Case Encrypt ... IV-27 IV-14. Pengujian Use Case Decrypt ... IV-28 V-1. Hasil Waktu Komputasi Key Generation ... V-2

(11)

xiv

DAFTAR LAMPIRAN

Halaman

(12)
(13)
(14)

BAB I PENDAHULUAN

1.1 Pendahuluan

Bab ini membahas mengenai latar belakang penelitian RSA Encryption Based on RSA-ElGamal Key Generation for ASCII Text Data yang akan dibahas secara umum dan singkat pada latar belakang.

1.2 Latar Belakang

Keamanan informasi adalah praktik untuk mencegah akses informasi yang tidak sah. Bidang perhatian utama dari keamanan informasi adalah kerahasiaan, otentikasi, integritas, penolakan, dan ketersediaan. Kriptografi adalah salah satu topik studi dalam keamanan informasi. Kriptografi memiliki pengaruh besar dalam banyak aplikasi dunia nyata, seperti perdagangan elektronik, kartu pembayaran berbasis chip, mata uang digital, kata sandi komputer, dan komunikasi militer.

Berdasarkan waktu, kriptografi dibagi menjadi dua kategori: klasik dan modern. Kriptografi klasik terutama difokuskan pada pesan enkripsi. Kriptografi klasik didasarkan pada transposisi dan subtitusi sandi. Di sisi lain, kriptografi modern memiliki fokus yang sama dengan keamanan informasi. Kriptografi modern didasarkan pada matematika, termasuk kompleksitas komputasi, dan teori bilangan. Berdasarkan kuncinya, kriptografi modern dibagi menjadi dua kategori: simetris dan asimetris. Kriptografi simetris memiliki kunci yang sama untuk

(15)

I–2

pengirim dan penerima. Kriptografi asimetris menggunakan kunci yang berbeda tetapi berhubungan secara matematis.

Kriptografi asimetris sering didasarkan pada kompleksitas komputasi teori bilangan seperti faktorisasi bilangan bulat dan logaritma diskrit. RSA adalah salah satu kriptografi asimetris berdasarkan faktorisasi bilangan bulat, sedangkan ElGamal didasarkan pada logaritma diskrit. Dalam penelitian ini, diterapkan enkripsi RSA berdasarkan RSA-ElGamal key generation untuk data teks ASCII.

Kriptografi kunci publik memiliki kelemahan dalam kecepatan karena pertukaran antara efisiensi dan keamanan (Mahajan & Singh, 2014). Pada saat itu, penulis RSA menyarankan bilangan prima yang digunakan untuk membangkitkan kunci memiliki panjang lebih dari 100 digit (330 bit) (Rivest et al., 1978). Bilangan prima p dan q harus besar sehingga tidak efisien bagi siapa pun untuk memfaktorisasi n = p × q (Rivest et al., 1978). Semakin besar bilangan prima, semakin tidak efisien untuk memfaktorisasi n, tetapi semakin lambat untuk membangkitkan kunci. Di sisi lain, membangkitkan kunci dengan bilangan prima kecil akan mempercepat perhitungan, tetapi akan lebih mudah bagi cryptanalyst untuk memfaktorisasi n. Oleh karena itu, dibutuhkan pengukuran waktu komputasi key generation dengan ukuran kunci yang berbeda untuk melihat pengaruh panjang kunci terhadap waktu untuk key generation.

Pada 2016, Iswari mengklaim bahwa perhitungannya untuk key generation RSA yang dimodifikasi menggunakan 256 bit lebih cepat daripada RSA dengan 1024 bit dengan mempertahankan faktor keamanan. Saat ini, banyak peneliti menyarankan bahwa ukuran kunci yang digunakan untuk menghasilkan kunci RSA

(16)

I–3

harus setidaknya 2048 bit. Karena itu, panjang kunci juga perlu ditingkatkan untuk mengikuti standar keamanan.

Cryptool, sebuah perangkat lunak untuk enkripsi, menunjukkan bahwa RSA biasanya menghasilkan ciphertext hanya dalam format angka seperti: desimal, biner, oktal, dan heksadesimal. Tetapi pengguna menginginkan ciphertext dalam bentuk ASCII. Pesan yang ditampilkan sebagai karakter ASCII akan meningkatkan keamanan pesan. Mengubah karakter ASCII ke angka itu mudah, tetapi bagaimana cara mengubah angka besar menjadi ASCII? Beberapa karakter dalam ASCII direpresentasikan sebagai angka dalam dua digit dan sisanya dalam tiga digit. Misalnya, 'H' direpresentasikan sebagai 72, 'i' direpresentasikan sebagai 105, dan '!' Direpresentasikan sebagai 33, jadi "Hi!" Dikonversi menjadi 7210533, tetapi tidak ada karakter ASCII yang diwakili bilangan desimal yang lebih dari 3 digit, bahkan dengan membagi jumlah digit, juga tidak mungkin dilakukan karena jumlah digit tidak sama untuk setiap karakter ASCII. Lebih lanjut, teks harus direpresentasikan sebagai angka desimal sekecil mungkin, sehingga enkripsi akan lebih efisien. Oleh karena itu, encoding pesan sebelum dan sesudah enkripsi akan meningkatkan waktu komputasi untuk mendekripsi ciphertext.

1.3 Rumusan Masalah

Rumusan permasalahan yang diselesaikan dalam penelitian ini adalah sebagai berikut:

1. Bagaimana mekanisme key generation RSA – ElGamal untuk enkripsi dan dekripsi text ASCII?

(17)

I–4

2. Bagaimana hasil dari pengaruh panjang kunci yang berbeda pada key generation RSA – ElGamal?

1.4 Tujuan Penelitian

Tujuan penelitian ini adalah mengetahui pengaruh panjang kunci yang berbeda terhadap waktu komputasi key generation RSA – ElGamal.

1.5 Manfaat Penelitian

Manfaat dari penelitian ini adalah sebagai berikut:

1. Memahami RSA dan ElGamal sebagai metode kriptografi;

2. Mampu menerapkan teknik key generation, enkripsi dan dekripsi RSA – ElGamal pada data teks ASCII;

3. Hasil penelitian dapat digunakan untuk referensi dalam penelitian lainnya yang sejenis yang menggunakan RSA dan ElGamal dan teks ASCII.

1.6 Batasan Masalah

Batasan masalah pada penelitian ini adalah sebagai berikut:

1. Metode key generation yang digunakan adalah RSA dan ElGamal. 2. Enkripsi dan dekripsi dilakukan dengan metode RSA.

(18)

I–5

Penyusunan skripsi ini disusun dengan sistematika penulisan sebagai berikut: BAB I. PENDAHULUAN

Bab ini membahas mengenai latar belakang, perumusan masalah, tujuan penelitian, manfaat penelitian, batasan masalah, dan sistematika penulisan. BAB II. KAJIAN LITERATUR

Pada bab ini akan membahas dasar-dasar teori yang akan digunakan dalam penelitian, seperti pengetahuan dasar tentang kriptografi dan metode yang akan digunakan dalam proses key generation, enkripsi dan dekripsi.

BAB III. METODOLOGI PENELITIAN

Pada bab ini akan dibahas mengenai unit penelitian, tahapan yang akan dilaksanakan pada penelitian ini, tahapan proses secara umum, metode pengembangan perangkat lunak, teknik pengujian dan manajemen proyek penelitian.

BAB IV. PENGEMBANGAN PERANGKAT LUNAK

Pada bab ini membahas mengenai analisis dan perancangan perangkat lunak yang akan digunakan sebagai alat penelitian. Dimulai dari pengumpulan dan analisa kebutuhan, rancangan dan konstruksi perangkat lunak serta pengujian untuk memastikan semua kebutuhan pengembangan perangkat lunak sesuai dengan dengan kebutuhan. Penyusunan pada bab ini memiliki kerangka penulisan dengan fase-fase dan elemen-elemen pengembangan perangkat lunak bersifat berorientasi objek.

(19)

I–6

Pada bab ini diuraikan hasil pengujian berdasarkan langkah-langkah yang telah direncanakan. Tabel hasil pengujian serta analisisnya disajikan sebagai basis dari kesimpulan yang akan diambil dalam penelitian ini.

BAB VI. KESIMPULAN DAN SARAN

Pada bab ini berisi kesimpulan dari semua uraian-uraian pada bab-bab sebelumnya dan juga saran-saran yang diharapkan berguna untuk pengembangan selanjutnya.

1.8 Kesimpulan

Penelitian mengenai key generation akan dilakukan dengan metode RSA – ElGamal untuk enkripsi dan dekripsi data teks ASCII menggunakan metode RSA. Tujuannya adalah untuk mengembangkan perangkat lunak yang mampu mengenkripsi dan dekripsi data teks ASCII.

(20)

DAFTAR PUSTAKA

Abubakar, A., Jabaka, S., Tijjani, B. I., Zeki, A., Chiroma, H., Usman, M. J., … Mahmud, M. (2014). Cryptanalytic Attacks on Rivest, Shamir, and Adleman (RSA) cryptosystem: Issues and Challenges. Journal of Theoretical and Applied Information Technology, 61(1), 37–43.

Boneh, D. (1999). Twenty Years of Attacks on the RSA Cryptosystem. Notices of the American Mathematical Society, 46(2), 203–213.https://doi.org/10.1.1.525.7995 Diffie, W., & Hellman, M. E. (1976). Multiuser Cryptographic Techniques.

Proceedings of the June 7-10, 1976, National Computer Conference and Exposition on - AFIPS ’76, 109. https://doi.org/10.1145/1499799.1499815 ElGamal, T. (1985). A Public Key Cryptosystem and a Signature Scheme Based on

Discrete Logarithms. Advances in Cryptology, 196, 10–18. https://doi.org/10.1007/3-540-39568-7_2

Gaithuru, J. N., Bakhtiari, M., Salleh, M., & Muteb, A. M. (2016). A Comprehensive Literature Review of Asymmetric Key Cryptography Algorithms for

Establishment of the Existing Gap. 2015 9th Malaysian Software Engineering Conference, MySEC 2015, 236–244.

https://doi.org/10.1109/MySEC.2015.7475227

Iswari, N. M. S. (2017). Key Generation Algorithm Design Combination of RSA and ElGamal Algorithm. Proceedings of 2016 8th International Conference on Information Technology and Electrical Engineering: Empowering Technology for Better Future, ICITEE 2016.

https://doi.org/10.1109/ICITEED.2016.7863255

Mahajan, S., & Singh, M. (2014). Analysis of RSA Algorithm Using GPU.

International Journal of Network Security & Its Applications (IJNSA), 6(4), 13– 28. https://doi.org/10.5121/ijnsa.2014.6402

Meier, A. V. (2005). The ElGamal Cryptosystem, 1–13.

Menezes, A., van Oorschot, P., & Vanstone, S. (1996). Handbook of Applied Cryptography. Annals of Physics, 19964964, 258.

https://doi.org/10.1201/9781439821916

(21)

xvi

Impact of Carmichael Function on RSA (pp. 752–756). https://doi.org/10.1007/978-981-10-3433-6_90

Rivest, R. (1990). Cryptology.

Rivest, R., Shamir, A., & Adleman, L. (1978). A Method for Obtaining Digital Signatures and Public-key Cryptosystems. Communications of the ACM, 21(2), 120–126. https://doi.org/10.1145/359340.359342

Steef, A., A, A., & M. N, S. (2015). RSA Algorithm With a New Approach

Encryption and Decryption Message Text by ASCII. International Journal on Cryptography and Information Security, 5(3/4), 23–32.

Referensi

Dokumen terkait

Menurut analisis penulis upaya Wilayatul Hisbah dalam mengawasi dan menindak pelaku Maisir di lapangan pacuan kuda Aceh tengah belum maksimal dalam menjalankan tugas

Berdasarkan hasil analisis diketahui bahwa nilai R Square mendekati satu artinya variabel yang diukur dengan labelisasi halal, pengetahuan konsumen, gaya hidup dan citra merek

Berdasarkan tabel 19 di atas menunjukkan bahwa 40% responden menyatakan sangat setuju bahwa produk makanan halal untuk kebutuhan meningkatkan tingkat sosial

[r]

The incorporation of Epoxidized Natural Rubber also enhanced the rubber-filler interaction and tensile properties of the silica-filled Styrene Butadiene. Rubber

Dengan menggunakan alat pengukur kelembaban tanah ini lebih modern melihat saran dari jarak jauh menggunakan modul wifi dan hasil nilai pertumbuhan pengujian

Sekolah anda luas atau memiliki 2 lantai atau lebih, maka anda ingin jika seorang guru jam pertama mengajar dilokasi gedung A misalnya, pada jam berikutnya jangan mengajar

Jelas di sini tindakan mengusir dan mengasingkan golongan LGBT daripada masyarakat Islam bukan bermaksud mendiskriminasikan mereka, namun sebagai memberi pengajaran