Sistem tanda tangan digital online untuk naskah dinas menggunakan algoritma DSA (Digital Signature Algorithm)

SISTEM TANDA TANGAN DIGITAL ONLINE UNTUK
NASKAH DINAS MENGGUNAKAN ALGORITMA
DSA (DIGITAL SIGNATURE ALGORITHM)

WALIM ABDUL SOMAD

DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
INSTITUT PERTANIAN BOGOR
BOGOR
2013

PERNYATAAN MENGENAI SKRIPSI DAN
SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA
Dengan ini saya menyatakan bahwa skripsi berjudul Sistem Tanda Tangan
Digital Online untuk Naskah Dinas Menggunakan Algoritma DSA (Digital
Signature Algorithm) adalah benar karya saya dengan arahan dari komisi
pembimbing dan belum diajukan dalam bentuk apa pun kepada perguruan tinggi
mana pun. Sumber informasi yang berasal atau dikutip dari karya yang diterbitkan
maupun tidak diterbitkan dari penulis lain telah disebutkan dalam teks dan
dicantumkan dalam Daftar Pustaka di bagian akhir skripsi ini.

Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut
Pertanian Bogor.
Bogor, Desember 2013
Walim Abdul Somad
NIM G64086044

ABSTRAK
WALIM ABDUL SOMAD. Sistem Tanda Tangan Digital Online untuk Naskah
Dinas Menggunakan Algoritma DSA (Digital Signature Algorithm). Dibimbing
oleh HENDRA RAHMAWAN.
Tanda tangan digital adalah hasil transformasi kriptografi dari suatu pesan
dengan panjang bit tertentu yang mampu menyediakan mekanisme untuk
memverifikasi otentikasi asal, integritas data, dan non-repudiasi dari penanda
tangan. Tujuan penelitian ini adalah mengimplementasikan tanda tangan digital
pada surat dinas menggunakan algoritma DSA serta melakukan uji execution time
terhadap proses pembentukan pasangan kunci, pembentukan tanda tangan, dan
verifikasi tanda tangan. Pengguna sistem terdiri dari tiga entitas, yaitu pegawai,
admin, dan certification authority. Sistem yang dibangun mampu membangkitkan
kunci pribadi dan kunci publik, membangkitkan tanda tangan ke dalam bentuk file
terkompresi (zip), serta memverifikasi tanda tangan dan kunci publik beserta

sertifikatnya. Uji terhadap fungsionalitas sistem menunjukkan bahwa 100% fungsi
berjalan dengan baik. Uji execution time menyimpulkan bahwa jenis dan ukuran
surat dinas tidak berkaitan langsung dengan waktu eksekusi saat pembangkitan
dan verifikasi tanda tangan. Uji verifikasi tanda tangan dengan skenario tertentu
menunjukkan bahwa file tanda tangan tidak tahan terhadap usaha ekstraksi dan
kompresi ulang.
Kata kunci: DSA, surat dinas, tanda tangan digital

ABSTRACT
WALIM ABDUL SOMAD. Online Digital Signature System for Official Letter
using DSA (Digital Signature Algorithm) Algorithm. Supervised by HENDRA
RAHMAWAN.
Digital signature is the result of a cryptographic transformation from a
message with a certain length of bits that can provide a mechanism to verify the
origin authentication, data integrity, and non-repudiation of the signatories. The
purpose of this study is to implement digital signatures on official letter using the
DSA algorithm and test the execution time for the process of key pair formation,
signature formation, and signature verification. Users of the system consists of
three entities, namely employees, admin, and the certification authority. The
development system was able to generate the private key and public key, generate

a signature in the form of a compressed file (zip), and verify the signature and the
public key along with the certificate. Functionality test of the system showed that
100% of the functions work is well. Execution time test concluded that the type
and size of the official letter was not directly related to the execution time when
the signatures were generated dan verified. Verification test of signature with
specific scenarios showed that the signature file was not resistant to the attempt of
re-extraction and re-compression.
Keywords: digital signature, DSA, official letter

SISTEM TANDA TANGAN DIGITAL ONLINE UNTUK
SURAT DINAS MENGGUNAKAN ALGORITMA
DSA (DIGITAL SIGNATURE ALGORITHM)

WALIM ABDUL SOMAD

Skripsi
sebagai salah satu syarat untuk memperoleh gelar
Sarjana Komputer
pada
Departemen Ilmu Komputer


DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
INSTITUT PERTANIAN BOGOR
BOGOR
2013

Penguji:
1 DrEng Heru Sukoco, SKom MT
2 Endang Purnama Giri, Skom MKom

Judul Skripsi : Sistem Tanda Tangan Digital Online Untuk Naskah Dinas
Menggunakan Algoritma DSA (Digital Signature Algorithm)
Nama
: Walim Abdul Somad
NIM
: G64086044

