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

مشفّر z-base-32 وفكّاكه

تصبح كلمة Hello بترميز z-base-32 هي jb1sa5dx. تستبعد أبجدية Zooko الرقمين 0 و2 والحرفين l وv ولا تضيف حشوًا، فتبقى الرموز قصيرة وسهلة القراءة بصوت عالٍ أو النسخ باليد. مجاني في متصفحك.

  • مجاني
  • يعمل في متصفحك
  • دون تسجيل
  • بياناتك لا تغادر جهازك
استخدمها من الويبAPIالبريدTelegramالتطبيق قريبًا
إذا أدخلت
النص
Hello
وضع الحساب
Encode
تحصل على
النتيجة
jb1sa5dx
الطول
8
بايتات المُدخَل
5
الأبجدية
z-base-32

z-base-32 هو متغير Base32 الموجّه للاستخدام البشري من Zooko Wilcox-O'Hearn: أبجدية من اثنين وثلاثين رمزًا مرتّبة بعناية تسهّل القراءة والكتابة والنقل الشفهي، مع ضغط خمسة بتات لكل حرف. بخلاف Base32 وفق RFC 4648، يستبعد الرموز المتشابهة المربكة، ويعيد ترتيب الرموز حتى تظهر الأصوات الشائعة أكثر، ويحذف حشو علامة التساوي لتبقى الرموز قصيرة. تحوّل هذه القدرة نص UTF-8 إلى z-base-32 بأحرف صغيرة أو تستعيد النص الأصلي من سلسلة z-base-32.

كيف يعبّئ z-base-32 البتات بأبجدية Zooko

ينطلق z-base-32 من فكرة خمسة بتات لكل حرف كما في Base32 الكلاسيكي، لكن جدول الرموز مختلف تمامًا. الأحرف الاثنان والثلاثون هي y b n d r f g 8 e j k m c p q x o t 1 u w i s z a 3 4 5 h 7 6 9 بهذا الترتيب. يُستبعد الرقمان صفر واثنان، وحرف اللام، وحرف الفي، لأنها تلتبس بسهولة مع أشكال أخرى عندما يقرأ أحدهم رمزًا بصوت عالٍ أو ينسخه يدويًا.

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

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

ما ترسلونه وما تستلمونه

أرسلوا حقل سلسلة إلزاميًا اسمه text وحقل mode اختياريًا بقيمة encode أو decode. يعامل وضع encode النص text كمحتوى UTF-8 خام ويعيد سلسلة result صغيرة بأبجدية Zooko بلا حشو. يعامل وضع decode النص text كـ z-base-32، ويوحّد الحالة والمسافات، ويتحقق من كل رمز، ويعيد سلسلة UTF-8 المستعادة في result.

يعيد الاتجاهان mode والنص الأصلي وresult وحقل length للمخرج الرئيسي وتسميات alphabet وcharset وعلامة padding بقيمة false ومرجعًا قصيرًا للمعيار ليؤكد العملاء الملف الشخصي. لا تستهلك إخفاقات التحقق الرصيد المدفوع مسبقًا. تشمل الفحوصات المعتادة ترميز كلمة قصيرة مثل Hello، وفك ترميز الذهاب والإياب إلى النص نفسه، وفرض خطأ بلصق رمز يستبعده z-base-32 عمدًا مثل الصفر أو حرف اللام.

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

أين يظهر z-base-32 في العمل الفعلي

تستفيد المعرّفات الموجهة للبشر التي تُقرأ هاتفيًا أو تُكتب على الورق أو تُطبع من لقطة شاشة من أبجدية تتجنب الأشكال الملتبسة. صُمّم z-base-32 لهذا الغرض: تبنّته أنظمة مفتوحة مثل Mnet وTahoe-LAFS وبروتوكولات مثل ZRTP لتبادل رموز مضغوطة دون فخاخ الصفر مقابل O والواحد مقابل I في الأبجديات الأكثف. غالبًا تفضّل فرق المنتجات التي تبني عبارات استعادة بلا اتصال أو رموز مصادقة قصيرة معزولة هوائيًا أو رموز دعم لمرة واحدة جدول Zooko عندما ستُملى السلسلة أو تُنسخ بدل أن تُمسح آليًا فقط.

تحتاج مجموعات الهندسة التي تكتب اختبارات التوافق حقيقة مرجعية واحدة للترميز وفكّه تطابق مكتباتها ولا تستبدل الأحرف غير القانونية بصمت. يريد مؤلفو المناهج صفحة مخصصة لـ z-base-32 بدل دفنه تحت Base32 وفق RFC 4648، لأن المتعلمين يبحثون عن Zooko وBase32 البشري والرموز بلا حشو كنوايا منفصلة. يحتاج موظفو الدعم الذين يلصقون رموزًا متعددة الأسطر من الدردشة إلى تحمل المسافات دون قبول رموز تالفة تنتج مفتاحًا خاطئًا.

