Analisis Permasalahan Analisis Kebutuhan Kebutuhan Perangkat Lunak dan Perangkat Keras Kesimpulan

BAB 3 ANALISIS DAN PERANCANGAN SISTEM

3.1 Analisis Permasalahan

Pada algoritma kriptografi, dalam hal keamanan hampir seluruhnya berbasis pada permasalahan teori bilangan, seperti permasalahan faktorisasi bilangan atau logaritma diskrit. Meskipun permasalahan tersebut sulit dipecahkan pada saat ini, tidak menutup kemungkinan pada masa yang akan datang permasalahan tersebut akan menemukan pemecahannya dengan lebih mudah. Dalam penelitian ini dilakukan proses kriptografi dengan menggunakan kombinasi algoritma RSA dan ElGamal dalam pengamanan data pada file dokumen untuk menjamin bahwa file yang akan dikirim aman dan terhindar dari pihak yang tidak memiliki hak untuk mengetahui isi dari file tersebut sebelum sampai ke tujuan. Masalah utama pada penelitian ini adalah bagaimana meningkatkan keamanan pada file dokumen dengan menggunakan kombinasi algoritma RSA dan ElGamal sehingga tingkat keamanannya lebih baik.

3.2 Analisis Kebutuhan

Berdasarkan analisa permasalahan, maka hasil dari sistem yang didapat adalah cipherteks dari proses enkripsi dan plainteks dari proses dekripsi. Untuk memenuhi kebutuhan tersebut, maka sistem ini dibangun oleh sistem operasi Windows 7 Ultimate, dengan perangkat lunak pengembangan Neatbeans 7.1.2 dengan menggunakan MATLAB. Universitas Sumatera Utara

3.3 Perancangan Sistem

Perancangan sistem merupakan suatu tahapan yang sangat penting untuk menentukan tahap awal dari kondisi akhir pada sistem yang akan dibangun untuk memperoleh hasil melalui implementasinya. Sistem ini mengkombinasikan dua algoritma untuk mengamankan file yang diinput user langsung. File yang diinput kemudian dilakukan proses enkripsi dengan menggunakan kombinasi algoritma RSA dan ElGamal, dengan menginput nilai kunci publik RSA untuk dilakukan proses pembangkitan kunci, dan selanjutnya dilakukan proses enkripsi untuk menghasilkan cipherteks. Cipherteks hasil file yang diinput kemudian dilakukan proses dekripsi dengan menginput nilai kunci privat ElGamal dan RSA dan selanjutnya dilakukan proses dekripsi untuk menghasilkan file semula.

3.3.1 Perancangan Flowchart

Untuk mempermudah perancangan sistem pada implementasi kombinasi algoritma RSA dan ElGamal, diperlukan langkah-langkah yang dikelompokkan ke dalam flowchart. Flowchart adalah bagan yang menunjukkan alur suatu sistem yang tiap alur dihubungkan secara logika sesuai dengan ketentuan komponen alur yang telah disepakati.

3.3.2 Flowchart Algoritma RSA

Algoritma RSA memiliki 3 buah proses yaitu proses pembangkit kunci, proses enkripsi, dan proses dekripsi. Dimana proses-proses tersebut akan dijelaskan pada flowchart-flowchart berikut: Universitas Sumatera Utara Tidak Ya Tidak Ya Gambar 3.1 Flowchart Pembangkit Kunci RSA = 1+ �� ; ∈ � � gcd , � = 1, Selesai � = 1,2,3, … , Input Kunci publik , Kunci privat , Mulai Input , ; bilangan prima = ∗ � = − 1 ∗ − 1 = 2,3,4, … , Input Universitas Sumatera Utara a b Gambar 3.2 a Flowchart Enkripsi RSA; b Flowchart Dekripsi RSA

3.3.3 Flowchart Algoritma ElGamal

