Araç hakkında
SHA3-384 nedir?
SHA3-384, 2015’te FIPS 202 ile standartlaşan SHA-3 ailesinin 384 bitlik üyesidir. SHA-2’den tamamen farklı bir iç yapıya, Keccak “sünger” (sponge) yapısına dayanır: girdi 832 bitlik bloklar hâlinde 1600 bitlik bir duruma emilir, ardından çıktı bu durumdan sıkılır.
Çıktı 96 hex karakterdir. Çarpışma direnci 192 bit, ön görüntü direnci 384 bittir.
printf 'abc' | openssl dgst -sha3-384
ec01498288516fc926459f58e2c6ad8df9b473cb0fc08c2596da7cf0e49be4b298d88cea927ac7f539f1edf228376d25SHA-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.