توليد هاش للنص: MD5 وSHA-1 وSHA-256 وSHA-512 وCRC32
اكتب «Hello, world!» واختر SHA-256 لتحصل على بصمة من 64 حرفًا لهذا النص بالضبط. كل مسافة وحرف كبير وسطر جديد يغيّر النتيجة، لذلك لا تتطابق قيمتان إلا إذا تطابق النص والخوارزمية. مجانية في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
يمكنكم توليد بصمة سداسية عشرية لأي نص باختيار MD5 أو SHA-1 أو SHA-256 أو SHA-512 أو CRC32. تتعامل الأداة مع النص كما أُدخل تماماً، وترمّزه بصيغة UTF-8، ثم تعيد قيمة سداسية عشرية بأحرف صغيرة. وهي مفيدة للتحقق من القيم المنسوخة، وإعادة إنتاج بصمات التطبيقات، وإعداد بيانات اختبار ثابتة، ومقارنة البيانات من دون كشف النص الأصلي. تعمل جميع الخوارزميات المدعومة بصورة حتمية؛ فالحروف والمسافات وحالة الأحرف والخوارزمية نفسها تعطي دائماً النتيجة ذاتها.
اختاروا الخوارزمية المناسبة للغرض
تحوّل خوارزمية البصمة نصاً بأي طول إلى قيمة ذات تنسيق ثابت، لكن الخيارات المتاحة ليست متكافئة. يُعد SHA-256 خياراً افتراضياً مناسباً لفحوص السلامة الحديثة، ومفاتيح الذاكرة المخبأة، وقيم الاختبار الثابتة، والمعرّفات عندما لا يفرض نظام آخر تنسيقاً بعينه. ينتج SHA-512 بصمة أطول ويفيد حين ينص بروتوكول أو تكامل قائم عليه صراحة.
أما CRC32 فهو مجموع اختباري موجز لاكتشاف الأخطاء، وليس بصمة تشفيرية. يصلح لمطابقة بيانات الأرشيف الوصفية والتنسيقات القديمة وحقول الشبكات واكتشاف التلف العرضي بسرعة. ولا يصلح لكلمات المرور أو التوقيعات أو المصادقة أو كشف العبث المتعمد.
عند إعادة إنتاج قيمة من وثيقة أو تطبيق آخر، اختاروا الخوارزمية التي يحددها المصدر بدقة بدلاً من استنتاجها من طول البصمة وحده.
أدخلوا النص بدقة واقرؤوا النتيجة على نحو صحيح
يُرمّز الإدخال بصيغة UTF-8 قبل حساب البصمة، وتظهر النتيجة في صورة سداسية عشرية بأحرف صغيرة. لكل محرف أثره؛ فالمسافة في النهاية، أو فاصل السطر المنسوخ من الطرفية، أو اختلاف حالة الأحرف، أو محرف Unicode مشابه بصرياً، كلها تغيّر الناتج بالكامل. إذا لم تطابق النتيجة قيمة مرجعية، فتحققوا أولاً مما إذا كان النظام الآخر يضمّن نهايات الأسطر أو علامة ترتيب البايتات أو علامتي اقتباس محيطتين أو فاصل سطر أخيراً.
تحسب هذه القدرة دائماً بصمة بايتات UTF-8 لحقل النص الحرفي؛ فلا تزيل فراغات ولا تطبّع النص ولا تفك ترميزه ولا تغيره خفية. تتضمن الاستجابة البصمة واسم الخوارزمية الموحّد لتسهيل التدقيق. يبلغ طول MD5 السداسي 32 محرفاً، وSHA-1 عدد 40، وSHA-256 عدد 64، وSHA-512 عدد 128، وCRC32 عدد 8.
استخدموا البصمات بأمان في الأتمتة
تفيد بصمة النص الحتمية في نصوص البناء واختبارات الانحدار ومسارات إزالة التكرار وعمليات البحث في الذاكرة المخبأة وتشخيص التكاملات. خزّنوا اسم الخوارزمية إلى جانب القيمة، لأن البصمة غير الموسومة قد تصبح ملتبسة بعد ترقية النظام. لا تقارنوا بصمتين إلا إذا استخدم الطرفان الترميز وتسلسل البايتات نفسيهما.
لا تستخدموا هذه الأداة لتخزين كلمات المرور؛ فالخوارزميات السريعة تتيح للمهاجم اختبار التخمينات بسرعة، بينما يتطلب تخزين كلمات المرور دالة مخصصة ومملّحة وبطيئة عمداً، مثل Argon2 أو scrypt أو bcrypt أو PBKDF2 بإعدادات مناسبة. كذلك لا تثبت البصمة العادية هوية منشئ الرسالة. استخدموا HMAC بمفتاح سري لمصادقة الرسائل أو توقيعاً رقمياً حين تكون الهوية ومقاومة العبث ضروريتين.
وأخيراً، حساب البصمة تحويل أحادي الاتجاه وليس تشفيراً؛ فلا يستعيد النص الأصلي ولا يحمي سراً متوقعاً من التخمين.
حالات الاستخدام
إنشاء قيم اختبار ثابتة
ولّدوا قيماً متوقعة حتمية لاختبارات الوحدات من دون الاعتماد على الشبكة أو الوقت أو أملاح عشوائية أو خدمات متغيرة.
فحص المجاميع الاختبارية القديمة
طابقوا قيم MD5 أو SHA-1 أو CRC32 في ملفات البيان والتنسيقات القديمة، مع فصل دور التوافق عن متطلبات الأمان الحديثة.
الأسئلة الشائعة
هل يستخدم الناتج السداسي أحرفاً كبيرة أم صغيرة؟
يستخدم الناتج أحرفاً صغيرة ويحافظ على الأصفار البادئة حتى يكتمل الطول الذي تفرضه الخوارزمية المختارة.
هل يمكن حساب بصمة سلسلة فارغة؟
نعم. السلسلة الفارغة نص صالح ولها بصمة معرّفة جيداً في كل خوارزمية مدعومة.
لماذا تختلف بصمتي عن نتيجة أداة أخرى؟
تحققوا من الخوارزمية وUTF-8 وحالة الأحرف والمسافات ونهايات الأسطر والفاصل الأخير، ومما إذا كانت الأداة الأخرى تعالج بايتات مفكوكة بدلاً من النص الحرفي.
هل يمكن استخدام الأداة لكلمات المرور؟
لا. استخدموا دالة مملّحة مثل Argon2 أو scrypt أو bcrypt أو PBKDF2 بإعدادات تناسب بيئتكم.
هل CRC32 بصمة تشفيرية؟
لا. يكتشف CRC32 كثيراً من التغييرات العرضية، لكنه غير مصمم لمقاومة التصادم أو العبث المتعمد.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/web/hash-generate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello, world!","algorithm":"sha256"}'const res = await fetch("https://api.kit.forhosting.com/web/hash-generate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello, world!",
"algorithm": "sha256"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/web/hash-generate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello, world!",
"algorithm": "sha256"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/web/hash-generate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello, world!","algorithm":"sha256"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello, world!","algorithm":"sha256"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/web/hash-generate", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"text": "Hello, world!",
"algorithm": "sha256"
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "web.hash_generate",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الحدود
timeout_sec | 30 |
max_crawl_pages | 25 |
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
اختاروا الخوارزمية المناسبة للغرض
ما زال MD5 وSHA-1 مستخدمين في API القديمة وملفات البيان والمجاميع الاختبارية وأعمال الترحيل، ولذلك تدعمهما هذه الأداة للتوافق؛ لكن لا ينبغي اختيارهما لتصميم جديد حساس أمنياً، إذ توجد هجمات تصادم عملية عليهما.
أدخلوا النص بدقة واقرؤوا النتيجة على نحو صحيح
وتحققوا أيضاً هل يعالج النص الخام أم تمثيلاً مفكوكاً مثل JSON أو Base64 أو بايتات سداسية عشرية.
استخدموا البصمات بأمان في الأتمتة
في الطلبات المؤتمتة، السعر الأساسي هو $0.002 لكل عنصر، وتظل الاستجابة ثابتة للإدخال المطابق.
حالات التكامل
إعادة إنتاج بصمة تكامل
احسبوا بصمة حمولة نموذجية مطابقة بالخوارزمية التي تحددها API الشريكة، ثم قارنوا الناتج السداسي أثناء التشخيص.
أسئلة تقنية
ما تكلفة حساب بصمة واحدة؟
السعر الأساسي عبر API هو $0.002 لكل عنصر. ويمكن تشغيل إصدار المتصفح محلياً من دون استدعاء API.