logo

فك تشفير Base64 في جافا سكريبت

قاعدة64 هو ثنائي إلى نص نظام الترميز الذي يحول البيانات الثنائية إلى ملف الجذر-64 التمثيل ومن ثم ترميزه باعتباره سلسلة ASCII . يتم استخدامه بشكل متكرر لتخزين البيانات في الملفات وإرسال البيانات عبر الإنترنت. باستخدام وظائف ووحدات JavaScript الأصلية، يمكن تشفير بيانات Base64 وفك تشفيرها بسهولة.

سنناقش في هذه المقالة كيفية فك تشفير بيانات Base64 في JavaScript، وسنتناول المواضيع التالية:

  1. ما هو Base64؟
  2. كيفية فك تشفير بيانات Base64 في JavaScript باستخدام الوظائف المضمنة
  3. كيفية فك تشفير بيانات Base64 في JavaScript باستخدام مكتبة تابعة لجهة خارجية
  4. أفضل الممارسات لاستخدام Base64 في JavaScript

1. ما هو Base64؟

أ ثنائي إلى نص نظام الترميز يسمى قاعدة64 يعرض البيانات الثنائية كما سلاسل ASCII . ويتم ذلك عن طريق تحويل البيانات الثنائية إلى تمثيل يعرف باسم الجذر-64 ، والتي توظف مجموعة من 64 حرفا لتمثيل البيانات الثنائية. ال 26 حرف كبير و أحرف صغيرة حروف ال الأبجدية الانكليزية ، ال 10 أرقام ، ومن بين هذه الأحرف حرفان إضافيان يختلفان اعتمادًا على التنفيذ. يتم تعبئة كتلة البيانات النهائية بالأصفار إذا كانت أقل من 6 بتات، مما يجعلها 6 بتات كاملة.

يستخدم ترميز Base64 6 بتات لكل حرف لتمثيل البيانات الثنائية الأصلية. يتم تقسيم البيانات إلى قطع 6 بت ويتم ترميزها في Base64، ويتم تمثيل كل قطعة بحرف من مجموعة الأحرف Base64. إذا كان الجزء الأخير من البيانات أقل من 6 بتات، فسيتم حشوه بالأصفار لجعله 6 بتات كاملة.

يُستخدم Base64 بشكل شائع لنقل البيانات عبر الإنترنت وتخزين البيانات في الملفات. على سبيل المثال، يتم استخدامه في مرفقات البريد الإلكتروني، وصور HTML، ورموز ويب JSON (JWTs).

2. كيفية فك تشفير بيانات Base64 في JavaScript باستخدام الوظائف المضمنة

في JavaScript، يمكنك فك تشفير بيانات Base64 بسهولة باستخدام وظائف مدمجة، مثل من أ الى ب() . ال وظيفة أتوب (). يأخذ سلسلة مشفرة Base64 كمدخل ويعيد البيانات الثنائية التي تم فك تشفيرها كسلسلة.

هنا مثال لكيفية الاستخدام من أ الى ب() لفك تشفير بيانات Base64:

قدم مقابل قدم
 const base64String = 'SGVsbG8gV29ybGQh'; // Base64-encoded string constdecodedString = atob(base64String); // Decoded string console.log(decodedString); // Output: 'Hello World!' 

في هذا المثال نبدأ بـ أ ترميز Base64 خيط SGVsbG8gV29ybGQh ، الذي يمثل السلسلة 'مرحبا بالعالم!' . نقوم بتمرير هذه السلسلة إلى وظيفة أتوب (). ، والتي تقوم بإرجاع البيانات الثنائية التي تم فك تشفيرها كسلسلة. بعد ذلك، نقوم بتسجيل السلسلة التي تم فك تشفيرها إلى وحدة التحكم.

نلاحظ أن وظيفة أتوب (). يعمل فقط مع سلاسل ASCII . إذا كانت البيانات المشفرة بـ Base64 تحتوي على أحرف غير ASCII، فقد تحتاج إلى استخدام مكتبة تابعة لجهة خارجية.

3. كيفية فك تشفير بيانات Base64 في JavaScript باستخدام مكتبة تابعة لجهة خارجية

هناك العديد من مكتبات الجهات الخارجية المتاحة لفك تشفير بيانات Base64 في JavaScript. إحدى المكتبات الشعبية هي js-base64 ، والذي يوفر واجهة برمجة تطبيقات Base64 شاملة مع دعم Unicode والتشفيرات الأخرى.

ليستخدم js-base64 ، تحتاج أولاً إلى تثبيته باستخدام مدير الحزم، مثل npm :

 npm install js-base64 

بمجرد التثبيت، يمكنك استخدام المكتبة لفك تشفير بيانات Base64 كما يلي:

 const base64 = require('js-base64'); const base64String = 'SGVsbG8gV29ybGQh'; // Base64-encoded string constdecodedString = base64.decode(base64String); // Decoded string console.log(decodedString); // Output: 'Hello World!' 

في هذا المثال، نقوم أولاً باستيراد ملف js-base64 مكتبة باستخدام يتطلب() وظيفة.

4. أفضل الممارسات لاستخدام Base64 في JavaScript:

هناك العديد من الممارسات لاستخدام Base64 في JavaScript، بما في ذلك:

1. استخدم Base64 لترميز البيانات الثنائية

قاعدة64 تم تصميمه لتشفير البيانات الثنائية، مثل الصور والصوت والفيديو. وليس المقصود منه ترميز البيانات النصية، مثل JSON أو لغة البرمجة .

2. استخدم مكتبات الجهات الخارجية للحصول على الميزات المتقدمة

إذا كنت بحاجة للعمل مع يونيكود أو ترميزات أحرف أخرى، أو إذا كنت بحاجة إلى التعامل مع كميات كبيرة من البيانات، فقد ترغب في استخدام ملف مكتبة الطرف الثالث . تتضمن بعض مكتبات Base64 الشائعة لجافا سكريبت js-base64 و base64-js .

3. كن على دراية بالمخاطر الأمنية

لا يوفر ترميز Base64 أي أمان من تلقاء نفسه. ولذلك، يجب عليك تجنب تشفير البيانات الحساسة باستخدام Base64، ويجب عليك دائمًا استخدام التشفير وإجراءات الأمان الأخرى لحماية بياناتك.

4. اختبره جيدًا

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