تقنية

كيفية تشفير / فك تشفير البيانات باستخدام Base64 ولماذا


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

ما هو ترميز Base64

Base64 هي تقنية تشفير ، تقوم بتحويل البيانات الثنائية ، مثل الصور والفيديو ، إلى تنسيق ASCII (نظام ترميز لتمثيل البيانات النصية في أنظمة الكمبيوتر.). نظرًا لأن البيانات الثنائية تتكون من سلاسل من 0 و 1 ، يعمل ترميز Base64 عن طريق تحويل هذه الأحرف إلى مجموعة محددة من ASCII. يمكن فك تشفير النتيجة بسهولة عن طريق تعيين أحرف ASCII في القيمة الثنائية.

يمكنك العثور أدناه على قائمة بأحرف ASCII القياسية المستخدمة في ترميز Base64.

  • عدد الأحرف: 0-9.
  • الأحرف الأبجدية الكبيرة: AZ.
  • الحروف الأبجدية الصغيرة: az.
  • حرفان خاصان: “/.” و “+”.

لماذا يتم استخدام ترميز Base64

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

Base64 ديف
مصدر الصورة: Figma

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

ما هو ترميز Base64 المستخدم

يستخدم Base64 على نطاق واسع لترميز النصوص والصور والموسيقى ومقاطع الفيديو وغيرها التي تريد نقلها عبر الويب. إحدى حالات الاستخدام المحددة لـ Base64 هي مرفقات البريد الإلكتروني. يتم تشفير الملفات المرفقة برسالة بريد إلكتروني باستخدام Base64 خلف الكواليس قبل إرسالها مع البريد الإلكتروني إلى وجهتها.

استخدام Base64
مصدر الصورة: Figma

باستخدام Base64 ، يمكن إضافة الصور المشفرة مباشرةً إلى مستندات HTML أو في ملفات CSS. يمكن أن تساعد هذه التقنية في تقليل عدد الطلبات الواردة من العملاء وجعل موقع الويب الخاص بك أكثر أداءً. ستحتاج إلى التأكد من ضغط الصورة قبل الترميز. وإلا فسيؤدي ذلك إلى أحجام ملفات كبيرة جدًا وسيبطئ موقع الويب (بدلاً من ذلك ، يمكنك استخدام تنسيق ملف webp لضغط الصورة).

إذا كنت تقوم بنقل BLOB (ملف كائن كبير ثنائي) كبير عبر الإنترنت ، فمن الضروري في الواقع تشفير البيانات باستخدام Base64. وإلا إذا ضاعت بعض حزم الشبكة أثناء النقل ، فقد تتلف البيانات الموجودة داخل الملف ولن يصبح ملفك قابلاً للاستخدام.

هناك استخدام آخر شائع جدًا ولكنه مناسب جدًا لتشفير Base64 وهو تعيين صوت شحن iPhone مخصص. يمكن أن يكون صوت الشحن الجديد بترميز Base 64 إلى ASCII باستخدام تطبيق Shortcuts على أجهزة Apple المحمولة.

كيفية تشفير البيانات باستخدام Base64 في Javascript

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

  1. افتح Developer Console في المتصفح الذي تختاره. في معظم المتصفحات ، يمكن القيام بذلك باستخدام امتداد كنترول + تحول + أنا الاختصار.
  2. انقر فوق علامة التبويب “وحدة التحكم”. هنا يمكننا أن نبدأ في كتابة جافا سكريبت الخاص بنا.
تشفير طريقة عرض وحدة تحكم المستعرض Base64
  1. في هذا المثال سنقوم بتعريف متغير اسمه word الذي يحتوي على السلسلة “Hello”.
  1. استخدم ال btoa() وظيفة لتحويل هذه السلسلة إلى سلسلة Base64 ASCII.
let encodedString=btoa(word)
  1. مطبعة encodedString إلى وحدة التحكم لمعرفة كيف يبدو تمثيل Base64 لـ “Hello”.
console.log(encodedString)
 
output: SGVsbG8=
Base64 شبيبة

كيفية تشفير البيانات باستخدام Base64 في Python

في Python ، يمكنك استخدام الحزمة القياسية المضمنة Base64 Python.

  1. قم باستيراد المكتبة داخل ملف Python الخاص بك باستخدام هذا الأمر:
  1. ثم استخدم ملف base64.b64encode() وظيفة لتشفير سلسلة إلى أحرف ASCII المشفرة Base64. نحن نستخدم كلمة “Hello” في هذا المثال.
encoded = base64.b64encode(b'Hello')
  1. الآن قم بطباعة النتيجة لترى كيف تبدو كلمة “Hello” بتنسيق Base64.
Base64 بايثون

كيفية التشفير وفك التشفير باستخدام Base64 في Linux

تأتي كل توزيعات Linux مع أداة ترميز وفك تشفير Base64. إذا كنت تستخدم نظام Windows ، فيمكنك استخدام نظام Windows الفرعي لنظام Linux (WSL) لتشغيل أوامر المحطة الطرفية المذكورة أدناه.

مع سطر الأوامر

  1. لتحويل سلسلة إلى ترميز Base64 ، في البداية echo القيمة وإخراج الإخراج إلى أمر Base64.
Base64 3
  1. لفك تشفير سلسلة Base64 ، استخدم --decode أو ال -d علم الأداة المساعدة Base64.
