Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 24

Skema Tanda Tangan Digital

(Digital Signature)

OLEH:
1. ASYIFA’ FAUZIAH (15305141026)
2. NOFIATUN ARIFAH (15305141027)
3. ZIDNA TUQO A S (15305144007)
4. ELLINA VINAJAHI SYAFA (15305144009)
Tanda Tangan Digital (Digital Signature)

Secara garis besar :


Digital signature adalah sebuah skema matematis yang
secara unik mengidentifikasikan seorang pengirim,
sekaligus untuk membuktikan keaslian dari pemilik
sebuah pesan atau dokumen digital. Sehingga sebuah
digital signature yang autentik (sah), sudah cukup
menjadi alasan bagi penerima untuk percaya bahwa
sebuah pesan atau dokumen yang diterima adalah
berasal dari pengirim yang telah diketahui.
 Contoh:

Kepada Yth.
Bapak Dekan
Di Tempat

Dengan hormat.
Bersama surat ini saya ingin mengabarkan bahwa nilai skripsi mahasiswa yang bernama Faisal Saleh dengan NIM
13902021 adalah 86,5 atau dalam nilai indeks A. Sidang skripsi sudah dilakukan pada Hari Rabu Tanggal 21 Januari
20 Juli 2005.

Atas perhatian Bapak saya ucapkan terima kasih.

Bandung, 25 Juli 2005

Dosen Pembimbing Skripsi

Ir. Ahmad Agus

-----BEGIN PGP SIGNATURE-----

iQA/AwUAQnibsbPbxejK4Bb3EQJXvQCg8zN6UL0xnwBTPR5
FfWNt4uxh3AEAn2NC/G2VTUrLpcSyo2l/S/D/+rUl=pZeh

-----END PGP SIGNATURE-----

Tanda-tangan digital

3
Tanda tangan digital secara umum terdiri dari tiga
bagian (algoritma):
1. Public key Generator
2. Hash Function
3. Verification Function
Public Key Generator

Algoritma untuk menggenerate sepasang kunci publik


dan kunci privat. Kunci publik merupakan kunci yang
digunakan untuk mengenkripsi pesan atau dalam hal
ini tanda tangan yang dicantumkan, sedangkan kunci
privat digunakan untuk mendekripsi ulang tanda
tangan yang telah dienkripsi. Dengan cara ini, dapat
diketahui darimana pesan itu berasal.
Hash Function

Fungsi hash adalah fungsi yang menerima masukan


sebuah string yang panjangnya sembarang dan
menghasilkan sebuah string lain yang panjangnya tetap
untuk berapapun panjang string masukannya. Hasil
keluaran fungsi hash selanjutnya kita sebut message
digest. Fungsi hash bersifat satu arah karena kita tidak bisa
mengembalikan message digest ke string awal. Fungsi hash
dalam kriptografi dapat digunakan untuk menjaga keaslian
data dengan cara menghitung nilai hash sebuah data. Jika
data berubah, maka nilai hash-nya juga akan berubah.
Perubahan sedikit saja dalam data dapat mengakibatkan
nilai hash yang berubah drastis.
Hash Function

Fungsi hash akan menghasilkan nilai tertentu yang


unik berdasarkan data yang digunakan sebagai
masukan fungsi hash. Nilai hash ini bisa dijadikan
tanda tangan bersama dengan proses enkripsi yang
dilakukan. Sehingga tanda tangan yang dihasilkan pun
benar-benar merepresentasikan pesan yang dikirim.
Dalam kriptografi, dikenal beberapa fungsi hash
antara lain MD2, MD4, MD5, SHA-0, SHA-1,
RIPEMD, WHIRLPOOL, dan lain – lain. Salah satu
sifat yang ingin dicapai dalam sebuah fungsi hash H
adalah untuk setiap string masukan x, tidak mungkin
ada string y, x ≠ y sedemikian sehingga H(x) = H(y).
Verification Function

Algoritma untuk memverifikasi tanda tangan yang


dicantumkan. Bagian ini sebenarnya sama dengan
bagian untuk mengenkripsi tanda tangan. Karena
dengan menggunakan pasangan kunci publik dan
privat, seharusnya proses enkripsi dan dekripsi bisa
dilakukan dengan algoritma yang sama dengan
tambahan fungsi hash yang sama pula.
Skema Tanda Tangan Digital
Algoritma RSA dan Penerapannya dalam Digital
Signature

Proses Pembangkitan Kunci


1. Pilih dua buah bilangan prima sembarang yang besar,
yaitu p dan q. Nilai p dan q harus dirahasiakan.
2. Hitung n=p x q. Besaran n tidak perlu dirahasiakan.
3. Hitung m=(p-1)(q-1). Besaran m perlu dirahasiakan.
4. Dipilih e yang relatif prima terhadap m.
5. Hitung kunci privatnya yang dinamakan d sedemikian
sehingga d x e mod m = 1
Hasil algoritma yang diperoleh :
- Kunci Publik = (e,n)
- Kunci privat = (d,n)
Algoritma RSA

