تشفير/فك تشفير Base64 (النص)

Loading dropzone…

Input

Output

حول مُشَفِّر Base64 هذا مُشَفِّر Base64 عبر الإنترنت

جزء من "استوديو Base64" الخاص بـ Encode64، يحوّل هذا المُشَفِّر النصوص وملفات JSON والأصول الثنائية الصغيرة إلى سلاسل Base64 جاهزة للنسخ في العناوين وHTML/CSS ومتغيرات البيئة أو تركيبات الاختبار. لا حاجة لتسجيل دخول أو تثبيت، ولا معالجة على الخادم.

لماذا تستخدم مشفر Base64 هذا

  • تشفير Base64 فوري للنصوص، JSON وحمولات ثنائية صغيرة
  • دعم الملفات (نصوص، صور، ثنائيات) للتحويل السريع إلى سلاسل Base64
  • خيار آمن للروابط لـ JWTs، معاملات الاستعلام والسياقات الآمنة للويب
  • تفاف أسطر اختياري لمحاكاة أدوات CLI أو تنسيقات البريد الإلكتروني / PEM
  • نسخ بنقرة واحدة لإعادة الاستخدام السهل في الرؤوس، الإعدادات والكود
  • واجهة مستجيبة تعمل جيدًا على سطح المكتب والجوال
  • التشفير يحدث في متصفحك — بياناتك لا تُرسل إلى خادم بعيد

🔧 كيف يعمل ترميز Base64 (خطوة بخطوة) for base64-encoder

1

تقديم المدخلات

الصق نصك، JSON أو مقتطف في منطقة الإدخال، أو أسقط ملفًا لتحويل بايتاته الخام إلى Base64. الأداة تقرأ البايتات تمامًا كما هي.

2

تحويل إلى بايتات

المشفر يحول الأحرف (مثل نص UTF-8) أو محتوى الملف إلى بايتات. كل بايت هو قيمة 8 بت بين 0 و 255.

3

إعادة تجميع البتات إلى فهارس Base64

كل 3 بايتات (3 × 8 = 24 بت) تُعاد تجميعها إلى 4 مجموعات من 6 بت (4 × 6 = 24). كل مجموعة 6 بت هي فهرس في أبجدية Base64.

4

تعيين إلى أحرف Base64 والحشو

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

المواصفات الفنية

مجموعة الأحرف (RFC 4648)

هذا المشفر يستخدم أبجدية Base64 القياسية المُعرّفة بواسطة RFC 4648.

النطاق / النوعالأحرفملاحظات
الفهارس 0–25A–Zحروف كبيرة
الفهارس 26–51a–zأحرف صغيرة
المؤشرات 52–610–9أرقام
المؤشرات 62–63+ /رموز Base64 القياسية
الحشو=يضمن أن يكون طول المخرج مضاعفًا للعدد 4

الحجم والزيادة

يتبادل Base64 الحجم مقابل الأمان في القنوات النصية فقط. توقع زيادة في البيانات بحوالي الثلث بعد التشفير.

الحجم الأصليحجم Base64 (تقريبي)الزيادة
3 بايت4 أحرفأكبر بحوالي 33%
1 كيلوبايت≈ 1.37 كيلوبايت~37% بما في ذلك الحشو وسطور جديدة
1 ميجابايت≈ 1.37 ميجابايتنفس النسبة على نطاقات أكبر
استخدم Base64 عندما تحتاج إلى نقل نص آمن (مثل رؤوس HTTP، JSON، HTML)، وليس كطريقة ضغط.

الأداء والحدود العملية

التشفير نفسه سريع، لكن المخازن المؤقتة الكبيرة يمكن أن تؤثر على ذاكرة المتصفح وسرعة الاستجابة.

حجم الحمولةتجربة المستخدمالتوصية
بضعة كيلوبايتفوريمثالي للرؤوس ومقتطفات التكوين وبيانات الاختبار
100 كيلوبايت – 1 ميجابايتاستجابة سريعة جدًانموذجي لحمولات API والبيانات الثابتة
1–5 ميجابايتجيد بشكل عام على الأجهزة الحديثةفكر في استخدام أدوات CLI إذا كنت تفعل هذا كثيرًا
> 5–10 ميجابايتقد يشعر بالبطء أو استهلاك كبير للذاكرة في المتصفحاستخدم برامج التشفير المتدفقة أو أدوات سطر الأوامر

تشفير Base64 عبر سطر الأوامر

للملفات الكبيرة، الأتمتة أو سير عمل التكامل المستمر، استخدم أدوات Base64 الأصلية على منصتك.

لينكس / 🍏 ماك أو إس

تشفير نص

echo -n 'text' | base64

يشفر النص 'text' إلى Base64 دون إضافة سطر جديد.

تشفير ملف

base64 input.bin > output.b64

يقرأ البيانات الثنائية من input.bin ويكتب نص Base64 إلى output.b64.

ويندوز / PowerShell