إن احتجتم Base32 الكلاسيكي وفق RFC 4648 بـ A-Z ومن اثنين إلى سبعة أو Base64 أو Crockford Base32، فاعاملوها كصفحات منفصلة بدل إثقال صفحة مرمّز z-base-32 هذه.

رموز استعادة منطوقة ومخطوطة

رمّزوا أسرارًا قصيرة كـ z-base-32 ليقرأها المستخدمون بصوت عالٍ أو يكتبوها دون خلط الصفر أو اللام أو الفي أو الاثنين بأشكال مشابهة.

رموز بلا اتصال سهلة للبشر

أنتجوا معرّفات مضغوطة بلا حشو للمصادقة المعزولة هوائيًا أو رموز الدعم لمرة واحدة أو عناوين منتجات يطبعها الناس يدويًا.

فيكسشرات توافق لمكتبات Zooko

ولّدوا متجهات ذهبية للترميز وفكّه تطابق مكتبات z-base-32 المستخدمة في ZRTP وأنظمة على طراز Tahoe وأدوات مفتوحة المصدر ذات صلة.

أي أبجدية يستخدمها z-base-32؟

أبجدية Zooko المعاد ترتيبها ybndrfg8ejkmcpqxot1uwisza345h769. تستبعد 0 وl وv و2 ولا تستخدم حشو '='.

بماذا يختلف عن Base32 وفق RFC 4648؟

يستخدم RFC 4648 A-Z و2-7 مع حشو اختياري بعلامات تساوٍ. يستخدم z-base-32 ترتيب رموز مختلفًا، ويستبعد الأحرف الملتبسة، ويحذف الحشو. وليسا قابلين للتبادل.

هل يمكن الترميز وفك الترميز معًا؟

نعم. اضبطوا mode على encode (الافتراضي) لتحويل نص UTF-8 خام إلى z-base-32، أو mode على decode لاستعادة النص من سلسلة z-base-32.

ماذا يحدث إذا احتوت السلسلة على حرف غير صالح؟

لا تُستبدل الرموز خارج أبجدية Zooko أبدًا. ولا تُحتسب إخفاقات التحقق.

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

نعم. تُحوَّل الأحرف الكبيرة إلى صغيرة قبل المطابقة، وتُتجاهل المسافات وفواصل الأسطر، فيعمل النص الملصوق على عدة أسطر. أما أي رمز خارج الأبجدية فيُرفض بدل أن يتحول بصمت إلى نص خاطئ.

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

POSThttps://api.kit.forhosting.com/enc/base32-zbase

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

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

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

لكل طلب$0.002

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

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

يعبّئ وضع الترميز بايتاتكم في الأبجدية ybndrfg8ejkmcpqxot1uwisza345h769؛ ويوحّد وضع فك الترميز حالة الأحرف، ويزيل المسافات البيضاء، ويرفض أي رمز غير قانوني بخطأ invalid_input واضح، حتى لا يتحوّل حرف مكتوب خطأ بصمت إلى حمولة خاطئة.

كيف يعبّئ z-base-32 البتات بأبجدية Zooko

حرف خارج الأبجدية يطلق invalid_input مع الموضع والرمز المخالف، وهو أسلوب الفشل الصحيح للرموز التي يكتبها الناس تحت الضغط. المسار تعبئة بتات صحيحة نقية بلا شبكة ولا بذور عشوائية ولا طوابع زمنية، فتنتج المدخلات المتطابقة دائمًا JSON متطابقًا. هذه الصفحة ليست عمدًا Base32 وفق RFC 4648 ولا Crockford Base32؛ فتلك الأبجديات وقواعد الحشو نوايا بحث مختلفة بأهداف توافق أخرى.

ما ترسلونه وما تستلمونه

عند حذف mode يكون encode هو الافتراضي، فيبقى حتى الحد الأدنى من الحمولة مفيدًا. يبلّغ encode أيضًا عن input_bytes؛ ويبلّغ decode عن output_bytes. غياب text أو كائنات غير سلاسل أو قيم mode غير مدعومة أو سلاسل أطول من الحد الموثّق أو أحرف أبجدية غير قانونية أو بايتات مفكوكة ليست UTF-8 صالحًا يفشل بـ invalid_input ورسالة إنجليزية واضحة. تسعير استدعاءات API الناجحة هو الأساس المنشور $0.002 لكل عنصر.

أين يظهر z-base-32 في العمل الفعلي

وبما أن هذه القدرة محرك parse نقي، فإن سعر API هو الأساس المنشور $0.002 لكل عنصر ناجح ولا يستهلك التحقق الفاشل الرصيد.

كم التكلفة؟

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

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