Yazan : Gökhan Özberk

İlkel bir stream cipher’a (akış şifrelemesine) ihtiyaç vardı. Bu yapı hızlı (counter mod’da block cipher’dan hızlı), kullanımı kolay, kolay anlaşılır, serbestçe ulaşılabilir ve güvenli olmalıydı. SOBER-128 bu ihtiyaçları karşılamak için tasarlandı. Yapısı itibariyle düzgün çalışan ve ilkel bir biçimde mevcut analizleri saklayabilen bir yöntemdir.

Ek olarak, SOBER-128 Message Authentication Code (MAC)’un simultane olarak hesap ve tahminini fonksiyonel olarak yapabilir ve şifrelenmiş mesajların bütünlük kontrolüne izin verir.

TANIM

SOBER-128, 128 bit uzunluğundaki gizli anahtar için dizayn edilmiş senkronize bir stream cipher’dır. Cipher 32 bit’lik bloklar halinde anahtarlar üretir. SOBER-128’in yapısı, 32 bit’lik işlemlere (örneğin 32-bit XOR ve mod 232 ) ve küçük sabit dizilere dayanan yazılımsal şifreleme yöntemidir. Sonuç olarak SOBER-128 smart card’lardan büyük bilgisayar hesaplamalarına kadar çeşitli hesaplamalar yapabilir. Kaynak kodu ücretsiz erişilebilir ve kullanılabilirdir. Ayrıca herhangi bir bağımsız uygulama için de yine ücretsizdir.

AMAÇ : MAC’te işlevsellik sağlamaktır.

SOBER AİLESİNİN HİKAYESİ

SOBER-128, 1998 yılında Rose adında biri tarafından SOBER[32]’den geliştirilmiştir. SOBER algoritması 8 bit’lik işlemlere dayanır ve 32 bit’lik işlemler kullanır. S16, SOBER-II’nin 6 bit’lik uzantısı olarak planlanmıştı: S16 SOBER-II’nin yapısını kopyalayıp ve 16 bit’lik işlemler kullanırdı. Sonuç olarak, SOBER-II, S16 ve 32 bit versiyon için yedekler yaratılmış oldu. Bu yedekler t-sınıfı SOBER şifreleme olarak adlandırıldı. Bu t-sınıfı, 3 şifrelemeyi (SOBER-II, S16 ve 32 bit) 8-bit, 16-bit ve 32-bit’lik işlemlerle sınırlıyordu. SOBER-t16 ve SOBER-t32 şifrelemeleri NESSIE adında bir programı oluşturdular: SOBER-t16 128 bit’lik anahtar ve SOBER-t32 de 256 bit’lik anahtar gücünde. SOBER-t16 ve SOBER-t32, NESSIE programına en güçlü ilkel şifreleme yöntemleri arasında olduklarını kanıtlamış oldular. Fakat yine de, bu iki şifreleme NESSIE’nin zorlu ihtiyaçları karşısında yetersiz gelebiliyordu.

SOBER-128, SOBER-t32’nin geliştirilmiş bir versiyonudur. Modifikasyonlar direk olarak t-sınıfı şifrelemeye üzerindeki analizlere göre yapılmıştır. SOBER-t32’nin 256 bit’lik anahtar gücü azaltılmıştır, SOBER-128 için 128 bit’e indirilmiştir.

SOBER’İN TARİHÇESİ

1. 1998 SOBER

2. 2000 SOBER-t32/-t16 : NESSIE candidates

*Algebraic attacks on SOBER-t32/-t16 without stuttering

(SOBER-t32/-t16 üzerinde kekeleme olmadan cebirsel saldırılar.)

3. 2003 SOBER-128

*Distinguishing attacks on SOBER-128 with linear masking

(Lineer maskeleme ile ayırt edici saldırılar.)

4. 2005 NLS (Non-Linear SOBER) : eSTREAM candidate

*Crossword Puzzle Attack on NLS

(NLS sistem üzerinde Puzzle saldırıları)

5. 2006 NLSv2 : tweak version

*Crossword Puzzle Attack on NLSv2

(NLSv2 üzerinde Crossword Puzzle saldırıları)

6. 2007 Shannon

*Distinguishing Attack on Shannon

(Shannon üzerinde ayırt edici saldırılar)

