لماذا تم اختراع Base64
تم تصميم العديد من البروتوكولات المستندة إلى النصوص — بما في ذلك SMTP (البريد الإلكتروني)، ورؤوس HTTP، وHTML — للتعامل مع بعض الأحرف الآمنة فقط. تحتوي البيانات الثنائية (الصور والملفات والتعليمات البرمجية القابلة للتنفيذ) على قيم بايت عشوائية تتعارض مع أحرف التحكم في البروتوكول.
المشكلة: قد تحتوي رسالة البريد الإلكتروني التي تحتوي على ملف صورة ثنائي على وحدات بايت تتطابق مع أحرف التحكم في البروتوكول (مثل رمز ASCII 13 = حرف إرجاع، الرمز 10 = تغذية السطر). سيتم إساءة تفسير وحدات البايت هذه على أنها أوامر بروتوكول بريد إلكتروني، مما يؤدي إلى إتلاف المرفق.
الحل: يقوم Base64 بتحويل أي بيانات ثنائية إلى مجموعة فرعية مكونة من 64 حرف ASCII قابل للطباعة (A-Z، a-z، 0-9، +، /) والتي تكون آمنة في جميع البروتوكولات المستندة إلى النص. تمت كتابة RFC الأصلي لـ Base64 (RFC 2045) لمرفقات البريد الإلكتروني MIME.

كيفية عمل تشفير Base64: الخوارزمية
يقوم Base64 بتحويل البيانات الثنائية عن طريق معالجة 3 بايت (24 بت) في المرة الواحدة وإنتاج 4 أحرف Base64 (24 بت → 4 × 6 بت):
- خذ 3 بايت من البيانات الثنائية:
Man= ASCII 77, 97, 110 =01001101 01100001 01101110 - تقسيم 24 بت إلى أربع مجموعات 6 بت:
010011 010110 000101 101110 - يتم تعيين كل مجموعة 6 بت إلى حرف Base64 باستخدام الأبجدية القياسية:
- 010011 = 19 = 'T' - 010110 = 22 = 'W' - 000101 = 5 = 'F' - 101110 = 46 = 'u'
- النتيجة: "رجل" → "TWFu"
الأبجدية Base64 الكاملة: ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/

حالات استخدام 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.

تشفير وفك تشفير Base64 على ToolDolfen
- افتح مشفر وفك تشفير Base64.
- للتشفير: الصق نصًا أو أدخل بيانات ثنائية في حقل الإدخال. انقر فوق ترميز. انسخ إخراج Base64.
- لفك التشفير: الصق سلسلة Base64 في حقل الإدخال. انقر فوق فك التشفير. يتم عرض البيانات الأصلية.
تتعامل الأداة مع Base64 القياسي (مع أحرف +/) ومتغيرات Base64 الآمنة لعنوان URL (مع -_ بدلاً من +/).


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