Disetujui oleh


Hendra Rahmawan, SKom MT
Pembimbing

Diketahui oleh

Dr Ir Agus Buono, MSi MKom
Ketua Departemen

Tanggal Lulus:

JudulS kr.
Nama
NIM

':: is em Tanda Tangan Digital Online Untuk Naskah Dinas
.. len&,uunakan Algoritma DSA (Digital Signature Algorithm)
. 'alim Abdul Somad
G6 - 6044

Disetujui oleh


gセ@

Hendra Rahrnawan, SKom MT
Pembimbing

Tanggal Lulus:

2 i DEC 2013

PRAKATA

Puji dan syukur penulis panjatkan kepada Allah subhanahu wa ta’ala atas
segala karunia-Nya sehingga karya ilmiah ini berhasil diselesaikan. Tema yang
dipilih dalam penelitian yang dilaksanakan sejak bulan Januari 2013 ini ialah
keamanan informasi, dengan judul Tanda Tangan Digital Untuk Surat Dinas
Menggunakan Algoritma DSA (Digital Signature Algorithm).
Terima kasih penulis ucapkan kepada Bapak Hendra Rahmawan, SKom MT
selaku pembimbing, Bapak Endang Purnama Giri, SKom MKom selaku penguji,
serta Bapak Dr Eng Heru Sukoco, SKom MT yang telah banyak memberikan

saran kepada penulis. Di samping itu, penghargaan penulis sampaikan kepada Ibu
Ir Sri Dyah Retnowati Suseno Puteri selaku Kepala Bidang Data dan Statistik,
Pusat Data, Statistik dan Informasi, yang telah membantu selama pengumpulan
data. Ungkapan terima kasih juga disampaikan kepada ayah, ibu, serta seluruh
keluarga, atas segala doa dan kasih sayangnya.
Semoga karya ilmiah ini bermanfaat.

Bogor, Desember 2013
Walim Abdul Somad

DAFTAR ISI

DAFTAR TABEL

vii

DAFTAR GAMBAR

vii


DAFTAR LAMPIRAN

vii

PENDAHULUAN

1

Latar Belakang

1

Perumusan Masalah

2

Tujuan Penelitian

2


Manfaat Penelitian

2

Ruang Lingkup Penelitian

2

METODE

2

Tanda Tangan Digital

5

Algoritma DSA

5


Pembangkitan kunci

6

Pembangkitan tanda tangan digital

6

Verifikasi tanda tangan digital

7

Fungsi Hash SHA-1

9

Praproses

10


Penghitungan hash

11

Fase Perencanaan

15

Identifikasi Naskah Dinas

15

Identifikasi Pengguna

15

Fase Analisis

16

Fase Perancangan

17

Fase Implementasi

20

Fase Pengujian

20

HASIL DAN PEMBAHASAN

20

SIMPULAN DAN SARAN

22

Simpulan

22

Saran

22

DAFTAR PUSTAKA

23

LAMPIRAN

24

RIWAYAT HIDUP

39

DAFTAR TABEL
1 Hasil pengukuran waktu signing dan verifying
2 Hasil uji skenario terhadap paket surat
3 Hasil uji skenario terhadap paket kunci

21
21
22

DAFTAR GAMBAR
1
2
3
4
5
6
7
8
9
10
11
12
13
14

Struktur organisasi Pusdatin
Alur surat masuk
Alur surat keluar
Skema tanda tangan digital pada Algoritma DSA
Proses fungsi hash SHA-1
Alur proses penambahan pesan sisipan pada SHA-1
Alur proses perhitungan SHA-1
Alur perhitungan fungsi logika f pada SHA-1
Alur penyimpanan nilai konstanta K pada SHA-1
Tahap pengembangan perangkat lunak dengan SDLC
Skema tanda tangan digital di Pusdatin
Use case diagram pengguna Sistem Tanda Tangan Digital Online
Activity diagram untuk skema surat keluar
Activity diagram untuk skema surat masuk

3
3
4
8
9
11
13
14
14
15
16
17
18
19

DAFTAR LAMPIRAN
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

Penguraian pesan pada teks “abc”
Hasil message schedule pada pesan “abc”
Hasil penyimpanan nilai pada peubah sementara (buffer)
Daftar kebutuhan sistem
ERD subsistem Sirkulasi Surat
Relationship table pada basisdata subsistem Sirkulasi Surat
DFD level-0 Sistem Tanda Tangan Digital Online
DFD level-1 Sistem Tanda Tangan Digital Online
DFD level-2 Subsistem Tanda Tangan Digital
DFD level-2 subsistem Sirkulasi Surat
DFD level-2 subsistem Key Generator
Rancangan arsitektur jaringan Sistem Tanda Tangan Digital Online
Class yang digunakan pada API JCA
Hasil pengujian fungsional sistem
Hasil pengukuran waktu pembangkitan kunci pribadi, kunci publik,
dan sertifikat

