DIGITAL SIGNATURE DENGAN RSA DAN BIOMETR

DIGITAL SIGNATURE DENGAN METODE RSA DAN

BIOMETRI SUARA

Halaman Judul

ARTIKEL ILMIAH
Diajukan Sebagai Salah Satu Syarat
untuk Menyelesaiakan Program Strata Satu
pada Program Studi Teknik Informatika

Disusun oleh:
Nama

: Moch Saiful Umam

NIM

: 2.23.09.0034

Program Studi


: Teknik Informatika

Jenjang

: Strata Satu

FAKULTAS ILMU KOMPUTER
UNIVERSITAS AKI
SEMARANG
2012

Digital Signature Dengan Metode RSA dan Biometri Suara
Moch Saiful Umam
(Pembimbing: Yani Prihati, S.Si, M.Kom; Ana Wahyuni, S.Si, M.Kom)

Abstrak
Pertukaran dokumen elektronik melalui Internet menggunakan email
sudah luas digunakan sebagai transaksi komersial. Untuk menjamin dokumen
elektronik tersebut masih utuh/otentik/tidak mengalami modifikasi saat sampai di

pihak penerima (verifier) dalam jaringan publik yang tidak aman tersebut salah
satunya adalah memberi tandatangan digital (digital signature) pada dokumen
elektronik. Salah satu metode yang digunakan untuk membuat tandatangan digital
adalah dengan menggunakan algoritma RSA yang ditemukan Ron Rivest, Adi
Shamir, dan Leonard Adleman dikombinasikan dengan sertifikat digital untuk
proses penandatanganan dan verifikasi dokumen elektronik, juga menggunakan
biometri suara yang akan memverifikasi pihak pengirim (signer) saat hendak
mengirimkan dokumen elektronik. Tujuan dari penelitian ini adalah membuat
aplikasi digital signature dengan metode RSA dan biometri suara untuk
mengotentikasi dokumen elektronik. Pada penelitian ini yang digunakan sebagai
masukan adalah kunci privat dan sertifikat digital pihak signer yang dikonversi
kedalam format personal information exchange (pfx). selanjutnya pihak signer
menandatangani dokumen elektronik dengan pfx tersebut dan mengirimkannya
kepada pihak verifier menggunakan email. Pihak verifier memverifikasi signature
yang diterima. Jika hasilnya valid maka berarti dokumen elektronik yang diterima
masih utuh/otentik. Sebaliknya jika invalid, maka dokumen tersebut sudah tidak
utuh/mengalami modifikasi.
Kata kunci: sertifikat digital, tandatangan digital (digital signature), RSA,
biometri suara.
A. Pendahuluan

A.1 Latar Belakang
Penggunaan Internet sebagai media komunikasi dalam sistem sosial
ekonomi sangat mempengaruhi perkembangan globalisasi ekonomi dan informasi
karena perkembangan ekonomi dan perdagangan Internasional bergerak dengan
cepat hal tersebut mempengaruhi terhadap penggunaan dokumen. Kalau pada
mulanya dokumen yang merupakan alat bukti hanya dibuat dalam bentuk tertulis
tetapi sekarang dokumen juga harus dapat di buat bentuk elektronik.
Untuk membuktian bahwa dokumen elektronik telah diketahui atau
dilegalisasi oleh pihak yang berwenang sehingga dokumen tersebut dapat

1

2

digunakan sebagai alat bukti yang sah secara hukum maka pemerintah melalui UU
Nomor 11 Tahun 2008 tentang Informasi dan Transaksi Elektronik (ITE)
memberikan pengaturan tentang pengamanan dokumen elektronik melalui sistem
tandatangan digital (digital signature).
Tandatangan digital merupakan sebuah teknik otentikasi pesan yang
digunakan untuk keperluan message integrity, user authentication, non

repudiation. Message integrity adalah menjaga keaslian pesan dikirim dan

