• Tidak ada hasil yang ditemukan

Kriptografi. Kuliah 4 Computer Security. Kriptografi Terminology Secret-Key Encryption Public-Key Encryption

N/A
N/A
Protected

Academic year: 2021

Membagikan "Kriptografi. Kuliah 4 Computer Security. Kriptografi Terminology Secret-Key Encryption Public-Key Encryption"

Copied!
37
0
0

Teks penuh

(1)

Kriptografi

K

uliah 4

Computer Security

n Kriptografi n Terminology n Secret-Key Encryption n Public-Key Encryption

(2)

Direkomendasi u/ membaca

n Beberapa sumber a.l :

¨ U.S. Senate hearings on Internet Security: B. Schenier

http://www.senate.gov/~commerce/hearings/071601Schneier.pdf

¨ Crypto-Gram Newsletters http://www.counterpane.com/crypto-gram.html

¨ Security Focus Online, cryptanalysis tools

(3)

Software Kriptografi

n

Crypt pembanding :

http://wombat.doc.ic.ac.uk/foldoc/foldoc.cg

i?Crypt+Breakers+Workbench

n

PGP,

http://web.mit.edu/network/pgp.html

n

Crypto dan Security

http://www.programmersheaven.com/zone

16/cat731/index.htm

(4)

Amankah komunikasi kita?

Sender

Pengintai/ Penyadap

Recipient

Tidak ada jaminan

jalur komunikasi aman

(5)

Cryptographic Protocols

§§ Messages should be transmitted to destinationMessages should be transmitted to destination

§§ Only the recipient should see itOnly the recipient should see it

§§ Only the recipient should get itOnly the recipient should get it

§§ Proof of the sender’s identityProof of the sender’s identity

§§ Message shouldn’t be corrupted in transitMessage shouldn’t be corrupted in transit

(6)

Terminologi

n

Cryptography adalah “crypto” yaitu

rahasia dan “graphy” adalah tulisan

n

tulisan yang bersifat rahasia

n

sbg ilmu dan seni untuk menjaga pesan

agar tetap aman

n

Proses dalam Crypto : Enkripsi dan

Dekripsi

(7)

Terminologi

§

Plaintext (cleartext): pesan dalam format asli / mudah dipahami

§

Ciphertext (cyphertext): pesan yg sudah dienkripsikan

§

Encryption: transformasi pesan (plaintext) ke kode yg tidak dapat(sulit) dimengerti

§

Cipher: algoritma kriptografi. Fungsi matematik yg digunakan untuk meng-enkripsi dan

(8)

Lanjt

§

Decryption (decode) : mengubah ciphertext menjadi

pesan asli. Proses Encryption dan Decryption butuh key yang sesuai hasil dari cipher

§

Cryptanalysis (Code breaking): kegiatan untuk

mengubah ciphertext menjadi pesan aslinya tanpa

mengetahui kunci yang sesuai. Dengan cara coba-coba (trial and error).

§

Cryptology: Ilmu yang mempelajari crypthography dan

(9)

Enkripsi dan Dekripsi

Enkripsi Dekripsi

(10)

Kriptosistem Konvensional

(Kunci simetrik )

Enkripsi Dekripsi

Plaintext Ciphertext Plaintext

Kunci

Pengirim Penerima

Ciphertext=E(K,M) Message =D(K,C)

Kunci perlu

(11)

Kriptosistem

Public Key

Enskripsi Dekripsi

Plaintext Ciphertext Plaintext

Pengirim Penerima

C=E(K

pub

,M)

M=D(K

priv

,C)

Kunci umum (Kpub)

(dari penerima)

Kunci private

(Kpriv)

Kpub dapat dilihat / diketahui siapa saja

(12)

Kripanalisis

Tujuan kripanalisis

¨Mengungkap/memecahkan pesan

¨Mengungkap/memecahkan kunci

¨Memecahkan / mencari celah algoritma kriptografi

¨Mengungkap unjuk kerja algoritma kriptografi

¨Pembandingan suatu algoritma kriptografi dgn algoritma krisptografi lain

(13)

Breakable vs Practically breakable

n Unconditionally secure: impossible to

decrypt. No amount of ciphertext will enable a cryptanalyst to obtain the plaintext

n Computationally secure: an algorithm that is

not breakable in practice based on worst case scenario

n Breakable: all algorithms (except one-time pad) are theoretically breakable

(14)

What makes a good cryptosystem?

§

A good cryptosystem is one whose security

does not depend upon the secrecy of the algorithm.

§

From Bruce Schneier:

§

“Good cryptographers rely on peer review to separate the good algorithms from the bad.''

(15)

Kriptosistem Konvensional

(Kunci simetrik )

Enkripsi Dekripsi

Plaintext Ciphertext Plaintext

Kunci

Pengirim Penerima

Ciphertext=E(K,M)

(16)

Secret Key Cryptosystem Vulnerabilities (1)

Passive Attacker (Eavesdropper)

