Senin, 09 Juli 2012

Kriptoanalisis Blowfish



Dr  Dobb's  Journal  mensponsori  sebuah  kontes kriptoanalisis terhadap algoritma Blowfish. Total ada lima
pengiriman,  yang  telah memberikan analisinya  terhadap algoritma Blowfish.

  1. John  Kelsey  mengembangkan  sebuah serangan  yang  bisa  memecahkan  3-bulat  Blowfish, namun  tidak  mampu  untuk  memperpanjang itu. Serangan  ini  memanfaatkan  fungsi  F dan  fakta bahwa mod tambahan 232 dan XOR tidak berubah. 
  2. Vikramjit  Singh  Chhabra  memandang cara  untuk  mengeefisienkan  adalah  dengan menerapkan brute force keysearch machine.
  3. Serge Vaudenay memeriksa varian yang disederhanakan  dari  Blowfish,  dengan  S-kotak dikenal  dan  dan  tidak  key-dependent. Untuk  varian ini, sebuah serangan diferensial dapat memulihkan Parray dengan 28r dipilih plainteks (r adalah jumlah putaran). Serangan  ini  tidak  mungkin untuk 8-bulat Blowfish dan yang lebih tinggi, karena lebih plaintext diperlukan daripada mungkin dapat dihasilkan dengan 64-bit blok Cipher.
  4. Tesis  Ph.D  milik  Vincent  Rijmen mencantumkan second-order  differential  attack pada 4 iterasi  algoritma Blowfish. Namun, attack tersebut tidak dapat dilanjutkan lagi untuk iterasi selanjutnya. 



Kunci  lemah  tertentu  menghasilkan  S-kotak  lemah (kemungkinan  untuk  mendapatkan  mereka  secara  acak adalah 1 dalam 2 14 ), serangan yang sama memerlukan 24r 1  dipilih  untuk  memulihkan  plainteks  P-array  (dengan asumsi S-kotak yang dikenal). Dengan S-kotak yang tidak diketahui,  serangan  ini  dapat  mendeteksi  apakah kunci lemah sedang digunakan,  tetapi tidak dapat  menentukan apapun  (baik  S-kotak,  P-array,  maupun  kunci  itu sendiri). Serangan  ini  hanya  bekerja  terhadap pengurangan-bulat  varian;  itu  benar-benar  tidak  efektif terhadap 16-bulat Blowfish.
Meskipun  demikian,  penemuan  kunci  lemah  di Blowfish  adalah  signifikan. Sebuah  kunci  lemah  adalah
salah  satu  yang  dua  entri  untuk  suatu  S-box  adalah identik. Ada cara untuk memeriksa kunci lemah sebelum melakukan  key  expansion. Lakukan  ekspansi  kunci  dan periksa  identik  entri  S-box  setelah  dihasilkan  kunci Blowfish apabila memang dikhawatirkan terjadi weak key.

Tidak ada komentar:

Posting Komentar