130 likes | 382 Views
Kriptografi ( Simetry Key) Materi 6. Pemrograman Jaringan. Dosen : Eko Prasetyo Teknik Informatika UMG 2012. Istilah Penting. Plaintext : Pesan atau data yang dapat dibaca yang dimasukkan kedalam algoritma sebagai input. Encryption algorithm :
E N D
Kriptografi (Simetry Key)Materi 6 PemrogramanJaringan Dosen: EkoPrasetyo TeknikInformatika UMG 2012
IstilahPenting • Plaintext: • Pesanatau data yang dapatdibaca yang dimasukkankedalamalgoritmasebagai input. • Encryption algorithm: • Algoritmaenkripsi yang melakukanbermacam-macamsubstitusidantransformasipada plaintext • Secret Key • Kunciuntukmelakukanenkripsidandekripsi. Nilainyatidaktergantungpada plaintext maupunalgoritma. Algoritmaakanmenghasilkan output yang berbedatergantungkunci yang digunakan. Substitusidantransformasidilakukanolehalgoritmamenurutkuncinya. • Ciphertext: • Pesan yang segeradihasilkansebagai output. Tergantungpada plaintext dankunci. • Untuksebuahpesan, duakunci yang berbedaakanmenghasilkanduaciphertext yang berbeda. • Decryption algorithm: • Algoritma yang menerima cipher text danmencocokkankuncisehinggamenghasilkan plaintext yang asli.
KebutuhanEnkripsiKonvensional • Ada 2 hal yang dibutuhkandalamenkripsikonvensional: algoritma yang kokoh, kerahasiaankunci • Algoritmaenkripsi yang kokoh • Minimal, lawan yang tahualgoritmadanmempunyaiakseskesebuahchipertexttidakbisamendekripciphertextataumendapatkuncinya. • Kerahasiaankunci • Pengirimdanpenerimaharusmendapatsalinan secret key dengancara yang amandandijagakerahasiaannya.
Kriptosistem • Plaintext, X = [X1, X2, ..., XM] • Pesan, M • Kunci, K = [K1, K2, ..., KJ] • Ciphertext Y = [Y1, Y2, ..., YN] • Algoritmaakanmembentuk cipher Y, Y = E(K, X) • Algoritmaakanmengembalikan plaintext X, X = D(K, Y)
KarakteristikKriptografi • Tipeoperasi yang digunakanuntukmentransformasi plaintext keciphertext • Ada 2: substitusidantransposisi • Substitusi: setiapelemen plaintext (bit, karakter, ataukelompokkarakter) dipetakankeelemen yang lain. • Transposisi: elemen plaintext ditataulangposisinya • Tidakbolehadainformasi yang hilang (harusbisadikembalikanlagi plaintext yang asli) • Jumlahkunci yang digunakan • Simetry Key: pengirimdanpenerimamenggunakankunci yang sama (enkripsikonvensional) • Asimetry Key: pengirimdanpenenrimamenggunakankunciberbeda (enkripsikuncipublik) • Cara plaintext diproses • Block chiper: memprosessetiapblok input untukmendapatsatublokkeluaranmasing-masing • Stream chiper: memproses input secarakontinyu, menhasilkansatuelemenkeluaran
Cryptanalysis • Tujuandaripenyerangansistemenkripsiadalahuntukmendapatkankunci, kemudiandenganmudah me-recover plaintext dari cipher yang didapat. • Ada 2 pendekatandalampenyerangansistemenkripsikonvensional: • Cryptanalysis: Cryptanalytic menyerangsifatalamialgoritmadanbeberapapengetahuankarakteristikumum plaintext ataubahkanbeberapasampelpasangan plaintext-chipertext • Brute-force attack: Penyerangmencobasetiapkunci yang mungkinpadapotonganchipertextsampaimendapatterjemahan plaintext yang dapatdipahami. Rata-rata, separuhdarisemuakunci yang mungkinharusdicobauntukmencapaikeberhasilan. • TeknikSubstitusi: Caesar cipher, Monoalphabetic Ciphers, Hill Cipher, Polyalphabetic Ciphers, dsb. • TeknikTransposisi.
Caesar Cipher • Metodesubstituasitertua, dibuatoleh Julius Caesar • Substitusidenganmenggantisetiapkarakteralfabetdengan 3 karakterdidepannyadalamurutanalfabet. • Misal: • Plain : meet me after the toga party • cipher: PHHW PH DIWHUWKHWRJDSDUWB • Polasubtitusi: • Kita bisamemberinomorekivalenuntuksetiapkaraktersebagaiberikut:
Caesar Cipher • Untuksetiaphuruf plaintext p, men-substitusihuruf cipher C: • C = E(3, p) = (p + 3) mod 26 • Pergeserantidakselalu 3, bisasembarangangka, secara general: • C = E(k, p) = (p + k) mod 26 • Dimana k diambildalam range 1 sampai 25 • Algoritmadekripsidilakukandengan formula: • p = D(k, C) = (C k) mod 26 • Ada 3 masalahketika Caesar cipher diserangdengan brute-force cryptanalysis: • Algoritmaenkripsidandekripsisudahdikenal • Hanya 25 kunci yang bisadicoba • Bahasa plaintext sudahdiketahuidanmudahdikenali • Denganasumsibahwaalgoritmadiketahui, umumnyaalgoritmaingin agar metode brute-force harusmencobakemungkinankunci yang banyak. Misal, untuk Triple DES, menggunakan 168 bit kunci, makapenyerangharusmencobakuncisebanyak 2168atau 3,7 x 1050kunci.
Vigenere Cipher • Teknikpolyalfabetik yang paling mudah • Jenis Multi Caesar Cipher yang lebihefektif • Kuncinyamenggunakanbeberapakarakterdenganpanjang K = [K1 K2 … KN] • Hanyamenggunakankarakteralfabet • Kuncidiulangterussepanjang plaintext • Dekripsidilakukandenganarahsebaliknya • Teknikenkripsiinisudahkunodanbanyakmetodeuntukpemecahankuncidanplaintextnya, sepertiKasiski, dsb. • Contoh: Menggunakankuncideceptive key: deceptivedeceptivedeceptive plaintext: wearediscoveredsaveyourself ciphertext:ZICVTWQNGRZGVTWAVZHCQYGLMGJ
TeknikTransposisi • Teknikenkripsidenganmelakukanurutanpermutasi. • Metodetermudah: menata plaintext dalamarah diagonal kemudianmembacapadaarah horizontal • Contoh: plaintext • "meet me after the toga party" • Dienkripsimenjadi: m e m a t r h t g p r y e t e f e t e o a a t • Hasil enkripsi: • MEMATRHTGPRYETEFETEOAAT
TeknikTransposisi • Metode yang lebihsulit: menata plaintext dalamarah horizontal, kemudianmembacadalamarahvertikal • Permutasiurutanpembacaankolommenjadikuncienkripsidandekripsi • Contoh, • Kemudianlakukantransposisilagiuntukmendapat cipher yang lebihaman • Untukdekripsi, lakukanproseskebalikandarienkripsi