logo
GeekFormat

MD5 Özeti

Giriş0 karakter · 0 bayt
示例:
All Hashes (side-by-side)
Computed via Web Crypto API
MD5
32 hex
SHA-1
40 hex
SHA-256
64 hex
SHA-384
96 hex
SHA-512
128 hex

Ücretsiz çevrimiçi MD5 özet aracı. Metin/dosya/toplu/HMAC-MD5 modları, UTF-8/Latin1, büyük harf, 8 karakter gruplama. ⚠️ MD5 tehlikede — parola depolama için KULLANMAYIN.

İlgili Öneriler

Kullanım senaryoları

  • Dosya bütünlüğü: indirdikten sonra resmi sağlama toplamlarıyla karşılaştırmak için MD5 hesaplayın
  • Yapılandırma dosyaları veya sürüm notları için toplu özet oluşturma
  • Eski sistem entegrasyonu için HMAC-MD5 imzalama
  • Hızlı MD5 karşılaştırması yoluyla veri tekilleştirme
  • Kısa benzersiz tanımlayıcılar olarak önbellek anahtarı oluşturma
  • Eğitim: MD5/SHA-1/SHA-256 çıktılarını karşılaştırarak özet algoritmalarını anlama

Özellikler

  • Dört mod: Metin, Dosya, Satır başına Toplu İşlem ve HMAC-MD5, yaygın sağlama toplamı senaryolarını kapsar
  • Farklı sistem girdileri için seçilebilir UTF-8/Latin1 kodlama
  • Okunabilirlik için büyük harf görünümü ve 8 karakter gruplama
  • Dosya parçalı özetleme: büyük dosyalar için artımlı okuma bellek sorunlarını önler
  • Toplu mod: her satır orijinal→özet çıktısıyla bağımsız olarak özetlenir
  • Tek tıkla sonuç kopyalama

Nasıl Kullanılır

  1. Mod seçin: Metin, Dosya, Toplu İşlem veya HMAC-MD5
  2. Seçenekleri yapılandırın: kodlama, büyük harf, 8 karakter gruplama
  3. Metin girin, dosya yükleyin veya toplu içerik yapıştırın
  4. Doğrulama veya betikler için özet sonucunu kopyalayın

Sık Sorulan Sorular

MD5 genellikle ne için kullanılır?

MD5 genellikle dosya bütünlüğü kontrolü (ör. indirme doğrulaması), hızlı özet oluşturma, eski sistem uyumluluğu, önbellek anahtarları ve güvenlik dışı senaryolarda veri tekilleştirme için kullanılır. MD5 128 bit (32 onaltılık karakter) üretir ve aşırı hızlıdır, kritik olmayan doğrulama senaryoları için uygundur.

MD5 vs SHA-256?

MD5 128 bit (32 hex) üretir, aşırı hızlıdır ancak tehlikededir; SHA-256 256 bit (64 hex) üretir, daha yavaştır ancak pratik çakışma saldırıları yoktur ve kritik uygulamalar için tercih edilir.

SHA-256 Aracı

MD5 parolalar için neden güvensizdir?

MD5 aşırı hızlıdır — modern GPU'lar saniyede milyarlarca özet hesaplayabilir ve gökkuşağı tabloları yaygın parolaları anında kırar. Parola depolama için bcrypt, scrypt veya Argon2 kullanın.

Parola Üretici

MD5 tehlikede — hala kullanabilir miyim?

Güvenlik için kesinlikle HAYIR (dijital imzalar, parolalar, TLS). Ancak güvenlik dışı uygulamalar için (dosya bozulması kontrolü, tekilleştirme, önbellek anahtarları) MD5 hala uygundur, çünkü saldırganların çakışma oluşturma teşviki yoktur.

MD5 özetleri 'şifresi çözülebilir' mi?

MD5 tek yönlü bir fonksiyondur ve matematiksel olarak tersine çevrilemez, ancak gökkuşağı tabloları ve kaba kuvvet zayıf parolaları saniyeler içinde kurtarabilir. Bu nedenle MD5 asla parola depolama için kullanılmamalıdır.

Büyük dosyalar donmaya neden olur mu?

Hayır. Araç parçalı artımlı okuma kullanır — dosyalar tamamen belleğe yüklenmez, bu nedenle çok gigabaytlık dosyalar bile duyarlı bir arayüzle düzgün işlenir.

Düz MD5'e kıyasla HMAC-MD5 nedir?

