
أداة جنائية بواجهة سطر أوامر (CLI) تتعرف على أكثر من 90 خوارزمية تجزئة (MD5، bcrypt، SHA256) من قيم مفردة أو ملفات أو فحوصات متكررة للأدلة، مع تصدير بصيغ JSON وYAML والنص.
ملاحظة: هذا مشروع طلابي
من المؤكد أن سلسلة عشوائية مثل 'b318c90ba09d05dfc9ff3991974eee68' قد تبدو مخيفة. لا تخف بعد الآن، فـ HashPrint يغطيك.
HashPrint هي أداة جنائية (forensic) تعمل من سطر الأوامر (CLI) ويمكنها تحديد الخوارزمية التي أنتجت تلك السلسلة المخيفة، والتي تُسمى hash، مثل السلسلة أعلاه (مثل MD5 أو bcrypt أو SHA256).
يتطلب Python 3.14+
إذا كنت تُثبّت باستخدام pip، فيجب أن يكون لديك Python 3.14 أو أحدث مثبّتًا على نظامك
$ pip install pyhashprint
أو باستخدام uv
يقوم uv بتثبيت إصدار Python الصحيح إذا لزم الأمر
أولاً أنشئ بيئة افتراضية:
$ uv venv
ثم ثبّت:
$ uv pip install pyhashprint
الاستخدام دون تثبيت
يتطلب uv
$ uv tool run pyhashprint
أو
$ uvx pyhashprint
| الخيار | الغرض |
|---|---|
| -h، --help | يعرض رسالة المساعدة ثم يخرج. |
| -f، --hash-file | يأخذ هذا الخيار مسارًا إلى ملف نصي كوسيط. مع هذا الخيار، سيقرأ HashPrint الملف الموجود في المسار المحدد بحثًا عن hashes. يجب أن يحتوي الملف على hash واحد في كل سطر. |
| -c، --hash | يأخذ هذا الخيار hash كوسيط ويحدده. يجب أن يكون بين علامتي اقتباس مفردتين ودون البادئة 0x. |
| -x، --format | يتيح لك هذا الخيار الاختيار بين صيغ التصدير. يمكنك تصدير النتائج بصيغ JSON وYAML والنص. لا يمكن لهذا الخيار العمل دون الخيار -p، --path. |
| -p، --path | يحدد هذا الخيار مسار ملف التصدير. إذا تم تحديد مسار لملف موجود مسبقًا، فسيتم استبداله إذا كان يحتوي بالفعل على محتوى. إذا لم يكن الملف موجودًا في المسار المحدد، فسيقوم HashPrint بإنشائه. |
| -w، --walk | يفحص هذا الخيار مجلدًا في المسار المحدد بشكل متكرر بحثًا عن ملفات نصية تحتوي على hash واحد في كل سطر. |
| -v، --version | يعرض هذا الخيار رقم إصدار HashPrint. |
للحصول على المساعدة
$ hashprint --help
عرض رقم الإصدار
$ hashprint --version
تحديد hash واحد
$ hashprint -c 'a9993e364706816aba3e25717850c26c9cd0d89d'
أو
$ hashprint --hash 'a9993e364706816aba3e25717850c26c9cd0d89d'
تحديد عدة hashes
$ hashprint -c '0cc175b9c0f1b6a831c399e269772661' -c 'e8b7be43'
تحديد hashes من ملف + تصدير النتائج إلى ملف
$ hashprint -f path/to/txt/file/containing/hashes -x text -p path/of/export/file
يصدّر الأمر أعلاه النتائج بصيغة نصية قابلة للقراءة البشرية إلى ملف من اختيارك. سيقوم HashPrint بإنشاء الملف إذا لم يكن موجودًا.
فاحص مجلد متكرر + تصدير النتائج إلى ملف
$ hashprint -w path/to/directory -x format -p path/of/export/file
هذا المشروع مرخّص بموجب ترخيص MIT.
هل وجدت خطأً أو لديك فكرة لميزة جديدة؟
-للأخطاء: افتح Issue.
-اقترح ميزة أو تحسينًا: افتح Issue.
-للأفكار الجديدة أو الأسئلة: لا تتردد في بدء نقاش في Discussions!