diterima oleh pihak yang berhak. User authentication bertujuan untuk menjamin
keaslian identitas pengirim, dan non repudiation adalah pengirim pesan tidak
dapat menyangkal isi pesan (Munir, 2004: 1).
Untuk menjamin pengirim yang akan melakukan signing dokumen
elektronik adalah orang yang berwenang maka digunakan verifikasi biometri
suara. Verifikasi suara digunakan karena biometri suara memiliki karakteristik
misalnya tidak dapat lupa, tidak mudah hilang, dan tidak mudah untuk dipalsukan
karena keberadaannya melekat pada diri manusia sehingga keunikannya lebih
terjamin (Putra & Resmawan, 2011: 9)
Implementasi RSA salah satunya digunakan sebagai algoritma signature
pada sertifikat digital. RSA (Rivest Shamir Adleman) merupakan algoritma
standar Internasional dan bisa diterapkan untuk digital signature yang
menyediakan otentikasi dan enkripsi kunci (Harris, 2010: 716). Penelitian ini
bertujuan membuat aplikasi digital signature menggunakan metode RSA dan
biometri suara untuk mengotentikasi dokumen elektronik sehingga menjamin
keaslian dokumen elektronik dan keaslian identitas pengirim.
A.2 Perumusan Masalah
Perumusan masalahnya adalah bagaimana membuat aplikasi digital

signature dengan menggunakan metode RSA dan biometri suara.

A.3 Batasan Masalah
Biometri yang digunakan adalah biometri suara yang diproses dengan
metode MFCC (Mel Frequency Cepstrum Coefficient) untuk mendapatkan pola
suara, dan pencocokan pola suara dengan metode DTW (Dynamic Time Warping).
Dokumen elektronik terpilih akan ditandatangani menggunakan sertifikat digital.

3

A.4 Metodologi Penelitian
Jenis data yang digunakan dalam penelitian adalah data primer yang berupa
waktu yang dibutuhkan untuk simulasi dokumen pada proses signing, dan waktu
yang dibutuhkan untuk simulasi signature pada proses verifikasi. Data sekunder
berupa landasan teori yang diambil dari buku dan penelusuran komputer. Metode
pengumpulan data yang digunakan adalah observasi dan tinjauan literatur.

B. Landasan Teori
B.1 Kriptografi dan Tandatangan Digital
Kriptografi adalah sebuah metode pengamanan dalam menyimpan dan

mentransmisikan data dalam sebuah bentuk yang hanya ditujukan untuk dibaca
dan diproses. Kriptografi menggunakan metode ilmiah untuk melindungi
informasi, sehingga kriptografi adalah sebuah cara yang efektif untuk melindungi
informasi berharga untuk disimpan pada sebuah media penyimpanan atau
ditransmisikan melalui jaringan komunikasi yang tidak aman (Harris, 2010: 665).
Tandatangan digital (digital signature) merupakan salah satu implementasi
protokol kriptografi yang dalam penandatanganan digital terhadap suatu dokumen,
sidik jari dokumen beserta timestamp-nya dienkripsi dengan kunci privat yang
menandatangani. Tandatangan digital memanfaatkan fungsi hash satu arah untuk
menjamin bahwa tandatangan itu hanya berlaku untuk dokumen yang
bersangkutan saja (Stiawan, 2005: 82).
B.2 Algoritma Kriptografi RSA
Algoritma kriptografi RSA dinamai sesuai dengan nama para penemunya
yaitu Ron Rivest, Adi Shamir, dan Leonard Adleman yang merupakan algoritma
standar Internasional dan bisa diterapkan untuk digital signature, pertukaran kunci
(key exchange), dan enkripsi. RSA dikembangkan tahun 1978 di MIT yang

menyediakan otentikasi dan enkripsi kunci (Harris, 2010: 716).
Keamanan algoritma RSA terletak pada sulitnya memfaktorkan bilangan
yang


besar

menjadi faktor-faktor prima. Pemfaktoran dilakukan untuk

4

memperoleh kunci privat. Berikut ini adalah prosedur pembuatan kunci RSA
(Harris, 2010: 717):
1.

