Oleh:
AGUS SETIAWAN
NIM : 1911520227
JAKARTA
2023
SISTEM KEAMANAN PESAN TEKS TERENKRIPSI
MENGGUNAKAN METODE ALGORITMA RSA
PADA UNIT PELAYANAN PEMUNGUTAN
PAJAK DAERAH TAMBORA
BERBASIS WEB
TUGAS AKHIR
Oleh:
AGUS SETIAWAN
NIM : 1911520227
JAKARTA
2023
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INFORMASI
UNIVERSITAS BUDI LUHUR
Disetujui untuk dipertahankan dalam sidang Tugas Akhir periode semester Ganjil
tahun ajaran 2022/2023.
LEMBAR PENGESAHAN
Laporan Tugas Akhir ini telah disetujui untuk dipertahankan dalam sidang Tugas
Akhir periode semester Ganjil tahun ajaran 2021/2022.
Unit Pelayanan Pemungutan Pajak Daerah Tambora yang menjadi objek studi
kasus dalam penelitian ini saat pertukaran informasi menjadi bagian dari aspek
keamanan dan kerahasiaan suatu pesan komunikasi secara virtual antar pengguna
terkait dengan komunikasi data suatu perusahaan. Dalam prosesnya, walaupun
data telah dienkripsi, terdapat kemungkinan data tersebut dapat diketahui oleh
orang lain. Salah satu metode kriptografi yang menggunakan private key dan
public key untuk proses enkripsi dan dekripsi atau dalam istilahnya sering disebut
teknik asimetris yaitu RSA (Rivest Shamir Adleman). Algoritma ini
menggunakan kunci private untuk melakukan enkripsi dan untuk dekripsinya
menggunakan kunci public. Tujuan penelitian yang akan dilakukan ini adalah
bagaimana memahami cara kerja untuk pengamanan database yang berisikan
pesan komunikasi terenkripsi antar karyawan yang bekerja pada Unit Pelayanan
Pemungutan Pajak Daerah Tambora menggunakan metode algoritma RSA guna
memaksimalkan tingkat kemanan yang berisikan pesan komunikasi berbasis teks
yang terkirim secara realtime pada saat pengiriman pesan dilakukan oleh
pengguna. Algoritma inti dari protokol ini yaitu protokol ini mengirimkan 2
bagian pesan terenkripsi. Bagian pertama dapat berupa hasil dari fungsi hash satu
arah (one way hash function) dari pesan tersebut dan bagian kedua berupa pesan
terenkripsi itu sendiri. Data komunikasi chat berupa format teks yang dikirimkan
antar pengguna tidak dapat diketahui oleh pihak luar perusahaan maupun Admin
sistem sendiri, karena data hasil komunikasi yang terkirim ke database telah
melalui proses enkripsi sehingga apabila Admin sistem ingin mengetahui isi
percakapan antar pengguna dalam bentuk pesan dekripsi perlu mengetahui akun
login user agar dapat melihat isi percakapan antar pengguna pada sistem. Dari
hasil pengujian bahwa rata-rata besar nilai ciphertext adalah 8 satuan bit dan
waktu rata-rata yang diperoleh dihitung berdasakan proses enkripsi membutuhkan
waktu 23 milisekon dan proses dekripsi membutuhkan waktu 15,75 milisekon.
iii
SURAT PERNYATAAN TIDAK PLAGIAT DAN PERSETUJUAN
PUBLIKASI
Merupakan :
1. Karya tulis saya sebagai laporan tugas akhir yang asli dan belum pernah
diajukan untuk mendapatkan gelar akademik apapun, baik di Universitas Budi
Luhur maupun di perguruan tinggi lainnya.
2. Karya Tulis ini bukan sanduran/terjemahan, dan murni gagasan, rumusan dab
pelaksanaan penelitian/implementasi saya sendiri, tanpa bantuan pihak lain,
kecuali arahan pembimbing akademik dan pembimbing di organisasi tempat
riset.
3. Dalam karya tulis ini tidak terdapat karya atau pendapat yang telah ditulis atau
dipublikasikan orang lain, kecuali secara tertulis dengan dicantumkan sebagai
acuan dalam naskah dengan disebutkan nama pengarang dan dicantumkan
dalam daftar pustaka.
4. Saya menyerahkan hak milik atas karya tulis ini kepada Universitas Budi
Luhur, dan oleh karenanya Universitas Budi Luhur berhak melakukan
pengelolaan atas karya tulis ini sesuai dengan norma hukum dan etika yang
berlaku.
Pernyataan ini saya buat dengen sesungguhnya dan apabila di kemudian hari
terdaat penyimpangan dan ketidakbenaran dalam pernyataan ini, maka saya
bersedia menerima sanksi akademik berupa pencabutan gelar yang telah diperoleh
berdasarkan karya tulis ini, serta sanksi lainnya sesuai dengan norma di
Universitas Budi Luhur dan Undang-Undang yang berlaku.
Materai 10.000
(Agus Setiawan)
NIM: 1911520227
iv
KATA PENGANTAR
v
Penulis
vi
DAFTAR TABEL
Halaman
Tabel 3. 1 Parameter Pengujian Fungsional Fitur Menu.......................................20
Tabel 3. 2 Parameter Pengujian Data Enkripsi......................................................21
Tabel 3. 3 Perbandingan Metode...........................................................................22
Tabel 3. 4 Narrative Use Case Login....................................................................23
Tabel 3. 5 Spesifikasi File Tabel Login_Details....................................................30
Tabel 3. 6 Spesifikasi File Tabel Users..................................................................30
Tabel 3. 7 Spesifikasi File Tabel Chat...................................................................31
Tabel 3. 8 Spesifikasi File Tabel RSA...................................................................31
Tabel 3. 9 Spesifikasi File Tabel Session..............................................................32
Tabel 4. 1 Pengujian Black Box.............................................................................39
Tabel 4. 2 Pengujian Pesan Terenkripsi.................................................................40
Tabel 4. 3 Data Teks Yang Akan Diuji..................................................................45
Tabel 4. 4 Data Hasil Pengujian Teks....................................................................46
Tabel 4. 5 Panjang Teks, Waktu Enkripsi dan Dekripsi........................................47
vii
DAFTAR GAMBAR
Halaman
Gambar 2. 1 Konsep Kriptografi Asimetris.............................................................6
Gambar 2. 2 Proses Kerja Algoritma RSA..............................................................9
Gambar 3. 1 Tahap Metode Penelitian...................................................................17
Gambar 3. 2 Rancangan Use Case Sistem.............................................................23
Gambar 3. 3 Rancangan Activity Akses Login.......................................................25
Gambar 3. 4 Rancangan Activity Register.............................................................25
Gambar 3. 5 Rancangan Activity Enkripsi Metode RSA.......................................26
Gambar 3. 6 Rancangan Sequence Diagram Login...............................................27
Gambar 3. 7 Rancangan Sequence Diagram Register...........................................27
Gambar 3. 8 Rancangan Sequence Enkripsi Metode RSA....................................28
Gambar 3. 9 Logical Record Structure (LRS).......................................................29
Gambar 3. 10 Rancangan Struktur Menu Pada Aplikasi.......................................33
Gambar 3. 11 Rancangan Antarmuka Halaman Login..........................................34
Gambar 3. 12 Rancangan Antarmuka Halaman Register......................................34
Gambar 3. 13 Rancangan Antarmuka Halaman Utama Aplikasi..........................35
Gambar 4. 1 Deployment Diagram........................................................................37
Gambar 4. 2 Algoritma Enkripsi RSA...................................................................37
Gambar 4. 3 Algoritma Dekripsi RSA...................................................................38
Gambar 4. 4 Flowchart Aplikasi............................................................................39
Gambar 4. 5 Hasil Rancangan Aplikasi Halaman Login.......................................41
Gambar 4. 6 Tampilan Dashboard Halaman Utama.............................................42
Gambar 4. 7 Halaman Utama Pengguna Status Offline........................................42
Gambar 4. 8 Halaman Utama Pengguna Status Online.........................................43
Gambar 4. 9 Database Chat Pesan Terenkripsi.....................................................43
Gambar 4. 10 Tampilan Proses Pengiriman Pesan Antar Pengguna.....................44
viii
DAFTAR SIMBOL
Abstraksi
orang atau pengguna
1 Actor ketika terhubung dan
berkomunikasi
dengan use case
Abstraksi interaksi
yang menampilkan urutan
2 Use Case
aksi-aksi yang dilakukan
oleh actor
Abstraksi spesialisasi
actor
4 Extend
agar bisa berpartisipasi
dengan use case
ix
Simbol-simbol Activity Diagram
No Simbol Keterangan
x
Simbol-simbol Sequence Diagram
GAMBAR NAMA KETERANGAN
Menggambarkan pengiriman
A Message
pesan antar object
xi
B. Simbol-simbol Flowchart
N
Gambar Nama Keterangan
o
Digunakan untuk
6 menggambarkan berbagai
Inisialization
media input dan output
(Inisialisasi)
dalam sebuah bagan alir
program.
xii
DAFTAR ISI
xiii
3.2.7. Tahapan Pengujian....................................................................20
3.2.8. Kesimpulan (Review).................................................................20
3.3 Rancangan Pengujian..........................................................................20
3.3.1. Parameter Pengujian Fungsional...............................................20
3.3.2. Parameter Pengujian Data Enkripsi dan Dekripsi.....................21
3.4 Metode Pembanding...........................................................................21
3.5 Permodelan Sistem..............................................................................22
3.5.1. Rancangan Use Case Diagram..................................................22
3.5.2. Rancangan Activity Login..........................................................24
3.5.3. Rancangan Activity Register......................................................25
3.5.4. Rancangan Activity Enkripsi Metode RSA................................26
3.5.5. Rancangan Sequence Diagram Login........................................27
3.5.6. Rancangan Sequence Diagram Registrasi User........................27
3.5.7. Rancangan Sequence Diagram Enkripsi RSA...........................28
3.6 Rancangan Basis Data.........................................................................28
3.6.1. Rancangan Logical Record Structure........................................28
3.6.2. Spesifikasi Tabel.......................................................................29
3.7 Rancangan Struktur Menu..................................................................32
3.8 Rancangan Antarmuka Pengguna (User Interface)............................33
3.8.1. Rancangan Antarmuka Halaman Login.....................................33
3.8.2. Rancangan Antarmuka Halaman Register.................................34
3.8.3. Rancangan Antarmuka Halaman Utama Aplikasi.....................35
BAB IV HASIL DAN PEMBAHASAN............................................................36
4.1. Spesifikasi Hardware dan Software....................................................36
4.2. Deployment Diagram..........................................................................36
4.3. Algoritma Pada Program.....................................................................37
4.3.1. Algoritma Proses Enkripsi Pesan Teks......................................37
4.3.2. Algoritma Proses Dekripsi Pesan Teks......................................38
4.4. Flowchart Aplikasi..............................................................................38
4.5. Pengujian Fungsional..........................................................................39
4.6. Analisa Pengujian................................................................................40
4.6.1. Kelebihan...................................................................................40
4.6.2. Kekurangan................................................................................40
4.7. Tampilan Layar Aplikasi.....................................................................41
4.7.1. Tampilan Login Pengguna.........................................................41
4.7.2. Halaman Pendaftaran User (Register).......................................41
4.7.3. Halaman Utama Pengguna Kondisi Offline...............................42
4.7.4. Halaman Utama Pengguna Kondisi Online...............................42
4.7.5. Halaman Database Chat Terenkripsi........................................43
4.7.6. Halaman Pesan Terenkripsi RSA..............................................43
4.8. Pengumpulan Data Uji........................................................................45
4.8.1. Data Teks...................................................................................45
xiv
4.8.2. Data Pengujian Algoritma RSA.................................................45
4.8.3. Hasil Pengujian..........................................................................47
BAB V PENUTUP...............................................................................................48
5.1 Kesimpulan.........................................................................................48
5.2 Saran....................................................................................................48
DAFTAR PUSTAKA...........................................................................................49
xv
BAB I
PENDAHULUAN
1
Salah satu algoritma kriptografi yang banyak digunakan adalah
RSA. Algoritma RSA dibuat oleh Ron Rivest, Adi Shamir, dan Leonard
Adleman pada tahun 1976. Menggunakan kunci pubik dan kunci privat
untuk enkripsi dan dekripsi pesan. Salah satu keunggulan pada algortima
RSA terletak pada sulitnya memfaktorkan bilangan besar menjadi faktor-
faktor prima. Berdasarkan hal ini peneliti ingin membangun sebuah
aplikasi komunikasi antar pengguna (chatting) yang
mengimplementasikan algoritma RSA dalam proses enkripsi pesan yang
terkirim ke database.
2
1.4.3. Dapat menganalisa kekurangan dan kelebihan pada masing-masing
algoritma yang diterapkan saat proses aplikasi sistem hendak
dibuat dan diimplementasikan.
1.4.4. Dapat menjaga dan meningkatkan sistem keamanan data internal
Unit Pelayanan Pemungutan Pajak Daerah Tambora dari
penyalahgunaan pihak-pihak yang tidak bertanggungjawab yang
akan menyebabkan kerugian bagi pihak perusahaan apabila
minimnya dalam pengamanan data tersebut.
3
Bab ini berisi tentang penjelasan bagaimana kajian
penelitian dilakukan. Sebagai kajian ilmiah maka
kebenaran fakta merupakan keharusan. Dimana bab ini
menguraikan langkah-langkah pada penelitian, perangkat
hardware dan software yang digunakan, persiapan dan
teknik-teknik pengujian yang akan dilakukan.
BAB IV : HASIL DAN PEMBAHASAN
Bab ini berisi mengenai hasil rancangan aplikasi sistem
serta menjelaskan hasil dari pengujian aplikasi sistem
yang telah dibuat dan melakukan validasi serta fungsi dari
sistem yang diimplementasikan untuk dapat memastikan
berjalannya sistem sesuai dengan konsep dan rencana
yang telah disusun oleh penulis.
BAB V : PENUTUP
Bab ini berisi terkait hasil dari kesimpulan penelitian serta
saran dari penulis penulis atas penelitian yang telah
dilakukan dari awal hingga akhir.
4
BAB II
LANDASAN TEORI
2.1.1. Pesan
Pesan (Bahari, 2022) merupakan bagian dari unsur-unsur
komunikasi, Hafied Cangara dalam bukunya Pengantar Ilmu
Komunikasi menyatakan bahwa “Dalam proses komunikasi,
pengertian pesan adalah sesuatu yang disampaikan pengirim
kepada penerima. Pesan dapat disampaikan dengan cara tatap
muka atau melalui media komunikasi. Isinya bisa berupa ilmu
pengetahuan, hiburan, informasi, nasihat atau propaganda”.
Pengertian pesan itu sendiri menurut Onong Uchjana Effendy
adalah merupakan terjemahan dari bahasa asing “message” yang
artinya adalah lambang bermakna (meaningful symbols), yakni
lambang yang membawakan pikiran atau perasaan komunikator.
2.1.2. Chatting
Menurut (Bahari, 2022), bahwa “Chatting” secara umum
adalah aktivitas berkomunikasi yang dilakukan oleh dua orang atau
lebih dengan memanfaatkan aplikasi chatting dan jaringan internet.
Aplikasi chatting saat ini sudah sangat maju. Tidak hanya
mengirim pesan teks saja, aktivitas chatting sekarang ini juga bisa
mengirimkan emoticon, pesan suara, bahkan video. Chatting
merupakan salah fitur dari kecanggihan teknologi informasi saat
ini. Mulai dari anak kecil hingga orang dewasa saat ini sudah
familiar dengan istilah chatting. Singkatnya, pengertian chatting
adalah suatu program yang melibatkan koneksi internet untuk
saling bertukar pesan antar satu orang dengan orang lain. Chatting
adalah bentuk komunikasi yang paling efektif dan efisien sata ini.
2.1.3. Kriptografi
Kriptografi (Rangkuti & Fahmi, 2020) merupakan bagian
dari ilmu dan seni untuk menjaga keamanan pesan ketika pesan
dikirim dari suatu tempat ke tempat yang lain. Teknik penyandian
data (kriptografi) yang diterapkan pada data maupun informasi,
5
dilakukan dengan mengkodekan atau menyembunyikan data
aslinya. Kriptografi (cryptography) berasal dari bahasa Yunani
”cryptos” artinya ”secret” (rahasia), sedangkan ”graphein” artinya
”writing” (tulisan). Jadi kriptografi berarti ”secret writing” (tulisan
rahasia). Kriptografi adalah suatu ilmu yang mempelajari
bagaimana cara menjaga agar data atau pesan tetap aman saat
dikirimkan, dari pengirim ke penerima tanpa mengalami gangguan
dari pihak ketiga. Dalam kriptografi dikenal dengan dua
penyandian, yakni enkripsi dan dekripsi.
Saat ini, teknik kriptografi menjadi salah satu teknik yang
umum digunakan dalam mengamankan data yang sifatnya pribadi
atau rahasia. Pengamanna data berdasarkan teknik kriptografi
dilakukan dengan merubah pesan yang akan dirahasiakan plaintext
menjadi sandi (ciphertext). Proses untuk mengkonversi plaintext
menjadi ciphertext disebut dengan proses enkripsi sedangkan
proses yang dilakukan untuk mengembalikan ciphertext menjadi
plaintext disebut deskripsi. Proses enkripsi dan dekripsi
memerlukan sebuah kode dalam pelaksanaannya yang disebut
dengan kunci. Kunci (key) harus bersifat rahasia (private) dan tidak
boleh diberitahukan kepada orang lain yang tidak berhak untuk
menerima pesan (Sinaga et al., 2018).
Ada empat tujuan mendasar dari ilmu kriptografi ini yang juga
merupakan aspek keamanan informasi yaitu:
a. Kerahasiaan (Confidentiality)
Kerahasiaan adalah layanan yang digunakan untuk menjaga isi
dari informasi dari siapapun kecuali yang memiliki otoritas
6
atau kunci rahasia untuk membuka atau mengupas informasi
yang telah disandi.
b. Integritas data
Integritas adalah berhubungan dengan penjagaan dari
perubahan data secara tidak sah. Untuk menjaga integritas data,
sistem harus memiliki kemampuan untuk mendeteksi
manipulasi data oleh pihakpihak yang tidak berhak, antara lain
penyisipan, penghapusan, dan pensubsitusian data lain kedalam
data yang sebenarnya.
c. Autentikasi
Autentikasi adalah berhubungan dengan identifikasi atau
pengenalan, baik secara kesatuan sistem maupun informasi itu
sendiri. Dua pihak yang saling berkomunikasi harus saling
memperkenalkan diri. Informasi yang dikirimkan melalui kanal
harus diautentikasi keaslian, isi datanya, waktu pengiriman dan
lain-lain.
d. Non-repudiasi atau nirpenyangkalan
Non-repudiasi atau nirpenyangkalan adalah usaha untuk
mencegah terjadinya penyangkalan terhadap pengiriman atau
terciptanya suatu informasi oleh yang mengirimkan atau
membuat.
2.1.4. Enkripsi
Enkripsi (Suharya & Widia, 2020) atau encrypt
mendeskripsikan suatu proses dimana suatu data teks akan
disandikan agar tidak terbaca dengan cara diacak. Enkripsi di
lakukan setelah dilakukannya pembangkitan kunci yang akan
mendapatkan kunci privat (kunci yang tidak boleh diberitahukan
pada orang lain) dan kunci publik (kunci yang boleh diberitahukan
pada orang lain). Lalu dilakukanlah pertukaran kunci antara
penerima dan pengirim pesan teks, setelah itu maka dilakukan
enkripsi teks. Pesan yang akan dienkripsi berupa teks.
2.1.5. Dekripsi
Proses dekripsi dilakukan pada blok-blok bilangan yang
diperoleh dari proses enkripsi sehingga menghasilkan bilangan
baru yang apabila diubah kembali kedalam pengkodean ASCII
akan menghasilkan karakter yang sama dengan plainteks sebelum
dilakukan proses enkripsi. Proses dekripsi menggunakan pasangan
kunci privat (d, N). Dalam proses dekripsi, jika kunci privat yang
7
digunakan salah dan berbeda dari yang telah dibangkitkan maka
proses dekripsi tidak akan berhasil. Sebelum melakukan dekripsi,
user meminta kepada sistem untuk menampilkan data yang dipilih
sehingga memanggil perintah tampilkan data maka sistem
melakukan dekripsi dahulu terhadap data (chipherteks) yang ada di
database sehingga berubah ke bentuk data awal (plainteks) saat di
masukkan lalu sistem akan menampilkan data kepada sistem
(Sutejo, 2021).
8
mempunyai kunci publik dapat melakukan enkripsi tetapi yang
dalam melakukan dekripsi hanya orang yang memiliki kunci
privat. Kunci publik dapat dimiliki oleh sembarang orang, tetapi
kunci privat hanya dimiliki oleh orang tertentu saja. Algoritma
enkripsi dan dekripsi sistem kriptografi RSA bersandar pada
asumsi fungsi satu arah (one-way function) yang dibangun oleh
fungsi eksponensial modular pada grup perkalian (Z*n, x) dan grup
perkalian (Z*ø(n), x) dengan n = p x q. Dimana p, q adalah
bilangan prima dan ø(n) = (p – 1) (q – 1). Terdapat 3 algoritma
pada sistem kriptografi RSA, yaitu algoritma pembangkitan kunci,
algoritma enkripsi, dan algoritma dekripsi (Harahap & Rina, 2018).
Untuk pembangkitan sepasang kunci RSA digunakan algoritma
sebagai berikut.
a. Pilih dua bilangan prima yang besar, p dan q.
b. Hitung n = p . q nilai n tidak dirahasiakan.
c. Hitung Ø(n) = (p -1) (q-1).
d. Pilih sebuah bilangan bulat sebagai kunci publik, sebut e.
Dimana e relatif prima terhadap Ø(n), artinya faktor pembagi
terbesar keduanya adalah 1. secara matematis disebut gcd (e,
Ø(n)) = 1.
e. Hitung kunci privat, sebut d, dengan persamaan e.d ≡ 1 (mod
Ø(n)) atau d ≡ e-1 mod (Ø(n)).
Hasil dari algoritma diatas adalah : kunci publik adalah pasangan
(e, n) dan kunci privat adalah pasangan (d, n).
9
menyediakan bermacam-macam layanan. Termasuk dalam kelompok ini
adalah program utilitas, pemantau kinerja sistem dan pemantau keamanan
sistem.
2.3.1. Database
Database atau basis data (Supratman, 2020) berfungsi
sebagai struktur informasi yang disimpan dalam komputer secara
sistematis dan merupakan sumber informasi yang dapat diperiksa
menggunakan suatu program komputer. Database termasuk salah
satu komponen utama dalam sistem dan informasi, karena
merupakan basis dalam penyediaan informasi bagi para pemakai
atau pengguna sistem.
2.3.2. MySQL
MySQL (Audrilia & Budiman, 2020) mendefinisikan
sebuah manajemen basis data yang mengandung satu atau jumlah
tabel. Tabel terdiri atas sejumlah baris dan setiap baris
mengandung satu atau beberapa jumlah tabel. MySQL termasuk
database server open source yang cukup popular keberadaannya.
Dengan berbagai keunggulan yang dimiliki, membuat software
database ini banyak digunakan oleh praktisi yang berfungsi
membangun step by step suatu project. Adanya fasilitas API
(Application Programming Interface) yang dimiliki oleh MySQL,
memungkinkan bermacam-macam aplikasi komputer yang ditulis
dengan berbagai bahasa pemrograman dapat mengakses basis data
MySQL. Tipe data MySQL adalah data yang terdapat dalam sebuah
tabel berupa field-field yang berisi nilai dari data tersebut.
10
e. Kesalahan performansi (performance errors).
Pengujian didesain untuk menjawab pertanyaan-pertanyaan berikut:
Bagaimana fungsi-fungsi diuji agar dapat dinyatakan valid?
a. Input seperti apa yang dapat menjadi bahan kasus uji yang baik?
b. Apakah sistem sensitif pada input-input tertentu?
c. Bagaimana sekumpulan data dapat diisolasi?
d. Berapa banyak rata-rata data dan jumlah data yang dapat ditangani
sistem?
e. Efek apa yang dapat membuat kombinasi data ditangani spesifik pada
operasi sistem
11
proses LCG lagi untuk mengembalikan ke
plaintext semua.
Judul Penelitian 2 : Penerapan Kriptografi RSA (Rivest Shamir
Adleman) Dalam Mengamankan File Teks
Berbasis PHP
Penulis : Dicky Apdilah1 dan Heru Swanda2
Tahun : 2018
ISSN : 2580-7927
Publikasi : Jurnal Teknologi Informasi (JTI)
Deskripsi : Berdasarkan dari hasil penelitian bahwa
kombinasi Algoritma LCG (Linear
Congruential Code for Information) sebagai
pembangkit bilangan acak dan algoritma The
Sieve of Eratosthenes sebagai pembangkit
bilangan prima dapat digunakan sebagai
pembangkit public dan private pada
perancangan kriptografi RSA.
12
Penulis : M. I. Zulfikar1, G. Abdillah2 dan A.
Komarudin3
Tahun : 2019
ISSN : 1907 –5022
Publikasi : Seminar Nasional Aplikasi Teknologi
Informasi (SNATi)
Deskripsi : Berdasarkan dari hasil percobaan hasil enkripsi
pada data berukuran 4,68 KB berhasil
terenkripsi dan mengalami perubahan ukuran
yaitu 0,09 KB lebih besar dari sebelumnya,
akan tetapi perubahan tersebut tidak terlalu
signifikan untuk berpengaruh dalam waktu
proses pengiriman email. Dari hasil serangan
brute force dapat disimpulkan bahwa algoritma
kriptografi yang terbilang aman, panjang
karakter kunci sangat berpengaruh terhadap
tingkat kesulitan untuk memecahkan plaintext
menggunakan serangan brute force.
13
plaintext-nya ataupun panjang kunci yang
dipakai.
14
Judul Penelitian 8 Perancangan Simulator Interlock Protocol saat
Serangan Man-in-the-Middle-Attack pada
Kriptografi Kunci Publik Rivest Shamir
Adleman (RSA)
Penulis Maranata Pasaribu1 dan Marice Hotnauli
Simbolon2
Tahun 2021
ISSN 2798-9593
Publikasi LOFIAN: Jurnal Teknologi Informasi dan
Komunikasi
Deskripsi Berdasarkan dari hasil penelitian bahwa dengan
menggunakan interlock protocol, walaupun
kunci publik pihak penerima dan pengirim
didapatkan dan diganti oleh penyadap, tetapi
penyadap tidak dapat menjalankan prosedur
man-in-the-middle-attack untuk melihat dan
mengubah pesan. Hal ini dikarenakan pesan
terenkripsi terbagi menjadi dua bagian pada
variasi pertama dan terdapat fungsi hash untuk
memverifikasi keaslian pesan pada variasi
kedua.
15
dibuka dan dilihat oleh orang yang memiliki
dan mengetahui password enkripsi.
16
BAB III
METODOLOGI PENELITIAN
17
Berikut penjelasan diagram alir pada tahap metode penelitian diatas
sebagai berikut:
18
3.2.4. Tahapan Analisis
Tahapan ini akan dilakukannya proses analisis secara
berurutan, mulai dari analisis data masukan, analisis penerapan
algoritma dan analisis terhadap sistem keluaran yang akan
dibangun sebagai berikut.
a. Analisis Data Masukan (Input)
Tahapan ini akan melakukan analisis data masukan terkait file
masukan berupa obrolan (chat) berupa format teks yang
dikirimkan antar pengguna pada aplikasi.
19
berjalan sesuai harapan si pembuat sistem dan akan dilanjutkan ke
tahap pengujian dan apabila belum berhasil, maka dipastikan
terjadinya kendala error pada program dan perlu adanya cek ulang
pada program. Program yang dibuat dan diuji akan
mengimplementasikan bahasa pemrograman PHP dan HTML.
20
Menampilkan
Fitur Halaman
3 Halaman Utama Black Box
Utama
Sistem
Data Terkirim
Fitur Pengiriman
4 ke Database dan Black Box
Chat Berupa Teks
Terenkripsi
Kembali ke
5 Fitur Logout Black Box
Halaman Login
21
Tabel 3. 3 Perbandingan Metode
Hasil Perbandingan
No Judul Penelitian
Metode RSA
1. Studi dan Implementasi Secure Kinerja algoritma
Chatting Menggunakan Algoritma ESRKGS+RSA
Rivest Shamir Adleman (Tahun 2018) membutuhkan waktu
10,437 ms yang lebih
cepat daripada RSA
improvisasi yang
samasama menggunakan
empat bilangan prima
dalam proses
pembangkitan kunci pada
bilangan prima 1024 bit.
2. Algoritma Rivest Shamir Adleman RSA tidak menurunkan
menggunakan pembangkit kunci performa perangkat
ESRKGS untuk enkripsi pesan chat lunak dengan berarti. Hal
dengan protokol TCP/IP (Tahun 2020) ini disebabkan pengaruh
enkripsi yang tergolong
kecil terhadap
penggunaan memori dan
waktu pemrosesan pada
perangkat lunak.
22
actor bekerja diluar dari sistem itu sendiri. Hubungan antara actor
dengan case dihubungkan dengan garis lurus. Sedangkan hubungan
dimana satu use case digunakan untuk meredudansi use case
lainnya digunakan garis putus-putus dengan keterangan include.
Untuk extend lainnya digunakan untuk mensimplifikasi satu use
case dengan use case lainnya.
23
Password dan password username dan
dengan benar password
untuk dapat dengan
menampilkan benar.
halaman utama
pada sistem.
4 Kirim Pesan Include Actor telah Actor gagal
sukses memasukkan
melakukan username dan
Login dan password
melakukan dengan
kirim pesan benar.
5 Dekripsi Extend Actor Actor gagal
Pesan melakukan mengirim
pengiriman pesan karena
pesan ekstensi file
tidak sesuai.
6 Enkripsi Extend Actor berhasil Actor gagal
Database mengirim pesan mengirim
dan terenkripsi pesan karena
ke database ekstensi file
server tidak sesuai.
24
Gambar 3. 3 Rancangan Activity Akses Login
25
3.5.4. Rancangan Activity Enkripsi Metode RSA
Rancangan pada activity diagram enkripsi termasuk bagian
inti pada sistem yang dibuat ini dimana terdapat penyisipan serta
penerapan algoritma Rivest Shamir Adleman (RSA) saat proses
kriptografi yang dilakukan pada sistem yang bertujuan untuk
mengenkripsi file sehingga data tersimpan dengan aman pada
database server.
File yang dapat dienkripsi berupa pesan yang terkirim antar
dua (2) akun pengguna aplikasi yang saling mengirimi pesan.
Pesan yang dapat dienkripsi mendukung format pada pesan teks
dengan ekstensi .txt, pesan berupa file dokumen dengan
ekstensi .docx, .xlsx, .ppt, .pdf serta pesan lain berupa gambar
dalam ekstensi .jpeg, .png, .gif dan suara dalam format ekstensi
m4a, . m4b, . m4p, . m4v, .m4r, .3gp, .mp4, .aac. Data pada pesan
yang saling terkirim antar pengguna akan tersimpan pada database
server yang kemudian data tersebut akan terenkripsi sesuai dengan
format metode algoritma yang dipilih oleh pengguna. Pada Gambar
3.5 dibawah ini adalah rancangan activity diagram proses enkripsi
yang akan dilakukan pada aplikasi menggunakan metode algoritma
RSA.
26
Gambar 3. 5 Rancangan Activity Enkripsi Metode RSA
27
3.5.7. Rancangan Sequence Diagram Enkripsi RSA
Berikut dibawah ini hasil rancangan sequence diagram
proses enkripsi menggunakan metode RSA yang terjadi pada
sistem dapat dilihat pada Gambar 3.8 dibawah ini.
28
Gambar 3. 9 Logical Record Structure (LRS)
29
Tabel 3. 1. Nama File : login_details
5 Fungsi : Untuk Menyimpan Data Akses Login
Tipe File : File Master
Organisasi File : Index Sequential
Akses File : Random
Media : Harddisk
Panjang Record : 32 Kb
Kunci Field : id
Spesifikasi File Tabel Login_Details
No Elemen Data Tipe Size Keterangan
1 id int 11 Primary Key
2 uid int 11 ID User
3 token varchar 100 Token Pesan
4 first_timestamp timestam 50 Awal Akses
p
5 last_timestamp timestam 50 Akhir Akses
p
30
3. Nama File : chat
Fungsi : Untuk Menyimpan Data Chat Terenkripsi
Tabel 3. 7 Tipe File : File Master
Spesifikasi Organisasi File : Index Sequential
File Tabel Akses File : Random
Chat Media : Harddisk
Panjang Record : 1500 Kb
Kunci Field : id
No Elemen Data Tipe Size Keterangan
1 id int 11 Primary Key
2 sender_id int 11 ID Pengirim
3 receiver_id int 11 ID Penerima
4 message longtext 100 Pesan Terenkripsi
5 enc_method tinyint 4 Metode Enkripsi
6 s_token varchar 225 Token Pengirim
7 r_token varchar 225 Token Penerima
32
Gambar 3. 10 Rancangan Struktur Menu Pada Aplikasi
33
Gambar 3. 11 Rancangan Antarmuka Halaman Login
34
3.8.3. Rancangan Antarmuka Halaman Utama Aplikasi
Berikut dibawah ini rancangan antarmuka pada usulan
sistem yang akan dibuat pada halaman utama aplikasi ditunjukkan
pada Gambar 3.13.
35
BAB IV
HASIL DAN PEMBAHASAN
36
Gambar 4. 1 Deployment Diagram
37
positif dan d yang telah direpresentasikan dalam bentuk biner.
Proses yang digunakan dalam pesan adalah mengembalikan nilai m
yang semula dalam bentuk text (plaintext) menjadi m ke bentuk
bilangan bulat (ciphertext). Dengan kata lain proses ini adalah
invers hasil dari proses enkripsi pada pesan tersebut.
38
4.5. Pengujian Fungsional
Tahap ini akan dilakukannya pengujian menggunakan teknik black
box. Pengujian ini dilakukan dari sisi fungsional sistem. Berikut tabel
pengujian dapat dilihat pada Tabel 4.1. dibawah ini.
Tabel 4. 1 Pengujian Black Box
N Teknik Hasil
Kelas Uji Butir Uji Kesimpulan
o Pengujian Pengujian
Hasil Enkripsi
Format
No Isi Pesan
Pesan
nilai d nilai n nilai e
1 test Teks 33943 79771 5555
2 test Teks 40637 204091 4564
3 kirim pesan Teks 179863 315923 65454666556
4 coba Teks 455537 760973 5666
39
4.6. Analisa Pengujian
Setelah dilakukan analisa dari hasil pengujian aplikasi kriptografi
dengan cara membandingkan hasil fungsi enkripsi dan dekripsi, dapat
ditemukan beberapa kelebihan dan kekurangan, yaitu sebagai berikut.
4.6.1. Kelebihan
Berikut ini adalah kelebihan yang dapat penulis uraikan
dari sistem kriptografi setelah melakukan pengujian sistem:
1. Untuk menjalankannya hanya dibutuhkan browser (chrome)
saja untuk running aplikasi ini.
2. Data komunikasi chat berupa format teks dan dokumen yang
dikirimkan antar pengguna tidak dapat diketahui oleh pihak
luar perusahaan maupun Admin sistem sendiri, karena data
hasil komunikasi yang terkirim ke database telah terenkripsi
sehingga apabila Admin sistem ingin mengetahui isi
percakapan antar pengguna perlu mengetahui akun Username
dan Password untuk akses masuk para user dan memiliki akses
pengguna yang bisa digunakan untuk 50 pengguna lebih.
4.6.2. Kekurangan
Berikut ini adalah kekurangan yang dapat penulis uraikan
dari sistem kriptografi setelah melakukan pengujian sistem:
1. Memerlukan akses internet saat pengiriman data maupun
komunikasi lewat aplikasi ini.
2. Tidak terdapat foto profil pada masing-masing pengguna dan
aplikasi hanya menampilkan nama user saja.
40
Gambar 4. 5 Hasil Rancangan Aplikasi Halaman Login
41
Gambar 4. 7 Halaman Utama Pengguna Status Offline
42
Gambar 4. 9 Database Chat Pesan Terenkripsi
43
Gambar 4. 10 Tampilan Proses Pengiriman Pesan Antar Pengguna
44
4.8.2. Data Pengujian Algoritma RSA
Dalam pengujian setiap proses dicatat pada log aplikasi,
berdasarkan log ini maka diketahui variabel yang akan diuji.
Variabel tersebut adalah:
a. Plain teks: yaitu teks yang akan di enkripsi, teks ini di dapat
berdasarkan masukkan data dari user.
b. Panjang teks: panjang teks adalah banyaknya karakter pada
teks.
c. Waktu enkripsi: waktu enkripsi di dapatkan dengan mencatat
log sebelum dan setelah proses enkripsi, selisih dari kedua
waktu yang dicatat ini yang di jadikan acuan sebagai waktu
enkripsi.
d. Teks cipher: adalah teks yang di hasilkan setelah proses
enkripsi.
e. Waktu dekripsi: adalah waktu yang di butuhkan untuk proses
dekripsi. Seperti waktu enkripsi, waktu dekripsi didapatkan dari
selisih waktu pada saat mulai proses dekripsi sampai selesai
proses dekripsi.
f. Hasil dekripsi adalah hasil dari teks cipher yang di dekripsi.
45
Tabel 4. 4 Data Hasil Pengujian Teks
Panjan
Waktu Waktu
N g dari Ciphert Hasil
Plaintext Enkri Panjang dari Ciphertext Dekri
o Plaint ext Dekripsi
psi psi
ext
46
Panjan
Waktu Waktu
N g dari Ciphert Hasil
Plaintext Enkri Panjang dari Ciphertext Dekri
o Plaint ext Dekripsi
psi psi
ext
47
4.8.3. Hasil Pengujian
Perbandingan panjang teks dengan, waktu enkripsi serta
waktu dekripsi
Tabel 4. 5 Panjang Teks, Waktu Enkripsi dan Dekripsi
Pengujian Nomor
Keterangan
1 2 3 4
Panjang
25 67 38 30
Teks
Waktu
Enkripsi 23 23 29 17
(ms)
Waktu
Dekripsi 11 18 19 15
(ms)
Rata-rata Nilai rata-rata dihitung hanya pada sampel yang
berhasil dilakukan enkripsi dan dekripsi:
N=4
∑ Panjang Teks
Rata-rata Panjang Teks =
N
25+67+38+30
= 4
= 40 ms
∑ Panjang Teks
Rata-rata Waktu Enkripsi =
N
23+ 23+ 29+17
= 4
= 23 ms
∑Panjang Teks
Rata-rata Waktu Dekripsi =
N
11+18+ 19+15
= 4
= 15,75 ms
48
BAB V
PENUTUP
5.1 Kesimpulan
Berdasarkan latar belakang permasalahan yang diuraikan diatas
maka di dapatkan rumusan masalah sebagai berikut:
a. Untuk menjalankannya hanya dibutuhkan browser (chrome) saja untuk
running aplikasi ini.
b. Untuk pesan antar pengguna yang terkirim ke database telah melalui
proses enkripsi RSA (Rivest Shamir Adleman) dan aplikasi chatting
ini memiliki akses akun pengguna yang tak terbatas (unlimited) selama
pengelolaan database dapat dikelola dengan baik oleh Admin.
5.2 Saran
Dari hasil kesimpulan yang telah diuraikan oleh penulis dari hasil
penelitian yang telah dilakukan, maka saran-saran diberikan berupa:
a. Memerlukan akses internet saat pengiriman data maupun komunikasi
lewat aplikasi ini untuk itu disarankan penggunaan internet harus
menggunakan kuota data yang cukup menampung banyak terlebih jika
digunakan oleh beberapa user.
b. Untuk data akun pengguna yang telah masuk ke dalam sistem dan
tersimpan di database apabila akun pengguna dalam jumlah banyak
dapat dilakukan backup data secara berkala agar data-data yang
sewaktu-waktu dibutuhkan dapat dipergunakan kembali sesuai
kebutuhan.
49
DAFTAR PUSTAKA
50
Adleman) Untuk Keamanan Data Rekam Medis Pasien. INTECOMS:
Journal of Information Technology and Computer Science, 4(1), 104–114.
https://doi.org/10.31539/intecoms.v4i1.2437
51
PEMERINTAH PROVINSI DAERAH KHUSUS IBUKOTA
JAKARTA BADAN PENDAPATAN DAERAH
SURAT KETERANGAN
Nama : ……………………….
Jabatan : ………………………..
Menerangkan bahwa:
……………………………
Direktur Utama
52