Açıklama
Hash Oluşturucu nasıl çalışır
Hash üreteci, isteğe bağlı metinler için kriptografik sağlama toplamlarını doğrudan tarayıcıda hesaplar. Girilen metin UTF-8 olarak kodlanır ve seçilen SHA algoritması tarafından işlenir.
SHA-256 en yaygın algoritmadır ve 256 bitlik bir hash (64 hex karakter) üretir. SHA-384 96 hex karakter, SHA-512 128 hex karakter üretir. Bu algoritmalar, NIST tarafından FIPS 180-4'te standartlaştırılan SHA-2 ailesine aittir.
Hex ve standart Base64 aynı digest baytlarını gösterir. Base64 daha kompakttır ancak duruma göre +, / ve dolgu içerebilir ve otomatik olarak URL-güvenli değildir.
Sık yapılan hatalar
- Hash'lemeyi şifrelemeyle karıştırmak: Bir hash geri döndürülebilir bir düz metin gösterimi değildir. Şifreleme farklı bir amaca hizmet eder ve doğru anahtarla geri döndürülebilir.
- Güvenlik amaçları için MD5 veya SHA-1 kullanmak: Her iki algoritmanın da bilinen çakışma saldırıları vardır ve BSI TR-02102-1'e göre güvensiz sayılır.
- SHA hash'lerini parola saklama için kullanmak: Basit SHA hash'leri çok hızlı hesaplanabilir. Salt ve iş faktörü ile bcrypt, scrypt veya Argon2 kullan.
- Hash eşitliğini kimlik olarak yorumlamak: Eşit hash'ler son derece yüksek olasılıkla eşit giriş anlamına gelir, ancak mutlak kesinlikle değil (teorik çakışma olasılığı).
Bu aracın sınırları
- Salting fonksiyonu yok — parola saklama için uygun değil.
- Yalnızca metin girişi, dosya yok (dosya hash'leri için özel araçlar kullan).
- HMAC modu yok (anahtarlı hash'leme) — yalnızca basit hash hesaplama.
- Bilinen hash değerlerine karşı doğrulama entegre değil.
- Boşluklar, satır sonları ve Unicode normalleştirme birleştirilmez, UTF-8 girişinin parçası olarak hash'lenir.
Kaynaklar
- BSI TR-02102-1: Kriptografik yöntemler — öneriler ve anahtar uzunlukları. Alman Federal Bilgi Güvenliği Dairesi.
- NIST FIPS 180-4: Secure Hash Standard (SHS). SHA-256, SHA-384, SHA-512'yi tanımlar.
- RFC 1321: MD5 Message-Digest Algorithm (tarihsel, güvenlik için önerilmez).
- Web Crypto API: Tarayıcıda kriptografik işlemler için W3C standardı (crypto.subtle.digest).