SOBER-t32 VE SOBER-128 ARASI GEÇİŞLER

Değişimler kolay anlaşılabilir ve 3 kategoriye ayrılır:

1. Uygulama verimliliği arttırmış fakat kriptoloji güvenliğini etkilememiştir:

S-Box’ın yeniden yapılanması aynı işlemlerin daha az bilgisayar komutuyla yapılmasını sağlamıştır.

– LFSR (linear feedback shift register) yapısını değiştirmek, güncelleme verimliliğini artırmış ve çarpım tablosunun boyutunu azaltmıştır. Yeni uygulama eskisini izomorf etmiştir.

– SOBER-128 sadece anahtarları ve IV(Initialisation Vector – Başlangıç Vektörü)ları (4 byte çoklu) destekler. Anahtarlar ve başlangıç vektörleri her zaman kullanıcılar tarafından takviye edilebilir.

– Intel platformu daha çok kişi tarafından tercih edilmeye başlanmasıyla birlikte, SOBER-128 “little-endian” byte sıralamasını kabul etti.

2. Stream Cipher’ın değişmi:

– SOBER ailesinin bir temeli olan “Stuttering” (kekeleme) silindi. Bu düzen güvenliği artırdı, fakat maliyeti çok yüksekti: bu da şifrelemenin side-channel attacks’a (yan-kanal saldırıları’na) maruz bırakıyordu.

– Non-lineer dönüşümler güçlendi (özellikle sabit rota ve ikinci s-box dönüşümü eklenmesiyle)

– “Konst”, anahtar yüklemesi sırasında 0(sıfır) harici (non-zero) bir değer alıyor ve bu anahtar yüklemesinden sonra en önemli byte “non-zero” olur.

3. Mesaj onay fonksiyonu eklentisi

SOBER-128 SÜRÜM 2.0.

Watanabe ve Furuya, şifrelemeden yararlanılmadığında MAC sahteciliği açısından yüksek olasılık yaratan bir saldırı ortaya koymuşlardır. Söz konusu hassasiyet, basit; ancak uygunsuz bir uygulama kararından kaynaklanmıştır.
Alt bölümler göz önünde bulundurulmaksızın, her surette düz metnin MAC birikme işlevine (aşağıda ifade edilmiştir) eklenmesi yönünde bir karar alınmıştır; bu yolla uygulamaların şifreleme söz konusu olmadığında şifre metni oluşturma yükümlülüğü ortadan kaldırılmış olacaktır. Bu çerçevede yüksek olasılıklı diferensiyal saldırı ortaya çıkacaktır; bu nedenle MAC birikimi hakkında söz konusu teknik özellikler Sürüm 2.0 dahilinde desteklenmemektedir. Uygun tasarım (halihazırda sürüm 2.0’da kullanılmakta olan) şifreleme esnasında düz metnin MAC geri bildirim işlevine dahil edilmesi ve şifreleme söz konusu olmadığında şifre metni girişinin yapılmasıdır (yani MAC birikimi için şifre metni oluşturulması; bunun ardından bunun ortadan kaldırılması).

Eser sahipleri, MAC birikimi uygulaması esnasında düz metin dolgusundan çoklu 32 bit seviyesinde yararlanan MSC saldırısının devamını tespit etmişlerdir. Dolgu biti sayısı orijinal tasarıda doğrulanmamış olduğundan, gönderilen mesaja bit eklenmesi (ya da gönderilmiş olan mesajdan bit çıkarılması) ve bu durumda dahi başarılı MAC doğrulama elde edilmesi mümkün olmuştur. Söz konusu zayıf yön, dolgu biti sayısının MAC sonuçlandırma işlemine dahil edilmesi yoluyla SOBER-128 Sürüm 2’de düzetilmektedir.

Bunun dışında herhangi bir değişiklik söz konusu olmamıştır ya da herhangi bir zayıf yön tespit edilmemiştir; akış şifreleme modunda ya da çoklu 32 bit boyutunda mesajların şifrelenmesi/ya da şifre çözümü esnasında, SOBER-128 orijinal sürümü SOBER 128 Sürüm 2 ile bütünüyle birlikte işlemektedir.

KULLANIM VE TEHDİT MODELİ

