شرح ترميز Base64: تحويل البيانات الثنائية إلى نص

يقوم تشفير Base64 بتحويل البيانات الثنائية إلى مجموعة أحرف آمنة للنص (A-Z، a-z، 0-9، +، /) والتي يمكن تضمينها في البروتوكولات المستندة إلى النص مثل البريد الإلكتروني وJSON وHTML دون تلف البيانات.

Binary data being transformed through Base64 encoding algorithm visualization

لماذا تم اختراع Base64

تم تصميم العديد من البروتوكولات المستندة إلى النصوص — بما في ذلك SMTP (البريد الإلكتروني)، ورؤوس HTTP، وHTML — للتعامل مع بعض الأحرف الآمنة فقط. تحتوي البيانات الثنائية (الصور والملفات والتعليمات البرمجية القابلة للتنفيذ) على قيم بايت عشوائية تتعارض مع أحرف التحكم في البروتوكول.

المشكلة: قد تحتوي رسالة البريد الإلكتروني التي تحتوي على ملف صورة ثنائي على وحدات بايت تتطابق مع أحرف التحكم في البروتوكول (مثل رمز ASCII 13 = حرف إرجاع، الرمز 10 = تغذية السطر). سيتم إساءة تفسير وحدات البايت هذه على أنها أوامر بروتوكول بريد إلكتروني، مما يؤدي إلى إتلاف المرفق.

الحل: يقوم Base64 بتحويل أي بيانات ثنائية إلى مجموعة فرعية مكونة من 64 حرف ASCII قابل للطباعة (A-Z، a-z، 0-9، +، /) والتي تكون آمنة في جميع البروتوكولات المستندة إلى النص. تمت كتابة RFC الأصلي لـ Base64 (RFC 2045) لمرفقات البريد الإلكتروني MIME.

Bit-splitting pipeline diagram showing how 3 bytes of binary data transform into four 6-bit Base64 characters


كيفية عمل تشفير Base64: الخوارزمية

يقوم Base64 بتحويل البيانات الثنائية عن طريق معالجة 3 بايت (24 بت) في المرة الواحدة وإنتاج 4 أحرف Base64 (24 بت → 4 × 6 بت):

  1. خذ 3 بايت من البيانات الثنائية: Man = ASCII 77, 97, 110 = 01001101 01100001 01101110
  2. تقسيم 24 بت إلى أربع مجموعات 6 بت: 010011 010110 000101 101110
  3. يتم تعيين كل مجموعة 6 بت إلى حرف Base64 باستخدام الأبجدية القياسية:

- 010011 = 19 = 'T' - 010110 = 22 = 'W' - 000101 = 5 = 'F' - 101110 = 46 = 'u'

  1. النتيجة: "رجل" → "TWFu"

الأبجدية Base64 الكاملة: ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/

Base64 64-character safe ASCII index lookup table matrix


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

1. مرفقات البريد الإلكتروني (MIME) يعتمد بروتوكول البريد الإلكتروني على النص. يتم ترميز الملفات المرفقة باستخدام Base64 قبل تضمينها في رسالة البريد الإلكتروني.

2. عناوين URL للبيانات بتنسيق HTML/CSS يمكن تضمين الصور والخطوط الصغيرة مباشرة في HTML أو CSS كعناوين URL للبيانات المشفرة بواسطة Base64:

<img src="data:image/png;base64,iVBORw0KGgo..." alt="Embedded image">

يؤدي هذا إلى إلغاء طلب HTTP الإضافي للأيقونات الصغيرة.

3. مصادقة واجهة برمجة التطبيقات تقوم مصادقة HTTP الأساسية بتشفير بيانات الاعتماد كـ Base64: اسم المستخدم: كلمة المرور → dXNlcm5hbWU6cGFzc3dvcmQ= (ملاحظة: Base64 ليس تشفيرًا - يُستخدم فقط عبر HTTPS)

