ForHosting KIT · أدوات المطورين

حاسبة تجزئة djb2

الصق كلمة واحصل على بصمة djb2 التي صممها برنشتاين: تعطي hello القيمة 0f923099، أو 261238937 كرقم، وهي نتيجة الشيفرة نفسها في الكتب. تصلح لجداول التجزئة ومفاتيح التخزين المؤقت، لا لكلمات المرور. مجاني في متصفحك.

  • مجاني
  • يعمل في متصفحك
  • دون تسجيل
  • بياناتك لا تغادر جهازك
استخدمها من الويبAPIالبريدTelegramالتطبيق قريبًا
إذا أدخلت
النص
hello
تحصل على
التجزئة بالنظام السداسي عشر
0f923099
التجزئة (عدد صحيح)
261,238,937
التجزئة بالنظام العشري
261238937
الطول
5

djb2 هي تجزئة السلسلة الكلاسيكية غير التشفيرية التي صممها Daniel J. Bernstein: تبدأ من خمسة آلاف وثلاثمئة وواحد وثمانين، ثم لكل حرف تُضرب التجزئة الجارية في ثلاثة وثلاثين ويُضاف رمز الحرف مع الإبقاء على الاثنين وثلاثين بتًا السفلى فقط. ما يزال المطورون يلجؤون إلى djb2 عندما يحتاجون بصمة سريعة وحتمية لجداول التجزئة ومفاتيح التخزين المؤقت وخرائط إزالة التكرار ومواد التعليم التي يجب أن تطابق الكتب والمقاطع البرمجية المعروفة. تقبل هذه القدرة سلسلة نصية غير فارغة، وتشغّل ذلك الخوارزم نفسه على وحدات رمز UTF-16، وتعيد المتبقي ذا الاثنين وثلاثين بتًا كثمانية أرقام ست عشرية بأحرف صغيرة مع العدد الصحيح بلا إشارة المطابق.

ما هي djb2 ومتى تكفي تجزئة سلسلة 32 بت

تتبادل التجزئات غير التشفيرية مقاومة التصادم مقابل السرعة والبساطة. djb2 من أكثر تلك المقايضات نسخًا: البذرة خمسة آلاف وثلاثمئة وواحد وثمانون والمُضاعِف ثلاثة وثلاثون (يُكتب غالبًا كإزاحة خمس بتات يسارًا مع القيمة الأصلية) ينتجان عددًا صحيحًا ذا اثنين وثلاثين بتًا جيد التوزيع للسلاسل القصيرة العادية بلا جداول أو أسرار أو اعتماد على المنصة. نشر Bernstein الفكرة في عصر النطاق العام لأدوات سلاسل C؛ وما تزال تظهر في بيئات تشغيل اللغات ومحركات الألعاب والمقالات لأن الطلاب ينفذونها في بضعة أسطر ويحصلون على توزيع مفيد لجداول التجزئة.

ليست تجزئة كلمات مرور، ولا ملخص سلامة محتوى، ولا بديلًا عن SHA-256 أو BLAKE حين قد يختار خصم المدخلات. استخدموا djb2 عندما تحتاجون بصمة مضغوطة قابلة لإعادة الإنتاج للمعرفات وأعلام الميزات وتعيين الدلاء أو تثبيتات ذهبية في اختبارات الوحدة — وعندما يجب أن تطبع كل بيئة الأرقام الست عشرية الثمانية نفسها للسلسلة نفسها.

يثبّت هذا الطرف الالتفاف الكلاسيكي بلا إشارة على اثنين وثلاثين بتًا بحيث تعطي كلمة ASCII وهي hello المتبقي المألوف 0f923099، وتعطي السلسلة test القيمة 7c9e6865، موافقةً للتنفيذات المرجعية الشائعة التي تقتطع بتحويل بلا إشارة بعد كل خطوة ضرب وإضافة.

أعلام الميزات ودلاء التوجيه

أسقطوا سلاسل المستخدم أو المستأجر في فضاء اثنين وثلاثين بتًا لدلاء A/B متسقة بلا عبء تشفيري أو مادة سرية.

أي خوارزم وبذرة تُستخدمان؟

djb2 الكلاسيكية لـ Daniel J. Bernstein: تجزئة ابتدائية 5381، ثم لكل حرف hash = hash * 33 + charCode، مقطوعة إلى قيمة 32 بت بلا إشارة.

هل تصلح djb2 لكلمات المرور أو سلامة المحتوى؟

لا. djb2 بصمة غير تشفيرية سريعة لجداول التجزئة والتعليم. استخدموا تجزئة تشفيرية حديثة لكلمات المرور والتواقيع وسلامة المحتوى.

لماذا تختلف نتيجة djb2 عندي عن أداة أخرى؟

غالبًا لأن الأداة الأخرى تتخطى خطوة من الطريقة الكلاسيكية. تبدأ هذه الأداة من 5381، وتضرب في 33 وتضيف رمز كل حرف، وتحتفظ في كل خطوة بأدنى 32 بت دون إشارة، وهكذا تعطي hello القيمة 0f923099.

فيمَ تُستخدم تجزئة djb2؟

تعطي أي نص رقمًا سريعًا يتكرر دائمًا. تُستخدم لتوزيع المفاتيح في جداول التجزئة، وبناء مفاتيح التخزين المؤقت، وكشف التكرار، وتقسيم المستخدمين إلى مجموعات اختبار ثابتة، حين تكون السرعة أهم من مقاومة الهجمات.

هل يمكن أن يعطي نصان مختلفان تجزئة djb2 نفسها؟

نعم. تحتفظ djb2 بـ 32 بت فقط، وقد صُممت للسرعة لا لمقاومة التصادم. فإذا كان هناك من قد يختار المدخلات عمدًا، فاستخدم تجزئة تشفيرية.

كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.

POSThttps://api.kit.forhosting.com/enc/djb2

صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.

curl -X POST https://api.kit.forhosting.com/enc/djb2 \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"hello"}'
{
  "text": "hello"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.djb2",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.

لكل طلب$0.002

السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.

HTTPالرمزالمعنى
401unauthorizedمفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك.
402insufficient_balanceرصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة.
404unknown_typeنوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب.
429rate_limitedتجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة.

تُرفض المدخلات الفارغة بـ invalid_input حتى لا يخلط المستدعي حمولة بطول صفر مع تجزئة حقيقية. المنطق parse النقي نفسه يغذي ودجت المتصفح المجاني ومسار API المدفوع، فتظل العروض المحلية وخدمات الإنتاج متفقة دائمًا على قيمة الـ hex.

عقد الإدخال ورفض الفارغ وحقول الاستجابة

تُقبل الأعداد والمنطقيات بتحويلها إلى شكل سلسلة قبل التجزئة، فيبقى ودجت الحاسبة البسيط مريحًا. فشل التحقق لا يُفوتر. الخوارزم خطي في طول السلسلة وداخل الذاكرة بالكامل؛ اجعلوا عروض المتصفح على سلاسل بشرية الحجم، وثبّتوا متجهات معروفة مثل hello يساوي 0f923099 في التكامل المستمر حتى لا يغيّر إعادة هيكلة بسطر واحد العقد بصمت. أرسلوا بـ POST جسم JSON مع حقل السلسلة الإلزامي text. يجب أن تكون القيمة سلسلة غير فارغة؛ غياب text أو null أو سلسلة فارغة يفشل بـ invalid_input ورسالة تبلّغ صراحة عن إدخال فارغ أو مفقود حتى تبرز واجهات النماذج الحقل بلا تخمين. عند النجاح يتضمن الجسم hash_hex كثمانية أرقام ست عشرية صغيرة مع أصفار يسارًا، وhash_int كعدد صحيح بلا إشارة من صفر إلى أربعة مليارات ومئتين وأربعة وتسعين مليونًا وتسعمئة وسبعة وستين ألفًا ومئتين وخمسة وتسعين، وhash_dec نفس العدد كنص عشري، وlength كعدد أحرف السلسلة المجزأة، وalgorithm ثابتًا على djb2، وseed ثابتًا على خمسة آلاف وثلاثمئة وواحد وثمانين موثقًا للقيمة الابتدائية الكلاسيكية. تُقبل الأسماء البديلة data وpayload وvalue وinput وstring للحمولة حتى يعيد مستدعو SDK استخدام أسماء الحقول القائمة.

أين تثبت واجهة تجزئة djb2 قيمتها

يستخدم المعلمون ومدربو المقابلات الخرج الحتمي نفسه لتقييم تنفيذات الطلاب لتجزئة الضرب في ثلاثة وثلاثين دون مزرعة مترجمات. تكسب مواقع المحتوى التي تنافس على حاسبة تجزئة djb2 أداة حية يطابق مسارها المجاني مسار الأتمتة بايتًا ببايت. اجعلوا الطلبات حتمية، وارفضوا الحمولات الفارغة عند الحافة، فتحصلون على قابلية إعادة إنتاج بمستوى الكتاب دون تضمين مقاطع djb2 في كل خدمة مصغّرة. يلصق مؤلفو المكتبات مفاتيح عيّنة في ودجت المتصفح المجاني أثناء نقل جدول تجزئة بـ C أو JavaScript ويؤكدون أن hash_hex يطابق روتينهم المحلي قبل النشر. تُشغّل فرق الخلفية الـ API داخل أدوات التشغيل التي تعيّن شظايا التخزين المؤقت أو دلاء أعلام الميزات أو مفاتيح توجيه السجلات وتثبّت قيم hash_hex الذهبية حتى لا تعيد هجرة المنصة ترتيب الحركة بالصدفة. لأن التنفيذ parse نقي من المستوى A، تكلف كل مكالمة ناجحة السعر الأساسي المنشور $0.002 بلا رموز نموذج وبلا شبكة صادرة. اقرنوا hash_int عندما تحتاجون مفتاح خريطة رقميًا، أو hash_hex عندما تحتاجون فقط بصمة قابلة للطباعة مستقرة للسجلات والتثبيتات.

بصمات لجداول التجزئة ومفاتيح التخزين المؤقت

جزّئوا معرفات قصيرة بـ djb2 واحفظوا hash_hex أو hash_int كبصمة مضغوطة مستقلة عن اللغة للخرائط والتخزين المؤقت وتعيين الدلاء.

التعليم ومتجهات الاختبار الذهبية

أكدوا أن شيفرة الطلاب أو المكتبة تنتج hash_hex 0f923099 لـ hello و7c9e6865 لـ test حتى تبقى منافذ djb2 متوافقة عبر بيئات التشغيل.

كيف أحسب تجزئة djb2؟

أرسلوا سلسلة غير فارغة في الحقل text. تعيد الـ API الحقول hash_hex (ثمانية أرقام hex صغيرة) وhash_int وhash_dec وlength وalgorithm djb2 وseed 5381.

ماذا يحدث إذا أرسلت نصًا فارغًا؟

النص الفارغ أو المفقود يفشل بـ invalid_input ورسالة تبلّغ عن إدخال فارغ. تلك الإخفاقات لا تُفوتر.

كم تكلفة أداة تجزئة djb2؟

أداة المتصفح مجانية. طلبات API تستخدم رصيد KIT المدفوع مسبقًا بسعر $0.002 لكل مكالمة ناجحة؛ المدخل غير الصالح لا يُفوتر.

اطّلع على توثيق KIT الكامل ←