تشفير نص باستخدام PowerShell

[Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes("text"))

يحول بايتات UTF-8 للنص 'text' إلى سلسلة Base64.

تشفير ملف باستخدام certutil (CMD)

certutil -encode input.bin output.b64

يستخدم الأداة المدمجة في ويندوز لإنشاء ملف مشفر بـ Base64.

التطبيقات العملية

تطوير الويب وعناوين URI للبيانات

دمج الأصول والموارد الصغيرة مباشرة في HTML أو CSS أو JavaScript.

  • إنشاء data:image/...;base64,... للشعارات، الأيقونات والصور الصغيرة.
  • تضمين الخطوط أو محتوى SVG في قواعد CSS.
  • تخزين الحمولات الصغيرة في LocalStorage كسلاسل Base64.
<img src="data:image/png;base64,iVBORw0KGgo...">
document.styleSheets[0].insertRule("@font-face{src:url('data:font/woff2;base64,...')}" );

تطوير واجهات برمجة التطبيقات والرؤوس

نقل بيانات الاعتماد والحمولات الصغيرة بأمان عبر قنوات نصية فقط.

  • بناء رؤوس Authorization: Basic من أزواج اسم المستخدم:كلمة المرور.
  • تشفير الحمولات JSON إلى Base64 للرؤوس المخصصة أو معاملات الاستعلام.
  • تغليف الكتل الثنائية في JSON كسلاسل Base64.
Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=
fetch(url, { headers: { 'X-Payload': btoa(JSON.stringify(data)) } });

الاختبار، البيانات الثابتة والتشخيص

بناء بيانات ثابتة نصية فقط مستقرة للاختبارات وجلسات التشخيص.

  • تشفير البيانات الثابتة الثنائية (الصور، ملفات PDF) وتضمينها في كود الاختبار.
  • تخزين نماذج الحمولات كسلاسل Base64 بدلاً من حفظ ملفات ثنائية.
  • نماذج حمولات أولية للخدمات التي تتوقع حقولاً مشفرة بتنسيق Base64.
// مثال: اختبار Jest باستخدام قاعدة بيانات Base64
const payload = Buffer.from(base64Fixture, 'base64');
expect(processPayload(payload)).toBeTruthy();

❓ Frequently Asked Questions

لماذا يستخدم Base64 حرف '=' للحشو؟

يقوم Base64 بتجميع المدخلات في كتل من 3 بايت (24 بت) ويخرج 4 أحرف (4 × 6 بت). عندما لا يكون طول المدخلات قابلاً للقسمة على 3، تتم إضافة أحرف الحشو '=' للإشارة إلى أن الكتلة الأخيرة أقصر. الحشو هو جزء من تنسيق التشفير، وليس من البيانات الأصلية.

🔗كيف يمكنني إنشاء Base64 آمن للروابط؟

يستبدل Base64 الآمن للروابط '+' بـ '-' و '/' بـ '_'، وغالباً ما يزيل حشو '=' الزائدة. تحتوي العديد من المكتبات على وضع آمن للروابط. إذا كنت بحاجة إلى القيام بذلك يدوياً، ابدأ من Base64 القياسي، ثم طبق هذه الاستبدالات وقم بقص '=' حسب حالة استخدامك.

🔒هل يشكل ترميز Base64 إجراءً أمنياً؟

لا. Base64 هو **ترميز** قابل للعكس يجعل البيانات الثنائية آمنة للنقل كنص (على سبيل المثال في JSON أو HTML أو الرؤوس). لا يوفر سرية أو سلامة بذاته. استخدم دائماً HTTPS/TLS والتشفير المناسب (مثل AES أو أنظمة المفتاح العام) للأمان.

📏ما هو الحد الأقصى لحجم الملف الذي يجب أن أقوم بتشفيره هنا؟

يكون هذا المشفر عبر الإنترنت أكثر راحة مع الحمولات التي تصل إلى بضعة ميغابايت. قد تعمل الملفات الثنائية الأكبر حجماً ولكنها قد تكون بطيئة أو كثيفة الاستهلاك للذاكرة في المتصفح. للملفات الكبيرة، تكون أدوات سطر الأوامر أو المشفرات المتدفقة أكثر متانة.

Pro Tips

Best Practice

للأصول الصغيرة جداً (< 10 كيلوبايت)، يمكن لتضمينها كروابط بيانات Base64 تقليل طلبات HTTP، لكن تجنب فعل هذا للصور أو الخطوط الكبيرة.

Best Practice

سجل فقط الحمولات المقطوعة من Base64 (أو التجزئات) في بيئة الإنتاج لتجنب تسريب محتوى حساس في السجلات.

Best Practice

إذا كان خادمك الخلفي يتوقع Base64، قم بالتحقق من صحة الإدخال وتطبيعه من جانب الخادم لرفض الحمولات المشوهة أو كبيرة الحجم بشكل غير معقول.

Additional Resources

Other Tools