PENGAMANAN DATA PESAN MENGGUNAKAN ALGORITMA ELGAMAL.

(1)

PENGAMANAN DATA PESAN MENGGUNAKAN ALGORITMA ELGAMAL

Oleh: Hedro Hutabarat

NIM 409230019 Program Studi Matematika

SKRIPSI

DiajukanUntuk Memenuhi Syarat Memperoleh Gelar Sarjana Sains

JURUSAN MATEMATIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS NEGERI MEDAN

MEDAN 2014


(2)

(3)

iii KATA PENGANTAR

Puji dan syukur penulis panjatkan kehadirat Tuhan Yang Maha Esa atas kasih sayang dan anugerah-Nya yang melimpahkan sehingga penulis dapat menyelesaikan skripsi ini dengan baik. Skripsi ini berjudul “Pengamanan Data Pesan Menggunakan Algoritma ElGamal.” Skripsi ini disusun untuk memenuhi salah satu syarat memperoleh gelar Sarjana Sains di Universitas Negeri Medan.

Untuk menyelesaikan skripsi ini penulis mendapat berbagai masukan dan bantuan dari berbagai pihak. Oleh karena itu, dengan segala kerendahan hati, pada kesempatan ini penulis mengucapakan terima kasih kepada:Bapak Prof. Dr. Ibnu Hajar, M.Si., selaku Rektor Universitas Negeri Medan, Bapak Prof. Drs. Motlan, M.Sc, Ph.D., selaku Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam, Bapak Drs. Syafari, M.Pd., selaku Ketua Jurusan Matematika, Bapak Drs. Yasifati Hia, M.Si., selaku Sekretaris Jurusan Matematika, Bapak Drs. Yasifati Hia, M.Si., selaku Ketua Program Studi Matematika, Ibu Dra. Nerli Khairani, M.Si., selaku Pembimbing Akademik dan IbuDra. Hamidah Nasution, M.Si., selaku Pembimbing Skripsi yang telah meluangkan waktu dalam memberikan membimbing dan arahan sehingga skripsi ini dapat penulis selesaikan dengan baik, Bapak Abil Mansyur, S.Si, M.Si., Bapak Drs. H. Banjarnahor, M.Pd., dan Ibu Dra. Nerli Khairani, M.Si., selaku dosen penguji penulis yang telah memberikan saran dan masukan selama penulisan skripsi ini.Seluruh dosen dan pegawai di lingkungan Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Negeri Medan.

Teristimewa buat Ayahanda Hendri Hutabarat dan Ibunda tercintaWalentina Siburian yang selalu memberikan dukungan, motivasi dan dana kepada penulis sehingga penulis dapat menyelesaikan skripsi ini. Terima kasih juga kepada adik-adikku tersayang Ria Martselina Hutabarat, Juliana Grace Hutabarat yang memberikan semangat, terima kasih juga kepada teman tercinta Shinta Martina Parhusipyang selalu menemani dalam suka dan duka dalam


(4)

iv

penyelesaian skripsi ini. Terima kasih kepada sahabat-sahabat terkasih Aji, Hambali, Marulitua, Antoni, Gom, Siska, Juliya, Anim, Pebrina, Lek Jes, Jondi yang memberi masukan dan motivasi dalam penulisan skripsi ini.Teman-teman saya anggota-anggota Akbodyang selalu memberikan dukungannya dan memberikan penghiburan kepada penulis.Teman-teman seperjuangan di kelas Matematika Non Kependidikan 2009yang selalu memberikan semangat kepada penulis. Dan semua pihak yang turut membantu penyelesaian skripsi ini yang tidak dapat disebutkan satu per satu.

Mengingat keterbatasan kemampuan penulis, penulis juga menyadari masih banyak kekurangan dalam Skripsi ini, karena itu penulis mengharapkan saran dan kritik yang membangun dari pembaca demi penyempurnaan skripsi ini.

Semoga skripsi ini bermanfaat dan menambah wawasan bagi kita semua. Akhir kata, penulis mengucapkan terima kasih.

Medan, Maret 2014 Penulis

