Pages

Thursday, March 29, 2012

KRIPTOGRAFI - JAWABAN SOAL UTS

*Revisi jawaban no 2.b (4 april 2012 - 10.03 WIB)
*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 sibuk belajar, haha.. kali ini hanya ingin sedikit berbagi ama teman teman,beberapa jawaban dari soal UTS kriptografi yang di ajar dosen tercinta DRS. Edi Winarko, MSC., PHD kesehatan atasnya dan keluarganya selalu.

soal meliputi : Playfair , Vigenere , DES  , Knapsack algorithm & RSA
*jawaban di bawah ini dikerjakan saat lapar kalau ada kesalahan mohon bagi jawaban benarnya

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 : 


a. algoritma vigenere
-----------------------------------------------
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 : baian ke 1.3.5.7 < salah
tabel sbox 2 : baian ke 2.4.6.8 < salah
*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
----------------------------------------------
*baris dan kolom tabel di mulai dari 0 (nol)


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)

10 comments:

  1. Nomer 2b:
    6 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

    ==================================

    ReplyDelete
  2. to effan :
    makasih 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..!!

    ReplyDelete
  3. izin share blog nya ya.. :p, banyak yg perlu jawaban ini sepertinya.. :D

    ReplyDelete
  4. oke 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....

    ReplyDelete
  5. manteppppp, belum dapat materinya udah bisa ngerjain soal ujian.. ckckck.. pantes aja kau kerjaannya belajar mulu di kost.. :P

    ReplyDelete
  6. belajar dari hongkong.. kamu tu yang belajar trus..

    ReplyDelete
  7. itu yang jawaban vigenere ciphertextnya bukannya: RZLTNBNVZIASDIMT ?

    ReplyDelete
    Replies
    1. Terima kasih Nur Endah untuk koreksi kesalahannya.. salam kenal

      Delete
  8. sangat menarik artikelnya, saya juga merangkum tulisan tentang vigenere, dapat dilihat disini http://arfianhidayat.com/algoritma-kriptografi-vigenere-cipher
    Ada DEMO PROGRAM-nya juga, semoga membantu

    ReplyDelete
    Replies
    1. Iya terima kasih.. Iya sy sdh liat, mantab bro.. Sukses selalu dand gan trus berbagi ilmu

      Delete