nObtain and/or guess key and cryptosystem

use these to decrypt messages

nCapture text in transit and try a

(17)

Active Attacker

nBreak communication channel (denial of

service)

nObtain and/or guess key and cryptosystem

and use these to send fake messages

(18)

Kelemahan yg melekat pd

Kriptografi kunci simetrik

§ Pendistribusian Kunci harus dilakukan secara aman (terlebih jika kelompok secara geografi jauh atau satu sama lain tidak kenal)

§ Dibutuhkan kunci untuk setiap pasangan user

§ n users membutuhkan n*(n-1)/2 kunci

§ Jika kunci (dan kriptosistem) is compromised, the

adversary will be able to decrypt all traffic and produce fake messages

(19)

Teknik Enkripsi dasar

n Substitution / substitusi : suatu karakter diganti dgn karakter lain

n Permutation / Transposition : penukaran posisi karakter dalam plaintext

(20)

Caesar cipher

n

C=E(K,M), e.g., C=(M+n) mod 26

plaintext

:

A B C D E …

ciphertext

:

A B C D E F …

e.g.,

M=CAB C =FDE

n

Kelebihan

: mudah diimplementasikan

(21)

Security Tradeoff

COST

Security Functionality

(22)

Kasus Public Key

ALGORITMA RSA

Pertemuan ke 5

Mata Kuliah : Security Komputer

Teknik Informatika UAD

(23)

Asal Mula

• tahun 70-an Whitfield Diffie dan Martin Hellman menemukan teknik enkripsi

asimetrik yang merevolusi dunia kriptografi • tahun 1977 tiga orang peneliti, yaitu R.L.

Rivest, A. Shamir, dan L. Adleman, menemukan RSA

(24)

Apa Itu RSA ?

• Merupakan salah satu teknik kripto, dimana kunci untuk meng-enkrip dan untuk –men-dekrip berbeda

• Contoh metode lain : ElGamal, Rabin, Elliptic Curve Cryptosistem (ECC), Diffie-Helman, LUC

(25)

Apa itu RSA ?

• Orang yang mempunyai kunci publik dpt

meng-enkripsi tapi yang dapat men-dekripsi cuma yang th kunci privat

• Kuci publik dpt dimiliki oleh sembarang

orang,tapi kunci privat cuma orang tertentu atau bahkan hanya seorang.

(26)

Dasarnya?

• Algoritma ini dibuat berdasarkan fakta

bahwa dalam perhitungan dengan

komputer, untuk menemukan suatu

bilangan prima yang besar sangat mudah,

namun untuk mencari faktor dari perkalian

dua bilangan prima yang besar sangat

(27)

Prosesnya ?

Penerima Pengirim

Menerima kunci Publik

Mendekripsi Cipherteks dengan kunci provat Mengirimkan kunci Publik

Mengirimkan cipherteks

Membangkitkan kunci publik dan kunci privat

Meng-enkrispi Plaintek dengan kunci publik

(28)

Algoritmanya?

Proses enkripsi : C = Me mod n Proses dekripsi : M = Cd mod n

Dimana :

M : bilangan integer yang merepresentasikan pesan

C : bilangan integer yang merepresentasikan pesan tersandi e : kunci enkripsi (publik)

d : kunci dekripsi (pribadi) n : modulus (publik)

Bilangan e dan n adalah kunci publik yg dapat diketahui umum

(29)

M dan C berupa Integer ?

• Bila seorang pengguna A ingin mengirimkan pesan rahasia ke seorang pengguna B yang memiliki suatu sistem kriptografi RSA, langkah pertama yang harus dilakukan oleh pengguna A adalah merepresentasikan pesannya (yang

biasanya berupa teks) dalam bentuk deretan bilangan integer nonnegatif dalam suatu basis tertentu. Konversi pesan teks ke bentuk deretan bilangan integer ini dapat dilakukan

menggunakan berbagai teknik, pada umumnya adalah standar ASCII 8-bit atau yang lainnya

(30)

Menghitung Nilai

e, d,

dan

n

:

1. ambil secara random dua bilangan prima p dan q yang besar dan berbeda, namun ukuran keduanya (jumlah digitnya

dalam basis bilangan yang dipergunakan) haruslah sama. 2. Hitung modulus n dan fungsi Euler’s Totient ф(n) :

3. n = p.q ,

4. Ф(n) = (p-1)(q-1)

5. Pilih suatu bilangan integer e dimana :

6. 1 < e < ф(n) dan gcd (e, ф(n)) = 1

7. Hitung nilai integer d dimana 1 < d < ф(n) sedemikian hingga :

8. d = e-1 mod ф(n) atau e.d = 1 (mod ф (n))

9. dengan menggunakan algoritma Euclidean yang diperluas

10.Public-key dari sistem ini adalah n dan e, sedangkan private-key-nya adalah d

(31)

Kondisi Enkripsi

Ada kondisi yang harus dipenuhi dalam

