Senin, 16 Mei 2011

Desain dan Analisis Keamanan Jaringan Pertemuan 4.4

Vigenere Cipher 

Vigenere Cipher adalah suatu algoritma kriptografi klasik yang ditemukan oleh Giovan Battista Bellaso. Beliau menuliskan metodenya tersebut pada bukunya yang berjudul La Cifra del. Sig. Giovan Battista Bellaso pada tahun 1553. Nama vigenere sendiri diambil dari seorang yang bernama Blaise de Vigenere. Nama vigenere diambil sebagai nama algoritma ini karena beliau menemukan kunci yang lebih kuat lagi untuk algoritma ini dengan metode autokey cipher meskipun algoritma dasarnya telah ditemukan lebih dahulu oleh Giovan Battista Bellaso.

Algoritma ini menjadi terkenal karenacukup sulit dipecahkan. Matematikawan Charles Lutwidge Dodgson menyatakan bahwa algoritma ini tidak terpecahkan. Pada tahun 1917, ilmuwan Amerika menyebutkan bahwa Vigenere cipheradalah sesuatu yang tidak mungkin untukditranslasikan. Namun hal ini terbantahkan sejak Kasiski berhasil memecahkan algoritma pada abad ke-19. Pada dasarnya Vigenere Cipher serupadengan Caesar Cipher, perbedaannya adalah pada Vigenere Cipher setiap huruf pesan aslinya digeser sebanyak satu huruf pada kuncinya sedangkan pada Caesar Cipher setiap huruf pesannya digeser sebanyak 1 huruf yang sama.
Algoritma Vigenere Cipher ini menggunakan bujursangkar Vigenere untuk melakukan enkripsi. Setiap baris di dalam bujursangkar menyatakan huruf-huruf ciphertext yang diperoleh dengan Caesar cipher. Untuk lebih jelasnya perhatikan gambar 2 di bawah ini. Deretan huruf kuning mendatar merepresentasikan plaintext, sedangkan deretan huruf hijau menurun merepresentasikan kunci.

Vigenere chiper merupakan salah satu algoritma kriptografi klasik untuk menyandikan suatu plaintext dengan menggunakan teknik substitusi.Vigenere cipher pada dasarnya cukup rumit untuk dipecahkan. Meskipun begitu, Vigenere cipher tetap memiliki kelemahan. Salah satunya adalah dapat diketahui panjang kuncinya dengan menggunakan metode kasiski. Hal ini disebabkan karena umumnya terdapat frasa yang berulang-ulang pada ciphertext yang dihasilkan.

Enkripsi : Ci= (Pi+Ki) mod 26
Deskripsi : Pi= (Ci+Ki) mod 26

Untuk menyandikan pesan, digunakan sebuah pesan alphabetis yg di urut, dan di geser 1 shift untuk alphabet yg selanjut nya.

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
B C D E F G H I J K L M N O P Q R S T U V W X Y Z A
C D E F G H I J K L M N O P Q R S T U V W X Y Z A B
Dst..

1. Contoh penyelesaian vigenere chiper sederhana:

Plainteks : azizul hakim prabowo
Key : inform atika informa
Maka, akan di dapat kan chiperteks :
imnokx atssm xefpfio

2. Penyelesaian vigenere chiper menggunakan pembangkit kunci euler

Plainteks : KILL KING TONIGHT OR DIE
Key :  BUDI

e = 2.71828182845904523536028747135266249775724709369995957496696762772407……

ambil banyak digit sesuai dengan panjang plainteks (18)
Ubah key menjadi angka, 1 20 3 8
setelah itu kalikan dengan bilangan euler
12038 x 27182818284590452353 = 327226766509899865425414
Pisahkan 3 sesuai banyak nya palinteks 3 27 2 26 76 6 50 98 9 98 65 4 25 41 4
Kemudian ubah bentuk menggunakan mod 26 = D B C CG Y G FA U J JI N E CF P E

Akhir :
Plainteks : KILL KING TONIGHT OR DIE
Key : DBCC GYGF AUJJINE CF PED
Chiperteks : NJNN QGTL TIWROUX QW SMH

Desain dan Analisis Keamanan Jaringan Pertemuan 4