Algoritma ElGamal juga memiliki 3 buah proses yaitu proses pembangkit kunci, proses enkripsi, dan proses dekripsi. Dimana proses-proses tersebut akan dijelaskan pada flowchart-flowchart berikut: Mulai Plainteks , Kunci publik , Pecah plainteks menjadi blok 1 , 2 , … , −1 � = � Cipherteks Selesai Mulai Cipherteks , Kunci privat , Pecah cipherteks menjadi blok 1 , 2 , … , −1 � = � Plainteks Selesai Universitas Sumatera Utara Tidak Ya Gambar 3.3 Flowchart Pembangkit Kunci ElGamal Mulai Input ; bilangan prima Kunci publik , �, Kunci privat , = � �, ; bilangan acak Selesai � ; 1 ≤ ≤ − 2 Universitas Sumatera Utara Tidak Ya Gambar 3.4 Flowchart Enkripsi ElGamal Gambar 3.5 Flowchart Dekripsi ElGamal Mulai Plainteks ; Kunci publik , �, ; Input �; 1 ≤ � ≤ − 2 Pecah plainteks menjadi blok 1 , 2 , … , � � = � � � = � � Cipherteks Selesai A A Mulai Cipherteks ; Kunci privat , ; Pecah cipherteks menjadi blok 1 , 2 , … , � Plainteks Selesai A A � = � � −1− Universitas Sumatera Utara

3.3.4 Flowchart Kombinasi Algoritma RSA dan ElGamal

Pada kombinasi algoritma RSA dan ElGamal terdapat 2 proses yaitu proses enkripsi dan proses dekripsi, seperti ditunjukkan pada flowchart berikut: a b Gambar 3.6 a Flowchart Enkripsi Kombinasi RSA dan ElGamal; b Flowchart Dekripsi Kombinasi RSA dan ElGamal Mulai Input plainteks, kunci publik RSA, kunci publik ElGamal Enkripsi RSA Enkripsi ElGamal Selesai Cipherteks RSA Cipherteks ElGamal Mulai Input cipherteks, kunci privat RSA, kunci privat ElGamal Dekripsi ElGamal Dekripsi RSA Selesai Cipherteks ElGamal Plainteks Universitas Sumatera Utara BAB 4 IMPLEMENTASI Pada bab ini akan diperlihatkan hasil dan pembahasan dari penelitian yang diperoleh berdasarkan penjelasan – penjelasan yang telah dipaparkan pada bab - bab sebelumnya. Hasil dan pembahasan dari penelitian ini adalah mengenai implementasi kombinasi algoritma RSA dan ElGamal dalam pengamanan data pada file dokumen.

4.1 Kebutuhan Perangkat Lunak dan Perangkat Keras

Penelitian ini menggunakan perangkat lunak berupa: 1. Sistem Operasi Windows 7 2. MATLAB R2009a Spesifikasi perangkat keras yang digunakan berupa: 1. Processor Intel core i3 1.7 GHz 2. RAM 2 GB 3. Harddisk 500 GB 4. Monitor 14.0 inch

4.2 Implementasi

Pada implementasi sistem ini secara keseluruhan penulis membuat tiga buah halaman antarmuka, yang terdiri dari halaman utama yang berisikan tentang pilihan proses apa yang akan dilakukan. Bentuk antarmuka halaman utama dapat dilihat pada Gambar 4.1. Universitas Sumatera Utara Gambar 4.1 Halaman utama Dari Gambar 4.1 dapat dilihat bahwa di dalam halaman utama terdapat tiga buah tombol yaitu tombol enkripsi, dekripsi dan keluar. Tombol enkripsi digunakan untuk memulai proses enkripsi, tombol dekripsi digunakan untuk memulai proses dekripsi, dan tombol keluar digunakan untuk keluar dari program.

4.2.1 Proses Enkripsi

