Bu proje, MD5 hash'lerini kırmak için paralel işlemeyi kullanan bir web tabanlı araçtır. Flask ve Python'un multiprocessing
kütüphanesi kullanılarak geliştirilmiştir. Kullanıcıların bir MD5 hash'i girmesine ve uygulamanın bu hash'i kaba kuvvet (brute-force) yöntemiyle çözmeye çalışmasına olanak tanır.
- MD5 Hash Üretimi: Belirtilen bir metinden veya rastgele oluşturulmuş bir metinden MD5 hash'i üretir.
- Paralel Hash Kırma: Hash kırma işlemini hızlandırmak için birden çok CPU çekirdeğini kullanır.
- Gerçek Zamanlı Durum Takibi: Kırma işleminin ilerlemesini (deneme sayısı, mevcut denenen şifre vb.) gerçek zamanlı olarak izleme imkanı sunar.
- İşlem Durdurma: Devam eden bir hash kırma işlemini herhangi bir zamanda durdurma özelliği.
- Duyarlı Web Arayüzü: Kullanıcı dostu ve modern bir arayüze sahiptir.
- Backend: Python, Flask
- Paralel İşleme: Python
multiprocessing
kütüphanesi - Frontend: HTML, CSS, JavaScript (Fetch API ile)
Projeyi yerel makinenizde çalıştırmak için aşağıdaki adımları izleyin:
-
Projeyi klonlayın:
git clone https://github.com/kullanici-adiniz/proje-adiniz.git cd proje-adiniz
-
Sanal bir ortam (virtual environment) oluşturun ve aktifleştirin:
# Windows python -m venv venv venv\Scripts\activate # macOS / Linux python3 -m venv venv source venv/bin/activate
-
Gerekli kütüphaneleri yükleyin:
pip install -r requirements.txt
-
Uygulamayı çalıştırın:
python app.py
-
Tarayıcınızda
http://127.0.0.1:5000
adresini açın.
-
Hash Üretme:
- "Hash Üret" sekmesine gidin.
- Bir şifre girin veya rastgele bir şifre oluşturmak için butonu kullanın.
- "Hash Üret" butonuna tıklayarak MD5 hash'ini alın.
-
Hash Kırma:
- "Hash Kır" sekmesine gidin.
- Kırmak istediğiniz MD5 hash'ini girin.
- Maksimum şifre uzunluğunu ve kullanılacak işlemci (process) sayısını ayarlayın.
- "Kırmaya Başla" butonuna tıklayın.
- İşlem durumunu "Durum" bölümünden takip edebilirsiniz.
-
İşlemi Durdurma:
- Kırma işlemi devam ederken "Durdur" butonuna tıklayarak işlemi sonlandırabilirsiniz.
GET /
: Ana sayfayı render eder.POST /generate_hash
: Verilen bir şifreden MD5 hash'i üretir.POST /crack_hash
: Verilen bir hash'i kırma işlemini başlatır.GET /status
: Kırma işleminin mevcut durumunu döndürür.POST /stop
: Devam eden kırma işlemini durdurur.