Araç hakkında
SHA3-224 nedir?
SHA3-224, 2015’te FIPS 202 ile standartlaşan SHA-3 ailesinin 224 bitlik üyesidir. SHA-2’den tamamen farklı bir iç yapıya, Keccak “sünger” (sponge) yapısına dayanır: girdi 1152 bitlik bloklar hâlinde 1600 bitlik bir duruma emilir, ardından çıktı bu durumdan sıkılır.
Çıktı 56 hex karakterdir. Çarpışma direnci 112 bit, ön görüntü direnci 224 bittir.
printf 'abc' | openssl dgst -sha3-224
e642824c3f8cf24ad09234ee7d3c766fc9a3a5168d0c94ad73b46fdfSHA-2 yerine ne zaman seçilir?
- Sünger yapısı uzunluk uzatma (length extension) saldırısına karşı doğal olarak dayanıklıdır;
H(gizli || mesaj)gibi basit yapılar SHA-2’deki kadar tehlikeli değildir (yine de MAC için HMAC veya KMAC tercih edin). - SHA-2’de ileride bir zayıflık bulunması ihtimaline karşı farklı tasarımlı bir yedek isteyen sistemlerde.
- SHA-2 donanım hızlandırması (Intel SHA-NI, ARMv8) daha yaygın olduğundan, performans önemliyse SHA-256 / SHA-512 çoğu işlemcide daha hızlıdır.
Ethereum’un kullandığı Keccak-256, SHA3-256 ile aynı değildir; dolgu kuralı farklıdır. Ethereum için Keccak-256 aracını kullanın.
Sık sorulan sorular
Komut satırında farklı bir sonuç alıyorum, neden?
echo abc metnin sonuna satır sonu ekler ve hash bu karakteri de içerir. Aynı sonucu almak için printf 'abc' veya echo -n abc kullanın. Bu araç metni yazdığınız gibi, UTF-8 baytları olarak hash’ler.