Pilih dua bilangan prima sembarang, p dan q

2.

Bangkitkan

pilih bilangan acak untuk menjadi kunci enkripsi,

Pastikan bahwa e dan

3.

relatif prima

Hitung kunci dekripsi,

4.

Kunci publik

5.

Kunci privat

[

.

][


. Dimana

atau

]

Untuk melakukan signing pesan m dengan kunci privat
, verifikasinya dengan menggunakana kunci publik

adalah
yaitu

.
B.3 Sertifikat Digital
Penerapan kriptografi kunci publik membutuhkan pendukung yang
dinamakan infrastruktur kunci publik (Public Key Infrastructure, PKI). PKI
adalah sebuah pengaturan yang menjamin pengguna kunci publik bagi pihakpihak yang terlibat dengan penggunaan sistem keamanan. PKI juga mengikat
kunci publik dengan identitas pengguna. Dengan PKI, setiap pengguna dapat
mengotentikasi satu sama lain. Informasi di dalam sertifikat yang dikeluarkan oleh
PKI digunakan untuk enkripsi dan enkripsi pesan antara pihak-pihak yang

berkomunikasi. Contoh riil PKI di dalam kehidupan nyata adalalah sertifikat
digital. Sertifikat digital adalah sertifikat yang menggunakan tandatangan digital
kunci publik untuk mengasosiasikan identitas informasi seperti nama subjek
(perusahaan/individu/organisasi), kunci publik si subjek, masa berlaku sertifikat,
dan informasi yang relevan sehingga sebuah sertifikat dapat digunakan untuk
memverifikasi kunci publik yang dimiliki individu (Munir, 2006: 261).
Jadi, sertifikat digital mengikat kunci publik dengan identitas pemilik
kunci publik. Sertifikat ini dapat dianggap sebagai “surat pengantar” dari CA.
Supaya sertifikat digital itu dapat diverifikasi, maka kunci publik CA harus
diketahui secara luas. Seseorang yang memiliki kunci publik CA dapat

5

memverifikasi bahwa tanda tangan di dalam suatu sertifikat itu sah dank arena itu
mendapat jaminan bahwa knci publik di dalam sertifikat itu memang benar. Salah
satu CA, VeriSign, Inc. adalah CA yang terkemuka (Munir, 2006: 262).
B.4 Otentikasi menggunakan Biometri Suara
Biometri suara merupakan salah satu behavioral biometric yaitu biometri
yang bersifat aktif seiring jalannya waktu (fitur biometri akan berubah seiring
waktu). Otentikasi dengan menggunakan biometri pada dasarnya adalah sistem

pengenalan pola yang beroperasi dengan mekanisme enrollment dan testing.
Selama proses enrollment data biometri seseorang didapatkan dan fiturnya
diekstrak dari biometri tersebut. Sedangkan dalam proses testing, data biometri
yang diinputkan dibandingkan dengan fitur yang sudah didapatkan sebelumnya
dengan perhitungan statistika untuk proses otentikasi (Li, 2012: 4).
Verifikasi suara (speaker verification) adalah proses verifikasi seorang
pembicara,

dimana sebelumnya telah diketahui identitas pembicara tersebut

berdasarkan data yang telah dimasukkan. Speaker verification terdiri dari lima
blok utama yaitu akuisisi data, ekstraksi fitur, pencocokan pola, pembuatan
keputusan diterima/ditolak, dan enrollment untuk mendapatkan pola voice print
dalam database (Tolunay, 2010: 7).

Gambar B.1 Blok utama speaker verification
(Sumber: Tolunay, 2010)

6

Suara yang masuk akan dikonversi menjadi sinyal digital dengan melalui
proses

sampling,

kuantisasi

(Quantizing),

pengkodean

(Encoding),

dan

sinkronisasi (Syncronizing) yang merupakan dasar pembentukan pembentukan
Modulasi Sandi Pulsa (Pulse Code Modulation – PCM).
B.5 Ekstraksi Fitur Suara dan Pencocokan Pola Suara
Sinyal suara adalah sinyal yang berubah terhadap waktu secara perlahan
(quasi-stationary). Untuk rentang waktu yang pendek (antara 5 dan 100 milidetik),