proses Enkripsi : (C = M

e

mod n )

• Bilangan

e

harus lebih kecil dari

n

,

demikian juga bilangan

M

harus lebih kecil

dari

n

• Bilangan

M

harus lebih kecil dari

n

untuk

menjamin terjadinya trasformasi satu-satu

dengan

domain

dan

range

yang identik

(32)

Verifikasi ?

Setelah menerima pesan tersandi C, penerima Cipherteks kemudian mendapatkan kembali pesan M semuila

dengan melakukan penghitungan :

M’ = Cd mod n

Proses dekripsi ini dapat diverifikasi sebagia berikut :

M’ = (Me mod n)d mod n

M’ = Med mod n

Karena e.d = k. Ф(n) +1 untuk suatu integer k tertentu : • M’ = Mk(Ф(n) +1) mod n

M’ = (M Ф(n))k. M mod n

(33)

Contoh

• Membuat 2 bilangan prima lebar p dan q, dimana p ≠ q. Misalnya p = 17 dan q = 11

• Hitung n = pq = 17 x 11 = 187

• Hitung ф(n) = (p - 1)(q - 1) = (17-1)x(11-1) = 16 x 10 = 160 • Menentukan bilangan terkecil e yang merupakan coprime

ф(n) = 160, dengan syarat gcd (e, ф(n)) = 1, dimana 1 < e < ф(n), misalnya e = 7

• Menghitung d = e-1 mod ф(n) dimana d * 7 = 1 mod 160 dan d < 160. Harga yang benar adalah d = 23 karena 23 x 7 = 161 = 1 x 160 + 1, d dapat dihitung menggunakan euclid’s algorithm

• Dari hasil perhitungan diatas didapatkan bahwa kunci publik (KU = {7, 187}), dimana e = 7 dan modulus n =187

• Sedangkan kunci privat (KR = {23, 187}), dimana d = 23 dan n =187.

(34)

Contoh

• Akan dienkripsikan planteks huruf “X”

• Maka huruf ini kita konversikan lebih dulu

ke suatu nilai integer, misalnya kode

(35)

• Sebagai contoh yang menunjukkan

penggunaan kunci ini pada pemasukan

plaintext

untuk

M

= 88

88 7 mod 187 = 11 11 23 mod 187 = 88 11 88 88 Plaintext Ciphertex t Plaintext Encryption Decryption KU = 7 , 187 KR = 23, 187

(36)

Enkripsinya ?

• Untuk enkripsi, dapat dihitung dengan syarat

plaintext M < n, dan

ciphertext C = Me (mod n), dimana C = 887 mod

187.

• 887 mod 187 = ((884 mod 187) x (882 mod 187) x

(881 mod 187)) mod 187 • 881 mod 187 = 88

• 882 mod 187 = 7744 mod 187 = 77

• 884 mod 187 = 59.969.536 mod 187 = 132 • 887 mod 187 = (88 x 77 x 132) mod 187 =

(37)

Dekripsinya?

• Dekripsi dapat dihitung dengan ciphertext C, dan

plaintext M = Cd (mod n), dimana M = 1123 mod 187

• 1123 mod 187 = ((111 mod 187) x (112 mod 187) x (114

mod 187) x

• (118 mod 187) x (118 mod 187)) mod 187

• 111 mod 187 = 11 • 112 mod 187 = 121 • 114 mod 187 = 14.641 mod 187 = 55 • 118 mod 187 = 214.358.881 mod 187 = 33 • 1123 mod 187 = (11 x 121 x 55 x 33 x 33) mod 187 • = 79.720.245 mod 187 = 88

Referensi

Dokumen terkait

Tujuan dari penelitian ini adalah untuk mengetahui pengaruh motivasi, persepsi, dan sikap konsumen perusahaan terhadap keputusan pembelian produk Rajawali Nusindo

Dari kaca mata pengelolaan sumber daya manusia yang dilakukan oleh organisasi, motivasi menjadi penting artinya karena dengan motivasi diharapkan setiap individu karyawan mau

yang mana berdasarkan uraian Tergugat 2 di atas, Pengadilan Negeri Cianjur tidak berwenang mengadili sengketa dengan perbankan syariah sebagaimana dimaksud dalam

hukum antara dokter dengan pasien dalam pelayanan medis secara professional.. didasarkan kompetensi yang sesuai dengan keahlian dan ketrampilan

Suku bangsa adalah golongan sosial yang khusus bersifat askripit (ada sejak lahir) yang sama coraknya dengan golongan umur dan jenis kelamin

Jadi dapat di simpulkan, bahwa terdapat pengaruh penyuluhan kesehatan terhadap pengetahuan tentang pijat bayi pada ibu yang mempunyai anak usia 0-12 bulan di

Berdasarkan hasil penelitian dan pembahasan yang telah dilakukan, maka dapat disimpulkan bahwa gaya kepemimpinan dan ketidakapastian lingkungan memiliki pengaruh terhadap