File pesan yang akan dienkripsi berisikan “Selamat Budiman, kamu lulus di jurusan matematika FMIPA USU, Password anda untuk login adalah Budiman1912”. Gambar 4.2 File yang dienkripsi Universitas Sumatera Utara Untuk memulai proses enkripsi, tekan tombol enkripsi pada halaman utama, maka akan muncul halaman enkripsi seperti pada Gambar 4.3. Gambar 4.3 Halaman enkripsi 1 Selanjutnya yang dilakukan adalah masukan file pesan yang akan dienkripsi dengan mengklik Pilih File pada kolom yang telah disediakan seperti pada Gambar 4.4. Gambar 4.4 Pop-up window pilih file 1 Universitas Sumatera Utara Setelah file dipilih akan ditampilkan pada halaman enkripsi. Gambar 4.5 Halaman enkripsi 2 Selanjutnya pada kunci RSA input nilai dan pada kolom yang disediakan. Kemudian klik kolom bangkitkan kunci sehingga masing-masing kunci publik dan kunci privat pada kunci RSA dan kunci ElGamal akan terpilih secara otomatis. Selanjutnya klik proses enkripsi, maka file telah selesai dienkripsi. Gambar 4.6 Halaman enkripsi 3 Universitas Sumatera Utara Kemudian simpan file yang telah terenkripsi seperti yang terlihat pada Gambar 4.7. Gambar 4.7 Pop-up window simpan file File pada Gambar 4.8 merupakan file hasil proses enkripsi. Gambar 4.8 Hasil.txt Universitas Sumatera Utara

4.2.2. Proses Dekripsi

Untuk proses dekripsi dilakukan dengan menekan tombol dekripsi pada halaman utama, maka akan muncul halaman dekripsi seperti pada Gambar 4.9 Gambar 4.9 Halaman dekripsi 1 Selanjutnya yang dilakukan adalah pilih file hasil enkripsi dengan cara mengklik tombol Pilih File, maka akan muncul pop-up window untuk mengakses lokasi file disimpan. Gambar 4.10 Pop-up window pilih file 2 Universitas Sumatera Utara Setelah file dipilih akan ditampilkan pada halaman dekripsi. Gambar 4.11 Halaman dekripsi 2 Langkah selanjutnya adalah masukan kunci pada kolom yang disediakan Gambar 4.12 Halaman dekripsi 3 Setelah kunci dimasukkan, klik tombol proses dekripsi untuk memulai proses dekripsi. Setelah diklik maka akan muncul pesan asli pada kolom yang disediakan. Universitas Sumatera Utara Gambar 4.13 Halaman dekripsi 4

4.3 Analisis Dalam Aplikasi

Pada tahap ini dijelaskan bagaimana proses aplikasi tersebut berjalan dari saat pengamanan sampai saat pengungkapan.

4.3.1 Pengamanan Pesan

