Twofish

Vikipedi, özgür ansiklopedi

İki Balık( Twofish )[değiştir | kaynağı değiştir]

İki Balık

Kriptografide Twofish , 128 bit ve 256 bite kadar anahtar boyutlarına sahip simetrik bir anahtar blok şifresidir . Advanced Encryption Standard yarışmasının beş finalistinden bir tanesiydi , ancak standardizasyon için seçilmedi. Twofish, Blowfish'in önceki blok şifrelesi ile ilgilidir.

Twofish'in ayırt edici özellikleri, önceden hesaplanmış anahtara bağlı S-kutularının kullanılması ve nispeten karmaşık bir anahtar programıdır. Bir n-bit anahtarın bir yarısı gerçek şifreleme anahtarı olarak kullanılır ve n-bit anahtarın diğer yarısı şifreleme algoritmasını değiştirmek için kullanılır. Twofish, diğer tasarımlardan bazı şeyleri kullanmaktadır ; örneğin, SAFER şifre ailesinden sözde Hadamard dönüşümü (PHT). Twofish, DES gibi bir Feistel yapısına sahiptir. Twofish ayrıca ayrılabilir bir maksimum mesafe matrisi kullanır.

1998'de piyasaya sürüldüğünde, Twofish 128 bitlik anahtarlar için Rijndael'den biraz daha yavaştı , ancak 256 bitlik anahtarlar için biraz daha hızlıydı. 2008'den beri, neredeyse tüm AMD ve Intel işlemciler, AES komut seti aracılığıyla Rijndael algoritmasının donanım hızlandırmasını içeriyor ; Komut setini kullanan Rijndael uygulamaları artık Twofish uygulamalarından çok daha hızlıdır.

Twofish, Bruce Schneier , John Kelsey , Doug Whiting , David Wagner , Chris Hall ve Niels Ferguson tarafından tasarlandı : Twofish'in daha fazla kriptanalizini gerçekleştirmek için bir araya gelen "Geliştirilmiş ve güncellenmiş Twofish ekibi". Diğer AES yarışmacıları arasından Stefan Lucks , Tadayoshi Kohno ve Mike Stay gibi isimlerde vardı.

Twofish şifreleme metodunun patenti alınmamıştır ve referansı kamuya açık hale getirilmiştir. Sonuç olarak, Twofish algoritması herhangi bir kısıtlama olmaksızın herkesin kullanımına açık ve ücretsizdir. OpenPGP standardında (RFC 4880) bulunan birkaç şifrelemeden biridir. Bununla yanı sıra Twofish, daha uzun süredir mevcut da bulunmakta olan Blowfish'ten daha az bir ilgi görmüştür bir kullanım gördü.

Performans[değiştir | kaynağı değiştir]

Performans kısmını tasarlanırken Twofish'te her zaman önemli bir faktör olmuştur. Twofish, şifreleme hızı, bellek kullanımı, donanım kapısı sayısı, anahtar kurulumu ve diğer parametrelerin önemine bağlı olarak birkaç performans değiş tokuşu katmanına izin verecek şekilde tasarlanmıştır. Bu, çeşitli uygulamalarda uygulanabilen oldukça esnek bir algoritmaya izin verir.

Twofish için donanımda olduğu kadar yazılımda da yapılabilecek çok sayıda uzay-zaman değiş tokuşu vardır. Böyle bir değiş tokuşun bir örneği, iki veya daha fazla faktörün hız artışlarına yol açabilen yuvarlak alt anahtarların veya s-kutularının önceden hesaplanması olabilir. Ancak bunlar, onları depolamak için gereken daha fazla RAM pahasına gelir .

Aşağıdaki tablodaki tahminlerin tümü mevcut 0,35 μm CMOS teknolojisine dayanmaktadır.

Donanım Takasları (128-bit Anahtar)
Kapı sayısı h bloklar Blok taşıma saatleri Boru hattı seviyeleri Saat hızı Performans (Mbit/sn) Başlangıç saatleri Yorumlar
14000 1 64 1 40 MHz 80 4 Anında alt anahtar
19000 1 32 1 40 MHz 160 40
23000 2 16 1 40 Mhz 320 20
26000 2 32 2 80 MHz 640 20
28000 2 48 3 120 MHz 960 20
30000 2 64 4 150 MHz 1200 20
80000 2 16 1 80 MHz 640 300 S kutusu RAM'leri

Kriptoanaliz[değiştir | kaynağı değiştir]

1999'da Niels Ferguson , 2256 adım kullanarak 256 bit anahtar sürümünün 16'sından 6'sını kıran imkansız bir diferansiyel saldırı yayınladı .

2000 yılı itibarıyla , Twofish blok şifresinin en iyi yayınlanmış kriptanalizi , tam 16-yuvarlak versiyonun kesilmiş bir diferansiyel kriptanalizidir . Makale, kesik diferansiyellerin olasılığının blok başına 2-57,3 olduğunu ve iyi bir kesik diferansiyel çifti bulmak için kabaca 251 seçilmiş düz metin (32  petabayt değerinde veri) gerekeceğini iddia ediyor.

Bruce Schneier , 2005 tarihli bir blog girişinde, bu makalenin tam bir kriptanalitik saldırı olmadığını, yalnızca bazı varsayımsal ayırıcı özellikler sunduğunu söyledi: "Fakat teorik bir perspektiften bile, Twofish uzaktan bile bozuk değil. Bu sonuçların herhangi bir uzantısı olmamıştır. 2000 yılında yayınlandıklarından beri."

Ayrıca Bakınız[değiştir | kaynağı değiştir]

Referans[değiştir | kaynağı değiştir]

  1. Ship Moriai; Yiqun Lisa Yin (2000). "İki balığın kriptanalizi (II)" 24 Şubat 2022 tarihinde Wayback Machine sitesinde arşivlendi.
  2. Niels Ferguson (1999-10-05). "İki balıkta imkansız diferansiyeller" 22 Mart 2022 tarihinde Wayback Machine sitesinde arşivlendi.
  3. "Siyahlı Takım adamları sunar : Twofish"
  4. Bruce Schneler; Doug Whiting (2000-04-07) "Beş AES finalistinin performans karşılaştırması" 22 Mart 2022 tarihinde Wayback Machine sitesinde arşivlendi.
  5. Scneier, Bruce (15 Haziran 1998). "İki Balık: 128-Bit Blok şifreleme" 24 Şubat 2022 tarihinde Wayback Machine sitesinde arşivlendi.
  6. Shiho Mariai; Yiqun Lisa Yin (2000) "iki Balığın Kriptanalizi(II)" 24 Şubat 2022 tarihinde Wayback Machine sitesinde arşivlendi.
  7. Schneier, Bruce( 2005-11-23) "İki Balık Kriptanaliz Söylentileri" 24 Şubat 2022 tarihinde Wayback Machine sitesinde arşivlendi.

Makaleler[değiştir | kaynağı değiştir]