Algoritma Kriptografi Klasik
Algoritma kriptografi klasik:
1. Cipher Substitusi (Substitution Ciphers)
2.Cipher Transposisi (Transposition Ciphers)
Cipher Substitusi
Contoh: Caesar Cipher
Tiap huruf alfabet digeser 3 huruf ke kanan
pi : A B C D E F G H I J K L M N O P Q R S T U V W X
Y Z
ci : D E F G H I J K L M N O P Q R S T U V W X Y Z A
B C
Contoh:
Plainteks: AWASI ASTERIX DAN TEMANNYA OBELIX
Cipherteks: DZDVL DVWHULA GDQ WHPDQQBA REHOLA
Kelemahan:
Caesar cipher mudah dipecahkan dengan
exhaustive key search karena jumlah kuncinya
sangat sedikit (hanya ada 26 kunci).
Caesar chiper termasuk chiper abjad tunggal
Contoh: kriptogram XMZVH
PHHW PH DIWHU WKH WRJD SDUWB
KEY
1 oggv og chvgt vjg vqic rctva
2 nffu nf bgufs uif uphb qbsuz
3 meet me after the toga party
4 Ldds ld zesdq sgd snfz ozqsx
5 kccr kc ydrcp rfc rmey nyprw
6 …
21 ummb um inbmz bpm bwoi xizbg
22 tlla tl hmaly aol avnh whyaf
23 skkz sk glzkx znk zumg vgxze
24 rjjy rj fkyjw ymj ytlf ufwyd
25 qiix qi ejxiv xli xske tevxc
Cipher abjad-tunggal
Satu huruf di plainteks diganti dengan satu huruf
yang bersesuaian.
Jumlah kemungkinan susunan huruf-huruf
cipherteks yang dapat dibuat adalah
sebanyak
26! = 403.291.461.126.605.635.584.000.000
Cipher abjad-tunggal
Jumlah kemungkinan kunci = 26!
Tidak dapat menyembunyikan hubungan
antara plainteks dengan cipherteks.
Huruf yang sama dienkripsi menjadi huruf
cipherteks yang sama
Huruf yang sering muncul di dalam palinteks,
sering muncul pula di dalam cipherteksnya.
Oleh karena itu, cipherteks dapat didekripsi tanpa
mengetahui kunci (ciphertext-only attack)
Metode yang digunakan:
1. Terkaan
2. Statistik (analisis frekuensi)
Informasi yang dibutuhkan:
1. Mengetahui bahasa yang digunakan untuk plainteks
2. Konteks plainteks
Cipher abjad-majemuk (Polyalpabetic
substitution cipher )
3. Cipher abjad-majemuk (Polyalpabetic substitution
cipher )
Cipher abjad-tunggal: satu kunci untuk semua huruf
palinteks
Cipher substitusi-ganda: setiap huruf menggunakan
kunci berbeda.
Cipher abjad-majemuk dibuat dari sejumlah cipher abjadtunggal,
masing-masing dengan kunci yang berbeda.
Kebanyakan cipher abjad-majemuk adalah cipher
substitusi periodik yang didasarkan pada periode m.
• Plainteks:
P = p1p2 … pmpm+1 … p2m …
• Cipherteks:
Ek(P) = f1(p1) f2(p2) … fm(pm) fm+1(pm+1) … f2m(p2m) …
• Untuk m = 1, cipher-nya ekivalen dengan cipher abjadtunggal.
Contoh cipher substitusi periodik adalah cipher Vigenere
Kunci: K = k1k2 … km
ki untuk 1 i m menyatakan jumlah pergeseran pada huruf ke-i.
Karakter cipherteks: ci(p) = (p + ki) mod 26 (*)
Misalkan periode m = 20, maka 20 karakter pertama dienkripsi
dengan persamaan (*), setiap karakter ke-i menggunakan kunci ki.
Untuk 20 karakter berikutnya, kembali menggunakan pola enkripsi
yang sama.
Contoh: (spasi dibuang)
P : KRIPTOGRAFIKLASIKDENGANCIPHERALFABETMAJEMUK
K : LAMPIONLAMPIONLAMPIONLAMPIONLAMPIONLAMPIONL
C : VR...
Perhitungan:
(K + L) mod 26 = (10 + 11) mod 26 = 21 = V (R + A) mod 26 = (17 + 0) mod 26 = 17 = A dst
Contoh 2: (dengan spasi)
P: SHE SELLS SEA SHELLS BY THE SEASHORE
K: KEY KEYKE YKE YKEYKE YK EYK EYKEYKEY
C: CLC CIJVW QOE QRIJVW ZI XFO WCKWFYVC
Cipher Transposisi
Ciphereteks diperoleh dengan mengubah posisi
huruf di dalam plaintekls.
Dengan kata lain, algoritma ini melakukan
transpose terhadap rangkaian huruf di dalam
plainteks.
Nama lain untuk metode ini adalah permutasi,
karena transpose setiap karakter di dalam teks
sama dengan mempermutasikan karakterkarakter
tersebut.
Contoh: Misalkan plainteks adalah
DEPARTEMEN TEKNIK INFORMATIKA UNS
Enkripsi:
DEPART
EMENTE
KNIKIN
FORMAT
IKAUNS
Cipherteks: (baca secara vertikal)
DEKF IEMN OKPE IRAA NKMU RTIA NTEN TS
Contoh lain. Misalkan plainteks adalah
CRYPTOGRAPHY AND DATA SECURITY
Plainteks disusun menjadi 3 baris (k = 3) seperti di bawah ini:
C T A A A E I
R P O R P Y N D T S C R T
Y G H D A U Y
maka cipherteksnya adalah
CTAAAEIRPORPYNDTSCRTYGHDAUY