İçeriğe atla

GOST (blok şifresi)

Sovyet/Rus ulusal standart blok şifresi

GOST 28147-89 (RFC 5830) standardında tanımlanan GOST blok şifresi (Magma), blok boyutu 64 bit olan bir Sovyet ve Rus hükûmeti standardı simetrik anahtar blok şifresidir. 1989'da yayınlanan orijinal standart, şifreye herhangi bir isim vermemiştir, ancak standardın en son revizyonu olan GOST R 34.12-2015 (RFC 7801, RFC 8891), bunun Magma olarak adlandırılabileceğini belirtir. GOST karma işlevi bu şifreye dayanmaktadır. Yeni standart ayrıca Kuznyechik adlı yeni bir 128 bitlik blok şifrelemeyi de belirtir.[1]

1970'lerde geliştirilen standart, "Çok Gizli" olarak işaretlenmiş ve daha sonra 1990'da "Gizli" olarak düşürülmüştü. SSCB'nin dağılmasından kısa bir süre sonra, gizliliği kaldırıldı ve 1994'te halka sunuldu. GOST 28147, bir Sovyet idi. Amerika Birleşik Devletleri standart algoritmasına DES ‘e alternatiftir. Bu nedenle, ikisi yapı olarak çok benzer.

Algoritma

GOST, 64 bit blok boyutuna ve 256 bit anahtar uzunluğuna sahiptir. Bu S-box gizli olabilir ve yaklaşık 354 (log2(16!8)) bitlik gizli bilgi içerir, böylece etkin anahtar boyutu 610 bite çıkarılabilir. Ancak seçilen bir anahtar saldırısı, S-kutularının içeriğini yaklaşık 2^32 şifrelemede kurtarabilir.

GOST, 32 turluk bir Feistel ağıdır . Yuvarlak işlevi çok basittir: 32 bitlik bir alt anahtar modulo 2^32 ekleyin, sonucu bir S-box katmanından geçirin ve bu sonucu 11 bit sola çevirin. Bunun sonucu, round (yuvarlak) fonksiyonun çıktısıdır. Bitişik diyagramda, bir satır 32 biti temsil eder.

Alt anahtarlar önceden belirlenmiş bir sırayla seçilir. Anahtar programı çok basittir: 256-bit anahtarı sekiz 32-bit alt anahtara ayırın, her alt anahtar algoritmada dört kez kullanılır; ilk 24 tur anahtar kelimeleri sırasıyla kullanır, son 8 turda ise ters sırada kullanır.

S-kutuları dört bitlik bir girişi kabul eder ve dört bitlik bir çıkış üretir. Round (Yuvarlak) fonksiyondaki S kutusu ikamesi sekiz adet 4 × 4 S-kutusundan oluşur. S-kutuları uygulamaya bağlıdır, bu nedenle iletişimlerini GOST kullanarak güvenceye almak isteyen taraflar aynı S-kutularını kullanmalıdır. Ekstra güvenlik için S-kutuları gizli tutulabilir. GOST'un belirtildiği orijinal standartta, hiçbir S-kutusu verilmedi, ancak bir şekilde sağlanmaları gerekiyordu. Bu, hükümetin casusluk yapmak istediği kuruluşlara zayıf S-kutuları verildiği yönünde spekülasyonlara yol açtı. Bir GOST çip üreticisi, sahte rastgele sayı üreteci kullanarak S-kutularını kendisinin oluşturduğunu bildirdi.[2]

Örneğin, Rusya Federasyon Merkez Bankası aşağıdaki S-kutularını kullandı:

# S-box
1 4 A 9 2 D 8 0 E 6 B 1 C 7 F 5 3
2 E B 4 C 6 D F A 2 3 8 1 0 7 5 9
3 5 8 1 D A 3 4 2 E F C 7 6 0 9 B
4 7 D A 1 0 8 9 F E 4 6 C B 2 5 3
5 6 C 7 1 5 F D 8 4 A 9 E 0 3 B 2
6 4 B A 0 7 2 1 D 3 6 8 5 9 C F E
7 D B 4 1 3 F 5 9 0 A E 7 6 8 2 C
8 1 F D 0 5 7 A 4 9 2 3 E 6 B 8 C