kateristik sinyal ini bisa dianggap stasioner. Namun demikian untuk periode yang
cukup panjang (1/5 detik atau lebih) karakteristik sinyal berubah yang
mencerminkan perbedaan bunyi yang diucapkan. Oleh karena itu, short-time
spectral analysis adalah yang biasa dilakukan untuk mengkarakterisasi sinyal

suara. MFCC (Mel Frequency Cepstrum Coefficient) adalah teknik ekstraksi fitur
suara yang populer dan paling banyak digunakan (Buono, Jatmiko, &
Kusumoputro, 2009: 88).
DTW (DynamicTime Warping) adalah metode untuk menghitung jarak
antara dua data time series. Keunggulan DTW dari metode jarak yang lainnya
adalah mampu menghitung jarak dari dua vektor data dengan panjang berbeda.
Jarak DTW diantara dua vektor dihitung dari jalur pembengkokkan optimal
(optimal warping path) dari kedua vektor tersebut.

C. Pembahasan
C.1 Requirements Planning Task
Untuk membuat signature sebuah dokumen elektronik maka pihak pengirim
memerlukan sebuah kunci privat yang dibangkitkan sendiri dan kunci publik yang
diperoleh dari sertifikat digital. Untuk mengotentikasi pengirim yang aka
mengirimkan dokumen elektronik beserta signaturenya maka pengirim tersebut
harus melalui akses berupa login dengan menggunakan verifikasi biometri suara.
Secara umum aplikasi yang akan dikembangkan meliputi proses enrollment untuk
mendaftarkan biometri suara ke dalam sistem, proses verifikasi biometri suara saat
login, dan proses pembuatan digital signature pada dokumen elektronik. Aplikasi

yang akan dibuat adalah sebagai berikut:

7

Gambar C. 1 Bagan alir aplikasi yang akan dikembangkan
Perangkat yang digunakan dalam proses penelitian skripsi ini adalah
perangkat lunak dan perangkat keras dengan detil sebagai berikut:
1. Perangkat lunak meliputi Sistem Operasi Windows 7 Ultimate; Microsoft
Visual Basic 2010; Microsoft .NET Framework 4.0; Chilkat .NET 4.0
Framework versi 9.1.0 (library yang digunakan untuk pembuatan digital
signature); dan Matlab 2009a.

2. Perangkat keras: Notebook dengan spesifikasi Intel Atom Processor N450 @
1.66 GHz, RAM 1024 MB; Headset Startech SH-591MV.
C.2 User Design Task
Aplikasi yang akan dibuat dimodelkan menggunakan UML. Aktivitasaktivitas yang terjadi di dalam aplikasi yang didesain sesuai dengan gambaran
umum aplikasi adalah sebagai berikut:
1. Pendaftaran biometri suara pengguna (enrollment)
2. Login pengguna dengan biometri suara
3. Membangkitkan kunci privat
4. Mengekspor sertifikat digital ke dalam bentuk *.pem dan *.cer
5. Membuat sertifikat digital ke dalam bentuk *.pfx
6. Melakukan proses signing (menandatangani dokumen elektronik)
7. Melakukan proses verifikasi tandatangan

8

Dari aktivitas-aktivitas yang disebutkan mulai dari pendaftaran, membuat
kunci kriptografi, sampai dengan memverifikasi signature, dalam gambaran
interaksi antara pengguna dengan aplikasi bisa dimodelkan sebuah use case
sebagai berikut:

Gambar C. 2 Use case aplikasi digital signature
Komponen aplikasi yang digunakan terdiri dari beberapa form yang
melakukan fungsinya masing-masing. Berikut ini adalah komponen penyusun
aplikasi utama yang dimodelkan dengan component diagram:

Gambar C. 3 Component diagram aplikasi digital signature

9

