Simplified DES atau S-DES adalah kriptografi yang di desain untuk tujuan edukasi, untuk membantu siswa/mahasiswa mempelajari tentang teknik kriptografi modern. S-DES mempunyai properti dan struktur yang sama seperti DES namun telah disederhanakan sehingga lebih mudah untuk melakukan perhitungan enkripsi dan dekripsi menggunakan pensil dan buku. Setelah mempelajari S-DES maka kita akan mempunyai bayangan yang mudah terhadap kriptografi DES dan block cipher yang lainnya.
![]() |
Blok Diagram S-DES |
DES sendiri adalah sebuah algoritma enkripsi blok dengan kunci simetrik dengan ukuran blok 64-bit dan ukuran kunci 56-bit. DES untuk saat ini sudah dianggap tidak aman lagi. Penyebab utamanya adalah ukuran kuncinya yang sangat pendek (56-bit). DES mempunyai potensi kelemahan terhadap exhaustive key search attack/brute force attack karena panjang kunci yang relatif pendek (hanya 56-bit). Sejak beberapa tahun yang lalu DES telah digantikan oleh Advanced Encryption Standard (AES).
SIMPLIFIED DES (S-DES)
- Block input (plaintext) : 8-bit
- Block output (ciphertext) : 8-bit
- Panjang Kunci (Key) : 10-bit
- Round key di-generate dengan permutasi dan left shift
- Enkripsi : Initial Permutation (IP), Round Function (\(f_{K}\)), Switch Half (SW)
- Dekripsi : sama dengan enkripsi hanya urutan memasukkan Round Key dibalik
Algoritma S-DES menggunakan 5 (lima) buah fungsi : Initial Permutation (IP), Fungsi Kompleks - \(f_{K}\) (Operasi Ekpand/Permutasi, Xor, Substitusi), Switch (SW), dan Invers Initial Permutation (\(IP^{-1}\)).
OPERASI-OPERASI PADA S-DES.
1. OPERASI PEMBANGKITAN KUNCI
![]() |
Blok Diagram Key Generation S-DES |
a. P10 (Permutasi)
Input : 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
Output : 3, 5, 2, 7, 4, 10, 1, 9, 8, 6
b. LS-1 (Left Shift 1 Posisi)
Input : 1, 2, 3, 4, 5
Output : 2, 3, 4, 5, 1
c. P8 (Pemilihan dan Permutasi)
Input : 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
Output : 6, 3, 7, 4, 8, 5, 10, 9
d. LS-2 (Left Shift 2 Posisi)
Input : 1, 2, 3, 4, 5
Output : 3, 4, 5, 1, 2
2. OPERASI ENKRIPSI
Input : 1, 2, 3, 4, 5, 6, 7, 8
Output : 2, 6, 3, 1, 4, 8, 5, 7
b. E/P (Expand dan Permutate)
Input : 1, 2, 3, 4
Output : 4, 1, 2, 3, 2, 3, 4, 1
c. XOR (\(E/P\oplus K_{1}\))
d. S-Box (Substitution Box)
Input : 4-bit (\(bit_{1}, bit_{2}, bit_{3}, bit_{4}\))
\(bit_{1}, bit_{4}\) untuk menentukan baris
\(bit_{2}, bit_{3}\) untuk menentukan kolom
Output : 2-bit (diambil dari matriks substitusi yg baris-kolomnya terpilih).
e. P4 (Permutasi)
Input : 1, 2, 3, 4
Output : 2, 4, 3, 1
f. XOR (Output IP-Left 4 bit XOR Output P4)
g. SW (Switch antara Output XOR dengan Output IP-Right)
h. \(IP^{-1}\) (Invers Initial Permutation)
Input : 1, 2, 3, 4, 5, 6, 7, 8
h. \(IP^{-1}\) (Invers Initial Permutation)
Input : 1, 2, 3, 4, 5, 6, 7, 8
Output : 4, 1, 3, 5, 7, 2, 8, 6
3. OPERASI DESKRIPSI
- Merupakan kebalikan dari Operasi Enkripsi di atas, dengan menggunakan kunci yang sama hanya urutan memasukkan kunci dibalik.
- Enkripsi.
- Dekripsi.
Kita bandingkan hasilnya dengan Simplified DES dari Library Sage sebagai berikut :
Berikut cara mencari Invers Permutasi dengan library Sage:
PERBANDINGAN S-DES DAN DES
No | S-DES | DES |
---|---|---|
1 | 8-bits block plaintext | 64-bits block plaintext |
2 | 10-bits key | 56-bits key |
3 | 2 x 8-bits round key | 16 x 48-bits round key |
4 | IP 8-bits | IP 64-bits |
5 | F operate on 4-bits | F operate on 32-bits |
6 | 2 S-Boxes | 8 S-Boxes |
7 | 2 rounds | 16 rounds |
8 | \(C=IP^{-1}(fK_{2}(SW(fK_{1}(IP(P)))))\) | \(C=IP^{-1}(fK_{16}(SW(fK_{15}(SW(...(fK_{1}(IP(P))))))))\) |
keep going...good job
ReplyDelete