4. حمولات JSON مع البيانات الثنائية عندما تحتاج واجهة برمجة التطبيقات إلى تضمين بيانات ثنائية (على سبيل المثال، ملف PDF أو صورة تم إنشاؤها) في استجابة JSON، يسمح تشفير Base64 بتضمين البيانات الثنائية بأمان كقيمة سلسلة JSON.

Common real-world Base64 use cases including data URIs, HTTP basic auth, JWTs, and email attachments


تشفير وفك تشفير Base64 على ToolDolfen

  1. افتح مشفر وفك تشفير Base64.
  2. للتشفير: الصق نصًا أو أدخل بيانات ثنائية في حقل الإدخال. انقر فوق ترميز. انسخ إخراج Base64.
  3. لفك التشفير: الصق سلسلة Base64 في حقل الإدخال. انقر فوق فك التشفير. يتم عرض البيانات الأصلية.

تتعامل الأداة مع Base64 القياسي (مع أحرف +/) ومتغيرات Base64 الآمنة لعنوان URL (مع -_ بدلاً من +/).

Decoding pipeline diagram showing reconstruction of exact original binary streams from Base64 text

ToolDolfen Base64 Encoder and Decoder user interface workflow

الأدلة المصاحبة الموصى بها

استكشف البرامج التعليمية والأدوات المساعدة التكميلية من مجموعة المواضيع هذه لتحسين سير عملك الرقمي:

تشفير النسبة المئوية لعنوان URL: لماذا تستبدل عناوين URL المسافات بنسبة %20 (دليل RFC 3986)برنامج تعليمي عملي خطوة بخطوة باستخدام معايير تم التحقق منها وداخل المتصفح سير العمل.HEX وRGB وHSL: دليل نماذج الألوان الكامل لـ CSS والتصميمبرنامج تعليمي عملي خطوة بخطوة مع معايير تم التحقق منها وداخل المتصفح سير العمل.رياضيات كلمات المرور القوية: الإنتروبيا، وإرشادات NIST، وطول كلمة المروربرنامج تعليمي عملي خطوة بخطوة مع معايير تم التحقق منها وداخل المتصفح سير العمل.كيفية دمج ملفات PDF بشكل آمن دون التحميلات السحابيةسير عمل تكميلي متعدد التنسيقات يربط بين البيانات والوسائط ذات الصلة الأدوات.
الأداة المساعدة الموصى بها: Base64 Encoder / Decoderتنفيذ سير العمل هذا مباشرة في متصفحك بدون أي تحميلات للخادم و100% من جانب العميل الخصوصية.
مشفر وفك تشفير Base64
مشفر وفك تشفير Base64

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

اعثر على إجابات سريعة وموثوقة للأسئلة الشائعة المتعلقة بهذا الموضوع.

هل Base64 هو شكل من أشكال التشفير؟

لا، Base64 هو تشفير وليس تشفير. يمكن عكسها بالكامل من قبل أي شخص لديه السلسلة المشفرة - لا يلزم وجود مفتاح أو كلمة مرور لفك تشفيرها. لا تستخدم Base64 لحماية البيانات الحساسة؛ استخدم خوارزميات التشفير المناسبة مثل AES-256.

ما حجم البيانات التي تصبح أكبر بعد تشفير Base64؟

تعد البيانات المشفرة باستخدام Base64 أكبر بنسبة 33% تقريبًا من البيانات الثنائية الأصلية. كل 3 بايت من البيانات الثنائية تصبح 4 أحرف Base64. صورة بحجم 3 ميجا بايت مشفرة في Base64 تصبح حوالي 4 ميجا بايت من النص.

لماذا تنتهي بعض سلاسل Base64 بـ "=" أو "=="؟

يقوم Base64 بمعالجة البيانات في مجموعات مكونة من 3 بايت. إذا كان طول بيانات الإدخال غير قابل للقسمة على 3، فسيتم تعبئة الإخراج بحرف واحد أو حرفين '=' لجعل الإخراج مضاعفًا لـ 4 أحرف.

Bilal Ahmad