Implementasi Kombinasi Algoritma RSA dan ElGamal Dalam Pengamanan Data Pada File Dokumen
IMPLEMENTASI KOMBINASI ALGORITMA RSA DAN
ELGAMAL DALAM PENGAMANAN DATA
PADA FILE DOKUMEN
SKRIPSI
M BUDIMAN KHANAFI M
120803008
DEPARTEMEN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
MEDAN
2016
Universitas Sumatera Utara
IMPLEMENTASI KOMBINASI ALGORITMA RSA DAN
ELGAMAL DALAM PENGAMANAN DATA
PADA FILE DOKUMEN
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat untuk mencapai gelar
Sarjana Sains
M BUDIMAN KHANAFI M
120803008
DEPARTEMEN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
MEDAN
2016
Universitas Sumatera Utara
PERSETUJUAN
Judul
Kategori
Nama
Nomor Induk Mahasiswa
Program Studi
Departemen
Fakultas
: Implementasi Kombinasi Algoritma RSA dan
ElGamal Dalam Pengamanan Data Pada File
Dokumen
: Skripsi
: M Budiman Khanafi M
: 120803008
: Sarjana (S1) Matematika
: Matematika
: Matematika Dan Ilmu Pengetahuan Alam
(FMIPA) Universitas Sumatera Utara
Disetujui di
Medan, Juli 2016
Komisi Pembimbing:
Pembimbing 2,
Pembimbing 1,
Dr. Mardiningsih, M.Si
NIP. 19630405 198811 2 001
Dr. Syahriol Sitorus, M.IT
NIP. 19710310 199703 1 004
Disetujui oleh
Departemen Matematika FMIPA USU
Ketua,
Prof. Dr. Tulus, M.Si
NIP. 19620901 198803 1 002
Universitas Sumatera Utara
PERNYATAAN
IMPLEMENTASI KOMBINASI ALGORITMA RSA DAN
ELGAMAL DALAM PENGAMANAN DATA
PADA FILE DOKUMEN
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan,
Juli 2016
M Budiman Khanafi M
120803008
Universitas Sumatera Utara
PENGHARGAAN
Assalamu’alaikum Wr. Wb.
Puji syukur penulis ucapkan kehadirat Allah SWT atas rahmat dan hidayah-Nya
sehingga penulis dapat menyelesaikan skripsi yang berjudul Implementasi
Kombinasi Algoritma RSA dan ElGamal Dalam Pengamanan Data Pada File
Dokumen ini dalam waktu yang telah ditetapkan. Terimakasih penulis sampaikan
kepada:
1. Bapak Dr. Syahriol Sitorus, M.IT dan Ibu Dr. Mardiningsih, M.Si selaku
dosen pembimbing yang berkenan dan rela mengorbankan waktu, tenaga dan
pikiran guna memberikan petunjuk dan bimbingannya dalam penulisan skripsi
ini.
2. Bapak Drs. Marihat Situmorang, M.Kom dan Bapak Dr. Sawaluddin, M.IT
selaku dosen pembanding atas kritik dan saran yang membangun dalam
penyempurnaan skripsi ini.
3. Bapak Prof. Dr. Tulus, M.Si dan Ibu Dr. Mardiningsih, M.Si selaku Ketua dan
Sekretaris Departemen Matematika FMIPA USU beserta staf pegawai.
4. Bapak Dr. Kerista Sebayang, MS selaku Dekan FMIPA USU beserta staf
pegawai.
5. Terkhusus untuk Ayahanda Kardimad Manurung, Ibunda Suriati Sirait, serta
keluarga besar penulis yang telah memberikan banyak bantuan baik materi,
moral maupun spiritual.
6. Hasina Toni yang selalu memberikan semangat dan dukungannya.
7. Teman-teman penulis Rahmat, Fahmi, Viki, Wanda dan teman-teman
Matematika 2012 lainnya yang tidak dapat disebutkan satu per satu atas segala
bentuk dukungannya.
Semoga segala bentuk bantuan yang telah diberikan kepada penulis
mendapatkan balasan yang lebih baik dari Allah SWT. Akhir kata penulis
mengharapkan kritik dan saran yang membangun demi penyempurnaan skripsi ini
dan berharap semoga skripsi ini dapat bermanfaat bagi para pembaca. Amin.
Universitas Sumatera Utara
IMPLEMENTASI KOMBINASI ALGORITMA RSA DAN
ELGAMAL DALAM PENGAMANAN DATA
PADA FILE DOKUMEN
ABSTRAK
Kriptografi merupakan teknik pengamanan dengan menyandikan pesan menjadi
sederetan karakter yang tidak bermakna. Algoritma Kriptografi terus mengalami
perkembangan, pegembangan dilakukan untuk mengatasi celah keamanan yang
semakin terbuka. Algoritma RSA dan ElGamal adalah algoritma yang cukup
populer digunakan saat ini. Dimana kedua algoritma ini memiliki 2 buah kunci
yaitu kunci publik dan kunci privat dalam proses enkripsi dan dekripsi. Pada
penelitian ini, algoritma RSA dan ElGamal dikombinasikan untuk dapat
mengamankan data pada file dokumen yang bertujuan agar dapat memberikan
perlindungan ganda yang lebih baik dalam menjaga kerahasiaan dari isi file
dokumen tersebut. Hasil akhir dari penelitian ini adalah sebuah program yang
dapat diaplikasikan untuk mengamankan data pada file dokumen.
Kata Kunci: Kriptografi, Algoritma RSA, Algoritma ElGamal.
Universitas Sumatera Utara
IMPLEMENTATION COMBINATION OF RSA AND
ELGAMAL ALGORITHM OF SECURING DATA
ON THE DOCUMENT FILE
ABSTRACT
Cryptography is a security technique to encode the message into a series of
characters that don’t have meaning. Cryptographic algorithm continues to go
through development, development was done to resolve the security gaps that
increasingly open. RSA and ElGamal algorithm are algorithms that are quite
popular to be used nowadays, where these two algorithms have two keys, namely
a public key and a private key in encryption and description process. In this
research, the RSA and ElGamal algorithms are combined to be able to secure data
on a file document that aims to provide a better double protection in maintaining
the confidentiality of the contents of the document file. The end result of this
research is a program that can be applied to secure the data on document file.
Keyword: Cryptography, RSA Algorithm, ElGamal Algorithm.
Universitas Sumatera Utara
DAFTAR ISI
Halaman
i
ii
iii
iv
v
vi
viii
ix
xi
PERSETUJUAN
PERNYATAAN
PENGHARGAAN
ABSTRAK
ABSTRACT
DAFTAR ISI
DAFTAR TABEL
DAFTAR GAMBAR
DAFTAR LAMPIRAN
BAB 1 PENDAHULUAN
1.1 Latar Belakang
1.2 Perumusan Masalah
1.3 Batasan Masalah
1.4 Tujuan Penelitian
1.5 Manfaat Penelitian
1.6 Kerangka Pemikiran
1.7 Metodologi Penelitian
1
2
2
3
3
3
4
BAB 2 LANDASAN TEORI
2.1 Kriptografi
2.1.1 Pengertian Kriptografi
2.1.2 Sejarah Kriptografi
2.1.3 Terminologi Kriptografi
2.1.4 Tujuan Kriptografi
2.1.5 Jenis-Jenis Kriptografi
2.2 Algoritma Kriptografi
2.2.1 Algoritma RSA
2.2.1.1 Proses Pembangkitan Kunci
2.2.1.2 Proses Enkripsi
2.2.1.3 Proses Dekripsi
2.2.2 Algoritma ElGamal
2.2.2.1 Proses Pembangkitan Kunci
2.2.2.2 Proses Enkripsi
2.2.2.3 Proses Dekripsi
5
5
6
8
10
10
12
12
13
14
14
14
15
16
16
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Permasalahan
3.2 Analisis Kebutuhan
3.3 Perancangan Sistem
3.3.1 Perancangan Flowchart
3.3.2 Flowchart Algoritma RSA
17
17
18
18
18
Universitas Sumatera Utara
3.3.3
3.3.4
Flowchart Algoritma ElGamal
Flowchart Kombinasi Algoritma RSA dan ElGamal
BAB 4 IMPLEMENTASI
4.1 Kebutuhan Perangkat Lunak dan Perangkat Keras
4.2 Implementasi
4.2.1 Proses Enkripsi
4.2.2 Proses Dekripsi
4.3 Analisis dalam Aplikasi
4.3.1 Pengamanan Pesan
4.3.2 Pengungkapan Pesan
4.4 Pengujian Sistem
4.4.1 Hasil Algoritma RSA
4.4.1.1 Pengamanan Pesan
4.4.1.2 Pengungkapan Pesan
4.4.2 Hasil Algoritma ElGamal
4.4.2.1 Pengamanan Pesan
4.4.2.2 Pengungkapan Pesan
4.4.3 Perbandingan Hasil kombinasi Algoritma RSA dan ElGamal
dengan Hasil Masing-Masing Algoritma
20
23
24
24
25
29
31
31
36
39
39
39
42
43
43
45
47
BAB 5 KESIMPULAN DAN SARAN
5.1 Kesimpulan
5.2 Saran
49
49
DAFTAR PUSTAKA
LAMPIRAN
51
53
Universitas Sumatera Utara
DAFTAR TABEL
Nomor
Judul
Halaman Tabel
4.1
Kode ASCII Plainteks 1
31
4.2
Plainteks ElGamal
34
4.3
Cipherteks RSA
37
4.4
Kode ASCII Plainteks 2
38
4.5
Kode ASCII Plainteks 3
39
4.6
Kode ASCII Plainteks 4
42
4.7
Kode ASCII Plainteks 5
43
4.8
Kode ASCII Plainteks 6
46
4.9
Waktu Proses
48
Universitas Sumatera Utara
DAFTAR GAMBAR
Nomor
Judul
Halaman Gambar
1.1
Flowchart pengamanan data pada file dokumen
2.1
(a) Sebuah scytale, (b) Pesan ditulis secara horizontal, baris
4
per baris
7
2.2
Mesin enigma
7
2.3
(a) Plainteks, (b) Cipherteks
8
2.4
(a) Skema enkripsi, (b) Skema dekripsi
9
2.5
(a) Skema enkripsi kriptografi simetri, (b) Skema dekripsi
kriptografi simetri
2.6
11
(a) Skema enkripsi kriptografi asimetri, (b) Skema dekripsi
kriptografi asimetri
12
3.1
Flowchart pembangkit kunci RSA
19
3.2
(a) Flowchart enkripsi RSA, (b) Flowchart dekripsi RSA
20
3.3
Flowchart pembangkit kunci ElGamal
21
3.4
Flowchart enkripsi ElGamal
22
3.5
Flowchart dekripsi ElGamal
22
3.6
(a) Flowchart enkripsi kombinasi RSA dan ElGamal,
(b) Flowchart dekripsi kombinasi RSA dan ElGamal
23
4.1
Halaman utama
25
4.2
File yang dienkripsi
25
4.3
Halaman enkripsi 1
26
4.4
Pop-up window pilih file 1
26
4.5
Halaman enkripsi 2
27
4.6
Halaman enkripsi 3
27
4.7
Pop-up window simpan file
28
4.8
Hasil.txt
28
4.9
Halaman dekripsi 1
29
4.10
Pop-up window pilih file 2
29
4.11
Halaman dekripsi 2
30
Universitas Sumatera Utara
4.12
Halaman dekripsi 3
30
4.13
Halaman dekripsi 4
31
Universitas Sumatera Utara
DAFTAR LAMPIRAN
Nomor
Judul
Halaman
1
Fungsi utama
51
2
Fungsi enkripsi
52
3
Fungsi dekripsi
59
Universitas Sumatera Utara
ELGAMAL DALAM PENGAMANAN DATA
PADA FILE DOKUMEN
SKRIPSI
M BUDIMAN KHANAFI M
120803008
DEPARTEMEN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
MEDAN
2016
Universitas Sumatera Utara
IMPLEMENTASI KOMBINASI ALGORITMA RSA DAN
ELGAMAL DALAM PENGAMANAN DATA
PADA FILE DOKUMEN
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat untuk mencapai gelar
Sarjana Sains
M BUDIMAN KHANAFI M
120803008
DEPARTEMEN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
MEDAN
2016
Universitas Sumatera Utara
PERSETUJUAN
Judul
Kategori
Nama
Nomor Induk Mahasiswa
Program Studi
Departemen
Fakultas
: Implementasi Kombinasi Algoritma RSA dan
ElGamal Dalam Pengamanan Data Pada File
Dokumen
: Skripsi
: M Budiman Khanafi M
: 120803008
: Sarjana (S1) Matematika
: Matematika
: Matematika Dan Ilmu Pengetahuan Alam
(FMIPA) Universitas Sumatera Utara
Disetujui di
Medan, Juli 2016
Komisi Pembimbing:
Pembimbing 2,
Pembimbing 1,
Dr. Mardiningsih, M.Si
NIP. 19630405 198811 2 001
Dr. Syahriol Sitorus, M.IT
NIP. 19710310 199703 1 004
Disetujui oleh
Departemen Matematika FMIPA USU
Ketua,
Prof. Dr. Tulus, M.Si
NIP. 19620901 198803 1 002
Universitas Sumatera Utara
PERNYATAAN
IMPLEMENTASI KOMBINASI ALGORITMA RSA DAN
ELGAMAL DALAM PENGAMANAN DATA
PADA FILE DOKUMEN
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan,
Juli 2016
M Budiman Khanafi M
120803008
Universitas Sumatera Utara
PENGHARGAAN
Assalamu’alaikum Wr. Wb.
Puji syukur penulis ucapkan kehadirat Allah SWT atas rahmat dan hidayah-Nya
sehingga penulis dapat menyelesaikan skripsi yang berjudul Implementasi
Kombinasi Algoritma RSA dan ElGamal Dalam Pengamanan Data Pada File
Dokumen ini dalam waktu yang telah ditetapkan. Terimakasih penulis sampaikan
kepada:
1. Bapak Dr. Syahriol Sitorus, M.IT dan Ibu Dr. Mardiningsih, M.Si selaku
dosen pembimbing yang berkenan dan rela mengorbankan waktu, tenaga dan
pikiran guna memberikan petunjuk dan bimbingannya dalam penulisan skripsi
ini.
2. Bapak Drs. Marihat Situmorang, M.Kom dan Bapak Dr. Sawaluddin, M.IT
selaku dosen pembanding atas kritik dan saran yang membangun dalam
penyempurnaan skripsi ini.
3. Bapak Prof. Dr. Tulus, M.Si dan Ibu Dr. Mardiningsih, M.Si selaku Ketua dan
Sekretaris Departemen Matematika FMIPA USU beserta staf pegawai.
4. Bapak Dr. Kerista Sebayang, MS selaku Dekan FMIPA USU beserta staf
pegawai.
5. Terkhusus untuk Ayahanda Kardimad Manurung, Ibunda Suriati Sirait, serta
keluarga besar penulis yang telah memberikan banyak bantuan baik materi,
moral maupun spiritual.
6. Hasina Toni yang selalu memberikan semangat dan dukungannya.
7. Teman-teman penulis Rahmat, Fahmi, Viki, Wanda dan teman-teman
Matematika 2012 lainnya yang tidak dapat disebutkan satu per satu atas segala
bentuk dukungannya.
Semoga segala bentuk bantuan yang telah diberikan kepada penulis
mendapatkan balasan yang lebih baik dari Allah SWT. Akhir kata penulis
mengharapkan kritik dan saran yang membangun demi penyempurnaan skripsi ini
dan berharap semoga skripsi ini dapat bermanfaat bagi para pembaca. Amin.
Universitas Sumatera Utara
IMPLEMENTASI KOMBINASI ALGORITMA RSA DAN
ELGAMAL DALAM PENGAMANAN DATA
PADA FILE DOKUMEN
ABSTRAK
Kriptografi merupakan teknik pengamanan dengan menyandikan pesan menjadi
sederetan karakter yang tidak bermakna. Algoritma Kriptografi terus mengalami
perkembangan, pegembangan dilakukan untuk mengatasi celah keamanan yang
semakin terbuka. Algoritma RSA dan ElGamal adalah algoritma yang cukup
populer digunakan saat ini. Dimana kedua algoritma ini memiliki 2 buah kunci
yaitu kunci publik dan kunci privat dalam proses enkripsi dan dekripsi. Pada
penelitian ini, algoritma RSA dan ElGamal dikombinasikan untuk dapat
mengamankan data pada file dokumen yang bertujuan agar dapat memberikan
perlindungan ganda yang lebih baik dalam menjaga kerahasiaan dari isi file
dokumen tersebut. Hasil akhir dari penelitian ini adalah sebuah program yang
dapat diaplikasikan untuk mengamankan data pada file dokumen.
Kata Kunci: Kriptografi, Algoritma RSA, Algoritma ElGamal.
Universitas Sumatera Utara
IMPLEMENTATION COMBINATION OF RSA AND
ELGAMAL ALGORITHM OF SECURING DATA
ON THE DOCUMENT FILE
ABSTRACT
Cryptography is a security technique to encode the message into a series of
characters that don’t have meaning. Cryptographic algorithm continues to go
through development, development was done to resolve the security gaps that
increasingly open. RSA and ElGamal algorithm are algorithms that are quite
popular to be used nowadays, where these two algorithms have two keys, namely
a public key and a private key in encryption and description process. In this
research, the RSA and ElGamal algorithms are combined to be able to secure data
on a file document that aims to provide a better double protection in maintaining
the confidentiality of the contents of the document file. The end result of this
research is a program that can be applied to secure the data on document file.
Keyword: Cryptography, RSA Algorithm, ElGamal Algorithm.
Universitas Sumatera Utara
DAFTAR ISI
Halaman
i
ii
iii
iv
v
vi
viii
ix
xi
PERSETUJUAN
PERNYATAAN
PENGHARGAAN
ABSTRAK
ABSTRACT
DAFTAR ISI
DAFTAR TABEL
DAFTAR GAMBAR
DAFTAR LAMPIRAN
BAB 1 PENDAHULUAN
1.1 Latar Belakang
1.2 Perumusan Masalah
1.3 Batasan Masalah
1.4 Tujuan Penelitian
1.5 Manfaat Penelitian
1.6 Kerangka Pemikiran
1.7 Metodologi Penelitian
1
2
2
3
3
3
4
BAB 2 LANDASAN TEORI
2.1 Kriptografi
2.1.1 Pengertian Kriptografi
2.1.2 Sejarah Kriptografi
2.1.3 Terminologi Kriptografi
2.1.4 Tujuan Kriptografi
2.1.5 Jenis-Jenis Kriptografi
2.2 Algoritma Kriptografi
2.2.1 Algoritma RSA
2.2.1.1 Proses Pembangkitan Kunci
2.2.1.2 Proses Enkripsi
2.2.1.3 Proses Dekripsi
2.2.2 Algoritma ElGamal
2.2.2.1 Proses Pembangkitan Kunci
2.2.2.2 Proses Enkripsi
2.2.2.3 Proses Dekripsi
5
5
6
8
10
10
12
12
13
14
14
14
15
16
16
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Permasalahan
3.2 Analisis Kebutuhan
3.3 Perancangan Sistem
3.3.1 Perancangan Flowchart
3.3.2 Flowchart Algoritma RSA
17
17
18
18
18
Universitas Sumatera Utara
3.3.3
3.3.4
Flowchart Algoritma ElGamal
Flowchart Kombinasi Algoritma RSA dan ElGamal
BAB 4 IMPLEMENTASI
4.1 Kebutuhan Perangkat Lunak dan Perangkat Keras
4.2 Implementasi
4.2.1 Proses Enkripsi
4.2.2 Proses Dekripsi
4.3 Analisis dalam Aplikasi
4.3.1 Pengamanan Pesan
4.3.2 Pengungkapan Pesan
4.4 Pengujian Sistem
4.4.1 Hasil Algoritma RSA
4.4.1.1 Pengamanan Pesan
4.4.1.2 Pengungkapan Pesan
4.4.2 Hasil Algoritma ElGamal
4.4.2.1 Pengamanan Pesan
4.4.2.2 Pengungkapan Pesan
4.4.3 Perbandingan Hasil kombinasi Algoritma RSA dan ElGamal
dengan Hasil Masing-Masing Algoritma
20
23
24
24
25
29
31
31
36
39
39
39
42
43
43
45
47
BAB 5 KESIMPULAN DAN SARAN
5.1 Kesimpulan
5.2 Saran
49
49
DAFTAR PUSTAKA
LAMPIRAN
51
53
Universitas Sumatera Utara
DAFTAR TABEL
Nomor
Judul
Halaman Tabel
4.1
Kode ASCII Plainteks 1
31
4.2
Plainteks ElGamal
34
4.3
Cipherteks RSA
37
4.4
Kode ASCII Plainteks 2
38
4.5
Kode ASCII Plainteks 3
39
4.6
Kode ASCII Plainteks 4
42
4.7
Kode ASCII Plainteks 5
43
4.8
Kode ASCII Plainteks 6
46
4.9
Waktu Proses
48
Universitas Sumatera Utara
DAFTAR GAMBAR
Nomor
Judul
Halaman Gambar
1.1
Flowchart pengamanan data pada file dokumen
2.1
(a) Sebuah scytale, (b) Pesan ditulis secara horizontal, baris
4
per baris
7
2.2
Mesin enigma
7
2.3
(a) Plainteks, (b) Cipherteks
8
2.4
(a) Skema enkripsi, (b) Skema dekripsi
9
2.5
(a) Skema enkripsi kriptografi simetri, (b) Skema dekripsi
kriptografi simetri
2.6
11
(a) Skema enkripsi kriptografi asimetri, (b) Skema dekripsi
kriptografi asimetri
12
3.1
Flowchart pembangkit kunci RSA
19
3.2
(a) Flowchart enkripsi RSA, (b) Flowchart dekripsi RSA
20
3.3
Flowchart pembangkit kunci ElGamal
21
3.4
Flowchart enkripsi ElGamal
22
3.5
Flowchart dekripsi ElGamal
22
3.6
(a) Flowchart enkripsi kombinasi RSA dan ElGamal,
(b) Flowchart dekripsi kombinasi RSA dan ElGamal
23
4.1
Halaman utama
25
4.2
File yang dienkripsi
25
4.3
Halaman enkripsi 1
26
4.4
Pop-up window pilih file 1
26
4.5
Halaman enkripsi 2
27
4.6
Halaman enkripsi 3
27
4.7
Pop-up window simpan file
28
4.8
Hasil.txt
28
4.9
Halaman dekripsi 1
29
4.10
Pop-up window pilih file 2
29
4.11
Halaman dekripsi 2
30
Universitas Sumatera Utara
4.12
Halaman dekripsi 3
30
4.13
Halaman dekripsi 4
31
Universitas Sumatera Utara
DAFTAR LAMPIRAN
Nomor
Judul
Halaman
1
Fungsi utama
51
2
Fungsi enkripsi
52
3
Fungsi dekripsi
59
Universitas Sumatera Utara