Proses Enkripsi :
1. Mengubah plainteks sesuai dengan format ASCII
2. Melakukan perhitungan untuk Chiperteks yaitu
𝑐𝑖 = 𝑚𝑖𝑒 𝑚𝑜𝑑 𝑛
Proses Dekripsi :
1. Melakukan perhitungan untuk Chiperteks yaitu
𝑐𝑖 = 𝑚𝑖𝑒 𝑚𝑜𝑑 𝑛
2. Mengubah Chiperteks sesuai dengan format ASCII
Contoh soal Algoritma RSA

Pesan : kita lapar sekali


Fungsi Hash : CRC32
Plainteks : 61𝑑𝑑𝑑7𝑓𝑎
Proses enkripsi :
Mengubah plainteks sesuai dengan format ASCII
= 054, 049, 100, 100, 100, 055, 102, 097
𝑝 = 11
q = 13
𝑛 = 𝑝 𝑥 𝑞 = 11 𝑥 13 = 143
𝑚 = 𝑝 − 1 𝑞 − 1 = 10 𝑥 12
𝑒 = 7
Contoh soal

𝑐1 = 0547 𝑚𝑜𝑑 143 = 76


𝑐2 = 0497 𝑚𝑜𝑑 143 = 36
𝑐3 = 1007 𝑚𝑜𝑑 143 = 100
𝑐4 = 1007 𝑚𝑜𝑑 143 = 100
𝑐5 = 1007 𝑚𝑜𝑑 143 = 100
𝑐6 = 0557 𝑚𝑜𝑑 143 = 55
𝑐7 = 1027 𝑚𝑜𝑑 143 = 119
𝑐8 = 0977 𝑚𝑜𝑑 143 = 59
Diperoleh Cipherteks = 076 036 100 100 100 055 119 050
Contoh soal

Proses Dekripsi
𝑑 𝑥 𝑒 𝑚𝑜𝑑 𝑚 = 1
103 𝑥 7 𝑚𝑜𝑑 (120) = 1
𝑐1 = 076103 𝑚𝑜𝑑 143 = 054
𝑐2 = 036103 𝑚𝑜𝑑 143 = 049
𝑐3 = 100103 𝑚𝑜𝑑 143 = 100
𝑐4 = 100103 𝑚𝑜𝑑 143 = 100
𝑐5 = 100103 𝑚𝑜𝑑 143 = 100
𝑐6 = 055103 𝑚𝑜𝑑 143 = 55
𝑐7 = 119103 𝑚𝑜𝑑 143 = 102
𝑐8 = 050103 𝑚𝑜𝑑 143 = 097
𝑚𝑑 = 61𝑑𝑑𝑑7𝑓𝑎
Algoritma El Gamal dan Penerapannya dalam
Digital Signature

Proses Pembangkitan Kunci


1. Pilih sebarang bilangan prima yang besar, yaitu p. Nilai
p tidak harus dirahasiakan.
2. Pilih bilangan acak g, dengan g<p. Nilai g tidak harus
dirahasiakan.
3. Pilih bilangan acak x, dengan 1≤ x ≤p-2. Nilai x harus
dirahasiakan
4. Hitung 𝑦 = 𝑔 𝑥 𝑚𝑜𝑑 𝑝. Besaran m perlu dirahasiakan.
Hasil algoritma yang diperoleh :
- Kunci Publik = [p, g, y]
- Kunci privat = (p, x)
Proses Enkripsi :
1. Potong plaintext menjadi blok-blok m1, m2, …, nilai setiap
blok di dalam selang [0, p – 1].
2. Mengubah nilai blok plainteks ke dalam nilai ASCII.
3. Pilih bilangan acak k, dengan syarat 1 ≤ k ≤ p – 1 sebanyak
m. Nilai k dan m harus dirahasiakan.
4. Setiap blok m dienkripsi𝑘dengan rumus sebagai berikut.
𝛾𝑖 = 𝑔𝑘 𝑖 𝑚𝑜𝑑 𝑝
𝛿𝑖 = 𝑦 𝑖 𝑚𝑖 𝑚𝑜𝑑 𝑝
5. Susun ciphertext dengan urutan 𝛾1 , 𝛿1 , 𝛾2 , 𝛿2 , … , 𝛾𝑛 , 𝛿𝑛 .
Pasangan γ dan δ adalah cipherteks untuk blok pesan m.
Hasil yang didapat dari proses enkripsi berupa pesan
rahasia (ciphertext).
Proses Dekripsi :
1. Penentuan nilai γ dan δ. Nilai γ diperoleh dari
ciphertext dengan urutan ganjil sedangkan δ
dengan urutan genap.
2. Hitung plainteks m dengan persamaan rumus
berikut.
𝑝−1−𝑥
𝑚𝑖 = 𝛿𝑖 . 𝛾𝑖 𝑚𝑜𝑑 𝑝
3. Ubah nilai m yang didapat kedalam nilai ASCII.
4. Susun plaintext dengan urutan m1,m2,…,mn.
Contoh soal

 Message : Hari ini cerah


 Fungsi Hash : CRC16
 ASCII decimal
 Carilah tanda tangan dengan menggunakan
