IMPLEMENTASI ALGORITMA KRIPTOGRAFI RSA DAN RABIN PADA THREE-PASS PROTOCOL UNTUK PENGAMANAN DATA PADA APLIKASI CHAT BERBASIS ANDROID
IMPLEMENTASI ALGORITMA KRIPTOGRAFI RSA DAN RABIN
PADA THREE-PASS PROTOCOL UNTUK PENGAMANAN DATA
PADA APLIKASI CHAT BERBASIS ANDROID
SKRIPSI
JANUAR ANDI H SIRAIT
141421044
PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2017
IMPLEMENTASI ALGORITMA KRIPTOGRAFI RSA DAN RABIN
PADA THREE-PASS PROTOCOL UNTUK PENGAMANAN DATA
PADA APLIKASI CHAT BERBASIS ANDROID
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah
Sarjana Ilmu Komputer
JANUAR ANDI H SIRAIT
141421044
PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
ii
PERSETUJUAN
Judul
: IMPLEMENTASI ALGORITMA KRIPTOGRAFI RSA
DAN RABIN PADA THREE-PASS PROTOCOL
UNTUK PENGAMANAN DATA PADA APLIKASI
CHAT BERBASIS ANDROID
Kategori
: SKRIPSI
Nama
: JANUAR ANDI H. SIRAIT
Nomor Induk Mahasiswa : 141421044
Program Studi
: EKSTENSI SARJANA (S1) ILMU KOMPUTER
Departemen
: ILMU KOMPUTER
Fakultas
: FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI UNIVERSITAS SUMATERA UTARA
Diluluskan di
Medan, Maret2017
Komisi Pembimbing
:
Pembimbing 2
Pembimbing 1
Jos Timanta Tarigan, S.Kom., M.Sc.
NIP. 198501262015041001
Dian Rachmawati, S.Si., M. Kom.
NIP. 198307232009122004
Diketahui/disetujui oleh
Program Studi S1 Ilmu Komputer
Ketua,
Dr. Poltak Sihombing, M.Kom.
NIP. 19620317199103100
iii
PERNYATAAN
IMPLEMENTASI ALGORITMA KRIPTOGRAFI RSA DAN RABIN PADA
THREE-PASS PROTOCOL UNTUK PENGAMANAN DATA
PADA APLIKASI CHAT BERBASIS ANDROID
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan, Maret 2017
Januar Andi H. Sirait
141421044
iv
PENGHARGAAN
Puji dan syukur kehadirat Tuhan Yang Maha Esa, yang dengan rahmat dan
karunia-Nya penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat untuk
memperoleh gelar Sarjana Komputer, pada Program Studi Ekstensi S1 Ilmu Komputer
Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
Pada pengerjaan skripsi dengan judul Implementasi Algoritma Kriptografi Rsa
Dan Rabin Pada Three-Pass Protocol Untuk Pengamanan Data Pada Aplikasi Chat
Berbasis Android, penulis menyadari bahwa banyak pihak yang turut membantu, baik
dari pihak keluarga, sahabat dan orang-orang terkasih yang memotivasi dalam
pengerjaan. Dalam kesempatan ini, penulis mengucapkan terima kasih kepada:
1. Bapak Prof. Dr. Runtung Sitepu, SH, M. Hum selaku Rektor Universitas
Sumatera Utara.
2.
Prof. Dr. Opim Salim Sitompul, M.Sc selaku Dekan Fakultas Ilmu Komputer
dan Teknologi Informasi Universitas Sumatera Utara.
3. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu
Komputer Universitas Sumatera Utara.
4. Ibu Dian Rachmawati, S.Si., M. Kom.selakuDosen Pembimbing I yang telah
meluangkan waktu dan pikiran dalam membimbing dan mengarahkan penulis
agar dapat menyelesaikan skripsi ini.
5. Bapak Jos Timanta Tarigan, S.Kom., M.Sc. selaku Dosen Pembimbing II yang
telah meluangkan waktu dan pikiran dalam membimbing dan mengarahkan
penulis agar dapat menyelesaikan skripsi ini.
6. Bapak
M.Andri
Budiman,
S.T.,
M.Comp.Sc.,
M.E.Mselaku
Dosen
Pembanding I yang telah memberikan arahan, kritik, dan saran kepada penulis
selama pengerjaan skripsi.
7. Bapak Handrizal, S.Si., M.Comp.Sc selaku Dosen Pembanding II yang telah
memberikan kritik dan sarankepada penulis selama pengerjaan skripsi.
8. Seluruh tenaga pengajar dan pegawai di Fakultas Ilmu Komputer dan
Teknologi Informasi Universitas Sumatera Utara.
v
9. Ayah tercinta Drs. Nelson Sirait dan ibu tercinta Elsina Sitorus yang selalu
sabar dan memberikan dukungan. Dan kepada Abang. Kakak dan Adik yang
saya sayangi.
10. Kepada sahabat sekaligus teman terbaik Dear Arini yang selalu memberikan
dukungan serta teman-teman seperjuangan skripsi Josua Sianipar, Mariaty
Harefa, Ruth Stephany, Benyamin Ginting, Sar Barita Lumbangaol, Firma
Sinaga, S.Kom, Junita Situmorang, S.Kom serta seluruh teman-teman Ekstensi
stambuk 2014.
11. Semua pihak yang terlibat langsung maupun tidak langsung yang tidak dapat
penulis ucapkan satu per satu yang telah banyak membantu dalam
penyelesaian skripsi ini.
Penulis menyadari bahwa skripsi ini dalam penyusunan dan masih terdapat
kekurangan. Oleh karena itu, kepada pembaca agar kiranya memberikan kritik dan
saran yang bersifat membangun demi kesempurnaan skripsi ini. Sehingga dapat
bermanfaat bagi kita semua.
Medan, Maret 2017
Penulis,
Januar Andi H. Sirait
vi
ABSTRAK
Pada saat ini, pertukaran informasi melalui media internet semakin sering dilakukan.
Informasi menjadi hal yang sangat berharga, mudah dan cepat untuk dipertukarkan.
Tetapi kemudahan itu menuntuk perlunya pengamanan data yang lebih baik. Pada
pengamanan data menggunakan kriptografi simetris, pertukaran kunci menjadi sebuah
permasalahan karena kunci privat harus dirahasiakan. Salah satu algoritma kriptografi
simetris yang baik dalam melakukan pengamanan data adalah RSA dan Rabin. Kedua
algoritma ini masih dianggap aman karena menggunakan pemfaktoran bilangan secara
cepat. Tetapi keamanan pertukaran kunci kedua algoritma ini menjadi kunci algoritma
ini masih dianggap aman. Three-Pass Protocol adalah sebuah skema protokol yang
memungkinkan pertukaran pesan tanpa pertukaran kunci. Dengan protokol ini akan
diimplementasikan pengamanan data dimana pengirim pesan akan menggunakan
algoritma Rabin sedangakan penerima pesan akan menggunakan algoritma RSA.
Dalam pengiriman data, kedua pengguna tidak akan mempertukarkan kunci karena
menggunakan skema three-pass protocol. Metode ini akan diimplementasikan pada
aplikasi chat berbasis Android menggunakan bahasa pemrograman Java. Hasil dari
penelitian ini menunjukkan bahwa Rabin dan RSA dapat dikombinasikan dalam
skema three-pass protocoldimana data yang dikirim dapat kembali ke bentuk semula.
Hasil dari enkripsi teks akan meningkatkan panjang teks antara 42 sampai 44 kali dari
panjang awal teks yang dikirimkan.
Kata kunci: Kriptografi, Rabin, RSA, Three-Pass Protocol
vii
IMPLEMENTATION OF RSA AND RABIN CRYPTOGRAPHY
ALGORITHM ON THREE PASS PROTOCOL FOR DATA SECURITY IN
CHAT APPLICATION BASE ON ANDROID
ABSTRACT
At this time, the exchange of information through the internet more and more
frequent. Information has become a very precious thing, it is easy and quick to be
exchanged. But the ease of demanding need for better data security. In data security
using symmetric cryptography, key exchange becomes a problem because private key
must be kept secret. One of symmetric cryptographic algorithms are good at data
security is the RSA and Rabin. Both of these algorithms are still considered safe for
use factoring numbers quickly. But the security of the key exchange algorithm is the
key to both of these algorithms is still considered safe. Three-Pass Protocol is a
protocol scheme that allows the exchange of messages without the key exchange.
With this protocol will be implemented to secure data when sending a message will
use the Rabin algorithm while the recipient of the message will be using the RSA
algorithm. In data transmission, the user will not exchange a key for using a three-pass
scheme protocol. This method will be implemented on Android-based chat application
using the Java programming language. The results of this study indicate that Rabin
and RSA scheme can be combined in a three-pass protocol by which data can be sent
back into shape. The results of encryption the text would increase the length of the
text between 42 to 44 times the initial length of the text that was sent.
Keyword : Criptography, Rabin, RSA, Three-Pass Protocol
viii
DAFTAR ISI
PERSETUJUAN ............................................................................................................ ii
PERNYATAAN ........................................................................................................... iii
PENGHARGAAN ........................................................................................................ iv
ABSTRAK .................................................................................................................... vi
ABSTRACT ................................................................................................................. vii
DAFTAR ISI ............................................................................................................... viii
DAFTAR TABLE ......................................................................................................... xi
DAFTAR GAMBAR ................................................................................................... xii
LAMPIRAN ................................................................................................................ xiv
BAB 1
PENDAHULUAN ....................................................................................... 1
1.1 Latar Belakang ................................................................................................... 1
1.2 Rumusan Masalah .............................................................................................. 3
1.3 Batasan Masalah................................................................................................. 3
1.4 Tujuan Penelitian ............................................................................................... 4
1.5 Manfaat Penelitian ............................................................................................. 4
1.6 Metodologi Penelitian ........................................................................................ 4
1.7 Sistematika Penulisan......................................................................................... 5
BAB 2
LANDASAN TEORI .................................................................................. 7
2.1 Pengertian Kriptografi ........................................................................................ 7
2.2 Tujuan Kriptografi ............................................................................................. 7
2.3 Mekanisme Kriptografi ...................................................................................... 8
2.4 Kriptografi Simetrik dan Asimetrik ................................................................. 10
2.4.1 Kriptografi Simetrik .................................................................................. 10
2.4.2 Kriptografi Asimetrik ................................................................................ 11
2.5 Keamanan Algoritma Kriptografi .................................................................... 12
2.6 Bilangan Prima ................................................................................................. 13
2.7 Algoritma Pembangkitan Bilangan Prima Sieve of Eratosthenes .................... 13
2.8 Algoritma RSA................................................................................................. 14
2.8.1 Pembangkitan Kunci ................................................................................. 14
2.8.2 Proses Enkripsi .......................................................................................... 15
2.8.3 Proses Dekripsi ......................................................................................... 15
2.9 Algoritma Rabin ............................................................................................... 16
2.9.1 Pembangkitan Kunci ................................................................................. 16
ix
2.9.2 Proses Enkripsi .......................................................................................... 16
2.9.3 Proses Dekripsi ......................................................................................... 17
2.10 Three-Pass Protocol......................................................................................... 18
2.11 Tinjauan Penelitian yang Relevan .................................................................... 20
BAB 3
ANALISIS DAN PERANCANGAN SISTEM ......................................... 22
3.1 Analisis Sistem ................................................................................................. 22
3.1.1 Analisis Masalah ....................................................................................... 22
3.1.2 Analisis Kebutuhan ................................................................................... 23
3.1.3 Analisis Proses .......................................................................................... 25
3.1.4 Pemodelan Sistem ..................................................................................... 29
3.2 Pseudocode Program ........................................................................................ 43
3.2.1 Pseudocode Enkripsi Rabin ...................................................................... 43
3.2.2 Pseudocode Dekripsi Rabin ...................................................................... 43
3.2.3 Pseudocode Enkripsi RSA ........................................................................ 44
3.2.4 Pseudocode Dekripsi RSA ........................................................................ 44
3.3 Flowchart Sistem .............................................................................................. 44
3.4 Perancangan Sistem ......................................................................................... 45
3.4.1 Rancangan Halaman Login ....................................................................... 45
3.4.2 Rancangan Halaman Register ................................................................... 46
3.4.3 Rancangan Halaman Kontak ..................................................................... 47
3.4.4 Rancangan Halaman Item Kontak Klik .................................................... 48
3.4.5 Rancangan Halaman Daftar Chat.............................................................. 49
3.4.6 Rancangan Halaman Chat Room .............................................................. 50
3.4.7 Rancangan Halaman Detail Pengiriman Pesan ......................................... 51
3.4.8 Rancangan Halaman Simulasi Manual ..................................................... 52
BAB 4
IMPLEMENTASI DAN PENGUJIAN ..................................................... 54
4.1 Implementasi Sistem ........................................................................................ 54
4.2 Antarmuka Sistem ............................................................................................ 54
4.2.1 Halaman Login .......................................................................................... 54
4.2.2 Halaman Register ...................................................................................... 55
4.2.3 Halaman Kontak ....................................................................................... 56
4.2.4 Halaman Item Kontak Klik ....................................................................... 56
4.2.5 Halaman Daftar Chat ................................................................................ 57
4.2.6 Halaman Chat Room ................................................................................. 58
4.2.7 Halaman Detail Pengiriman Pesan ............................................................ 59
4.2.8 Halaman Simulasi Manual ........................................................................ 60
x
4.3 Pengujian Sistem .............................................................................................. 61
4.3.1 Pengujian Pembangkitan Kunci ................................................................ 61
4.3.2 Pengujian Simulasi Manual ...................................................................... 62
4.3.3 Pengujian Pengiriman Pesan ..................................................................... 63
4.3.4 Hasil Enkripsi dan Dekripsi Pesan ............................................................ 65
BAB 5
KESIMPULAN DAN SARAN ................................................................. 69
5.1 Kesimpulan ...................................................................................................... 69
5.2 Saran ................................................................................................................. 69
Daftar Pustaka .............................................................................................................. 70
xi
DAFTAR TABLE
Tabel 3.1.Tabel Proses Analisis Pesan
27
Tabel 3.2. Simulasi Pemrosesan Input
28
Tabel 3.3. Simulasi Pembangkitan Kunci
28
Tabel 3.4. Simulasi Skema Pengiriman Pesan dengan Three-Pass Protocol
28
Tabel 3.5. Dokumentasi Naratif Use Case Register
30
Tabel 3.6. Dokumentasi Naratif Use Case Show Contact
31
Tabel 3.7. Dokumentasi Naratif Use Case Show Chat Room List
32
Tabel 3.8. Dokumentasi Naratif Use Case Chat Room
33
Tabel 3.9. Dokumentasi Naratif Use Case Send Chat
33
Tabel 3.10. Dokumentasi Naratif Use Case Receive Chat
34
Tabel 3.11. Dokumentasi Naratif Use Case Manual Simulation
35
Tabel 3.12. Dokumentasi Naratif Use Case Logout
36
Tabel 3.13. Keterangan Halaman Login
45
Tabel 3.14. Keterangan Halaman Register
46
Tabel 3.15. Keterangan Halaman Kontak
47
Tabel 3.16. Keterangan Rancangan Halaman Item Kontak Klik
48
Tabel 3.17. Keterangan Halaman Daftar Chat
49
Tabel 3.18. Keterangan Rancangan Halaman Chat Room
50
Tabel 3.19. Keterangan Rancangan Halaman Detail Pengiriman Pesan
51
Tabel 3.20. Keterangan Rancangan Halaman Simulasi Manual
52
Tabel 4.1. Hasil Enkripsi dan Dekripsi Pesan
65
xii
DAFTAR GAMBAR
Gambar 2.1. Mekanisme Kriptografi Modern (Munir, 2011)
10
Gambar 2.2. Algoritma Kriptografi Simetri
11
Gambar 2.3. Algoritma Kriptografi Asimetrik
12
Gambar 2.4. Skema Three-Pass Protocol
20
Gambar 3.1. Diagram Ishikawa
23
Gambar 3.2. Use case diagram
30
Gambar 3.3. Activity Diagram Proses Login dan Register
38
Gambar 3.4. Activity Diagram Daftar Kontak, Chat Room dan Simulasi Manual
39
Gambar 3.5. Activity Diagram Pengiriman Pesan
40
Gambar 3.6. Sequence Diagram Login dan Register
41
Gambar 3.7. Sequence Diagram Kontak, Daftar Chat Room, dan Simulasi Manual 42
Gambar 3.8. Sequence Diagram Pengiriman Pesan
43
Gambar 3.9. Flowchart Sistem
45
Gambar 3.10. Rancangan Halaman Login
46
Gambar 3.11. Rancangan Halaman Register
47
Gambar 3.12. Rancangan Halaman Kontak
48
Gambar 3.13. Rancangan Halaman Item Kontak Klik
49
Gambar 3.14. Rancangan Halaman Daftar Chat
50
Gambar 3.15. Rancangan Halaman Chat Room
51
Gambar 3.16. Rancangan Halaman Detail Pengiriman Pesan
52
Gambar 3.17. Rancangan Halaman Simulasi Manual
53
Gambar 4.1. Halaman Login
55
Gambar 4.2. Halaman Register
55
Gambar 4.3. Halaman Kontak
56
Gambar 4.4. Halaman Item Kontak Klik
57
Gambar 4.5. Halaman Daftar Chat
58
Gambar 4.6. Halaman Chat Room
59
Gambar 4.7. Halaman Detail Pengiriman Pesan
60
Gambar 4.8. Halaman Simulasi Manual
61
Gambar 4.9. Pengujian Pembangkitan Kunci
62
Gambar 4.10. Pengujian Simulasi Manual
63
xiii
Gambar 4.11. Notifikasi Pesan Baru
64
Gambar 4.12. Detail Pengujian Pengiriman Pesan
65
Gambar 4.13. Grafik Pertambahan Panjang Ciphertext
68
xiv
LAMPIRAN
LISTING PROGRAM ............................................................................................... A-1
CURRICULUM VITAE ............................................................................................ B-1
PADA THREE-PASS PROTOCOL UNTUK PENGAMANAN DATA
PADA APLIKASI CHAT BERBASIS ANDROID
SKRIPSI
JANUAR ANDI H SIRAIT
141421044
PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2017
IMPLEMENTASI ALGORITMA KRIPTOGRAFI RSA DAN RABIN
PADA THREE-PASS PROTOCOL UNTUK PENGAMANAN DATA
PADA APLIKASI CHAT BERBASIS ANDROID
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah
Sarjana Ilmu Komputer
JANUAR ANDI H SIRAIT
141421044
PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
ii
PERSETUJUAN
Judul
: IMPLEMENTASI ALGORITMA KRIPTOGRAFI RSA
DAN RABIN PADA THREE-PASS PROTOCOL
UNTUK PENGAMANAN DATA PADA APLIKASI
CHAT BERBASIS ANDROID
Kategori
: SKRIPSI
Nama
: JANUAR ANDI H. SIRAIT
Nomor Induk Mahasiswa : 141421044
Program Studi
: EKSTENSI SARJANA (S1) ILMU KOMPUTER
Departemen
: ILMU KOMPUTER
Fakultas
: FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI UNIVERSITAS SUMATERA UTARA
Diluluskan di
Medan, Maret2017
Komisi Pembimbing
:
Pembimbing 2
Pembimbing 1
Jos Timanta Tarigan, S.Kom., M.Sc.
NIP. 198501262015041001
Dian Rachmawati, S.Si., M. Kom.
NIP. 198307232009122004
Diketahui/disetujui oleh
Program Studi S1 Ilmu Komputer
Ketua,
Dr. Poltak Sihombing, M.Kom.
NIP. 19620317199103100
iii
PERNYATAAN
IMPLEMENTASI ALGORITMA KRIPTOGRAFI RSA DAN RABIN PADA
THREE-PASS PROTOCOL UNTUK PENGAMANAN DATA
PADA APLIKASI CHAT BERBASIS ANDROID
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.
Medan, Maret 2017
Januar Andi H. Sirait
141421044
iv
PENGHARGAAN
Puji dan syukur kehadirat Tuhan Yang Maha Esa, yang dengan rahmat dan
karunia-Nya penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat untuk
memperoleh gelar Sarjana Komputer, pada Program Studi Ekstensi S1 Ilmu Komputer
Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
Pada pengerjaan skripsi dengan judul Implementasi Algoritma Kriptografi Rsa
Dan Rabin Pada Three-Pass Protocol Untuk Pengamanan Data Pada Aplikasi Chat
Berbasis Android, penulis menyadari bahwa banyak pihak yang turut membantu, baik
dari pihak keluarga, sahabat dan orang-orang terkasih yang memotivasi dalam
pengerjaan. Dalam kesempatan ini, penulis mengucapkan terima kasih kepada:
1. Bapak Prof. Dr. Runtung Sitepu, SH, M. Hum selaku Rektor Universitas
Sumatera Utara.
2.
Prof. Dr. Opim Salim Sitompul, M.Sc selaku Dekan Fakultas Ilmu Komputer
dan Teknologi Informasi Universitas Sumatera Utara.
3. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu
Komputer Universitas Sumatera Utara.
4. Ibu Dian Rachmawati, S.Si., M. Kom.selakuDosen Pembimbing I yang telah
meluangkan waktu dan pikiran dalam membimbing dan mengarahkan penulis
agar dapat menyelesaikan skripsi ini.
5. Bapak Jos Timanta Tarigan, S.Kom., M.Sc. selaku Dosen Pembimbing II yang
telah meluangkan waktu dan pikiran dalam membimbing dan mengarahkan
penulis agar dapat menyelesaikan skripsi ini.
6. Bapak
M.Andri
Budiman,
S.T.,
M.Comp.Sc.,
M.E.Mselaku
Dosen
Pembanding I yang telah memberikan arahan, kritik, dan saran kepada penulis
selama pengerjaan skripsi.
7. Bapak Handrizal, S.Si., M.Comp.Sc selaku Dosen Pembanding II yang telah
memberikan kritik dan sarankepada penulis selama pengerjaan skripsi.
8. Seluruh tenaga pengajar dan pegawai di Fakultas Ilmu Komputer dan
Teknologi Informasi Universitas Sumatera Utara.
v
9. Ayah tercinta Drs. Nelson Sirait dan ibu tercinta Elsina Sitorus yang selalu
sabar dan memberikan dukungan. Dan kepada Abang. Kakak dan Adik yang
saya sayangi.
10. Kepada sahabat sekaligus teman terbaik Dear Arini yang selalu memberikan
dukungan serta teman-teman seperjuangan skripsi Josua Sianipar, Mariaty
Harefa, Ruth Stephany, Benyamin Ginting, Sar Barita Lumbangaol, Firma
Sinaga, S.Kom, Junita Situmorang, S.Kom serta seluruh teman-teman Ekstensi
stambuk 2014.
11. Semua pihak yang terlibat langsung maupun tidak langsung yang tidak dapat
penulis ucapkan satu per satu yang telah banyak membantu dalam
penyelesaian skripsi ini.
Penulis menyadari bahwa skripsi ini dalam penyusunan dan masih terdapat
kekurangan. Oleh karena itu, kepada pembaca agar kiranya memberikan kritik dan
saran yang bersifat membangun demi kesempurnaan skripsi ini. Sehingga dapat
bermanfaat bagi kita semua.
Medan, Maret 2017
Penulis,
Januar Andi H. Sirait
vi
ABSTRAK
Pada saat ini, pertukaran informasi melalui media internet semakin sering dilakukan.
Informasi menjadi hal yang sangat berharga, mudah dan cepat untuk dipertukarkan.
Tetapi kemudahan itu menuntuk perlunya pengamanan data yang lebih baik. Pada
pengamanan data menggunakan kriptografi simetris, pertukaran kunci menjadi sebuah
permasalahan karena kunci privat harus dirahasiakan. Salah satu algoritma kriptografi
simetris yang baik dalam melakukan pengamanan data adalah RSA dan Rabin. Kedua
algoritma ini masih dianggap aman karena menggunakan pemfaktoran bilangan secara
cepat. Tetapi keamanan pertukaran kunci kedua algoritma ini menjadi kunci algoritma
ini masih dianggap aman. Three-Pass Protocol adalah sebuah skema protokol yang
memungkinkan pertukaran pesan tanpa pertukaran kunci. Dengan protokol ini akan
diimplementasikan pengamanan data dimana pengirim pesan akan menggunakan
algoritma Rabin sedangakan penerima pesan akan menggunakan algoritma RSA.
Dalam pengiriman data, kedua pengguna tidak akan mempertukarkan kunci karena
menggunakan skema three-pass protocol. Metode ini akan diimplementasikan pada
aplikasi chat berbasis Android menggunakan bahasa pemrograman Java. Hasil dari
penelitian ini menunjukkan bahwa Rabin dan RSA dapat dikombinasikan dalam
skema three-pass protocoldimana data yang dikirim dapat kembali ke bentuk semula.
Hasil dari enkripsi teks akan meningkatkan panjang teks antara 42 sampai 44 kali dari
panjang awal teks yang dikirimkan.
Kata kunci: Kriptografi, Rabin, RSA, Three-Pass Protocol
vii
IMPLEMENTATION OF RSA AND RABIN CRYPTOGRAPHY
ALGORITHM ON THREE PASS PROTOCOL FOR DATA SECURITY IN
CHAT APPLICATION BASE ON ANDROID
ABSTRACT
At this time, the exchange of information through the internet more and more
frequent. Information has become a very precious thing, it is easy and quick to be
exchanged. But the ease of demanding need for better data security. In data security
using symmetric cryptography, key exchange becomes a problem because private key
must be kept secret. One of symmetric cryptographic algorithms are good at data
security is the RSA and Rabin. Both of these algorithms are still considered safe for
use factoring numbers quickly. But the security of the key exchange algorithm is the
key to both of these algorithms is still considered safe. Three-Pass Protocol is a
protocol scheme that allows the exchange of messages without the key exchange.
With this protocol will be implemented to secure data when sending a message will
use the Rabin algorithm while the recipient of the message will be using the RSA
algorithm. In data transmission, the user will not exchange a key for using a three-pass
scheme protocol. This method will be implemented on Android-based chat application
using the Java programming language. The results of this study indicate that Rabin
and RSA scheme can be combined in a three-pass protocol by which data can be sent
back into shape. The results of encryption the text would increase the length of the
text between 42 to 44 times the initial length of the text that was sent.
Keyword : Criptography, Rabin, RSA, Three-Pass Protocol
viii
DAFTAR ISI
PERSETUJUAN ............................................................................................................ ii
PERNYATAAN ........................................................................................................... iii
PENGHARGAAN ........................................................................................................ iv
ABSTRAK .................................................................................................................... vi
ABSTRACT ................................................................................................................. vii
DAFTAR ISI ............................................................................................................... viii
DAFTAR TABLE ......................................................................................................... xi
DAFTAR GAMBAR ................................................................................................... xii
LAMPIRAN ................................................................................................................ xiv
BAB 1
PENDAHULUAN ....................................................................................... 1
1.1 Latar Belakang ................................................................................................... 1
1.2 Rumusan Masalah .............................................................................................. 3
1.3 Batasan Masalah................................................................................................. 3
1.4 Tujuan Penelitian ............................................................................................... 4
1.5 Manfaat Penelitian ............................................................................................. 4
1.6 Metodologi Penelitian ........................................................................................ 4
1.7 Sistematika Penulisan......................................................................................... 5
BAB 2
LANDASAN TEORI .................................................................................. 7
2.1 Pengertian Kriptografi ........................................................................................ 7
2.2 Tujuan Kriptografi ............................................................................................. 7
2.3 Mekanisme Kriptografi ...................................................................................... 8
2.4 Kriptografi Simetrik dan Asimetrik ................................................................. 10
2.4.1 Kriptografi Simetrik .................................................................................. 10
2.4.2 Kriptografi Asimetrik ................................................................................ 11
2.5 Keamanan Algoritma Kriptografi .................................................................... 12
2.6 Bilangan Prima ................................................................................................. 13
2.7 Algoritma Pembangkitan Bilangan Prima Sieve of Eratosthenes .................... 13
2.8 Algoritma RSA................................................................................................. 14
2.8.1 Pembangkitan Kunci ................................................................................. 14
2.8.2 Proses Enkripsi .......................................................................................... 15
2.8.3 Proses Dekripsi ......................................................................................... 15
2.9 Algoritma Rabin ............................................................................................... 16
2.9.1 Pembangkitan Kunci ................................................................................. 16
ix
2.9.2 Proses Enkripsi .......................................................................................... 16
2.9.3 Proses Dekripsi ......................................................................................... 17
2.10 Three-Pass Protocol......................................................................................... 18
2.11 Tinjauan Penelitian yang Relevan .................................................................... 20
BAB 3
ANALISIS DAN PERANCANGAN SISTEM ......................................... 22
3.1 Analisis Sistem ................................................................................................. 22
3.1.1 Analisis Masalah ....................................................................................... 22
3.1.2 Analisis Kebutuhan ................................................................................... 23
3.1.3 Analisis Proses .......................................................................................... 25
3.1.4 Pemodelan Sistem ..................................................................................... 29
3.2 Pseudocode Program ........................................................................................ 43
3.2.1 Pseudocode Enkripsi Rabin ...................................................................... 43
3.2.2 Pseudocode Dekripsi Rabin ...................................................................... 43
3.2.3 Pseudocode Enkripsi RSA ........................................................................ 44
3.2.4 Pseudocode Dekripsi RSA ........................................................................ 44
3.3 Flowchart Sistem .............................................................................................. 44
3.4 Perancangan Sistem ......................................................................................... 45
3.4.1 Rancangan Halaman Login ....................................................................... 45
3.4.2 Rancangan Halaman Register ................................................................... 46
3.4.3 Rancangan Halaman Kontak ..................................................................... 47
3.4.4 Rancangan Halaman Item Kontak Klik .................................................... 48
3.4.5 Rancangan Halaman Daftar Chat.............................................................. 49
3.4.6 Rancangan Halaman Chat Room .............................................................. 50
3.4.7 Rancangan Halaman Detail Pengiriman Pesan ......................................... 51
3.4.8 Rancangan Halaman Simulasi Manual ..................................................... 52
BAB 4
IMPLEMENTASI DAN PENGUJIAN ..................................................... 54
4.1 Implementasi Sistem ........................................................................................ 54
4.2 Antarmuka Sistem ............................................................................................ 54
4.2.1 Halaman Login .......................................................................................... 54
4.2.2 Halaman Register ...................................................................................... 55
4.2.3 Halaman Kontak ....................................................................................... 56
4.2.4 Halaman Item Kontak Klik ....................................................................... 56
4.2.5 Halaman Daftar Chat ................................................................................ 57
4.2.6 Halaman Chat Room ................................................................................. 58
4.2.7 Halaman Detail Pengiriman Pesan ............................................................ 59
4.2.8 Halaman Simulasi Manual ........................................................................ 60
x
4.3 Pengujian Sistem .............................................................................................. 61
4.3.1 Pengujian Pembangkitan Kunci ................................................................ 61
4.3.2 Pengujian Simulasi Manual ...................................................................... 62
4.3.3 Pengujian Pengiriman Pesan ..................................................................... 63
4.3.4 Hasil Enkripsi dan Dekripsi Pesan ............................................................ 65
BAB 5
KESIMPULAN DAN SARAN ................................................................. 69
5.1 Kesimpulan ...................................................................................................... 69
5.2 Saran ................................................................................................................. 69
Daftar Pustaka .............................................................................................................. 70
xi
DAFTAR TABLE
Tabel 3.1.Tabel Proses Analisis Pesan
27
Tabel 3.2. Simulasi Pemrosesan Input
28
Tabel 3.3. Simulasi Pembangkitan Kunci
28
Tabel 3.4. Simulasi Skema Pengiriman Pesan dengan Three-Pass Protocol
28
Tabel 3.5. Dokumentasi Naratif Use Case Register
30
Tabel 3.6. Dokumentasi Naratif Use Case Show Contact
31
Tabel 3.7. Dokumentasi Naratif Use Case Show Chat Room List
32
Tabel 3.8. Dokumentasi Naratif Use Case Chat Room
33
Tabel 3.9. Dokumentasi Naratif Use Case Send Chat
33
Tabel 3.10. Dokumentasi Naratif Use Case Receive Chat
34
Tabel 3.11. Dokumentasi Naratif Use Case Manual Simulation
35
Tabel 3.12. Dokumentasi Naratif Use Case Logout
36
Tabel 3.13. Keterangan Halaman Login
45
Tabel 3.14. Keterangan Halaman Register
46
Tabel 3.15. Keterangan Halaman Kontak
47
Tabel 3.16. Keterangan Rancangan Halaman Item Kontak Klik
48
Tabel 3.17. Keterangan Halaman Daftar Chat
49
Tabel 3.18. Keterangan Rancangan Halaman Chat Room
50
Tabel 3.19. Keterangan Rancangan Halaman Detail Pengiriman Pesan
51
Tabel 3.20. Keterangan Rancangan Halaman Simulasi Manual
52
Tabel 4.1. Hasil Enkripsi dan Dekripsi Pesan
65
xii
DAFTAR GAMBAR
Gambar 2.1. Mekanisme Kriptografi Modern (Munir, 2011)
10
Gambar 2.2. Algoritma Kriptografi Simetri
11
Gambar 2.3. Algoritma Kriptografi Asimetrik
12
Gambar 2.4. Skema Three-Pass Protocol
20
Gambar 3.1. Diagram Ishikawa
23
Gambar 3.2. Use case diagram
30
Gambar 3.3. Activity Diagram Proses Login dan Register
38
Gambar 3.4. Activity Diagram Daftar Kontak, Chat Room dan Simulasi Manual
39
Gambar 3.5. Activity Diagram Pengiriman Pesan
40
Gambar 3.6. Sequence Diagram Login dan Register
41
Gambar 3.7. Sequence Diagram Kontak, Daftar Chat Room, dan Simulasi Manual 42
Gambar 3.8. Sequence Diagram Pengiriman Pesan
43
Gambar 3.9. Flowchart Sistem
45
Gambar 3.10. Rancangan Halaman Login
46
Gambar 3.11. Rancangan Halaman Register
47
Gambar 3.12. Rancangan Halaman Kontak
48
Gambar 3.13. Rancangan Halaman Item Kontak Klik
49
Gambar 3.14. Rancangan Halaman Daftar Chat
50
Gambar 3.15. Rancangan Halaman Chat Room
51
Gambar 3.16. Rancangan Halaman Detail Pengiriman Pesan
52
Gambar 3.17. Rancangan Halaman Simulasi Manual
53
Gambar 4.1. Halaman Login
55
Gambar 4.2. Halaman Register
55
Gambar 4.3. Halaman Kontak
56
Gambar 4.4. Halaman Item Kontak Klik
57
Gambar 4.5. Halaman Daftar Chat
58
Gambar 4.6. Halaman Chat Room
59
Gambar 4.7. Halaman Detail Pengiriman Pesan
60
Gambar 4.8. Halaman Simulasi Manual
61
Gambar 4.9. Pengujian Pembangkitan Kunci
62
Gambar 4.10. Pengujian Simulasi Manual
63
xiii
Gambar 4.11. Notifikasi Pesan Baru
64
Gambar 4.12. Detail Pengujian Pengiriman Pesan
65
Gambar 4.13. Grafik Pertambahan Panjang Ciphertext
68
xiv
LAMPIRAN
LISTING PROGRAM ............................................................................................... A-1
CURRICULUM VITAE ............................................................................................ B-1