GÜNCELLEME: Geçenlerde bu sorudan aşağıdaki tartışmanın tamamında benim (ve diğerlerinin de yaptığından eminim) biraz kafa karıştırıcı olduğunu öğrendim: Gökkuşağı tablosu dediğim şeye aslında karma tablo deniyor. Gökkuşağı masaları daha karmaşık yaratıklardır ve aslında Hellman Hash Chains'in bir çeşididir. Cevabın hala aynı olduğuna inanıyorum (kriptanalize gelmediği için), tartışmanın bir kısmı biraz çarpık olabilir.
Soru: " Gökkuşağı tabloları nedir ve nasıl kullanılır? "
Tipik olarak, Rainbow Table saldırılarına karşı koruma gibi karma işlevlerle (örneğin parolalar için) kullanılmak üzere tuz olarak kriptografik açıdan güçlü bir rastgele değeri her zaman kullanmanızı öneririm.
Ancak tuzun rastgele olması aslında kriptografik olarak gerekli midir? Bu bağlamda herhangi bir benzersiz değer (kullanıcı başına benzersiz, örneğin kullanıcı kimliği) yeterli olur mu? Aslında, sistemdeki tüm (veya çoğu) şifreleri kırmak için tek bir Gökkuşağı Tablosunun kullanılmasını engeller ...
Fakat entropi eksikliği, hash fonksiyonlarının kriptografik gücünü gerçekten zayıflatır mı?
Not, tuzun neden kullanıldığını, nasıl korunacağını (olması gerekmiyor), tek bir sabit karma (yapma) kullanarak veya ne tür bir karma işlevi kullanacağımı sormuyorum.
Sadece tuzun entropiye ihtiyacı olup olmadığı.
Şimdiye kadarki cevaplar için hepinize teşekkürler, ancak (biraz) daha az aşina olduğum alanlara odaklanmak istiyorum. Temelde kriptanaliz için çıkarımlar - eğer herhangi biri kripto-matematiksel PoV'den bir bilgi alırsa çok memnun olurum.
Ayrıca, dikkate alınmamış ek vektörler varsa, bu da harika bir girdidir (çoklu sistemlerde @Dave Sherohman noktasına bakın).
Bunun ötesinde, herhangi bir teoriniz, fikriniz veya en iyi uygulamanız varsa - lütfen bunu ya kanıt, saldırı senaryosu ya da ampirik kanıtlarla destekleyin. Ya da kabul edilebilir değiş-tokuşlar için geçerli mülahazalar ... Konuyla ilgili En İyi Uygulamaya (büyük B büyük P) aşinayım, bunun gerçekte hangi değeri sağladığını kanıtlamak istiyorum.
DÜZENLEME: Burada gerçekten iyi cevaplar var, ama bence @ Dave'in dediği gibi, ortak kullanıcı adları için Rainbow Tablolarına geliyor ... ve olası daha az yaygın isimler de. Ancak, kullanıcı adlarım küresel olarak benzersizse ne olur? Sistemim için mutlaka benzersiz değil, ancak her kullanıcı için - örneğin e-posta adresi.
Tek bir kullanıcı için bir RT oluşturmak için herhangi bir teşvik olmayacaktır (@Dave'in vurguladığı gibi, tuz gizli tutulmamaktadır) ve bu yine de kümelenmeyi engelleyecektir. Tek sorun, farklı bir sitede aynı e-posta ve şifreye sahip olabileceğim olabilir - ancak tuz zaten bunu engellemez.
Öyleyse, kriptanalize geri dönüyor - Entropi gerekli mi, değil mi? (Şu anki düşüncem, kriptanaliz açısından gerekli değil, ancak diğer pratik nedenlerden kaynaklanıyor.)