Foruma hoş geldin 👋, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Blok şifreleme

bullvar_katip

Administrator
Katılım
21 Mayıs 2024
Mesajlar
532,105
Kriptografide blok şifreleme, blok olarak adlandırılmış sabit uzunluktaki bit grupları üzerine simetrik anahtar ile belirlenmiş bir deterministik algoritmanın uygulanmasıdır. Blok şifreleme birçok kriptografik protokol tasarımının önemli temel bileşenlerindendir, ve büyük boyutlu verilerin şifrelemesinde yaygın biçimde kullanılmaktadır. Bileşke şifreleme, tek başına zayıf olan kriptografik yapıların bir araya getirilerek daha kuvvetli bir yapının oluşmasıyla elde edilir. Blok şifrelemenin temelinde tekrarlanan bileşke şifreleme vardır. 1949 yılında, yeni ufuklar açan yayını Gizlilik Sistemlerin Haberleşme Teorisi ile Claude Shannon bileşke şifrelemeyi önerip analiz ederek, substitüsyon ve permutasyon gibi iki basit operasyonu birleştirip etkin biçimde güvenliği artırmıştır. Şifreleme işlemi, tekrarlanan bileşke şifre kullanılarak birden çok raundda gerçekleşir, ve her raundda ana anahtardan üretilmiş farklı bir alt anahtar kullanılır. Bu tür şifrelerin yaygın bir uygulaması da Horst Feistel tarafından adlandırılmış olan ve özellikle de DES şifrelemedeki kullanımıyla dikkat çeken Feistel ağıdır. Diğer birçok blok şifreleme yapısı ise AESde olduğu gibi substitüsyon-permutasyon ağıdır. 1997 yılında ABD Ulusal Standartlar Bürosu (şimdiki adı [National Institute of Standards and Technology], NIST) tarafından DES şifrelemenin yayınlanması, modern blok şifreleme dizaynı için bir temel oluşturmuştur. Aynı şekilde akademik kriptanaliz yöntemlerinin gelişmesini de etkilemiştir. Diferansiyel ve lineer kriptanaliz yöntemleri DES dizaynı üzerine çalışmasıyla ortaya çıktı. Günümüzde, bir blok şifreleme birçok atak tekniğine karşı güvenli olmalıdır, ve kaba kuvvet saldırılarına karşı da dayanıklı olmalıdır. Güvenli bir blok şifreleme tek bir bloğun sabit bir anahtar kullanılarak şifrelenmesi için uygundur. Şifreleme ve kimlik doğrulama gibi güvenlik hedeflerine ulaşabilmek için çoklu blok şifre çalışma kipleri dizayn edilmiştir. Bununla birlikte, evrensel özet fonksiyonu ve sözderastlantısal sayı üreteci gibi diğer kriptografik protokollerde blok üretimi için de blok şifreleme kullanılmaktadır. Ek ücret değerlendirilmesi için de blok şifresi girilmelidir. Tanım Bir blok şifreleme iki algoritmadan oluşur, birincisi şifreleme için, E, ve ötekisi şifreyi çözmek için, D. Her iki algoritma da iki adet girdi alır, n bit uzunluğunda bir blok ve k bit uzuluğunda bir anahtar; ve her ikisi de çıktı olarak n bit uzunluğunda blok üretir. Şifre çözme algoritması D şifrelemenin ters fonksiyonudur, yani D = E. Biçimsel olarak , şifreleme fonksiyonu şeklinde tanımlanmıştır. Fonksiyon girdi olarak k bit anahtar uzunluğuna sahip anahtar K, ve n bit blok uzunluğuna sahip P dizisi alarak n bitlik C dizisini üretiyor. P şifresiz metin, ve C ise şifreli metin olarak adlandırılır. Her K için, E(P) fonksiyonu {0,1} üzerinde tersi alınabilir olmalıdır. E fonksiyonunun tersi şeklinde tanımlanmıştır. Fonksiyon girdi olarak anahtar K ve şifreli metin C alıp, çıktı olarak şifresiz metin P vermektedir, öyle ki Örneğin, bir blok şifreleme algoritması girdi olarak 128-bit şifresiz metin alarak, çıktı olarak 128-bit şifreli metin verebilir. Asıl dönüşümü sağlayan ikinci girdi olan gizli anahtardır. Şifre çözme de aynı şekildedir: şifre çözme algoritması 128-bit şifreli metinle beraber gizli anahtarı alarak çıktı olarak 128-bitlik orijinal şifresiz metni oluşturur. Her anahtar K için, E girdi blokları kümesi üzerine bir permutasyondur (bijeksiyon eşlemesi). Her anahtar olası permutasyondan bir adet seçer. Dizayn Tekrarlanan Blok Şifreler Çoğu blok şifre tekrarlaran blok şifreler olarak sınıflandırılır, yani şifresiz metin sabit boyutta bloklara bölünerek aynı boyuttaki şifreli metin bloklarına dönüştürülür, ve bu tekrarlanan tersi alınabilir dönüşüme raund fonksiyonu adı verilirken, her bir tekrara da "raund" denir. Raund fonksiyonu R genellikle ikinci girdi olarak orijinal anahtardan üretilen raund anahtarı K alır: ve burada r raund sayısı olmak üzere şifresiz metin ve ise şifreli metindir. Buna ek olarak anahtar beyazlatma sık olarak kullanılır. Başta ve sonda veri anahtar malzemesi ile modifiye edilir (genellikle XOR kullanılır, ama toplama ve çıkarma gibi basit aritmetik işlemleri de kullanılabilir): Substitüsyon-Permutasyon Ağı küçükresim|upright=0.91|sağ|16-bit şifresiz metnin 16-bit şifreli metine dönüştürüldüğü 3 raundluk substitüsyon-permutasyon ağı krokisi. S-kutuları S, P-kutuları P, ve raund anahtarları K’dır. Diğer bir önemli tekrarlanan blok şifre türüyse substitüsyon-permutasyon ağıdır. Burada şifreli metin bloğu ve anahtar girdi olarak alınır, ve birbirlerini izleyen raundlarda substitüsyon aşaması ve ardından permutasyon aşamasıyla her bloğa ait şifreli metinler üretilir. Lineer olmayan substitüsyon aşamasında şifresiz metin bitleri anahtar bitleri ile karıştırılarak Shannon'un karışıklığı elde edilir. Lineer olan permutasyon aşamasında ise bitler dağıtılarak diffüzyon sağlanır. Substitüsyon kutusu (S-kutusu) kullanılarak girdi olarak alınan ufak bit bloklarından çıktı olarak başka bit blokları elde edilir. Tersinin olması için substitüsyon birebir olmalıdır. Güvenli bir S-kutusunda bir girdi biti değiştirilirse çıktı bitlerinin ortalama yarısı değişmelidir, yani her çıktı biti tüm girdi bitlerine bağlıdır. Permutasyon kutusu (P-kutusu) tüm bitlerin yer değiştirmesidir: bir raunddaki tüm S-kutularının çıktılarını alıp bitlerin yerleri değiştirir ve bir sonraki raunddaki S-kutularına girdi olarak verir. İyi bir P-kutusu herhangi bir S-kutusunun çıktısını mümkün olduğunca fazla S-kutusuna dağıtabilmelidir. Her raundda ana anahtardan üretilen raund anahtarları bazı grup operasyonları kullanılarak işleme dahil edilir. Burada genellikle XOR işlemi kullanılır. Şifreyi çözme ise tüm bu işlemleri tersten yapılmasıyla kolayca yapılır. Feistel Ağı küçükresim|sağ|upright=1.2|DES ve Blowfish gibi birçok blok şifrede Fiestel ağ yapısı kullanılmıştır. Feistel ağında, şifrelenecek olan şifresiz metin bloğu iki eşit uzunluktaki parçaya ayrılır. Alt anahtar kullanılarak raund fonksiyonu bu yarımlardan birine uygulandıktan sonra öteki yarı ile XOR'lanır. Ardından iki yarı yer değiştirir. raund fonksiyonu olsun, ve için sırasıyla alt anahtarlar olsun. Basit işleyiş şu şekildedir: Şifresiz metin bloğu iki eşit uzunluktaki parçaya ayrılır, (, ) numaralı her raund için hesapla. Sonrasında şifreli metindir. şifreli metnini çözme işlemi, için sırasıyla hesaplanmasıyla elde edilir. Ardından şifresiz metindir. Feistel ağının subtitüsyon-permutasyon ağına göre bir avantajı ise raund fonksiyonun tersinin olma zorunluluğunun olmamasıdır. Çalışma Kipleri Kriptografide çalışma kipleri, bir blok şifrenin tek bir anahtar altında güvenli bir şekilde tekrarlı kullanımına olanak veren yöntemlerdir. Değişken uzunluktaki mesajları işlemek için veriler ayrı parçalara bölünmelidir. Son parça şifrenin blok uzunluğuna uyacak şekilde uygun bir tamamlama şeması ile uzatılmalıdır. Bir çalışma kipi bu bloklardan her birini şifreleme şeklini tanımlar ve genellikle bunu yapmak için ilklendirme vektörü (IV) olarak adlandırılan rastgele oluşturulmuş fazladan bir değer kullanır. Çalışma kipleri özellikle şifreleme ve kimlik doğrulamada kullanılmak üzere oluşturulmuştur. Tarihsel olarak çalışma kipleri çeşitli veri değiştirme senaryoları altında hata yayılma özellikleri bakımında geniş bir biçimde çalışılmıştır. Bütünlük koruması şifrelemeden tamamen farklı bir kriptografik amaç olarak doğmuştur. Kimlik doğrulamalı şifreleme kipi olarak bilinen bazı modern çalışma kipleri şifreleme ve kimlik doğrulamayı verimli bir şekilde birleştirmiştir. Çalışma kipleri çoğunlukla simetrik şifrelemeyle ilişkilendirilmiş olsa da teoride RSA gibi açık anahtarlı şifreleme yöntemlerinde de kullanılabilir. (Ancak uygulamada uzun mesajların açık anahtarla şifrelenmesi genellikle melez şifreleme kullanılarak yapılır. Dolgu CBC gibi bazı modlar tam şifresiz metin blokları üzerinde çalışmak ister. Son bloğu 0-bitleri ile tamamlamak işe yaramaz, çünkü alıcı orijinal mesajla tek farkı dolgu olan yeni mesajı ayırt edemeyebilir. Daha da önemlisi böyle bir çözüm dolgu kâhin atağı ile sorun çıkarabilir. Bu nedenle daha iyi bir dolgu şeması gerekmektedir. ISO/IEC 9797-1'de dolgu metodu 2 olarak geçen yöntem kullanılmaktadır: mesaja 1-bit'i ekleyip son blok 0-bit ile tamamlanır. Bu tür ataklara karşı güvenilirliği ispatlanmıştır. Kriptanaliz Kaba kuvvet ataklar Blok şifrelemenin tersine çevrilebilir fonksiyonundan dolayı, doğumgünü problemi kullanılarak blok şifre çıktısının zamanla gerçek rastgeledizilerden ayırt edilebileceğini söyleyebiliriz. Bu özellikten ötürü sistemin güvenliği blok uzunluğunun karekökü ile orantılıdır. Blok uzunluğunu çok büyük seçmek ise performans kaybına sebep olacaktır, bu yüzden aradaki dengeyi korumak gerek. Eski blok şifrelerden DES 64-bit blok uzunluğu kullanıyorken, yeni olan AES ise 128-bit kullanmaktadır. Farksal Kriptanaliz Doğrusal Kriptanaliz İntegral Kriptanaliz İspatlanabilir güvenlik Standart model İdeal şifreleme modeli Pratik değerlendirme Pratikte blok şifreleme birçok alanda değerlendirilebilir. Ortak faktörler: Anahtar ve blok uzunluğu gibi temel parametreler güvenlik için bir üst limit oluştururlar. Tahmini güvenlik seviyesi, algoritma açıklandıktan sonra yapılan kriptanalizler, matematiksel dayanakları ve mevcut atak türleri ile ölçülür. Karmaşıklık, şifrelemenin donanım ve yazılım üzerine uygulamalarının sonuçları ile ölçülür. Performans ölçümü sırasında çeşitli platformlardaki çalışmaları göz önüne alınır, ve buna gerekli olan bellek miktarı da dahil edilir. Esneklik ise şifrelemenin çeşitli blok ve anahtar boyutlarını desteklemesidir. Dikkate değer blok şifrelemeler DES AES Blowfish IDEA Ayrıca bakınız Kriptografi Kaynakça Konuyla ilgili yayınlar Dış bağlantılar A list of many symmetric algorithms, the majority of which are block ciphers. The block cipher lounge What is a block cipher? from RSA FAQ Kategori:Kriptoloji Kategori:Arap icatları
 

Tema özelleştirme sistemi

Bu menüden forum temasının bazı alanlarını kendinize özel olarak düzenleye bilirsiniz.

Zevkine göre renk kombinasyonunu belirle

Tam ekran yada dar ekran

Temanızın gövde büyüklüğünü sevkiniz, ihtiyacınıza göre dar yada geniş olarak kulana bilirsiniz.

Izgara yada normal mod

Temanızda forum listeleme yapısını ızgara yapısında yada normal yapıda listemek için kullanabilirsiniz.

Forum arkaplan resimleri

Forum arkaplanlarına eklenmiş olan resimlerinin kontrolü senin elinde, resimleri aç/kapat

Sidebar blogunu kapat/aç

Forumun kalabalığında kurtulmak için sidebar (kenar çubuğunu) açıp/kapatarak gereksiz kalabalıklardan kurtula bilirsiniz.

Yapışkan sidebar kapat/aç

Yapışkan sidebar ile sidebar alanını daha hızlı ve verimli kullanabilirsiniz.

Radius aç/kapat

Blok köşelerinde bulunan kıvrımları kapat/aç bu şekilde tarzını yansıt.

Foruma hoş geldin 👋, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Geri