Güçlü kriptoloji
Kriptografik güçlü algoritmalar

"Kriptografik olarak güçlü" terimi, genellikle bir şifreleme algoritmasını tanımlamak için kullanılır ve diğer bazı algoritmalara kıyasla (kriptografik olarak zayıftır), saldırıya karşı daha büyük direnç anlamına gelir. Ancak, karma ve benzersiz tanımlayıcı ve dosya adı oluşturma algoritmalarını tanımlamak için de kullanılabilir. Örneğin, Microsoft .NET çalışma zamanı kitaplığı işlevinin Path.GetRandomFileName açıklamasına bakın.1 Bu kullanımda, terim "tahmin edilmesi zor" anlamına gelir.
Şifreleme algoritmasının kırılmaz olması amaçlanmıştır (ki bu durumda olabileceği kadar güçlüdür), ancak kırılabilir olabilir (bu durumda olabileceği kadar zayıftır), bu nedenle prensipte bir şifreleme yoktur. Deyimin ima ettiği gibi güç sürekliliği: Algoritma A, Algoritma C'den daha güçlü olan Algoritma B'den daha güçlüdür, vb. Birçok kriptanalitik saldırı türü olduğu ve herhangi bir algoritmanın saldırganı tek saldırı kullanırken saldırıyı kırmak için daha fazla iş yapmaya zorlaması muhtemel olduğundan, durum daha karmaşık ve tek bir güç metriğine daha az dahil edilebilir hale getirilmiştir.
Bilinen tek bir kırılmaz kriptografik sistem vardır, tek kullanımlık şifreler, tek kullanımlık şifrelerin tehlikeye atılmadan değiştirilmesindeki zorluklar nedeniyle genellikle kullanılması mümkün değildir. Böylece herhangi bir şifreleme algoritması, mükemmel bir algoritma olan tek kullanımlık şifre ile karşılaştırılabilir.
Bu terimin (gevşek bir şekilde) kullanıldığı genel anlam, özellikle alana yeni başlayanlar için açıklamalarda, belirli bir saldırı, kaba kuvvet saldırısı (brute force) anahtar aramasına atıfta bulunur. Gerçekten de, bu saldırıyla (anahtarların her zaman rastgele seçildiği varsayılarak), kullanılan anahtarın uzunluğuna bağlı olarak sürekli bir direnç vardır. Ancak yine de iki büyük sorun vardır: birçok algoritma farklı zamanlarda farklı uzunluktaki anahtarların kullanımına izin verir ve herhangi bir algoritma mümkün olan tam anahtar uzunluğunun kullanılmasından vazgeçebilir. Bu nedenle, Blowfish ve RC5, tasarımları özellikle birkaç anahtar uzunluğu için izin verilen ve bu nedenle kaba kuvvet anahtar araması açısından herhangi bir özel güce sahip olduğu söylenemeyen blok şifreleme algoritmalarıdır. Ayrıca, ABD ihracat düzenlemeleri, ihraç edilebilir kriptografik ürünler için anahtar uzunluğunu kısıtlar ve 1980'lerde ve 1990'larda bazı durumlarda (örneğin, Lotus Notes'un ihracat onayı durumunda ünlü olarak) yalnızca kısmi anahtarlar kullanıldı, bu da kaba kuvvet saldırısına karşı 'gücü' azalttı. bu (dışa aktarma) sürümleri. Aşağı yukarı aynı şey, örneğin GSM cep telefonu standardındaki birden fazla kriptografik algoritma durumunda olduğu gibi, ABD dışında da oldu.
Terim, yaygın olarak, bazı algoritmaların kriptografi veya bilgi güvenliğindeki bazı görevler için uygun olduğunu, ancak aynı zamanda kriptanalize direndiğini ve güvenlik zayıflıklarının olmadığını veya daha az olduğunu belirtmek için kullanılır. Görevler çeşitlidir ve şunları içerebilir:
Rastgele üretmek
Verileri şifreleme
Veri bütünlüğünü sağlamak için bir yöntem sağlamak
Kriptografik olarak güçlü, açıklanan yöntemin bir tür olgunluğa sahip olduğu, hatta teoride veya pratikte farklı türdeki sistematik saldırılara karşı kullanım için onaylanmış olduğu anlamına gelir. Gerçekten de, yöntem bu saldırılara, taşınan bilgiyi (ve bilginin arkasında duranı) faydalı bir süre boyunca korumaya yetecek kadar uzun süre direnebilir. Ancak alanın karmaşıklığı ve inceliği nedeniyle, ikisi de neredeyse hiç böyle değildir. Bu tür güvenceler gerçek uygulamada fiilen mevcut olmadığından, onların var olduğunu ima eden dilde el çabukluğu genellikle yanıltıcı olacaktır.
Gelişmeler (örneğin, kriptanalitik teoride veya yalnızca uygun fiyatlı bilgisayar kapasitesinde) bir algoritmaya karşı bazı saldırı yöntemlerini başarılı bir şekilde kullanmak için gereken çabayı azaltabileceğinden her zaman belirsizlik olacaktır.
Ek olarak, kriptografik algoritmaların fiili kullanımı, bunların bir şifreleme sisteminde kapsüllenmesini gerektirir ve bunu yapmak genellikle bir algoritmadaki hatalardan kaynaklanmayan güvenlik açıklarını ortaya çıkarır. Örneğin, tüm algoritmalar rastgele anahtar seçimi gerektirir ve bu tür anahtarları sağlamayan herhangi bir şifreleme sistemi, kullanılan şifreleme algoritmasının/algoritmalarının saldırıya dayanıklı özelliklerinden bağımsız olarak saldırıya maruz kalacaktır.