algortima Elgamal!
Message : Hari ini cerah
Message Digest : 174b
Proses Enkripsi dengan algoritma ElGamal
Plainteks : “174b”
Nilai p=131, g=3, dan y=112
Nilai k1=63, k2=115, k3=94, k4=89
Proses Enkripsi
1. Mengubah plainteks ke dalam bentuk ASCII Plainteks : 174b menjadi ASCII :
1=049, 7=055, 4=052, b=098. Sehingga nilai pesan ASCII adalah sebagai berikut
M1=49, M2=55, M3=52, dan M4=98
𝑘
2. Menghitung 𝛾𝑖 = 𝑔 𝑖 𝑚𝑜𝑑 𝑝
𝑘
𝛾1 = 𝑔 1 𝑚𝑜𝑑 𝑝 = 363 𝑚𝑜𝑑 131 = 102
𝑘
𝛾2 = 𝑔 2 𝑚𝑜𝑑 𝑝 = 3115 𝑚𝑜𝑑 131 = 39
𝑘
𝛾3 = 𝑔 3 𝑚𝑜𝑑 𝑝 = 394 𝑚𝑜𝑑 131 = 125
𝑘
𝛾4 = 𝑔 4 𝑚𝑜𝑑 𝑝 = 389 𝑚𝑜𝑑 131 = 21
𝑘
3. Menghitung 𝛿𝑖 = 𝑦 𝑖 𝑚𝑖 𝑚𝑜𝑑 𝑝
𝑘
𝛿1 = 𝑦 1 𝑚1 𝑚𝑜𝑑 𝑝 = 11263 49 𝑚𝑜𝑑 131 = 109
𝑘
𝛿2 = 𝑦 2 𝑚2 𝑚𝑜𝑑 𝑝 = 112115 55 𝑚𝑜𝑑 131 = 117
𝑘
𝛿3 = 𝑦 3 𝑚3 𝑚𝑜𝑑 𝑝 = 11294 52 𝑚𝑜𝑑 131 = 45
𝑘
𝛿4 = 𝑦 4 𝑚4 𝑚𝑜𝑑 𝑝 = 11289 98 𝑚𝑜𝑑 131 = 87
4. Menyusun hasil perhitungan γ dan δ sehingga didapat
Chiperteks : 102, 109, 39, 117, 125, 45, 21, 87
Chiperteks : 102 109 39 117 125 45 21 87 .
Sehingga tanda tangan dari pesan adalah 102 109 39 117 125 45 21 87
Proses Dekripsi
1. Menentuan nilai γ dan δ. Dari Chiperteks : 102 109 39 117 125 45 21 87 nilai
γ diperoleh dengan urutan ganjil sedangkan δ dengan urutan genap
sehingga 𝛾1 = 102, 𝛾2 = 39, 𝛾3 = 125, dan 𝛾4 = 21 serta δ1 = 109, δ2 = 117,
δ3 = 45 dan δ4 = 87.
𝑝−1−𝑥
2. Menghitung 𝑀𝑖 = 𝛿𝑖 . 𝛾𝑖 𝑚𝑜𝑑 𝑝
𝑀1 = 𝛿1 . 𝛾1131−1−5 𝑚𝑜𝑑 131 = 109.102125 𝑚𝑜𝑑 131 = 49
𝑀2 = 𝛿2 . 𝛾2131−1−5 𝑚𝑜𝑑 131 = 117.39125 𝑚𝑜𝑑 131 = 55
𝑀3 = 𝛿3 . 𝛾3131−1−5 𝑚𝑜𝑑 131 = 45.125125 𝑚𝑜𝑑 131 = 52
𝑀4 = 𝛿4 . 𝛾4131−1−5 𝑚𝑜𝑑 131 = 87.21125 𝑚𝑜𝑑 131 = 98
3. Mengubah nilai 𝑀𝑖 yang didapat kedalam nilai ASCII, sehingga 049=1, 055=7,
052=4, 098=b.
4. Menyusun plaintext dengan urutan M1, M2, M3, M4 sehingga didapat plainteks
:174b.
5. Karena
https://www.browserling.com/tools
https://md5online.org//md5-decrypt.html
TERIMA
KASIH 

You might also like