*Revisi tabel vigenere no 1.a (10 april 2012 - 19.56 WIB)
*Revisi jawaban no 2.b dan no 4.c (15 april 2012 - 15.48 WIB)
*Revisi jawaban no 1 a (2 Pebruari 2014 - 11.32 WITA)
Assalamualaikum , salam sejahtera , swastiastu..
salam berbagi..
lama juga gak update ni blog krn
soal meliputi : Playfair , Vigenere , DES , Knapsack algorithm & RSA
*jawaban di bawah ini dikerjakan saat
1.lakukan proses enkripsi terhadap teks "hide under the tree"
a. dengan key "kripto" menggunakan algoritma vigenere
b. dengan key "playfair example" menggunakan playfair chiper dengan tabel transformasi 6x6
jawab :
-----------------------------------------------
vigenere
-----------------------------------------------
key : kriptokriptokrip
plainteks : hideunderthetree
chiperteks : rzltnbnvziasdimt
-----------------------------------------------
vigenere autokey
-----------------------------------------------
key : kriptohideundert
plainteks : hideunderthetree
chiperteks : rzltnbkmuxbrwvvx
-----------------------------------------------
b. playfair chiper
Tabel transformasi 6x6
--------------------
playfair chiper
--------------------
key : playfair example
plainteks : hi |de|un|de|rt|he|tr|ex|ea|
chipertext : na|gr|vk|gr|mo|gx|om|xm|xl|
*note : untuk pair character di tambahkan caharkter lain sebagai pemisah, dan karakter a ditambahkan untuk menlengkapi jumlah karakter..
2. Soal DES
a. ceritakan cara kerja dari fungsi f pada algoritma DES
b. tentukan 8 bit output paling kanan dari subtitusi s-box jika diketahui nilai nilai berikut ini
output dari ekspansi E adalah
111110 100000 000101 010111 110010 101000 001111 110100
48bit kunci K adalah
011100 010010 110111 110000 011001 001001 011111 001100
jawab :
a . fungsi F adalah salah satu bagian dari rumus untuk mendapatkan nilai R[i] yaitu R[i] = Li-1 xor f(R[i-1] , K[i])
R[i] = nilai R / Right yang panjangnya 32bit
L[i] = nilai L / left yang panjangnya 32bit
dimana pada f(R[i-1],K[i]) = P(S(E(R[i-1]) xor K[i]))
P = permutasi
S = subtitusi
E = ekspansi
R[i] = nilai R ke i
K[i] = nilai Kunci ke i
langkah langkah pada Fungsi F
1. melakukan ekspansi nilai R[i-1] dari 32 bit menjadi 48bit yaitu dengan menambahkan 2 bit pada awal dan akhir tiap 4 bit yang dipecah yang mana 2 bit itu
bit tambahan di awal diperoleh dari bit sebelumnya misalnya 32|1.2.3.4 4|5.6.7.8 8|9.10.11.12
bit tambahan di akhir diperoleh dari bit setelahnya misalnya 1.2.3.4|5 5.6.7.8|9 9.10.11.12|13
2. melakukan operasi XOR pada 48 bit dari hasil ekspansi dengan 48 bit K[i]
3. subtitusi
membagi 48 bit menjadi 8 bagian yang mana masing masing terdiri dari 6 bit yang akan di konversi menjadi 4bit setiap bagianx dengan menggunakan sbox.
2 bit (1 bit awal dan 1 bit akhir) di jadikan penanda untuk menunjukkan baris ke berapa
4 bit ditengah di jadikan penanda untuk menunjukkan posisi kolom ke berapa
tabel sbox 1 :
tabel sbox 2 :
*ada 8 sbox untuk 48bit yang telah dibagi menjadi 8blok
isi dari tabel sbox adalah nilai yang memiliki 4 bit yang dibuat dengan man-made atau math-made yg telah teruji
4.permutasi
32bit hasil subtitusi kemudian di susun kembali berdasarkan tabel permutasi
b. diketahui
outout ekspansi : 111110 100000 000101 010111 110010 101000 001111 110100
kunci k : 011100 010010 110111 110000 011001 001001 011111 001100
hasil XOR : 100010 110010 110010 100111 101011 100001 010000 111000
maka
----------------------------------------------
6 bit sbox-7 : 010000
2 bit penanda baris : 00 = baris 0
4 bit penanda kolom : 1000 = kolom 8
tabel Sbox[7] : 3 = 0011
----------------------------------------------
6 bit sbox-8 : 111000
2 bit penanda baris : 10 = baris 2
4 bit penanda kolom : 1100 = kolom 12
tabel Sbox[8] : 15 = 1111
----------------------------------------------
3. lakukan langkah langkah berikut ini sesuai dengan algoritmaenkripsi knapsack
a. diketahui super increasing vector a' = (1,2,5,9,19,39,78,166) tentukan m dan w yg memenuhi algoritma knapsack
b. hitung vector a dan bilangan w^-1
c. lakukan enkripsi dan dekripsi untuk pesan 10010010
jawab
a. dik : vector a' = (1,2,5,9,19,39,78,166) total = 319
m = 329
w = 10
gcd(329,10) = 1
b. w^-1 = 33 -> 33*10 = 330 mod 329 = 1
vector a = w * a'[i] mod m = (10,20,50,90,190,61,122,15)
c.
enkripsi
--------------------------------------------
vec a : 10,20,50,90,190,61,122,15
data : 10010010
chipertex : 1*10 + 1*90 + 1*122 = 222
--------------------------------------------
dekripsi
--------------------------------------------
w^-1 = 33
M = 329
s = 222
S' = w' * s mod m
s' = 33 * 222 mod 329 = 88
data : 1,2,5,9,19,39,78,166
166 > 88 : 0
78 < 88 : 1
39 > 10 : 0
19 > 10 : 0
9 < 10 : 1
5 > 1 : 0
2 > 1 : 0
1 = 1 : 1
hasil 10010010
--------------------------------------------
4. lakukan langkah-langkah berikut ini untuk membuat kunci RSA. setiap langkah harus memenuhi persayaratan Algoritma RSA
a. misalkan n = 77 tentukan nilai p dan q yang sesuai
b. hitung Φ(n)
c. jika nilai d = 13 , tentukan nilai e yang valid
d. tentukan private key dan public key nya
jawab :
a. diketahui n = 77 , p dan q harus bilangan prima jadi
p = 7
q = 11
b. diketahui Φ(n) = (p-1)*(q-1)
Φ(n) = (7-1) * (11-1)
Φ(n) = 60
c. diketahui d = 13 dan e yg relatif prima dengan Φ(n)
-----------------------------------
syarat :
gcd (e , Φ(n)) =1
e < Φ(n)
-----------------------------------
dimana d = 1 + (kΦ(n) / e)
e yang valid adalah 37
d. diketahui
e : 37
n : 77
d : 13
kunci public adalah pasangan (e,n) = (37,77)
kunci private adalah pasangan (d,n) = (13,77)
Nomer 2b:
ReplyDelete6 bit sbox-7 : 001111
kenapa diambil bit dari output expansi bukan dari bit hasil xor?
==========================================
Nomer 4.
rumus menentukan e harusnya d=(1+kΦ(n))/e bukan d=1 + (kΦ(n)/e)
bisa dicek benar apa salahnya hitungan dengan rumus enkripsi:
E(m)=m^e mod n (misal m(plaintext)=3)
E(m)=3^6 mod 77
E(m)=36 => chiphertext
Dekripsi:
D(c)=c^d mod n
D(c)=36^13 mod 77
D(c)= 71 => plaintext seharusnya 3
========================================
hitunganku didapat
e=37 dengan n=77, d=13
enkripsi:
misal m=3
E=3^37 mod 77
E=31
dekripsi:
D=31^13 mod 77
D=3 => hasil sama dengan m
==================================
to effan :
ReplyDeletemakasih banyak tuk komentarnya..
no.2b bagian
----------------
6 bit sbox-7 : 001111 -> 6 bit sbox-7 : 010000
udah di edit..maaf salah ambil
no 4
-------------
saya belom cek ma hitunganku..
sementara izin saya pake jawabanmu dulu yah..
once again thanks effan..!!
izin share blog nya ya.. :p, banyak yg perlu jawaban ini sepertinya.. :D
ReplyDeleteoke effan.. silahkan.tapi semoga yg perlu n mau liat tidak asal ambil mentah2.. soalnya ni jawaban juga udah saya buat sebelm materinya di ajar bapak jadi probabilitas kesalahannya besar.hahahaha....
ReplyDeletemanteppppp, belum dapat materinya udah bisa ngerjain soal ujian.. ckckck.. pantes aja kau kerjaannya belajar mulu di kost.. :P
ReplyDeletebelajar dari hongkong.. kamu tu yang belajar trus..
ReplyDeleteitu yang jawaban vigenere ciphertextnya bukannya: RZLTNBNVZIASDIMT ?
ReplyDeleteTerima kasih Nur Endah untuk koreksi kesalahannya.. salam kenal
Deletesangat menarik artikelnya, saya juga merangkum tulisan tentang vigenere, dapat dilihat disini http://arfianhidayat.com/algoritma-kriptografi-vigenere-cipher
ReplyDeleteAda DEMO PROGRAM-nya juga, semoga membantu
Iya terima kasih.. Iya sy sdh liat, mantab bro.. Sukses selalu dand gan trus berbagi ilmu
Delete