Jendela utama merupakan tampilan pengguna setelah login yang berguna
untuk mengakses fasilitas-fasilitas aplikasi yang berhubungan dengan proses
signing (pemberian signature pada dokumen) dan verifikasi signature.

Gambar C. 4 Jendela utama aplikasi digital signature
C.3 Simulasi Aplikasi
Untuk melakukan simulasi, baik pihak penerima (signer) maupun pihak
pengirim (verifier) harus menginstal aplikasi yang dibuat ini. Selain itu di
komputer masing-masing pihak signer dan verifier juga harus ter-install .NET
Framework minimal versi 4.0. Selajutnya adalah mengirim email dengan lampiran
berupa dokumen, signature dokumen, dan sertifikat digital kepada penerima
melalui

email.

Kemungkinan

verifikasi

yang

dilakukan pihak

verifier

diidentifikasikan sebagai berikut:
Tabel 3. 1 Kemungkinan hasil verifikasi signature

No
1
2
3
4
5
6
7
8

Letak Modifikasi
Dokumen Signature Sertifikat



























Hasil Verifikasi
Valid signature



Invalid signature



Invalid signature



Invalid signature



Keterangan
31 milidetik
Verifikasi gagal
16 milidetik
Verifikasi gagal
47 milidetik
Verifikasi gagal
15 milidetik
Verifikasi gagal

10

Berdasarkan tabel yang disajikan tersebut bisa ditarik kesimpulan hal-hal
sebagai berikut:
1. Signature dokumen akan bernilai valid jika dokumen elektronik, signature
dokumen, dan sertifikat digital yang digunakan untuk proses verifikasi tidak
mengalami modifikasi.
2. Verifikasi akan memberikan nilai invalid signature jika dokumen dan atau
signature dokumen telah dimodifikasi isinya dan digital tidak mengalami

modifikasi.
3. Jika yang dimodifikasi adalah sertifikat digital, maka proses verifikasi
signature tidak akan terjadi (gagal). Hal ini berlaku untuk dokumen dan
signature dokumen yang belum dimodifikasi maupun yang sudah dimodifikasi.

C.4 Analisis Waktu Hasil Eksekusi
Berdasarkan data percobaan dapat disimpulkan bahwa semakin besar
ukuran dokumen elektronik yang akan ditandatangani, semakin banyak pula
waktu eksekusi yang diperlukan untuk memprosesnya. Analisis waktu eksekusi
disini menjelaskan berapa banyak waktu yang diperlukan untuk melakukan proses
signing dokumen dan proses verifikasi signature . Adapun rata-rata waktu yang

diperlukan untuk proses signing dokumen sebesar 684.31 KB adalah 161.13
milidetik, sementara proses verifikasi signature- nya 45.71 milidetik.
C.5 Hasil Penelitian
Hasil dari penelitian skripsi ini adalah terciptanya aplikasi digital signature
dengan metode RSA dan biometri suara. Aplikasi ini dapat digunakan untuk
memberikan tandatangan dokumen elektronik dan memverifikasinya dengan
menggunakan sertifikat digital. Adapun keunggulan aplikasi yang dihasilkan dari
penelitian skripsi ini adalah sebagai berikut:
1. Mengotentikasi dokumen dengan sertifikat digital. Kunci publik yang
dikirimkan ke penerima terdapat di dalam sertifikat digital yang dikirimkan.
2. Dalam melakukan signing dokumen elektronik, pihak signer cukup
membangkitkan kunci privat dan kunci publik didapatkan dari sertifikat digital
yang dimilikinya.

11

D. Penutup
D.1 Kesimpulan
Kesimpulan yang bsa diambil adalah aplikasi digital signature dengan
metode RSA dan biometri suara dibuat untuk keperluan otentikasi sehingga
menjamin keaslian dokumen elektronik dan keaslian identitas pengirim,
dikembangkan dengan menggunakan program Matlab 2009a dan Visual Basic
2010 Ultimate. Pengembangan aplikasi dilakukan dengan menggunakan metode
RAD dan pemodelan aplikasi dilakukan dengan menggunakan UML.
D.2 Saran
Saran yang bisa diberikan sehubungan dengan pembuatan aplikasi digita l
signature dengan metode RSA yaitu:

1. Aplikasi digunakan untuk melindungi hak kekayaan intelektual dan hak cipta
terhadap semua dokumen elektronik. Contohnya bagi lembaga penerbit jurnal
nasional LIPI, yaitu dengan memberikan signa ture setiap dokumen yang
diterbitkan dengan menggunakan signature orang yang meneliti jurnal tersebut.
2. Dengan adanya bandwith Internet yang semakin tinggi, aplikasi ini perlu
dikembangkan dalam versi web sehingga memudahkan pihak signer dan
verifier dalam menggunakan aplikasi (tanpa proses instalasi). Selain itu

sertifikat digital yang digunakan bisa divalidasi langsung oleh pihak CA
(Certificate Authority) .

3. Sistem verifikasi suara yang berhasil dibuat dalam penelitian ini masih sangat
sensitif terhadap noise. Dalam penelitian selanjutnya diharapkann dapat
menggunakan algoritma lainnya yang mampu mengatasi masalah noise
tersebut.

DAFTAR PUSTAKA
Adobe. (2007). Digital Signatures in Acrobat - Developer Technical Note. USA:
Adobe, Inc.
Andress, J. (2011). The Basics of Information Security, Understanding the
Fundamentals of InfoSec in Theory and Practice. USA: Elsevier.

12

Barzilay, Z. (2007). Voice Biometrics As A Natural and Cost-Effective Method of
Authentication. USA: White Paper.
Buono, A., Jatmiko, W., & Kusumoputro, B. (2009). Perluasan Metode MFCC
1D ke 2D Sebagai Ekstraksi Ciri Pada Sistem Identifikasi Pembicara
Menggunakan Hidden Markov Model (HMM) . Makara. Seri Sains Vol. 13
No. 1, Hal. 87-93.
Chairiansyah, S. (2010). Cara Kerja Sertifikat Digital pada Teknologi Web .
Diakses
tanggal
17
Juni
2012,
dari
Wordpress:
http://syafrilchairiansyah.wordpress.com/2010/05/14/digital-certificate/
Dawson, C. W. (2009). Projects in Computing and Information System - A
Student's Guide Second Edition. Harlow: Pearson Education Limited.
Dharwiyanti, S., & Wahono, R. S. (2003). Pengantar Unified Modeling Language
(UML). Jakarta: Ilmu Komputer.
Do, M. (1994). Digital Signal Processing Mini - Project: An Automatic Speaker
Recognition
System.
Laussanne,
Switzerland:
Audio
Visual
Communication Laboratory Swiss Federal Institute of Technology.
Dukkipati, R. V. (2010). Matlab An Introduction with Applications. New Delhi:
New Age International, Ltd.
Filev, A., Loton, T., McNeish, K., Schoellmann, B., Slater, J., & Wu, C. G. (2002).
Professional UML with Visual Studio .NET—Unmasking Visio for
Enterprise Architects. USA: Wrox Press, Ltd.
Fowler, M. (2003). UML Distilled: A Brief Guide to the Standard Object
Modeling Language, Third Edition. USA: Addison Wesley.
Harris, S. (2010). All in One CISSP Exam Guide Fifth Edition. USA: McGrawHill.
Hasibuan, Z. A. (2007). Metodologi Penelitian di Bidang Ilmu Komputer dan
Teknologi Informasi, Konsep, Metode Teknik dan Aplikasi. Depok: FIK
Universitas Indonesia.
Hermawan, J. (2005). Analisa Desain dan Pemrograman Berorientasi Objek
dengan UML dan Visual Basic. NET. Jogjakarta: Penerbit Andi.
IlmuKomputer. (2009). Flowchart. Diakses tanggal 17 Juni 2012, dari
IlmuKomputer:
http://ilmukomputer.org/wp-content/uploads/2009/06
/anharku-flowchart.pdf