Implementasi Super Enkripsi Algoritma Elgamal Dengan Teknik Transposisi Segitiga

IMPLEMENTASI SUPER ENKRIPSI ALGORITMA ELGAMAL
DENGAN TEKNIK TRANSPOSISI SEGITIGA

SKRIPSI

ISMAIL FATA LUBIS
091401067

PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2015

Universitas Sumatera Utara

IMPLEMENTASI SUPER ENKRIPSI ALGORITMA ELGAMAL DENGAN
TEKNIK TRANSPOSISI SEGITIGA
SKRIPSI

Diajukan untuk melengkapi tugas akhir dan memenuhi syarat mencapai gelar

Sarjana Komputer

ISMAIL FATA LUBIS
091401067

PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2015

Universitas Sumatera Utara

ii

PERSETUJUAN

Judul

Kategori

Nama
Nomor Induk Mahasiswa
Program Studi
Fakultas

: IMPLEMENTASI SUPER ENKRIPSI ALGORITMA
ELGAMAL DENGAN TEKNIK TRANSPOSISI
SEGITIGA
: SKRIPSI
: ISMAIL FATA LUBIS
: 091401067
: SARJANA (S1) ILMU KOMPUTER
: ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI
Diluluskan di
Medan, Januari 2015

Komisi Pembimbing

:


Pembimbing 2

Pembimbing 1

Dian Rachmawati, S.Si, M.Kom
NIP. 198307232009122004

M. Andri Budiman, ST, M.Comp.Sc, MEM
NIP. 197510082008011011

Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer
Ketua,

Dr. Poltak Sihombing, M.Kom
NIP.196203171991031001

Universitas Sumatera Utara


iii

PERNYATAAN

IMPLEMENTASI SUPER ENKRIPSI ALGORITMA ELGAMAL DENGAN
TEKNIK TRANSPOSISI SEGITIGA

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.

Medan, Januari 2015

Ismail Fata Lubis
091401067

Universitas Sumatera Utara

iv


PENGHARGAAN

Puji dan syukur kehadirat Allah SWT, yang hanya dengan rahmat dan izin-Nya
penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat untuk memperoleh
gelar Sarjana Komputer, pada Program Studi S1 Ilmu Komputer Fakultas Ilmu
Komputer dan Teknologi Informasi Universitas Sumatera Utara.
Ucapan terima kasih penulis sampaikan kepada:
1.

Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu
Komputer Universitas Sumatera Utara.

2.

Bapak M. Andri Budiman, ST, M.Comp.Sc, MEM selaku Dosen Pembimbing

3.

Ibu Dian Rachmawati, S.Si, M.Kom selaku Dosen Pembimbing.


4.

Bapak Ade Candra S.T, M.Kom selaku Dosen Pembanding.

5.

Bapak Aulia Rahmat, S.Si, MSc.IT selaku Dosen Pembanding.

6.

Dekan dan Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi
Universitas Sumatera Utara, seluruh tenaga pengajar dan pegawai di Program
Studi S1 Ilmu Komputer Fasilkom-TI USU.

7.

Ayahanda Hasbullah Lubis dan Ibunda Sorta Ruslya Manurung, Adinda Rusda
Afrizam Lubis dan Frida Asyifa Lubis serta seluruh keluarga besar yang selalu
memberikan kasih sayang serta dukungan materil dan moral kepada penulis.


8.

Seluruh sahabat dan teman-teman S1 Ilmu Komputer khususnya stambuk 2009,
terutama Azhar Indra, Gamal Nasir, M. Febri Rahmansyah, Rio Auditya,
Fiktaruddin, Tedja Mukti Raharja, Santo Nainggolan, Raja Rizki Hsb dan
Mustika Agung Maulana yang selalu memberikan semangat dan dorongan
kepada penulis selama menyelesaikan skripsi ini.

9.

Seluruh Sahabat Jalak Qiuck terutama Husnul Abrar, Shofwan Syauri Nasution,
Mhd. Iqbal, M. Syafrizal, Ganda Hutabarat, Ilham Ramadhan Siregar, M. Indra
Siregar, dan M. Fachri yang banyak memberikan semangat dan banyak memberi
hiburan kepada penulis disaat menyelesaikan skripsi ini. Dan semoga kalian
cepat menyusul saya juga.

10. Seseorang yang selalu ada dan selalu membantu penulis baik dalam pengerjaan
skripsi ini maupun dalam hal lainnya, Fithri Rizqi Khairani Nasution. Terima
kasih atas semua bantuan dan semangat yg telah banyak diberikan kepada

penulis selama ini.

Universitas Sumatera Utara

v

11. Pihak-pihak yang terlibat langsung maupun tidak langsung yang membantu
penyelesaian laporan ini.

Semoga Allah SWT melimpahkan berkah kepada semua pihak yang telah
memberikan bantuan, perhatian, serta dukungan kepada penulis dalam menyelesaikan
skripsi ini.

Medan,

Januari 2015

Penulis

Universitas Sumatera Utara


vi

ABSTRAK

