KRIPTOGRAFI KUNCI PUBLIK (public

Download Report

Transcript KRIPTOGRAFI KUNCI PUBLIK (public

KRIPTOGRAFI KUNCI PUBLIK
(public-key cryptography)
Topik Pengamanan Jaringan
Eko Prasetyo
Teknik Informatika
Universitas Muhammadiyah Gresik
2011
Istilah
 Plaintext:
 Pesan atau data yang dapat dibaca yang dimasukkan kedalam algoritma sebagai input.
 Encryption algorithm:
 Algoritma enkripsi yang melakukan bermacam-macam transformasi pada plaintext
 Public and private keys:
 Pasangan kunci yang terpilih sehingga jika yang satu digunakan untuk enkripsi maka yang
lain digunakan untuk dekripsi.
 Ciphertext:
 Pesan yang segera dihasilkan sebagai output. Tergantung pada plaintext dan kunci.
 Untuk sebuah pesan, dua kunci yang berbeda akan menghasilkan dua ciphertext yang
berbeda.
 Decryption algorithm:
 Algoritma yang menerima cipher text dan mencocokkan kunci sehingga menghasilkan
plaintext yang asli.
Latar Belakang
 Dua masalah pada symmetric encryption:
 Distribusi kunci
 Penggunaan secara luas akan membuka peluang ketidakamanan
data yang dienkripsi.
 Contoh Asymmetric encryption: Vigenere, DES, Triple DES,
dsb.
Public-Key Cryptosystem: Secrecy
Y = E(PUb, X)
X = D(PRb,Y)
Public-Key Cryptosystem: Authentication
Algoritma RSA (Rivest-Shamir-Adleman)
 Diperkenalkan oleh: Rivest-Shamir-Adleman
 Algoritma enkripsi:
C = Me mod n
M = Cd mod n = (Me)d mod n = Med mod n
C adalah Chiphertext
M adalah Message
e and d adalah invers multiplikatif dari modulo ø(n), dimana ø(n)
adalah Euler totient function.
 Untuk p, q bilangan prima, ø(n) = (p-1)(q-1)





 e.d ≡ 1 mod ø(n)
 d ≡ e1 mod ø(n)
Skema RSA
 e adalah kunci publik
 d adalah kunci privat
 Misal, A mempunyai kunci e dan d. Kunci e dipengangnya, kunci d
diberikan ke B.
 Jika user A ingin mengirim M ke B, maka menggunakan e untuk
menghitung C dengan C = Me mod n kemudian mentransmisikan C.
 Disisi penerima ciphertext, user B mendekrip dengan kunci d untuk
menghitung M = Cd mod n
Contoh
 Pilih dua bilangan prima: p = 11, dan q = 17
 Hitung n = p.q = 17 x 11 = 187
 Hitung (n) = (p-1)(q-1) = 16 x 10 = 160
 Pilih e yang relatif prima terhadap (n) = 160 dan kurang dari (n), pilih e = 7.
 Pilih d, dengan syarat e.d ≡ 1 (mod 160), Maka nilai d yang cocok adalah 23.
 Karena 23 * 7 = 161 = 160 + 1.
 public key PU = {7,187}
 private key PR = {23,187}.
Latihan 1
 Jika p = 3, dan q = 11.
 Message = 4
 Bagaimana kunci publik dan kunci privatnya ?
 Bagaimana ciphertext dari pesan ketika orang lain ingin
mengenkripnya dengan kunci publik ?
 Buktikan hasil ciphertext tersebut benar, dengan
mendekripnya kembali menjadi plaintext
menggunakan kunci privat !
Latihan 2
 Jika p = 5, dan q = 17.
 Message = 80
 Bagaimana kunci publik dan kunci privatnya ?
 Jika pemilik kunci, ingin mengirim pesan tersebut, kunci
apa yang digunakan ? publik atau privat ?
 Jika penerima akam membuka pesan dalam ciphertext,
kunci apa yang digunakan ?