مشفر نصوص Base64

خطوة 1 / 333%

الإدخال

ينقل Base64 النص، بما فيه المحارف غير ASCII، عبر الأنظمة التي تتوقع ASCII قابلًا للطباعة. تعمل هذه الأداة داخل المتصفح فقط، فترمز نص UTF-8 إلى Base64 أو تفك Base64 إلى نص UTF-8 صالح وفق RFC 4648، مع أبجدية آمنة لعناوين URL وحشو اختياريين. استخدم أداة ملفات أو بيانات ثنائية إذا لم تكن البايتات نصًا.

كيف يعمل ترميز نص Base64

  1. 1

    الصق نصك

    UTF-8 هو التفسير الافتراضي؛ كل محرف يتحول أولا إلى تسلسل بايتات UTF-8.

  2. 2

    اختر الاتجاه

    شفّر من النص إلى Base64 أو فك التشفير من Base64 إلى نص.

  3. 3

    اختر المتغير

    قياسي (`A-Z a-z 0-9 + /`) أو آمن للروابط (استبدال `+` و`/` بـ `-` و`_`). عند الترميز فعّل الحشو (`=`) أو أوقفه.

  4. 4

    انسخ النتيجة

    استخدم النتيجة فقط عندما يتوقع التنسيق Base64 أو قيمة Base64URL بلا حشو. ترميز النص وحده لا ينشئ JWT كاملًا أو ترويسة مصادقة ولا يتحقق منهما.

مثال محلول

ترميز الكلمة café:

  1. ترميز UTF-8: 63 61 66 C3 A9 (5 بايتات؛ é يأخذ بايتين في UTF-8)
  2. التجميع في كتل 3-byte: 63 61 66 | C3 A9
  3. كل 3 بايتات تصبح 4 محارف Base64: Y 2 F m | w 6 k =
  4. الناتج النهائي: Y2Fmw6k=

Base64 الآمن للروابط

يستخدم Base64 القياسي + و/، ولهما معان محجوزة في الروابط وأسماء الملفات:

  • قد يصبح + مسافة عند فك استعلامات النماذج
  • / يفصل مقاطع مسار الرابط

يستبدلهما Base64 الآمن للروابط (RFC 4648 القسم 5) بـ - و_. يبقى الحشو = ما لم توقفه؛ عطله صراحة إذا كان التنسيق الهدف يتطلب قيمة بلا حشو.

الحشو (padding)

تجمع مخرجات Base64 في كتل من 4 محارف. إذا لم يكن طول الإدخال مضاعفا لـ 3 بايتات، تملأ الكتلة الأخيرة بـ = حتى تصل إلى 4 محارف:

بايتات الإدخال الخرج الحشو
1 4 ==
2 4 =
3 4 (لا شيء)

تحذف بعض التنسيقات الحشو، ومنها مقاطع JWT المرمزة بصيغة Base64URL. تقبل هذه الأداة الإدخال المحشو والإدخال غير المحشو الصحيح.

أخطاء شائعة

  • اعتبار Base64 تشفيرا. ليس كذلك. يستطيع أي شخص فك Base64؛ لا يخفي شيئا.
  • نسيان UTF-8. ترميز “café” كـ Latin-1 يعطي بايتات مختلفة عن UTF-8. ما لم تكن تعرف توقعات الطرف المستقبِل، التزم بـ UTF-8.
  • اللصق مع مسافات. ترفض مفككات RFC 4648 افتراضيا المحارف الخارجة عن الأبجدية. فعّل خيار الأداة الذي يقبل مسافات ASCII وعلامات الجدولة وفواصل الأسطر وفواصل الصفحات فقط إذا كان التنسيق المرجعي، مثل MIME، يسمح بها.

الأسئلة الشائعة

لا. هو ترميز، وليس تشفيرا. “aGVsbG8=” تفك إلى “hello” في أي مفكك Base64. إذا احتجت السرية، فشفّر أولا ثم اجعل النص المشفر بصيغة Base64 للنقل.

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

يستخدم Base64URL - و_ بدلًا من + و/. الحشو خيار مستقل؛ عطله إذا كان التنسيق المطلوب يشترط قيمة بلا حشو.

يجب ترميز Base64 القياسي ترميزًا مئويًا عند استخدامه قيمة استعلام. يتجنب Base64URL المحرفين + و/؛ وعطل الحشو أيضًا إذا كان التنسيق لا يقبل =.

أدوات ذات صلة