One of asymmetric cryptographic applicatoin was digital signature. One of digital signature
function was authentication. Some developed digital signature algorithms were El Gamal, elliptic
curve, and RSA. The security of El Gamal digital signature was based on discrete logarithm, the
elliptic curve was on factorisation of elliptic curve, the RSA was on factoring prime number. The
purposes of this research were to know the scheme of RSA key creation, RSA signing scheme, and RSA
verification scheme. The scheme of RSA key creation was started with choosing two different prime
numbers then computes the product of the prime numbers, called n. After that choose a number, less
than with was Totient Euler of n, and coprime with , called v. The number (n,v) was
public key. The private key was yielded by computing solve ( ) The value of
document digital signature S was obtained by computing with D was hash value of
the document. The value of verification V was yielded by computing If it
means that document wasn’t changed, but if it means that the document was changed
Keywords: asymmetric cryptography, digital signature, RSA algorithm, digital signature with RSA
algorithm.
PENDAHULUAN mempelajari cara merahasiakan pesan
sehinggga maksud pesan tersebut tidak dapat
Kriptografi atau persandian adalah diketahui. Dalam persandian dikenal dua
salah satu cabang matematika yang proses, yakni enkripsi dan dekripsi. Enkripsi
2 Tanda Tangan Digital (Naji Maruf I, Karyati)
adalah proses menyandikan pesan atau proses verifikasi tanda tangan digital. Proses
merahasiakan pesan, yakni mengubah teks pembuatan kunci menghasilkan kunci publik
yang dapat dibaca (teks terang) ke teks yang dan kunci rahasia. Kemudian kunci privat
tidak dapat dibaca (teks sandi). Sedangkan digunakan untuk menandatangani dokumen
dekripsi adalah proses mengubah teks sandi digital, sedangkan kunci publik digunakan
menjadi teks terang, teks yang dapat dibaca. untuk memverifikasi tanda tangan digital.
Kedua proses enkripsi dan dekripsi ini
memerlukan kunci. Kunci untuk proses Tanda tangan digital dan tanda tangan
enkripsi disebut kunci enkripsi dan kunci untuk konvensional memiliki fungsi sama, yaitu
proses dekripsi disebut kunci dekripsi. otentikasi (menjamin keaslian dokumen).
Beberapa algoritma tanda tangan digital yang
Pada zaman kaisar Caesar, orang- telah dikembangkan antara lain tanda tangan
orang menggunakan satu kunci untuk enkripsi digital algoritma R. Rivest, A. Shamir dan L.
dan dekripsi. Hal ini disebut sebagai Adleman (RSA), metode ElGamal, dan metode
kriptografi kunci simetrik. Selama beberapa kurva eliptik.
waktu kunci simetrik masih digunakan. Tetapi
kemudian kunci simetrik mengalami beberapa Di antara ketiga metode tanda tangan
permasalahan seperti dua orang yang digital tersebut, yang akan dibahas dalam
berkomunikasi harus merahasiakan kunci yang penelitian ini adalah metode tanda tangan
mereka gunakan dari orang lain, rumitnya digital sistem R. Rivest, A. Shamir dan L.
pergantian kunci, banyaknya kunci yang harus Adleman (RSA) sebab langkah yang
disimpan (Spillman, 2005:179). digunakan sederhana.
kunci dan tanda tangan dilakukan oleh Saepul, Kemudian dicari nilai phi Euler dari
proses verifikasi dilakukan oleh Vina. Sebab n adalah hasil kali bilangan
Tabel 1. Ringkasan Skema Tanda Tangan prima, maka Pada
Digital Algoritma RSA. karya ini
Ketiga bilangan ini, tidak boleh
Saepul Vina
dipublikasikan.
Pembuatan kunci
Pilih dua bilangan prima Selanjutnya, memilih bilangan bulat
dan antara 1 dan yang saling prima dengan
Pilih exponen verifikasi
, misal v. Jadi dan
dengan
( ) ( ) Pada karya ini, bilangan ini
dinamakan eksponen verifikasi. Untuk
publikasikan mengecek apakah v dan saling prima,
digunakan algoritma Euclid yakni apabila
Proses tanda tangan
Menghitung yang Bilangan v dan harus saling prima untuk
memenuhi:
menjamin ketunggalan invers v modulo
( )
Menandatangani dokumen Pada penelitian ini dipilih
D dengan menghitung: Kemudian akan dicek apakah dan
saling prima sebagai berikut.
Proses Verifikasi Diketahui bahwa maka
Menghitung Ini menunjukkan bahwa
dan saling prima.
dan
mencocokan- Sampai langkah ini sebenarnya kita
nya dengan sudah mendapatkan bilangan modulus dan
D. eksponen verifikasi. Kedua bilangan ini adalah
kunci publik. Keduanya dipublikasikan secara
berurutan, bilangan modulus kemudian
Pembentukan Kunci eksponen verifikasi Pada penelitian ini,
Proses ini dilakukan oleh pihak yang kunci publiknya adalah
akan menandatangani dokumen. Proses ini Langkah selanjutnya adalah
memerlukan dua bilangan prima berbeda, membentuk kunci privat. Pada karya ini kunci
misal dan . Untuk mengecek apakah privat disimbolkan dengan s. Bilangan s ini
bilangan-bilangan tersebut prima atau bukan didapatkan dengan mencari invers v modulo
digunakan saringan Erastostenes, yakni jika . Jadi bilangan s memenuhi
tidak ada bilangan prima yang kurang dari √ ( ) Karena v dan saling
dan membagi , maka bilangan prima. prima maka banyaknya bilangan s adalah
Kedua bilangan prima yang dipilih ini haruslah tunggal. Selanjutnya bilangan ini selain disebut
besar, minimal seratus digit. Tetapi pada karya sebagai kunci privat, juga disebut sebagai
ini digunakan bilangan prima yang kecil untuk eksponen tanda tangan. Pada karya ini
memudahkan perhitungan. Kedua bilangan bilangan . Sebab
tersebut adalah dan Sampai sini semua kunci sudah
Setelah itu, kedua bilangan ini ditemukan.
dikalikan Bilangan ini akan digunakan Jadi pada karya ini, kunci publiknya
sebagai modulus. Oleh karena itu, pada karya adalah dan kunci privatnya
ini, bilangan ini disebut sebagai bilangan adalah . Bilangan yang dipublikasikan
modulus. Pada karya ini bilangan modulusnya adalah sedangkan bilangan
adalah dirahasiakan. Begitu juga dengan
bilangan dan harus dirahasiakan.
4 Tanda Tangan Digital (Naji Maruf I, Karyati)
Diagram alir pembentukan kunci tanda tangan Berikut disertakan pula algoritma
digital terangkum dalam Gambar 1. pembuatan kunci tanda tangan digital:
Bilangan
1. Pilih bilangan prima pertama, misal p.
START 2. Cek, apakah ada bilangan prima yang
prima p
kurang dari √ dan membagi habis p.
ada 3. Jika ada, maka cari bilangan yang lain.
Jika tidak ada maka langkah
selanjutnya adalah cari bilangan prima
Adakah bilangan kedua, misal q.
prima yang
4. Cek, apakah ada bilangan prima lain
kurang dari √
dan membagi p? yang kurang √ dan membagi habis q.
5. Jika ada, maka cari bilangan yang lain.
Jika tidak ada maka langkah
tidak selanjutnya adalah kalikan kedua
bilangan tersebut, .
Bilangan prima q 6. Hitung fungsi phi Euler dari n,
tersebut. Tanda tangan ini bisa dilampirkan disimpulkan bahwa dokumen tersebut masih
bersama dokumen atau dipisahkan dari otentik. Jika tidak berarti dokumen tersebut
dokumen. Diagram alir proses tanda telah berubah.
tangan digital diberikan dalam Gambar 2. Misal ditemukan tanda tangan digital
dengan kunci publik
Dokumen digital pada proses sebelumnya. Selanjutnya
, eksponen tanda tanda tangan tersebut akan diverifikasi.
START Apakah pesannya masih otentik atau sudah
tangan bilangan
berubah. Hasil proses verifikasinya adalah
modulus
Tanda tangan
Gambar 2. Diagram Alir Skema
START digital , Kunci
Penandatanganan
publik .
Berikut adalah algoritma proses tanda
tangan digital:
1. Mencari dokumen digital.
2. Mencari nilai hash dari dokumen tersebut,
misal D.
3. Mencari kunci publik dan kunci
privat
4. Memangkatkan dokumen tersebut dengan Apakah
kunci privat Jadi
Ya Tidak
5. Bilangan adalah tanda tangan digital
dari dokumen tersebut. Dokumen Dokumen
belum sudah
Misal diketahui suatu dokumen digital berubah berubah
memiliki nilai hash
dan akan ditandatangani menggunakan
eksponen tanda tangan Maka tanda
tangan digital dokumen tersebut adalah END
Tabel 2. Daftar Nama dan Kunci Publik Dalam bagian dokumen berisi pesan yang
ingin ditandatangani. Secara default, pesan
Kunci Kunci tersebut adalah „Tuliskan pesan Anda di sini‟
Publik Publik dengan nilai hash
Nama (n,v) Nama (n,v)
Doctor (1763,101) Zulfa (33,13) Bagian pembuatan kunci berisi
Nabil (187,53) Hamam (155,29) bilangan prima p, bilangan prima q, bilangan v,
Barok (85,47) Zidni (55,19) cek p, cek q, v cek 1, v cek 2, kunci publik n
Epep (899,89) Faat (93,23) dan v, serta kunci privat s. Masukkan bilangan
Defri (143,29) Adlan (62,19) prima pada kotak putih . Apabila bilangan
Taufik (209,31) Farouq (77,13) yang dimasukkan bukan bilangan prima, maka
Fadhil (319,43) Ajisaka (217,37) akan muncul tulisan berwarna merah „bilangan
Aghna (22,7) tersebut bukan prima, masukkan bilangan yang
lain‟ pada cek p. Serupa dengan bilangan
Pertama mencari nilai hash dokumen prima , masukkan bilangan prima pada
tersebut. Diketahui bahwa nilai hash dokumen kotak putih . Apabila bilangan tersebut bukan
tersebut adalah 467. Kemudian memverifikasi prima maka akan muncul tulisan berwarna
tanda tangan dengan kunci publik dari masing- merah „bilangan tersebut bukan prima,
masing orang di atas. Jika hasil verifikasi masukkan bilangan yang lain‟ pada cek q.
V=nilai hash, maka dialah orangnya. Kemudian pada kotak putih , masukkan
bilangan dengan syarat
Orang yang pertama diteliti bernama dan prima relatif terhadap
Dokter dengan kunci publik . Kotak akan mengecek apakah
Kemudian tanda tangan S=83 , apabila negatif
dipangkatkan dengan v=101. Diperoleh bahwa atau lebih dari akan muncul
tulisan berwarna merah „Masukkan bilangan
. Jadi positif yang kurang dari ‟.
. Ini menunjukkan bahwa Sedangkan kotak akan mengecek
Dokter bukanlah pelaku yang diceri. apakah dan saling prima,
apabila v dan tidak saling
Orang kedua yang diteliti bernama prima, maka akan muncul tulisan „Masukkan
Nabil dengan kunci publik bilangan yang saling prima dengan
Kemudian tanda tangan S dipangkatkan ‟.
dengan . Diperoleh bahwa Setelah semuanya benar, didapat kunci
. publik dan serta kunci privat . Pada kotak
Jadi . n beriisi bilangan modulo yakni . Pada
Ini menunjukkan bahwa Nabil bukanlah pelaku kotak v berisi bilangan v itu sendiri. Kedua
yang dicari. bilangan n dan v ini adalah kunci publik tanda
tangan digital. Pada kotak berisi kunci privat
Orang ketiga yang diteliti bernama yang akan digunakan untuk menandatangani
Barok dengan kunci publik dokumen digital.
Kemudian tanda tangan S dipangkatkan
dengan v=47. Diperoleh bahwa Kemudian pada bagian proses tanda
. Karena tangan ada tombol hash dan tombol sign, ada
berarti bahwa Barok kotak putih n dan kotak putih s. Untuk
adalah pelaku yang dicari. menghitung tanda tangan digital pertama
Tampilan program GUI matlab yang ditekan tombol hash. Bilangan yang muncul
dapat memudahkan perhitungan proses tanda adalah nilai hash dari dokumen digital. setelah
tangan digital dan verifikasi tanda tangan itu masukkan nilai n pada kotak putih n dan
digital ada dalam Gambar 4. masukkan s pada kotak putih s. Kemudian
tekan tombol sign. Bilangan yang muncul
Dalam program tersebut ada empat adalah nilai tanda tangan digital yang dicari.
bagian yaitu dokumen, pembuatan kunci,
proses tanda tangan dan proses verifikasi.
8 Tanda Tangan Digital (Naji Maruf I, Karyati)
DAFTAR PUSTAKA
SIMPULAN DAN SARAN
Hoffstein, Jeffrey & Jil Phiper & Joseph H
Kesimpulan
Silverman. (2014). An introduction to
Berdasarkan pembahasan yang telah mathematical cryptography. USA:
dilakukan, diperoleh kesimpulan sebagai Springer.
berikut:
Husodo, A. Y. (2010). Penerapan metode
1. Pembentukan kunci publik dan kunci digital signature dalam legsalisasi
privat diawali dengan memilih dua ijazah dan transkrip nilai mahasiswa.
bilangan prima yang berbeda, misal Makalah, Seminar Kriptografi, yang
Kemudian mengalikan keduanya diselenggarakan oleh STEI Institut
misal . Setelah itu memilih Teknologi Bandung, tanggal 17 Mei
bilangan positif, misal , yang kurang dari 2010. Bandung: Institut Teknologi
dan saling prima dengan . Bandung.
Langkah selanjutnya adalah mencari
yang memenuhi ( ) Isnaini, Herdita F. (2016). Penerapan tanda
Kunci publiknya adalah sedangkan tangan schnorr pada pembuatan tanda
kunci privatnya adalah tangan digital. Skripsi. Fakultas
9 Tanda Tangan Digital (Naji Maruf I, Karyati)