Pesan yang diamankan dari contoh kasus pada penelitian ini adalah “Selamat Budiman, kamu lulus di jurusan matematika FMIPA USU, Password anda untuk login adalah Budiman1912”. Pesan yang dipakai adalah “Budiman1912” untuk menyederhanakan proses analisis aplikasi ini. Proses 1: Pada tahap ini plainteks diubah menjadi kode ASCII yaitu sebagai berikut: Tabel 4.1 Kode ASCII Plainteks 1 � Plainteks Kode ASCII 1 B 66 2 u 117 Universitas Sumatera Utara 3 d 100 4 i 105 5 m 109 6 a 97 7 n 110 8 1 49 9 9 57 10 1 49 11 2 50 Proses 2: Untuk Tahap ini dilakukan proses pembangkitan kunci pada algoritma RSA: 6. Pilih dua buah bilangan prima sembarang dan . Sebaiknya ≠ , sebab jika = maka = 2 , sehingga dapat diperoleh dengan menarik akar pangkat dua dari . Misalnya terpilih = 47 dan = 71. 7. Hitung = ∙ . Sehingga diperoleh = 47 ∙ 71 = 3337 8. Hitung � = − 1 ∙ − 1. Sehingga diperoleh � = 47 - 1 ∙ 71 - 1 = 46 ∙ 70 = 3220 9. Pilih kunci yang relatif prima terhadap � . Misalnya terpilih = 293 yang relatif prima terhadap 3220. Bukti: 3220 = 10 293 + 290 293 = 1 290 + 3 290 = 96 3 + 2 3 = 1 2 + 1 Universitas Sumatera Utara 10. Bangkitkan kunci privat dengan menggunakan persamaan ⋅ ≡ 1 � . Perhatikan bahwa ⋅ ≡ 1 � . Hitung hingga ⋅ ≡ 1 � ekivalen ∙ = 1 + �� , sehinnga secara sederhana dapat dihitung dengan = 1+ �� . Dengan mencoba nilai � = 1, 2, 3, … sehingga diperoleh nilai bulat. Untuk: � = 1, maka: = 1+1 ∙3220 293 = 10,993174 � = 2, maka: = 1+2 ∙3220 293 = 21,982935 . . . � = 98, maka: = 1+98 ∙3220 293 = 1077 Sehingga diperoleh nilai adalah 1077. Dari proses pembangkitan kunci maka diperoleh: Kunci publik 293, 3337 Kunci privat 1077, 3337 Proses 3: Plainteks yang sudah bernilai kode ASCII tersebut dienkripsi dengan menggunakan kunci publik pada algoritma RSA yaitu 293, 3337. Dengan rumus: Maka diperoleh: 1 = 66 293 3337 = 1295 4 = 105 293 3337 = 1443 2 = 117 293 3337 = 1628 5 = 109 293 3337 = 499 3 = 100 293 3337 = 166 6 = 97 293 3337 = 1177 � = � Universitas Sumatera Utara 7 = 110 293 3337 = 2891 10 = 49 293 3337 = 1352 8 = 49 293 3337 = 1352 11 = 50 293 3337 = 1271 9 = 57 293 3337 = 522 Jadi, cipherteks yang dihasilkan adalah: = 1295 1628 166 1443 499 1177 2891 1352 522 1352 1271 Proses 4: Pada tahap ini cipherteks yang dihasilkan pada proses 3 menjadi plainteks yang dienkripsi dengan menggunakan algoritma ElGamal: Tabel 4.2 Plainteks ElGamal � Plainteks 1 1295 2 1628 3 166 4 1443 5 499 6 1177 7 2891 8 1352 9 522 10 1352 11 1271 Proses 5: Untuk tahap ini dilakukan proses pembangkitan kunci pada algoritma ElGamal: 4. Pilih sembarang bilangan prima . dengan syarat nilai harus lebih besar dari nilai plainteks terbesar. Karena nilai plainteks terbesar adalah 2891, maka nilai harus lebih besar dari 2891. Misalnya terpilih nilai adalah 3593. Universitas Sumatera Utara 5. Pilih dua buah bilangan acak � dan , dengan syarat � dan 1 ≤ ≤ − 2. Misalnya terpilih nilai � = 28 dan = 12. 6. Hitung = � . Sehingga diperoleh: = 28 12 3593 = 626. Dari proses pembangkitan kunci maka diperoleh: Kunci publik 626, 28, 3593 Kunci privat 12, 3593 Proses 6: Plainteks dienkripsi dengan menggunakan kunci publik pada algoritma ElGamal yaitu 626, 28, 3593. Dengan rumus: dan dengan syarat: 1 ≤ � � ≤ − 2 dalam hal ini nilai � � = � 1 , … , � 11 . Misalnya terpilih nilai � 1 = 20, � 2 = 31, � 3 = 11, � 4 = 45, � 5 = 52, � 6 = 63, � 7 = 35, � 8 = 21, � 9 = 16, � 10 = 32, � 11 = 41. Maka diperoleh: 1 = 28 20 3593 = 498 1 = 626 20 1295 3593 = 2787 2 = 28 31 3593 = 2408 2 = 626 31 1628 3593 = 1853 3 = 28 11 3593 = 279 3 = 626 11 166 3593 = 157 4 = 28 45 3593 = 1905 4 = 626 45 1443 3593 = 1056 5 = 28 52 3593 = 567 5 = 626 52 499 3593 = 1888 6 = 28 63 3593 = 101 6 = 626 63 1177 3593 = 3434 � = � � � � = � � � Universitas Sumatera Utara 7 = 28 35 3593 = 2007 7 = 626 35 2891 3593 = 3448 8 = 28 21 3593 = 3165 8 = 626 21 1352 3593 = 1945 9 = 28 16 3593 = 286 9 = 626 16 522 3593 = 865 10 = 28 32 3593 = 2750 10 = 626 32 1352 3593 = 3030 11 = 28 41 3593 = 2436 11 = 626 41 1271 3593 = 2213 Jadi cipherteks yang dihasilkan adalah: = 498 2787 2408 1853 279 157 1905 1056 567 1888 101 3434 2007 3448 3165 1945 286 865 2750 3030 2436 2213

