implementasi tanda tangan digital menggunakan ecdsa (studi

15
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

Upload: others

Post on 17-Jan-2022

21 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Implementasi Tanda Tangan Digital menggunakan ECDSA (Studi

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

Page 2: Implementasi Tanda Tangan Digital menggunakan ECDSA (Studi

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

Page 3: Implementasi Tanda Tangan Digital menggunakan ECDSA (Studi

ii

LEMBAR PENGESAHAN

Page 4: Implementasi Tanda Tangan Digital menggunakan ECDSA (Studi

iii

LEMBAR PERNYATAAN

Page 5: Implementasi Tanda Tangan Digital menggunakan ECDSA (Studi

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

Page 6: Implementasi Tanda Tangan Digital menggunakan ECDSA (Studi

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

Page 7: Implementasi Tanda Tangan Digital menggunakan ECDSA (Studi

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.

Page 8: Implementasi Tanda Tangan Digital menggunakan ECDSA (Studi

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

Page 9: Implementasi Tanda Tangan Digital menggunakan ECDSA (Studi

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

Page 10: Implementasi Tanda Tangan Digital menggunakan ECDSA (Studi

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

Page 11: Implementasi Tanda Tangan Digital menggunakan ECDSA (Studi

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

Page 12: Implementasi Tanda Tangan Digital menggunakan ECDSA (Studi

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

Page 13: Implementasi Tanda Tangan Digital menggunakan ECDSA (Studi

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

Page 14: Implementasi Tanda Tangan Digital menggunakan ECDSA (Studi

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.

Page 15: Implementasi Tanda Tangan Digital menggunakan ECDSA (Studi

100