Rabu, 05 Mei 2010

3 DESE (DES ENCRYPTION) POINT TO POINT PROTOCOL

Abstrak
Point-to-Point Protocol (PPP) [1] menyediakan metode standar untuk transportasi datagrams multi-protokol di atas link point-to-point. Enkripsi PPP Control Protocol (ECP) [2] memberikan suatu metode untuk bernegosiasi dan memanfaatkan protokol enkripsi PPP encapsulated link. Dokumen ini memberikan rincian spesifik untuk penggunaan Triple-DES standar (3DES) [6] untuk mengenkripsi paket PPP encapsulation.

3DESE pada Point to Point Protocol

Tujuan dari enkripsi paket PPP yang dipertukarkan antara dua implementasi adalah upaya untuk menjamin privasi komunikasi dilakukan melalui dua implementasi. Terdapat berbagai macam algoritma enkripsi, di mana salah satunya adalah algoritma DES. algoritma enkripsi DES baik dipelajari, dipahami dan diimplementasikan secara luas. Triple-DES berarti bahwa algoritma DES diterapkan tiga kali pada data yang akan dienkripsi sebelum dikirim melewati saluran komunikasi. Varian yang digunakan adalah DES-EDE3-KBK, yang dijelaskan secara lebih rinci dalam tulisan ini. DES juga dipilih menjadi diterapkan di bagian keamanan IP [5].
Dalam tulisan ini akan dijelaskan mengapa algoritma Triple DES digunakan untuk mengenkripsi paket yang melalui sebuah point to point link. Hal ini disebabkan karena sequence number pada CBC mode menyediakan kepastian bahwa paket ditransmisikan dengan benar. Jadi paket ada yang hilang dapat dideteksi.

Mekanisme Algoritma

Algoritma DES-EDE3-KBK adalah varian sederhana dari DES-CBC algoritma. Dalam EDE3-DES-CBC, sebuah Inisialisasi Vektor (IV) adalah XOR'd dengan 64 bit pertama (8 oktet) blok plaintext (P1). Fungsi pembangkitan kunci Des diiterasi sebanyak 3 kali, enkripsi (E) diikuti oleh dekripsi (D) diikuti oleh enkripsi (E), dan menghasilkan ciphertext (C1) untuk blok tersebut. Setiap iterasi menggunakan kunci independen: k1, k2, k3. Untuk blok berturut-turut, blok ciphertext sebelumnya di XOR dengan 8-octet blok plaintext (Pi). Fungsi enkripsi DES-EDE3 menghasilkan ciphertext (Ci) untuk blok tersebut.
Untuk mendekripsi, urutan fungsi dibalik: mendekripsi dengan k3, mengenkripsi dengan k2, mendekripsi dengan k1, dan XOR dengan ciphertext sebelumnya blok.Ketika ketiga kunci (k1, k2 k3) adalah sama, DES-EDE3-KBK adalah setara dengan DES-CBC.

Kunci

Kunci rahasia DES-EDE3 yang digunakan bersama antara pihak yang berkomunikasi memiliki panjang efektif 168-bit. Kunci ini terdiri dari tiga kunci independent yaitu sebanyak 56-bit kunci digunakan oleh algoritma DES. Masing-masing kunci sebesar 56 –bit subkunci b disimpan sebagai 64-bit (8 oktet) , dengan sedikit penambahan significant bit dari setiap oktet digunakan sebagai bit paritas.
Ketika mengkonfgurasi kunci untuk 3DESE dengan penambahan parity yang salah atau sering disebut kunci yang lemah maka kunci akan ditolak.

Karakteristik 3DESE Configuration Option for ECP

Deskripsi

Pilihan ECP 3DESE memberikan pilihan konfigurasi yang digunakan untuk implementasi dengan beberapa spesifikasi diantaranya untuk mendekripsi komunikasi pada link, dan dapat juga secara bersamaan meminta lawan komunikasi untuk mengirim paket secara terenkripsi. Pilihan konfigurasi ECP 3DESE memiliki beberapa field, yang ditransmisikan dari kiri ke kanan
Ketrangan :
  • Type : 2
  • Length : 10
  • Initial nonce: Field ini berisi 8 byte yang digunakan untuk mengenkripsi paket pertama yang ditransmisikan setelah pengirim mencapai opened state. Untuk mencegah serangan replay attack, pada implementasinya dapat ditawarkan sebuah nilai berbeda pada saat ECP bernegosiasi.