4.3.2 Pengungkapan Pesan

Pengungkapan pesan adalah proses mengembalikan cipherteks menjadi plainteks semula. Proses 1: Pada tahap ini dilakukan proses dekripsi untuk cipherteks ElGamal dengan menggunakan kunci privat 12, 3593. Dengan rumus: Maka diperoleh: 1 = 2787 ∙ 498 3593 −1−12 3593 = 1295 2 = 1853 ∙ 2408 3593 −1−12 3593 = 1628 3 = 157 ∙ 279 3593 −1−12 3593 = 166 4 = 1056 ∙ 1905 3593 −1−12 3593 = 1443 5 = 1888 ∙ 567 3593 −1−12 3593 = 499 6 = 3434 ∙ 101 3593 −1−12 3593 = 1177 7 = 3448 ∙ 2007 3593 −1−12 3593 = 2891 8 = 1945 ∙ 3165 3593 −1−12 3593 = 1352 � = � � −1− Universitas Sumatera Utara 9 = 865 ∙ 286 3593 −1−12 3593 = 522 10 = 3030 ∙ 2750 3593 −1−12 3593 = 1352 11 = 2213 ∙ 2436 3593 −1−12 3593 = 1271 Jadi plainteks yang dihasilkan adalah: = 1295 1628 166 1443 499 1177 2891 1352 522 1352 1271 Proses 2: Pada tahap ini plainteks yang dihasilkan pada proses 1 menjadi cipherteks yang didekripsi dengan menggunakan algoritma RSA: Tabel 4.3 Cipherteks RSA � Cipherteks 1 1295 2 1628 3 166 4 1443 5 499 6 1177 7 2891 8 1352 9 522 10 1352 11 1271 Proses 3: Pada tahap ini dilakukan proses dekripsi untuk cipherteks RSA dengan menggunakan kunci privat 1077, 3337. Dengan rumus: Maka diperoleh: 1 = 1295 1077 3337 = 66 � = � Universitas Sumatera Utara 2 = 1628 1077 3337 = 117 3 = 166 1077 3337 = 100 4 = 1443 1077 3337 = 105 5 = 499 1077 3337 = 109 6 = 1177 1077 3337 = 97 7 = 2891 1077 3337 = 110 8 = 1352 1077 3337 = 49 9 = 522 1077 3337 = 57 10 = 1352 1077 3337 = 49 11 = 1271 1077 3337 = 50 Tabel 4.4 Kode ASCII Plainteks 2 � Kode ASCII Plainteks 1 66 B 2 117 u 3 100 d 4 105 i 5 109 m 6 97 a 7 110 n 8 49 1 9 57 9 10 49 1 11 50 2 Dari proses-proses tersebut didapat kan kembali pesan a sli yaitu: “Budiman1912”. Universitas Sumatera Utara

4.4 Pengujian Sistem

Pengujian sistem dilakukan dengan membandingkan hasil dan waktu proses dari kombinasi algoritma RSA dan ElGamal dengan hasil dari masing-masing algoritma RSA dan ElGamal.

4.4.1 Hasil Algoritma RSA

Dengan mnggunakan pesan yang sama yaitu “Budiman1912”.

4.4.1.1 Pengamanan Pesan