Keamanan pesan adalah hal yang sangat penting bagi pengguna yang memiliki pesan
yang bersifat rahasia. Salah satu pengamanan pesan adalah dengan kriptografi.
Kriptografi banyak berkembang sehingga kriptografi simetris sangat mudah
dilumpuhkan. Untuk meningkatkan pengamanan pesan salah satunya dengan
menggabungkan pemakaian kriptografi simetris dan asimetris. Salah satu algoritma
kriptografi asimetris yang umum dipakai adalah algoritma ElGamal. Algoritma ini
mendasarkan kekuatannya pada kesulitan memecahkan persoalan matematis logaritma
diskrit. Untuk memperkuat algoritma ElGamal digunakan teknik transposisi segitiga
yang mampu mengubah susunan kata sesuai bentuk segitiga yang digunakan. Sistem
ini mengedepankan aspek recovery. Aspek ini menjamin tidak akan ada pesan yang
hilang selama proses enkripsi dan dekripsi. Sistem ini mampu mengenkripsi pesan
dengan berbagai ukuran file text. Dalam pengujian file text dengan ukuran 5 kb dapat
dienkripsi dalam waktu 42.3 second dan didekripsi dalam waktu 97 milisecond tanpa
mengubah isi pesan.


Kata Kunci : Kriptografi, ElGamal, Transposisi Segitiga

Universitas Sumatera Utara

vii

IMPLEMENTATION OF SUPER ENCRYPTION ELGAMAL ALGORITHM
USING TRIANGLE TRANSPOSITION

ABSTRACT

Message security is very important for users having confidential messages. One way
to make the message more secure is to use cryptography. The field of cryptanalysis
has grown rapidly, so that symmetric cryptography can be hacked easily. The way that
we can use to increase the security is by combining the use of symmetric and
asymmetric cryptography. One of the asymmetric cryptographic algorithm that is
commonly used is the ElGamal’s algorithm. This algorithm based on its strength on
the difficulty of solving the discrete logarithm problems. To strengthen the ElGamal
algorithm we use triangle transposition which can change the arrangement of words to
triangular shapes. The priority aspect that the system can cover the most is the process

of recovery. This aspect guarantees that there are no messages will be lost during the
process of encryption and decryption. This system has capability to encrypt messages
with various sizes of text files. In testing, a 5 kb text file can be encrypted in 42.3
seconds and decrypted within 97 milliseconds without changing the message contents.

Keyword: Cryptography, ElGamal, Triangle Transposition

Universitas Sumatera Utara

viii

DAFTAR ISI

Halaman
Persetujuan
Pernyataan
Penghargaan
Abstrak
Abstract
Daftar Isi
Daftar Tabel
Daftar Gambar
Daftar Lampiran

ii
iii
iv
vi
vii
viii
x
xi
xiii

Bab I Pendahuluan
1.1 Latar Belakang
1.2 Rumusan Masalah
1.3 Batasan Masalah
1.4 Tujuan Penelitian
1.5 Manfaat Penelitian
1.6 Metode Penelitian
1.7 Sistematika Penulisan

1
2
2
2
3
3
4

Bab II Landasan Teori
2.1 Kriptografi
2.2 Tujuan Kriptografi
2.3 Ancaman Kriptografi
2.4 Kriptografi Asimetris
2.5 Akar Primitif
2.6 Fermat’s Little Theorem
2.7 Modulus Exponential
2.8 Algoritma ElGamal
2.9 Transposisi Segitiga
2.10 Penelitian Terdahulu

5
8
8
9
11
12
12
14
15
16

Bab III Analisis dan Perancangan Sistem
3.1 Analisis Sistem
3.1.1 Analisis Masalah
3.1.2 Analisis Kebutuhan
3.1.2.1 Analisis Fungsional
3.1.2.2 Analisis Nonfungsional
3.1.2.3 Pemodelan Persyaratan dengan Use Case
3.1.3 Analisis Sistem Proses
3.2 Perancangan Sistem
3.2.1 Flowchart
3.2.1.1 Flowchart Gambaran Umum
3.2.1.2 Flowchart Proses Enkripsi dengan Algoritma ElGamal

18
18
19
19
20
20
24
25
25
25
27

Universitas Sumatera Utara

ix

3.2.1.3 Flowchart Pembangkitan Kunci Algoritma ElGamal
3.2.1.4 Flowchart Proses Dekripsi dengan Algoritma ElGamal
3.2.2 Rancangan Antar Muka
3.2.2.1 Antar Muka Form Awal
3.2.2.2 Antar Muka Form Enkripsi
3.2.2.3 Antar Muka Form Dekripsi
3.2.3 Tahapan Sistem
3.2.3.1 Tahapan Transposisi Segitiga Untuk Enkripsi Pesan
3.2.3.2 Tahapan Algoritma ElGamal Untuk Enkripsi Pesan
3.2.3.3 Tahapan Algoritma ElGamal Untuk Dekripsi Pesan
3.2.3.4 Tahapan Transposisi Segitiga Untuk Dekripsi Pesan

27
28
29
30
30
33
35
35
35
40
44

