Skip to main content

Penerapan dan Penyelesaian DES

            Hai.. Pada pembahasan kali ini penulis akan membahas tentang bagaimana penerapan dari DES. Karena sebelumnya penulis sudah nge-blog tentang materi DES, jadi dalam penerapan ini jika perlu tabel maka dapat dilihat dari postingan penulis yang sebelumnya ya. Semoga bermanfaat ^^

            Dalam bagian ini akan dilakukan penerapan dari langkah-langkah algoritma DES dengan Plaintext “ENKRIPSI” serta kunci eksternal yang digunakan adalah“SURABAYA”. Berikut ini adalah langkah-langkah penyelesaiannya :



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äƒύá”.

Comments

Popular posts from this blog

Apa Itu Text Mining ?

Text mining  adalah satu langkah dari analisis teks yang dilakukan secara otomatis oleh komputer untuk menggali informasi yang berkualitas dari suatu rangkaian teks yang terangkum dalam sebuah dokumen (Han & Kamber, 2006) .   Text mining  (penggalian teks) merupakan penggalian teks data yang bersifat tekstual. Text   mining  juga merupakan bidang yang sedang berkembang dan berpotensi besar bagi dunia bisnis. Text mining bekerja menggunakan data numerik (Sungkono, 2007) . Pada tahun 1996, Dow Chemical Company memulai proses text mining dengan mengakses ratusan ribu dokumen dari berbagai sumber, termasuk internet. Tujuan mereka adalah mendapatkan pengetahuan dan pola-pola informasi yang tidak dapat ditemukan menggunakan perangkat basis data atau mesin pencarian konvensional. Dow  kemudian mampu mencari pelanggan-pelanggan baru, teknologi baru, dan mitra bisnis baru melalui text mining . Dow juga mampu mengidentifikasi tren pasar yang tidak dapat dideteksi...

Penetration Testing dengan Tools OWASP ZAP

OWASP Zed Attack Proxy (ZAP) adalah salah satu alat keamanan gratis paling populer di dunia dan dikelola secara aktif oleh tim sukarelawan internasional yang berdedikasi. OWASP ZAP dapat membantu Anda secara otomatis menemukan kerentanan keamanan dalam aplikasi web Anda saat Anda mengembangkan dan menguji aplikasi Anda. OWASP ZAP juga merupakan alat yang hebat untuk pentester berpengalaman untuk digunakan untuk pengujian keamanan manual atau audit suatu website.   Cara penggunaan aplikasi OWASP ZAP sangat mudah, berikut langkah langkah penggunaan aplikasi OWASP ZAP : 1.  Buka tampilan tools/ aplikasi OWASP ZAP 2.  Selanjutnya pilih “Yes, I want persist this session with name based on the current timestamp” -> lalu klik start 3.  Lalu pilih Automated Scan setelah itu sediakan url atau IP yang akan dilakukan pentest 4.  Masukkan alamat yang akan anda lakukan pentest, seperti gambar dibawah ini, lalu klik attack. 5.  Hasil pentest terlihat seperti gambar di...

Pengetahuan Dasar Cyber Security (Keamanan Sistem Informasi)

Haiii mina. Penulis mau update lagi nih. Ini soal Keamanan Sistem Komputer yang dibahas pada pertemuan pertama. Tapi sayangnya Penulis tidak dapat hadir dalam perkuliahan hari itu karena ada urusan dari kampus, eh sok sibuk. Hehehe.. Yuk kita kembali ke topik aja.          Keamanan Sistem Komputer merupakan sebuah upaya yang dilakukan untuk mengamankan kinerja,fungsi atau proses komputer. Keamanan komputer memberikan persyaratan terhadap komputer yang berbeda dari kebanyakan persyaratan sistem karena sering kali berbentuk pembatasan terhadap apa yang tidak boleh dilakukan komputer. Ini membuat keamanan komputer menjadi lebih menantang karena sudah cukup sulit untuk membuat program komputer melakukan segala apa yang sudah dirancang untuk dilakukan dengan benar. Persyaratan negatif juga sukar untuk dipenuhi dan membutuhkan pengujian mendalam untuk verifikasinya, yang tidak praktis bagi kebanyakan program komputer. Keamanan komputer memberikan strategi te...