Hedro Hutabarat NIM.409230019


(5)

ii

PENGAMANAN DATA PESAN MENGGUNAKAN ALGORITMA ELGAMAL

Hedro Hutabarat (409230019)

ABSTRAK

Algoritma ElGamal merupakan algoritma kriptografi asimetris yangmenggunakan dua jenis kunci, yaitu kunci publik dan kunci rahasia. Tingkat keamanan algoritma ini didasarkan atas masalah logaritma diskret pada grup pergandaan bilangan bulat modulo prima, ℤp* = {1, 2,..., p -1}, dengan p adalah

bilangan prima. Sehingga apabila digunakan bilangan prima dan logaritma diskret yang besar, maka upaya untuk menyelesaikan masalah logaritma diskret ini menjadi sia-sia dan dirasakan tidak sesuai dengan isi informasi yang ingin diperoleh.

Pengamanan data pesan dengan menggunakan algoritma ElGamal dapat dilakukan dengan proses penyandian dan tanda tangan digital. Proses penyandian dilakukan dengan tujuan untuk mengubah pesan asli menjadi cipherteks, sehingga pesan tersebut tidak dapat dibaca bagi yang tidak berkepentingan. Sedangkan tanda tangan digital dapat digunakan untuk membuktikan bahwa data yang dikirimkan tidak mengalami modifikasi secara ilegal.


(6)

iv

DAFTAR ISI

Halaman

Lembar Pengesahan i

Abstrak ii

Kata Pengantar iii

Daftar Isi v

Daftar Gambar vii

Daftar Algoritma viii

Daftar Tabel ix

Daftar Lampiran x

BAB I PENDAHULUAN

1.1 Latar Belakang 1

1.2 Rumusan Masalah 3

1.3 Batasan Masalah 3

1.4 Tujuan Penelitian 3

1.5 Manfaat Penelitian 4

BAB II LANDASAN TEORI 5

2.1 Kriptografi 5

2.1.1 Algoritma Kriptografi 7

2.1.1.1 Algoritma Simetris 7

2.1.1.2 Algoritma Kunci Publik 8

2.1.2 Sistem Kriptografi 9

2.2 Bilangan Bulat 9

2.2.1 Divisibilitas 10

2.2.2 Representasi Bilangan Bulat 11

2.2.3 Pembagi Persekutuan Terbesar 11

2.2.4 Algoritma Euclide 13

2.3 Persamaan Kongruen dan Himpunan Bilangan Bulat Modulo 14


(7)

v

Halaman

2.3.2 Metode Fast Exponentiation 15

2.4 Tes Keprimaan 16

2.4.1 Tes Fermat 17

2.4.2 Bilangan Carmichael 18

2.4.3 Tes Miller-Rabbin 19

2.5 Masalah Logaritma Diskrit 20

2.5.1 Masalah Logaritma Diskrit pada Grup Pergandaan

Bilangan Bulat Modulo Prima 20

2.6 Algoritma ElGamal 21

2.6.1 Pembentukan Kunci 22

2.6.2 Enkripsi 25

2.6.3 Dekripsi 26

2.7 Fungsi Hash Satu Arah 27

2.8 Tanda Tangan Digital Menggunakan Algoritma ElGamal 28

2.8.1 Proses Pembentukan Kunci 29

2.8.2 Proses Penandatanganan (Signing) 29

2.8.3 Proses Verifikasi 30

BAB III METODOLOGI PENELITIAN 31

3.1 Waktu dan Tempat Penelitian 31

3.2 Jenis Penelitian 31

3.3 Prosedur Penelitian 31

BAB IV PEMBAHASAN 38

4.1 Sistem Kriptografi ElGamal 38

4.1.1 Proses Pembentukan Kunci 38

4.1.1.1 Tes Fermat 38

4.1.1.2 Tes Elemen Primitif 39

4.1.1.3 Pembentukan Kunci 40


(8)

vi

Halaman

4.1.3 Proses Dekripsi 43

4.2 Fungsi Hash Satu Arah 45

4.3 Tanda Tangan Digital Menggunakan Algoritma ElGamal 46