Proses 1: Pada tahap ini plainteks diubah menjadi kode ASCII yaitu sebagai berikut: Tabel 4.5 Kode ASCII Plainteks 3 � Plainteks Kode ASCII 1 B 66 2 u 117 3 d 100 4 i 105 5 m 109 6 a 97 7 n 110 8 1 49 9 9 57 10 1 49 11 2 50 Universitas Sumatera Utara Proses 2: Untuk Tahap ini dilakukan proses pembangkitan kunci: 1. Pilih dua buah bilangan prima sembarang dan . Sebaiknya ≠ , sebab jika = maka = 2 , sehingga dapat diperoleh dengan menarik akar pangkat dua dari . Misalnya terpilih = 47 dan = 71. 2. Hitung = ∙ . Sehingga diperoleh = 47 ∙ 71 = 3337 3. Hitung � = − 1 ∙ − 1. Sehingga diperoleh � = 47 - 1 ∙ 71 - 1 = 46 ∙ 70 = 3220 4. Pilih kunci yang relatif prima terhadap � . Misalnya terpilih = 293 yang relatif prima terhadap 3220. Bukti: 3220 = 10 293 + 290 293 = 1 290 + 3 290 = 96 3 + 2 3 = 1 2 + 1 5. Bangkitkan kunci privat dengan menggunakan persamaan ⋅ ≡ 1 � . Perhatikan bahwa ⋅ ≡ 1 � . Hitung hingga ⋅ ≡ 1 � ekivalen ∙ = 1 + �� , sehinnga secara sederhana dapat dihitung dengan = 1+ �� . Dengan mencoba nilai � = 1, 2, 3, … sehingga diperoleh nilai bulat. Untuk: � = 1, maka: = 1+1 ∙3220 293 = 10,993174 Universitas Sumatera Utara � = 2, maka: = 1+2 ∙3220 293 = 21,982935 . . . � = 98, maka: = 1+98 ∙3220 293 = 1077 Sehingga diperoleh nilai adalah 1077. Dari proses pembangkitan kunci maka diperoleh: Kunci publik 293, 3337 Kunci privat 1077, 3337 Proses 3: Plainteks yang sudah bernilai kode ASCII tersebut dienkripsi dengan menggunakan kunci publik pada algoritma RSA yaitu 293, 3337. Dengan rumus: Maka diperoleh: 1 = 66 293 3337 = 1295 7 = 110 293 3337 = 2891 2 = 117 293 3337 = 1628 8 = 49 293 3337 = 1352 3 = 100 293 3337 = 166 9 = 57 293 3337 = 522 4 = 105 293 3337 = 1443 10 = 49 293 3337 = 1352 5 = 109 293 3337 = 499 11 = 50 293 3337 = 1271 6 = 97 293 3337 = 1177 Jadi, cipherteks yang dihasilkan adalah: = 1295 1628 166 1443 499 1177 2891 1352 522 1352 1271 � = � Universitas Sumatera Utara

4.4.1.2 Pengungkapan Pesan

Pada tahap ini dilakukan proses dekripsi dengan menggunakan kunci privat 1077, 3337. Dengan rumus: Maka diperoleh: 1 = 1295 1077 3337 = 66 2 = 1628 1077 3337 = 117 3 = 166 1077 3337 = 100 4 = 1443 1077 3337 = 105 5 = 499 1077 3337 = 109 6 = 1177 1077 3337 = 97 7 = 2891 1077 3337 = 110 8 = 1352 1077 3337 = 49 9 = 522 1077 3337 = 57 10 = 1352 1077 3337 = 49 11 = 1271 1077 3337 = 50 Tabel 4.6 Kode ASCII Plainteks 4 � Kode ASCII Plainteks 1 66 B 2 117 u 3 100 d 4 105 i 5 109 m 6 97 a 7 110 n 8 49 1 9 57 9 � = � Universitas Sumatera Utara 10 49 1 11 50 2 Dari proses-proses tersebut didapat kan kembali pesan a sli yaitu: “Budiman1912”.

4.4.2 Hasil Algoritma ElGamal

Dengan menggunakan pesan yang sama yaitu “Budiman1912”.

4.4.2.1 Pengamanan Pesan

