M8 (şifre) - M8 (cipher) - Wikipedia

M8
Genel
TasarımcılarHitachi
Elde edilenM6
Şifre ayrıntısı
Anahtar boyutları64 bit
YapısıFeistel ağı

İçinde kriptografi, M8 bir blok şifreleme tarafından tasarlandı Hitachi 1999'da. Algoritma müzakereleri 1997'de M6, değiştirilmiş anahtar uzunluğu ile 64 bit veya daha fazla büyütülmüştür. Bu şifre ile çalışır Feistel ağı ve küçük uygulama veya 32 bitlik cihazlarda yüksek performansa ulaşmak için tasarlanmıştır. Örneğin, yuvarlak sayılar = 10 kullanarak, 6K geçitlerin özel donanımı için 32 Mbps'de ve C-dili ve Pentium-I 266 MHz kullanan program için 25 MHz saat veya 208 Mbps'de şifreleme hızı sunar. Açıklamadan dolayı açık veya çok satıcılı yazılımlarda kullanılmamalıdır.

Algoritmanın yapısı

M8 cipher.png'nin yapısı

Basit yapı

Yapısal özellikler, şifrenin ikame-permütasyon bloğuna dayanmasıdır. DES. 3 tür hesaplama vardır: 32 bit dairesel dönüş, modül 2'ye ekleme32 ve 32 bit-bilge ÖZELVEYA. Gerçek işlev her turda farklı olabilir. Anahtar, değeri kullanılarak hesaplanmak için kullanılır ve her turda gerçek işlevi tanımlar.

Yuvarlak sayı, karar ve genişletme anahtarlarının kullanıldığı karar sürecinden sonra algoritma temel işlevi (e π) veya (d π) alır. Daha sonra, 256 bit yürütme anahtarı ve şifreleme / şifre çözme bloğu üreten anahtar zamanlayıcı (256 anahtar genişletme anahtarı ve 64 bit veri anahtarı da alır) tarafından kullanılır.

Algoritma karar anahtarı 24 bitten oluşur. İlk 9 bit hesaplamaları belirler: 0, 2'ye toplama anlamına gelir32modül, 1 bit-bazında XOR anlamına gelir. 5 bitlik diğer 3 blok, sol dairesel dönüşleri tanımlar. Algoritma genişletme anahtarı, α, β ve γ'yi belirleyen 32 bit için 3 blok sonlandırır.

Temel fonksiyon arasındaki fark sadece permütasyon sırasındadır: (e π) bunu sonunda yapar, (d π) - hesaplama bloğunun başında.

Temel fonksiyonların yapısı

Yapıda 9 hesaplama bloğu ve isteğe bağlı olarak 3 blok sol daire dönüşü vardır.
64-bit blok boyutuna ve ayrıca 64-bit anahtar uzunluğuna sahiptir. Bu, büyük yürütme anahtarına bağlı olan S bloklu Feistel şifresidir.
Başlangıçta (d π) için permütasyon vardır. Ardından algoritma ilk düz metin bloğunu alır ve K kullanarak hesaplama 1 yaparL, sonra isteğe bağlı olarak döndürür ve hesaplama 2'ye gider. Tekrar eder, ancak K yerine α vardırL. Sonra cal yapmak için β kullanır. 5. Daha sonra algoritma, daha önce açıklanan, ancak K kullanarak hesaplamalar ve döndürme yaparR. Ayrıca calc.8 yapmak için γ kullanılır ve elde edilen sonuç diğer düz metin bloğu ile hesaplanır. Sonuç olarak, algoritma blokları değiştirir.
(E π) için permütasyon sırası ve blok hesaplamaları hariç aynıdır.

Anahtar program

Yürütme anahtarı, 256-bit anahtar genişletme anahtarından elde edilir; bu anahtar, 2 özdeş dört 64-bit blok K0 – K3 kümesine ve 64 bit veri anahtarına bölünür. Her bir anahtar genişletme anahtarı bloğu, (e with [0-7]) ile 32 bit veri anahtarı ile hesaplamak için kullanılır ve çıkışta sekiz adet 32 ​​bitlik genişletme anahtarı bloğu verir.

Şifreleme

Elde edilen genişletme anahtarı 4 çift 32 bit bloğa bölünür. Bu blok 32 bitlik sol ve sağ aralığa bölünür ve 4 ardışık adım kullanarak 64 bitlik düz metin blokları ile hesaplamalar yapmak için kullanılır. Daha sonra, aynı genişleme anahtarı blokları çiftlerini ve aynı adımları kullanarak tekrar şifreli metin şifreleri elde edildi.

Şifre çözme

Şifreleme metninin şifresini çözmek için aynı işlemi yapmak, ancak başka bir temel işlevi kullanmak yeterlidir.

Operasyon modları