4.3.1 Proses Pembentukan Kunci 46

4.3.2 Proses Penandatanganan 46

4.3.3 Proses Verifikasi 47

4.3.4 Contoh Pesan yang Telah Dirubah Isinya 47

4.3.4.1 Proses Verifikasi 48

4.4 Implementasi dan Uji Coba 48

4.4.1 Uji Coba Program 50

4.4.1.1 Bahan Pengujian 50

4.4.1.2 Pengujian Program 50

4.4.1.2.1 Pengujian Proses Pembentukan Kunci 51 4.4.1.2.2 Pengujian Proses Enkripsi 53 4.4.1.2.3 Pengujian Proses Dekripsi 55

BAB V KESIMPULAN DAN SARAN 57

5.1 Kesimpulan 57

5.2 Saran 58


(9)

ix DAFTAR TABEL

Halaman Tabel 4.1 Perhitungan �2��� 1907≠ 1 dan

�953

��� 1907≠1 39

Tabel 4.2 Konversi karakter pesan ke kode ASCII 41

Tabel 4.3 Proses enkripsi 41

Tabel 4.4 Proses dekripsi 43


(10)

vii DAFTAR GAMBAR

Halaman

Gambar 2.1 Skema algoritma simetris 8

Gambar 2.2 Skema algoritma asimetris 8

Gambar 3.1 Diagram Alir proses pembentukan kunci 33

Gambar 3.2 Diagram Alir proses enkripsi 34

Gambar 3.3 Diagram alir proses dekripsi 35

Gambar 3.4 Diagram alir proses penandatanganan 36

Gambar 3.5 Diagram alir proses verifikasi 37

Gambar 4.1 Tampilan program menu utama 49

Gambar 4.2 Tampilan program pada menu pembentukan kunci 50 Gambar 4.3 Tampilan program untuk membentuk kunci otomatis 51 Gambar 4.4 Tampilan program untuk membentuk kunci pilihan 52

Gambar 4.5 Tampilan program proses enkripsi 53

Gambar 4.6 Tampilan program menampilkan hasil cipherteks 53 Gambar 4.7 Tampilan program menampilkan proses dekripsi 54 Gambar 4.8 Tampilan program pada menu program tambahan 55


(11)

viii DAFTAR ALGORITMA

Halaman

Algoritma 2.1 Tes Fermat 17

Algoritma 2.2 Tes Miller-Rabbin 19

Algoritma 2.3 Tes Bilangan Prima Aman 23

Algoritma 2.4 Tes Elemen Primitif 23

Algoritma 2.5 Algoritma Pembentukan Kunci 24

Algoritma 2.6 Algoritma Enkripsi 25

Algoritma 2.7 Algoritma Dekripsi 27


(12)

x DAFTAR LAMPIRAN

Halaman

Lampiran 1 Tabel Kode ASCII 59


(13)

1 BAB I

PENDAHULUAN

1.1 Latar Belakang

Kemajuan sistem informasi banyak sekali memberikan keuntungan dalam kehidupan sehari-hari, selain itu ada juga aspek-aspek dari sisi negatif dari kemajuan sistem informasi tersebut. Hampir semua aspek masyarakat menggunakan sistem informasi berbasis komputer, apalagi informasi-informasi mudah didapat dengan adanya jaringan komputer dan internet yang menyediakan infromasi secara tepat dan akurat.

Pengiriman data atau penyimpanan data melalui jaringan komputer memerlukan suatu proses yang dapat menjamin keamanan dan keutuhan dari data yang dikirimkan tersebut.Proses pengiriman data yang dilakukan pada jaringan komputer publik, pada dasarnya tidak melakukan pengamanan terhadap konten dari data yang dikirim, sehingga ketika dilakukan penyadapan pada jalur pengirimannya maka data yang dapat disadap dapat langsung dibaca oleh penyadap (Ariwibowo, 2008).