SOBER-128, ihtiyari uzunlukta tekli şifreleme anahtar akışı oluşturulmasında kullanılabilir. Bu modda, SOBER-128’in örneğin SSL/TLS çerçevesinde genel olarak konuşlandırılan RC4 şifrelemesinin yerine kullanılması mümkün olacaktır. Bu modda, IV (başlangıç vektörü) gerekli değildir.

Ancak uygulamada, mesajlar dahilinde daha yüksek seviyeli iletişim gerçekleştirilmektedir; bu noktada tüm mesaj için mesaj bütünlüğünün sağlanması ve mesajın tamamı ya da bir kısmı için gizlilik (şifreleme) hedeflenmektedir. Aynı gizli anahtar, mesajların ayırt edilmesi için Başlangıç Vektörü kullanımı yoluyla tüm (çoklu mesaj) iletim için kullanılır olmalıdır.

SOBER-128 başlangıç vektörü kullanımının söz konusu olmadığı, 280 den fazla veri ifadesinin tek anahtarla işlenmediği ve herhangi bir veri arıza doğrulama işleminin gerçekleştirilmeyeceği durumda güvenlik sağlama amacı gütmektedir (özellikle doğrulanmayan bir mesaj şifresi çözme işleminin sonucunun verilmediği durumda). IV’lerin (başlangıç vektörleri) rastgele olması gerekliliği söz konusu değildir; bu orijinalitenin garanti edilmesini daha kolay hale getirmektedir.

SOBER-128 MAC yeterliğinden güvenli şekilde yararlanılmasına ilişkin ilave şartlar söz konusudur:

•     Güvenli veri göndericisi ve alıcısı, verinin hangi bölümlerinin şifreleneceği konusunda ve MAC boyutu konusunda anlaşmaya varmalıdırlar. Doğrulama, yalnızca alınan mesajın değiştirilmemiş olduğunu ortaya koymaktadır; doğrulama, hangi mesaj bitlerinin şifreleneceğini ifade etmemektedir.

MAC kullanımı söz konusu olduğunda, mesaj doğrulaması tüm mesaj hakkında geçerli olmalıdır. Mesajın bir kısmının “doğrulanmamış” olması, doğrulanan kısım da Watanabe-Furuya MAC saldırısı olasılığını arttırmaktadır.

•     SOBER-128 tarafından oluşturulan MAC, anahtar karma işlevi olarak kullanılmamalıdır.
Örneğin; SOBER-128 tarafından oluşturulan MAC asimetrik anahtar sayısal imza girişi olarak hiçbir zaman kullanılmamalıdır. SOBER-128 algoritma kullanımı yoluyla aynı MAC ile iki mesaj oluşturma amacı için anahtar kullanan biri için bu, oldukça kolay bir işlemdir.

Doğrulanan şifreleme, operasyon şifreleme modlarını engellemektedir; IACBC, IAPM, XCBX, OCB ve PEMI) için aynı sınırlılıklar söz konusudur.

SOBER-128 GÜVENLİK ANALİZİ

SOBER’in eski sürümlerinin neredeyse tümü takılmanın söz konusu olmadığı SOBER odaklı olup, bunun ardından takılma içeren SOBER saldırılarına uzandığı için şanslıyız. Bunun anlamı, mevcut saldırılara bakarak bunları SOBER-128’e uygulayabileceğimizdir.

GÜVENLİK GEREKLİLİKLERİ