Ancak standardın en son revizyonu olan GOST R 34.12-2015, eksik S-box spesifikasyonunu ekler ve aşağıdaki gibi tanımlar.[1]

# GOST R 34.12-2015 S-box
1 C 4 6 2 A 5 B 9 E 8 D 7 0 3 F 1
2 6 8 2 3 9 A 5 C 1 E 4 7 B D 0 F
3 B 3 5 8 2 F A D E 1 7 4 C 9 6 0
4 C 8 2 1 D 4 F 6 7 0 A 5 3 E 9 B
5 7 F 5 A 8 1 6 D 0 9 3 E B 4 2 C
6 5 D F 6 9 2 C A B 7 8 1 4 3 E 0
7 8 E 2 5 6 9 1 C F 4 B 0 D A 3 7
8 1 7 E D 0 5 8 3 4 F A 6 9 C B 2

Gost 28147-89 ve DES'e Göre Şifreleme Algoritmaları Arasındaki Farklar

GOST 28147-89'da açıklanan algoritmanın uzun bir süre için tasarlanmış olmasına rağmen, yeterli bir güvenlik marjına sahiptir. Bu, öncelikle şifreleme anahtarının uzun olmasından kaynaklanmaktadır.

Bildiğiniz gibi, modern şifreleme sistemlerinin geliştiricileri, şifreli mesajların gizliliğinin anahtarın gizliliği tarafından belirlenmesi ilkesine bağlı kalıyorlar. Bu, şifreleme algoritmasının kendisi kriptanalist tarafından bilinse bile, yine de ilgili anahtara sahip değilse mesajın şifresini çözemeyeceği anlamına gelir. DES ve GOST 28147-89 da dahil olmak üzere tüm klasik blok şifreleri bu prensibe uyar ve tüm anahtar alan üzerinde kaba kuvvetten daha verimli bir şekilde onları kırmanın bir yolu olmayacak şekilde tasarlanmıştır, yani tüm olası anahtar değerlerinin üzerinde. Bu tür şifrelerin gücünün, içlerinde kullanılan anahtarın boyutuna göre belirlendiği açıktır.

