سلام

امروز میخوایم از رمز نگاری base64 برای تصاویر استفاده کنیم. خب base64 برای این طراحی شده که بتونیم داده های باینری رو به داده متنی تبدیل کنیم. کاری به بررسی دقیقش اصلا نداریم ولی اگه خواستین اطلاعات بیشتر داشته باشین یه سر به ویکیپدیا بزنین.

 

ذکر چند نکته اینجا وا قعا ضروریه:

  • رمزنگاری bese64 حجم رو تا ۳۳ درصد اندازه باینری افزایش میده.
  • تو IE6 و IE7 پشتیبانی نمیشه
  • این نوع رمزنگاری پردازش بیشتری رو از سیستم میگیره
  • نسخه gzip شدهی رمزنگاری شده حجمی برابر با نسخه اصلی باینریش داره
  • برای تصاویر کوچیک از اون استفاده کنین
  • برای تصاویر کوچیک با جزئیات کم مثل آیکون های ساده از این نوع استفاده کنین و برای تصاویر بزرگ این کار رو اصلا انجام ندین

بگذریم. تا اینجا میشه حدس زد که پس میشه برای ویژگی src عوض آدرس فایل باینری عکس از رمزنگاری شده اون یعنی یه متن استفاده کنیم. به عنوان مثال محتوای متنی تصویر زیر رو ببینین:

email_icon

اینم محتوای رمزنگاری شده:

حالا ببینین ویژگی src عکس بالا رو(از Inspect Element استفاده کنین)… دقیقا اومدیم از مقدار رمزنگاری شده base64 اون تصویر استفاده کردیم.

[title]نحوه تبدیل عکس به base64[/title]

حالا میرسیم به اینجا که چطور این تبدیل رو انجام بدیم:

یه راهش اینه که از سایت های آماده برای اینکار مثل base64-image.de  و b64.io  که عکس رو بهش میدین و کد رو تحویلتون میده که این کد رو میتونین در html به این صورت:

و یا css به صورت:

استفاده کنین.

ولی اگه خواسته باشین خودتون این تبدیل رو انجام بدین میتونین از طریق PHP مثل زیر عمل کنین:

نتیجه میشه مثل همون کدهای بالا

این الگوریتم در زبان های دیگه مثل جاوا وجود داره و مختص PHP نیست.

منابع:


 
ما مایلیم مطالب جدید را در کانال تلگرام به شما اطلاع دهیم.