SOBER-128, 128-bit güvenlik sağlama amacı gütmektedir. SOBER-128 taban saldırısı, hesaplama karmaşıklığı 2128 olan kapsamlı bir anahtar araştırmadır.
Tüm saldırılarda, saldırganın bir ya da daha fazla gizli anahtar tarafından üretilen belirli düzeyde anahtar akışı gözlemlediği varsayılmaktadır ve saldırganın ilgili düz metin ve başlangıç vektörü farkındalığı geliştirdiği varsayılmaktadır.
SOBER-128’in aşağıdaki durumlarda saldırıya karşı koyduğu kabul edilmektedir: 1. Saldırının anahtar (lar) sahibinin 280‘den fazla akış ifadesi oluşturmasını gerekli kılması ya da saldırı hesap karmaşıklığının saldırganın 2128 kez yeniden şifreleme gerçekleştirmesine ve her seferinde en azından 5 ifadelik verim elde etmesine denk olması. SOBER-128’in hiçbir anahtar/IV(başlangıç vektörü) çiftinin yeniden kullanılmaması ve tek bir tuşla 280‘den fazla ifadenin işlenmemesi şartı çerçevesinde kullanımın söz konusu olması halinde, aşağıdaki güvenlik gerekliliklerini yerine getirilir.

  1. Anahtar/Durum İyileştirme Saldırıları (Key/State Recovery Attacks):
    SOBER-128, ya gizli anahtarı tespit eden ya da Konst değerlerini ve durumu herhangi bir zamanda belirleyen saldırılara dirençli olmalıdır.
  1. Anahtar Akışı İyileştirme Saldırıları (Keystream Recovery Attacks): SOBER-128, LFSR durumu ya da gizli anahtar hakkında verileri tespit etmeksizin anahtar akışı bilinmeyen değerlerini uygun şekilde öngören saldırılara karşı koymalıdır.
  1. Ayırt Edici Saldırılar (Distinguishing attacks): SOBER-128, anahtar akışını rastgele bit akışından ayıran saldırılara karşı koymalıdır.
  1. İlgili Anahtar ya da ilgili IV (başlangıç vektörü) Saldırıları (Related-Key or related IV Attacks) : SOBER-128 , saldırganın farkındalık kazanmış olduğu şekilde bağlantılı olan bir ya da daha fazla gizli anahtardan türemiş anahtar akışını kullanan yukarıda ifade edilen türde saldırılara karşı koymalıdır.
  1. MAC sahtecilik saldırıları (MAC forgery attacks) : SOBER-128, sonradan ilgili MAC’ın onayından geçen bir mesajın oluşturulması ya da değiştirilmesi konusunda sahteciye olanak tanıyan saldırılara karşı koymalıdır.

Not: SOBER-128 orijinal versiyonu, mesaj şifrelemesi söz konusu olmadığında MAC sahtecilik saldırısına maruz kalmıştır. Orijinal sürümün, aynı zamanda dolgulama planı saldırısı konusunda hassasiyeti söz konusudur. SOBER-128 Sürüm 2, söz konusu problemleri ortadan kaldırmaktadır.

SOBER-128’in saldırganın söz konusu saldırıların herhangi birini üstlenebilmesi halinde kırılmış olduğu kabul edilecektir. Anahtar akışı iyileştirme saldırıları olası gözükmemektedir; çünkü çıkış sıralaması, büyük ölçüde LFSR durumuna bağlıdır; bu nedenle herhangi bir olası anahtar akışı iyileştirme saldırısı, muhtemelen daha güçlü anahtar/durum iyileştirme saldırısına olanak tanıyacaktır.
Saldırıların çoğu, Konst ve durum değerlerinin belirlenmesine ilişkin ilk opsiyona odaklanmaktadır. İlgili anahtar saldırılarının önem seviyesi düşüktür; çünkü birçok güvenlik sistemi, saldırganların gizli anahtarlar arasındaki ilişkileri öngörmesini engellemektedir. Ancak, SOBER-128’in bu tür saldırılara karşı koyması halen tercih edilmektedir.

MAC sahtecilik saldırılarının, MAC’ın oluşturulduğu esnada şifrelemenin LFSR durumunu öngörmesini gerekli kıldığı görülmektedir ve bu nedenle anahtar/durum iyileştirme saldırıları ile karşılaştırıldığında ikincil konumdadırlar. MAC çarpışma saldırıları iki mesaj arasındaki farklılıklara dayanmaktadır; bu çerçevede LFSR durumu farklılıklarının “iptal edilmesi” yüksek bir olasılık teşkil etmektedir. Ancak, anahtar akışın MFF’ye beslenmesinden kaynaklanan yüksek dağılım, diferensiyellerinin yüksek olasılık sergilemesini engellemektedir.

AYIRT EDİCİ SALDIRILAR (DİSTİNGUİSHİNG ATTACKS) HAKKINDA AÇIKLAMA

