Simulasi Enkripsi DES

Media ajar untuk melihat proses DES dari input plainteks hingga hasil akhir bit, desimal, dan heksadesimal.

Input Simulasi

Penjadwalan Kunci

1

Padding Kunci

Menambahkan atau memotong string kunci agar berukuran 64bit (8 Karakter).

Kunci awal :
Kunci setelah padding :
2

Konversi Biner

Merubah ke biner

Desimal kunci :
Bit Kunci (64 bit) :
3

Permutasi Choice - 1 (PC-1)

PC-1 dari 64 bit menjadi 56 bit menggunakan tabel PC-1

Urutan proses :
Hasil PC-1 :
4

Split Bits

Pecah bit kunci 56 menjadi dua blok berukuran 28bit (C0 dan D0)

C0 :
D0 :
5

Putaran Penjadwalan Kunci

Penjabaran proses penjadwalan kunci untuk setiap putaran, setiap putaran akan menggunakan C dan D dari putaran sebelumnya yang kemudian akan melakukan proses left shift berdasarkan putarannya, penggabungan C dan D yang kemudian dilanjutkan dengan Permutation Choice - 2 (PC-2)

Enciphering

Demo ini hanya akan mengunakan 1 blok saja untuk proses enkripsi dan dekripsi, jika plaintext kurang dari 64bit maka akan dilakukan padding, jika berlebih maka akan dipotong menjadi 64 bit saja.
1

Pre-Processing Plaintext

Melakukan padding/cutting plaintext input.

2

Konversi ke Bit

Plaintext dikonversi menjadi deretan bit.

3

Initial Permutation

Bit disusun ulang berdasarkan tabel IP DES.

4

Split Bits

Pembagian blok plainteks menjadi blok L dan R awal untuk masuk ke putaran enkripsi (feistel).

5

Feistel Round

Proses putaran feistel. Proses permutasi di setiap putaran menggunakan Expansion Permutation (E) dan Permutation Function (P) menggunakan tabel berikut :

Untuk sbox menggunakan sbox berikut :

6

Final Swap

Swapping akhir blok L dan R.

7

Final (Inverse Permutation + Output)

Tahap Akhir (Inverse Permutation + Output).

DES

Deciphering