Arya Shabane
Arya Shabane
خواندن ۴ دقیقه·۵ سال پیش

بیت ها به کمک ما می آیند تا داده ها را مخفی کینم !



سلام،‌ مثل همیشه یک مطلب کامپیوتری جدید برای عشق بیشتر به کامپیپتر ;)

این مطلب در باره مخفی نگاری (Steganography) هست و این موضوع رو انتخاب کردم چون یکی از زیرشاخه های امنیت کامپیوتری است و توی جامعه امروز ، امنیت به شدت نیاز هر فردی است که از کامپیوتر استفاده می کند ،‌امروزه هر شرکت بزرگ و یا هر دولتی با قدرتش به هر نحوی از نظر سایبری ما را مورد تحدید قرار میدهد پس ما با دانش خود باید از ان ها جلو گیری کنیم و دانش خودمون رو به دیگران یاد بدهیم تا دست این دولت های فاسد رو از خودمون کوتاه کینم

پس دانستن کوچک ترین چیز توی امنیت باعث میشه تا اون ها کارشون سخت تر بشه ، پس تا میتونید یاد بگیرید و یاد بدهید .
مخفی نگاری در کل فقط یک علم نیست بلکه یک خلاقیته و با خلاقیت در مکان های مختلف ، روش های جدیدی خلق میشه مثل کار هایی که قاچاق چیان برای جابه جایی اجناس انجام می دهند .
من توی این مقاله در حد معرفی و همچنین الگوریتم کلی مخفی نگاری توضیح میدم امید وارم نقطه شروع خوبی باشه باشه D:

این بیت ها اگه دست به دست هم بدن و کنار هم باشن چه کار هایی که ازشون بر نمیاد از منفجر کردن یک کشور تا ساختن یک جامعه کاملا مدرن و کار درست و . . .

مفهوم کلی مخفی نگاری اینه که وقتی شما مثلا یک فایل دارید و ان را رمز نگاری می کینید ، اگه کسی اون فایل رمزنگاری شده رو ببینه به اون فایل شک میکنه و میگه :‌ مگه چیه که اینقدر مهمه و رمز نگاری شده ؟ .
اما توی مخفی نگاری کسی متوجه چیزی نمیشه که به اون شک کنه !!!
اما این چطوری ممکنه ؟

فرض کنید قراره نامه ای به دوستتون بدهید که داخل نامه رمز حیاطی نوشته میشه و این نامه توسط اداره پست به دست دوستتون میرسه ،‌ چیکار میکنید تا کسی متوجه رمزتون نشه به جز دوستتون ؟

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

برای درک بهتر این متن رو نگاه کنید > رمز مخفی شده داخل این متن password است

  • Polar bear is in danger so we should take care of them
  • And We Should not use Oil Because Its Polluted air
  • So We Should Be Serious About That
  • San Francisco Is a City That Care About This Problem
  • World Should Be Care About That And
  • One City Or Country Isn`t Enough
  • Robot Will Be Our Animal If We Dont Care About Animal
  • Discover Problem Of Your World To Have Better World

متن بالا به یک نحوی مخفی نگاری متن داخل متن است (Text in Text)

به صورت کلی دو کتد برای مخفی نگاری وجود دارد
1-injection
2-LSB (Least significant bit insertion)

متد injection قابل اعتماد نیست چون مثلا وقتی شما متنی را داخل یک عکس مخفی می کنید اون متن حاوی حجم است و خوب حجم متن باعث میشه تا حجم عکس هم بالا بره که نتیجه مطلوبی نداره چون یک عکسی که باید 1MB باشه شده 6MB که خوب خیلی ضایع هست که یه کاسه ای زیر نیم کاسه ایه

اما متد LSB : حجم را افزایش نمیده یا در حدی که قابل شناسایی نباشه و کیفت عکس هم پایین نمیاد اما چطوری ؟

هر عکس شامل پیکسل هایی است و هر پیکس رنگ متفاوت خودش رو داره و خوب رنگ ها توی کامپیوتر از سه رنگ اصلی RED , GREEN , BLUE تشکیل میشوند و هر رنگ یک بایت است مثلا کد رنگ قرمز به بایت 255،000،000 که یعنی Red =255 , Green = 000 , Blue = 000

خوب طیف رنگ ها با بایت ساده تر نوشته و درک میشوند اما برای مخفی کردن یک نوشته طوری که شناسایی نشه باید رنگ ها را از بایت به بیت تبدیل کنیم .
به دلیل این که اگه یک بیت رنگ را عوض کینم رنگ چندان فرقی با قبل نمی کند اما اگه یک عدد بایت را عوض کنیم اون رنگ کاملا عوض میشود و تصویر خراب میشود. همچنین نباید بیت ها را از سمت چپ عوض کنیم چون ارزش رقم آن بالا تر است به این اعداد توجه کنید >

11111111=255

اگر ما سمت چپ را از 1 به 0 تغیر بدهیم ، مقدار از 255 به 127 تغیر میکند

01111111=127

خوب بعد از این همه شرط و چالش اصل مطلب اینجاست
هر کاراکتر از A تا z یک باینری داره مثلا باینری a میشه 01100001 و این بیت ها هستند که همه کارو میکنند
کار اصلی اینه که دو بیت اول کاراکتر گرفته میشه و به جای دو بیت آخر باینری رنگ گذاشته میشه.

توی عکس بالا میبینیم که نوشته cat رو داخل چهار رنگ مخفی کردن به طوری که با چشم انسان فرق چندانی بین رنگ ها نیست اما شما فکر کنید که یک عکس با کیفیت 1080 چند بایت هست ؟ در واقع حجم عکس و وجود رنگ های متفاوت در یک عکس باعث میشه تا کاراکتر های بیشتری در عکس جا بگیره . و باید بدونید که اگه فرمت رو تبدیل کنیم بازیابی اطلاعات خیلی سخت میشه و همچنین بخش بزرگی از اطلاعات از بین میرود


تمام سعی ام را کردم تا کل موضوع را به بهترین شیوه بیان کنم اگه کم و کسریه در مقاله بود با کامنت هاتون من را برای دفعه های بعد کامل تر کنید :)

مخفی نگاریsteganographyمحمد شبانهمخفی نگاری چیستsteganography چیست
The only currency left in the world is POWER
شاید از این پست‌ها خوشتان بیاید