HMAC-MD5, gizli bir anahtar gerektiren anahtarlı bir özettir. Düz MD5 tehlikede olsa da, HMAC-MD5 anahtar bilinmediğinde güvenli kalır (ancak HMAC-SHA256'ya geçiş önerilir).

HMAC Üretici

MD5 Nedir?

MD5 (Message-Digest Algorithm 5), Ronald Rivest tarafından 1991'de (RFC 1321) tasarlanan, rastgele girdiden sabit 32 karakterlik onaltılık bir özet üreten 128 bitlik bir özet fonksiyonudur. Bir zamanlar dijital imzalar, sertifika doğrulama ve parola depolama için yaygın olarak kullanılan MD5, 2004'te Wang vd.'nin çakışma saldırısıyla tehlikeye girdi ve Flame kötü amaçlı yazılımı 2008'de güvenilir bir CA sertifikasını taklit etmek için MD5 çakışmalarını kötüye kullandı.

**Güvenlik Durumu**: NIST, MD5'i SP 800-131A'da (2011) dijital imzalar için resmen reddetti. Ancak MD5, güvenlik dışı senaryolarda faydalı olmaya devam ediyor: rastgele bozulmaya karşı dosya bütünlüğü kontrolü, veri tekilleştirme ve önbellek anahtarları. Ana soru: bir saldırgan çakışma oluşturmaktan fayda sağlar mı? Sağlamazsa, MD5'in hızı bir avantajdır.

**Parola depolama için MD5'i ASLA kullanmayın**: MD5 aşırı hızlıdır (GPU'da saniyede milyarlarca özet), bu da yaygın parolaların kaba kuvvetle anında kırılmasını sağlar. Parola depolama bcrypt, scrypt veya Argon2 kullanmalıdır — kaba kuvveti uygulanamaz kılan, ayarlanabilir maliyet faktörlerine sahip yavaş özetler.

**HMAC-MD5 hala güvenlidir**: düz MD5 tehlikede olsa da, HMAC-MD5 (anahtarlı Hash tabanlı Mesaj Kimlik Doğrulama Kodu) anahtar bilinmediğinde güvenli kalır, çünkü HMAC yapısı temel özetin çakışma direncine doğrudan bağlı değildir. Yine de HMAC-SHA256'ya geçiş önerilir.