GOST 28147-89'da uygulanan şifre 256 bitlik bir anahtar kullanır ve anahtar alanının hacmi 2^256'dır. "DES ve AES Şifreleme Algoritmalarında" olduğu gibi, hesaplama kompleksinin tüm kuvvetlerinin, bir saniyede 10-12 (bu yaklaşık 2^40'a eşittir) anahtarları kaba kuvvetle kırmak için atıldığını ve ardından tüm 2^256 anahtarın eksiksiz bir numaralandırıldığını varsayıyoruz. 2.216 saniye sürecektir (bu sefer bir milyar yıldan fazladır).

DES ve GOST 28147 algoritmaları arasında önceden kaydedilmiş olan farklılıklara aşağıdakileri de ekleyebiliriz. DES'in ana turunda, orijinal mesajın düzensiz permütasyonları kullanılır; GOST 28147'de 11 bitlik dairesel sola kaydırma kullanılır. Son işlem, yazılım uygulaması için çok daha uygundur. Bununla birlikte, DES permütasyonu çığ etkisini artırır. GOST 28147'de, bir giriş bitindeki bir değişiklik, bir turda değiştirildiğinde 4 bitlik bir bloğu etkiler, bu daha sonra sonraki turun iki 4 bitlik bloğunu, bir sonraki turun üç bloğunu vb. Etkiler. GOST 28147, bir giriş bitini değiştirmeden önce sonucun her bitini etkilemeden önce 8 tur gerektirir; DES'in bunun için sadece 5 tura ihtiyacı var.

Ayrıca, DES'ten farklı olarak, GOST 28147-89'da, ikame işleminin gerçekleştirilmesi için ikame tablosunun isteğe bağlı olarak değiştirilebileceği, yani ikame tablosunun ek bir 512-bit anahtar olduğu da not edilmelidir.

GOST'un Kriptoanalizi

GOST'un en son kriptanaliz'i, teorik anlamda güvenli olduğunu göstermektedir. Uygulamada yayınlanan en iyi saldırıların veri ve bellek karmaşıklığı pratik düzeye ulaşırken, 2^64 veri mevcutken en iyi saldırının bile zaman karmaşıklığı hala 2^192'dir.

2007'den bu yana, azaltılmış GOST uygulamalarına ve/veya zayıf anahtarlara karşı çeşitli saldırılar geliştirilmiştir.[3]

2011'de birkaç yazar GOST'ta daha önemli kusurlar keşfetti ve ilk kez 32 turluk GOST'un tamamına rastgele tuşlarla saldırabildi. Hatta Nicolas Courtois tarafından "derinden kusurlu bir şifre" olarak adlandırıldı.[4][5] İlk saldırılar, büyük bellek gereksinimleri pahasına zaman karmaşıklığını 2 256'dan 2 228'e düşürmeyi başardı ve kısa süre sonra 2^178 zaman karmaşıklığına kadar geliştirildi (2^70 bellek ve 2^64 veri maliyeti pahasına).

Aralık 2012'de Courtois, Gawinecki ve Song, yalnızca 2^101 GOST turu hesaplayarak GOST'a yönelik saldırıları iyileştirdi. Isobe, Dinur, Dunkelman ve Shamir'in geliştirdiği, 2^32 veri, 2^36 bellek için 2^224 zaman karmaşıklığına ve 2^64 veri için 2^192 time zaman karmaşıklığına ulaşan Gost şifresinin tamamına tek bir anahtar saldırısı yayınlamıştı.[6]

Saldırılar, beklenen gücü 2^256'dan (anahtar uzunluğu) yaklaşık 2^178’e düşürdüğünden şifrenin kırılmış veya bozuk olabileceği kabul edilebilir. Bununla birlikte, blok boyutu n bit olan herhangi bir blok şifresi için, yeniden anahtarlama yapılmadan önce şifrelenebilecek maksimum düz metin miktarı the Birthday paradoks nedeniyle 2 N/2 bloktur ve yukarıda bahsedilen saldırıların hiçbiri daha az veri gerektirmez.

Ayrıca Bakınız

GOST Standards

Kaynakça

Konuyla ilgili yayınlar

• "WebCrypto GOST Library". Rudolf Nickolaev, WebCrypto GOST team.

• "RFC 5830: GOST 28147-89 encryption, decryption and MAC algorithms". IETF. March 2010.

• "RFC 4357: Additional Cryptographic Algorithms for Use with GOST". IETF. January 2006.

• Alex Biryukov & David Wagner (May 2000). Advanced Slide Attacks (PDF). Advances in Cryptology, Proceedings of EUROCRYPT 2000. Bruges: Springer-Verlag. pp. 589–606. doi:10.1007/3-540-45539-6_41. Retrieved 2007-09-03.

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">AES</span> Şifreleme standartı

AES, elektronik verinin şifrelenmesi için sunulan bir standarttır. Amerikan hükûmeti tarafından kabul edilen AES, uluslararası alanda da defacto şifreleme (kripto) standardı olarak kullanılmaktadır. DES'in yerini almıştır. AES ile tanımlanan şifreleme algoritması, hem şifreleme hem de şifreli metni çözmede kullanılan anahtarların birbiriyle ilişkili olduğu, simetrik-anahtarlı bir algoritmadır. AES için şifreleme ve şifre çözme anahtarları aynıdır.

Gizli anahtarlı şifreleme ya da simetrik şifreleme, kriptografik yöntemlerden, hem şifreleme hem de deşifreleme işlemi için aynı anahtarı kullanan kripto sistemlere verilen isimdir. Haberleşen tarafların aynı anahtarı kullanmaları gerektiği için burada asıl sorun anahtarın karşıya güvenli bir şekilde iletilmesidir. Simetrik şifreleme, anahtar karşıya güvenli bir şekilde iletildiği sürece açık anahtarlı şifrelemeden daha güvenlidir. Anahtar elinde olmayan birisi şifrelenmiş metni ele geçirse de şifrelenmiş metinden asıl metni bulması mümkün değildir. Simetrik şifrelemede haberleşen tarafların her biri için bir anahtar çifti üretilmelidir. Bu yüzden de çok fazla anahtar çifti üretilmesi gereklidir.

<span class="mw-page-title-main">DES</span>

Açılımı Data Encryption Standart olan simetrik şifreleme algoritmasıdır. 1997'de resmi bilgi şifreleme standardı olarak kabul edilirken, 2000'de yerini AES'e bırakmıştır.

<span class="mw-page-title-main">Transport Layer Security</span> Internet Şifreleme Protokolü

Taşıma Katmanı Güvenliği (TLS) ve onun öncülü/selefi olan Güvenli Soket Katmanı (SSL), bilgisayar ağı üzerinden güvenli haberleşmeyi sağlamak için tasarlanmış kriptolama protokolleridir. X.509 sertifikalarını kullanırlar ve bundan dolayı karşı tarafla iletişime geçeceklerin kimlik doğrulaması asimetrik şifreleme ile yapılır ve bir simetrik anahtar üzerinde anlaşılır. Bu oturum anahtarı daha sonra taraflar arasındaki veri akışını şifrelemek için kullanılır. Bu, mesaj/veri gizliliğine ve mesaj kimlik doğrulama kodları için mesaj bütünlüğüne izin verir. Protokollerin birçok versiyonu ağ tarama, elektronik mail, İnternet üzerinden faks, anlık mesajlaşma ve İnternet üzerinden sesli iletişim gibi uygulamalarda yaygın olarak kullanılmaktadır. Bu durumda/içerikte/bağlamda en önemli özellik iletme gizliliğidir. Bundan dolayı kısa süreli oturum anahtarı, uzun süreli gizli simetrik anahtardan türetilememelidir.

Blowfish, Bruce Schneier tarafından 1993 yılında tasarlanmış, çok sayıda şifreleyici ve şifreleme ürününe dahil olan; anahtarlanmış, simetrik bir Block Cipher dir. Blowfish ile ilgili olarak şu ana kadar etkin bir şifre çözme analizi var olmasa da, artık AES ya da Twofish gibi daha büyük ebatlı öbek şifreleyicilerine daha fazla önem verilmektedir.

<span class="mw-page-title-main">Simetrik anahtar algoritmaları</span>

Simetrik anahtar algoritmaları aynı ya da benzer kripto-grafik şifreleri kullanarak hem şifreleme hem de deşifreleme yapan bir kripto-grafik algoritma grubudur. Şifreler ya birebir aynı ya da basit bir yöntemle birbirine dönüştürülebilir olmalıdır. Pratikte anahtarlar gizli bağlantının devam ettirilmesinde kullanılan iki ya da daha fazla taraf ile paylaşılmış bir şifreyi temsil ederler. Açık anahtarlı şifrelemeye göre ana dezavantajlarından biri iki partinin de gizli anahtara erişiminin olması gerekliliğidir.

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.

<span class="mw-page-title-main">Üçlü DES</span>

Üçlü DES , 1978 yılında IBM tarafından geliştirilmiş olan bir şifreleme algoritmasıdır. Kaba Kuvvet(Brute Force) saldırılarına karşı koymakta zorlanan DES(Data Encryption Standart, Veri Şifreleme Standardı) algoritmasının üzerine geliştirilmiştir. Öncelikle DES algoritmasının en zayıf noktası olan S-Kutuların(S-Boxes) açıkları giderildi. Ardından bu algoritma art arda üç defa işleme konarak, 3DES algoritması oluşturuldu.

<span class="mw-page-title-main">SP ağı</span>

Kriptografide, SP-network ya da koyma-değiştirme ağı(SPN), AES (Rijndael), 3-Way, Kuznyechik, PRESENT, SAFER, SHARK ve Square gibi gibi blok şifreleme algoritmalarında kullanılan bir dizi bağlantılı matematiksel işlemdir.

<span class="mw-page-title-main">Anahtar çizelgesi</span>

Kriptografide ürün şifreleri, verilerin (de)şifrelenmesinin genelde çevrimlerin iterasyonu ile yapıldığı belirli türdeki şifrelemelerdir. Çevrim sabiti olarak adlandırılan çevrime özgü sabit değerler ve çevrim anahtarı olarak adlandırılan şifre anahtarından türetilmiş çevrime özgü veriler haricinde her bir çevrim için kurgu genellikle aynıdır. Anahtar çizelgesi, tüm çevrim anahtarlarını anahtardan hesaplayan bir algoritmadır.

Kriptografide Galois / Sayaç Modu (GCM), performansı sayesinde yaygın olarak benimsenen simetrik anahtar şifreleme blok şifrelemeleri için bir çalışma modudur. Son teknoloji ürünü olan GCM, yüksek hızlı iletişim kanalları için ucuz donanım kaynakları ile üretim hızlandırabilir. Bu operasyon, hem veri doğruluğu (bütünlük) hem de gizlilik sağlamak için tasarlanmış kimliği doğrulanmış bir şifreleme algoritmasıdır. GCM, 128 bit blok boyutuna sahip blok şifreleri için tanımlanmıştır. Galois İleti Kimlik Doğrulama Kodu (GMAC), arttırımlı ileti doğrulama kodu olan GCM'in sadece kimlik doğrulama türüdür. Hem GCM hem de GMAC, başlatma vektörleri keyfi uzunlukta kabul edebilir.

<span class="mw-page-title-main">Simon (şifreleme)</span>

Simon, Haziran 2013'te Ulusal Güvenlik Ajansı (NSA) tarafından halka açık bir şekilde yayınlanmış bir hafif blok şifreleme ailesidir. Simon, donanım uygulamaları için optimize edilmişken, kardeş algoritması Speck, yazılım uygulamaları için optimize edilmiştir.

Kriptografide, biçim korumalı şifreleme, çıktı ve giriş aynı formatta olacak şekilde şifreleme anlamına gelir. "Biçim" in anlamı değişir. Biçimin anlamı için tipik olarak sadece sonlu alanlar tartışılır, örneğin:

<span class="mw-page-title-main">RC5</span>

Kriptografide RC5, basitliği ile dikkat çeken simetrik - anahtar blok şifresidir. 1994 yılında Ronald Rivest tarafından tasarlanmıştır. RC, "Rivest Cipher" veya bir başka seçenek olarak "Ron's Code" anlamına gelmektedir. Gelişmiş Şifreleme Standardı(AES) adayı RC6 ve RC5 blok şifrelerine dayanıyordu.

Prince (şifre), düşük gecikmeli, kontrolsüz donanım uygulamalarını hedefleyen bir blok şifredir. Sözde FX yapısına dayanmaktadır. En dikkate değer özelliği "alfa yansımasıdır": Şifre çözme, hesaplanması çok ucuz olan bir anahtarla şifrelemedir. Diğer "hafif" şifrelerin çoğundan farklı olarak az sayıda tura sahiptir ve bir turu oluşturan katmanların mantık derinliği düşüktür. Sonuç olarak, tamamen kontrolsüz uygulama AES veya PRESENT'ten çok daha yüksek frekanslara ulaşabilir. Yazarlara göre aynı zaman kısıtlamaları ve teknolojiler için Prince, PRESENT- 80'den 6-7 kat ve AES 128' den 14-15 kat daha az alan kullanır.

<span class="mw-page-title-main">DES-X</span>

Kriptografide DES-X, DES simetrik anahtar blok şifresinin, anahtar beyazlatma adı verilen bir teknik kullanarak kaba kuvvet saldırısının karmaşıklığını artırmayı amaçlayan bir varyantıdır.

<span class="mw-page-title-main">Twofish</span> Blok şifreleme algoritması

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.

LEA, Hafif şifreleme algoritması(lea olarak da bilinir), 2013 yılında Güney Kore tarafından büyük veri ve bulut bilişim gibi yüksek hızlı ortamlarda ve ayrıca IoT cihazları ve mobil cihazlar gibi hafif ortamlarda gizlilik sağlamak için geliştirilen 128 bitlik bir blok şifrelemedir. LEA'nın 3 farklı anahtar uzunluğu vardır. 128,192 ve 256 bit. LEA, verileri çeşitli yazılım ortamlarında en yaygın olarak kullanılan blok şifresi olan AES'ten yaklaşık 1,5 ila 2 kat daha hızlı şifreler.

Kriptografide Lucifer, Horst Feistel ve IBM'deki meslektaşları tarafından geliştirilen en eski sivil blok şifrelerin birçoğuna verilen addı. Lucifer, Veri Şifreleme Standardının doğrudan öncüsüydü. Alternatif olarak DTD-1 olarak adlandırılan bir sürüm, 1970'lerde elektronik bankacılık için ticari kullanım gördü.