Hâlihazırda akış anahtarları ayırt edici saldırılarının karmaşıklığı hakkında birtakım tartışmalar söz konusudur. Kriptolojik topluluğun bazı üyeleri, akış şifrelemelerinin bazı durumlarda güvenli olmadığını iddia etmektedir – başarılı bir ayırt edici saldırı için veri ve hesap karmaşıklığının anahtar alanından daha küçük olması gibi. Örneğin; söz konusu kişiler, 280 anahtar akışı ifadesi ile 2100 hesap gerektiren ayırt edici saldırının söz konusu olması halinde SOBER-128’in güvenli olmadığını iddia edeceklerdir.
Kriptolojik topluluğun diğer üyeleri, akış şifrelemesinin belirli durumlarda güvenli olabileceğini iddia etmektedirler –başarılı bir ayırt edici saldırı için veri ve hesap karmaşıklığının diğer saldırı türleri için belirlenen limitlerden düşük olması durumunda. Söz konusu taraflar, 264 anahtar akış ifadesi ve 280 hesaplama gerektiren ayırt edici saldırılar söz konusu olsa dahi SOBER-128’in güvenli olduğunu iddia edeceklerdir. Tasarımcılar ikinci görüşü taşımalarına rağmen (akış şifrelemeleri, ayırt edici saldırıların karmaşıklığı anahtar alan sınırlarının ötesine düşmesine rağmen güvenli olabileceği) tasarımın hedefi 280‘den daha az anahtar akışı ifadeleri ile 2128‘den daha az hesaplama gerektiren ayırt edici saldırıların engellenmesidir. SOBER-128’in 280’den fazla ifadenin işlenmesinde kullanılmasına izin vermediğimiz için, bu tür bir saldırı, uygun şekilde kullanılan SOBER-128’e müdahale etmeyecektir. Kıyaslama yapıldığında, karşı moddaki AES-256, 266 anahtar akışı ifadeleri gerektiren ayırt edici saldırı içermektedir ve CBC-MAC modundaki AES-256 yaklaşık olarak aynı karmaşıklık düzeyinde ve veri gerekliliği içeren sahtecilik saldırısı içermektedir.

GÜVENLİK İDDİALARI

Herhangi bir SOBER-128 saldırısının kapsamlı bir anahtar araştırmayı aşan bir karmaşıklığa sahip olduğuna inanılıyor. Herhangi bir matematiksel güvenlik kanıtı ortaya koyulmuyor. SOBER-128 analizimiz aşağıdaki şekilde özetlenebilir:

•     Tahmin ve belirleme (GD – Guess
and Determine
) saldırılarının 2250‘yi aşan hesaplama karmaşıklığının olduğu görülmektedir.

•     Cebirsel saldırıların olası olmadığı görülmektedir.

•     Korelasyon temelli saldırılara LFRS (linear feedback shift register) ve NLF (nonlinear filtering – lineer olmayan maskeleme)
tarafından direnç gösterildiği görülmektedir.

•     Zamanlama saldırıları ve güç saldırıları, standart yollarla azaltılabilir; ilk anahtarlamanın ardından koşullu bir ifa söz konusu değildir.

•     Anahtar yüklemeden yararlanabilecek yollar konusunda farkındalık kazanmış değiliz.

•     Zayıf anahtarlar ya da zayıf anahtar sınıfları konusunda farkındalık kazanmış değiliz. Teorik olarak ilk durumun tamamen sıfır olması olasıdır; ancak bunun 128-bit gizli anahtar ve 128-bit IV (başlangıç vektörü) kullanımı durumunda gerçekleşemeyeceğine inanıyoruz. LFRS’nin MAC hesaplama esnasında tüm sıfırlı bir duruma geçmesi olasıdır; ancak bu durumda kalması oldukça düşük bir olasılık teşkil etmektedir.

SOBER-128 ANALİZİ

Bu analiz, SOBER-128’in bilinen düz metin saldırılarına karşı hassasiyetine odaklanmaktadır. Akış şifrelemesine yapılan bilinmeyen bir saldırı, düz metnin iyileştirilmesi ya da şifre saldırısı amacıyla istatistiksel çıktı akışı anormalliklerinden yararlanmaktadır. Temel LFRS’nin uygun istatistiksel özellikleri söz konusudur; bunlar korunmakta ve sonraki operasyonlarla geliştirilmektedir; bu nedenle bilinmeyen düz metin saldırısı riski söz konusu değildir.

NON-LİNEAR FİLTER (NLF) OF SOBER-128

(Lineer Olmayan Filtreleme)

SOBER 128 için Lineer Ayırt Edici

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir


+ 4 = altı