Araç saf JavaScript MD5 uygulaması kullanır (Web Crypto API artık MD5'i desteklemiyor). Tüm hesaplamalar tarayıcınızda yerel olarak yapılır — dosyalar parçalı artımlı okuma kullanır ve asla sunuculara yüklenmez.

术语表

Özet Fonksiyonu (Hash Function)
Rastgele uzunluktaki girdiyi sabit uzunluktaki çıktıya eşleyen matematiksel bir fonksiyondur. İyi özet fonksiyonları tek yönlülük, çakışma direnci ve çığ etkisi sağlar.
Çakışma Saldırısı (Collision Attack)
Aynı özet çıktısını üreten iki farklı girdi bulma. MD5 çakışmaları 2004'te Wang vd. tarafından gösterilmiş, dijital imza sahteciliğine olanak tanımıştır.
Öngörüntü Saldırısı (Preimage Attack)
Belirli bir özet çıktısını üreten bir girdi bulma. Çakışmalardan daha zordur ancak 2024'teki yeni araştırma MD5'in öngörüntü direncini önemli ölçüde zayıflattı.
Gökkuşağı Tablosu (Rainbow Table)
Zayıf parola özetlerini hızla kırmak için önceden hesaplanmış özet→düz metin arama tabloları. Tuzlama gökkuşağı tablolarını yener.
HMAC (Hash-based Message Authentication Code)
Mesaj bütünlüğü/kimlik doğrulaması için gizli bir anahtar kullanan özet tabanlı bir mesaj kimlik doğrulama kodudur. HMAC-MD5 ve HMAC-SHA256 yaygın varyantlardır.HMAC Üretici
bcrypt
Yerleşik tuzlama ve ayarlanabilir maliyet faktörü ile kaba kuvvet saldırılarını fahiş maliyetli hale getiren yavaş bir parola özetleme algoritması.
Sağlama Toplamı (Checksum)
Veri bütünlüğünü doğrulamak için kullanılan küçük sabit bir değer. MD5, SHA-1, SHA-256, iletim sırasındaki bozulmayı algılamak için yaygın olarak sağlama toplamı olarak kullanılır.
Çığ Etkisi (Avalanche Effect)
Girdideki küçük bir değişiklik (1 bit bile) özet çıktısında şiddetli ve öngörülemeyen bir değişikliğe neden olur. MD5 hala iyi çığ özelliklerine sahiptir ve güvenlik dışı kontrollerde kalan kullanımına katkıda bulunur.
RFC 1321
1992'de Ronald Rivest tarafından IETF'ye sunulan, algoritma adımlarını ve test vektörlerini açıklayan resmi MD5 standardı.
Parçalı Özetleme (Chunked Hashing)
Büyük dosyaları tüm dosyayı belleğe yüklemek yerine bloklar halinde işleme, özet durumunu artımlı olarak güncelleme.

Yaygın Özet Algoritmalarının Karşılaştırması

AlgoritmaÇıktı BitleriHex UzunluğuGüvenlikHızÖnerilen Kullanım
MD5128 bit32 karakter❌ Tehlikede (çakışmalar/öngörüntü)Aşırı hızlıDosya sağlama toplamları, tekilleştirme, önbellek anahtarları
SHA-1160 bit40 karakter❌ Çakışmalar (2017)HızlıGit, eski sistem uyumluluğu
SHA-256256 bit64 karakter✅ GüvenliOrtaDijital imzalar, sertifikalar, blok zinciri
SHA-512512 bit128 karakter✅ GüvenliHızlı (64-bit)Yüksek güvenlik senaryoları, anahtar türetme
bcrypt-60 karakter✅ Parola özelindeYavaş (ayarlanabilir)Parola depolama

MD5 Güvenlik Olayları Zaman Çizelgesi

YılOlayEtki
1991Ron Rivest MD5'i tasarlar (RFC 1321)MD4'ün yerine geçer ve standart özet algoritması olur
1996MD5'te ilk sahte çakışma kusuru keşfedildiAkademik topluluk endişelerini dile getirir
2004Wang Xiaoyun'un ekibi MD5 çakışma saldırısını gösterirMD5 dijital imza güvenliği tamamen kırıldı
2008Flame kötü amaçlı yazılımı MD5 çakışması yoluyla CA sertifikası sahteciliği yaparNIST, MD5'i dijital imzalar için resmen reddeder
2011NIST SP 800-131A, MD5'i güvenlik amaçları için resmen yasaklarABD hükümet sistemleri MD5'i aşamalı olarak kaldırır
2024Yeni öngörüntü saldırısı makalesi yayınlandıMD5'in son savunma hattı (öngörüntü direnci) kırıldı

Code Examples

MD5/Hashing in JavaScript (Web Crypto supports SHA, MD5 needs library)

// Note: Web Crypto API does NOT support MD5 (deprecated)
// Use SHA-256 instead for new projects
async function sha256(message) {
  const msgBuffer = new TextEncoder().encode(message);
  const hashBuffer = await crypto.subtle.digest('SHA-256', msgBuffer);
  return Array.from(new Uint8Array(hashBuffer)).map(b => b.toString(16).padStart(2,'0')).join('');
}
sha256('Hello World').then(console.log);

// MD5 in Node.js using crypto module
const crypto = require('crypto');
const md5 = crypto.createHash('md5').update('Hello World').digest('hex');
console.log(md5); // b10a8db164e0754105b7a99be72e3fe5

MD5 Hashing in Python

import hashlib
text = 'Hello World'
md5_hash = hashlib.md5(text.encode('utf-8')).hexdigest()
print(md5_hash)  # b10a8db164e0754105b7a99be72e3fe5

# File MD5 (chunked for large files)
def md5_file(filepath, chunk_size=8192):
    md5 = hashlib.md5()
    with open(filepath, 'rb') as f:
        while chunk := f.read(chunk_size):
            md5.update(chunk)
    return md5.hexdigest()

# HMAC-MD5
import hmac
hmac_md5 = hmac.new(b'secret-key', b'Hello World', hashlib.md5).hexdigest()
print(hmac_md5)

MD5 Hashing in Java

import java.security.MessageDigest;
import java.nio.charset.StandardCharsets;

public class MD5Example {
    public static String md5(String input) throws Exception {
        MessageDigest md = MessageDigest.getInstance("MD5");
        byte[] hash = md.digest(input.getBytes(StandardCharsets.UTF_8));
        StringBuilder sb = new StringBuilder();
        for (byte b : hash) sb.append(String.format("%02x", b));
        return sb.toString();
    }
    public static void main(String[] args) throws Exception {
        System.out.println(md5("Hello World"));
        // b10a8db164e0754105b7a99be72e3fe5
    }
}
// Note: Use SHA-256 for new code: MessageDigest.getInstance("SHA-256")

Authoritative References