SHA-224 ve SHA-256 neden farklı başlangıç ​​değerleri kullanıyor?


9

Wikipedia - SHA-2 diyor

SHA-224, aşağıdakiler dışında SHA-256 ile aynıdır:

  • başlangıç ​​değişken değerleri h0 ila h7 farklıdır ve
  • çıktı h7 çıkartılarak oluşturulur.

RFC3874 - 224 bit Tek Yönlü Karma İşlevi: SHA-224 diyor

Farklı bir başlangıç ​​değerinin kullanılması, kesilmiş bir SHA-256 mesaj özeti değerinin aynı veriler üzerinde hesaplanan bir SHA-224 mesaj özeti değeri ile karıştırılmamasını sağlar.

Sorularım:

  1. Yukarıda belirtilen neden SHA-224 ve SHA-256'nın farklı başlangıç ​​değerleri kullanmasının tek nedeni midir?

  2. Bir SHA-256 ileti özet değerinin bir SHA-224 ileti özet değeri ile karıştırılamayacağından emin olmak neden önemlidir?

  3. Her iki karma işlevi için aynı başlangıç ​​değerlerini kullanırsak, iki karma işlevinin güvenliği de kötüleşir mi? Evet ise, nasıl?


7
Bu neredeyse kesinlikle kripto için daha uygun .
Peter Taylor

1
En azından 2. soru burada konu dışı görünüyor. Sonuçta, insanların bilgisayarları nasıl kullandıkları ve onlar için neyin uygun olduğu ile ilgilidir; bir TCS sorusu değil.
Jukka Suomela

Yanıtlar:


4
  1. Bu, farklı çıktı boyutu için aynı algoritmayı kullandığımızda Domain Separation adını verdik.
  2. Ayırma gereklidir, çünkü karma değeri (SH256) olan iki mesaj bulduysam, sadece son sekizlide farklıdır ve daha sonra karma değerini SHA224 kullandığımı gösteren ilk 7 sekizli olarak yayınlayabilirim. Zaten sahtekarlık saldırısı için daha sonra kullanabileceğiniz SHA224 üzerinde çarpışan iki mesajım var. Etki alanı ayırmayı kullanarak bu tür durumlardan kaçınabiliriz
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.