assalamualaikum
haiii watzappppp kembali lagi di blog aku yang ke 6 , nahhhh kali ini kita akan bahas masalah tabel permutasi dan langkah langkah mengenkripsinya nihh menggunakan algoritma DES pastinyaa , nggak usah panjang lebar nihh langsung aja kita bahasss yahhhh
TABEL PERMUTASI ( DES ) SERTA LANGKAH LANGKAH MENGENKRIPSIKAANNYA
nahhhhh , Langkah-langkah mengenkripsi data menggunakan algoritma DES (Data Encryption System) yaitu:
Diberikan contoh:
- Plaintext(x) = COMPUTER
- Key(k) = 13 34 57 79 9B BC DF F1
Ubahlah plaintext kedalam bentuk biner
C : 01000011
O : 01001111
M : 01001101
P : 01010000
U : 01010101
T : 01010100
E : 01000101
R : 01010010
Ubahlah key kedalam bentuk biner
13 : 00010011
34 : 00110100
57 : 01010111
79 : 01111001
9B : 10011011
BC : 10111100
DF : 11011111
F1 : 11110001
Langkah Kedua :
Lakukan Initial Permutation (IP) pada bit plaintext menggunakan tabel IP berikut:
Tabel Initial Permutation(IP)
58 | 50 | 42 | 34 | 26 | 18 | 10 | 2 |
60 | 52 | 44 | 36 | 28 | 20 | 12 | 4 |
62 | 54 | 46 | 38 | 30 | 22 | 14 | 6 |
64 | 56 | 48 | 40 | 32 | 24 | 16 | 8 |
57 | 49 | 41 | 33 | 25 | 17 | 9 | 1 |
59 | 51 | 43 | 35 | 27 | 19 | 11 | 3 |
61 | 53 | 45 | 37 | 29 | 21 | 13 | 5 |
63 | 55 | 47 | 39 | 31 | 23 | 15 | 7 |
Urutan bit pada plaintext urutan ke 58 ditaruh diposisi 1,
Urutan bit pada plaintext urutan ke 50 ditaruh di posisi 2,
Urutan bit pada plaintext urutan ke 42 ditaruh di posisi 3, dst
Sehingga hasil outputnya adalah
IP(x) : 11111111 10111000 01110110 01010111 00000000 00000000 00000110 10000011
Pecah bit pada IP(x) menjadi 2 bagian yaitu:
L0 : 11111111 10111000 01110110 01010111 (tabel IP dengan warna kuning)
R0 : 00000000 00000000 00000110 10000011 (tabel IP dengan warna hijau)
Langkah Ketiga :
Generate kunci yang akan digunakanuntuk mengenkripsi plaintext dengan menggunakan tabel permutasi kompresi PC-1, pada langkah ini terjadi kompresi dengan membuang 1 bit masing-masing blok kunci dari 64 bit menjadi 56 bit.
Tabel PC-1
57 | 49 | 41 | 33 | 25 | 17 | 9 |
1 | 58 | 50 | 42 | 34 | 26 | 18 |
10 | 2 | 59 | 51 | 43 | 35 | 27 |
19 | 11 | 3 | 60 | 52 | 44 | 36 |
63 | 55 | 47 | 39 | 31 | 23 | 15 |
7 | 62 | 54 | 45 | 38 | 30 | 22 |
14 | 6 | 61 | 53 | 45 | 37 | 29 |
21 | 13 | 5 | 28 | 20 | 12 | 4 |
Dapat kita lihat pada tabel diatas, tidak terdapat urutan bit 8,16,24,32,40,48,56,64 karena telah dikompress. Berikut hasil outpunya :
CD(k) : 1111000 0110011 0010101 0101111 0101010 1011001 1001111 0001111
Pecah CD(k) menjadi dua bagian kiri dan kanan, sehingga menjadi
C0 : 1111000 0110011 0010101 0101111(tabel PC-1 warna kuning)
D0 : 0101010 1011001 1001111 0001111 (tabel PC-1 warna hijau)
Langkah Keempat :
Lakukan pergeseran kiri (Left Shift) pada C0 dan D0, sebanyak 1 atau 2 kali berdasarkan kali putaran yang ada pada tabel putaran sebagai berikut:
Tabel Left Shift
Putaran ke - i | Jumlah Pergeseran(Left Shift) |
1 | 1 |
2 | 1 |
3 | 2 |
4 | 2 |
5 | 2 |
6 | 2 |
7 | 2 |
8 | 2 |
9 | 1 |
10 | 2 |
11 | 2 |
12 | 2 |
13 | 2 |
14 | 2 |
15 | 2 |
16 | 1 |
Untuk putaran ke 1, dilakukan pegeseran 1 bit ke kiri
Untuk putaran ke 2, dilakukan pergeseran 1 bit kekiri
Untuk putaran ke 3, dilakukan pergeseran 2 bit kekiri, dst
Berikut hasil outputnya:
C0 : 1111000 0110011 0010101 0101111
D0 : 0101010 1011001 1001111 0001111
Digeser 1 bit ke kiri
C1 : 1110000 1100110 0101010 1011111
D1 : 1010101 0110011 0011110 0011110
Digeser 2 bit ke kiri
C2 : 1100001 1001100 1010101 0111111
D2 : 0101010 1100110 0111100 0111101
Digeser 2 bit ke kiri
C3 : 0000110 0110010 1010101 1111111
D3 : 0101011 0011001 1110001 1110101
Digeser 2 bit ke kiri
C4 : 0011001 1001010 1010111 1111100
D4 : 0101100 1100111 1000111 1010101
Digeser 2 bit ke kiri
C5 : 1100110 0101010 1011111 1110000
D5 : 0110011 0011110 0011110 1010101
Digeser 2 bit ke kiri
C6 : 0011001 0101010 1111111 1000011
D6 : 1001100 1111000 1111010 1010101
Digeser 2 bit ke kiri
C7 : 1100101 0101011 1111110 0001100
D7 : 0110011 1100011 1101010 1010110
Digeser 2 bit ke kiri
C8 : 0010101 0101111 1111000 0110011
D8 : 1001111 0001111 0101010 1011001
Digeser 1 bit ke kiri
C9 : 0101010 1011111 1110000 1100110
D9 : 0011110 0011110 1010101 0110011
Digeser 2 bit ke kiri
C10 : 0101010 1111111 1000011 0011001
D10 : 1111000 1111010 1010101 1001100
Digeser 2 bit ke kiri
C11 : 0101011 1111110 0001100 1100101
D11 : 1100011 1101010 1010110 0110011
Digeser 2 bit ke kiri
C12 : 0101111 1111000 0110011 0010101
D12 : 0001111 0101010 1011001 1001111
Digeser 2 bit ke kiri
C13 : 0111111 1100001 1001100 1010101
D13 : 0111101 0101010 1100110 0111100
Digeser 2 bit ke kiri
C14 : 1111111 0000110 0110010 1010101
D14 : 1110101 0101011 0011001 1110001
Digeser 2 bit ke kiri
C15 : 1111100 0011001 1001010 1010111
D15 : 1010101 0101100 1100111 1000111
Digeser 1 bit ke kiri
C16 : 1111000 0110011 0010101 0101111
D16 : 0101010 1011001 1001111 0001111
Setiap hasil putaran digabungkan kembali menjadi CiDi dan diinput kedalam tabel Permutation Compression 2 (PC-2) dan terjadi kompresi data CiDi 56 bit menjadi CiDi 48 bit.
Tabel PC-2
14 | 17 | 11 | 24 | 1 | 5 |
3 | 28 | 15 | 6 | 21 | 10 |
23 | 19 | 12 | 4 | 26 | 8 |
16 | 7 | 27 | 20 | 13 | 2 |
41 | 52 | 31 | 37 | 47 | 55 |
30 | 40 | 51 | 45 | 33 | 48 |
44 | 49 | 39 | 56 | 34 | 53 |
46 | 42 | 50 | 36 | 29 | 32 |
Berikut hasil outputnya:
C1D1 = 1110000 1100110 0101010 1011111 1010101 0110011 0011110 0011110
K1 = 000110 110000 001011 101111 111111 000111 000001 110010
C2D2 = 1100001 1001100 1010101 0111111 0101010 1100110 0111100 0111101
K2 = 011110 011010 111011 011001 110110 111100 100111 100101
C3D3 = 0000110 0110010 1010101 1111111 0101011 0011001 1110001 1110101
K3 = 010101 011111 110010 001010 010000 101100 111110 011001
C4D4 = 0011001 1001010 1010111 1111100 0101100 1100111 1000111 1010101
K4 = 011100 101010 110111 010110 110110 110011 010100 011101
C5D5 = 1100110 0101010 1011111 1110000 0110011 0011110 0011110 1010101
K5 = 011111 001110 110000 000111 111010 110101 001110 101000
C6D6 = 0011001 0101010 1111111 1000011 1001100 1111000 1111010 1010101
K6 = 011000 111010 010100 111110 010100 000111 101100 101111
C7D7 = 1100101 0101011 1111110 0001100 0110011 1100011 1101010 1010110
K7 = 111011 001000 010010 110111 111101 100001 100010 111100
C8D8 = 0010101 0101111 1111000 0110011 1001111 0001111 0101010 1011001
K8 = 111101 111000 101000 111010 110000 010011 101111 111011
C9D9 = 0101010 1011111 1110000 1100110 0011110 0011110 1010101 0110011
K9 = 111000 001101 101111 101011 111011 011110 011110 000001
C10D10 = 0101010 1111111 1000011 0011001 1111000 1111010 1010101 1001100
K10 = 101100 011111 001101 000111 101110 100100 011001 001111
C11D11 = 0101011 1111110 0001100 1100101 1100011 1101010 1010110 0110011
K11 = 001000 010101 111111 010011 110111 101101 001110 000110
C12D12 = 0101111 1111000 0110011 0010101 0001111 0101010 1011001 1001111
K12 = 011101 010111 000111 110101 100101 000110 011111 101001
C13D13 = 0111111 1100001 1001100 1010101 0111101 0101010 1100110 0111100
K13 = 100101 111100 010111 010001 111110 101011 101001 000001
C14D14 = 1111111 0000110 0110010 1010101 1110101 0101011 0011001 1110001
K14 = 010111 110100 001110 110111 111100 101110 011100 111010
C15D15 = 1111100 0011001 1001010 1010111 1010101 0101100 1100111 1000111
K15 = 101111 111001 000110 001101 001111 010011 111100 001010
C16D16 = 1111000 0110011 0010101 0101111 0101010 1011001 1001111 0001111
K16 = 110010 110011 110110 001011 000011 100001 011111 110101
nahhhh paham kan gimana tabel permutasi pada DES ini ?? sekian dulu buat hari ini byeeeeeeeee........
assalamualaikum wr wb .
Tidak ada komentar:
Posting Komentar