Hash Generator

MD5 Hash Oluşturucu: Hızlı Hash Hesaplama Aracı

Metinlerden MD5 hash oluşturun. MD5, 128-bit (32 hex karakter) özet üretir. Sağlama toplamı doğrulama ve MD5'in neden güvenlik için kırık olduğunu kapsar.

Verileriniz tarayıcınızdan çıkmaz.

Hash'ler
MD5
SHA-1
SHA-256
SHA-512

MD5 Hash Oluşturucu

The quick brown fox jumps over the lazy dog metninin MD5 hash’i 9e107d9d372bb6826bd81d3542a419d6’dır. MD5, herhangi bir girdiden sabit 128-bit çıktı (32 hex karakter) üretir. Hızlıdır, yaygın olarak desteklenir ve 2004’ten beri güvenlik amaçları için kriptografik olarak kırıktır.

Hash Sonucu

9e107d9d372bb6826bd81d3542a419d6

Bunu herhangi bir yerde doğrulayabilirsiniz:

# Linux / macOS
echo -n "The quick brown fox jumps over the lazy dog" | md5sum

# macOS alternatifi
echo -n "The quick brown fox jumps over the lazy dog" | md5

# Python
import hashlib
hashlib.md5(b"The quick brown fox jumps over the lazy dog").hexdigest()

# Node.js
const crypto = require('crypto');
crypto.createHash('md5').update('The quick brown fox jumps over the lazy dog').digest('hex');

echo üzerindeki -n bayrağı, sondaki yeni satırı bastırır. Bu olmadan, farklı bir string hash’lersiniz ve farklı bir sonuç alırsınız.

MD5 Neden Kriptografik Olarak Kırıktır

Temel saldırı bir çarpışmadır: aynı MD5 hash’ini üreten iki farklı girdi. Xiaoyun Wang’in 2004 makalesi bunun makul miktarda hesaplama ile başarılabileceğini gösterdi. 2008’de saldırı, bir araştırmacı ekibinin bir Sertifika Otoritesi sertifikasında tahrifat yapmak için kullanabileceği kadar pratiktir. MD5’te çarpışan bir çift sertifika imzalama isteği oluşturdular, meşru bir CA’ya birini imzalattılar ve ayrıca hazırladıkları kötü amaçlı sertifikayı da kapsayan geçerli bir imzaya sahip oldular. Bu, herhangi bir alan adı için güvenilir SSL sertifikaları vermelerine izin verdi.

Flame kötü amaçlı yazılımı 2012’de, kötü amaçlı Windows güncellemelerinin Microsoft tarafından imzalanmış gibi görünmesini sağlamak için aynı tekniği kullandı. Çarpışma bir küme üzerinde hesaplandı, ancak teknik kanıtlanmıştı.

Bunun Pratikte Anlamı

MD5 çarpışması, seçilmiş önekli bir çarpışmadır: bir saldırgan, her iki önekin de saldırganın kontrolü altında olduğu, aynı MD5 hash’ine sahip iki belge hazırlayabilir. Bu, sertifika tahrifatını mümkün kılan saldırıdır. Bir sistem, A belgesinin B belgesi ile değiştirilmediğini doğrulamak için MD5’e güveniyorsa, bu güven kırılabilir.

MD5’in Hala Kabul Edilebilir Olduğu Yerler

MD5’in kırık durumu, bir düşmanın çarpışma üretmeye çalıştığı güvenlik bağlamları için geçerlidir. Birçok meşru kullanım, çarpışma üretmeye çalışan bir düşman içermez:

Dosya tekilleştirme

Depolama sistemleri, yinelenen dosyaları tespit etmek için MD5 kullanır. MD5 çarpışmaları hazırlanmış dosyaları yükleyebilen bir saldırgan, hash çarpışması riskinden çok daha büyük bir sorundur. Amazon S3, ağ üzerinden yükleme bütünlüğü için MD5 sağlama toplamlarını kabul eder (bit takla tespiti, düşmanca doğrulama değil).

Önbellek anahtarları ve ETag’ler

Web sunucuları, dosya içeriğinin MD5’ini sık sık ETag olarak kullanır. Bu bir performans optimizasyonu ve tesadüfi bir tekilleştirme mekanizmasıdır, güvenlik garantisi değil.

Hash tablosu dağıtımı ve veritabanı parçalama

MD5’in çıktısı iyi dağılır ve hızlıdır. Bir anahtarı hash’leyerek veriyi parçalayan sistemler, güvenlik etkisi olmaksızın bunun için genellikle MD5 kullanır.

Eski sistemler

Pek çok kod, saldırılar gösterilmeden önce yazıldığı veya hiç değiştirilmesi gerekmediği için hala MD5 kullanır. MD5 yazan bir logda bir özet okuyorsanız, sorulması gereken soru şudur: buradaki gerçek güven modeli nedir?

MD5’in Kullanılmaması Gereken Yerler

Parola hash’leme

MD5 çok hızlıdır. GPU’ya sahip bir saldırgan saniyede milyarlarca MD5 hash’i hesaplayabilir. Sızıntı yapmış bir veritabanına karşı tuzlu MD5 bile kırılabilir. bcrypt, Argon2 veya scrypt kullanın; bunlar kasıtlı olarak yavaş ve bellek yoğundur.

Dijital imzalar

İmza şemaları, imzalamadan önce belgeyi hash’ler. Bir saldırgan aynı hash’e sahip iki belge hazırlayabilirse, zararsız olanın imzasını alabilir ve bunu kötü amaçlı olana uygulayabilir.

TLS sertifikaları

SHA-256, 2017’den beri sertifika imzaları için gerekli olmuştur. MD5 sertifika hash’lemesi tüm modern tarayıcılar tarafından reddedilir.

Güvenlik indirmeleri için dosya bütünlüğü

Bir ikili dosyanın yanında SHA-256 sağlama toplamı yayınlarsanız, kullanıcı tam olarak sizin yayınladığınız şeyi indirdiğini doğrulayabilir. MD5 sağlama toplamı, motive olmuş bir saldırgana karşı bu garantiyi sağlayamaz.

MD5, SHA-1 ve SHA-256 Karşılaştırması

AlgoritmaÇıktıDurum
MD5128 bit (32 hex karakter)Kırık. 2004’ten beri pratik çarpışma saldırıları
SHA-1160 bit (40 hex karakter)Kırık. SHAttered çarpışma saldırısı 2017’de gösterildi
SHA-256256 bit (64 hex karakter)Güvenli. Bilinen zayıflık yok

Güvenlik dışı sağlama toplamları için (düşmanca bütünlük değil, yalnızca hata tespiti), MD5 yeterlidir. Bir düşmanın müdahale edebileceği herhangi bir şey için SHA-256 kullanın. SHA-256’nın nasıl çalıştığı hakkında daha fazla bilgi için SHA-256 hash oluşturucuya bakın.