A–Z a–z 0–9 + / = · base64url
ترميز Base64 وفكّه
يكتب Base64 البايتات نصًا من 64 حرفًا مقروءًا: البايتات الخمسة في "Hello" تصبح SGVsbG8=. اكتب نصًا أو اختر ملفًا لترميزه، أو الصق Base64 لإعادته إلى نص أو ملف للتنزيل.
- Hello = SGVsbG8=
- Hello = SGVsbG8
- FB FF = +/8= = -_8=
كل شيء يعمل في هذا التبويب ولا يُرفع أي شيء. Base64 ترميز وليس تشفيرًا: يستطيع أي أحد أن يعيده إلى أصله.
Scanned by NortonTM Safe Web
نظرة سريعة
- السعر
- بلا مقابل
- الحساب
- غير مطلوب
- المعايير
- RFC 4648 (Base64 وBase64url)، وRFC 2045 (MIME)، وRFC 2397 (data URI)
- تغيّر الحجم
- 4 أحرف لكل 3 بايتات
- الحد
- 10 MB للنص أو للملف
- الرفع
- لا شيء — يبقى النص والملفات في تبويب متصفحك
أمثلة على Base64
كل قيمة أدناه ينتجها المرمّز في هذه الصفحة. ويُرمَّز النص بـ UTF-8 أولًا.
| النص | Base64 | Base64url بلا حشو | الحجم بـ UTF-8 |
|---|---|---|---|
| Hello | SGVsbG8= | SGVsbG8 | 5 B |
| Hello, World! | SGVsbG8sIFdvcmxkIQ== | SGVsbG8sIFdvcmxkIQ | 13 B |
| Grüße | R3LDvMOfZQ== | R3LDvMOfZQ | 7 B |
| € | 4oKs | 4oKs | 3 B |
| FB FF | +/8= | -_8 | 2 B |
| الإدخال | Base64 | الطول | أحرف الحشو |
|---|---|---|---|
| f | Zg== | 4 | 2 |
| fo | Zm8= | 4 | 1 |
| foo | Zm9v | 4 | 0 |
| foob | Zm9vYg== | 8 | 2 |
| fooba | Zm9vYmE= | 8 | 1 |
| foobar | Zm9vYmFy | 8 | 0 |
كيف ترمّز Base64 وتفكّه
اختر الاتجاه
اختر ترميز لتحويل نص أو ملف إلى Base64، أو فكّ لإعادة Base64 إلى الأصل. ويُنقل الناتج بزر التبديل إلى الاتجاه الآخر.
أدخل البيانات
اكتب نصًا أو الصقه، أو أسقط ملفًا حتى 10 MB. وللفك الصق Base64 بالأبجدية القياسية أو URL-safe، مع حشو = أو بدونه، أو عنوان data URI.
انسخ النتيجة
انسخ النتيجة أو نزّلها. وإذا لم تكن البايتات المفكوكة نصًا، تعرض الصفحة أولى البايتات بالنظام السداسي عشري، وتذكر نوع الملف إن عرفته، وتتيح لك حفظ البايتات ملفًا.
كيف يعمل Base64
يقسم Base64 (RFC 4648) الإدخال إلى مجموعات من 3 بايتات، أي 24 بتًا، ويكتب كل مجموعة في 4 أحرف من 6 بتات من أبجدية فيها 64 حرفًا: A–Z وa–z و0–9 و+ و/. فيكون الناتج أكبر من الإدخال بنحو الثلث. وإذا لم يكن الإدخال من مضاعفات 3 بايتات، تُتمّ علامات = النهاية إلى مضاعف 4 أحرف، فتعطي 5 بايتات من Hello ثمانية أحرف تنتهي بعلامة = واحدة.
أما Base64url، المعرّف في RFC نفسه، فيستبدل + بـ - و/ بـ _ ليصلح النص في عنوان URL أو اسم ملف، وتحذف صيغ مثل JWT حشو =. وتقرأ هذه الصفحة أيًّا من الأبجديتين، بحشو أو بدونه، وتتجاهل المسافات وفواصل الأسطر. ويُحوَّل النص إلى UTF-8 أولًا، فيصبح € ثلاث بايتات E2 82 AC وتعطي 4oKs في Base64. والحد 10 MB للنص أو للملف.
أسئلة عن Base64
كيف أرمّز نصًا إلى Base64؟
اكتب النص أو الصقه في وضع الترميز. يظهر Base64 أثناء الكتابة: Hello تعطي SGVsbG8=. ويُكتب النص بـ UTF-8 أولًا، فالأحرف خارج ASCII تستعمل أكثر من بايت: € ثلاث بايتات وتعطي 4oKs.
ما الفرق بين Base64 وBase64url؟
يبدّل Base64url حرفين: يحل - محل + ويحل _ محل /. فالبايتان FB FF هما +/8= في Base64 و-_8= في Base64url. والصيغة URL-safe مخصصة لعناوين URL وأسماء الملفات وJWT، وكثيرًا ما تحذف حشو =.
لماذا ينتهي Base64 بعلامات =؟
هي حشو. يعمل Base64 بمجموعات من 3 بايتات و4 أحرف. فإذا كان في المجموعة الأخيرة بايت واحد تملؤها علامتا =: f تعطي Zg==. وإذا كان فيها بايتان تملؤها علامة = واحدة: fo تعطي Zm8=. ومضاعف 3 بايتات لا يحتاج شيئًا: foo تعطي Zm9v.
هل Base64 تشفير؟
لا. Base64 ترميز يمكن عكسه بلا مفتاح، فيستطيع أي أحد فكه، وهو لا يحمي البيانات. وهو يجعل البيانات الثنائية صالحة للوضع في نص مثل البريد الإلكتروني أو JSON أو XML أو عنوان data URI.
كم يكبّر Base64 بياناتي؟
بنحو الثلث: كل 3 بايتات تصبح 4 أحرف، فتعطي 3000 بايت ما قدره 4000 حرف. وفواصل الأسطر كل 76 حرفًا (MIME، RFC 2045) أو كل 64 حرفًا (PEM، RFC 7468) تزيد قليلًا.
لماذا يقول الفك إن البايتات ليست نص UTF-8 صالحًا؟
Base64 نفسه سليم، لكن البايتات التي بداخله ليست نصًا. فقد تكون صورة أو ملفًا مضغوطًا أو صيغة ثنائية أخرى. وحينئذ تعرض الصفحة أول 64 بايت بالنظام السداسي عشري، وتذكر نوع الملف إن عرفته، وتتيح البايتات للتنزيل.