implementasi tanda tangan digital menggunakan ecdsa (studi
TRANSCRIPT
Implementasi Tanda Tangan Digital menggunakan ECDSA
(Studi Kasus: Jurnal Tipe File pdf)
TUGAS AKHIR
Diajukan Untuk Memenuhi
Persyaratan Guna Meraih Gelar Sarjana
Informatika Universitas Muhammadiyah Malang
Nabilah Arwa
(201610370311042)
Bidang Minat
(Jaringan)
PROGRAM STUDI INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH MALANG
2021
i
LEMBAR PERSETUJUAN
Implementasi Tanda Tangan Digital menggunakan ECDSA
(Studi Kasus: Jurnal Tipe File pdf)
TUGAS AKHIR
Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1
Teknik Informatika Universitas Muhammadiyah Malang
Disusun Oleh:
Nabilah Arwa
201610370311042
Menyetujui,
Malang, 4/01/2021
Pembimbing I
Aminudin, S.Kom, M.Cs
NIDN. 0701068603
Pembimbing II
Sofyan Arifianto, S.Si, M.Kom
NIDN. 0721058309
ii
LEMBAR PENGESAHAN
iii
LEMBAR PERNYATAAN
iv
ABSTRAK
Perkembangan teknologi membuat hampir seluruh pembuatan dokumen
dilakukan secara digital. Dokumen digital yang bersifat rahasia akan sulit jika
terdapat modifikasi oleh orang yang tidak bertanggung jawab. Oleh karena itu
dibuatlah suatu skema tanda tangan untuk dokumen digital yaitu tanda tangan
digital. Tanda tangan digital pada dasarnya berfungsi sebagai alat otentikasi untuk
menjamin keaslian dokumen tersebut serta menghindari adanya penyangkalan.
Tanda tangan digital dapat menjamin beberapa aspek keamanan, yaitu authencity,
integrity dan non-repudiation. Tanda tangan digital dapat menggunakan
Algoritma Elliptic Curve Digital Signature (ECDSA) yang merupakan gabungan
dari Elliptic Curve Crytography (ECC) dan Digital Signature Standard (DSS).
Penelitian ini melakukan implementasi tanda tangan digital menggunakan
Algoritma ECDSA pada file jurnal tipe pdf. Hasil penelitian ialah tanda tangan
digital ini dapat menjamin authencity, integrity, dan non-repudiation pada file
jurnal tipe pdf tersebut.
Kata Kunci – Tanda Tangan Digital, Algoritma ECDSA, Authencity, Integrity,
Non-repudiation
v
ABSTRACT
Technological developments have made almost all document creation
done digitally. Confidential digital documents will be difficult if there is
modification by irresponsible people. Therefore, a signature scheme was made for
digital documents, namely digital signatures. The digital signature basically
functions as an authentication tool to ensure the authenticity of the document and
avoid denial. Digital signatures can guarantee several aspects of security, namely
authencity, integrity and non-repudiation. Digital signatures can use the Elliptic
Curve Digital Signature (ECDSA) Algorithm, which is a combination of Elliptic
Curve Crytography (ECC) and Digital Signature Standard (DSS). This study
implements a digital signature using the ECDSA algorithm in a pdf type journal
file. The result of the research is that this digital signature can guarantee
authencity, integrity, and non-repudiation in the pdf type journal file.
Keywords – Digital Signature, ECDSA Algorithm, Authenticity, Integrity, Non-
repudiation
vi
LEMBAR PERSEMBAHAN
Puji dan syukur kehadirat Allah SWT yang telah melimpahkan rahmat dan
hidayah-Nya, dan tak lupa shalawat serta salam kepada junjungan Nabi
Muhammad SAW, sehingga dengan ridha-Nya skripsi yang berjudul
“Implementasi Tanda Tangan Digital menggunakan Algoritma ECDSA (Studi
Kasus : Jurnal Tipe File pdf” dapat terselesaikan.
Penyelesaian tugas akhir ini tidak lepas dari dukungan dan bantuan dari
berbagai pihak, baik secara langsung maupun tidak langsung. Oleh karena itu,
penulis menyampaiakan ucapan terimakasih yang sebesar-besarnya kepada:
1. Allah SWT yang selalu memberikan kemudahan dan kesabaran dalam
mengerjakan tugas akhir ini.
2. Kedua orang tua tercinta, Papah dan Mamah, beserta Ka Icha dan Ka
Nadya yang selalu memberikan do’a dan dukungan kepada penulis secara
moril maupun materil sehingga Tugas Akhir ini dapat selesai.
3. Bapak Aminudin, S.Kom, M.Cs dan Bapak Sofyan Arifianto, S.Si,
M.Kom, selaku dosen pembimbing yang telah memberikan bimbingan,
arahan, serta saran kepada penulis dalam penelitian Tugas Akhir.
4. Ibu Gita Indah Marthasari, S.T., M.Kom. selaku Ketua Program Studi
Teknik Informatika Universitas Muhammadiyah Malang.
5. Seluruh Bapak dan Ibu Dosen Pengajar yang telah memberikan ilmunya
dan Staff TU jurusan Informatika.
6. Teman seperjuangan saya, Nur Annisa Fitriani, yang selalu memberikan
semangat dan motivasi dalam segala bentuk mulai dari awal kuliah hingga
pengerjaan tugas akhir ini selesai.
7. Teman-teman saya Imsa, Vincia, Riri, Salsa dan Yudanty yang selalu
memberikan semangat, dukungan, motivasi, dan saran kepada saya. Tidak
lupa juga kepada Koko Bernades, orang terkasih yang selalu senantiasa
mendukung untuk segera menyelesaikan tugas akhir ini.
8. Teman-teman kelas Informatika A 2016 dan teman-teman yang tidak
dapat disebutkan satu per satu.
vii
KATA PENGANTAR
Puji syukur kehadirat Allah SWT. atas limpahan rahmat dan hidayah-Nya,
sehingga penulis dapat menyelesaikan tugas akhir yang berjudul
“Implementasi Tanda Tangan Digital menggunakan ECDSA (Studi
Kasus: Jurnal Tipe File pdf)”.
Tulisan ini disajikan pokok-pokok bahasan yang meliputi latar belakang,
metode penelitian, dan hasil dan pembahasan yang telah didapat dari penelitian ini
dan telah disimpulkan berdasarkan hasil yang telah didapatkan oleh peneliti.
Peneliti menyadari sepenuhnya bahwa dalam penulisan tugas akhir ini masih
banyak kekurangan dan keterbatasan. Oleh karena ini peneliti mengharapkan
saran yang membangun agar tulisan ini bermanfaat untuk perkembangan ilmu
pengetahuan kedepan.
Malang, 3 Januari 2021
Penulis,
Nabilah Arwa
viii
DAFTAR ISI
LEMBAR PERSETUJUAN .................................................................................. i
LEMBAR PENGESAHAN .................................................................................. ii
LEMBAR PERNYATAAN ................................................................................. iii
ABSTRAK ............................................................................................................ iv
ABSTRACT ........................................................................................................... v
LEMBAR PERSEMBAHAN .............................................................................. vi
KATA PENGANTAR ......................................................................................... vii
DAFTAR ISI ....................................................................................................... viii
DAFTAR GAMBAR ............................................................................................. x
DAFTAR LAMPIRAN ........................................................................................ xi
BAB 1 ..................................................................................................................... 1
1.1 Latar Belakang ............................................................................................ 1
1.2 Rumusan Masalah ...................................................................................... 3
1.3 Tujuan Penelitian ........................................................................................ 3
1.4 Batasan Masalah ......................................................................................... 3
1.5 PenyusunanaLaporan ................................................................................. 4
1.6 Sistematika Penelitian ................................................................................ 4
BAB 2 ..................................................................................................................... 5
2.1 Tanda Tangan Digital ................................................................................. 5
2.2 Algoritma Kunci Publik ............................................................................. 5
2.3 FungsiaHash ................................................................................................. 6
2.4 Algoritma ECDSA ....................................................................................... 7
2.5 Penggunaan Library .................................................................................... 9
2.6 Skenario Pengujian ................................................................................... 10
BAB 3 ................................................................................................................... 11
3.1 Analisa Masalah ........................................................................................ 11
3.2 Tanda Tangan Digital (Digital Signature) ............................................... 11
3.3 Fungsi Hash ............................................................................................... 12
3.4 Elliptic Curve Digital Signature Algorithm (ECDSA) .......................... 12
3.5 Skenario Pengujian ................................................................................... 13
BAB 4 ................................................................................................................... 16
4.1 Implementasi ............................................................................................. 16
4.1.1 Implementasi Perangkat Keras ........................................................ 16
ix
4.1.2 Implementasi Perangkat Lunak ....................................................... 16
4.1.3 Penggunaan Library .......................................................................... 16
4.1.4 Implementasi Fungsi Hash ................................................................ 17
4.1.5 Implementasi Algoritma ECDSA ..................................................... 17
4.2 Pengujian ................................................................................................... 19
4.2.1 Siapkan 10 Jurnal .............................................................................. 19
4.2.2 Buat akun untuk sistem upload jurnal. ............................................ 19
4.2.3 Upload 10 Jurnal ke Sistem .............................................................. 20
4.2.4 Abstract setiap jurnal yang di-upload akan di hash dan dijadikan
id. .................................................................................................................. 20
4.2.5 Jurnal yang berhasil di-upload telah memiliki tanda tangan digital
di dalamnya yang dapat dilihat pada tombol “Detail”. ........................... 21
4.2.6 Hasil pembangkitan kunci (kunci publik dan kunci private) dari
upload jurnal dapat dilihat pada tombol “Check” dengan input password
saat buat akun terlebih dahulu. ................................................................. 22
4.2.7 Jurnal yang telah di-upload dapat di-download. ............................. 23
4.2.8 Setelah melakukan beberapa pengujian, akan dilakukan analisa
aspek keamanan sebagai berikut: ............................................................. 23
BAB 5 ................................................................................................................... 27
5.1 Kesimpulan ........................................................................................... 27
5.2 Saran ...................................................................................................... 27
DAFTAR PUSTAKA .......................................................................................... 28
LAMPIRAN ......................................................................................................... 30
x
DAFTAR GAMBAR
Gambar 2.1. Library ECDSA-PHP yang dibuat oleh Starkbank ......................... 10
Gambar 3.1. Proses Tanda Tangan Digital ........................................................... 11
Gambar 3.2. Pseudocode Hash ............................................................................. 12
Gambar 3.3. Proses pengiriman pesan .................................................................. 12
Gambar 3.4. Proses verifikasi ............................................................................... 13
Gambar 3.5. Pseudocode Algoritma ECDSA ....................................................... 13
Gambar 4.1. Pseudocode fungsi hash ................................................................... 17
Gambar 4.2. Pseudocode key generation .............................................................. 18
Gambar 4.3. Pseudocode signing .......................................................................... 18
Gambar 4.4. Pseudocode verify ............................................................................ 19
Gambar 4.5. 10 Jurnal yang akan di-upload ......................................................... 19
Gambar 4.6. Halaman register .............................................................................. 20
Gambar 4.7. Halaman login .................................................................................. 20
Gambar 4.8. Jurnal berhasil di-upload .................................................................. 20
Gambar 4.9. Pesan error jurnal tidak berhasil di-upload ...................................... 21
Gambar 4.10. Pesan sukses jurnal berhasil di-upload ........................................... 21
Gambar 4.11. Detail jurnal 1 ................................................................................. 22
Gambar 4.12. Hasil pembangkitan kunci jurnal 1 ................................................ 22
Gambar 4.13. Pesan error ...................................................................................... 23
Gambar 4.14. Jurnal berhasil di-download ........................................................... 23
Gambar 4.15. Detail Jurnal Asli ........................................................................... 24
Gambar 4.16. Detail Jurnal Modifikasi ................................................................. 25
xi
DAFTAR LAMPIRAN
Gambar 1. Library pada file Controller.php ......................................................... 30
Gambar 2. Library pada file HomeController.php ................................................ 30
Gambar 3. Library pada file JournalController.php .............................................. 30
Gambar 4. Source code PrivateKey.php ............................................................... 32
Gambar 5. Source code PublicKey.php ................................................................ 34
Gambar 6. Source code Signature.php .................................................................. 34
Gambar 7. Source code Ecdsa.php ....................................................................... 35
Gambar 8. Source code fungsi hash ...................................................................... 35
Gambar 9. Source code key generation ................................................................ 35
Gambar 10. Source code signing .......................................................................... 36
Gambar 11. Source code verify ............................................................................ 36
28
DAFTAR PUSTAKA [1] V. Kusuma, J. Matematika, and F. Matematika, “Elliptic Curve dan
Implementasinya pada Algoritma Tanda Tangan Digital,” vol. 3, no. 2, pp.
3–6, 2014.
[2] R. A. Azdy, “Tanda tangan Digital Menggunakan Algoritme Keccak dan
RSA,” vol. 5, no. 3, pp. 184–191, 2016.
[3] D. A. Rahman, “Pemanfaatan Tanda Tangan Digital Menggunakan
ECDSA dan Keccak pada Teks Editor,” Bandung, 2018.
[4] M. V. Sutarno, “Implementasi ECDSA untuk Verifikasi Berkas Berukuran
Besar dengan Menggunakan Merkle Tree,” pp. 2–7, 2017.
[5] R. Y. Sutrina, “Sistem Autentikasi Pengunggahan File dengan Algoritma
ECDSA,” Bandung, 2016.
[6] Z. S. Budi K. Hutasuhut, Syahril Efendi, “InfoTekJar : Jurnal Nasional
Informatika dan Teknologi Jaringan Digital Signature untuk Menjaga
Keaslian Data dengan Algoritma MD5 dan Algoritma RSA,” InforTekJar
J. Nas. Inform. dan Teknol. Jar., vol. 3, no. 2, pp. 164–169, 2019.
[7] I. A. Egi Cahyo Prabowo, “PENERAPAN DIGITAL SIGNATURE DAN
KRIPTOGRAFI PADA OTENTIKASI SERTIFIKAT TANAH
DIGITAL,” J. Ilm. Komput. dan Inform., vol. 6, no. 2, pp. 83–90, 2017.
[8] M. S. Ramadhan, P. F. Ariyani, T. Informatika, F. T. Informasi, and U. B.
Luhur, PENINGKATAN KEAMANAN LOGIN WEBSITE DENGAN
IMPLEMENTASI ONE TIME PASSWORD MENGGUNAKAN
ALGORITMA SHA1 DAN MD5 BERBASIS MOBILE, vol. 1. 2018.
[9] L. Refialy, E. Sediyono, and A. Setiawan, “Pengamanan Sertifikat Tanah
Digital menggunakan Digital Signature SHA-512 dan RSA,” J. Tek.
Inform. dan Sist. Inf., vol. 1, no. 3, pp. 229–234, 2015.
[10] R. Munir, Kriptografi. Bandung: Informatika Bandung, 2019.
[11] P. Sendi et al., “Implementasi Algoritma Ecdsa Untuk Pengamanan E-Mail
29
(Verifikasi Keaslian Pesan),” Surabaya, 2010.
[12] B. R. P. N, L. M. Citrady, and R. F. Sinaga, “Elliptic Curve Digital
Signature Algorithm (ECDSA),” Bandung.
[13] A. Triwinarko, “Elliptic Curve Digital Signature Algorithm (ECDSA),”
Bandung, 2005.
[14] W. A. Triyanto, “CLASS LIBRARY UNTUK PEMBUATAN APLIKASI
CRUD Wiwit Agus Triyanto Program Studi Sistem Informasi, Fakultas
Teknik, Universitas Muria Kudus Gondangmanis, PO Box 53, Bae, Kudus
59352,” Pros. SNATIF Ke-1, pp. 349–356, 2014.
[15] D. Naista, Codeigniter Vs Laravel Kasus Membuat Website Pencari Kerja.
Yogyakarta: Lokomedia, 2017.
[16] D. Ambriani, “Rancang Bangun Repository Publikasi Ilmiah Dosen
Berbasis Web Menggunakan Framework Laravel,” J. Manaj. Inform., vol.
10, no. 1, pp. 58–66, 2020.
100