ForHosting KIT · قراءة المواقع ومراقبتها

ترميز Base32 وفك ترميزه

رمّز النص إلى Base32 أو فك ترميزه بالأبجدية القياسية من A إلى Z ومن 2 إلى 7: يصبح «Hello, Base32!» هكذا JBSWY3DPFQQEEYLTMUZTEII=. وتُعالج الحروف المشكولة والرموز التعبيرية، وتُرفض المدخلات التالفة بدل فك ترميزها جزئيًا. مجاني في متصفحك.

  • مجاني
  • يعمل في متصفحك
  • دون تسجيل
  • بياناتك لا تغادر جهازك
استخدمها من الويبAPIالبريدTelegramالتطبيق قريبًا
إذا أدخلت
النص
Hello, Base32!
وضع الحساب
Encode
تحصل على
الإنتاج
JBSWY3DPFQQEEYLTMUZTEII=

يحوّل مرمّز Base32 وفاكّ ترميزه هذا نص Unicode باستعمال الأبجدية القياسية في RFC 4648، وهي الحروف اللاتينية الكبيرة من A إلى Z والأرقام من 2 إلى 7. يمكنكم اختيار الترميز لتحويل نص UTF-8 إلى Base32 مع الحشو القياسي، أو اختيار فك الترميز لاستعادة النص الأصلي. وعند فك الترميز تتحقق الأداة من الأبجدية والحشو والطول والبتات النهائية غير المستخدمة وصحة ناتج UTF-8، بدل إعادة محتوى تالف بصمت. التحويل حتمي ولا يحتاج إلى اتصال بالشبكة، كما يعيد نتيجة يسهل نسخها.

كيف يمثّل Base32 وفق RFC 4648 النصوص

Base32 أسلوب لترميز البيانات الثنائية في صورة نص، وليس وسيلة تشفير أو ضغط أو إخفاء للمعلومات. في وضع الترميز، يحوّل المحوّل السلسلة المدخلة أولاً إلى بايتات UTF-8. ثم يقرأ تلك البايتات كتدفق متصل من البتات ويقسمه إلى مجموعات من خمسة بتات.

تختار كل قيمة من خمسة بتات رمزاً واحداً من أبجدية RFC 4648، التي تتكون من الحروف الكبيرة A إلى Z ثم الأرقام 2 إلى 7. تحتوي خمسة بايتات من الإدخال على أربعين بتاً، ولذلك تقابل ثمانية رموز Base32 تماماً. إذا كانت الكتلة الأخيرة أقصر، تكمّل بتات صفرية الرمز الأخير، ثم تضاف علامات المساواة حتى يصبح طول الناتج من مضاعفات ثمانية أحرف.

تنتج الأداة دائماً الأبجدية القياسية والحشو القانوني، ولذلك يمكنكم مقارنة الناتج مباشرة بنتائج المكتبات المتوافقة. يتم تحويل Unicode قبل معالجة البتات، فتظل الحروف المشكولة والكتابات غير اللاتينية والرموز التعبيرية ممثلة بصورة ثابتة. وتنتج المدخلات المتطابقة في الوضع نفسه مخرجات متطابقة دائماً.

التحقق ومعالجة الأخطاء عند فك الترميز

يعامل وضع فك الترميز المدخل على أنه Base32 وفق RFC 4648، لا مجرد رمز يشبهه ظاهرياً. تُقبل الحروف الكبيرة والصغيرة، لكن كل رمز بيانات يجب أن ينتمي إلى A-Z أو 2-7. ولا تُقبل علامة المساواة إلا بوصفها حشواً نهائياً، ويجب أن يتوافق عددها مع عدد رموز البيانات في الكتلة الأخيرة.

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

يؤدي أي حرف غير مسموح أو حشو في موضع خاطئ أو طول مستحيل أو بتات متبقية غير صفرية أو UTF-8 تالف إلى خطأ إدخال غير صالح من دون نتيجة جزئية. ويُقبل Base32 بلا حشو عندما تكون بنيته صحيحة.

استخدام المحوّل في الأدوات وسير العمل الآلي

لإجراء التحويل، أدخلوا النص واختاروا الترميز أو فك الترميز. يعيد وضع الترميز سلسلة Base32 محشوة في حقل الإخراج، بينما يعيد وضع فك الترميز سلسلة Unicode المستعادة في الحقل نفسه. يفيد Base32 عندما يلزم تمرير قيمة عبر أنظمة ذات مجموعة أحرف محدودة، مثل سجلات التزويد ومواد الإعداد المقروءة ومخازن البيانات التي لا تميز حالة الحروف.

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

إعداد قيم متوافقة للإعدادات

رمّزوا نص Unicode بالأبجدية والحشو القياسيين قبل وضعه في إعداد نصي أو تبادله مع نظام متوافق.

التحقق من مادة Base32 منسوخة

فكّوا قيمة ملصقة واحصلوا على خطأ واضح إذا كان الرمز أو الحشو أو البت النهائي أو ناتج UTF-8 غير صالح.

إنشاء متجهات اختبار بين اللغات

أنشئوا مدخلات ومخرجات ثابتة لمقارنة تنفيذات Base32 في المتصفح والخادم وأدوات سطر الأوامر.

ما أبجدية Base32 التي يستخدمها هذا المحوّل؟

يستخدم أبجدية Base32 القياسية في RFC 4648: الحروف الكبيرة A إلى Z والأرقام 2 إلى 7، مع علامات المساواة لحشو الناتج.

هل يقبل فك الترميز الحروف الصغيرة؟

نعم. تُحوّل الحروف إلى كبيرة قبل فك الترميز، وتُرفض الأحرف التي لا تنتمي إلى أبجدية RFC 4648.

هل Base32 نوع من التشفير؟

لا. Base32 تمثيل قابل للعكس للبايتات، وليس تشفيراً أو تجزئة. يستطيع كل من يملك القيمة فك ترميزها.

ماذا يحدث إذا وُجد حرف غير صالح؟

يفشل الطلب بخطأ إدخال غير صالح يحدد الحرف وموضعه، ولا يُعاد أي نص مفكوك جزئياً.

لماذا تنتهي النتيجة بعلامات مساواة؟

إنها حشو. يعمل Base32 بكتل من ثمانية رموز، لأن خمسة بايتات تملأ ثمانية منها تمامًا، وعندما تكون الكتلة الأخيرة أقصر تكملها علامات المساواة، كما في المثال الذي ينتهي بـ EII=.

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

POSThttps://api.kit.forhosting.com/web/base32-convert

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

curl -X POST https://api.kit.forhosting.com/web/base32-convert \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"Hello, Base32!","mode":"encode"}'
{
  "text": "Hello, Base32!",
  "mode": "encode"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "web.base32_convert",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

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

لكل طلب$0.002

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

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

استخدام المحوّل في الأدوات وسير العمل الآلي

يسهّل شكل الاستجابة الثابت استعمال الأداة في المتصفح وطلبات API وأغلفة سطر الأوامر واختبارات الانحدار. يتوفر التحويل التفاعلي في المتصفح، أما كل عنصر يُعالج آلياً عبر API فتكلفته $0.002.

ما تكلفة التحويل عبر API؟

يُطبّق السعر الأساسي المنشور $0.002 على كل عنصر تعالجه API بنجاح. ويتوفر التحويل التفاعلي في المتصفح.

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