ISO 8372 veya ISO / IEC 101116'da belirlendiği üzere 4 uygulanabilir mod vardır:

  1. Elektronik Kod Kitabı (ECB ) modu
    • En basit şifreleme modu. Bu düz metni kullanmak, ayrı olarak şifreleyen bloklara ayrılır. Bu yöntemin dezavantajı difüzyon eksikliğidir. Bu, verilerin yeterince iyi gizlenmediği ve kriptografik protokoller için kullanılması tavsiye edilmediği anlamına gelir.
  2. Şifre Bloğu Zincirleme (CBC ) modu
    • Bu modda, her bir düz metin bloğu şifrelenmeden önce bir önceki ile XORlanır. Her blok, önceki tüm bloklara bağlı olacaktır ve her mesajı benzersiz kılmak için ilk bloktaki başlatma vektörü kullanılmalıdır.
  3. Şifre Geri Bildirimi (CFB ) modu
    • CBC'nin yakın bir akrabası olan bu mod modu, kendi kendini senkronize eden bir akış şifresine bir blok şifresi yapar. Operasyon çok benzer; özellikle, CFB şifre çözme, ters olarak gerçekleştirilen CBC şifreleme ile neredeyse aynıdır.
  4. Çıktı Geri Bildirimi (OFB ) modu
    • Bu mod, eşzamanlı bir akış şifresine bir blok şifresi yapar. Daha sonra şifreli metni almak için düz metin bloklarıyla XORlanan anahtar akışı blokları oluşturur. Tıpkı diğer akış şifrelerinde olduğu gibi, şifreli metinde bir bit çevirmek, aynı konumda düz metinde ters çevrilmiş bir bit üretir. Bu özellik, birçok hata düzeltme kodunun, şifrelemeden önce uygulandığında bile normal şekilde çalışmasını sağlar.
      XOR işleminin simetrisi nedeniyle, şifreleme ve şifre çözme tamamen aynıdır.

Kriptoanaliz

  • M8'de anahtar hem hesaplama nesnelerini hem de yuvarlak sayıları belirler. Düşman bir kişi her raundun yapısını bilirse, M8'i geleneksel yöntemler kullanarak değerlendirmek mümkün olacaktır. Hitachi'nin tahminine göre, 10 turdan az olması durumunda, M8'i şifrelemenin daha kolay olacağı ihtimali vardır. DES. Bu nedenle> 10 mermi kullanılması önerilir. Kriptografik güç, tur sayısı arttıkça artar, ancak şifreleme hızının yuvarlak sayılar olarak tersine azalacağını unutmamak gerekir. Mermilerin yapısı bilinmiyorsa, yalnızca kapsamlı arama yapmanın bir yolu vardır ve bu, çok sayıda yuvarlak işlev varyasyonu nedeniyle etkili olmayacaktır. Özet olarak, algoritmanın hızı ve güvenliği arasında değiş tokuş yapmak gerekir.
  • Gibi M6 duyarlı mod n kriptanaliz 1999'da John Kelsey, Bruce Schneier ve David Wagner tarafından önerildi. Bu, şifrenin eşdeğerlik sınıfları (uygunluk sınıfları) modulo n üzerinde nasıl çalıştığı konusundaki eşitsizliği kullanan bir kriptanaliz bölümleme biçimidir. Bu saldırılar, ikili toplama ve bir Fermat üssü bit dönüş modülü özelliklerini kullandı. Bilinen bir düz metin, anahtarı yaklaşık 235 deneme şifrelemeleri; "birkaç düzine" bilinen düz metin, bunu yaklaşık 2'ye düşürür31.
  • Zayıf anahtar programına sahip olduğu için, M8 bir şifre çözme işlemine tabidir. slayt saldırısı, daha az bilinen düz metin gerektiren mod n kriptanaliz ama daha az hesaplama. Şifrenin n bit içerdiğini ve K'den oluşan anahtar zamanlayıcı kullandığını varsayalım.1-KM herhangi bir uzunlukta anahtar olarak. Bu şifreleme yöntemi, şifrenin özdeş permütasyon işlevlerine F ayrılır. Bu işlevler 1 turdan fazla şifreden oluşabilir, anahtar çizelgesi ile tanımlanır. Örneğin, şifre, K arasında geçiş yapan alternatif anahtar programı kullanıyorsa1 ve K2, F'ye 2 tur vardır. Her Kben en az bir kez görünecektir.
    Şifrenin özelliklerine bağlı olarak, bir sonraki adımda 2n / 2 düz metin ve şifreli metin çiftleri. Doğum günü paradoksu gereği, bu sayıdan fazlasını toplamak gerekmemelidir. Daha sonra olarak belirtilen bu çiftler (P, C), olarak belirtilen "kayan" çiftleri bulmak için kullanılır (P0, C0) (P1, C1). Her "kayan" çiftin özelliği vardır P0= F (P1) ve C0= F (C1). "Slid" çifti, bir şifreleme üzerinde "kaydığı" için adını alır. Tek seferlik F fonksiyonunun uygulanmasının sonucu olarak düşünülebilir.
    Bu çift belirlendikten sonra, anahtar bu eşleşmeden kolayca çıkarılabilir ve bilinen düz metin saldırılarına karşı güvenlik açığı nedeniyle şifre kırılır.
    Bir kayan çift bulma süreci farklı olabilir, ancak aynı temel şemayı izler. Biri, anahtarı yalnızca bir yinelemeden çıkarmanın nispeten kolay olduğu gerçeğini kullanır. F. Herhangi bir düz metin-şifreli metin çifti seçin, ve anahtarların neye karşılık geldiğini kontrol edin ve vardır. Bu anahtarlar eşleşirse, bu bir kayan çifttir; aksi takdirde bir sonraki çifte geçin.
    İle düz metin-şifreli metin bir kaydırmalı çift bekleniyor. Yanlış pozitiflerin sayısı, algoritmanın yapısına bağlıdır. Yanlış pozitifler, anahtarları farklı mesaj-şifre çiftine uygulayarak azaltılabilir, çünkü iyi bir şifreleme olasılığı çok düşüktür, yanlış anahtar> 2 mesajı doğru şekilde şifreleyebilir.
    Bazen şifrenin yapısı, ihtiyaç duyulan şifresiz metin-şifreli metin çiftlerinin sayısını ve dolayısıyla işin büyük bir kısmını büyük ölçüde azaltır.
    Bu örneklerin en net olanı Feistel şifresi döngüsel bir anahtar çizelgesi kullanarak. Bunun nedeni bir arama için . Bu, olası eşleştirilmiş mesajları azaltır. aşağı (mesajın yarısı sabit olduğundan) ve bu yüzden en fazla Düz metin-şifreli metin çiftleri, kayan bir çift bulmak için gereklidir.