Proses 1: Pada tahap ini plainteks diubah menjadi kode ASCII yaitu sebagai berikut: Tabel 4.7 Kode ASCII Plainteks 5 � Plainteks Kode ASCII 1 B 66 2 u 117 3 d 100 4 i 105 5 m 109 6 a 97 7 n 110 8 1 49 9 9 57 10 1 49 11 2 50 Universitas Sumatera Utara Proses 2: Untuk tahap ini dilakukan proses pembangkitan kunci: 1. Pilih sembarang bilangan prima . dengan syarat nilai harus lebih besar dari nilai plainteks terbesar. Karena nilai plainteks terbesar adalah 117, maka nilai harus lebih besar dari 117. Misalnya terpilih nilai adalah 127. 2. Pilih dua buah bilangan acak � dan , dengan syarat � dan 1 ≤ ≤ − 2. Misalnya terpilih nilai � = 28 dan = 12. 3. Hitung = � . Sehingga diperoleh: = 28 12 127 = 19. Dari proses pembangkitan kunci maka diperoleh: Kunci publik 19, 28, 127 Kunci privat 12, 127 Proses 3: Plainteks dienkripsi dengan menggunakan kunci publik 19, 28, 127. Dengan rumus: dan dengan syarat: 1 ≤ � � ≤ − 2 dalam hal ini nilai � � = � 1 , … , � 11 . Misalnya terpilih nilai � 1 = 20, � 2 = 31, � 3 = 11, � 4 = 45, � 5 = 52, � 6 = 63, � 7 = 35, � 8 = 21, � 9 = 16, � 10 = 32, � 11 = 41. Maka diperoleh: 1 = 28 20 127 = 22 1 = 19 20 66 127 = 77 2 = 28 31 127 = 24 2 = 19 31 117 127 = 64 � = � � � � = � � � Universitas Sumatera Utara 3 = 28 11 127 = 105 3 = 19 11 100 127 = 32 4 = 28 45 127 = 126 4 = 19 45 105 127 = 105 5 = 28 52 127 = 52 5 = 19 52 109 127 = 39 6 = 28 63 127 = 126 6 = 19 63 97 127 = 97 7 = 28 35 127 = 59 7 = 19 35 110 127 = 86 8 = 28 21 127 = 108 8 = 19 21 49 127 = 49 9 = 28 16 127 = 52 9 = 19 16 57 127 = 67 10 = 28 32 127 = 37 10 = 19 32 49 127 = 36 11 = 28 41 127 = 90 11 = 19 41 50 127 = 16 Jadi cipherteks yang dihasilkan adalah: = 22 77 24 64 105 32 126 105 52 39 126 97 59 86 108 49 52 67 37 36 90 16.

4.4.2.2 Pengungkapan Pesan

