ما هو ترميز Base64 ومتى تستخدمه
إذا كنت تعمل مع واجهات برمجة التطبيقات أو أنظمة البريد الإلكتروني أو تطوير الويب، فقد واجهت Base64 — حتى لو لم تتعرّف عليه. تلك السلاسل الطويلة من الحروف والأرقام التي تبدو هراء؟ إنها على الأرجح Base64.
ما يفعله Base64
يحوّل Base64 البيانات الثنائية (أي تسلسل من البايتات) إلى سلسلة نصية تستخدم فقط 64 حرفًا «آمنًا»: A-Z وa-z و0-9 و+ و/. تنتهي النتيجة دائمًا بحشو = إذا لزم الأمر.
مثال:
- النص:
Hello World - Base64:
SGVsbG8gV29ybGQ=
يوجد هذا الترميز لأن العديد من الأنظمة (البريد الإلكتروني، JSON، URL، XML) تتعامل فقط مع النص. يمكن أن تحتوي البيانات الثنائية — الصور، الملفات المضغوطة، البايتات الخام — على أحرف تكسر هذه الأنظمة. يحوّل Base64 الثنائي إلى نص يعبر أي قناة نصية دون تلف.
الاستخدامات الشائعة
تضمين الصور في HTML/CSS:
<img src="data:image/png;base64,iVBORw0KGgoAAAA..." />
يمكن تضمين الأيقونات والشعارات الصغيرة مباشرة في HTML الخاص بك، مما يلغي طلب HTTP إضافي.
حمولات API: عندما تتوقّع API ملف JSON ولكنك تحتاج إلى تضمين بيانات ثنائية (تحميل ملف، صورة توقيع)، فإن ترميزها بـ Base64 يتيح تضمينها كحقل نصي عادي.
مرفقات البريد الإلكتروني: بروتوكولات البريد (SMTP) نصية. يتم ترميز كل مرفق بـ Base64 خلف الكواليس للسفر كنص.
ترويسات المصادقة: يرمّز HTTP Basic Authentication user:password بـ Base64 في ترويسة Authorization. (هذا ترميز، وليس تشفير — لا يوفّر أمانًا في حد ذاته.)
كيفية الترميز وفك الترميز
- اختر الترميز أو فك الترميز — حدّد اتجاه التحويل.
- الصق نصًا أو استورد ملفًا — أدخل نصًا مباشرة أو اسحب وأفلت ملفًا (حتى 5 ميغابايت).
- انسخ النتيجة — يُحدَّث المخرج فورًا. انسخه إلى الحافظة.
متى تستخدم Base64
للاستخدام عندما:
- تحتاج إلى تضمين صورة صغيرة (أقل من 5 كيلوبايت) مباشرة في HTML أو CSS
- تتطلّب API بيانات ثنائية كسلسلة نصية
- تحتاج إلى نقل بيانات ثنائية عبر نظام يدعم النص فقط
لا تستخدمه عندما:
- الملف كبير — يضيف Base64 33٪ من العبء الزائد ويمنع التخزين المؤقت
- تحتاج إلى أمان — Base64 ليس تشفيرًا
- يمكنك تقديم الملف بشكل طبيعي —
<img src="photo.jpg">الكلاسيكي أكثر كفاءة من Data URL Base64 لأي شيء أكبر من بضعة كيلوبايت
نصائح
- الملفات الصغيرة فقط — الزيادة بنسبة 33٪ مهمة. تصبح صورة 100 كيلوبايت 133 كيلوبايت في Base64، ولا يمكن تخزينها مؤقتًا بشكل منفصل بواسطة المتصفّح.
- لا تخلط بين الترميز والتشفير — Base64 قابل للعكس بالكامل من قبل أي شخص. لا يوفّر أمانًا. استخدمه لنقل البيانات، وليس لحمايتها.
- انتبه إلى فواصل الأسطر — تضيف بعض تطبيقات Base64 فاصل سطر كل 76 حرفًا (وفقًا لمعيار MIME). إذا لصقت Base64 في JSON أو URL، فتأكّد من أنه على سطر واحد.
الأسئلة الشائعة
هل يشفّر Base64 بياناتي؟
لا. Base64 ترميز، وليس تشفيرًا. يمكن لأي شخص فك ترميز سلسلة Base64 — لا يوفّر أمانًا. إذا كنت تريد حماية البيانات، فاستخدم تشفيرًا حقيقيًا (AES أو RSA إلخ).
لماذا يجعل Base64 الملفات أثقل؟
يزيد ترميز Base64 حجم البيانات بحوالي 33٪. تصبح ثلاث بايتات ثنائية أربعة أحرف Base64. هذا العبء الزائد هو الثمن الذي تدفعه لتتمكّن من نقل البيانات الثنائية بأمان كنص.
هل يمكنني ترميز الملفات، وليس النص فقط؟
نعم. يمكن ترميز أي ملف (الصور وPDF والصوت) بـ Base64. هذا يستخدم بشكل شائع لتضمين الصور الصغيرة مباشرة في HTML أو CSS كـ Data URL.
متى لا تستخدم Base64؟
لا تستخدمه للملفات الكبيرة. تصبح صورة 1 ميغابايت 1.33 ميغابايت من نص Base64، ولا يمكن للمتصفّح تخزينها مؤقتًا بشكل منفصل. لأي شيء يتجاوز بضعة كيلوبايت، تقديم الملف بشكل طبيعي أكثر كفاءة.