İçeriğe geç

SHA3-256 hash hesaplama

SHA-2’ye yapısal olarak farklı bir alternatif olarak standartlaştırılan, Keccak sünger yapılı 256 bit NIST hash’i.

En fazla 10 MiB; dosya tarayıcıdan çıkmaz.

Teknik özellikler

Çıktı
256 bit (64 hex karakter)
Standart
FIPS PUB 202
Tasarım
Bertoni, Daemen, Peeters, Van Assche, 2015
Güvenlik durumu
Güvenli
Hız
Standart

Araç hakkında

SHA3-256 nedir?

SHA3-256, 2015’te FIPS 202 ile standartlaşan SHA-3 ailesinin 256 bitlik üyesidir. SHA-2’den tamamen farklı bir iç yapıya, Keccak “sünger” (sponge) yapısına dayanır: girdi 1088 bitlik bloklar hâlinde 1600 bitlik bir duruma emilir, ardından çıktı bu durumdan sıkılır.

Çıktı 64 hex karakterdir. Çarpışma direnci 128 bit, ön görüntü direnci 256 bittir.

printf 'abc' | openssl dgst -sha3-256
3a985da74fe225b2045c172d6bd390bd855f086e3e9d525b46bfe24511431532
“abc” metninin SHA3-256 değeri. Bu araçta aynı girdi aynı sonucu verir.

SHA-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.

Kaynaklar

Aynı kategoride