RevealTheme logo

مرمِّز ومفكِّك ترميز Base64

رمّز السلاسل إلى Base64 أو افكُك ترميز Base64 إلى نص. يحترم خصوصيتك: يعمل بالكامل في متصفحك.

ما هو Base64 ولماذا تجده في كل مكان؟

Base64 هو نظام ترميز —وليس تشفيرًا— يمثّل بيانات ثنائية اعتباطية باستخدام 64 حرفًا فقط من أحرف ASCII القابلة للطباعة (A-Z وa-z و0-9، إضافةً إلى + و/ و= للحشو). وُجد لأن كثيرًا من بروتوكولات النقل وصيغ الملفات وواجهات برمجة التطبيقات تتعامل مع النص فقط أو تعالج بعض البايتات معالجة خاصة: فالبريد الإلكتروني (صُمِّم SMTP لـ ASCII بـ 7 بتات)، وJSON (لا يمكنه احتواء بايتات خام)، والروابط (تتضمن أحرفًا محجوزة)، وترويسات HTTP (نص موجّه نحو السطور)، وسمات HTML، كلها تحتاج إلى وسيلة لنقل البيانات الثنائية عبر قنوات نصية. يحل Base64 ذلك بتجميع بايتات الإدخال في مجموعات من 3 (24 بتة) وإعادة ترميز كل مجموعة كـ 4 أحرف Base64 (6 بتات لكل حرف). الزيادة في الحجم هي 33% بالضبط: كل 3 بايتات تتحول إلى 4 أحرف. ترمّز هذه الأداة نص UTF-8 أو سلاسل Base64 في أي اتجاه، بالكامل في متصفحك. وهي تعالج بشكل صحيح أحرف UTF-8 متعددة البايتات (الرموز التعبيرية، والأبجديات غير اللاتينية)، التي تُفسدها تطبيقات Base64 الساذجة التي تستخدم atob/btoa مباشرةً.

حالات الاستخدام الشائعة

  • ضمّن الصور الصغيرة مباشرةً في CSS بصيغة عناوين data: (يلغي طلب HTTP واحدًا للأيقونات الصغيرة).

  • فك ترميز حمولة رمز JWT أو ترويسة Basic Auth لفحص ما بداخلها.

  • رمّز محتويات ملف ثنائي لوضعه في حقل JSON أو في متغير بيئة.

  • انقل البيانات الثنائية عبر أنظمة لا تحافظ على البايتات الاعتباطية (البريد الإلكتروني، والنسخ واللصق).

  • فك ترميز استجابات واجهات برمجة التطبيقات أو حمولات الـ webhook المُرمَّزة بـ base64 أثناء التصحيح.

  • حوّل بيانات الاعتماد الثنائية إلى صيغة سهلة النسخ واللصق لتسليمها لفريق التشغيل.

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

هل Base64 نوع من التشفير؟
لا. Base64 ترميز قابل للعكس: يمكن لأي شخص فك ترميزه فورًا دون مفتاح. للسرية، استخدم تشفيرًا حقيقيًا (AES-256 أو RSA أو أداة تشفير AES لدينا). معاملة Base64 كأنها أمان هو الخطأ الأول بشأنه.
لماذا يضيف Base64 نحو 33% إلى الحجم؟
يحوّل الترميز 3 بايتات (24 بتة) من الإدخال إلى 4 أحرف (24 بتة، إذ يمثّل كل حرف Base64 ست بتات). هذه الزيادة في الحجم متأصلة وحتمية. للحصول على تمثيلات ثنائية أصغر، استخدم Base85 أو أرسل بيانات ثنائية خام إذا كانت القناة تدعم ذلك.
ما هو Base64 الآمن للروابط؟
إنه صيغة مُعرَّفة في RFC 4648 تستبدل + بـ - و/ بـ _، بحيث تكون المخرجات آمنة لإدراجها في مسارات الروابط أو أسماء الملفات دون الترميز بالنسبة المئوية. تستخدم رموز JWT صيغة Base64 الآمنة للروابط. وتقبل كثير من واجهات برمجة التطبيقات أيًّا من الصيغتين.
لماذا أرى '=' في النهاية؟
هي أحرف حشو. يُخرج Base64 المخرجات في مجموعات من 4 أحرف؛ فإذا لم يكن الإدخال مضاعفًا لـ 3 بايتات، تُحشى المجموعة الأخيرة بـ '=' حتى تبلغ 4 أحرف. تحذف بعض صيغ Base64 الحشو؛ وكلتاهما تُفك بالطريقة نفسها.
هل يعالج الرموز التعبيرية والنصوص غير اللاتينية؟
نعم. تحوّل الأداة النص أولاً إلى بايتات UTF-8 ثم ترمّز البايتات إلى Base64. هذا يتجنب خطأ JavaScript الكلاسيكي الذي تفشل فيه btoa() مع الأحرف غير المنتمية إلى Latin1.
أين أرى Base64 في التطبيقات الواقعية؟
في كل مكان: روابط data: للصور في CSS، وترويسات Authorization: Basic، وأجزاء JWT، وتواقيع الروابط الموقّعة، وروابط S3 المُوقَّعة مسبقًا، وشهادات PKCS (صيغة PEM)، ومرفقات البريد (MIME)، وحمولات رموز QR، والأسرار على نمط .env في منصات النشر الحديثة.

أدوات ذات صلة