Format Packet untuk 3DESE Deskripsi

Di dalam paket 3DESE terdapat payload yang terenkripsi yang memiliki tiga field berikut :
  • Address and Control
Field ini harus ada kecuali jika PPP address dan Control Field Compression Option (ACFC) telah dinegosiasi.
  • Protocol ID
Nilai dari field ini adalah 0x53 atau 0x55; merupakan bagian akhir yang merupakan tanda yang digunakan untuk Individual Link Encryption Control Protocol dan ciphertext mengandung sebuah multilink fragment. Protokol Field Compression dapat diimplementasikan untuk leading zero atas persetujuan.
  • Sequence Number
Sequence Number memiliki jumlah 16-bit yang dibuat oleh encryptor secara sequence yang dimulai dengan angka 0 ( untuk paket pertama ditransmisikan ketika ECP telah mencapai opened state.
  • Ciphertext

Proses Enkripsi

Ketika ECP telah mencapai Opened State, pengirim tidak boleh melaksanakan prosedur enkripsi untuk paket LCP maupun paket ECP. Jika pilihan async control character map telah dipilih pada link, pengirim melaksanakan mapping setelah algoritma enkripsi dijalankan.
Algoritma enkripsi secara umum digunakan untuk memberikan padding pada protocol dan information field dari sebuah paket PPP tujuannya agar menjadi bentuk kelipatan 8 byte. Prosedur enkripsi hanya berlaku pada paket yang tidak memiliki address dan control field.
Ketika melakukan proses enkripsi paket pertama setelah ECP melalui opened state, initial nonce dienkripsi melalui algoritma 3DESE setelah initial nonce digunakan.

Padding

Karena Algoritma 3DES beroprasi pada 8 oktet blok, plainteks yang memiliki panjang buakn kelipatan 8 oket harus dipadding untuk kebutuhan enkripsi. Jika padding ini tidak dibuang setelah proses dekripsi maka akan menimbulkan kesalahan penafsiran pada beberapa protocol yang tidak menyertakan panjang protocol secara explisit pada proyokol header. Oleh Karena tidak semua paket memiliki panjang yang kelipatannya 8 byte maka harus dilakukan padding sebelum proses enkripsi menggunakan teknik yang tidak ambigu sehinnga memiliki panjang paket kelipatan 8 byte. Pada pihak yang melakukan proses dekripsi setelah mendekripsi pesan maka harus membuang padding sehingga didapatkan plainteks yang asli.

Recovery setelah packet loss

Packet loss terdeteksi ketika terdapat diskontinuitas pada rangkaian angka deretan paket. Anggap paket nomor N - 1 mempunyai sebuah unrecoverable error atau hilang, tapi paket N dan N + 1 diterima dengan benar.
Karena algoritma yang telah dijelaskan sebelumnya membutuhkan Ci terakhir dari paket N - 1 untuk mendekripsi C1 paket N, maka akan tidak memungkinkan untuk mendekripsi paket N. Walaupun demikian, semua paket N + 1 dan selanjutnya dapat didekripsi dengan cara yang biasa, karena semua yang dibutuhkan adalah blok terakhir ciphertext dari paket sebelumnya (pada kasus ini paket N, yang telah diterima).

Kelebihan

  • Tahan terhadap meet in the middle attack
  • Menyediakan kepastian bahwa paket ditransmisikan dengan benar.
  • Jadi paket ada yang hilang dapat dideteksi.

Kekurangan

  • Prosesnya akan ebih lambat jika dibandingkan dengan DESE karena mode yang digunakan CBC.

Referensi

  1. H. Kummert dan Nentec GmbH. The PPP Triple-DES Encryption Protocol (3DESE), RFC 2420, 1998

Tidak ada komentar:

Posting Komentar