Ayrıca bakınız

Referanslar

  • "ISO / IEC9979-0020 Kayıt Girişi" (PDF). Profesör Chris Mitchell, Bilgi Güvenliği Grubu, Royal Holloway, Londra Üniversitesi. ISO / IEC 9979 Kriptografik Algoritmalar Kaydı.
  • "Mod n Cryptanalysis, RC5P ve M6'ya Karşı Uygulamalar ile" (PDF). J. Kelsey, B. Schneier ve D. Wagner. Fast Software Encryption, Altıncı Uluslararası Çalıştay Bildirileri (Mart 1999), Springer-Verlag, 1999, s. 139-155.
  • E.K. Grossman ve B. Tuckerman (1977). "Dönen bir anahtar olmadığı için zayıflatılmış Feistel benzeri bir şifrenin analizi". IBM Thomas J. Watson Araştırma Raporu RC 6375. Alıntı dergisi gerektirir | günlük = (Yardım)
  • Henry Beker ve Fred Piper (1982). Şifreleme Sistemleri: İletişimin Korunması. John Wiley & Sons. s. 263–267. ISBN  0-471-89192-4. (Grossman ve Tuckerman tarafından yazılan makalenin bir özetini içerir)
  • Alex Biryukov ve David Wagner (Mart 1999). Slayt Saldırıları (PDF /PostScript ). 6. Uluslararası Çalıştayı Hızlı Yazılım Şifreleme (FSE '99). Roma: Springer-Verlag. s. 245–259. Alındı 2007-09-03.
  • Alex Biryukov ve David Wagner (Mayıs 2000). Gelişmiş Slayt Saldırıları (PDF / PostScript). Kriptolojideki Gelişmeler, Bildiriler EUROCRYPT 2000. Bruges: Springer-Verlag. s. 589–606. Alındı 2007-09-03.
  • S. Furuya (Aralık 2001). Düz Metin Kriptanalizi ile Bilinen Slayt Saldırıları (PDF). 4. Uluslararası Bilgi Güvenliği ve Kriptoloji Konferansı (ICISC 2001). Seul: Springer-Verlag. s. 214–225. Arşivlenen orijinal (PDF) 2007-09-26 tarihinde. Alındı 2007-09-03.
  • Eli Biham (1994). "İlgili Anahtarları Kullanan Yeni Kriptanalitik Saldırı Türleri" (PDF / PostScript). Kriptoloji Dergisi. 7 (4): 229–246. doi:10.1007 / bf00203965. ISSN  0933-2790. Alındı 2007-09-03.
  • M. Ciet, G. Piret, J. Quisquater (2002). "İlgili Anahtar ve Slayt Saldırıları: Analiz, Bağlantılar ve İyileştirmeler" (PDF / PostScript). Alındı 2007-09-04. Alıntı dergisi gerektirir | günlük = (Yardım)CS1 bakım: birden çok isim: yazarlar listesi (bağlantı)