24
24
25
27
28
28
29
30
31
32
33
34
34
35
37

PENDAHULUAN
Latar Belakang
Pada instansi pemerintah, khususnya Pusat Data Statistik dan Informasi
(Pusdatin) Kementerian Kelautan dan Perikanan, komunikasi kedinasan dilakukan
secara tertulis melalui surat dinas dan harus mengikuti tata naskah dinas. Tata
naskah dinas memegang peranan penting guna menciptakan komunikasi
kedinasan yang efektif dan efisien untuk mendukung pelaksanaan
penyelenggaraan pemerintahan dan pembangunan serta pelayanan publik.
Berdasarkan Permen KP No.03/2011 tentang Pedoman Umum Tata Naskah Dinas
di Lingkungan Kementerian Kelautan dan Perikanan, naskah dinas adalah
informasi tertulis sebagai alat komunikasi kedinasan yang dibuat dan/atau
dikeluarkan oleh pejabat berwenang di lingkungan instansi Kementerian Kelautan
dan Perikanan.
Tanda tangan konvensional memiliki kelemahan terkait dengan pemalsuan
identitas oleh pihak yang bertujuan untuk menyalahgunakan wewenang. Tindakan
pemalsuan pada bentuk fisik dapat berupa pemalsuan tanda tangan dan
menyalinnya kembali, sedangkan untuk hasil pemindaian dapat berupa modifikasi
citra digital terhadap isi surat maupun tanda tangan. Tantangan lainnya adalah
mobilitas pejabat selaku penanda tangan. Pada jenis surat tertentu, tanda tangan
tidak bisa diwakilkan kepada Pelaksana Harian (Plh). Tertundanya surat dinas
untuk ditandatangani pejabat akan berpengaruh terhadap efisiensi waktu program
kerja.
Tanda tangan digital adalah bentuk elektronik yang dianalogikan dengan
tanda tangan konvensional. Tanda tangan digital dapat digunakan sebagai jaminan
bahwa pengirim telah benar-benar menandatangani suratnya. Tanda tangan digital
juga dapat mendeteksi perubahan isi pada suatu pesan (NIST 2009).
Menurut Stallings (2005) tanda tangan digital harus mampu memverifikasi
pemilik tanda tangan, mampu melakukan autentikasi pemilik pesan, dan dapat
diverifikasi oleh pihak ke tiga sebagai solusi jika ada perselisihan. Berdasarkan
sifat-sifat tersebut, tanda tangan digital harus memenuhi persyaratan yaitu: berupa
susunan bit yang bergantung pada pesannya; menggunakan informasi unik dari
pengirim; harus mudah dibangkitkan, dikenali, dan diverifikasi, namun sulit untuk
dipalsukan; dan tanda tangan harus mudah di simpan dalam media penyimpanan.
Hasil penelitian Situmorang (2006) menyimpulkan bahwa DSA merupakan
algoritma tanda tangan digital yang cukup efisien dalam operasinya, DSA
memiliki kompleksitas O(n) untuk proses pembentukan dan verifikasi tanda
tangan. Tingkat ketangguhan keamanan DSA tergantung pada panjang modulus
yang dipilih. Penelitian ini akan mengembangkan sistem tanda tangan digital
untuk surat dinas menggunakan algoritma DSA dengan panjang modulus 1024
bit. Pengujian dilakukan terhadap waktu eksekusi pembangkitan dan verifikasi
tanda tangan digital, serta uji keabsahan tanda tangan digital dengan skenario.

2
Perumusan Masalah
Berdasarkan latar belakang yang disajikan di atas dapat diambil suatu
rumusan masalah yaitu sebagai berikut:
1 Bagaimana merancang sistem tanda tangan digital pada naskah dinas secara
online di lingkungan Pusdatin.
2 Bagaimana menguji kinerja sistem tanda tangan digital terhadap keutuhan isi
naskah dinas, autentikasi, dan non-repudiasi pengirim surat.

Tujuan Penelitian
Tujuan dari penelitian ini adalah merancang perangkat lunak sistem tanda
tangan digital berbasis web di Pusdatin, serta uji execution time pada proses
pembentukan tanda tangan, verifikasi tanda tangan dan pasangan kunci.

Manfaat Penelitian
Penelitian ini diharapkan mampu menerapkan skema tanda tangan digital
pada instansi pemerintah dengan cara menyisipkan tanda tangan digital yang
tahan terhadap usaha pengubahan integritas pesan, dan autentikasi surat.

