mengerjakan DES tidak terlepas dari tabel ASCI agar lebih mudah dipahami.
a. Pendefinisian / Pembangkitan Kunci Internal
Kunci : S U R A B A Y A
ASCII : 83 85 82 65 66 65 89 65
Bit : 01010011 01010101 01010010 01000001 01000010 01000001 01011001
01000001
Dari konversi 64 bit di atas dilakukan permutasi dengan
Matriks PC-1 (Gambar 3), sehingga didapat 56 bit kunci :
Kunci : 0000000 0111111 1100000 0000100 0001010 1000000
1001000 0000111
Setelah itu dilakukan pemisahan C0 dan D0 yang masing-masing
memilikipanjang 28 bit :
C0 D0
Kunci : 0000000 0111111 1100000 0000100 0001010 1000000 1001000 0000111
Selanjutnya
dilakukan pergeseran bit kekiri (left-shift ) dari C0 dan D0 untuk membuat
16 sub kunci (kunci internal) dengan menggunakan Tabel 1, Berikutprosesnya :
C1= 0000000 1111111 1000000 0001000 D1 = 0010101 0000001 0010000
0001110
C2= 0000001 1111111 0000000 0010000 D2 = 0101010 0000010 0100000
0011100
C3= 0000111 1111100 0000000 1000000 D3 = 0101000 0001001 0000000 1110001
C4= 0011111 1110000 0000010 0000000 D4 = 0100000 0100100 0000011
1000101
C5= 1111111 1000000 0001000 0000000 D5 = 0000001 0010000 0001110 0010101
C6= 1111110 0000000 0100000 0000011 D6 = 0000100 1000000 0111000
1010100
C7= 1111000 0000001 0000000 0001111 D7 = 0010010 0000001 1100010
1010000
C8= 1100000 0000100 0000000 0111111 D8 = 1001000 0000111 0001010 1000000
C9= 1000000 0001000 0000000 1111111 D9 = 0010000 0001110 0010101
0000001
C10= 0000000 0100000 0000011 1111110 D10 = 1000000 0111000 1010100 0000100
C11= 0000001 0000000 0001111 1111000 D11 = 0000001 1100010 1010000
0010010
C12= 0000100 0000000 0111111 1100000 D12 = 0000111 0001010 1000000
1001000
C13= 0010000 0000001 1111111 0000000 D13 = 0011100 0101010 0000010
0100000
C14= 1000000 0000111 1111100 0000000 D14 = 1110001 0101000 0001001
0000000
C15= 0000000 0011111 1110000 0000010 D15 = 1000101 0100000 0100100
0000011
C16= 0000000 0111111 1100000 0000100 D16 = 0001010 1000000 1001000
0000111
Dari
masing-masing Cn dan Dn yang telah didapat, digabungkan keduanya dandilakukan
permutasi Matriks PC-2 sesuai dengan ketentuan Gambar 4 sehinggaterbentuk kunci
internal Kn dengan panjang 48 bit, Berikut ini adalah hasilnya :
K1=101000 001001 001001 000010 001001 000110 000001 010000
K2=101100 000001 001001 010010 110000 100000 100011 000001
K3=001001 000101 001001 010000 010000 101000 011000 100001
K4=000001 100101 000101 010100 000100 110001 010100 001000
K5=000011 100100 000101 010001 010010 000001 000100 100000
K6=001011 110100 000100 101001 010000 000110 100000 101100
K7=100010 110000 000110 001001 011000 000001 100010 011000
K8=000110 010000 101010 001001 100000 010001 010000 111011
K9=001110 010000 100010 001000 111010 010100 011100 000000
K10=000100 000010 100010 001100 000110 000100 001000 000010
K11=000100 000010 110000 010100 110101 000100 000000 000100
K12=010001 000010 110000 100100 100000 100000 000010 001011
K13=110000 101010 010000 100100 101100 001011 001000 000001
K14=110010 001000 011000 100010 001100 100000 011000 100010
K15=110010 001000 001000 101010 000111 000010 100100 000010
K16=101000 001001 001010 100010 000001 000000 000110 100101
b. Enkripsi
Sebelum dilakukan enkripsi ubah plainteks dalam bentuk bit,
berikutpengubahannya :
Plainteks : E N K R I P S I
ASCII : 69 78 75 82 73 80 83 73
Bit : 01000101 01001110 01001011 01010010 01001001
01010000 01010011 01001001
Dari konversi 64 bit di atas dilakukan permutasi dengan
Matriks IP (Gambar 5),sehingga didapat 64 bit kunci :
Plainteks : 11111111 01101000 00000011 11010101 00000000
00000000 10010110 01001110
Setelah itu dilakukan pemisahan L0 dan R0 yang masing-masing
memilikipanjang 32 bit :
L0 R0
Plainteks : 11111111 01101000 00000011 11010101 00000000 00000000 10010110 01001110
Iterasi / Putaran 1
Sebelum
dilakukan ciphering dilakukan permutasi R0 32 bit dengan matriks Ekspansi (E) dan
menghasilkan R0 48 bit, berikut hasilnya :
E(R0) = 000000 000000 000000 000001 010010 101100
001001 011100
Langkah selanjutnya dilakukan operasi XOR antara E(R0) dan K1,
serta selanjutnya dilakukan substitusi S-Box dan Permutasi (P) untuk menghasilkan
feistel (f) (Lihatdi halaman Lampiran), berikut langkah operasinya :
N = 1
K1 = 101000 001001 001001 000010
001001 000110 000001 010000
E(R0) = 000000 000000 000000
000001 010010 101100 001001 011100
XOR
101000 001001 001001 000011 011011 101010 001000 001100
S1 S2 S3 S4 S5 S6 S7 S8
S(B) = 1101 1111 0011 1000 1001 1000 0100 0001
f = 0111 0101 1001 1000 1100 1000 0101 0110
R1= L0 XOR f (R0, K1)
= 1111 1111 0110 1000 0000 0011 1101 0101
0111 0101 1001 1000 1100 1000 0101 0110
XOR
_______________________________________
= 1000 1010 1111
0000 1100 1011 1000 0011
Iterasi / Putaran 2
Setelah itu dilakukan ciphering
iterasi berikutnya dengan K2 yang sebelumnyadilakukan permutasi R1 32 bit
dengan matriks Ekspansi (E) (Lihat di halamanLampiran) dan menghasilkan R1 48
bit, berikut hasilnya :
E(R1) = 110001 010101 011110
100001 011001 010111 110000 000111
Langkah selanjutnya dilakukan
operasi XOR antara
E(R1) dan K2, serta
selanjutnyadilakukan substitusi S-Box dan Permutasi (P) untuk menghasilkan
feistel (f) (Lihatdi halaman Lampiran), berikut langkah operasinya :
N = 2
L2 = R1= 1000 1010 1111 0000 1100
1011 1000 0011
K2 = 101100 000001 001001 010010
110000 100000 100011 000001
E(R1) = 110001 010101 011110
100001 011001 010111 110000 000111
XOR
___________________________________________________________
011101
010100 010111 110011 101001 110111 010011 000110
S1 S2 S3 S4 S5 S6 S7 S8
S(B) = 0011 0010 1110 0100 0001 0111 0011 1000
f = 0110 1010 0010 0001 0011 0111 0000 1110
R2 = L1 XOR f(R1, K2)
=1000 1010 1111 0000 1100 1011 1000
0011
0110 1010 0010 0001 0011 0111 0000 1110
XOR
______________________________________
= 1110 0000 1101 0001 1111
1100 1000 1101
Skip Iterasi & Hasil
Ciphering
tersebut dilakukan terus menerus hingga mencapai 16 iterasi,kemudian L16
dan R16 digabungkan dan dilakukan
permutasi akhir Matriks IP-1 (Invers Initial Permutation), berikut hasil penggabungannya
:
Cipher = 0000 1110 0010 0000 0011
1001 0110 1111 1111 0000 1100 0101 0010 1001 0110 0111
Berikut
ini adalah hasil permutasi cipherteks dengan Matriks IP-1 beserta konversi bit
cipher ke dalam ASCII dan simbol :
Bit : 00101111 01000011 01100011 01001101 10000100 10011111 10100011
10100000
ASCII : 47 67 99 77 132 159 163 160
Cipher : / C c M äƒύá
Maka hasil enkripsi plainteks ”ENKRIPSI” dengan kunci eksternal ”SURABAYA”melalui algoritma DES (Data Encryption Standard) adalah ” /CcMäƒύá”
0 komentar:
Posting Komentar