Pada tahap ini dilakukan proses dekripsi dengan menggunakan kunci privat 12, 127. Dengan rumus: Maka diperoleh: 1 = 77 ∙ 22 127 −1−12 127 = 66 2 = 64 ∙ 24 127 −1−12 127 = 117 3 = 32 ∙ 105 127 −1−12 127 = 100 4 = 105 ∙ 126 127 −1−12 127 = 105 5 = 39 ∙ 52 127 −1−12 127 = 109 6 = 97 ∙ 126 127 −1−12 127 = 97 � = � � −1− Universitas Sumatera Utara 7 = 86 ∙ 59 127 −1−12 127 = 110 8 = 49 ∙ 108 127 −1−12 127 = 49 9 = 67 ∙ 52 127 −1−12 127 = 57 10 = 36 ∙ 37 127 −1−12 127 = 49 11 = 16 ∙ 90 127 −1−12 127 = 50 Jadi plainteks yang dihasilkan adalah: = 66 117 100 105 109 97 110 49 57 49 50 Tabel 4.8 Kode ASCII Plainteks 6 � Kode ASCII Plainteks 1 66 B 2 117 u 3 100 d 4 105 i 5 109 m 6 97 a 7 110 n 8 49 1 9 57 9 10 49 1 11 50 2 Dari proses-proses tersebut didapat kan kembali pesan a sli yaitu: “Budiman1912”. Universitas Sumatera Utara 4.4.3 Perbandingan Hasil Kombinasi Algoritma RSA dan ElGamal dengan Hasil Masing-Masing Algoritma Dalam penelitian ini, penulis menggunakan kombinasi algoritma RSA dan ElGamal yang bertujuan untuk memberikan perlindungan ganda yang lebih baik dalam menjaga kerahasiaan dari isi file dokumen. Hasil enkripsi dari kombinasi algoritma RSA dan ElGamal adalah cipherteks dan hasil dari dekripsinya adalah plainteks. Cipherteks hasil dari kombinasi algoritma RSA dan ElGamal memiliki panjang 2 kali dari plainteks dan juga menggunakan proses sebanyak 2 kali. Sedangkan jika hanya menggunakan algoritma RSA saja, cipherteks yang dihasilkan hanya sepanjang plainteks dan hanya menggunakan proses sebanyak 1 kali saja, begitu pula dengan menggunakan algoritma ElGamal, walaupun cipherteks yang dihasilkan 2 kali panjang plainteks namun proses yang dilakukan hanya sebanyak 1 kali. Berikut ini merupakan cipherteks hasil kombinasi algoritma RSA dan ElGamal, hasil algoritma RSA, dan hasil algoritma ElGamal. Plainteks: “Budiman1912” Cipherteks Kombinasi Algoritma RSA dan ElGamal: 498 2787 2408 1853 279 157 1905 1056 567 1888 101 3434 2007 3448 3165 1945 286 865 2750 3030 2436 2213 Cipherteks Algoritma RSA: 1295 1628 166 1443 499 1177 2891 1352 522 1352 1271 Cipherteks Algoritma ElGamal: 22 77 24 64 105 32 126 105 52 39 126 97 59 86 108 49 52 67 37 36 90 16 Universitas Sumatera Utara Setelah dilakukan pengujian sistem, dapat dikethui lamanya waktu proses dari masing-masing algoritma. Hasil pengujian ditampilkan pada Tabel 4.9. Tabel 4.9 Waktu Proses Algoritma Ukuran File bytes Waktu Proses detik Enkripsi Dekripsi Kombinasi RSA dan ElGamal 50 0,015336 0,0087446 100 0,026256 0,016899 200 0,0359 0,031801 500 0,069096 0,063992 1000 0,11417 0,086719 RSA 50 0,0046705 0,0042781 100 0,01025 0,0083691 200 0,014965 0,01413 500 0,023604 0,032107 1000 0,03533 0,053949 ElGamal 50 0,0096671 0,0060127 100 0,018856 0,012341 200 0,032104 0,023931 500 0,05211 0,054426 1000 0,11024 0,081849 Dilihat dari waktu prosesnya, kombinasi algoritma RSA dan ElGamal membutuhkan waktu yang lebih lama dibandingkan algoritma RSA dan ElGamal. Sehingga waktu yang dibutuhkan untuk memecahkan kombinasi algoritma RSA dan ElGamal juga semakin lama. Universitas Sumatera Utara BAB 5 KESIMPULAN DAN SARAN

5.1 Kesimpulan

Berdasarkan pada implementasi yang telah penulis lakukan, maka dapat disimpulkan bahwa kombinasi algoritma RSA dan ElGamal mampu menutupi kekurangan yang dimiliki dari algoritma RSA yaitu dengan melakukan proses enkripsi pada cipherteks hasil RSA dengan menggunakan algoritma ElGamal sehingga apabila cipherteks hasil RSA dapat dipecahkan maka kunci publik dan kunci privat tidak akan dapat langsung diketahui dikarenakan harus mencari cipherteks hasil ElGamal. Oleh karena itu, proses kombinasi algoritma RSA dan ElGamal membutuhkan waktu yang lebih lama dibandingkan masing – masing algoritma, sehingga waktu yang dibutuhkan untuk memecahkan kombinasi algoritma RSA dan ElGamal juga semakin lama.

5.2 Saran