
ما هو ترميز Base64؟ دليل مبسّط
يحوّل ترميز Base64 أي بيانات إلى نص آمن. تعرّف كيف يعمل وأين يُستخدم ولماذا هو ليس تشفيرًا.
ترميز Base64 طريقة لتمثيل البيانات الثنائية — مثل صورة أو ملف — باستخدام 64 حرفًا نصيًا آمنًا قابلًا للطباعة فقط. إنه من أكثر الأدوات شيوعًا على الويب لنقل البيانات عبر أنظمة صُمّمت للتعامل مع النص العادي، وفهمه يستغرق دقائق قليلة.
ما الذي يفعله Base64 فعليًا
تخزّن الحواسيب كل شيء كبايتات، وكثير من قيم هذه البايتات ليست أحرفًا قابلة للطباعة. يحلّ Base64 ذلك بتجميع البيانات في كتل من 6 بتات وربط كل كتلة بحرف من أبجدية ثابتة تضمّ A–Z و a–z و 0–9 والرمزين "+" و "/". النتيجة أطول من الأصل (أكبر بنحو 33%) لكنها آمنة تمامًا للّصق في النص.
مثال سريع
هكذا يتحوّل نص قصير إلى Base64:
| النوع | القيمة |
|---|---|
| النص الأصلي | Hi |
| مخرجات Base64 | SGk= |
علامة "=" في النهاية هي حشو (padding) يُضاف ليكون طول المخرجات دائمًا من مضاعفات أربعة أحرف.
أين يُستخدم Base64
- تضمين صور صغيرة مباشرة في HTML أو CSS كـ «data URIs».
- إرسال المرفقات والبيانات غير النصية داخل رسائل البريد.
- حمل الرموز وبيانات الاعتماد في واجهات API وترويسات HTTP.
- تخزين بيانات ثنائية في JSON الذي يدعم النص فقط.
هل Base64 هو نفسه التشفير؟
Base64 ترميز وليس تشفيرًا. يمكن لأي شخص فكّه فورًا، فهو لا يخفي شيئًا — لا تستخدمه أبدًا لحماية كلمات المرور أو الأسرار.
لأنه قابل للعكس بالكامل وبلا مفتاح، لا يوفّر Base64 أي أمان. إنه فقط يجعل البيانات قابلة للنقل. إذا احتجت حماية المعلومات، فأنت بحاجة لتشفير أو تجزئة حقيقية.
رمّز وفُكّ الترميز بنفسك
لست بحاجة لفعل أي من هذا يدويًا. يحوّل مرمّز وفاكّ Base64 النص في الاتجاهين فورًا مع دعم كامل لليونيكود، وللروابط تحديدًا يتولّى مرمّز الروابط المهمة المرتبطة وهي ترميز النسبة المئوية. وللتعريف التقني الرسمي، المعيار موثّق في RFC 4648. وبمجرد أن ترى النمط، يتوقّف Base64 عن كونه غامضًا ويصبح مجرّد أداة يومية أخرى.
لماذا يزيد الحجم بحوالي الثلث؟
يقرأ Base64 ثلاث بايتات، أي 24 بت، ثم يقسمها إلى أربع مجموعات من ستة بتات. تختار كل مجموعة رمزًا واحدًا من أبجدية مكوّنة من 64 رمزًا، ولذلك تتحول ثلاث بايتات إلى أربعة أحرف. هذه النسبة تفسر الزيادة التقريبية البالغة 33% قبل احتساب JSON أو فواصل الأسطر.
Base64 العادي وBase64url
يستعمل الشكل العادي الرمزين + و/، بينما يستبدلهما Base64url بـ- و_ حتى يناسب الروابط والكوكيز وأجزاء JWT. وقد يحذف بعض المنتجين علامة الحشو =، لذلك يجب معرفة الصيغة المتوقعة بدل التخمين.
النصوص العربية وUTF-8
لا يتعامل Base64 مع الحروف مباشرة، بل مع البايتات. يجب أولًا تحويل النص إلى بايتات بترميز معروف مثل UTF-8، ثم ترميزها. عند الفك تُعاد البايتات ثم تُقرأ بالترميز نفسه. استعمال ترميز مختلف قد ينتج حروفًا مشوهة رغم أن Base64 نفسه صحيح.
متى لا تستخدمه؟
- لا تستعمله لحماية كلمة مرور أو سر لأنه قابل للفك بلا مفتاح.
- لا تضع به صورًا كبيرة داخل HTML لأن الحجم يكبر والتخزين المؤقت يصبح أقل كفاءة.
- لا تخزن ملفات ضخمة كنص إذا كان التخزين الثنائي متاحًا.
- لا تفتح ناتج بيانات مجهولة قبل التحقق من النوع والحجم والمصدر.
قائمة تحقق عملية
- حدد هل القيمة Base64 أم Base64url.
- ضع حدًا للحجم قبل فك مدخل غير موثوق.
- فك القيمة إلى بايتات ثم استعمل ترميز النص أو نوع الملف الصحيح.
- اختبر دورة ترميز وفك كاملة وقارنها بالأصل.
تعمل أداة ToolBlur محليًا في المتصفح، لكن ذلك لا يجعل المحتوى المجهول آمنًا. لا تلصق توكن دخول حيًا أو سرًا في أداة عامة أو لقطة شاشة.