Untuk menghindari kemungkinan data yang disadap dapat langsung dibaca oleh penyadap, maka data yang dikirim diacak dengan menggunakan metode penyandian tertentu sehingga pesan yang terkandung dalam data yang terkirim tersebut menjadi lebih aman. Namun, hanya dengan menyandikan pesan tersebut, tidak menutup kemungkinan pesan dirubah oleh pihak ke tiga. Untuk memperkuat kerahasiaan serta keaslian dari pesan tersebut, maka berkembanglah tanda tangan digital. Penerima pesan akan percaya bahwa pesan yang dikirimkan masih otentik, karena telah dibubuhkan tanda tangan pada pesan tersebut. Selanjutnya, untuk mengatasi permasalahan di atas, dapat diselesaikan dengan kiptografi. Kriptografi tidak hanya menyediakan alat untuk keamanan pesan, tetapi juga sekumpulan teknik yang berguna (Rinaldi, 2006).

Menurut Doni Ariyus (2008), kriptografi didefinisikan sebagai ilmu sekaligus seni untuk menjaga kerahasiaan pesan (data atau informasi) dengan cara


(14)

2

menyamarkannya menjadi bentuk tersandi yang tidak mempunyai makna bagi yang tidak memahaminya.

Banyak jenis tentang algoritma kriptografi untuk mengamankan pesan rahasia. Salah satu algoritma yang digunakan dalam mengamankan data pesan yaitu menggunakan algoritma ElGamal. Algoritma ElGamal termasuk dalam kategori algoritma asimetris. Dimana dalam pembuatan algoritma tersebut didapat dua kunci yaitu kunci publik dan kunci rahasia.

Algoritma tersebut pertama kali dikembangkan oleh Taher ElGamal pada tahun 1985. Sampai saat ini, algoritma ElGamal masih dipercaya sebagai metode penyandian,seperti pada pengamanan e-mail dan tanda tangan digital. Pada tahun 1994 pemerintah Amerika Serikat mengadopsi Digital Signature Standard, sebuah mekanisme penyandian berdasar pada algoritma ElGamal (Massandy, 2009).

Keamanan algoritma ElGamal terletak pada kesulitan penghitungan logaritma diskrit pada bilangan modulo prima yang besar sehingga upaya untuk menyelesaikan masalah logaritma ini menjadi sangat sukar. Pada sistem ElGamal pembentukan kunci dilakukan dengan memilih secara acak bilangan prima � yang bernilai besar dan mencari nilai � yang merupakan elemen primitif dari grup � ∗. Kemudian mencari bilangan bulat � secara acak, 1 <� <� −2 dimana� merupakan kunci rahasia dan menghitung �= �� ���� (Joseph and Penzhorn. 2003).

Untuk mengenkripsikan pesan �, 0 < �< � −1, diambil sebarang bilangan acak rahasia � ∈{0, 1, … ,� −2}. Teks kode diekspresikan dengan dua penanda (�,�)yaitu � =���(����) dan =.

��−1−� ����.

Berdasarkan latar belakang masalah diatas maka penulis memilih judul “Pengamanan Data Pesan Menggunakan Algoritma ElGamal”.


(15)

3

1.2 Rumusan Masalah

Berdasarkan pada latar belakang diatas, maka rumusan masalah dalam penelitian ini adalah

1. Bagaimana membangkitkan bilangan acak (prima atau tidak prima) untuk menjadi kunci dalam sistem algoritma ElGamal?

2. Bagaimana menyandikandan membubuhkan tanda tangan digitalpada suatu data pesan dengan menggunakan konsep matematis yang ada pada algoritma ElGamal ?

1.3 Batasan Masalah

Pada penelitian ini, pembahasan algoritma ElGamal hanya meliputi : 1. Konsep matematis yang menjadi dasar dalam pembentukan dan proses

penyandian suatu data pesan serta pemberian tanda tangan digital pada pesan tersebut.

2. Data yang akan disandikan pada penelitian ini hanya data berupa teks. 3. Pada penelitian ini tidak dibahas bagaimana sulitnya memecahkan

mekanisme penyandian tersebut.

1.4 Tujuan Penelitian

Selain untuk memenuhi syarat kelulusan program Strata-1 (S1) Program Studi Matematika Universitas Negeri Medan, penelitian ini bertujuan:

1. Membangkitkan bilangan acak (prima atau tidak prima) untuk menjadi kunci dalam sistem algoritma ElGamal.

2. Menyandikandan membubuhkan tanda tangan digital pada suatu data pesan dengan menggunakan konsep matematis yang ada pada algoritma ElGamal.


(16)

4

1.5 Manfaat Penelitian

Adapun manfaat penelitian dari pembahasan masalah ini adalah sebagai berikut :

1. Manfaat bagi Penulis

Untuk memperdalam dan mengembangkan wawasan disiplin ilmu yang telah dipelajari untuk mengkaji permasalahan tentang Pengamanan Data Pesan Menggunakan Algoritma ElGamal.

2. Manfaat bagi Pembaca

Sebagai tambahan wawasan dan informasi tentang implementasi algoritma ElGamal dalam pengamanan informasi dan dapat dijadikan acuan dalam pengembangan penulisan karya tulis ilmiah.


(17)

57 BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Dari hasil analisis dalam penelitian ini, maka dapat disimpulkan sebagai berikut :

1. Untuk membangkitkan bilangan acak prima sebagai kunci dalam penyandian pesan berdasarkan algoritma ElGamal dilakukan dengan proses pemilihan bilangan acak prima �> 255. Kemudian untuk mengetahui bilangan tersebut merupakan bilangan prima atau komposit dilakukan dengan menghitung� ≡ ��−1(����), jika �= 1 maka bilangan tersebut prima.

2. Pengamanan pesan dengan cara menyandikan pesan dan tanda tangan digital menggunakan algoritma ElGamal, dilakukan dengan proses berikut. a. Penyandian pesan

• Pembentukan kunci. Prosesnya dengan memilih bilangan prima

�> 255, elemen primitif � ∈ �∗, bilangan acak � ∈

{1, 2, … ,� −2}. Kemudian menghitung �= �� ����. Setelah

proses perhitungan selesai publikasikan nilai (�,�,�), serta rahasiakan nilai �.

• Proses Enkripsi. Prosesnya, pesan yang akan disandikan diubah menjadi blok-blok karakter dengan setiap blok adalah satu karakter pesan. Kemudian konversikan masing-masing karakter ke dalam kode ASCII. Selanjutnya memilih bilangan acak � ∈{0, 1, … ,� − 2}. Kemudian menghitung �� = 176�� ��� 1907 dan �� =

683��.��� 1907. Setelah perhitungan selesai maka akan

diperoleh cipherteks yaitu (��,��),�= 1,2, … ,�

• Proses Dekripsi. Prosesnya dengan memasukkan kunci publik dan kunci rahasia juga cipherteks yang diperoleh pada proses pembentukan kunci dan proses enkripsi. Kemudian menghitung


(18)

58

�� =���−1−� ���� dan �� =��.�� ����. Setelah hasil

perhitungan diperoleh, konversikan masing-masing �� ke dalam karakter sesuai dengan kode ASCII-nya. Kemudian gabungkan semua karakter untuk mendapatkan pesan asli.

b. Proses tanda tangan digital

• Pembentukan kunci. Proses ini langkah-langkahnya sama dengan proses pembentukan kunci pada penyandian pesan.

• Proses penandatanganan. Prosesnya dengan menghitung nilai hash (MD) suatu pesan kemudian memilih �, yang relatif prima dengan

� −1. Selanjutnya menghitung � =�� ���� dan �= (�� − ��)�−1���� −1. Setelah proses perhitungan selesai diperoleh pasangan tanda tangan (�,�).. (�,�)inilah yang dinamakan tanda tangan digital yang akan dibubuhkan pada pesan tersebut

• Proses verifikasi. Proses ini dilakukan oleh pihak penerima pesan yaitu dengan menghitung nilai MD. Kemudian mengecek bahwa 1≤ � ≤ � −1 terpenuhi dan menghitung ���� ≡ ������� 3. Jumlah karakter yang dapat diinput pada program pascal ini hanya 126

