12
February
2012

Proses Pembangkitan Kunci Internal Pada Algoritma DES

Seperti yang telah dijelaskan pada artikel sebelumnya, Kunci-kunci internal dapat dibangkitkan sebelum proses enkripsi maupun bersamaan dengan proses enkripsi.
DES yang beroperasi pada ukuran blok 64 bit, mengenkripsikan 64 bit plainteks menjadi 64 bit cipherteks dengan menggunakan 56 bit kunci internal (internal key). Kunci internal dibangkitkan dari kunci eksternal (external key) yang panjangnya 64 bit.
Sebagai Contoh…
Ditentukan  kunci  “27784483”,  masing-masing  karakter  di  konversi  ke dalam bilangan biner sehingga menjadi 00110010 00110111 00110111 00111000 00110100 00110100 00111000 00110011.
Blok kunci eksternal 64 bit

Tabel 1. Blok kunci eksternal 64 bit

Hasil konversi kemudian dikelompokkan menjadi 8 kelompok yang terdiri dari masing-masing 8 bit.
(Baris berwarna gelap hanya untuk memperjelas posisi-posisi bit pada matriks, sedangkan baris berwarna putih merupakan bit-bit kunci eksternal, sesuai Tabel 1 kolom Biner)
Delapan kelompok blok kunci eksternal

Tabel 2. Delapan kelompok blok kunci eksternal

Tiap bit ke-8 (parity bits) dari 8 byte kunci tersebut diabaikan. Oleh karena itu, hanya ada 56 bit kunci yang digunakan (effective bits). Kemudian dilakukan permutasi dengan menggunakan matriks permutasi kompresi PC-1 (Lihat Tabel (d) algoritma data encryption standard) sehingga hasilnya terlihat pada Tabel 3 dibawah. Permutasi kompresi PC-1 inilah yang mengubah posisi bit-bit pada kunci eksternal.

kunci PC-1

Tabel 3. Kunci PC-1

Dari kunci PC-1, selanjutnya, dibagi menjadi 2 bagian, atas dan bawah, yang masing-masing panjangnya 28-bit, dan masing-masing disimpan di dalam C0 dan D0.
C0 : 0000000 0000000 0011111 1111111
D0 : 1000011 1001101 1001001 0001111
Selanjutnya, kedua bagian digeser ke kiri (left shift) sepanjang satu atau dua-bit bergantung pada tiap putaran. Jumlah pergeseran pada tiap putaran ditunjukkan pada Tabel (e) di algoritma data encryption standard.

Hasil pergeseran 1 bit pada putaran pertama

Tabel 4. Hasil pergeseran 1 bit pada putaran pertama

Setelah mengalami pergeseran bit, kemudian kunci dipermutasi dengan matriks permutasi kompresi PC-2 (Lihat Tabel (f) algoritma data encryption standard) sehingga hasilnya terlihat pada Tabel  5.

Kunci K1 (PC-2)

Tabel 5. Kunci K1 (PC-2)

PC-2 Digunakan sebagai Kunci untuk putaran pertama enkripsi (K1). Karena ada 16 putaran, maka dibutuhkan kunci internal sebanyak 16 buah, yaitu K1, K2,…,K16.
Ingat kembali bagaimana proses penggunaan matriks PC-1 dan PC-2, PC-1 hanya digunakan sekali saja pada proses pembangkitan kunci, sedangkan PC-2 digunakan sebanyak 16 kali untuk menghasilkan 16 kunci internal, ilustrasi bisa di lihat pada gambar di bawah.

Proses pembangkitan Kunci Internal DES

Proses pembangkitan Kunci Internal DES

sip

ads

21 Responses here...

  1. opik says:

    UPDATE :
    saya udah coba, rubah urutan left side nya jadi
    “1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2”
    tapi saya ga nemuin jawaban atas pertanyaan saya sebelum nya mas ?
    memang nya klo kita rubah urutan, hasil nya menjadi gmn ?
    kan tetep berupa data acak ?

    trus kenapa harus pake urutan seperti di atas ?

    • hekta says:

      kringetan sebenernya saya juga belum coba hihi
      setelah urutannya di ubah, apakah cipherteks nya bisa di dekripsi kembali ?

    • opik says:

      hehehe maaf nanya yg aneh2 mas.
      sebenernya saya penasaran aja ama algoritma2 kriptografi.
      saya jg lagi pengen buat algoritma sendiri.
      tapi saya masih lom dapat jawaban atas pertanyaan2 saya.
      jadi berusaha mencari jawaban gitu ^^

    • YUNIA says:

      aku pusing puyeng

  2. Ajuz says:

    saya boleh minta soucecodenya ??

  3. yusri says:

    bener2 makasih berat gan atas pelajaran_a.
    mudah2an d’balas Tuhan dengan pahala.
    amiiiinnnn…. ^_^

  4. antrean says:

    Gini mas mo nanya kan k0 kan 56 di kompersi ke PC-2 dapat k1 = 48, tpi klo k1-48 di kompersi ke PC-2, sedangkan di tabel PC- bit-ke 33 dimnta bit ke 51,40 diminta bit ke 56, dst, tetapi jumlah k1 cma 48! gmna tuh mas!

    • hekta says:

      apakah yang anda maksudkan terjadi pada proses pembangkitan kunci ini? jika iya, maka anda harus lihat kembali secara seksama pada gambar terakhir (Proses pembangkitan Kunci Internal DES), perlu diketahui, k1 tidak digunakan untuk mendapatkan k2, jadi k1-48 tidak di kompresi ke PC-2, untuk mendapatkan kunci selanjutnya (k2, k3, … , dst) adalah dari Ci dan Di yang dipermutasi menggunakan mattriks PC-2.

    • antrean says:

      gini mas terimakasih sebelumnya dan maaf ngerepotin. masih kurang ngerti, kita misalkan c0 dan d0 yang masing-masing 28 digabung baru dipermutasi dengan PC-2 dari permtuasi PC-2 keluaran 48 bit di bagi lagi menjadi dua bagian berarti menjadi 24 c1 dan 24 d1 jadi jumlahnya 48. atau apa c1 dan d1 didapat dari c0 dan d0 setelah mengalami pergeseran dan bukan setelah / sebelum Permutasi dengan PC-2?

    • hekta says:

      Hasil dari permutasi dg PC-2 tidak dibagi menjadi C1 dan D1. Jadi C1 dan D1 diperoleh dari C0 dan D0 setelah mengalami pergeseran dan sebelum Permutasi dengan PC-2.

    • antrean says:

      Ok. Terimakasih banyak om.. maaf dah ngerepotin ! hehehehe

    • hekta says:

      sip smoga penjelasan saya dapat dipahami….

  5. febri says:

    mau tnya gan …
    dalam proses enkripsi kriptografi DES bisa gak untuk keamanan data misalnya data yg yang akan kita amankan itu data proposal ?

    trus kalau program kriptografi DES ada gak ?

    makasih

  6. anas says:

    mas maksud bit dlam suatu des thu ap mas dn gmna crax mas…??

  7. vhina says:

    ada contoh program nya ga mas buat ngamanin data,menggunakan metode DES ini????

  8. What a material of un-ambiguity and preserveness of precious knowledge
    about unpredicted feelings.

  9. nunung says:

    mas,, mohon penjelasan proses data di permutasi awal pake contoh soal. saya masih belum paham.
    terima kasih

Leave a Reply

[+] monkey emoticons

Latest Posts

×

Categories

×

Recent Comments

×

Powered by Wordpress with an original design by Coralitus