Bab IV Implementasi dan Pengujian Sistem
4.1 Implementasi
4.1.1 Spesifikasi Perangkat Lunak
4.1.2 Form Awal (Loading Form)
4.1.3 Form Enkripsi
4.1.4 Form Dekripsi
4.2 Pengujian
4.2.1 Proses Enkripsi
4.2.2 Proses Dekripsi
4.2.3 Pengujian Sistem Berdasarkan Aspek Recovery
4.2.4 Pengujian Sistem Berdasarkan Panjang Karakter Plaintext
4.2.5 Pengujian Sistem Berdasarkan Panjang Bilangan Prima

45
45
46
46
48
49
49
51
53
74
75

Bab V Kesimpulan dan Saran
5.1 Kesimpulan
5.2 Saran

77
77

Daftar Pustaka

79

Universitas Sumatera Utara

x

DAFTAR TABEL

Nomor
Tabel
3.1
3.2
4.1
4.2
4.3

Nama Tabel

Halaman

Spesifikasi Use Case Enkripsi
Spesifikasi Use Case Dekripsi
Rangkuman Pengujian Sistem
Pengujian Dengan Kunci yang Sama dan Panjang Karakter
Plaintext yang Berbeda
Pengujian Dengan Jumlah Karakter Plaintext yang Sama dan
Panjang Bilangan Prima yang Berbeda

21
23
62
75
76

Universitas Sumatera Utara

xi

DAFTAR GAMBAR

Nomor
Gambar
2.1
2.2
2.3
2.4
2.5
2.6
2.7
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
3.10
3.11
3.12
3.13
3.14
3.15
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
4.10
4.11
4.12
4.13
4.14
4.15
4.16
4.17
4.18
4.19
4.20
4.21

Nama Gambar

Halaman

Sistem Kriptografi Konvensional
Diagram Kriptografi Simetris
Diagram Kriptografi Asimetris
Skema Kriptografi Asimetri Nirkunci Publik
Pertukaran Kunci Deffie –Hellman
Enkripsi Transposisi
Dekripsi Transposisi
Diagram Ishikawa untuk Analisa Masalah
Use Case Diagram Sistem
Activity Diagram untuk Proses Enkripsi
Activity Diagram untuk Proses Dekripsi
Sequence Diagram Proses Enkripsi
Sequence Diagram Proses Dekripsi
Gambaran Umum Sistem
Flowchart untuk Proses Enkripsi dengan Algoritma Elgamal
Flowchart Pembangkit Kunci Algoritma Elgamal
Flowchart untuk Proses Dekripsi dengan Algoritma Elgamal
Rancangan Form Awal
Rancangan Form Enkripsi
Rancangan Form Dekripsi
Enkripsi Untuk Transposisi Segitiga
Dekripsi Untuk Transposisi Segitiga
Loading Form
Form Enkripsi Pesan
Dialog Box Bilangan Bukan Prima
Dialog Box Tidak Ada Plaintext
Dialog Box Kunci Belum di-generate
Form Dekripsi
Plaintext Pengujian Proses Enkripsi
Form Enkripsi Pengujian Sistem
Segitiga Hasil Proses Enkripsi
Ciphertext Hasil Enkripsi Pengujian Sistem
Form Dekripsi Pengujian Sistem
Segitiga Hasil Dekripsi
File Text Hasil Proses Dekripsi
File Uji dengan Ukuran 5.02 kb
Proses Enkripsi Pengujian Pesan dangan File Uji 5.02 kb
File Ciphertext dengan File Uji 5.02 kb
Proses Dekripsi dengan File Uji 5.02 kb
File Hasil Dekripsi dengan File Uji 5.02kb
File Uji 10 kb
Proses Enkripsi dengan File Uji 10 kb
File Ciphertext dengan File Uji 10 kb

5
7
7
8
10
15
16
19
21
22
23
24
25
26
27
28
29
30
31
33
35
44
46
47
47
47
48
48
49
50
50
51
52
52
53
54
54
55
55
56
57
57
58

Universitas Sumatera Utara

xii

4.22
4.23
4.24
4.25
4.26
4.27
4.28
4.29
4.30

Proses Dekripsi dengan File Uji 10 kb
File hasil dekripsi dengan File Uji 10 kb
File Uji 2 kb
Proses Enkripsi dengan File Uji 2 kb dengan kunci 64 bit
File Ciphertext Hasil Enkripsi dengan File Uji 2 kb
Proses Dekripsi dengan File Uji 2 kb dan Kunci 64 bit.
File Hasil Proses Dekripsi dengan File Uji 2 kb
Grafik Waktu Enkripsi dan Dekripsi Berdasarkan Panjang
Plaintext
Grafik Waktu Enkripsi dan Dekripsi Berdasarkan Panjang
Bilangan Prima

58
59
59
60
60
61
61
75
76

Universitas Sumatera Utara

xiii

DAFTAR LAMPIRAN

Halaman
A. Listing Program
B. Curriculum Vitae

A-1
B-1

Universitas Sumatera Utara