karakter dikarenakan keterbatasan pascal untuk menampilkan karakter. 4. Algoritma kriptografi asimetris, seperti algoritma ElGamal, sangat baik

untuk mengatasi masalah distribusi kunci.

5. Agar dapat mempermudah dalam menentukan elemen primitif grup �∗∗, maka penentuan bilangan prima � sebagai kunci publik sebaiknya harus diketahui faktorisasi prima dari � −1, seperti bilangan prima aman, yaitu

�= 2.�+ 1, dengan � adalah bilangan prima.

6. Kelebihan dari algoritma ElGamal adalah proses enkripsi pada plainteks yang sama diperoleh chiperteks yang berbeda-beda, namun pada proses dekripsi diperoleh plainteks sama.


(19)

59

5.2 Saran

Setelah membahas proses pengamanan data pesan dan tanda tangan digital menggunakan algoritma ElGamal pada skripsi ini, penulis ingin menyampaikan beberapa saran sebagai berikut :

1. Sistem kriptografi ElGamal merupakan salah satu algoritma yang aman digunakan dalam pengamanan pesan. Meskipun termasuk dalam algoritma yang aman, kunci publik juga harus dijaga keamanannya dengan membuat kunci yang berbeda setiap melakukan komunikasi agar tidak dimanipulasi oleh pihak-pihak yang tidak bertanggungjawab.

2. Mengimplementasikan algoritma ElGamal menggunakan

bahasapemrograman lain, seperti C/C++, Java, Visual Basic dan lain sebagainya.


(20)

59 DAFTAR PUSTAKA

Ariyus, Doni. 2008. Pengantar Ilmu Kriptografi. Yogyakarta : Andi Offset.

Burton, David M. 2002. Elementary Number Theory Fifth Edition. New York : McGraw-Hill.

Buchmann, Johannes. 2004. Introduction to Cryptography Second Edition. USA Springer Science+Business Media, Inc.

Gallian, Joseph A. 2010. Contemporary Abstract Algebra Seventh Edition. USA : Brooks/Cole Cengage Learning.

Joseph, G and Penzhorn, W T. 2003. Design and Implementation of Fast Multiplication Algorithms in Public Key Cryptosystems for Smart Cards. Southern African Telecommunication Networks and Applications Conference (SATNAC) 2003 Proceedings, ISBN 0-620-30949-0

Massandy, Danang Tri. 2009. Algoritma ElGamal Dalam Pengamanan Pesan Rahasia. Bandung : Institut Teknologi Bandung.

Menezes, Oorcshot, and Vanstone. 1996. Handbook of Apllied Cryptography. USA : CRC Press, Inc.

Rosen, Kenneth H. 2005. Elementary Number Theory and Its Aplications Fifth Edition. USA : AT&T Laboratories.

Schneier, Bruce. 1996. Applied Cryptography, Second Edition : Protocol, Algorithms and Source Code in C. Illinois : John Wiley and Sons, Inc.

Stinson, Douglas R. 2006. Cryptography Theory and Practice Third Edition. USA : Chapman & Hall/ CRC.

Tamam, Dwiono dan Hartanto. 2010. Penerapan Algoritma Kriptografi ElGamal untuk Pengaman File Citra. Jurnal EECCIS Vol IV, No. 1, Juni 2010.

Trape and Washington. 2006. Introduction to Cryptography with Coding Theory. USA : Pearson Education Inc.

Vaudenay, Serge. 2006. A Classical Introduction to Cryptography : Aplications for Communications Security. USA : Springer Science+Business Media, Inc.


(21)

ii

RIWAYAT HIDUP

Penulis dilahirkan di Jambi, pada tanggal 23 November 1991. Ayah bernama Hendri Hutabarat, S.Pd dan Ibu bernama Walentina Siburian, dan merupakan anak pertama dari tiga bersaudara. Pada tahun 1997, penulis masuk SD ST Antonius VI Medan, dan lulus pada tahun 2003. Pada tahun 2003, penulis melanjutkan sekolah pada SMP Negeri 3 Medan, dan lulus pada tahun 2006. Pada tahun 2006, penulis melanjutkan sekolah di SMA Negeri 5 Medan, dan lulus pada tahun 2009. Pada tahun 2009, penulis diterima di Program Studi Matematika Jurusan Matematika, Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Negeri Medan dan lulus pada tanggal 12 Maret 2014.


