Title: Sekuriti Digital, Teori dan Praktek
1Sekuriti Digital, Teori dan Praktek
- Algoritme-algoritme Kriptografis
- dalam Protokol Kriptografis
Bab 23
2Berbagai protokol kriptografis
- Enkripsi asimetris dengan multiple keys (K)
- secret splitting (KA)
- secret sharing (KA)
- Time stamping
- Kanal subliminal
- Undeniable digital signature
- Bit commitment (KA)
- Coin flip (KA)
- Mental poker (KA)
- Akumulator satu arah (K)
- Membuka rahasia all-or-nothing
- Key escrow (K)
- Zero knowledge protocol (K)
Blind signature (KA) Oblivious transfer Oblivious
signature Penandatanganan kontrak
simultan Pertukaran rahasia simultan Secure
election Secure multipaty computation Broadcast
anonim Digital cash (KA)
K sudah dibahas waktu kuliah A
komponen-komponen algoritmis sudah diberikan
waktu kuliah
3RSA dengan Multiple Key
- Dalam RSA, ingat kita membangkitkan acak dua
bilangan prima p,q. Hitung parameter sekuriti
npq. Kunci publik d diambil acak, lalu kunci
privat e dihitung sebagai e d-1 (mod ?(n)). - Konsep ini bisa digeneralisasi untuk membuat
multi-key - Split d (atau e) menjadi k1 dan k2, sedemikian
sehingga k1k2 d (mod ?(n)). Caranya ambil k1
acak, lalu k2dk1-1 (mod ?(n)). - Ulangi skema diatas untuk mensplit k1. Lakukan
split tsb sebanyak n-1 kali. - Setelah n kali split kita akan punya sebanyak n
bilangan memenuhi - v1v2vn 1 (mod ?(n))
- setiap vi adalah sebuah kunci, yang bisa
dipakai menurut konsep enkripsi asimetris
multi-key (Bab 3.5)
4Skema Ong-Schnorr-ShamirUntuk sistem Enkripsi
Asimetris
- Skema asli berbasiskan polinomial kwadratis.
- Pilih parameter sekuriti n dan kunci privak k
secara acak, dan keduanya harus relative prime.
Hitung h - h -k-1 mod n -(k-1)2 mod n
- h (dan n) adalah kunci publik, k kunci privat.
- Enkripsi dengan k mk (s1,s2) dimana
- s1 (m/r r)/2 mod n
- s2 (m/r - r)k/2 mod n
- r diambil acak, dengan syarat r dan n
relative prime - Dekripsi dengan h s1,s2h s12 hs22 mod n
- Perhatikan
- s12 hs22 mod n (m/r r)2/4 -(k-1)2(m/r -
r)2k2/4 mod n - (m2/r2 2m
r2)/4 - (m2/r2 - 2m r2)/4 mod n m
5Skema Ong-Schnorr-Shamir
- Hanya mengenal enkripsi dengan k tapi tidak
enkripsi dengan h (kunci publik), jadi hanya bisa
dipakai untuk tanda tangan digital. - Tidak aman. Varian yang ama bisa ditelusuri di
literatur yang dirkomendasikan di Bab 3.5.
6Kanal Subliminal dalam Ong-Schnorr-Shamir
- Alice ingin mengirimkan pesan m ke Bob tetapi
dimana publik (Warden misalnya) pesan tersebut
disamarkan sebagai m'. - Untuk membuat kanal subliminal antara A dan B,
keduanya harus menshare kunci rahasia k. Kunci
publik h boleh diketahui publik. - A Pilih pesan m' acak (dan rel. prime /d n).
Kirimkan sebagai m'k ke B - s1 (m'/m m)/2 mod n
- s2 (m'/m - m)k/2 mod n
- Warden yang kebetulan memonitor komunikasi
antara A dan B bisa merecover m' dan menguji
keasliannya. - B
- dekrip m'k untuk mendapatkan m'
- uji keaslian pesan subliminal dengan
memverifikasi - s12 - s22/k2 m' mod n
- m bisa direcover dengan cara m m'/(s1 s2k-1)
mod n
7Kanal Subliminal dalam Ong-Schnorr-Shamir
- Motivasi
- Verifikasi pesan subliminal
- s12 - s22/k2 mod n (m'/m m)2/4 (m'/m -
m)2k2/(4k2) mod n m' mod n - Recovery dr. pesan asli
- m'/(s1 s2k-1) mod n m'/((m'/m m)/2 (m'/m
- m)k/(2k)) mod n -
m'/(m'/m) mod n m mod n - Note Skema Ong-Schnorr-Shamir, as is, tidak
aman. - "Setiap skema tanda tangan digital bisa dijadikan
kanal subliminal." Caranya??
8Undeniable Signature
- A ingin memberikan info sensitif ke wartawan B
lewat internet. B minta A memberikan digital
signature-nya diatas info yang dia berikan supaya
B yakin bahwa info itu asli dari A, dan bukan
direkayasa oleh pihak ketiga. A keberatan
menandatangani karena B bisa menunjukan tanda
tangan tersebut ke atasan A, yang bisa
mengakibatkan A dipecat. - Solusi menggunakan undeniable signature (lebih
tepat disebut untransferable signature)
9Protokol Chaum untuk Undeniable Signature
- Parameter sekuriti sebuah bilangan prima p yang
cukup besar dan g(ltp) sehingga g primitif. p
dan g dipakai publik oleh sekelompok publik. - Kunci ambil x(ltp) acak, ini menjadi kunci privat
A. Kunci publik adalah gx mod p. - Menandatangani pesan m sederhana A membuat z
mx mod p dan mengirimkannya ke B. - Untuk memverifikasi tandatangan A, B butuh
protokol berikut ini (hal. Berikut)
10Verifikasi Tandatangan dalam Protokol Chaum
- 1. B membuat a dan b dengan acak (challenges),
lalu mengirimkan ke A - c za(gx)b mod p
- 2. A menghitung t x-1 mod ?(p), lalu
mengirimkan ke B -
- d ct mod p
- 3. B memverifikasi apakah
- d magb (mod p)
11Verifikasi Tandatangan dalam Protokol Chaum
- Motivasi
- d ct mod p (za(gx)b)t mod p ((mx )a(gx)b)t
mod p - (maxgbx)t mod p (magb)xt mod p
- t adalah invers x dalam mod ?(p)
- (magb)k?(p)1 mod p
- Fermat's little theorem
- (magb) mod p
- Hanya A yang bisa menjawab challenge B karena
hanya ia yang tahu x (kunci privat A) - Skrip protokol tidak bisa dipakai oleh B untuk
menunjukkan keaslian m ke pihak ketiga karena B
bisa saja membuat sendiri d difase 2 yang akan
lewat testing di fase 3 dari protokol.
12Akumulator Satu Arah
- Akumulator satu arah adalah fungsi hash dari
sekelompok data y1,y2,,yn yang tidak bergantung
pada urutan dari yi. - Buat parameter npq, produk dari dua bilangan
prima. Buat x0. - A(xi,y) xi-1y mod n
- Contoh
- A(y1,y2,y3) A(A(y1,y2),y3) (A(y1,y2))y3 mod n
- (A(A(x0,y1),y2))y3 mod n
((A(x0,y1)y2 mod n)y3 mod n - ((x0y1 mod n)y2 mod n)y3 mod
n - x0y1y2y3 mod n
- Kita lihat A(y1,y2,y3) sama sekali tidak
bergantung dari urutan yi.