Ruang Lingkup Penelitian
Ruang lingkup penelitian ini yaitu:
1 Jenis naskah dinas yang digunakan adalah surat perintah (SP), surat keputusan
(SK), dan term of reference (TOR) di lingkup Pusdatin, Kementerian Kelautan
dan Perikanan.
2 Teknik penandaan digital menggunakan algoritma DSA, dengan fungsi hash
SHA-1.
3 Naskah dinas hanya dapat ditandatangani oleh satu penanda tangan.

METODE
Naskah Dinas
Pusdatin merupakan unit kerja di bawah Sekretariat Jenderal, dan dipimpin
oleh seorang kepala setingkat eselon II seperti ditunjukkan pada Gambar 1.
Kepala Pusdatin bertanggung jawab kepada Sekretaris Jenderal KKP. Satu tingkat
dibawahnya adalah Kepala Bidang/Bagian, yaitu jabatan struktural eselon III.
Masing-masing bidang/bagian memiliki bawahan yaitu kepala subbidang/
subbagian, jabatan ini merupakan jabatan struktural eselon IV. Setiap eselon IV
membawahi staf langsung yang disebut sebagai pelaksana. Bagian Tata Usaha
merupakan unit kerja yang mengelola persuratan di Pusdatin.

3
Kepala
Pusdat in

Bidang
Komunikasi

Bidang Sist em
Informasi

Bidang Dat a
dan St at ist ik

Bagian Tat a
Usaha

Gambar 1 Struktur organisasi Pusdatin
Berdasarkan hasil perolehan informasi mengenai alur surat di Pusdatin serta
penelusuran pustaka mengenai peraturan perundang-undangan mengenai tata
naskah dinas, terdapat dua alur surat yaitu alur surat masuk dan alur surat keluar.
Gambar 2 menjelaskan bahwa setiap surat masuk akan ditindaklanjuti oleh
Kepala Pusdatin melalui lembar disposisi, yaitu sampul yang ditambahkan pada
bagian depan surat berisi arahan tindak lanjut dari Kepala Pusdatin kepada
bawahannya.

Gambar 2 Alur surat masuk
Alur surat keluar yang diilustrasikan pada Gambar 3 menunjukkan bahwa
dalam pembuatan konsep surat, kepala bidang/bagian akan memberikan
persetujuan berupa paraf terhadap konsep surat yang dibuat oleh staf jika sudah
dianggap memenuhi syarat kebahasaan maupun maknanya.

4

mulai

Inisiat if

Pem buat an
konsep surat
Periksa konsep
surat

Ada

Kesalahan
Tidak ada
Konsep surat

Periksa konsep
surat

Kesalahan
Tidak ada
M enandat angani surat

Penomoran
surat dan
st em pel

Surat keluar

Agenda
surat

Pengiriman
surat keluar

selesai

Gambar 3 Alur surat keluar

Ada

5
Tanda Tangan Digital
Menurut Menezes et al. (1996) skema tanda tangan digital diklasifikasikan
ke dalam dua kelompok, yaitu:
1 Skema tanda tangan digital dengan apendiks, membutuhkan pesan asli sebagai
input untuk algoritma verifikasi. Contoh algoritma yang termasuk dalam
kelompok ini adalah DSA, ElGamal, dan Schnorr.
2 Skema tanda tangan dengan pemulihan pesan, tidak membutuhkan pesan asli
sebagai input untuk algoritma verifikasi. Dalam hal ini, pesan asli dipulihkan
dari tanda tangan itu sendiri. Contoh dari skema ini adalah RSA, Rabin, dan
Nyberg-Rueppel.
Pada penelitian sebelumnya (Ginting 2012) membandingkan kinerja untuk
masing-masing hasil pengujian DSS (DSA, RSA, dan ECDSA) dengan ketiga
fungsi hash berbeda. Berdasarkan penelitian tersebut algoritma DSA memiliki
rata-rata waktu signing dan verifying terbaik di antara algoritma RSA dan ECDSA.
Salah satu faktor penentunya adalah logaritma, dan fungsi hash yang digunakan.

Algoritma DSA
Algoritma DSA adalah suatu skema tanda tangan digital yang
memanfaatkan operasi aritmatika modulus nilai tertentu terhadap bilangan bulat
prima berukuran lebih dari atau sama dengan 1024 bit. Letak keamanan algoritma
DSA adalah pada ukuran bilangannya, sehingga secara komputasi matematika
sulit untuk menemukan bilangan tersebut. Algoritma DSA merupakan varian dari
algoritma penandaan Schnorr dan ElGamal.
Secara garis besar, algoritma DSA terdiri dari algoritma pembangkitan tanda
tangan digital, dan algoritma verifikasi tanda tangan digital. Algoritma
pembangkitan bilangan acak menggunakan pseudo random number generator
tidak termasuk pada lingkup penelitian ini.
Menurut NIST (2009) algoritma DSA memiliki parameter sebagai berikut:
p: suatu bilangan prima modulus, dimana 2L-1