(1)

1.5 Manfaat Penelitian

Adapun manfaat penelitian dari pembahasan masalah ini adalah sebagai berikut :

1. Manfaat bagi Penulis

Untuk memperdalam dan mengembangkan wawasan disiplin ilmu yang telah dipelajari untuk mengkaji permasalahan tentang Pengamanan Data Pesan Menggunakan Algoritma ElGamal.

2. Manfaat bagi Pembaca

Sebagai tambahan wawasan dan informasi tentang implementasi algoritma ElGamal dalam pengamanan informasi dan dapat dijadikan acuan dalam pengembangan penulisan karya tulis ilmiah.


(2)

57 BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Dari hasil analisis dalam penelitian ini, maka dapat disimpulkan sebagai berikut :

1. Untuk membangkitkan bilangan acak prima sebagai kunci dalam penyandian pesan berdasarkan algoritma ElGamal dilakukan dengan proses pemilihan bilangan acak prima �> 255. Kemudian untuk mengetahui bilangan tersebut merupakan bilangan prima atau komposit dilakukan dengan menghitung� ≡ ��−1(����), jika �= 1 maka bilangan tersebut prima.

2. Pengamanan pesan dengan cara menyandikan pesan dan tanda tangan digital menggunakan algoritma ElGamal, dilakukan dengan proses berikut. a. Penyandian pesan

• Pembentukan kunci. Prosesnya dengan memilih bilangan prima

�> 255, elemen primitif � ∈ �∗, bilangan acak � ∈

{1, 2, … ,� −2}. Kemudian menghitung �= �� ����. Setelah

proses perhitungan selesai publikasikan nilai (�,�,�), serta rahasiakan nilai �.

• Proses Enkripsi. Prosesnya, pesan yang akan disandikan diubah menjadi blok-blok karakter dengan setiap blok adalah satu karakter pesan. Kemudian konversikan masing-masing karakter ke dalam kode ASCII. Selanjutnya memilih bilangan acak � ∈{0, 1, … ,� −

2}. Kemudian menghitung � = 176�� ��� 1907 dan =

683��.��� 1907. Setelah perhitungan selesai maka akan

diperoleh cipherteks yaitu (�,�),�= 1,2, … ,�

• Proses Dekripsi. Prosesnya dengan memasukkan kunci publik dan kunci rahasia juga cipherteks yang diperoleh pada proses pembentukan kunci dan proses enkripsi. Kemudian menghitung


(3)

�� =���−1−� ���� dan �� =��.�� ����. Setelah hasil

perhitungan diperoleh, konversikan masing-masing � ke dalam karakter sesuai dengan kode ASCII-nya. Kemudian gabungkan semua karakter untuk mendapatkan pesan asli.

b. Proses tanda tangan digital

• Pembentukan kunci. Proses ini langkah-langkahnya sama dengan proses pembentukan kunci pada penyandian pesan.

• Proses penandatanganan. Prosesnya dengan menghitung nilai hash (MD) suatu pesan kemudian memilih �, yang relatif prima dengan

� −1. Selanjutnya menghitung � =�� ���� dan �= (�� − ��)�−1���� −1. Setelah proses perhitungan selesai diperoleh pasangan tanda tangan (�,�).. (�,�)inilah yang dinamakan tanda tangan digital yang akan dibubuhkan pada pesan tersebut

• Proses verifikasi. Proses ini dilakukan oleh pihak penerima pesan yaitu dengan menghitung nilai MD. Kemudian mengecek bahwa 1≤ � ≤ � −1 terpenuhi dan menghitung ���� ≡ ������� 3. Jumlah karakter yang dapat diinput pada program pascal ini hanya 126

karakter dikarenakan keterbatasan pascal untuk menampilkan karakter. 4. Algoritma kriptografi asimetris, seperti algoritma ElGamal, sangat baik

untuk mengatasi masalah distribusi kunci.