echo "TVRFCg==" | base64 --decode
Base64 4
  1. لتحويل صورة باستخدام تشفير Base64 ، قم بإلحاق مسار الصورة بعد ذلك base64 يأمر.
  1. يمكنك أيضًا حفظ سلاسل ASCII المشفرة من Base64 في ملف باستخدام الأمر التالي.
base64 linux.jpg > test.txt
  1. في الأمر أعلاه ، نقوم بحفظ إخراج صورة “linux.jpg” في ملف “text.txt”. يمكنك الآن نقل هذه الملفات النصية إلى أي مكان تريده دون مشكلة.
Base64 5
  1. لفك تشفير الصورة من الملف ، استخدم الامتداد -d علامة بعد الأمر Base64.
base64 -d test.txt > test.jpg

استخدام محولات Base64 عبر الإنترنت

هناك العديد من محولات Base64 عبر الإنترنت ، ولكن محول Base64 من Rapidtable يبرز. توفر هذه الأداة عبر الإنترنت طريقة سهلة لتشفير وفك تشفير نصوص وصور Base64.

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

Base64 2

في قسم ترميز الأحرف ، لديك أيضًا خيارات إضافية مثل ASCII و UTF8 و UTF16 وما إلى ذلك.

تتضمن محولات Base64 الأخرى سهلة الاستخدام عبر الإنترنت ما يلي:

أسئلة مكررة

لماذا يكون للملفات المشفرة Base64 حجم ملف أكبر من الملفات الثنائية العادية؟

يستخدم ترميز Base64 نظام 6 بت ، بينما تستخدم الملفات الثنائية العادية نظام 8 بت. 8 بت يسمى بايت. نظرًا لأن ترميز Base64 يخرج أحرف ASCII التي تكون في 8 بت وبما أن Base64 يستخدم نظام 6 بت ، فإن 2 بت تظل غير مشغولة لكل بايت من البيانات. إذا قمت بالعملية الحسابية ، فإن ملف Base64 المشفر يكون أكبر بنسبة 33٪ من الملف الأصلي.

هل يُترجم ترميز Base64 إلى تشفير أيضًا؟

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

كيفية التحقق مما إذا كانت السلسلة مشفرة Base64 أم لا؟

إذا كانت السلسلة عبارة عن مزيج مما يبدو أنه خليط من الأحرف ، فقد يكون بترميز Base64. للتأكد ، راجع الأحرف المستخدمة في السلسلة. إذا كانت الأحرف في نطاق AZ و az و0-9 و “+” و “/.” ، فهذه سلسلة Base64 مشفرة. لفك تشفير قيمتها ، استخدم أيًا من التقنيات المذكورة أعلاه.

رصيد الصورة: Markus Spiske عبر Unsplash جميع لقطات الشاشة بواسطة Hrishikesh Pathak

هريشيكيش باثاك
هريشيكيش باثاك

مطور وكاتب. اكتب عن لينكس والويب.

اشترك في نشرتنا الإخبارية!

تم تسليم أحدث دروسنا مباشرة إلى صندوق الوارد الخاص بك

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

زر الذهاب إلى الأعلى
karnataka xvideo pornmovieswatch.org sex sagr
bangla chodan xshaker.net download indiansex video
بيرازر meyzo.info افلام دراما سكس
mallu blue film eroanal.net xnxxbest
locel xxx video waplo.info desi kannada sex
chut pics cumporntrends.com tight pussy xvideo
indian kitchen room tubedesiporn.com marwadi girl sex
bengoli xxx movie redwap3.com malayalam blue filim
indian@aloha tube eromoms.net www.pronstarxvidoes
bangla chodachudi pornjob.info meena sexy pics
صورة بنات سكس xxcmh.com فيلم سكس صيني
www desi xx com browntubeporn.com wild ass fuck
www.hot vido 3gpjizz.mobi sunny leone tube 8
funmaza dampxxx.org varun dhawan sex
اغتصاب مصري arabicpornvideo.com دخله براحه
toto togel situs togel toto slot situs toto rtp slot cerutu4d toto slot situs toto bo togel situs togel situs toto situs togel situs togel toto togel pam4d toto togel situs toto situs togel situs toto situs togel toto togel situs togel situs togel bandar toto situs togel bo togel situs toto situs togel situs toto situs togel toto slot pam4d bento4d bento4d bento4d jacktoto jacktoto cerutu4d cerutu4d situs toto situs togel situs toto situs toto situs toto situs togel situs toto bandar togel situs toto situs toto situs toto situs toto situs togel situs togel resmi situs togel situs toto resmi situs togel resmi situs toto toto slot situs toto situs toto situs toto situs togel situs toto situs toto macau bo toto bo toto situs toto toto togel situs toto togel resmi situs toto situs toto situs togel situs togel resmi pengeluaran macau situs toto situs toto situs togel situs togel situs toto situs toto toto slot situs toto situs togel situs toto slot cerutu4d bo toto situs toto situs toto situs toto situs toto macau cerutu4d situs toto situs toto macau bet togel toto togel gimbal4d gimbal4d toto slot situs toto situs toto toto slot situs toto situs toto toto togel situs toto toto slot situs togel situs toto slot live casino toto slot toto togel situs togel situs toto bandar togel bandar togel situs toto bo togel situs toto daftar situs togel situs togel situs toto situs toto situs toto bakautoto situs bandar togel bakautoto situs resmi toto togel bakautoto situs toto togel terpercaya 2024 situs toto situs toto