5. Agar dapat mempermudah dalam menentukan elemen primitif grup �∗∗, maka penentuan bilangan prima � sebagai kunci publik sebaiknya harus diketahui faktorisasi prima dari � −1, seperti bilangan prima aman, yaitu

�= 2.�+ 1, dengan � adalah bilangan prima.

6. Kelebihan dari algoritma ElGamal adalah proses enkripsi pada plainteks yang sama diperoleh chiperteks yang berbeda-beda, namun pada proses dekripsi diperoleh plainteks sama.


(4)

59

5.2 Saran

Setelah membahas proses pengamanan data pesan dan tanda tangan digital menggunakan algoritma ElGamal pada skripsi ini, penulis ingin menyampaikan beberapa saran sebagai berikut :

1. Sistem kriptografi ElGamal merupakan salah satu algoritma yang aman digunakan dalam pengamanan pesan. Meskipun termasuk dalam algoritma yang aman, kunci publik juga harus dijaga keamanannya dengan membuat kunci yang berbeda setiap melakukan komunikasi agar tidak dimanipulasi oleh pihak-pihak yang tidak bertanggungjawab.

2. Mengimplementasikan algoritma ElGamal menggunakan

bahasapemrograman lain, seperti C/C++, Java, Visual Basic dan lain sebagainya.


(5)

59 Ariyus, Doni. 2008. Pengantar Ilmu Kriptografi. Yogyakarta : Andi Offset.

Burton, David M. 2002. Elementary Number Theory Fifth Edition. New York : McGraw-Hill.

Buchmann, Johannes. 2004. Introduction to Cryptography Second Edition. USA Springer Science+Business Media, Inc.

Gallian, Joseph A. 2010. Contemporary Abstract Algebra Seventh Edition. USA : Brooks/Cole Cengage Learning.

Joseph, G and Penzhorn, W T. 2003. Design and Implementation of Fast

Multiplication Algorithms in Public Key Cryptosystems for Smart Cards. Southern

African Telecommunication Networks and Applications Conference (SATNAC) 2003 Proceedings, ISBN 0-620-30949-0

Massandy, Danang Tri. 2009. Algoritma ElGamal Dalam Pengamanan Pesan

Rahasia. Bandung : Institut Teknologi Bandung.

Menezes, Oorcshot, and Vanstone. 1996. Handbook of Apllied Cryptography. USA : CRC Press, Inc.

Rosen, Kenneth H. 2005. Elementary Number Theory and Its Aplications Fifth

Edition. USA : AT&T Laboratories.

Schneier, Bruce. 1996. Applied Cryptography, Second Edition : Protocol,

Algorithms and Source Code in C. Illinois : John Wiley and Sons, Inc.

Stinson, Douglas R. 2006. Cryptography Theory and Practice Third Edition. USA : Chapman & Hall/ CRC.

Tamam, Dwiono dan Hartanto. 2010. Penerapan Algoritma Kriptografi ElGamal

untuk Pengaman File Citra. Jurnal EECCIS Vol IV, No. 1, Juni 2010.

Trape and Washington. 2006. Introduction to Cryptography with Coding Theory. USA : Pearson Education Inc.

Vaudenay, Serge. 2006. A Classical Introduction to Cryptography : Aplications


(6)

ii

RIWAYAT HIDUP

Penulis dilahirkan di Jambi, pada tanggal 23 November 1991. Ayah bernama Hendri Hutabarat, S.Pd dan Ibu bernama Walentina Siburian, dan merupakan anak pertama dari tiga bersaudara. Pada tahun 1997, penulis masuk SD ST Antonius VI Medan, dan lulus pada tahun 2003. Pada tahun 2003, penulis melanjutkan sekolah pada SMP Negeri 3 Medan, dan lulus pada tahun 2006. Pada tahun 2006, penulis melanjutkan sekolah di SMA Negeri 5 Medan, dan lulus pada tahun 2009. Pada tahun 2009, penulis diterima di Program Studi Matematika Jurusan Matematika, Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Negeri Medan dan lulus pada tanggal 12 Maret 2014.